MAXII, EPM1270T144C5, Quartus 9.0, VHDL.
Есть внешняя тактовая частота, которая выставляется PLL другой микросхемы и может быть от 1MHz до 100MHz, по rising_edge этой частоты выставляются данные на выход и по этому же фронту читаем состояние результат. Если на частотах в мегагерцы нет проблем, то на частотах в десятки мегагерц уже нужно учитывать задержку которую дают буфера на входе/выходе MAXII (внешние), т.е. читать данные с задержкой в несколько ns. В общем есть что то типа
Код
CLK_RD <= CLK;
CLK_WR <= CLK;
process (CLK_WR)
begin
if rising_edge(CLK_WR) and can_write = '1' then
output <= data_wr;
end if;
end process;
process (CLK_RD)
begin
if rising_edge(CLK_RD) and can_read = '1' then
data_rd <= input;
end if;
end process;
Как "правильно" сделать на этой микросхеме и квартусе, чтобы CLK_RD задерживался например на 4 ns относительно CLK_WR?