使用簽署的復量,我宣佈在名爲FAT_Lib一個共同的包文件如下:錯誤聲明和使用枚舉指數
type complex_field is (re,im);
type signed_complex is array(complex_field) of signed;
然後我在一個實體的端口接口中聲明的信號方式如下:
MF: out signed_complex(9 downto 0);
Modelsim的產生當實體被編譯以下錯誤:
在陣列約束在DEP第1個數組fat_rtl.FAT_Lib.signed_complex已被約束。
據我所知,編譯器將(9 downto 0)
作爲約束數組大小而不是有符號數字字長。有人在我的聲明中看到錯誤嗎?我的目標是能夠訪問MF
的實部和虛部,分別爲MF(re)
和MF(im)
。
感謝
爲什麼不使用記錄? 'MF.re'和'MF.im' ... – JHBonarius
是@ J.H.Bonarius - 有記錄的,VHDL-2008不是必需的。不過,具有不受限制的字段的記錄的語法可能會有點瘋狂。 –