Nから2^Nのデコーダーを作成していて、いくつかのエラーに直面しています。私を助けてください。
Naddr
-整数のアドレスビット数addr
-アドレスビットstd_logic_vector
fbd
-(整数、std_logic_vector
)-2進数から10進数に変換する関数fpower
-(整数)-2^Nを提供する関数
コード:
Architecture deco of Deco is
begin
process(addr, En)
variable a : integer;
begin
a := fbd(Naddr, addr);
if(En = '1') then
q <= (a => '1', others => '0'); --- error1
elsif(En = '0') then
q <= (fpower(Naddr)-1 downto 0 => '0');
end if;
end process;
end deco;
私が得るエラーは次のとおりです。
1)エラー(10318):Deco.vhd(33)でのVHDL集約エラー:選択は一定でなければなりません(error1)
2)エラー:最上位のユーザー階層を詳しく説明できません