《第3章数字系统的设计精选PPT.ppt》由会员分享,可在线阅读,更多相关《第3章数字系统的设计精选PPT.ppt(48页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第3章章 数字系统的设数字系统的设计计第1页,本讲稿共48页3.1 数字系统设计概述数字系统设计概述 3.1.1 数字系统的组成数字系统的组成人们常常把数字系统划分成两个部分数字处理器和控制器,如图3.1所示。第2页,本讲稿共48页图3.1数字系统第3页,本讲稿共48页控制器:负责规定算法的步骤,在每一个计算步骤给数据处理器发出命令信号,同时接收来自数字处理器的状态变量,确定下一个计算步骤,以确保算法按正确的次序实现。也可以说,控制器决定数字处理器的操作及操作序列。控制器是我们完成数字系统设计的难点和重点所在。数字处理器:由寄存器和组合电路组成。寄存器用于短暂存储信息,组合电路实现对数据的加
2、工和处理。大型的数字系统还可以再分为若干子系统,通过上一级控制器统一协调工作,来实现整个数字系统的复杂功能。第4页,本讲稿共48页 3.1.2 数字系统的设计方法数字系统的设计方法随着数字集成技术和计算机技术的迅速发展,数字系统设计的理论和方法也在不断地发展和变化。数字系统的实现方法经历了由分立元件、小规模集成电路(SSI)、中规模集成电路(MSI)到大规模集成电路(LSI)、超大规模集成电路(VLSI)的过程。第5页,本讲稿共48页传统的数字系统设计方法是利用真值表、卡诺图、状态方程组、状态转换表、状态转换图等描述工具建立系统模型来进行系统设计的。对于一个比较复杂的数字系统,由于它的输入变量
3、数、输出变量数和内部的状态变量数很多,用常规的工具(如真值表、卡诺图、状态方程等)和传统的数字系统设计方法来描述和设计十分困难,有时甚至无法进行,因此必须寻求从系统总体出发来描述和设计的方法。第6页,本讲稿共48页 1.自顶向下法自顶向下法自顶向下(toptodown)法是一种从抽象定义到具体的实现,从高层次到低层次逐步求精的分层次、分模块的设计方法,它是数字系统设计中最常用的设计方法之一。该设计方法的具体实施过程是:首先根据系统的总体功能要求,进行系统级设计;然后按照一定的标准将整个系统划分成若干个子系统;接着将各个子系统划分为若干功能模块,针对各模块进行逻辑电路级设计。第7页,本讲稿共48
4、页 2.自底向上法自底向上法自底向上法是根据系统功能要求,从具体的器件、逻辑部件或者相似系统开始,凭借设计者熟练的技巧和丰富的经验通过对其进行相互连接、修改和扩大,构成所要求的系统。第8页,本讲稿共48页 3.1.3 数字系统设计的一般过程数字系统设计的一般过程 数字系统设计分为系统级设计和逻辑级设计两个阶段。若采用自顶向下的设计方法,则需要先进行系统级设计,再进行逻辑级设计。其一般过程是:在详细了解设计任务的基础上,确定系统的整体功能;用某种方法描述系统功能,设计实现系统功能的算法;根据算法选择电路结构;设计验证(仿真、测试);最后是设计实现。第9页,本讲稿共48页系统级设计的过程是:(1)
5、在详细了解设计任务的基础上,确定顶层系统的方案。这是设计过程的第一阶段,要求对设计任务做透彻的了解,决定设计任务,确定系统的整体功能、输入信号及输出信号。(2)描述系统功能,设计算法。描述系统功能就是用符号、图形、文字、表达式等形式来正确描述系统应具有的逻辑功能和应达到的技术指标。第10页,本讲稿共48页逻辑级设计的过程是:(1)根据算法选择电路结构。系统算法决定电路结构。虽然不同的算法可以实现相同的系统功能,但是电路结构是不同的;相同的算法也可能对应不同的电路结构。(2)设计验证(仿真、测试)和设计实现。根据设计、生产的条件,选择适当的器件来实现电路,并导出详细的电路图。第11页,本讲稿共4
6、8页3.2 数字系统的描述方法数字系统的描述方法 3.2.1 寄存器传输语言寄存器传输语言数字处理器的任务是接收控制器发出的命令信号,完成信息的加工和存储,并检验信息间的函数关系,产生状态变量。对寄存器所存信息的加工和存储称为寄存器传输操作。第12页,本讲稿共48页寄存器传输语言中定义的寄存器不仅包括暂存信息的寄存器,还应包括移位寄存器、计数器和存储器。计数器是具有加1功能的寄存器,存储器是寄存器的集合。一个单一的触发器可理解为一位寄存器。寄存器传输语言中的语句表达式中,除了表示对寄存器信息进行何种操作之外,还包含有控制函数部分。在寄存器传输语言中,用大写的英文字母表示寄存器。下面介绍其基本语
7、句。第13页,本讲稿共48页 1.寄存器间的信息传输操作寄存器间的信息传输操作传送语句:P:AB该语句表示在控制函数P的控制下,寄存器B的内容传输给寄存器A,箭头“”表示传输方向,从源寄存器指向目标寄存器。第14页,本讲稿共48页控制函数是一个逻辑函数表达式,包括定时信号和状态信号两部分内容。其中状态信号为任选项,定时信号有时也可以省略。冒号表示控制函数的结束,若在一个时钟周期内须完成多个传送操作时,可用并行传送语句。各并行操作间用逗号分隔。如:P1:AB,P2:CD无条件转移语句:T1:AB,TlT5该语句表示在时间变量T1的激励下,执行完AB后,无条件地转入执行T5。第15页,本讲稿共48
8、页条件转移语句:T1S:AB,T1T5:T1T5该语句表示若S=1,则先执行AB,再执行T1T5;若S1,则执行下一条语句即S=0,由T1直接转移到执行T5语句。第16页,本讲稿共48页2.算术操作基本的算术操作是加减运算。加法语句:AA+B减法语句:AA-B第17页,本讲稿共48页3.逻辑操作逻辑操作是两个寄存器对应位之间的逻辑运算,它包括:与、或、非、同或、异或等。与运算:F或运算:F非运算:F第18页,本讲稿共48页同或运算:FAB异或运算:FAB由于控制函数中不包括加、减运算,因此在控制函数中,仍用“”和“+”来表示与、或运算。例如:在语句T1+T2:FA+B,N中,T1和T2之间的“
9、+”表示或运算,A和B之间的“+”表示加运算,C和D之间的“”表示与运算。第19页,本讲稿共48页4.移位操作移位操作实际上是寄存器的传输操作,数据可通过每次移动一位串行移入、移出寄存器。移位后,寄存器内容被更新。移位操作分为左移和右移两种。左移语句:ASLA右移语句:ASRA第20页,本讲稿共48页3.2.2算法状态机图(ASM图)数字系统实现一个计算任务,采取操作序列的形式。操作序列有两个重要特性:操作按特定的时间顺序进行,即通过多步计算,一步一步地完成一个计算任务;实现操作取决于某一判断,即根据数据处理器发出的状态变量决定计算的下一个步骤。在数字系统中,外输入和状态变量较多,这必然导致状
10、态转换表很复杂,用传统的时序电路设计方法设计控制器会相当麻烦。第21页,本讲稿共48页ASM图(AlgorithmicStateMachineChart)是硬件算法的符号表示方法,可方便地表示数字系统的时序操作。ASM图不同于算法流程,它是一种时钟驱动的流程图。第22页,本讲稿共48页1.ASM图的符号ASM图由三个基本符号组成:状态框、判断框和条件输出框。1)状态框状态框用一个矩形框表示,状态框内定义在此状态实现的寄存器传输操作和输出。状态框的左上角标明状态的名称,右上角标明分配给该状态的二进制码,如图3.2所示。第23页,本讲稿共48页图3.2状态框第24页,本讲稿共48页2)判断框判断框
11、又称为条件分支框,用一个菱形框表示,如图3.3所示。框中内容是被检验的判别变量和判别条件。其中的判别变量可以是状态变量,可以是外输入变量,也可以是外输入变量;变量的个数可以是一个,也可以是多个;变量的作用可以同等重要,也可以有优先级顺序。第25页,本讲稿共48页图3.3判断框第26页,本讲稿共48页3)条件输出框条件输出框用一个圆角矩形框表示,如图3.4所示。条件输出框的输入必定与判断框的某一分支的输出相连。条件输出框内所规定的操作是在与其输入相连的判断框内的判断条件满足的情况下才发生的。因此,条件输出框的独特之处在于:条件输出框中所规定的操作必须在条件满足时才进行。第27页,本讲稿共48页图
12、3.4条件输出框第28页,本讲稿共48页 2.ASM块块ASM图具有时间序列。ASM图状态由现态转到次态的这种状态改变是在时钟信号的控制下实现的。一个ASM图可以由若干个ASM块组成。一个ASM块表示一个时钟周期内的系统状态。仅含一个状态框的ASM块是一个简单块,如图3.5(a)所示。每个ASM块必定包含一个且只允许包含一个状态框,与此状态框相连的若干个判断框和条件输出框也属于该ASM块,如图3.5(b)中的虚线框所示。第29页,本讲稿共48页图3.5ASM块第30页,本讲稿共48页ASM图类似于状态转移图:一个ASM块相当于状态转移图中的一个状态;判断框内的信息相当于状态转移图定向线旁边标定
13、的二进制信息。但是ASM图又不同于状态转移图,这是因为在状态转移图中无法表示有条件操作和无条件操作;而ASM图中的每一个ASM块都在状态框和条件输出框内列出了一个时钟脉冲周期应实现的操作,这些操作均在数字处理器中完成,状态的变化则在控制器中实现。因此,状态转移图只能定义一个数字系统的局部,而ASM图则定义了整个数字系统。第31页,本讲稿共48页3.ASM图的建立一般的算法流程图和ASM图之间的主要差别在于:前者是事件驱动的,即一般算法流程图的操作是一个接着一个发生的;而ASM图是时间驱动的,一个ASM块中的各个操作和从一种状态到另一种状态的转换均发生在时钟的同一个边沿。流程图告诉我们,为完成一
14、个计算任务应做哪些判断和操作以及判断和操作的先后次序。如何根据已经得到的算法流程图求得ASM图表,关键是安排状态。安排状态有三个原则:第32页,本讲稿共48页原则1:必须用状态来分开不能同时实现的寄存器传输操作。原则2:判断如受寄存器操作的影响,则应在它们之间安排一个状态。原则3:在算法的起始点安排一个状态。根据以上原则,算法流程图能够转换成ASM图表。第33页,本讲稿共48页 3.2.3 备有记忆文档的状态图备有记忆文档的状态图(MDS)备有记忆文档的状态图MDS(MemonicDocumentedDiagrams),又称为助记状态图。它是1980年由美国人WilliamFletcher提出
15、的一种系统设计方法。MDS图可以描述出整个数字系统的逻辑关系,并且与硬件有良好的对应关系。MDS图可以清楚地反映出所要设计部分的电路应提供的状态数、各个状态之间的转换必须符合的条件以及在状态转换时需要哪些输入信号、何时产生输出信号、输出信号的输出方式等,以便设计者依照MDS图方便地设计出符合数字系统要求的逻辑电路。第34页,本讲稿共48页MDS图用圆圈表示状态,圆圈内的符号表示状态名称,圆圈外的符号或者逻辑表达式表示输出。MDS图用定向线表示状态转换方向,定向线旁的符号或者逻辑表达式表示状态转换条件。第35页,本讲稿共48页第36页,本讲稿共48页第37页,本讲稿共48页ASM图可以作为系统方
16、案的最终结果来直接设计电路,也可以作为阶段性成果,转换成设计MDS图的控制器。由ASM图导出MDS图应遵循的原则有:(1)ASM图的一个状态框对应于MDS的一个状态框。两个状态框之间只允许存在一个异步输入信号。(2)ASM图的判断框对应MDS图中的分支,其中判断变量是转换条件或分支条件的一部分或全部。两个状态框之间只允许有一个分支。(3)ASM图中的条件输出和MDS图中的条件输出相对应。条件输出信号标注在当前状态框旁边。(4)ASM图条件输出框中的信息就是MDS图中对应的状态输出。第38页,本讲稿共48页3.3 数字系统设计实例数字系统设计实例3.3.1设计任务 1.题目题目设计一个主要街道(
17、干道)和次要街道(支路)交叉口处的交通信号灯控制电路。第39页,本讲稿共48页 2.要求、功能与指标要求、功能与指标(1)一般情况下,干道保持畅通,亮绿灯;支道亮红灯。(2)若干道无车,支道有车,则支道允许通行,干道亮红灯,支道亮绿灯。(3)若干、支道均有车要求通行,则两者应交替通行。设每次各通行16s。(4)每次绿灯变至红灯时,黄灯应先亮4s,以保证原通行方向上的车有足够的时间停在停车线内。第40页,本讲稿共48页3.3.2设计过程 1.系统的工作流程图系统的工作流程图根据要求,可以对电路的工作过程作以下的描述:(1)通常情况下,若干、支道均无车要求通行,则应保证干道绿灯亮,支道红灯亮;若干
18、道无车要求通行而支道有车辆要求通行,则应允许支道车辆通行;若干、支道均有车要求通行,则应保证干道通行16s后,才允许支道通行。(2)在允许支道车辆通行前,应使干道黄灯亮4s,支道红灯维持。4s后,才转变为干道红灯亮,支道绿灯亮。第41页,本讲稿共48页(3)在支道保持畅通时,若干道无车,则始终保持;若此时支道无车,则应立即准备使干道通车,支道禁止通行,如果此时干道有车辆要求通行,且支道已经通行超过16s,则应准备使干道通行。(4)在允许干道通行前,应使支道黄灯亮4s,干道红灯维持。4s后,转而使干道绿灯亮,支道红灯亮。为了实现以上工作要求,系统应由以下几个部分组成,如图3.6所示。第42页,本
19、讲稿共48页图3.6交通灯信号控制电路的系统框图第43页,本讲稿共48页(1)传感器:干、支道上应各设一个传感器,用以检测干、支道上是否有车辆要求通过交叉路口。当检测到有车辆要求通行时,应分别向控制器发出信号SM和SB。(2)时钟与计时电路:系统要求一稳定的秒时钟信号,以供计时和系统的同步控制。计时电路应当在控制信号CNT和CLR的作用下,开始计时和完成清零,并向控制器提供1s、4s和16s信号。第44页,本讲稿共48页(3)控制电路:根据传感器和时钟计时电路提供的信号,此控制电路应能判断、调整和控制整个系统的状态,并提供适当的灯光信号,以及控制计时电路工作。根据以上描述,可以做出如图3.7所示的详细工作流程图(ASM图表)。图中,顶部画两横的矩形框就是条件框。第45页,本讲稿共48页图3.7交通灯信号控制电路的ASM图第46页,本讲稿共48页 2.控制电路的实现控制电路的实现由详细工作流程图,可以获得系统控制器的MDS图如图3.8所示。系统有四个状态。a状态:干道绿灯亮,支道红灯亮。b状态:干道黄灯亮,支道红灯亮。c状态:干道红灯亮,支道绿灯亮。d状态:干道红灯亮,支道黄灯亮。情况与b状态类似。第47页,本讲稿共48页图3.8交通信号灯控制电路系统控制器的MDS图第48页,本讲稿共48页
限制150内