[an error occurred while processing this directive]
А так? (Бритва Оккама в действии) :-)
(«Телесистемы»: Конференция «Языки описания аппаратуры (VHDL и др.))

миниатюрный аудио-видеорекордер mAVR

Отправлено andrew_b 26 сентября 2003 г. 10:20
В ответ на: А еще можно так:(+) отправлено ENV 26 сентября 2003 г. 09:33

library IEEE;
use IEEE.std_logic_1164.all;

entity decoder is
port (
ADDR: in STD_LOGIC_VECTOR (2 downto 0);
ALE,CS_PLD: in STD_LOGIC;
SOC_CS, CLK_CS, OE_CS, DIV_MCLK_CS, DIV_CS : out STD_LOGIC
);
end;

architecture beh of decoder is
begin
process(ALE, CS_PLD, ADDR)
begin
if ((CS_PLD = '0') and (ALE = '0')) then
case ADDR is
when "001" => (DIV_CS, DIV_MCLK_CS, OE_CS, CLK_CS, SOC_CS) <= std_logic_vector'("11110");
when "010" => (DIV_CS, DIV_MCLK_CS, OE_CS, CLK_CS, SOC_CS) <= std_logic_vector'("11101");
when "011" => (DIV_CS, DIV_MCLK_CS, OE_CS, CLK_CS, SOC_CS) <= std_logic_vector'("11011");
when "100" => (DIV_CS, DIV_MCLK_CS, OE_CS, CLK_CS, SOC_CS) <= std_logic_vector'("10111");
when "101" => (DIV_CS, DIV_MCLK_CS, OE_CS, CLK_CS, SOC_CS) <= std_logic_vector'("01111");
when others => (DIV_CS, DIV_MCLK_CS, OE_CS, CLK_CS, SOC_CS) <= std_logic_vector'("11111");
end case;
else
(DIV_CS, DIV_MCLK_CS, OE_CS, CLK_CS, SOC_CS) <= std_logic_vector'("11111");
end if;
end process;
end;

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru