Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2 Семестр / Отчеты / 19 варик / ЛР3_данные_удалены

.pdf
Скачиваний:
12
Добавлен:
07.06.2022
Размер:
1 Mб
Скачать

Рисунок 2.2 – Моделирование в режиме Timing

На рисунке 2.3 представлено моделирование демультиплексора 1-8 в

режиме Functional.

Рисунок 2.3 – Моделирование в режиме Functional

По результатам моделирования результат работы собранной схемы соответствует таблице истинности.

2.5 ОПИСАНИЕ С ПОМОЩЬЮ HDL

По варианту используется VHDL.

Ниже приведен код описывающий устройство демультиплексора 1-8: library ieee;

use ieee.std_logic_1164.all;

use IEEE.std_logic_unsigned.all; use IEEE.numeric_std.all;

entity DMX1_8 is port ( X: in std_logic;

a: in std_logic_vector (2 downto 0); E: in std_logic;

D: out std_logic_vector (7 downto 0)); end;

11

architecture sync of DMX1_8 is begin

process (all) begin if E = '1' then

D <= "00000000"; case a is

when "000" => D(0) <= X; when "001" => D(1) <= X; when "010" => D(2) <= X; when "011" => D(3) <= X; when "100" => D(4) <= X; when "101" => D(5) <= X; when "110" => D(6) <= X; when "111" => D(7) <= X;

end case;

else D <= "00000000"; end if;

end process; end;

На рисунке 2.4 представлена схема из RTL Viewer для кода выше.

12

Рисунок 2.4 – RTL Viewer представление

На рисунке 2.5 представлено моделирование в режиме Timing.

13

Рисунок 2.5 – Моделирование в режиме Timing

На рисунке 2.6 представлено моделирование в режиме Functional.

Рисунок 2.6 – Моделирование в режиме Functional

2.6 МАСШТАБИРОВАНИЕ ДЕМУЛЬТИПЛЕКСОРА

По варианту необходимо реализовать работу демультиплексора 2-16 на основе демультиплексора 1-8.

Таблица истинности для демультиплексора 2-16 представлена в таблице 2.2. Таблица 2.2 - демультиплексора 2-16

 

 

Входы

 

 

 

 

 

 

 

 

 

 

Выходы

 

 

 

 

 

 

 

 

 

a

a

a

 

D

D

D

D

D

D

D

D

D

D

D

D

D

D

D

D

2

1

 

2

1

0

 

1

1

1

1

1

 

1

9

 

8

7

6

5

4

3

2

1

0

 

 

 

 

 

 

 

5

4

3

2

1

 

0

 

 

 

 

 

 

 

 

 

 

 

b

b

0

0

0

1

0

0

0

0

0

0

0

b

0

0

0

0

0

0

0

b

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

1

2

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

1

b

b

0

0

1

1

0

0

0

0

0

 

0

b

0

0

0

0

0

0

0

b

0

2

2

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

2

 

2

1

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

1

 

b

b

0

1

0

1

0

0

0

0

0

 

b

0

 

0

0

0

0

0

0

b

0

0

3

3

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

3

 

 

2

1

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

14

 

 

 

 

 

 

 

 

 

 

 

b

b

0

1

1

1

0

0

0

0

b

0

0

0

0

0

0

0

b

0

0

0

4

4

 

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

4

 

 

 

2

1

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

1

 

 

 

b

b

1

0

0

1

0

0

0

b

0

0

0

0

0

0

0

b

0

0

0

0

5

5

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

5

 

 

 

 

2

1

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

1

 

 

 

 

b

b

1

0

1

1

0

0

b

0

0

0

0

0

0

0

b

0

0

0

0

0

6

6

 

 

 

 

 

 

6

 

 

 

 

 

 

 

6

 

 

 

 

 

2

1

 

 

 

 

 

 

1

 

 

 

 

 

 

 

1

 

 

 

 

 

b

b

1

1

0

1

0

b

0

0

0

0

0

0

0

b

0

0

0

0

0

0

7

7

 

 

 

 

 

7

 

 

 

 

 

 

 

7

 

 

 

 

 

 

2

1

 

 

 

 

 

1

 

 

 

 

 

 

 

1

 

 

 

 

 

 

b

b

1

1

1

1

b

0

0

0

0

0

0

0

b

0

0

0

0

0

0

0

8

8

 

 

 

 

8

 

 

 

 

 

 

 

8

 

 

 

 

 

 

 

