Verilog HDL项目式教程 课件 项目3--5 结构化建模;行为建模;状态机建模.pptxVIP

Verilog HDL项目式教程 课件 项目3--5 结构化建模;行为建模;状态机建模.pptx

  1. 1、本文档共114页,可阅读全部内容。
  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文档。上传文档
查看更多

项目3结构化建模

任务3.1门级原语

任务3.2层次建模

项目3结构化建模

任务3.1门级原语

任务3.1门级原语

项目3结构化建模

项目3结构化建模

简单的逻辑电路可以使用逻辑门来设计实现。

基本的逻辑门分为两类:与/或门类、缓冲/非门类。

(1)与/或门类。

与/或门类包括与门(and)、或门(or)、与非门(nand)、或非门(nor)、异或门(xor)、同或门

(xnor)。与/或门类都具有一个标量输出端和多个标量输入端,门的端口列表中的第一个端口必定

是输出端口,其他均为输入端口。当任意一个输入端口的值发生变化时,输出端口的值立即重新计算。

例如:

wireOUT,IN1,IN2,IN3;

andand2(OUT,IN1,IN2);//基本门的实例引用

nandnand3(OUT,IN1,IN2,IN3);/输入端超过两个,三输入与非门

and(OUT,IN1,IN2,IN3);//合法的门实例引用,不给实例命名

项目3结构化建模

(2)缓冲/非门类。

缓冲/非门类包括缓冲器(buf)、非门(not)、带控制端的缓冲器/非门(bufif1、bufif0、notif1、notifO)。缓

冲/非门类具有一个标量输入端和多个标量输出端,门的端口列表中的最后一个端口必定是输入端口,其他均为输出端口。

例如:

wireOUT1,OUT2,OUT3,IN,ctrl;

bufb1(OUT1,IN);

notn1(OUT1,IN);

bufb2(OUT1,OUT2,OUT3,IN);

not(OUT1,OUT2,IN);

bufifl(OUT1,IN,ctrl);

notif0(OUT1,IN,ctrl);

//基本门的实例引用

//基本门的实例引用

//输出端超过两个,三输出缓冲门

//合法的门实例引用,不给实例命名//ctrl为1时,OUT1=IN

//ctrl为01时,OUT1=~IN

项目3结构化建模

【例3-1】利用双输入端的nand门,编写自己的双输

入端的与门(my_and)、或门(my_or)、非门(my_not)、异或门(my_xor)。

上述电路设计涉及的知识点有门级原语例化和多输出

处理。

下面对这些知识点进行说明。

modulemy_gate(a,b,y);

inputa,b;

output[3:0]y;

//与门用两个nand门实现wirenandab;

nand(nandab,a,b),

(y[0].nandabnandab);//或门用三个nand门实现wirenandaa,nandbb;

nand(nandaa,a,a),

(nandbb,b,b),

(y[1].nandaa,nandbb);/非门用一个nand门实现nand(y[2],a,a);

1异或门用四个nand门实现wireandab,c,d;

nand(andab,a,b),

(c,andab,a),

(d,andab,b),

(y[3],c,d);

endmodule

项目3结构化建模

(1)门级原语例化。

在门级原语实例引用的时候,可以不指定具体的实例名,这一点给需要实例引用几百个甚至更多

门的模块提供了方便。但对于初学者,建议在调用门级原语时给出实例名。在以上示例中,调用门级原语时均没有给出实例名。

在实际应用中,与非门和或非门更为普遍,这是因为由这两种门生成其他逻辑门容易实现。本例

给出了使用与非门来设计其他基本逻辑门的方法。

(2)多输出处理。

例3-1中有4个输出y[0]~y[3],分别对应着与门、或门、非门、异或门。这4个输出均是独立的,

在代码中分别进行了单独处理。在实践中,建议针对每个输出单独进行分析设计,这样做对于正确地实现电路逻辑是非常有效的。

例3-1的测试代码如例3-2所示。

图3-1门电路仿真波形

根据图3-1可以看出,y对应的四路输出均实现了相应门电路的功能,设计正确。

逻辑门是最基本的电路单元,任何复杂的数字逻辑电路均可由逻辑门实现。但复杂电路的设计如果从逻辑门开始搭建,显然是不现实的,这时必须采用其他建模方式,层次建模就是一种有效的方法。

项目3结构化建模

【例3-2】门电路测试代码。

modulemy_gate_tb;

regaa

wire[3:0]yx

my_gateU

文档评论(0)

人生风雪客 + 关注
实名认证
文档贡献者

如果有遇到文件不清或断篇的或者需要转换文件格式的情况请联系我,会在第一时间帮你完成完整的文档。文档如有侵权,请及时告知,本人将尽快予以删除,谢谢啦。

1亿VIP精品文档

相关文档