《附录3-用数据流描述方式重写2-4译码器.docx》由会员分享,可在线阅读,更多相关《附录3-用数据流描述方式重写2-4译码器.docx(7页珍藏版)》请在金锄头文库上搜索。
1、附录1 Verilog 关键字(保留字)always and assign begin buf buf if0 bufif1 case casex casez cmos deassign default defparam disable edge else end endcase endmodule endfunction endprimitive endspecify endtable endtask event for force forever fork function highz0 highz1 if ifnone initial inout input integer join l
2、arge macrmodule medium module nand negedge nmos nor not notif0 notif1 or output parameter pmos posedge primitive pull0 pull1 pullup pulldown rcmos real realtime reg release repeat rnmos rpmos rtran rtranif0 rtranif1 scalared small specify specparam strong0 strong1 supply0 supply1table task time tran
3、tranif0 tranif1 tri tri0 tri1 triand trior trireg vectored wait wand weak0 weak1 while wire wor xnor xor附录2Verilog HDL操作符1、算术运算符+ - * / % *(平方运算符)2、关系运算符 = 等于!= 不等于=等于(包含高阻态z和不确定状态x)!= 不等于(包含高阻态z和不确定状态x)声明关系假返回0,真返回1,不确定返回x3、逻辑运算符运算结果都是一位逻辑值 &|!4、位运算符按位进行逻辑运算1)取反 2)与&3)或|4)异或5)同或5、缩减运算符单目运算符包括与&与非&或
4、|或非|异或同或缩减运算符是对单个操作数进行逻辑运算,最后结果为一位的二进制数。reg 3:0 a;b= &a;/等效于b=(a0&a1)&a2)&a3;6、移位运算符右移左移7、条件运算符?:是三目运算符格式sigal = condition ?true_expression:false_expression;类似c中的表达式8、位连接运算符可以将多个信号的某些位连接起来进行运算操作,其符号为Verilog操作符的优先级注:从上向下优先级递减。用数据流描述方式重写2-4译码器1、 源程序deco2_4_flow.vmodule deco2_4g(a,b,y);input a;input b;
5、output3:0 y;wirean,bn;assign an = a; /not(an,a);assign bn = b; /not(bn,b);assign y0 = an & bn; /and(y0,an,bn);assign y1 = a & bn; /and(y1,a,bn);assign y2 = an & b; /and(y2,an,b);assign y3 = a & b; /and(y3,a,b);endmodule2、 测试程序timescale 1ns / 1nsmodule test_deco2_4_flow;wire 3:0 y;reg a;reg b;deco2_4g uut(.y(y),.a(a),.b(b);initialbegin/-a=1b0; b=1b0;/-#100a=1b1;/-#100a=1b0;b=1b1;/-#100a=1b1;/-#100a=1b0; b=1b0;/-/-a=1b0; b=1b0;/-#100a=1b1;/-#100a=1b0;b=1b1;/-#100a=1b1;/-#100a=1b0; b=1b0;/-end endmodule 3、仿真波形展开y后的仿真波形