ここでは何が起こっていますか?なぜ私は '演算子の引数の型の不一致'を得るのですか?それを修正するために何ができますか?なぜ私はこの `std_logic_vector`をインクリメントできません
--
-- 32-bit counter with enable and async reset
--
architecture synthesis1 of counter_32bit is
signal nextvalue : std_logic_vector (31 downto 0);
begin
--
-- combo
--
nextvalue <= value + 1; -- here
--
-- sequential
--
ff:process(clk, rst)
begin
if(rst = '1') then
value <= 0; -- and here...
elsif(clk'event and (clk ='1')) then
if(ena = '1') then
value <= nextvalue;
end if;
end if;
end process ff;
end synthesis1;
あなたが直接STD_LOGICをインクリメントすることはできませんおかげ
シミュレータ上の-v93スイッチがフリックされた場合、 'value'の初期化のために' to_stdlogicvector(bit_vector '(X "0")) 'または' X "0" 'のみです。 – Marty