Я пытаюсь определить сложный тип (т. Е. Тип, который состоит из вещественной и мнимой частей) и пытаюсь найти способ сделать его универсальным.
This my current static code:
type complex_vector is record
Re : signed(15 downto 0);
Im : signed(15 downto 0);
end record;
Теперь яИнтересно, есть ли способ сделать это универсальным, другими словами что-то вроде:
type complex_vector (Generic: Integer := WIDTH) is record
Re : signed(WIDTH downto 0);
Im : signed(WIDTH downto 0);
end record;
Я пытался найти решение для Google, а также просматривал свои книги, но я не могу найти никакого решения.Там действительно нет?Без записей можно записать что-то вроде этого:
type blaaa is array (NATURAL range <>) of STD_LOGIC;
Спасибо за любой ввод
РЕДАКТИРОВАТЬ:
Или я мог бы сделать что-то вроде следующего?
type complex_primitives is (re, im);
type complex_vector is array (re to im) of signed(natural range <>);
Хотя компилятор жалуется ..