我在这里为我的作业设计了一个单元,
module homework1(a, b, sel, y);
input signed [7:0] a, b;
input [1:0] sel;
output reg signed [7:0] y;
always @(a or b or sel) begin
case (sel)
2'b00: y = a + b;
2'b01: y = a - b;
2'b10: y = (a > b) ? a : b;
2'b11: y = (a > b) ? b : a;
endcase
end
endmodule
我设计了一个非常简单的测试平台文件,可以在这里与Modelsim一起运行,
module testbench();
reg signed [7:0] a, b;
reg [1:0] sel;
wire signed [7:0] y;
homework1 target(a, b, sel, y);
initial begin
$display("Hello!");
$monitor($time, "a = %d, b = %d, sel = %b, y = %d", a, b, sel, y);
#10 sel = 0; a = 32; b = 25;
#10 a = 46; b = 0;
#10 a = 18; b = 52;
#10 a = 37; b = 37;
#10 a = 37; b = 37;
#10 $stop;
end
endmodule
我使用Modelsim运行测试台,虽然波形按预期出现,但不是文本输出。有什么想法吗?
它似乎适用于旧版本的Modelsim。我现在正在使用10.3d。任何可能导致此问题的设置?
答案 0 :(得分:0)
尝试使用-displaymsgmode=both
可选参数运行模拟。由于displaymsgmode设置为wlf,因此可能会从您的记录中隐藏消息。
有关详细信息,请参阅第581页的modelsim manual。