Языки описания аппаратуры, методические указания по лабораторным работам, страница 9

 

По данным уравнениям строиться  переключающая схема  (рис. 2.2), которую  требуется реализовать средствами языка VHDL.

Рис. 2.2. Структура комбинационного элемента

Текст  программы:

-- ОПИСАНИЕ ИНВЕРТОРА

library IEEE;

use IEEE.std_logic_1164.all;

entity invertor     port (

             i: in STD_LOGIC;

             o: out STD_LOGIC

       );

end invertor;

architecture invertor of invertor is

begin

         o<= not i after 5ns;

end invertor;

-- ОПИСАНИЕ ДВУХВХОДОВОГО ЭЛЕМЕНТА «И»

library IEEE;

use IEEE.std_logic_1164.all;

entity and2 is      port (

             i1: in STD_LOGIC;

             i2: in STD_LOGIC;

             o: out STD_LOGIC

       );

end and2;

architecture and2 of and2 is

begin

  o<=i1 and i2 after 6ns ;

end and2;

-- ОПИСАНИЕ ТРЕХВХОДОВОГО ЭЛЕМЕНТА «И»

library IEEE;

use IEEE.std_logic_1164.all;

entity and3 is      port (

             i1: in STD_LOGIC;

             i2: in STD_LOGIC;

             i3: in STD_LOGIC;

             o: out STD_LOGIC

       );

end and3;

architecture and3 of and3 is

begin

  o<= i1 and i2 and i3 after 7ns;

end and3;

-- ОПИСАНИЕ ДВУХВХОДОВОГО ЭЛЕМЕНТА «ИЛИ»

library IEEE;

use IEEE.std_logic_1164.all;

entity or3 is 

             i1: in STD_LOGIC;

             i2: in STD_LOGIC;

             i3: in STD_LOGIC;

             o: out STD_LOGIC

       );

end or3;

architecture or3 of or3 is

begin

 o<= i1 or i2 or i3 after 8ns;

end or3;

-- ОПИСАНИЕ ДВУХВХОДОВОГО ЭЛЕМЕНТА «ИЛИ»

library IEEE;

use IEEE.std_logic_1164.all;

entity or2 is  

       port (

             i1: in STD_LOGIC;

             i2: in STD_LOGIC;

             o: out STD_LOGIC

       );

end or2;

architecture or2 of or2 is

begin

  o<=i1 or i2 after 10ns;