37608

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

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

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

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

Русский

2013-09-24

124 KB

2 чел.

Лабораторная работа №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 для проектирования заказных БИС

.


 

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

32766. Адиабатный процесс. Уравнение Пуассона для адиабатного процесса 28 KB
  Уравнение Пуассона для адиабатного процесса. Уравнение адиабаты уравнение Пуассона.18 после соответствующих преобразований получим уравнение адиабаты: TVg1 = const или pVg = const.20 Уравнение 13.
32767. Политропический процесс. Теплоёмкость газа в политропическом процессе 28.5 KB
  Политропический процесс. Теплоёмкость газа в политропическом процессе. Рассмотренные выше изохорический изобарический изотермический и адиабатический процессы обладают одним общим свойством имеют постоянную теплоемкость. Термодинамические процессы при которых теплоемкость остается постоянной называются политропными.
32768. Закон Максвелла для распределения молекул идеального газа по скоростям и энергиям 26.5 KB
  Закон Максвелла для распределения молекул идеального газа по скоростям и энергиям. Закон распределения молекул идеального газа по скоростям закон Максвелла определяет вероятное количество dN молекул из полного их числа N число Авогадро в данной массе газа которые имеют при данной температуре Т скорости заключенные в интервале от V до V dV: dN N=FVdV FV функция распределения вероятности молекул газа по скоростям определяется по формуле; FV=4πM 2πRT3 2 V2 expMV2 2RT где V модуль скорости молекул м с; абсолютная...
32769. Барометрическая формула. Закон Больцмана для распределения частиц во внешнем потенциальном поле 56.5 KB
  Барометрическая формула зависимость давления или плотности газа от высоты в поле тяжести. Для идеального газа имеющего постоянную температуру T и находящегося в однородном поле тяжести во всех точках его объёма ускорение свободного падения g одинаково барометрическая формула имеет следующий вид: где p давление газа в слое расположенном на высоте h p0 давление на нулевом уровне h = h0 M молярная масса газа R газовая постоянная T абсолютная температура. Из барометрической формулы следует что концентрация молекул n или...
32770. Среднее число столкновений и средняя длина свободного пробега молекул. Их связь с концентрацией и размером молекул 56.5 KB
  Среднее число столкновений и средняя длина свободного пробега молекул. Их связь с концентрацией и размером молекул. Средние скорости молекул газа очень велики порядка сотен метров в секунду при обычных условиях. Однако процесс выравнивая неоднородности в газе вследствие молекулярного движения протекает весьма медленно.
32771. Понятие о разрежённых газах. Вакуум и методы его получения 41 KB
  Вакуум и методы его получения. Такое состояние газа называется вакуумом. Разреженный газ Вакуум среда содержащая газ при давлениях значительно ниже атмосферного. Вакуум характеризуется соотношением между длиной свободного пробега молекул газа λ и характерным размером процесса d.
32772. Обратимые и необратимые процессы. Круговой процесс (цикл). Тепловые двигатели и холодильные машины. Термический КПД 52.5 KB
  производит положительную работу за счёт своей внутренней энергии и количеств теплоты Qn полученных от внешних источников а на др. системой или над системой работа А равна алгебраической сумме количеств теплоты Q полученных или отданных на каждом участке К. Отношение А Qn совершённой системой работы к количеству полученной ею теплоты называется коэффициентом полезного действия кпд К. называется прямым если его результатом является совершение работы над внешними телами и переход определённого количества теплоты от более нагретого...
32773. Цикл Карно и его КПД для идеального газа. Второе начало термодинамики. Независимость КПД цикла Карно от рабочего вещества. Лемма Карно 47 KB
  Второе начало термодинамики. Следовательно согласно I началу термодинамики работа совершаемая двигателем равна =Q1Q2 Коэффициентом полезного действия КПД теплового двигателя называется отношение работы совершаемой двигателем к количеству теплоты полученному от нагревателя η=Q1Q2 Q1 КПД тепловой машины всегда меньше единицы η=1Q2 Q1 Следовательно невозможно всю теплоту превратить в работу. Отсюда Q2 T2≥Q1 T1 На основании этого неравенства можно прийти к понятию энтропия и второму началу термодинамики. Второе начало термодинамики ...
32774. Энтропия идеального газа при обратимых и необратимых процессах 33.5 KB
  К определению энтропии S можно прийти на основе анализа работы тепловых машин. ∆S=∆Q T Для тепловой машины изменение энтропии нагревателя и холодильника равны: ∆S1=Q1 T1 и ∆S2=Q2 T2 Формула ∆S=∆Q T справедлива для изотермического процесса и представляет собой термодинамическое определение энтропии. Для любого процесса можно найти бесконечно малое изменение энтропии т. ее дифференциал dS=δQ T где δQ элементарная теплота В интегральной форме для любого процесса изменение энтропии равно Найдем изменение энтропии за один цикл для тепловой...