73816

Анализ устройств цифровой электроники на структурном уровне представления в системах моделирования VLSI-SIM и MODELSIM

Лекция

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

Как видно из результатов моделирования схемы в VLSI-SIM и ModelSim, временные диаграммы совпадают. За исключением небольших скачков, которые наблюдались в VLSI-SIM, а в ModelSim они пропали.

Русский

2014-12-20

2.26 MB

1 чел.

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ  БЕЛАРУСЬ

БЕЛОРУССКИЙ  ГОСУДАРСТВЕННЫЙ  УНИВЕРСИТЕТ ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ

Факультет компьютерных технологий и систем

Кафедра ЭВМ

 

 

 

ПАНАРАД СЕРГЕЙ ВЛАДИМИРОВИЧ

ВМИС

Анализ устройств цифровой электроники на структурном уровне представления в системах моделирования VLSI-SIM и MODELSIM

Отчёт по лабораторной работе №4

(вариант 17)

студента 3 курса 221902 группы

 

Преподаватель

  

Воронов Александр Анатольевич,

доцент кафедры ЭВМ

 

Минск 2014

1) Приведем структурную схему моделируемого объекта с учетом

представления логических элементов в соответствии с ГОСТом:

Рис. 1. Структурная схема моделируемого объекта

    2.1) Опишем цифровое устройство на языке системы VLSI-SIM:

circuit lab4;

    inputs x1(1), x2(1), x3(1), x4(1);

    outputs c1(1), y2(1), y3(1), y4(1);

gates

    a1 'not' (1) x3(1);

    a2 'not' (1) y3(1);

    b1 'not' (1) a2(1);

    b2 'noa2' (1) x1(1), a1(1), x2(1);

    b3 'nmx2' (1) a1(1), x1(1), x2(1);

    b4 'not' (1) x1(1);

    b5 'not' (1) y2(1);

    b6 'not' (1) x2(1);

    c1 'no3' (1) b2(1), x4(1), b1(1);

    c2 'na2' (1) x1(1), b6(1);

    c3 'not' (1) a2(1);

    c4 'na3' (1) b3(1), x4(1), b5(1);

    c5 'na3o2' (1) x3(1), b4(1), b6(1), x4(1);

    y4 'nao22' (1) x3(1), c3(1), c1(1), c2(1);

    y3 'nao3' (1) c4(1), b4(1), x3(1), x4(1);

    y2 'not' (1) c5(1);

endgates

end

2.2) Выполним трансляцию описания схемы

Рис. 2. Трансляция описания схемы

2.3) Выполним 3 попытки построения теста контроля объекта случайным образом

2.4) Проведем моделирование объекта на лучшем из полученных тестов

Рис. 3. Временная диаграмма

3) Опишем цифровое устройство на структурном уровне на языке VHDL

na3o2.vhd

LIBRARY IEEE;

USE IEEE.std_logic_1164.all;

ENTITY na3o2 IS

  port (A,B,C,D: in STD_LOGIC; Y: out STD_LOGIC);

END na3o2;

ARCHITECTURE arc_na3o2 OF na3o2 IS

BEGIN

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

END arc_na3o2;

noa2.vhd

LIBRARY IEEE;

USE IEEE.std_logic_1164.all;

ENTITY noa2 IS

  port (A,B,C: in STD_LOGIC; Y: out STD_LOGIC);

END noa2;

ARCHITECTURE arc_noa2 OF noa2 IS

BEGIN

  Y <= not (A or (B and C)) after 3 ns;

END arc_noa2;

no3.vhd

LIBRARY IEEE;

USE IEEE.std_logic_1164.all;

ENTITY no3 IS

  port (A,B,C: in STD_LOGIC; Y: out STD_LOGIC);

END no3;

ARCHITECTURE arc_no3 OF no3 IS

BEGIN

  Y <= not (A or B or C) after 4 ns;

END arc_no3;

nmx2.vhd

LIBRARY IEEE;

USE IEEE.std_logic_1164.all;

ENTITY nmx2 IS

  port (A,B,V: in STD_LOGIC; Y: out STD_LOGIC);

END nmx2;

ARCHITECTURE arc_nmx2 OF nmx2 IS

BEGIN

  Y <= not ((A or not V) and (B or V)) after 6 ns;

END arc_nmx2;

nao3.vhd

LIBRARY IEEE;

USE IEEE.std_logic_1164.all;

ENTITY nao3 IS

  port (A,B,C,D: in STD_LOGIC; Y: out STD_LOGIC);

END nao3;

ARCHITECTURE arc_nao3 OF nao3 IS

BEGIN

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

END arc_nao3;

na2.vhd

LIBRARY IEEE;

USE IEEE.std_logic_1164.all;

ENTITY na2 IS

  port (A,B: in STD_LOGIC; Y: out STD_LOGIC);

END na2;

ARCHITECTURE arc_na2 OF na2 IS

BEGIN

  Y <= not (A and B) after 2 ns;

