Ради согласованности и простоты обслуживания я хотел бы сделать некоторые константы, используя последовательные операторы, например. в процессе.
Я определил диапазон, используя:
subtype FIELD is natural range 3 downto 0;
Тогда процесс, создающий значение, может выглядеть так:
process is
begin
reg <= (others => '0');
reg(FIELD) <= (others => '1');
wait; -- Error in Xilinx ISE
end process;
Однако wait
не принимается инструментом синтеза Xilinx ISE.
Один из способов, конечно, использовать неиспользуемый сигнал в списке процессов, например часы, но это довольно некрасиво.
Параллельный стиль будет выглядеть так:
reg <= (FIELD => (others => '1'), others => '0');
Но FIELD нельзя так использовать в VHDL.
Есть ли способ сделать константы с помощью последовательных операторов, но где wait
не требуется в process
?