VerilgHDL第五讲Verilog实例.pptVIP

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五讲 门电路的描述和设计实例 5.1基本门电路的描述 一个逻辑电路是由许多逻辑门和开关所组成,因此用逻辑门的模型来描述逻辑电路结构是最直观的。VerilogHDL提供了一些描述门类型的关键字,可以用于门级结构建模。 VerilogHDL内含的基本元件模型共有26种,其中14种为基本门级元件,12种为开关级元件, 5.1.1门电路列表 门与开关的说明语法可以用标准的声明语句格式和一个简单的实例引用加以说明 基本格式如下: 门的类型 [驱动能力延时]门实例1[,门实例2,门实例3……] 门的类型是门声明语句所必须的,它可以是VerilogHDL语法规定的26门类型中的任意一种。驱动能力和延时是可选的,可根据不同的情况选不同的值或不选。门实例1是在本模块中引用的第一个这种类型的门的名称及端口定义,而门实例n是引用的第n个这种类型的门的名称及端口定义。 例:nand #10nd1(a,data,clock,clear); 这个例子说明在模块中使用了一个名为nd1的与非门,输入为clock,data,clear 输出为a,输出与输入得延时为10个单位时间 5.1.2基本门的逻辑真值表 5.1.3门级延时的说明 门级延时反映的是信号的变化从门级元件的任意输入端口流动到任一输出端口所经历的传输延迟 主要可以分为: 上升延时 下降延时 截至延时 到不定态的延时 5.1.4门级延时量的基本表示方式 当门级延时量只包含一个延时值时,也就是说当门级延时说明部分是#d形式时,延时值d将同时代表元件实例的上升延时值,下降延时值,截至延时值,到不定态的延时值, 当门级延时量包含两个延时值是,也就是当门级延时说明部分是#(d1,d2)形式时,元件实例的上升延时值,下降延时值将指定, 同理,当有3个延时值,前三个将指定 5.2组合逻辑电路设计实例 (1)加法器 (2)比较器 (3)3-8译码器 (4)BCD/七段译码器 module bin7seg (data_in ,EN ,data_out ); input [3:0] data_in ; input EN ; output [6:0] data_out ; reg [6:0] data_out ; always @(data_in or EN ) begin data_out = 7b1111111; if (EN == 1) case (data_in ) 4b0000: data_out = 7b1000000; // 0 4b0001: data_out = 7b1111001; // 1 4b0010: data_out = 7b0100100; // 2 4b0011: data_out = 7b0110000; // 3 4b0100: data_out = 7b0011001; // 4 4b0101: data_out = 7b0010010; // 5 (续)BCD/七段译码器 4b0110: data_out = 7b0000011; // 6 4b0111: data_out = 7b1111000; // 7 4b1000: data_out = 7b0000000; // 8 4b1001: data_out = 7b0011000; // 9 4b1010: data_out = 7b0001000; // A 4b1011: data_out = 7b0000011; // b 4b1100: data_out = 7b0100111; // c 4b1101: data_out = 7b0100001; // d 4b1110: data_out = 7b0000110; // E 4b1111: data_out = 7b0001110; // F default: data_out = 7b1111111; endcase end endmodule (5)多路器 module mux2( out, a, b, sel); output out; input a, b, sel; reg out; //用电平触发的always块来设计多路器的组合逻辑 always @( a or b or sel ) begin /*检查输入信号sel的值,如为1,输出out为a,如为0, 输出out为b.*/ case( sel ) 1b1: out = a; 1b0: out = b; default: out = bx; endcase end endmodule (6)用门级结构描述D触发器 设计示例二 5.3时序电路设

文档评论(0)

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

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

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档