打印2d阵列vhdl

时间:2015-09-20 10:41:42

标签: vhdl fpga

如何在控制台上打印matrix_a(1,1)?我评论的报告命令不起作用。

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;

entity ent is

end ent;

architecture Behavioral of ent is

type my_matrix is array(integer range 0 to 3, integer range 0 to 3) of integer;
signal matrix_a : my_matrix;    

begin
    matrix_a(1,1) <= 4;
    --report "signal signal_d is " & integer'image((matrix_a(1,1)));


end Behavioral;

1 个答案:

答案 0 :(得分:0)

您希望report什么时候开始运行?

您已将其放置在架构的并发语句区域中:所有内容都是有效的进程,根据特定规则进行调度;例如,并发赋值matrix_a(1,1) <= 4;将在启动时运行一次,并且每当其任何值发生更改时(即永远不会再次,因为它们都是文字常量)。

但是没有什么可以制作&#34;报告&#34;运行

现在,如果您在一个过程中明确地嵌入它,对matrix_a中的更改很敏感,那么它将在start和matrix_a更改时运行。因此,请尝试使用此代替注释行:

process (matrix_a) is    -- this list controls the process running
begin
   report "signal signal_d is " & integer'image(matrix_a(1,1));
end process;