原创 VerilogHDL学习(1)

2008-6-20 08:46 3439 7 7 分类: FPGA/CPLD

VerilogHDL描述数字电路


一、基本门电路的设计


1、与门


1)门级描述方式:


module     and_gat(A,B,F);


input        A,B;


output      F;


and          U1(F,A,B);


endmodule


2)数据流描述方式


module     and_gat(A,B,F);


input        A,B;


output      F;


assign       F=A&B;


endmodule


2、或门


1)门级描述方式:


module     or_gat(A,B,F);


input        A,B;


output      F;


or             U1(F,A,B);


endmodule


2)数据流描述方式


module     or_gat(A,B,F);


input        A,B;


output      F;


assign       F=A|B;


endmodule


3、非门


1)门级描述方式:


module     not_gat(A,F);


input        A;


output      F;


not           U1(F,A);


endmodule


2)数据流描述方式


module     not_gat(A,B,F);


input        A;


output      F;


assign       F=~A;


endmodule


4、与非门


1)门级描述方式:


module     nand_gat(A,B,F);


input        A,B;


output      F;


nand         U1(F,A,B);


endmodule


2)数据流描述方式


module     nand_gat(A,B,F);


input        A,B;


output      F;


assign       F=~(A&B);


endmodule


5、或非门


1)门级描述方式:


module     nor_gat(A,B,F);


input        A,B;


output      F;


nor           U1(F,A,B);


endmodule


2)数据流描述方式


module     nor_gat(A,B,F);


input        A,B;


output      F;


assign       F=~(A|B);


endmodule


6、异或门


1)门级描述方式:


module     xor_gat(A,B,F);


input        A,B;


output      F;


xor           U1(F,A,B);


endmodule


2)数据流描述方式


module     xor_gat(A,B,F);


input        A,B;


output      F;


assign       F=A^B;


endmodule


7、缓冲门


1)门级描述方式:


module     buf_gat(AF);


input        A;


output      F;


buf           U1(F,A);


endmodule


2)数据流描述方式


module     buf_gat(A,B,F);


input        A;


output      F;


assign       F=A;


endmodule


8、三态门


1)门级描述方式:


module     buf_en(A,EN,F);


input        A,EN;


output      F;


bufif1       U1(F,A,EN);


endmodule


2)数据流描述方式


module     buf_en(A,EN,F);


input        A,EN;


output      F;


assign       F=EN ? A:`bz;


endmodule

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
7
关闭 站长推荐上一条 /3 下一条