数字电路域逻辑设计4-5.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数字电路域逻辑设计4-5

判断逻辑电路存在竞争冒险可能的方法有很多,也比较复杂。特别是如果输入的变量数目较多,很难进行判别。目前已有较成熟的计算机辅助分析。 我们主要了解如何防止竞争冒险。 4.4 VHDL描述组合逻辑电路 1.VHDL表达式 表达式中包括变量与信号. 定义: VARIABLE 变量名:类型名 SIGNAL 信号名:类型名 赋值: 变量名:=值 信号名=值 2.VHDL运算符:其中逻辑运算符用得最多. 3.数据类型 预定义: BIT;BIT_VECTOR;BOOLEAN;INTEGER; CHARACTER 用户自定义:枚举类型;数组类型;子类型 4. 并行语句 5.顺序描述语句 6.结构描述 结构描述是描述电路之间的连接.也就是组成电路系统各部件之间的连接.这些部件可以来自于库,也可以是用户自定义的.结构描述包括以下二部分: 部件声明语句(COMPONENT语句):要使用用户已经定义好的部件,必须先声明,格式为:见书. 部件描述语句(PORT MAP语句):PORT MAP语句其实是说明实际部件上的端口与被调用部件上的端口的对应关系. (后详,略) 例4-14 二选一数据选择器 主要有3种方法描述 数学模型描述:直接从逻辑关系进行描述. 用RTL描述方式(硬件描述语言方式):这种方法能够体现出VHDL描述电子系统的特点:不需要了解电路结构,直接描述端口及实现的功能. 结构化描述方法 entity mux2_1 is port(d0,d1:in bit;st:in bit;y:out bit); end mux2_1; architecture rt1 of mux2_1 is begin y=d0 when st=‘1’ else ‘条件赋值 d1; end rt1; 结构化描述方式 本例使用结构化描述方式并没有优势,但通过这个例子,可以了解VHDL的多模块设计方式。 多模块设计的方法是:首先设计好各模块,(本例缺),在顶层文件中,首先声明这些模块(COMPONENT语句),然后再进行组装(PORT MAP语句) 例4-15 8-3线优先编码器 真值表见121页4-1-3 Temp_in,temp_out:中间变量, 矢量类型. temp_in一一对应了8个输入端(in0…in7),用一种巧妙的办法将输入端的各种组合用一个矢量表达. Temp_out一一对应了5个输出端(y2,y1,y0,yex,ys). 进程的敏感信号表为st或temp_in,9个输入量中有一个发生变化,均可引起进程的执行,相应地temp_out均有一个对应值. 进程的最后将temp_out拆开,分赋到各输出端. 本描述完全将真值表表达了出来. 选读:1位全加器的VHDL描述 如果已经有半加器,或门等设计单元,全加器可以用半加器及或门组成,顶层文件为全加器,调用底层的二个文件(相当于元件). * * 4.3.2 静态逻辑冒险   例4-12 分析如图4-3-1(a)所示的组合电路,当输入信号abc由000变化到010及abc由000变化到110时的输出波形。 ≥1 a b c F 1 1 1 0 1 0 0 0 00 01 11 10 0 1 ab c Y1 Y2 b 1 2 (a) (b) 图4-3-1 例4-12逻辑图 和卡诺图 (1) 当输入信号abc由000变化到010时,在稳定状态下输出应为1。若tpd2tpd1(延迟时间),则在输出波形F=1中出现短暂的0,这就是静态0冒险--即由于门延迟,产生了不期望的尖峰信号。 b b Y2 Y1 F 图4-3-2 门延迟产生冒险   (2) 当输入信号abc由000变化到110时,在稳定状态下,输出保持为1。若tpd2tpd1 ,则在输出信号中也会出现静态0冒险,如图4-3-3。 Y2 Y1 F td 图4-3-3 多个输入信号变 化时产生冒险举例   结论:静态逻辑冒险仅仅发生在输入信号变化的瞬间,而在输入稳定的状态下是不会发生的。但是,输入信号发生变化的瞬间,并不一定会发生静态冒险。   例如,当输入信号abc由000变化到010时,若tpd2tpd1,则输出信号稳定,F中不会出现0毛刺。 Y1 Y2 F 4.3.4 如何避免逻辑冒险   1.修改逻辑设计 有一种竞争冒险是由于逻辑式中出现A+A所产生的。   通过F=AB+AC+BC,增加多余项BC,以消除由于A变化而引起的逻辑冒险。因为当B=1、C=1时,存在F=A+A情况,由于增加了BC项,不论A如何变化,BC项始终为1,输出始终为1,输出不会出现逻辑冒险。由于BC为多余项,此方法又

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档