《 E D A 技术》 课程教学768.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《 E D A 技术》 课程教学768.ppt

1. case语句 语法: case (敏感表达式) 值1:语句或语句块1 ;//case分支项 值2:语句或语句块2 ; …… 值n:语句或语句块n ; default:语句或语句块n+1;//可省略 endcase 当敏感表达式的值为值1时,执行语句或语句块1 ;为值2时,执行语句或语句块2 ;依此类推。 当敏感表达式的值与所列出的值都不相等时, 条件表达式的值为0:按“假”处理。执行default后面的语句 default语句可省略。 11.7.2 case语句 fhfh 例11.7:BCD码-七段 译码器(共阴) a e c d b f g 4 bcd/7seg module decode4_7(a,b,c,d,e,f,g,indec); output a,b,c,d,e,f,g; input[3:0] indec; reg a,b,c,d,e,f,g; always @(indec) begin case(indec) 4d0 : {a,b,c,d,e,f,g}=7b1111110; 4d1 : {a,b,c,d,e,f,g}=7b0110000; 4d2 : {a,b,c,d,e,f,g}=7b1101101; 4d3 : {a,b,c,d,e,f,g}=7b1111001; 4d4 : {a,b,c,d,e,f,g}=7b0110011; 4d5 : {a,b,c,d,e,f,g}=7b1011011; 4d6 : {a,b,c,d,e,f,g}=7b1011111; 4d7 : {a,b,c,d,e,f,g}=7b1110000; 4d8 : {a,b,c,d,e,f,g}=7b1111111; 4d9 : {a,b,c,d,e,f,g}=7b1111011; default : {a,b,c,d,e,f,g}=7bx; endcase end endmodule 类似真值表 所有输入中,任一变量变化,均执行:组合电路 在过程赋值,必须用reg,与是否组合无关 fhfh 状态机通常可使用带有a l w a y s语句的c a s e语句建模。状态信息存储在寄存器中。c a s e语句的多个分支包含每个状态的行为。。 例、有限状态机的设计实例 例 状态机的Verilog HDL的描述 fhfh module Moore_mdl (x, AB, CLK, RST); input x, CLK, RST; output [1:0] AB; reg [1:0] state; parameter S0 = 2’b00, S1 = 2’b01, S2 = 2’b10, S3 = 2’b11; always @ (posedge CLK or negedge RST) if (!RST) state = S0; else case (state) S0: if (!x) state = S1; else state = S0; S1: if (x) state = S2; else state = S3; S2: if (!x) state = S3; else state = S2; S3: if (!x) state = S0; else state = S3; endcase 图7.11状态机图 assign AB = state; endmodule 类似表状态 fhfh 2.casez与casex语句 (1)语法与case语句相同 (2) casez、casex与case语句差别 casez在语句:对分支项的值中的高阻z位不予考虑,只关心其它位的比较结果。 casex在语句:对分支项的值中的高阻位(z)、不定值(x)均不予考虑,只关心其它位的比较结果。 ?:无关值,标识z、x另一种方法 fhfh 例11.8 4线-2线高优先编码器 0 1 2 3 HPRI/BIN 0 1 d3 d2 d1 d0 b1 b0 -要求: 输入高电平有效 输出二进制原码 fhfh module decode4_2(d,b); output[1:0] b; input[3:0] d; reg[1:0] b; always @(d) begin casex (d) 4

文档评论(0)

liuxiaoyu98 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档