Testing Vivado上的模拟加载永远不会结束
我正在尝试测试我的VHDL代码,例如:Testing Vivado上的模拟加载永远不会结束,testing,vhdl,simulation,xilinx,vivado,Testing,Vhdl,Simulation,Xilinx,Vivado,我正在尝试测试我的VHDL代码,例如: entity fulladder4bit is port( a,b,cin: in std_logic; s,cout: out std_logic); end fulladder4bit; architecture FA4 of fulladder4bit is signal p,g: std_logic; begin p<= a xor b; g<= a and b; s<
entity fulladder4bit is
port( a,b,cin: in std_logic;
s,cout: out std_logic);
end fulladder4bit;
architecture FA4 of fulladder4bit is
signal p,g: std_logic;
begin
p<= a xor b;
g<= a and b;
s<= p xor cin;
cout<= g or (p and cin);
end FA4;
实体fulladder4bit为
端口(a、b、cin:std_逻辑中;
s、 cout:输出标准逻辑);
结束全加器4位;
全加器4位的结构FA4为
信号p,g:std_逻辑;
开始
p试验台中的过程将无限循环。您需要以等待结束它代码>语句。Vivado中没有任何增量饱和引擎吗?我很肯定modelsim会抱怨的。我很惊讶。@JHBonarius我加了等等代码>结束流程前的语句<代码>结束流程代码>状态修复,但它是一样的!谢谢你btw@grorel不,我今天删除并重新安装了Vivado,但它是一样的!感谢您的回复。fulladder4bit的测试台实例化可能未绑定。注意:组件声明使用类型bit,而实体FULLADER4BIT声明使用std_逻辑(这需要use子句中引用的包std_逻辑_1164,其中库子句在根声明区域的上下文子句中引用ieee)@user1155120我试图将所有的std_逻辑
语句转换成bit
语句,它给了我两个错误
entity fulladd4_testbench is
end fulladd4_testbench;
architecture FA4_TB of fulladd4_testbench is
component fulladder4bit is
port( a,b,cin: in bit;
s,cout: out bit);
end component;
signal iA: bit;
signal iB: bit;
signal iCin: bit;
signal oS: bit;
signal oCout: bit;
begin
fa4: fulladder4bit port map(iA, iB, iCin, oS, oCout);
process
begin
iA<='1';
iB<='1';
iCin<='0';
end process;
end FA4_TB;
end FA4_TB;