- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 数字电路的EDA设计
case语句与if_else_if语句的区别主要有两点: (1)与case语句中的控制表达式和多分支表达式这种比较结构相比,if_else_if结构中的条件表达式更为直观一些。 (2) case语句提供了处理分支表达式的值某些位为不定值x和高阻值z的情况。在case语句中x或z和0、1一样,只要两个值的相同位置出现x或z,就认为两个值相同。例子: case(5b10x0z) 5b1000z : a=4b0001; 5bx001z : a=4b0010; 5b10x0z : a=4b1111; default : a=4b0000; endcase 最后结果a=4b1111 6.5 Verilog HDL基础 2)casez/casex语句 case语句:是全等比较,即控制表达式和分支项表达式的值各对应为必须全等。 casez语句:如果表达式的值的某些位是z,那么对这些位的比较就不予考虑,只对非z位进行比较。 casex语句:如果表达式的值的某些位是x或z,那么对这些位的比较就不予考虑,只对非x或非z位进行比较。 6.5 Verilog HDL基础 例:用casez实现操作码译码 begin casez (opcode) 4b1zzz : out=a+b; 4b01?? : out=a-b; 4b001? : out=(~a)+1; 4b0001 : out=(~b)+1; endcase end 例:用casex实现操作码译码 begin casez (opcode) 4b1zzx : out=a+b; 4b01xx : out=a-b; 4b001? : out=(~a)+1; 4b0001 : out=(~b)+1; endcase end 6.5 Verilog HDL基础 6 循环语句 循环语句 forever语句 repeat语句 while语句 for语句 在Verilog HDL中存在着4种类型的循环语句,用来控制执行语句的执行次数。 6.5 Verilog HDL基础 (1) forever语句 forever语句是无限循环语句,该循环语句中的循环体部分将不断重复执行。该语句不需要声明任何变量。 格式如下: forever 语句; 或 forever begin 多条语句;//若过程语句多于一条,则放在begin-end内 end 循环体部分 6.5 Verilog HDL基础 作用:forever循环语句常用于产生周期性的波形,作为仿真测试信号。它与always语句不同之处在于它不能独立写在程序中,而必须写在initial块中。 例:用forever语句产生周期为20个单位事件的时钟波形。 Initial begin clock=0; //clock初始值为0 #5 forever //延时5个单位时间后执行forever循环 #10 clock=~clock; //每隔10单位时间clock翻转一次,形成周期为20的方波 end 6.5 Verilog HDL基础 注意:forever的过程语句中必须有某种形式的时序控制,否则forever会在0时延后连续执行过程语句。上例中没有时序控制“#10”的话,clock就得不到时钟波形。 上面例子用always语句实现: always #10 clock=~clock; 如果需要在某个时刻跳出forever循环语句所指定的无限循环,可以通过在循环体语句中使用中止语句(disable语句)来实现。 下面通过一个例子来说明disable语句用法。 6.5 Verilog HDL基础 initial begin counter=0;
您可能关注的文档
- 江苏省苏州市高新区2014届九年级上学期期末调研测试历史试题.doc
- 江苏省邳州市第二中学2013年高中化学选修四课件:第2课时 反应条件对化学平衡的影响.ppt
- 江苏省镇江市2013届高三第一学期期末考试.doc
- 江苏省镇江市句容二中2011-2012年九年级英语上学期期中考试试题 牛津版.doc
- 江苏省高邮市车逻初级中学2012届九年级政治上学期期末考试试题(A) 苏教版.doc
- 江苏省高邮市车逻初级中学2013-2014学年七年级数学上学期期中试题(word版含答案).doc
- 江苏高中信息技术学业水平测试《2014考试大纲必修选择题四2》.doc
- 江苏省高一物理匀变速直线运动的研究会考复习课件_必修1_必修2.ppt
- 江西省上饶四中2013-2014学年八年级上学期期末考试英语试题 人教新目标.doc
- 江西省九江市四年级上册期末语文复习资料.doc
文档评论(0)