37608

Проектирование и моделирование VHDL-описаний интегральных схем

Лабораторная работа

Коммуникация, связь, радиоэлектроника и цифровые приборы

Вывод: в ходе лабораторной работы изучили возможности языка VHDL и пакета ActiveHDL для проектирования заказных БИС

Русский

2013-09-24

124 KB

1 чел.

Лабораторная работа №8

Проектирование и моделирование VHDL-описаний

интегральных схем

Шеков Н.В.

Вариант №13

Цель работы: Изучить возможности языка VHDL и пакета ActiveHDL

для проектирования заказных БИС

Ход работы:

Исходная схема:

 

Самостоятельное описание элементов схемы схемы:

Элемент N

library IEEE;

use IEEE.STD_LOGIC_1164.all;

entity N_entity is

 port(

  A : in STD_LOGIC;

  Y : out STD_LOGIC

     );

end N_entity;

--}} End of automatically maintained section

architecture N_body of N_entity is

begin

 Y <= not A ;

 -- enter your statements here --

end N_body;

Элемент NA2

library IEEE;

use IEEE.STD_LOGIC_1164.all;

entity NA2_entity is

 port(

  A : in STD_LOGIC;

  B : in STD_LOGIC;

  Y : out STD_LOGIC

     );

end NA2_entity;

--}} End of automatically maintained section

architecture NA2_body of NA2_entity is

begin

 -- enter your statements here --

 Y <= not(A and B);

end NA2_body;

Элемент EX2

library IEEE;

use IEEE.STD_LOGIC_1164.all;

entity EX2_entity is

 port(

  A : in STD_LOGIC;

  B : in STD_LOGIC;

  Y : out STD_LOGIC

     );

end EX2_entity;

--}} End of automatically maintained section

architecture EX2_body of EX2_entity is

begin

 -- enter your statements here --

 Y <= (A and not(B)) or (not(A)and B);

end EX2_body;

Элемент NAO3

library IEEE;

use IEEE.STD_LOGIC_1164.all;

entity NAO3_entity is

 port(

  A : in STD_LOGIC;

  B : in STD_LOGIC;

  C : in STD_LOGIC;

  D : in STD_LOGIC;

  Y : out STD_LOGIC

     );

end NAO3_entity;

--}} End of automatically maintained section

architecture NAO3_body of NAO3_entity is

begin

 -- enter your statements here --

 Y <= not(A and ( B or C or D));

end NAO3_body;

Элемент NA3

library IEEE;

use IEEE.STD_LOGIC_1164.all;

entity NA3_entity is

 port(

  A : in STD_LOGIC;

  B : in STD_LOGIC;

  C : in STD_LOGIC;

  Y : out STD_LOGIC

     );

end NA3_entity;

--}} End of automatically maintained section

architecture NA3_body of NA3_entity is

begin

 -- enter your statements here --

 Y <= not (A and B and C);

end NA3_body;

Элемент NAOA2

library IEEE;

use IEEE.STD_LOGIC_1164.all;

entity NAOA2_entity is

 port(

  A : in STD_LOGIC;

  B : in STD_LOGIC;

  C : in STD_LOGIC;

  D : in STD_LOGIC;

  Y : out STD_LOGIC

     );

end NAOA2_entity;

--}} End of automatically maintained section

architecture NAOA2_body of NAOA2_entity is

begin

 -- enter your statements here --

 Y <= not( A and (B or (C and D)));

end NAOA2_body;

Элемент A3

library IEEE;

use IEEE.STD_LOGIC_1164.all;

entity A3_entity is

 port(

  A : in STD_LOGIC;

  B : in STD_LOGIC;

  C : in STD_LOGIC;

  Y : out STD_LOGIC

     );

end A3_entity;

--}} End of automatically maintained section

architecture A3_body of A3_entity is

begin

 -- enter your statements here --

 Y <= A and B and C;

end A3_body;

Элемент VVC

library IEEE;

use IEEE.STD_LOGIC_1164.all;

