ПЛИСина = ЦПЛД МАХ2
так в том-то и загвоздка, что нужно, чтобы без всяких ресетов и пресетов устанавливался, т.к. их при включении питания может и не быть.
То есть нужно чтобы триггеры были уже предустановленными при включении питания.
Вот выдержка из даташита на МАХ2
By default, all registers in MAX II devices are set to power-up low. However, this
power-up state can be set to high on individual registers during design entry using
the Quartus II software.
Получается каждому конкретному триггеру можно назначить свое значение при включении. Я так понимаю это в hdl коде можно делать? Или я не прав? Но вот синтезатор не воспринимает инициализацию триггера.
LIBRARY ieee;
USE ieee.std_logic_1164.all;
USE ieee.std_logic_arith.all;
ENTITY dff_new IS
PORT(
D : IN std_logic;
clk : IN std_logic;
en : IN std_logic;
reset : IN std_logic;
Q : OUT std_logic := '1'
);
END dff_new ;
LIBRARY ieee;
USE ieee.std_logic_1164.all;
USE ieee.std_logic_arith.all;
ARCHITECTURE struct OF dff_new IS
BEGIN
process(reset,clk)
begin
if (reset = '1') then
Q <= '0';
elsif (rising_edge(clk)) then
if (en = '1') then
Q <= D;
end if;
end if;
end process;
END struct;
Цитата(DmitryR @ Jan 11 2011, 09:39)

Нет, в FPGA это может работать, потому что триггеры в FPGA могут быть инициализированы прошивкой.
Потому что триггер с enable устроен именно так, а вынос мультиплексора наружу теоретически может повлечь объединение его с предыдущим уровнем логики. Однако, это все интересно только для ASIC, и почему он так делает для FPGA - сказать затруднительно.
Так,а почему вход CE просто к '1' подтянут. Почему синтезатор его не пользует или рисует почему зря
Сообщение отредактировал essev - Jan 11 2011, 07:35