END arc_na2;

invertor.vhd

LIBRARY IEEE;

USE IEEE.std_logic_1164.all;

ENTITY invertor IS

  port (A: in STD_LOGIC; Y: out STD_LOGIC);

END invertor;

ARCHITECTURE arc_invertor OF invertor IS

BEGIN

  Y <= not A after 1 ns;

END arc_invertor;

nao22.vhd

LIBRARY IEEE;

USE IEEE.std_logic_1164.all;

ENTITY nao22 IS

  port (A,B,C,D: in STD_LOGIC; Y: out STD_LOGIC);

END nao22;

ARCHITECTURE arc_nao22 OF nao22 IS

BEGIN

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

END arc_nao22;

na3.vhd

LIBRARY IEEE;

USE IEEE.std_logic_1164.all;

ENTITY na3 IS

  port (A,B,C: in STD_LOGIC; Y: out STD_LOGIC);

END na3;

ARCHITECTURE arc_na3 OF na3 IS

BEGIN

  Y <= not (A and B and C) after 3 ns;

END arc_na3;

circuit.vhd

LIBRARY IEEE;

USE IEEE.std_logic_1164.all;

ENTITY circuit IS

  PORT (x1, x2, x3, x4: in std_logic;

  y1, y2, y3: inout std_logic;

  y4: out std_logic);

END circuit ;

ARCHITECTURE arc_circuit OF circuit IS

  component invertor

     port (A: in std_logic;

     Y: out std_logic);

  end component;

  component noa2

     port (A,B,C: in std_logic;

     Y: out std_logic);

  end component;

  component nmx2

     port (A,B,V: in std_logic;

     Y: out std_logic);

  end component;

  component no3

     port (A,B,C: in std_logic;

     Y: out std_logic);

  end component;

  component na2

     port (A,B: in std_logic;

     Y: out std_logic);

  end component;

  component na3

     port (A,B,C: in std_logic;

     Y: out std_logic);

  end component;

  component na3o2

     port (A,B,C,D: in std_logic;

     Y: out std_logic);

  end component;

  component nao22

     port (A,B,C,D: in std_logic;

     Y: out std_logic);

  end component;

  component nao3

     port (A,B,C,D: in std_logic;

     Y: out std_logic);

  end component;

signal a1, a2, b1, b2, b3, b4, b5, b6, c2, c3, c4, c5: std_logic;

BEGIN

  g1: invertor port map(x3, a1);

  g2: invertor port map(y3, a2);

  g3: invertor port map(a2, b1);

  g4: noa2 port map(x1, a1, x2, b2);

  g5: nmx2 port map(a1, x1, x2, b3);

  g6: invertor port map(x1, b4);

  g7: invertor port map(y2, b5);

  g8: invertor port map(x2, b6);

  g9: no3 port map(b2, x4, b1, y1);

  g10: na2 port map(x1, b6, c2);

  g11: invertor port map(a2, c3);

  g12: na3 port map(b3, x4, b5, c4);

  g13: na3o2 port map(x3, b4, b6, x4, c5);

  g14: nao22 port map(x3, c3, y1, c2, y4);

  g15: nao3 port map(c4, b4, x3, x4, y3);

  g16: invertor port map(c5,y2);

END arc_circuit;

3.1) Подготовим блок Testbench для отладки объекта, при этом

используя тест, полученный в части 1 задания

LIBRARY IEEE;

USE IEEE.std_logic_1164.all;

ENTITY circuit_test is  

END circuit_test;

ARCHITECTURE  bench OF circuit_test IS

  component circuit

     port(x1, x2, x3, x4: in std_logic;

     y4: out std_logic; y1, y2, y3:inout std_logic);

  end component;

signal x1, x2, x3, x4, y1, y2, y3, y4: std_logic;

BEGIN

x1 <= '1','0' after 100 ns,'1' after 300 ns,'0' after 400 ns,'1' after 800 ns,'0' after 1000 ns, '1' after 1100 ns;

x2 <= '0','1' after 100 ns,'0' after 200 ns,'1' after 300 ns, '0' after 400 ns, '1' after 600 ns, '0' after 800 ns;

x3 <= '0','1' after 300 ns,'0' after 400 ns,'1' after 500 ns,'0' after 600 ns, '1' after 700 ns, '0' after 1100 ns;

x4 <= '1','0' after 200 ns,'1' after 300 ns,'0' after 600 ns,'1' after 700 ns,'0' after 900 ns;

M:circuit port map(x1, x2, x3, x4, y4, y1, y2, y3);      

END bench;

3.2) Выполним компиляцию описания

Рис. 4. Компиляция описания

3.3) Выполним моделирование объекта на заданном тесте

3.4) Сравним результаты моделирования объекта в двух системах моделирования

Вывод:

