array のダイナミックレンジを使用したいので、「N」を使用して入力ベクトル信号を整数に変換します。特定の受信ポート「サイズ」を使用するとエラーが発生しますが、固定ベクトルは完全な出力を生成します。
architecture EXAMPLE of Computation is
signal size :std_logic_vector (7 downto 0);
process (ACLK, SLAVE_ARESETN) is
variable N: integer:=conv_integer ("00000111") ; ---WORKING
--variable N: integer:=conv_integer (size) ; -- Not working
type memory is array (N downto 0 ) of std_logic_vector (31 downto 0 );
variable RAM :memory;
このタイプのコーディングを行う唯一の理由は、できるだけ多くのデータを FPGA に送信することです。vivado で DMA 経由で DDR からカスタム IP にデータを送信する必要があるため、100 MB を超える場合があります。上記のように間違った方法で実装しようとしている場合は、親切に案内してください。