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

Учебное пособие 800512

.pdf
Скачиваний:
20
Добавлен:
01.05.2022
Размер:
3.88 Mб
Скачать

Краткие теоретические сведения

Для работы с базовыми логическими элементами в Xilinx ISE Design Suite 14.1. используется группа Logic, к ним относятся элементы И, ИЛИ, НЕ (инвертор), ИСКЛЮЧАЮЩЕЕ ИЛИ.

 

 

 

Логические элементы группы Logic

Таблица 2.1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Логическая операция НЕ

 

 

Логическая операция

 

Y= not A

 

 

 

 

 

ИСКЛЮЧАЮЩЕЕ ИЛИ

 

 

 

 

 

 

Y= A xor B

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

А

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

= А

 

 

A

 

B

Y=A^B

 

 

1

 

 

0

 

 

 

 

 

0

 

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

1

1

 

 

 

 

 

 

 

 

 

1

 

0

1

 

 

 

 

 

 

 

 

 

1

 

1

0

 

 

 

 

 

 

 

 

 

 

 

Логическая операция И

 

 

Логическая операция ИЛИ

 

Y=A and B

 

 

 

 

 

Y=A or B

 

 

 

 

A

 

B

 

Y=A·B

 

 

A

 

B

Y=A+B

 

 

0

 

0

 

0

 

 

0

 

0

0

 

 

0

 

1

 

0

 

 

0

 

1

1

 

 

1

 

0

 

0

 

 

1

 

0

1

 

 

1

 

1

 

1

 

 

1

 

1

1

 

30

Таблица 2.2

Таблица соответствия обозначения ЛЭ

При преобразованиях логических выражений используются законы алгебры логики (табл. 2.3).

Таблица 2.3

Законы алгебры логики

Название закона

для И

 

 

для ИЛИ

Двойное отрицание

 

А

 

 

A=

А

 

А

 

 

 

Дополнительности

А·

=0

А+

=1

 

 

 

 

Первого множества

А·0=0

 

 

А+0=А

 

Универсального

А·1=А

 

 

А+1=1

 

множества

 

 

 

 

 

 

 

 

 

 

 

Повторения

А·А=А

 

 

А+А=А

Поглощения

А·(А+В)=А

 

А+А·В=А

Переместительный

А·В=В·А

 

А+В=В+А

Сочетательный

А·(В·С)=(А·В)·С

А+(В+С)=(А+В)+С

Распределительный

А+В·С=(А+В)·(А+С)

 

А·(В+С)=А·В+А·С

Склеивания

(А+В)·(А+

В

) = А

 

А·В+А·

В

= А

 

 

 

де Моргана

А∙ В31А В

 

А+ В А

В

 

= +

 

 

=

·

 

Любая логическая схема описывается таблицей истинности. Для разработки требуемой логической схемы необходимо получить ПФ в СДНФ или в СКНФ.

Затем с целью упрощения цифрового устройства минимизируют его логическое выражение, по которому разрабатывают схему.

Функция в СДНФ представляет собой сумму элементарных произведений (минтермов). Приведем пример нахождения СДНФ для заданной таблица истинности (табл. 2.4).

 

 

Таблица 2.4

 

 

 

 

 

X1

X0

 

F

0

0

 

1

 

0

1

 

0

 

1

0

 

1

 

1

1

 

0

 

Для каждого набора переменных, при котором F равна 1, записывается произведение, в котором с отрицанием берутся переменные, имеющие значение 0.

F = 1 ∙ 0 + 1∙ 0

Функция в СКНФ представляет собой произведение элементарных сумм (макситермов). Приведем пример нахождения СКНФ для заданной таблица истинности (табл. 2.5).

 

 

Таблица 2.5

 

 

 

 

 

X1

X0

 

F

0

0

 

1

 

0

1

 

0

 

1

0

 

1

 

1

1

 

0

 

Для каждого набора переменных, при котором F равна 0, записывается сумма, в котором с отрицанием берутся переменные, имеющие значение 1.

F = ( 1 + 0)∙( 1+ 0)

32

Порядок выполнения работы

1.Исследование логических элементов

1.1.Таблица истинности ЛЭ в соответствии

синдивидуальным заданием

Рассмотрим пример построения простейшего логического элемента 2И. Приведем таблицу истинности (табл. 2.6).

Таблица 2.6 Таблица истинности логического элемента 2И

X1

X2

Y1=X1·X2

0

0

0

0

1

0

1

0

0

1

1

1

1.2. Реализация в схемотехническом редакторе

Xilinx ISE Design Suite 14.1

Схема логического элемента 2И в программной оболочке ISE представлена на рис. 2.1

Рис. 2.1. Схема элемента 2И

33

1.3. Проверка работоспособности ЛЭ в симуляторе ISim

Приведем пример определения входных сигналов в

TestBench.

PROCESS

BEGIN

X1<='0'; // присваиваем переменной X1 значение 0 X2<='0'; // присваиваем переменной X2 значение 0 wait for 50 ns; // длительность 50 нс

… //вписываем необходимые значения

WAIT;

END PROCESS;

1.4. Описание заданного логического элемента на языке VHDL

library IEEE;

Подключаем все объявления

use IEEE.STD_LOGIC_1164.ALL;

пакета STD_LOGIC_1164, вхо-

 

дящего в библиотеку IEEE

entity VHDL_I is

Определяем сигналы, которыми