entity VCC_entity is

 port(

  Y : out STD_LOGIC

     );

end VCC_entity;

--}} End of automatically maintained section

architecture VCC_body of VCC_entity is

begin

 -- enter your statements here --

 Y <= '1';

end VCC_body;

Схема, сроектированная в графическом редакторе:

Код, сгенерированный программой на основе схемы:

library IEEE;

use IEEE.std_logic_1164.all;

entity labb_entity is

 port(

      x1 : in STD_LOGIC;

      x2 : in STD_LOGIC;

      x3 : in STD_LOGIC;

      x4 : in STD_LOGIC;

      y1 : out STD_LOGIC;

      y2 : out STD_LOGIC;

      y3 : out STD_LOGIC;

      y4 : out STD_LOGIC

 );

end labb_entity;

architecture labb_body of labb_entity is

---- Component declarations -----

component A3_entity

 port (

      A : in STD_LOGIC;

      B : in STD_LOGIC;

      C : in STD_LOGIC;

      Y : out STD_LOGIC

 );

end component;

component EX2_entity

 port (

      A : in STD_LOGIC;

      B : in STD_LOGIC;

      Y : out STD_LOGIC

 );

end component;

component NA2_entity

 port (

      A : in STD_LOGIC;

      B : in STD_LOGIC;

      Y : out STD_LOGIC

 );

end component;

component NA3_entity

 port (

      A : in STD_LOGIC;

      B : in STD_LOGIC;

      C : in STD_LOGIC;

      Y : out STD_LOGIC

 );

end component;

component NAO3_entity

 port (

      A : in STD_LOGIC;

      B : in STD_LOGIC;

      C : in STD_LOGIC;

      D : in STD_LOGIC;

      Y : out STD_LOGIC

 );

end component;

component NAOA2_entity

 port (

      A : in STD_LOGIC;

      B : in STD_LOGIC;

      C : in STD_LOGIC;

      D : in STD_LOGIC;

      Y : out STD_LOGIC

 );

end component;

component N_entity

 port (

      A : in STD_LOGIC;

      Y : out STD_LOGIC

 );

end component;

component VCC_entity

 port (

      Y : out STD_LOGIC

 );

end component;

---- Signal declarations used on the diagram ----

signal NET1091 : STD_LOGIC;

signal NET148 : STD_LOGIC;

signal NET310 : STD_LOGIC;

signal NET331 : STD_LOGIC;

signal NET350 : STD_LOGIC;

signal NET353 : STD_LOGIC;

signal NET364 : STD_LOGIC;

signal NET379 : STD_LOGIC;

begin

----  Component instantiations  ----

U1 : N_entity

 port map(

      A => x3,

      Y => NET350

 );

U10 : NAOA2_entity

 port map(

      A => NET364,

      B => x1,

      C => NET353,

      D => NET379,

      Y => y1

 );

U11 : VCC_entity

 port map(

      Y => y2

 );

y4 <= NET1091;

U2 : NA2_entity

 port map(

      A => x2,

      B => NET350,

      Y => NET148

 );

U3 : N_entity

 port map(

      A => x2,

      Y => NET310

 );

U4 : EX2_entity

 port map(

      A => x4,

      B => x4,

      Y => NET331

 );

U5 : NAO3_entity

 port map(

      A => NET148,

      B => NET350,

      C => x4,

      D => x2,

      Y => NET1091

 );

U6 : NA2_entity

 port map(

      A => NET350,

      B => x2,

      Y => NET353

 );

U7 : NA3_entity

 port map(

      A => x4,

      B => x3,

      C => NET310,

      Y => NET379

 );

U8 : NAOA2_entity

 port map(

      A => x1,

      B => NET331,

      C => NET310,

      D => NET350,

      Y => NET364

 );

U9 : A3_entity

 port map(

      A => NET1091,

      B => x4,

      C => x1,

      Y => y3

 );

end labb_body;

Результаты моделирования схемы, сгенерированной на основе схемы:

В ходе лабораторной работы я разработал схему и после модуляции по сигналам можно определить что она работает правильно.

Вывод: в ходе лабораторной работы изучили возможности языка VHDL и пакета ActiveHDL для проектирования заказных БИС

.


 

А также другие работы, которые могут Вас заинтересовать

41359. Исследование магнитооптического зеркального гальванометра 500.5 KB
  Лабораторная работа №138 Исследование магнитооптического зеркального гальванометра . Измерение сопротивления гальванометра. На схеме: При R=R получаем RG=R если при замыкании и размыкании ключа показания гальванометра не меняются. Определение средней чувствительности и градуировка гальванометра.
41361. Работа ионизационного манометра 266 KB
  Цель работы: Изучить работу ионизационного манометра зависимость ионного тока от изменения различных параметров ток накала напряжение на сетке между катодом и анодом. Таблица зависимости ионного тока от тока накала. мА 300В 50В 260В 50В 300В 33В 29 665 650 651 28 655 642 649 20 631 635 632 18 628 630 628 14 620 622 622 9 609 615 609 5 590 596 589 0 540 540 522 Таблица зависимости ионного тока от напряжения между катодом и анодом . 13 33В 12 50В 13 50В 75 30 5 70 30 65 29 45 28 60 28 ...
41362. Изучение работы форвакуумного насоса 99.5 KB
  Цель работы: определить предельный вакуум и скорость откачки ротационного насоса. Форвакуумная установка: где Б1 – баллон; Б2 – калибровочный баллон (Vк = 2,4 л.); К1 – К7 – краны; РМ – разница давлений (мм.масл.ст.). Для нахождения объема установки используем следующую формулу:
41363. Градуирование электроизмерительных приборов с помощью потенциометра собранного из двух магазинов сопроти 159 KB
  Градуирование электроизмерительных приборов с помощью потенциометра собранного из двух магазинов сопротивления Приборы приспособления: вольтметр магазины сопротивлений – нормальный элемент – реостаты ключи– гальванометр батарея вольтметр.
41364. Определение эдс в термопаре 200.5 KB
  Схема для измерения малых эдс: где g – гальванометр класс точности 05; АВ – реохорд rАВ = 12  01 Ом lАВ = 1 м.; 1 – источник тока для реохорда 15 В; Э – эталонная эдс элемент Вестона 101795 В; х – измеряемая эдс; r1 – реостат для регулировки цены деления реохорда; r2 – сопротивление; r3 – реостат; М1 – опорный спай термопары 00С; М2 – рабочий спай термопары.
41365. Определение коэффициента поверхностного натяжения жидкостей 224.5 KB
  Задание 1: метод компенсации разности давлений поверхностного слоя жидкости. d – плотность жидкости налитой в манометр в данном случае это вода и d = 10 г см. Задание 2: метод отрыва пузыря внутри жидкости. Установка: где Т – насос; Б – бутыль для создания давления; Н – разность высот жидкости в двух коленах манометра; D – глубина на которую опущен капилляр радиус которого равен 002 см.
41366. Определение удельной теплоёмкости жидкости методом лучеиспускания 68 KB
  Определение водяного эквивалента калориметра M0 – масса калориметра M1 масса калориметра с холодной водой MI=M1M0 – масса холодной воды TI – температура холодной воды M2 – масса калориметра с горячей и холодной водой T – температура смеси MII=M2M1 – масса горячей воды TII – температура горячей воды M0= 179 г M1= 297 г MI = 118 г TI = 23 C M2 = 332 г Т = 31 С MII = 35 г ТII = 61 С II Основные измерения...
41367. Градуирование электроизмерительных приборов с помощью потенциометра собранного из двух магазинов сопротивления 50.5 KB
  Цель работы: проградуировать вольтметр. Приборы и приспособления: вольтметр , магазины сопротивлений – 4, нормальный элемент – 1, реостаты – 4, ключи –3 , гальванометр – 1, батарея на 2.5-3 В, источник постоянного напряжения для питания градуируемого прибора.