条件语句、循环语句、块语句和生成语句.ppt_第1页
条件语句、循环语句、块语句和生成语句.ppt_第2页
条件语句、循环语句、块语句和生成语句.ppt_第3页
条件语句、循环语句、块语句和生成语句.ppt_第4页
条件语句、循环语句、块语句和生成语句.ppt_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第5章 条件语句、循环语句、块语句和生成语句,5.1 条件语句(if else 语句),5.1 条件语句(if else 语句),5.1 条件语句(if else 语句),5.1 条件语句(if else 语句),5.1 条件语句(if else 语句),5.1 条件语句(if else 语句),5.2 case语句,5.2 case语句,5.2 case语句,5.2 case语句,5.2 case语句举例,reg 3:0 rega; reg 7:0 result; case(rega) 4 d0: result = 7 b10111111; 4 d1: result = 7 b1000011

2、0; 4 d2: result = 7 b11011011; 4 d3: result = 7 b11001111; 4 d4: result = 7 b11000110; 4 d5: result = 7 b11101101; 4 d6: result = 17 b1111101; 4 d7: result = 7 b10000111; 4 d8: result = 7 b11101111; 4 d9: result = 7 b11111111; default: result =7 bx; endcase,a,g,d,b,c,f,e,bit7,bit6,bit5,bit4,bit3,bit

3、2,bit1,bit0,g f e d c b a,LED驱动原理,5.2 case语句举例,reg 3:0 rega; reg 7:0 result; case(rega) 4 d0: result = 7 b10111111; 4 d1: result = 7 b10000110; 4 d2: result = 7 b11011011; 4 d3: result = 7 b11001111; 4 d4: result = 7 b11000110; 4 d5: result = 7 b11101101; 4 d6: result = 17 b1111101; 4 d7: result = 7

4、 b10000111; 4 d8: result = 7 b11101111; 4 d9: result = 7 b11111111; default: result =7 bx; endcase,a,g,d,b,c,f,e,bit7,bit6,bit5,bit4,bit3,bit2,bit1,bit0,g f e d c b a,5.2 case语句举例,reg7:0 ir; casez(ir) 8 b1?: instruction1(ir); 8 b01?: instruction2(ir); 8 b00010?: instruction3(ir); 8 b000001?: instruc

5、tion4(ir); endcase,5.2 case语句举例,reg7:0 ir; casez(ir) 8 b1?: instruction1(ir); 8 b01?: instruction2(ir); 8 b00010?: instruction3(ir); 8 b000001?: instruction4(ir); endcase,5.2 case语句举例,module mux4_to_1 (out, i0, i1, i2, i3, s1, s0); output out; / 根据输入/输出图的端口声明 input i0, i1, i2, i3; input s1, s0; reg

6、out; /把输出变量声明为寄存器类型 /任何输入信号改变,都会引起输出信号的重新计算 /使输出out 重新计算的所有输入信号必须写入 always (.)的变量列表中 always (s1 or s0 or i0 or i1 or i2 or i3) begin case (s1, s0) 2b00: out = i0; 2b01: out = i1; 2b10: out = i2; 2b11: out = i3; default: out = 1bx; endcase end endmodule,if、 case语句正确用法,always (al or d ) / 有锁存器 begin i

7、f ( al ) q = d; end,always (al or d ) / 无锁存器 begin if ( al ) q = d; else q = 0; end,always (sel1:0 or a or b ) case (sel1:0) 2b00:q=a; 2b11:q=b; endcase / 有锁存器,always (sel1:0 or a or b ) case (sel1:0) 2b00:q=a; 2b11:q=b; default:q=1b0; endcase / 无锁存器,5.5 循环语句,5.5 循环语句,5.5 循环语句,parameter size=8,longs

8、ize=16; reg size:1 opa, opb; reg longsize:1 result; begin: mult reg longsize:1 shift_opa, shift_opb; shift_opa = opa; shift_opb = opb; result = 0; repeat(size) begin if(shift_opb1) result = result + shift_opa; shift_opa = shift_opa 1; end end,八位乘法器,5.5 循环语句,5.5 循环语句,5.5 循环语句,5.5 循环语句,parameter size = 8, longsize = 16; regsize:1 opa, opb; reglongsize:1 result; begin:mult integer bindex; result=0; for( bindex=1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论