Как видно из результатов моделирования схемы в VLSI-SIM и ModelSim,  временные диаграммы совпадают. За исключением небольших скачков, которые наблюдались в VLSI-SIM, а в ModelSim они пропали. Это происходит из-за того, что в ModelSim мы проводили моделирование с учетом внутренних задержек элементов.


 

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

20239. Міжмолекулярна взаємодія в газах та рідинах 62.5 KB
  Вона базується на припущеннях: міжмолекулярна взаємодія є слабкою – розміри частинок набагато менше за відстань між ними; адіабатичне наближення – електростатичне поле сусідньої молекули збурює енергетичні стани лише електронів; наближення мультипольного розкладу – електричні заряди в молекулі по об’єму розповсюджені нерівномірно і можуть бути вільні заряди: монополі диполі квадруполі октуполі. Енергія міжмолекулярної взаємодії – це потенціальна енергія однієї молекули в електростатичному полі другої молекули. Маємо дві молекули А і В...
20240. Розсіяння нейтронів як джерело інформації про динаміку молекул 101 KB
  Розсіяння нейтронів як джерело інформації про динаміку молекул Існує загальний метод опису динаміки речовини – просторовочасові корелятивні функції. Одним із шляхів визначення корелятивних функцій є розсіяння нейтронів. Візьмемо двічі диференційний переріз розсіяння нейтронів – кількість нейтронів що вилетять із зразка під певним кутом в елемент тілесного кута і при цьому зміна енергії нейтронів потрапляє в інтервал від до де пр – пружне нп – непружне ког – когерентне нк – некогерентне. Наслідком цього є розбиття перерізу...
20241. Понятие, предмет, задачи дисциплины «охрана труда в отрасли» 108 KB
  Охрана труда как социально-экономический фактор и область науки. Этапы развития охраны труда. Понятие охраны труда в законодательстве Украины. Предмет, содержание и задачи дисциплины охраны труда в отрасли. Взаимодействие охраны труда с другими дисциплинами.
20242. Основи методу Монте-Карло 146.5 KB
  точки та розрахувати в кожному полож. точки її енергію з частинками системи. Будується ланцюг випадкових переміщень однієї точки. точки; 2 обрати модель потенціальної енергії; 3задати температуру та довжину кроку відображ.
20243. Полімерний стат. клубок 46.5 KB
  клубок Полімерні молекули – ланцюги з великої кількості ланок вони можуть відрізнятися сладом однакові ланки або різні степенем гнучкості числом гілок та заряджених груп. Найпростіша полімерна молекула – послідовність великої кількості атомних груп з`єднаних у ланцюг ковалентними хімічними зв`язками. N масі ланцюга. Полімерний ланцюг має N 1 N 102 104 Полімерні молекули поділяються на лінійні та тривимірні.
20244. Спектральний склад розсіяного світла в газах. Ефект Мандельштама-Брілюена 85 KB
  Спектральний склад розсіяного світла в газах. Розсіяння світла – це зміна якоїсь характеристики потоку оптичного випромінювання світла при його взаємодії з речовиною. Цими характеристиками можуть бути просторовий розподіл інтенсивності частотний спектр поляризація світла. Фізична причина розсіяння світла в чистій речовині полягає в тому що в силу статистичної природи теплового руху молекул середовища в ньому виникають флуктуації густини.
20245. Особливості реологічної неньютонівської рідини 90 KB
  Не ньютонівська течіяпри різних швидкостях течії рідина характеризується різними в‘язкостями. Для того щоб визначити поняття не ньютонівської рідини згадаємо що таке ньютонівська рідина. Бінгалівська рідина межа пластичностітобто в системі існує область де напруження не впливає на зсув характерною ознакою є те що течія починається коли дотичне напруження τ перевищує межу пластичності θ. ; немає зсуву шарів рідина рухається як жорсткий стержень.
20246. Взаємодія повільних нейтронів 57 KB
  Зіткнення нейтрона з ядром може відбуватись двома шляхами: або 1без утворення проміжного ядра коли нейтрон розсіюється безпосередньо силовим полем ядрапружне та непружне розсіяння 2або з утворенням проміжного збудженого ядра з наступним його розпадом по одному з можливи каналів: Авипромінювання γ – квантів процес радіаційного захвату нейтрона ядром Б випромінювання заряджених частинок В ділення ядра В області повільних нейтронів енергія 1еВ основні процеси пружне ядерне розсіяння радіаційний захват нейтрона ядрома бо...
20247. Теорія капілярного віскозиметра 63.5 KB
  Віскозиметр – прилад для визначення в’язкості. Визначення в’язкості капілярним віскозиметром базується на законі Пуазейля і полягає в визначенні часу протікання визначеної кількості рідини або газу через вузькі трубки круглого прерізу при заданому перепаді тисків. Прилади для вимірювання в’язкості можна розділити на дві групи: 1Ті які використовують стаціонарні типи руху рідин капілярний метод метод падаючої кульки; 2 Використовуються нестаціонарні типи руху в основному обертальноколивальний рух коливання твердого тіла зануреного в...