2 つの数値を追加する次の簡単な手順があります。
procedure add_elements
(
x : in std_logic_vector(31 downto 0);
y : in std_logic_vector(31 downto 0);
r : out std_logic_vector(31 downto 0)
)
is
begin
r := a + b;
end;
次のようなプロセスでこの手順を利用したいと思います。
test: process (....)
variable inp1 : std_logic_vector(31 downto 0);
variable inp2 : std_logic_vector(31 downto 0);
variable res : std_logic_vector(31 downto 0);
begin
...
inp1 := some_value_a;
inp2 := some_value_b;
add_elements(inp1, inp2, res);
...
end
ただし、コンパイルしようとすると、Modelsim はサブプログラム "add_elements" の実行可能なエントリがないと教えてくれます
ここで何がうまくいかなかったのか、add_elements プロシージャの署名に何か問題がありますか?
どうもありがとう!