一、实验要求:用Modlsim进行ModelSim软件的仿真
二.Modelsim的工程仿真流程图如下:
三、实验内容:
参考老师发的视频的代码,然后用Modelsim进行Modelsim的工程仿真
四、实验原理代码图:
1、仿真代码
四、实验工具:Modlsim软件、pc机。
五、实验截图:
MSDEF
fulladd
六、实验视频:
fulladd
MSDEF
七、实验代码:
1、仿真代码
module MSDEF(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 , Ybar0),
nand4 (Ybar , Y, D2),
nand5 (Y1 ,Y ,NotC),
nand6 (Y2 , NotY, NotC),
nand7 (Q , Qbar , Y1),
nand8 (Qbar , Y2 , Q);
endmodule
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(c1,s1,c_in);
or(c_out,c2,c1);
endmodule
2、测试代码
module test;
wire sum,c_out;
reg a,b,c_in;
fulladd fadd(sum,c_out,a,b,c_in);
/*
initial
begin
#15 force fadd.sum=a&b&c_in;
#20 release fadd.sum;
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=1;c_in=1;
#10 a=1;b=1;c_in=0;
#10 a=1;b=1;c_in=1;
#10 $stop;
end
endmodule