Я создаю 30 разрядный счетчик.
Код
architecture count of counter is -- архитектура данного счетчика
begin
process (c_in, res_c)
variable cnt : integer range 0 to 1073741824;
begin
if (res_c='0') then
cnt:=0;
elsif (rising_edge(clk)) then
if (enab_c='1') then
cnt:=cnt+1;
end if;
end if;
c_out<=cnt;
end process;
end count;
begin
process (c_in, res_c)
variable cnt : integer range 0 to 1073741824;
begin
if (res_c='0') then
cnt:=0;
elsif (rising_edge(clk)) then
if (enab_c='1') then
cnt:=cnt+1;
end if;
end if;
c_out<=cnt;
end process;
end count;
c_in => clk,
enab_c => enab, -- разрешение счета
res_c => res, --сброс
c_out => counter_out --выход
Вот что мне ответили:
Цитата
Советую переменные не использовать вообще. Только сигналы. Переменные использовать можно, но они видны через ChipScope и непонятно, во что они преобразуются после синтеза.
Верно ли это???