2

1

 

 

 

 

1

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

x

x

x

x

x

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

В соответствии таблицей истинности на основе демультиплексора 1-8 была разработана схема демультиплексора 2-16. Функциональная схема масштабированного демультиплексора 2-16 приведена на рисунке 2.7

Рисунок 2.7 – Функциональная схема демультиплексора 2-16 На рисунке 2.8 представлено моделирование демультиплексора 2-16 в

режиме Timing.

15

Рисунок 2.8 – Моделирование в режиме Timing

На рисунке 2.9 представлено моделирование демультиплексора 2-16 в

режиме Functional.

Рисунок 2.9 – Моделирование в режиме Functional

По результатам моделирования видно, что работа схемы соответствует таблице истинности 2.2.

С помощью VHDL также была описана схема демультиплексора 2-16 с использованием масштабирования. За основу взят демультиплексор 1-8, описанный в пункте 2.5.

library ieee;

use ieee.std_logic_1164.all;

use IEEE.std_logic_unsigned.all; use IEEE.numeric_std.all;

entity DMX2_16 is

port ( X: in std_logic_vector (1 downto 0); a: in std_logic_vector (2 downto 0);

16

E: in std_logic;

D:out std_logic_vector (15 downto 0)); end;

architecture sync of DMX2_16 is component DMX1_8

port (X: in std_logic;

a: in std_logic_vector (2 downto 0);

E:in std_logic;

D: out std_logic_vector (7 downto 0)); end component;

begin

DMX1: DMX1_8

port map(X(0), a(2 downto 0), E, D(7 downto 0)); DMX2: DMX1_8

port map(X(1), a(2 downto 0), E, D(15 downto 8)); end;

Результат моделирования демультиплексора 2-16 описанный с помощью VHDL в режиме Timing представлен на рисунке 2.10.

Рисунок 2.10 – Моделирование в режиме Timing

На рисунке 2.11 представлен результат моделирования в режиме

Functional.

17

Рисунок 2.11 – Моделирование в режиме Functional

По результатам моделирования видно, что работа схемы соответствует таблице истинности 2.2.

На рисунке 2.12 представлена схема из RTL Viewer для кода, описывающего демультиплексора 2-16.

Рисунок 2.12 – RTL Viewer представление

18

3. РЕАЛИЗАЦИЯ ФУНКЦИИ НА ОСНОВЕ ДЕШИФРАТОРА

3.1 ТАБЛИЦА ИСТИННОСТИ

По варианту необходимо реализовать функцию с помощью мультиплексора и дешифратора следующую функцию:

̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅

=

Таблица 3.1 отражает таблицу истинности для заданной функции. Таблица 3.1 – Таблица истинности для функции .

 

Входы

 

 

Выходы

 

 

 

 

 

 

 

 

 

 

 

 

0

0

 

0

0

1

0

0

 

0

1

0

 

 

 

 

 

 

0

0

 

1

0

1

0

0

 

1

1

0

0

1

 

0

0

1

0

1

 

0

1

0

0

1

 

1

0

0

0

1

 

1

1

0

1

0

 

0

0

0

1

0

 

0

1

0

1

0

 

1

0

0

1

0

 

1

1

0

1

1

 

0

0

0

1

1

 

0

1

0

1

1

 

1

0

1

1

1

 

1

1

0

3.2 ФУНКЦИОНАЛЬНАЯ СХЕМА

Дешифратор выдает унитарный код, то есть одну единицу на выходе. Тогда пусть набор , , , будет составлять входы дешифратора, означающие позицию выхода активного сигнала на выходе. Из таблицы истинности 3.1 узнаем какие позиции на дешифраторе необходимо учитывать, чтобы с использованием логического устройства ИЛИ, устройство с помощью дешифратора выдавала правильный результат по формуле.

На рисунке 3.1 представлена функциональная схема дешифратора, реализующего функцию .

19

Рисунок 3.1 – Функциональная схема устройства

3.3 РЕЗУЛЬТАТ МОДЕЛИРОВАНИЯ СХЕМЫ

На рисунке 3.2 представлено моделирование устройства в режиме

Timing.

Рисунок 3.2 – Моделирование в режиме Timing

На рисунке 3.3 представлено моделирование устройства в режиме

Functional.

Рисунок 3.3 – Моделирование в режиме Functional

По результатам моделирования результат работы собранной схемы соответствует таблице истинности устройства .

20