(1). 上圖為ModelSim模擬的結果,下圖為NC Verilog模擬的結果,一模一樣的Verilog code卻產生不同的結果。
(2). 主要是因為module的input輸入值,需要先宣告一個reg接受並且給予初始值。
module PureBus(
.....
input [2:0]Mode,
.....
);
reg [2:0]mode_set;
always@(posedge Clk or negedge Reset)
begin
if(!Reset)
begin
........
r_mode_set <= 0;
end
else
begin
.......
r_mode_set <= Mode;
end
end
endmodule
修改完成,再用NC Verilog模擬,結果就與ModelSim模擬的結果一樣。有使用Active HDL測試,發現Active HDL與NC Verilog模擬的結果是一樣的,Active HDL與NC Verilog相對於ModelSim對於電路初始值得要求比較嚴謹。
沒有留言:
張貼留言