|
![](static/image/common/ico_lz.png)
楼主 |
发表于 2012-7-27 09:27:38
|
显示全部楼层
kebaojun305 发表于 2012-7-27 09:22 ![](static/image/common/back.gif)
看不到波形 或者波形都是直线 和这个警告关系不大 用modelsim仿真 reg类型一定要有初始值(或者加上复 ...
感谢回复
能帮我看看以下代码吗?谢谢。
4位加法器代码:
module Adder4(cout,sum,ina,inb,cin);
output cout;
output [3:0] sum;
input [3:0] ina,inb;
input cin;
assign {cout,sum}=ina+inb+cin;
endmodule
testbench代码:
`timescale 1 ns/ 1 ns
module Adder4_vlg_tst();
// constants
// general purpose registers
//reg eachvec;
// test vector input registers
reg cin;
reg [3:0] ina;
reg [3:0] inb;
// wires
wire cout;
wire [3:0] sum;
integer i,j;
// assign statements (if any)
Adder4 i1 (
// port map - connection between master ports and signals/registers
.cin(cin),
.cout(cout),
.ina(ina),
.inb(inb),
.sum(sum)
);
always #5 cin = ~cin;
//-----------------------------------------------------------------//
initial begin
// code that executes only once
// insert code here --> begin
ina =0;
inb =0;
cin =0;
#90;
for(i=1;i<16;i=i+1)
#10 ina = i;
// --> end
$display("Running testbench");
end
initial begin
#100;
for(j=1;j<16;j=j+1)
#10 inb = j;
end
initial begin
$monitor($time,,,"%d+%d+%b={%b,%d}",ina,inb,cin,cout,sum);
#160 $finish;
end
endmodule |
|