Port ( X1 : in STD_LOGIC;

объект будет обмениваться

X2 : in STD_LOGIC;

X1, X2 – входные порты,

Y1 : out STD_LOGIC);

Y1 – выходной порт,

std_logic - это просто провод.

end VHDL_I;

 

architecture Behavioral of VHDL_I is

Задаем алгоритм работы

begin

В выходной порт Y1 записыва-

Y1<=X1 and X2;

end Behavioral;

ется значение X1·X2

 

 

 

34

1.5. Проверка работоспособности в симуляторе ISim

Приведем пример определения входных сигналов в

TestBench.

process begin X1<='0'; X2<='0';

wait for 100 ns;

wait; end process;

2. Разработка логической схемы по заданной таблице истинности

2.1. Таблица истинности

Рассмотрим пример на основе заданной таблицы истин-

ности.

Таблица 2.7

Таблица истинности

X1

X2

 

X3

Y

0

0

 

0

0

0

0

 

1

1

0

1

 

0

0

0

1

 

1

1

1

0

 

0

1

1

0

 

1

0

1

1

 

0

0

1

1

 

1

1

 

 

35

 

2.2ПФ в СДНФ и СКНФ. Минимизированная ДНФ (МДНФ)

взаданном базисе

Представим ПФ в СДНФ

Y = X1 ∙X2 ∙X3 + X1∙X2∙X3 + X1∙X2 ∙X3 + X1∙X2∙X3.

Представим ПФ в СКНФ

Y = ( 1+ 2+ 3)·( 1+ 2 + 3)·( 1+ 2+ 3)∙( 1 + 2+ 3).

Применив закон склеивания для ПФ в СДНФ, получим

Y =X1∙X2∙X3 + X1∙X2∙X3 + X1∙X2∙X3 + X1∙X2∙X3 = = X1∙X3∙( 2 + 2) + X1∙X2 ∙X3 + X2∙X3( 1+ 1) = = X1∙X3+X1∙X2∙X3 + X2∙X3

Применив графический способ минимизации с помощью диаграммы Вейча, получим Y = X1·X3+X1∙X2∙X3+X2∙X3.

X3 X3 X3

X2 1 1

X2

1

1

X1 X1

На диаграмме изображены компактные группы

X1·X3+X1∙X2 ∙X3+X2∙X3.

Приведем к базису 2И-НЕ

Приведем к базису 2ИЛИ-НЕ

=

1∙ 3+ 1∙ 2∙ 3+ 2∙ 3

=

 

1 ∙

3 + 1∙ 2 ∙ 3 +

 

=

=

Y=

 

=

 

1 3 ∙ 1∙ 2 ∙ 3 ∙ 2∙ 3

2∙ 3

 

 

 

 

 

 

 

36

2.3. Реализация ПФ в схемотехническом редакторе

Xilinx ISE Design Suite 14.1

Рис. 2.2. Схема ПФ в базисе 2И-НЕ

2.4. Проверка работоспособности в симуляторе ISim

Приведем пример определения входных сигналов в

TestBench.

process begin X1<='0'; X2<='0'; X3<='0';

wait for 100 ns;

wait; end process;

37

2.5. Описание ПФ в МДНФ на языке VHDL

library IEEE;

use IEEE.STD_LOGIC_1164.ALL; entity PF_VHDL is

Port ( X1 : in STD_LOGIC;

X2 : in STD_LOGIC;

X3 : in STD_LOGIC;

Y1 : out STD_LOGIC); end PF_VHDL;

architecture Behavioral of PF_VHDL is

begin

Y1<=(not(X1)and X3) or (X1 and not(X2) and not(X3)) or (X2 and X3);

end Behavioral;

2.6. Проверка работоспособности в симуляторе ISim

Приведем пример определения входных сигналов в

TestBench.

process begin X1<='0'; X2<='0'; X3<='0';

wait for 100 ns;

wait; end process;

38

Индивидуальные задания

№ вари-

Заданный

 

 

Заданная таблица истинности

 

 

 

Базис

анта

ЛЭ

 

 

 

 

 

 

 

 

 

 

 

x1

x2

x3

y

 

 

2И-НЕ

 

 

 

0

0

0

0

 

 

 

 

 

 

0

0

1

0

 

 

 

 

 

 

0

1

0

1

 

 

 

1

 

0

1

1

1

 

 

 

 

 

 

1

0

0

1

 

 

 

 

 

 

1

0

1

0

 

 

 

 

 

 

1

1

0

0

 

 

 

 

 

 

1

1

1

1

 

 

 

 

 

 

 

x2

x3

 

 

 

3И-НЕ

 

 

 

x1

y

 

 

 

 

0

0

0

0

 

 

 

 

 

 

0

0

1

0

 

 

 

 

 

 

0

1

0

0

 

 

 

2

2И-НЕ

 

0

1

1

1

 

 

 

 

 

 

1

0

0

1

 

 

 

 

 

 

1

0

1

1

 

 

 

 

 

 

1

1

0

0

 

 

 

 

 

 

1

1

1

1

 

 

 

 

 

 

x1

x2

x3

y

 

 

2И-НЕ

 

 

 

 

 

 

 

0

0

0

1

 

 

 

 

 

 

0

0

1

0

 

 

 

 

 

 

0

1

0

1

 

 

 

3

3И-НЕ

 

0

1

1

0

 

 

 

 

 

 

1

0

0

0

 

 

 

 

 

 

1

0

1

0

 

 

 

 

 

 

1

1

0

1

 

 

 

 

 

 

1

1

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

39