我在我的测试平台上为一个简单的2out / 1in reg文件实体编写了这个过程,这里是测试平台的相关部分:(注意 - 那些信号是std_logic_vector(X downto 0))
input : process is
begin
wait for 30 ns;
input_adr1 <= "00000";
input_adr3 <= "00000";
input_data3 <= "00000000000000000000000000000000";
input_en3 <= '1';
wait for 10 ns;
input_en3 <= '0';
wait for 10 ns;
input_adr1 <= "00001";
input_adr3 <= "00001";
input_data3 <= "00000000000000000000000000000001";
input_en3 <= '1';
wait for 10 ns;
input_en3 <= '0';
wait for 10 ns;
input_adr1 <= "00010";
input_adr3 <= "00010";
input_data3 <= "00000000000000000000000000000010";
input_en3 <= '1';
wait for 10 ns;
input_en3 <= '0';
wait for 10 ns;
wait;
end process input;
但是,当我转到ModelSim检查波时,信号 input_data3
永远不会改变 - 即使我在顺序代码中为它分配值0000,0001,0002(十六进制) . 请注意,信号 input_en3
, input_adr3
都表现正常 . 核实:
drivers input_data3
Drivers for /procesor_tstbnch/input_data3(31:0):
U : Signal /procesor_tstbnch/input_data3(31)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(31)
U : Signal /procesor_tstbnch/input_data3(30)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(30)
U : Signal /procesor_tstbnch/input_data3(29)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(29)
U : Signal /procesor_tstbnch/input_data3(28)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(28)
U : Signal /procesor_tstbnch/input_data3(27)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(27)
U : Signal /procesor_tstbnch/input_data3(26)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(26)
U : Signal /procesor_tstbnch/input_data3(25)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(25)
U : Signal /procesor_tstbnch/input_data3(24)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(24)
U : Signal /procesor_tstbnch/input_data3(23)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(23)
U : Signal /procesor_tstbnch/input_data3(22)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(22)
U : Signal /procesor_tstbnch/input_data3(21)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(21)
U : Signal /procesor_tstbnch/input_data3(20)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(20)
U : Signal /procesor_tstbnch/input_data3(19)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(19)
U : Signal /procesor_tstbnch/input_data3(18)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(18)
U : Signal /procesor_tstbnch/input_data3(17)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(17)
U : Signal /procesor_tstbnch/input_data3(16)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(16)
U : Signal /procesor_tstbnch/input_data3(15)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(15)
U : Signal /procesor_tstbnch/input_data3(14)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(14)
U : Signal /procesor_tstbnch/input_data3(13)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(13)
U : Signal /procesor_tstbnch/input_data3(12)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(12)
U : Signal /procesor_tstbnch/input_data3(11)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(11)
U : Signal /procesor_tstbnch/input_data3(10)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(10)
U : Signal /procesor_tstbnch/input_data3(9)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(9)
U : Signal /procesor_tstbnch/input_data3(8)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(8)
U : Signal /procesor_tstbnch/input_data3(7)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(7)
U : Signal /procesor_tstbnch/input_data3(6)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(6)
U : Signal /procesor_tstbnch/input_data3(5)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(5)
U : Signal /procesor_tstbnch/input_data3(4)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(4)
U : Signal /procesor_tstbnch/input_data3(3)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(3)
U : Signal /procesor_tstbnch/input_data3(2)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(2)
U : Signal /procesor_tstbnch/input_data3(1)
1 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(1)
U : Signal /procesor_tstbnch/input_data3(0)
0 : Driver /procesor_tstbnch/input
U : Element /procesor_tstbnch/register_file/in_data3(0)
我错过了什么?我不确定我理解为什么这个信号分配不会通过 .
编辑:我还试图在另一个进程中将所有赋值移动到input_data3,它仍然永远不会改变 .
以下是input_data3的驱动程序:
1 回答
查看您的驱动程序列表 . 例如,对于位1,您的进程(
Driver /procesor_tstbnch/input
)正在驱动1
. 然而,信号也被称为/procesor_tstbnch/register_file/in_data3(1)
的东西驱动,这正在驱动U
. 总体结果是该位未定义(U
) .什么是
register_file/in_data3
?