欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    数字系统设计复习.docx

    • 资源ID:3915859       资源大小:473.30KB        全文页数:37页
    • 资源格式: DOCX        下载积分:12金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数字系统设计复习.docx

    1、数字系统设计复习1. 数字系统设计概论1.1数字系统的概念是指对数字信息进行存储、传输、处理的电子系统。它的输入和输出都是数字量。 通常把门电路、触发器等称为逻辑器件;将由逻辑器件构成,能执行某单一功能的电路,如计数器、译码器、加法器等,称为逻辑功能部件;把由逻辑功能部件组成的能实现复杂功能的数字电路称数字系统。数字系统和功能部件之间的区别之一在于功能是否单一。区别之二在于是否包含控制电路。1.2数字系统的发展1.2.1 EDA技术: EDA(Electronic Design Automation) 立足于计算机工作平台而开发出来的一整套先进的设计电子系统的软件工具。三个发展阶段: (1)电

    2、子CAD阶段;(2)电子CAE阶段;(3)EDA阶段。EDA技术的特点:(1)高层综合和优化(2)采用硬件描述语言进行设计 (3)开放性和标准化(4)库的引入(5)支持“自顶向下”设计方法系统设计层次: (1)板图级(物理级)(2)逻辑门级(3)寄存器传输级 (4)行为级(5) 系统级1.2.2数字系统的两种设计思路:(1)自底向上法(Bottom-up设计) 设计过程从最底层设计开始。设计系统硬件时,首先选择具体的元器件,用这些元器件通过逻辑电路设计,完成系统中各独立功能模块的设计,再把这些功能模块连接起来,搭建成完整的硬件系统。 在进行底层设计时,缺乏对整个电子系统总体性能的把握,在整个系

    3、统设计完成后,如果发现性能尚待改进,修改起来比较困难,因而设计周期长。(2)自顶向下法(Top_down设计) 按一定原则将系统分成若干子系统,再将每个子系统分成若干个功能模块,再将每个模块分成若干小的模块直至分成许多可以实现的基本模块。1.2.3 构建数字系统的方法途径 专用集成电路 把所设计的数字系统做成一整片规模集成电路,不仅减小了电路的体积、重量、功耗、而且使电路的可靠性大为提高。 PLD完全由用户自行定义芯片逻辑功能的“通用型”数字器件。用户可以借助特定的EDA软件设计一个数字电路或数字系统,通过该软件进行一系列的操作(仿真综合适配)后形成特定的二进制文件,然后通过专门的编程器或IS

    4、P(In System Program)的方式下载到芯片中,使其具备预期的功能。可以反复修改,反复编程,直到完全满足要求。降低了开发的风险。管脚定义的灵活,增加了设计的自由度,提高了效率。同时这种设计减少了所需芯片的种类和数量,缩小了体积,降低了功耗,提高了系统的可靠性。1.2.4 基于IP模块的设计IP(Intellectual Property)原来的含义是指知识产权、著作权等,在IC设计领域则可以理解为完成某种功能的设计模块,也可称为IP核。 IP核分为软核、硬核和固核:软核指的是在寄存器级或门级对电路功能用HDL进行描述,表现为VHDL或Verilog HDL代码。用户在使用软核的时候

    5、可以修改,以满足自己所需要的功能。实现后电路的总门数在5000门以上。硬核指的是以版图形式描述的设计模块,它基于一定的设计工艺,用户不能改动,用户得到的硬核仅是产品的功能,而不是产品的设计。一般在专用集成电路ASIC器件上实现,总门数在某些方面5000门以上。 固核介于硬核和软核之间,允许用户重新定义关键的性能参数,内部连线也可以重新优化。一般在FPGA器件上实现的、经验证是正确的、总门数在某些方面5000门以上电路结构编码文件称为“固核”。1.3 数字系统的设计流程1、设计输入目前,已成为IEEE标准的是VHDL语言和Verilog HDL语言。 VHDL (Very High Speed

    6、Integration Circuit HDL,超高速集成电路硬件描述语言):是于1985年由美国国防部的支持下正式推出的。1987年被采纳为IEEE标准。 Verilog HDL语言是美国Gateway Design Automation公司 于1983年推出的, 1995年被采纳为IEEE标准。2、综合: 指的是将较高层次的设计描述自动转化为较低层次描述的过程。综合器就是能够自动实现上述转换的工具。或者说,综合器是能够将原理图或HDL语言表达和描述的电路功能转化为具体的电路结构网表的工具。 综合有下面几种形式:1)行为综合;2)逻辑综合;3)版图综合。3、适配:是将由综合器产生的网表文件配

    7、置于指定的目标器件中,并产生最终的可下载文件。 适配过程包括: 映射、 布局、 布线。4、仿真: 是对所设计电路的功能的验证。 功能仿真:在做完理论设计,没有选择具体器件时所做的仿真。不考虑信号时延等因素的仿真,也叫前仿真。 时序仿真:是在选择了具体器件并完成了布局布线后 进行的包含定时关系的仿真。也叫后仿真。它主要用于验证由于不同的布线方式、分区规划而产生的各种延时对系统功能的影响。5、编程下载和配置:把适配后生成的编程文件装入到PLD器件中的过程称为下载。通常对CPLD器件的下载称为编程(Program),对于FPGA器件的下载称为配置(Configure)。下载后的FPGA/CPLD器件

    8、就是所设计的电子系统。1.4 用于开发FPGA和CPLD的EDA工具1.基于CPLD/FPGA的集成开发环境2.可编程逻辑器件PLD2.1 PLD概述2.1.1 PLD的基本概念可编程逻辑器件PLD制作工艺采用的是CMOS工艺,在这些器件的内部,集成了大量功能独立的分立元件,它们可以是基本逻辑门、由基本逻辑门构成的宏单元,以及与阵列、或阵列,芯片内还有大量可配置的连线,在器件出厂时,芯片内的各个元件、单元相互间没有连接,芯片暂不具有任何逻辑功能。芯片内的各个元件、单元如何连接,由用户根据自身的设计的电路功能要求通过计算机编程决定。2.1.2 PLD的作用高密度的PLD,即CPLD/FPGA,能

    9、完成任何数字器件的功能,上至高性能的CPU,下至简单的74电路,都可以用CPLD/FPGA 来实现。2.1.3 PLD的分类按编程特点分类按编程次数分类 一次性编程器件(One Time Programmable, OTP) 可多次编程器件按不同的编程元件和编程工艺划分 采用熔丝(Fuse)编程元件的器件,如PROM。 采用反熔丝(Antifuse)编程元件的器件。 采用紫外线擦除、电编程方式的器件,如EPROM。 采用电擦除、电编程方式的器件,一般采用EEPROM和快闪存储器 (Flash Memory)两种工艺实现。 采用静态存储器(SRAM)结构的器件按结构特点分类阵列型的PLD器件:基

    10、本结构为与或阵列。如:SPLD和绝大多数的CPLD。单元型的PLD器件:基本结构为逻辑单元。如:FPGA2.1.4 PLD的基本构成原理与表示方法常用门电路在PLD中的表示法(a)与门;(b)或门;(c)输入缓冲器;(d)三态输出缓冲器;(e)非门2.2 SPLD介绍2.2.1 可编程只读存储器(PROM)它包含一个固定的“与”阵列和一个可编程的“或”阵列, 它的“与”阵列是一个“全译码阵列”,即对某一组特定的输入i(i=0,1,2)只能产生一个唯一的乘积项。因为是全译码,当输入变量为n个时,阵列的规模为2n,所以PROM的规模一般很大。PROM存在的不足:PROM虽然也可以用来产生组合逻辑函

    11、数,但因为往往只用到了与逻辑阵列输出的最小项的一部分,而且有时这些最小项还可以合并,因此器件内部资源的利用率不高。2.2.2可编程逻辑阵列PLA(Programmable Logic Array) 它的 “与”阵列和“或”阵列都是可编程的。 PLA与PROM比较:1、由于PLA的与逻辑阵列是可编程的,所以就可通过编程只产生所需要的乘积项,使得与逻辑阵列和或阵列所需的规模大为减少,从而有效地提高了芯片的利用率。2、PLA器件内部的与阵列和或阵列均可编程,因而在实现函数时,它的灵活性最高。3、由于PLA的与、或阵列均要求能编程,这种结构在实现比较简单的逻辑功能时还是比较浪费的。2.2.3可编程阵列

    12、逻辑PAL(Programmable Array Logic) 其基本结构包含一个可编程的“与”阵列和一个固定的“或”阵列。 PAL的几种输出电路的结构和反馈形式:(1)专用输出结构(2)可编程I/O结构 (3)寄存器输出结构 (4)异或型输出结构 优缺点1、增加了各种形式的输出电路,扩展了电路的逻辑功能,提高了使用的灵活性。2、采用了双极型熔丝工艺,只能一次性编程3、PAL器件输出电路结构的类型繁多,给设计和使用带来一些不便2.2.4通用阵列逻辑(GAL)采用E2CMOS工艺制作,可以用电信号擦除并反复编程上百次。在结构上的显著特点是输出采用了宏单元(OLMC )。GAL器件的可编程“与”阵

    13、列则是送到OLMC上输出的。通过对OLMC单元的编程,器件能满足更多的逻辑电路要求,从而使它比PAL器件具有更多的功能,设计也更为灵活。输出逻辑宏单元(OLMC)的结构4选1选择器用来选择输出方式、输出极性2选1选择器用来选择反馈信号(即选择输出引脚为输入变量) SPLD结构对比表:2.3 HPLD介绍2.3.1 CPLD (Complex Programmable Logic Device,复杂可编程逻辑器件)一般把所有的集成度超过1000门以上的EPLD (Erasable Programmable Logic Device)器件都称为是CPLD。 * CPLD 包括 三部分:可编程逻辑宏

    14、单元、可编程I/O单元、可编程内部连线(1)、可编程逻辑宏单元(LMC,Logic Macro Cell):称为内部逻辑宏单元。 LMC内部主要包括与阵列、或阵列、可编程触发器和数据选择器等电路,能独立地配置为时序或组合工作方式。(a) 多触发器结构和“隐埋”触发器结构:不增加芯片的管脚(b) 乘积项共享结构(c) 异步时钟(2)、可编程I/O单元(IOC,Input/Output Cell)内部信号到引脚的接口部分。一般只有少数几个专用输入端,大部分端口均为I/O 端。其内部通常由三态输出缓冲器、输出极性选择器、输出选择控制器、反馈选择器等几组数据选择器组成。通过编程可以使每个I/O引脚单独

    15、地配置为输入、输出和双向工作、寄存器输入等各种不同的工作方式,因而使I/O端的使用更为方便、灵活。(3)、可编程内部连线(PIA,Programmable in aline): 可编程内部连线的作用是在各逻辑宏单元之间以及逻辑宏单元和I/O单元之间提供互连网络。各逻辑宏单元通过可编程连线阵列接收来自输入端的信号,并将宏单元的信号送往目的地。在CPLD器件中,一般采用固定长度的线段来进行连接。2.3.2 FPGA(Field Programmable Gate Array,现场可编程门阵列) 包括三部分:可编程逻辑块(CLB,Configurable Logic Block)、I/O模块(IOB

    16、,I/O Block)、可编程互连资源(PIR,Programmable Interconnect Resource)(1)、可编程逻辑块CLB:是实现用户功能的基本单元,它们通常规则地排列成一个阵列 主要由逻辑函数发生器、触发器、数据选择器等部分组成。 逻辑函数发生器: CLB中的逻辑函数发生器都是基于查找表结构。查找表结构(LUT,Look-up Table):LUT本质上就是一个RAM。 每一个LUT可以看成一个有4位地址线的16x1的RAM。 当用户通过描述了一个逻辑电路以后,FPGA开发软件会自动计算逻辑电路的所有可能的结果,并把结果事先写入RAM,这样,每输入一个信号进行逻辑运算就

    17、等于输入一个地址进行查表,找出地址对应的内容,然后输出即可。(2)、IOB:主要完成芯片上逻辑与外部封装脚的接口,它通常排列在芯片的四周;主要由输入触发器、输入缓冲器和输出触发器/锁存器、输出缓冲器组成。 每个IOB控制一个引脚,它们可以被配置为输入、输出或双向I/O功能。( 3)、PIR: 可编程互连资源(PIR)包括各种长度的连线线段和一些可编程连接开关, 它们将各个CLB之间或CLB、 IOB之间以及IOB之间连接起来,构成特定功能的电路。这些金属线段带有可编程开关,通过自动布线实现FPGA内部的CLB和CLB和IOB之间的连线。 连线有三种互连结构:单长线、双长线、长线。 2.3.3

    18、CPLD与FPGA的异同 (1)、相同点:输入/输出单元; 逻辑块阵列;互连资源(2)、CPLD与FPGA的差别: CPLD是阵列式结构,基于乘积项技术, FPGA是单元式结构,基于查找表技术; CPLD器件的关键技术是E2PROM和快闪存储器工艺 , FPGA通常采用CMOS SRAM工艺; CPLD拥有上电即可工作的特性, FPGA需要一个加载过程 CPLD的内连续性的布线结构使其时序延迟具有均匀性和可预测性, FPGA具有的分段式布线结构使其时序延迟具有不可预测性; CPLD 比较适合于实现各种组合逻辑, FPGA比较适合于含有时序逻辑较多的电路2.3.4 Altera 公司生产的PLD

    19、器件主要产品分为CPLD和FPGA两大类型CPLD 基本结构单元是乘积项,在工艺上采用E2PROM编程单元。FPGA 类型器件采用SRAM编程单元。2.3.5 PLD器件的发展趋势 (1)向大规模、高集成度方向进一步发展(2)向低电压、低功耗的方向发展(3)向高速可预测延时的方向发展(4)向功能丰富型发展(5)向模数混合可编程方向发展边界扫描测试技术: 边界扫描测试技术主要解决芯片的测试问题。标准的边界扫描测试只需要四根信号线,能够对电路板上所有支持边界扫描的芯片内部逻辑和边界管脚进行测试。应用边界扫描技术能增强芯片、电路板甚至系统的可测试性。 3. Verilog HDL 语言3.1 Ver

    20、ilog HDL 基础3.1.1 词法Verilog HDL程序是由各种符号流构成的,我们把它们称之为词法。Verilog HDL 中的词法类型包括:(1) 间隔符与注释符;(2) 数值;(3) 字符串;(4) 标识符、关键字;(5) 运算符。一、间隔符与注释符间隔符包括空格符、制表符(tab)、换行以及换页符。Verilog HDL有两种注释形式,单行注释以两个字符“/”起始,以新的一行作为结束;而段注释则是以/*起始,以*/结束。二、数 值 Verilog HDL的数值由以下四个基本的值组成:0代表逻辑0或假状态 1代表逻辑1或真状态 x逻辑不定态 z高阻态在程序运行中,其值不能改变的量称

    21、为常量。整型数、实型数1).整型数及其表示: +/- a、数值常量不能将下划线“_” 其放于数值的首位。b 、在和进制之间,数值之间不允许出现空格。c、如果定义的位宽比实际的位数长,通常在左边补0,但如果数的最左边一位为x或z, 就相应的用x或z在左边补位。d、数值常量中的“z”可以用“?”来代替。2).实型数及其表示: Verilog中的实数可以用十进制表示法与科学计数法两种格式来表示如果采用十进制格式,小数点两侧都必须至少有一位数字,否则为非法表示形式。实数可以转化为整数,根据四舍五入的原则。三、字符串 在Verilog中,字符串大多用于显示信息的命令中。字符串常量是用双引号括起来的字符序

    22、列串,它必须包含在同一行中,不能分成多行书写。 字符串变量是寄存器型变量。四、标识符、关键字标识符: 用户为程序描述中的Verilog 对象所起的名字。模块名、端口名和实例名都是标识符。 标识符必须以英语字母a-z, A-Z起头,或者用下横线符 _ 起头。其中可以包含数字、 $符和下横线符。 Verilog 是大小写敏感的。【特殊标识符】: $ 符号表示 Verilog 的系统任务和函数特殊符号 “#” 常用来表示延迟关键字:是Verilog语言内部的专用词,所有的关键词都是小写的。3.1.2 数据类型连线型数据相当于硬件电路中的各种物理连接,代表的是物理连接线。 寄存器型数据一般对应的是具有

    23、状态保持作用的电路,如触发器、寄存器、锁存器。它的特点是输出能保持其值,直到它被赋于新的值。 对于端口信号,输入端口只能是net类型。输出端口可以是net类型,也可以是register类型。若输出端口在过程块中赋值则为register类型;若在过程块外赋值(包括实例化语句,assign 连续赋值语句),则为net类型。 内部信号类型与输出端口相同,可以是net或register类型。parameter 用来定义常量,即用来定义一个标识符代表一个常量。主要用于定义延迟时间和变量宽度。3.1.3运算符按所带操作数的个数区分,运算符可分为3类:单目运算符、双目运算符、三目运算符。按功能分:算术运算符

    24、、关系运算符、等式运算符、逻辑运算符、位运算符、 缩位逻辑运算符、移位运算符、并接运算符等。(1)算术运算符用于进行数值运算,+、*、/、%。 (2)逻辑运算符: &(逻辑与)、|(逻辑或)、!(逻辑非)(3)位运算:将两个操作数按对应位分别进行逻辑运算: (非)(按位取反); &(与); |(或); (异或);,(同或); &(与非); |(或非)(4) 关系运算符(大于);= (大于等于) ; (小于);= (小于等于)。(5) 等式运算符:= =(相等);!=(不相等);= = =(全等);!= =(不全等)。(6)缩位运算符:缩位运算符将一个矢量缩减为一个标量。 &(与);|(或);(

    25、异或);(同或);&(与非);|(或非)。(7)移位运算符An (右移位运算符)(8)条件运算符条件运算符(? :)信号=条件?表达式1:表达式2;(9)拼接运算符拼接运算符 3.2 Verilog HDL中的模块3.2.1 模块模块是Verilog HDL语言的基本描述单位,它用于描述某个电路的功能或结构,以及它与其它模块通信的外部端口。 module ()端口说明 (input,output,inout)数据类型说明(wire reg)逻辑功能或结构构成定义(门元件例化、assign数据流always块行为描述、调用其它模块)endmodule 每个模块实现特定的功能;模块可以进行层次嵌套

    26、。Verilog HDL程序一行可以写多条语句,也可以一条语句分成多行书写,每条语句以分号结束, endmodule语句后面不必写分号。3.2.2 Verilog HDL 数字设计中模块中功能的基本描述方式(1)、结构描述方式: 描述电路是由哪些基本元件组成,以及相互连接关系。内置门级元件(12个逻辑门and or xor not 等 )、用户自己定义的模块。 门元件的调用调用格式:门元件名称 实例名 (端口列表)多输入门的端口列表: (输出、输入1、输入2、输出3.);对于三态门输入、输出端口:输出,输入,使能控制端);对于buf和not输入、输出端:(输出1,输出2,输出3,输入);(2)

    27、、数据流描述方式: 以“assign”关键字开头的连续赋值语句 。 连续赋值语句的语法为: assign #延时量 变量名 = 赋值表达式;(3)、行为描述方式: 行为描述指电路输入输出信号间的逻辑关系。 (4)、混合设计描述方式: 行为功能主要使用过程语句来描述。3.3 Verilog HDl 行为语句3.3.1 过程语句(1)initial 过程语句作用与特点: initial语句主要用于初始化和波形生成,initial 过程块中的语句顺序执行且仅执行一次。语法格式: initial begin 语句1; 语句2; .语句n; end变量一定被声明为reg型。(2)always 过程语句特

    28、点:always语句后跟着的语句是否执行,则要看它的触发条件是否满足,如满足则运行该语句一次,如不断满足则不断地循环执行。 语法格式:always (敏感信号表达式 ) 块语句 3.3.2 块语句串行块begin_end或begin:块名块内声明语句;语句1;语句2;.语句n;end串行块(顺序块)有以下特点:1)块内的语句是按顺序执行的,即只有上面一条语句执行完后下面的语句才能执行。2)每条语句的延迟时间是相对于前一条语句执行结束的时间而言的。3)直到最后一条语句执行完,程序流程控制才跳出该语句块。顺序块的格式如下: begin 语句1; 语句2; . 语句n; end3.3.3 赋值语句(

    29、1) 连续赋值语句以关键字assign 开头的为连续赋值语句,主要用于对wire型变量进行赋值。 (2) 过程赋值语句用在过程语句当中,一般用于对reg型变量进行赋值。过程赋值有阻塞赋值和非阻塞赋值两种方式。 阻塞赋值方式 赋值符号为“=”。 阻塞赋值语句执行的过程是:首先计算右端赋值表达式的取值,然后立即将计算结果赋值给“=”左端的被赋值变量。如果在一个块语句中,有多条阻塞赋值语句,在前面的赋值语句没有完成之前,后面的语句就不能被执行。 非阻塞赋值方式 赋值符号为“ =”。非阻塞赋值方式的特点是:在整个过程块结束时才完成赋值操作。一齐赋值。3.3.4 条件语句(3)if(表达式1)语句1;e

    30、lseif(表达式2)语句2;elseif(表达式3)语句3;.elseif(表达式m)语句m;else语句n;(1)Ifelse语句(2)case 语句case语句有三种表示方式: 1)case(表达式) endcase 2)casez(表达式) endcase 3)casex(表达式) endcase case分支项的一般格式如下: 分支表达式: 语句; 缺省项(default项): 语句;1)在case语句中,控制表达式与分支表达式的值之间的比较是一种全等比较(=),必须保证两者的对应位全等。2) casez与casex语句是case语句的两种变体,在casez语句中,z被认为是无关值。在casex语句中,值x和z都被认为是无关位。3)可以用? 字符来代替字符x或z,表示无关位。3.


    注意事项

    本文(数字系统设计复习.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开