数字系统设计基础.ppt
《数字系统设计基础.ppt》由会员分享,可在线阅读,更多相关《数字系统设计基础.ppt(89页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第1313章数字系统章数字系统设计基础设计基础第第 13 章数字系统设计基础章数字系统设计基础数字系统的设计模型数字系统的设计模型数字系统的设计方法数字系统的设计方法 数字系统的设计准则数字系统的设计准则 数字系统的设计步骤数字系统的设计步骤本章小结本章小结数字系统设计举例数字系统设计举例VHDLVHDL状态机状态机13.1数字系统的设计模型数字系统的设计模型 数字系统指的是交互式的、以离散形式表示的,数字系统指的是交互式的、以离散形式表示的,具有存储、传输、信息处理能力的逻辑子系统的集具有存储、传输、信息处理能力的逻辑子系统的集合。用于描述数字系统的模型有多种,各种模型描合。用于描述数字系
2、统的模型有多种,各种模型描述数字系统的侧重点不同。图述数字系统的侧重点不同。图13.1介绍了一种普遍介绍了一种普遍采用的模型。这种模型根据数字系统的定义,将整采用的模型。这种模型根据数字系统的定义,将整个系统划分为两个模块或两个子系统:数据处理子个系统划分为两个模块或两个子系统:数据处理子系统和控制子系统。系统和控制子系统。图13.1 数字系统的设计模型 数据处理子系统主要完成数据的采集、存储、运数据处理子系统主要完成数据的采集、存储、运算和传输。算和传输。数据处理子系统主要由存储器、运算器、数据选数据处理子系统主要由存储器、运算器、数据选择器等功能电路组成。择器等功能电路组成。数据处理子系统
3、与外界进行数据交换,在控制子数据处理子系统与外界进行数据交换,在控制子系统系统(或称控制器或称控制器)发出的控制信号作用下,数据处理子发出的控制信号作用下,数据处理子系统将进行数据的存储和运算等操作。系统将进行数据的存储和运算等操作。控制子系统是执行数字系统算法的核心,具有记控制子系统是执行数字系统算法的核心,具有记忆功能,因此控制子系统是时序系统。控制子系统由组忆功能,因此控制子系统是时序系统。控制子系统由组合逻辑电路和触发器组成,与数据处理子系统共用时钟。合逻辑电路和触发器组成,与数据处理子系统共用时钟。把数字系统划分为控制子系统和数据处理子系统两把数字系统划分为控制子系统和数据处理子系统
4、两个主要部分,使设计者面对的电路规模减小,二者可以个主要部分,使设计者面对的电路规模减小,二者可以分别设计分别设计;由于数字系统中控制子系统的逻辑关系比较复杂,由于数字系统中控制子系统的逻辑关系比较复杂,将其独立划分出来后,可突出设计重点和分散设计难点;将其独立划分出来后,可突出设计重点和分散设计难点;当数字系统划分为控制子系统和数据处理子系统后,当数字系统划分为控制子系统和数据处理子系统后,逻辑分工清楚,各自的任务。逻辑分工清楚,各自的任务。13.2数字系统的设计方法数字系统的设计方法 数字系统设计有多种方法,如模块设计法、自数字系统设计有多种方法,如模块设计法、自顶向下设计法和自底向上设计
5、法等。数字系统的设顶向下设计法和自底向上设计法等。数字系统的设计一般采用自顶向下、由粗到细、逐步求精的方法。计一般采用自顶向下、由粗到细、逐步求精的方法。一、自底向上的设计方法一、自底向上的设计方法 传统的电子设计流程通常是传统的电子设计流程通常是自底向上自底向上的,即首的,即首先确定构成系统的最底层的电路模块或元件的结构先确定构成系统的最底层的电路模块或元件的结构和功能,然后根据主系统的功能要求,将它们组合和功能,然后根据主系统的功能要求,将它们组合成更大的功能块,使它们的结构和功能满足高层系成更大的功能块,使它们的结构和功能满足高层系统的要求。以此流程,逐步向上递推,直至完成整统的要求。以
6、此流程,逐步向上递推,直至完成整个目标系统的设计。个目标系统的设计。系统测试与性能分析完整系统功能模块基本元器件 缺点:缺点:1、设计过程依赖现有的通、设计过程依赖现有的通用元器件、手工及经验;用元器件、手工及经验;2、设计后期的仿真和调试、设计后期的仿真和调试3、自下而上思想的局限性、自下而上思想的局限性4、设计周期长、灵活性差、设计周期长、灵活性差、效率低效率低传统电路设计方法:传统电路设计方法:自下而上(自下而上(Bottom-Up)的设计方法)的设计方法二、自顶向下的设计方法二、自顶向下的设计方法 将数字系统的整体逐步分解为各个子系统和模将数字系统的整体逐步分解为各个子系统和模块,若子
7、系统规模较大,则还需将子系统进一步分块,若子系统规模较大,则还需将子系统进一步分解为更小的子系统和模快,层层分解,直至整个系解为更小的子系统和模快,层层分解,直至整个系统中各个子系统关系合理,并便于逻辑电路级的设统中各个子系统关系合理,并便于逻辑电路级的设计和实现为止。自上而下设计中可逐层描述,逐层计和实现为止。自上而下设计中可逐层描述,逐层仿真,保证满足系统指标。仿真,保证满足系统指标。自顶向下设计方法是一种模块化设计方法。对设计自顶向下设计方法是一种模块化设计方法。对设计的描述从上到下逐步由粗略到详细,符合常规的逻辑思的描述从上到下逐步由粗略到详细,符合常规的逻辑思维习惯;维习惯;针对具体
8、的设计,实施自顶向下的设计方法的形式针对具体的设计,实施自顶向下的设计方法的形式会有所不同,但均需遵循以下两条原则:逐层分解功能会有所不同,但均需遵循以下两条原则:逐层分解功能和分层次进行设计。同时,应在各个设计层次上,考虑和分层次进行设计。同时,应在各个设计层次上,考虑相应的仿真验证问题。相应的仿真验证问题。适合多个设计者同时进行设计。随着技术的不断进适合多个设计者同时进行设计。随着技术的不断进步,许多设计由一个设计者已无法完成,由多个设计者步,许多设计由一个设计者已无法完成,由多个设计者分工协作完成一项设计的情况越来越多分工协作完成一项设计的情况越来越多;13.3数字系统的设计准则数字系统
9、的设计准则 进行数字系统设计时,通常需要考虑多方面的进行数字系统设计时,通常需要考虑多方面的条件和要求,如设计的功能和性能要求,元器件的条件和要求,如设计的功能和性能要求,元器件的资源分配和设计工具的可实现性,系统的开发费用资源分配和设计工具的可实现性,系统的开发费用和成本等。虽然具体设计的条件和要求千差万别,和成本等。虽然具体设计的条件和要求千差万别,实现的方法也各不相同,但数字系统设计还是具备实现的方法也各不相同,但数字系统设计还是具备一些共同的方法和准则的。一些共同的方法和准则的。一、分割准则一、分割准则 自顶向下的设计方法或其他层次化的设计方法,自顶向下的设计方法或其他层次化的设计方法
10、,需要对系统功能进行分割,然后用逻辑语言进行描需要对系统功能进行分割,然后用逻辑语言进行描述。分割过程中,若分割过粗,则不易用逻辑语言述。分割过程中,若分割过粗,则不易用逻辑语言表达;分割过细,则带来不必要的重复和繁琐。表达;分割过细,则带来不必要的重复和繁琐。二、系统的可观测性二、系统的可观测性 在系统设计中,应该同时考虑功能检查和性能在系统设计中,应该同时考虑功能检查和性能的测试,即系统观测性的问题。一些有经验的设计的测试,即系统观测性的问题。一些有经验的设计者会自觉地在设计系统的同时设计观测电路,即观者会自觉地在设计系统的同时设计观测电路,即观测器,指示系统内部的工作状态。测器,指示系统
11、内部的工作状态。三、同步和异步电路三、同步和异步电路 异步电路会造成较大延时和逻辑竞争,容易引异步电路会造成较大延时和逻辑竞争,容易引起系统的不稳定,而同步电路则是按照统一的时钟起系统的不稳定,而同步电路则是按照统一的时钟工作,稳定性好。因此,在设计时应尽可能采用同工作,稳定性好。因此,在设计时应尽可能采用同步电路进行设计,避免使用异步电路。在必须使用步电路进行设计,避免使用异步电路。在必须使用异步电路时,应采取措施来避免竞争和增加稳定性。异步电路时,应采取措施来避免竞争和增加稳定性。四、最优化设计四、最优化设计 由于可编程器件的逻辑资源、连接资源和由于可编程器件的逻辑资源、连接资源和I/O资
12、资源有限,器件的速度和性能也是有限的,用器件设源有限,器件的速度和性能也是有限的,用器件设计系统的过程相当于求最优解的过程,因此,需要计系统的过程相当于求最优解的过程,因此,需要给定两个约束条件:边界条件和最优化目标。给定两个约束条件:边界条件和最优化目标。五、系统设计的艺术五、系统设计的艺术 一个系统的设计,通常需要经过反复的修改、一个系统的设计,通常需要经过反复的修改、优化才能达到设计的要求。一个好的设计,应该满优化才能达到设计的要求。一个好的设计,应该满足足“和谐和谐”的基本特征,对数字系统可以根据以下的基本特征,对数字系统可以根据以下几点做出判断:设计是否总体上流畅,无拖泥带水几点做出
13、判断:设计是否总体上流畅,无拖泥带水的感觉;资源分配、的感觉;资源分配、I/O分配是否合理,设计上和分配是否合理,设计上和性能上是否有瓶颈,系统结构是否协调;是否具有性能上是否有瓶颈,系统结构是否协调;是否具有良好的可观测性;是否易于修改和移植;器件的特良好的可观测性;是否易于修改和移植;器件的特点是否能得到充分的发挥。点是否能得到充分的发挥。数字系统设计中的第一步是明确系统的任务。数字系统设计中的第一步是明确系统的任务。在设计任务书中,可用各种方式提出对整个数字系在设计任务书中,可用各种方式提出对整个数字系统的逻辑要求,常用的方式有自然语言、逻辑流程统的逻辑要求,常用的方式有自然语言、逻辑流
14、程图、时序图或几种方法的结合。当系统较大或逻辑图、时序图或几种方法的结合。当系统较大或逻辑关系较复杂时,系统任务关系较复杂时,系统任务(逻辑要求逻辑要求)逻辑的表述和逻辑的表述和理解都不是一件容易的工作。所以,分析系统的任理解都不是一件容易的工作。所以,分析系统的任务必须细致、全面,不能有理解上的偏差和疏漏。务必须细致、全面,不能有理解上的偏差和疏漏。一、系统任务分析一、系统任务分析13.4数字系统的设计步骤数字系统的设计步骤二、确定逻辑算法二、确定逻辑算法 实现系统逻辑运算的方法称为逻辑算法,也简实现系统逻辑运算的方法称为逻辑算法,也简称为算法。一个数字系统的逻辑运算往往有多种算称为算法。一
15、个数字系统的逻辑运算往往有多种算法,设计者的任务不但是要找出各种算法,还必须法,设计者的任务不但是要找出各种算法,还必须比较优劣,取长补短,从中确定最合理的一种。数比较优劣,取长补短,从中确定最合理的一种。数字系统的算法是逻辑设计的基础,算法不同,则系字系统的算法是逻辑设计的基础,算法不同,则系统的结构也不同,算法的合理与否直接影响系统结统的结构也不同,算法的合理与否直接影响系统结构的合理性。确定算法是数字系统设计中最具创造构的合理性。确定算法是数字系统设计中最具创造性的一环,也是最难的一步。性的一环,也是最难的一步。三、建立系统及子系统模型三、建立系统及子系统模型 当算法明确后,应根据算法构
16、造系统的硬件框当算法明确后,应根据算法构造系统的硬件框架架(也称为系统框图也称为系统框图),将系统划分为若干个部分,将系统划分为若干个部分,各部分分别承担算法中不同的逻辑操作功能。如果各部分分别承担算法中不同的逻辑操作功能。如果某一部分的规模仍嫌大,则需进一步划分。划分后某一部分的规模仍嫌大,则需进一步划分。划分后的各个部分应逻辑功能清楚,规模大小合适,便于的各个部分应逻辑功能清楚,规模大小合适,便于进行电路级的设计。进行电路级的设计。四、系统(或模块)逻辑描述四、系统(或模块)逻辑描述 当系统中各个子系统当系统中各个子系统(指最低层子系统指最低层子系统)和模块和模块的逻辑功能和结构确定后,则
17、需采用比较规范的形的逻辑功能和结构确定后,则需采用比较规范的形式来描述系统的逻辑功能。设计方案的描述方法可式来描述系统的逻辑功能。设计方案的描述方法可以有多种,常用的有方框图、流程图和描述语言等。以有多种,常用的有方框图、流程图和描述语言等。对系统的逻辑描述可先采用较粗略的逻辑流程对系统的逻辑描述可先采用较粗略的逻辑流程图,再将逻辑流程图逐步细化为详细逻辑流程图,图,再将逻辑流程图逐步细化为详细逻辑流程图,最后将详细逻辑流程图表示成与硬件有对应关系的最后将详细逻辑流程图表示成与硬件有对应关系的形式,为下一步的电路级设计提供依据。形式,为下一步的电路级设计提供依据。五、逻辑电路级设计及系统仿真五
18、、逻辑电路级设计及系统仿真 电路级设计是指选择合理的器件和连接关系以电路级设计是指选择合理的器件和连接关系以实现系统逻辑要求。电路级设计的结果常采用两种实现系统逻辑要求。电路级设计的结果常采用两种方式来表达:电路图方式和硬件描述语言方式。方式来表达:电路图方式和硬件描述语言方式。EDA软件允许以这两种方式输入,以便作后续的处软件允许以这两种方式输入,以便作后续的处理。理。六、系统的物理实现六、系统的物理实现 物理实现是指用实际的器件实现数字系统的设物理实现是指用实际的器件实现数字系统的设计,用仪表测量设计的电路是否符合设计要求。现计,用仪表测量设计的电路是否符合设计要求。现在的数字系统往往采用
19、大规模和超大规模集成电路,在的数字系统往往采用大规模和超大规模集成电路,由于器件集成度高、导线密集,故一般在电路设计由于器件集成度高、导线密集,故一般在电路设计完成后即设计印刷电路板,在印刷电路板上组装电完成后即设计印刷电路板,在印刷电路板上组装电路进行测试。需要注意的是,印刷电路板本身的物路进行测试。需要注意的是,印刷电路板本身的物理特性也会影响电路的逻辑关系。理特性也会影响电路的逻辑关系。13.5数字系统的设计举例数字系统的设计举例【例【例13.1】数字频率计的设计】数字频率计的设计 1.方案构思:方案构思:8位十进制数字频率计可以由一个测频位十进制数字频率计可以由一个测频控制信号发生器控
20、制信号发生器TESTCTL、八个有时钟使、八个有时钟使能的十进制计数器能的十进制计数器CNT10、一个、一个32位锁存位锁存器器REG32B组成。组成。2.顶层电路的设计及顶层电路的设计及VHDL实现:实现:1)顶层电路逻辑图顶层电路逻辑图 图13.2 8位十进制数字频率计逻辑图 n2)顶层的顶层的VHDL源程序源程序nLIBRARY IEEE;n;nENTITY FREQ ISn PORT(FSIN:IN STD_LOGIC;n CLK:IN STD_LOGIC;n DOUT:OUT STD_LOGIC_VECTOR(31 DOWNTO 0);nEND ENTITY FREQ;nARCHIT
21、ECTURE ART OF FREQ ISnCOMPONENT CNT10 IS n -待调用的有时钟使能的十进制计数器端口定义n PORT(CLK,CLR,ENA:IN STD_LOGIC;n CQ:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);n CARRY_OUT:OUT STD_LOGIC);nEND COMPONENT CNT10;nCOMPONENT REG32B ISn -待调用的32位锁存器端口定义n nCOMPONENT TESTCTL IS n -待调用的测频控制信号发生器端口定义n nSIGNAL SE,SC,SL:STD_LOGIC;nSIGNAL
22、S1,S2,S3,S4,S5,S6,S7,S7,S8:STD_LOGIC;nSIGNAL SD:STD_LOGIC_VECTOR(31 DOWNTO 0);nBEGINnU0:TESTCTL PORT MAP(CLK=CLK,TSTEN=SE,CLR_CNT=SC,LOAD=SL);nU1:CNT10 PORT MAP(CLK=FSIN,CLR=SC,ENA=SE,CQ=SD(3 DOWNTO 0),ARRY_OUT=S1);n -名字关联nU2:CNT10 PORT MAP(CLK=S1,CLR=SC,ENA=SE,CQ=SD(7 DOWNTO 4),CARRY_OUT=S2);nU3:CN
23、T10 PORT MAP(S2,SC,SE,SD(11 DOWNTO 8),S3);-位置关联nU4:CNT10 PORT MAP(S3,SC,SE,SD(15 DOWNTO 12),S4);nU5:CNT10 PORT MAP(S4,SC,SE,SD(19 DOWNTO 16),S5);nU6:CNT10 PORT MAP(S5,SC,SE,SD(23 DOWNTO 20),S6);nU7:CNT10 PORT MAP(S6,SC,SE,SD(27 DOWNTO 24),S7);nU8:CNT10 PORT MAP(S7,SC,SE,SD(31 DOWNTO 28),S8);nU9:REG3
24、2B PORT MAP(LOAD=SL,DIN=SD(31 DOWNTO 0),DOUT=DOUT);nEND ARCHITECTURE ART;3.次级模块电路的分析与设计:次级模块电路的分析与设计:1)32位锁存器位锁存器REG32B的设计的设计 设置锁存器的好处是,显示的数据稳定,不会由于周期性的清零信号而不断闪烁。2)32位锁存器的位锁存器的VHDL源程序源程序nLIBRARY IEEE;n;nENTITY REG32B IS n PORT(LOAD:IN STD_LOGIC;n DIN:IN STD_LOGIC_VECTOR(31 DOWNTO 0);n DOUT:OUT STD_L
25、OGEC_VECTOR(31 DOWNTO 0);nEND ENTITY REG32B;nARCHITECTURE ART OF REG32B IS nBEGINnPROCESS(LOAD,DIN)ISnBEGINnIF LOAD EVENT AND LOAD=1 THEN DOUT=DIN;-锁存输入数据n END IF;nEND PROCESS;nEND ARCHITECTURE ART;3)十进制计数器十进制计数器CNT10的设计的设计n 此十进制计数器的特殊之处是,有一时钟使能输入端ENA,用于锁定计数值。当高电平时计数允许,低电平时计数禁止。4)十进制计数器十进制计数器CNT10的的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字 系统 设计 基础
限制150内