Modelsim个人实验
Posted HEYUL
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Modelsim个人实验相关的知识,希望对你有一定的参考价值。
一.代码
14:58:50
module fulladd(sum,c_out,a,b,c_in);
output sum,c_out;
input a,b,c_in;
wire s1,c1,c2;
xor (s1,a,b);
and (c1,a,b);
xor (sum,s1,c_in);
and (c2,s1,c_in);
or (c_out,c2,c1);
endmodule
测试文件代码
14:59:10
module test;
wire sum, c_out;
reg a,b,c_in;
fulladd fadd(sun,c_out,a,b,c_in) ;
/*
initial
begin
#15 force fadd.sum=a&b&c_in;
#20 release fadd.sun;
#10 $stop;
end
*/
initial
begin
a=0;b=0;c_in=0;
#10 a=0;b=0;c_in=1;
#10 a=0;b=1;c_in=0;
#10 a=0;b=1;c_in=1;
#10 a=1;b=0;c_in=0;
#10 a=1;b=0;c_in=1;
#10 a=1;b=1;c_in=0;
#10 a=1;b=1;c_in=1;
#10 $stop;
end
endmodule
二.代码
module MSDFF(Q,Qbar,D,C);
output Q,Qbar;
input D , C;
not
not1 ( NotD ,D) ,
not2 ( Notc , C) ,
not3 ( NotY , Y);
nand
nand1 ( D1 , D ,C ) ,
nand2 ( D2 , c , NotD) ,
nand3 ( y , D1 , Ybar ) ,
nand4 ( ybar , Y , D2) ,
nand5 ( y1 , r , NotC) ,
nand6 ( Y2 , NotY , NotC) ,
nana7 (Q, Qbar, Y1) ,
nand8 (Qbar , Y2 , Q) ;
endmodule
module tb_23;
reg d;
reg clk;
wire q, qbar;
initial clk=0;
always #5 clk=~clk;
initial
begin
d=0 ;
#7 d=1;
#4 d=0;
#9 d=1;
#11 d=0;
#20 $stop;
end
MSDFF ms_dff(q,qbar,d,clk);
endmodule
以上是关于Modelsim个人实验的主要内容,如果未能解决你的问题,请参考以下文章
ModelSim SE-64 10.4的使用及书本121页个人实验