--------------------------------- Запись / чтение данных в / из ОЗУ -----------------------------------
process(clock, wr, ram_n, d, md_buf)
begin
if (clock'event and clock = '0') then
if ram_n = '0' then
if wr = '0' then
md_buf <= d; -- запись данных в ОЗУ
md <= md_buf;
else
md_buf <= md; -- чтение данных из ОЗУ
d <= md_buf;
end if;
else
md <= "ZZZZZZZZ";
d <= "ZZZZZZZZ";
end if;
end if;
end process;
--------------------------------------- Ввод информации о цвете ---------------------------------------
process(clock, wr, u1, mode, md_buf, cd, ncr, ncg, ncb)
begin
if (clock'event and clock = '0') then
if wr = '0' then
if mode = '1' then
if u1 = '1' then
cd <= md_buf; -- ввод данных в режиме MX
end if;
else
cd <= "00000" & ncb & ncr & ncg; -- ввод данных в режиме Std
end if;
else
cd_buf <= cd;
end if;
end if;
end process;