簡體   English   中英

Verilog仿真錯誤。 Modelsim Altera 10.1b

[英]Verilog Simulation Error. Modelsim Altera 10.1b

這是我的4位全加器的門級代碼。

//Define stimulus
 module stimulus;

//setup variables
  reg[3:0] A,B;
  reg C_IN;
  wire [3:0] SUM;
  wire C_OUT;

//Instantiate 4 bi full adder
  fulladd4 FA1_4(SUM,C_OUT,A,B,C_IN);

//Setup for monitoring the values
  initial
 begin
 $monitor($time," A= %b,B= %b,C_IN= %b, --- C_OUT= %b, SUM= %b  \n",A,B,C_IN,C_OUT,SUM);
end

//Stimulate Inputs
initial
begin
 A = 4'd0; B = 4'd0; C_IN = 1'b0;
 #5 A = 4'd1; B = 4'd2;
 #5 A = 4'd3; B = 4'd4;
end
endmodule





//Define full 1 bit adder
 module fulladd(sum, c_out,a,b,c_in);

//I/O Ports Declaration
 output sum,c_out;
 input a,b,c_in;


 //Internal nets
 wire s1, c1, s2;

//Instantating the gates
 xor (s1,a,b);
 and (c1,a,b);
 xor (sum,s1,c_in);
 and (s2,s1,c_in);
 xor (c_out,s2,c1);

 endmodule

 //Define a 4 bit full adder
 module fulladd4(sum,c_out,a,b,c_in);

//I/O Ports declaration
 output [3:0] sum;
 output c_out;
 input [3:0] a,b;
 input c_in;

  //internal nets
   wire c1,c2,c3;

 //Instantiate 4 full 1 bit adders
  fulladd fa0(sum[0],c1,a[0],b[0],c_in);
  fulladd fa1(sum[1],c2,a[1],b[1],c1);
  fulladd fa2(sum[2],c3,,a[2],b[2],c2);
 fulladd fa3(sum[3],c_out,a[3],b[3],c3);

 endmodule

模擬時會顯示致命錯誤。

**致命:(vsim-3365)C:/altera/12.1/modelsim_ase/Full_Bit_Adder.v(67):端口連接過多。 預期為5,發現為6。

時間:0 ps迭代:0實例:/ fulladd4 / fa2文件:C:/altera/12.1/modelsim_ase/Full_Bit_Adder.v

這是它顯示的錯誤

有人可以解釋一下我的錯誤嗎

在第67行中,c3之后有兩個逗號。 如果您刪除其中之一,它應該可以正常工作。

fulladd fa2(sum[2],c3,,a[2],b[2],c2);

您已連續使用2個逗號。 這會導致錯誤,因為仿真工具將其作為6個端口,但我們僅需要5個。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM