私は加算器ブロックを持っており、加算器の入力ポートの1つに出力を戻す必要があります(これは別のエンティティが使用されるエンティティ)。私はprocess
をsensitivity list
で実行しようとしましたが、動作しませんでした。そうする方法はありますか? 注:クロックは使用されません。ここでvhdlブロックの出力をその入力にフィードバックする
が私のコードです:あなたのコードで
library IEEE;
use IEEE.std_logic_1164.all;
entity example is
port (
X: IN std_logic_vector(15 downto 0);
Y: IN std_logic_vector(15 downto 0);
Z: OUT std_logic_vector(15 downto 0)
);
end example;
architecture arch_example of example is
component adder is
port(a: in std_logic_vector(15 downto 0);
b: in std_logic_vector(15 downto 0);
cin: in std_logic;
s: out std_logic_vector(15 downto 0);
overflow: out std_logic);
end component;
signal s, ain, bin: std_logic_vector(15 downto 0);
signal cin, overflow, useless: std_logic;
begin
process(x, y) is
begin
ain <= x;
bin <= y;
cin <= '0';
end process;
process(s, overflow) is
begin
ain <= s;
bin <= "1111111110000001";
cin <= overflow;
end process;
U1: adder port map (ain, bin, cin, s, overflow);
z <= s;
end arch_example;
。しかし、 "クロックが使用されていません"と言っているのはちょっと心配です。_combinational feedback_は同期デザインではないので、実行しないでください。 –
上記のコードは、私が何をしたいのか、何か提案していますか? @MatthewTaylor – kamal