Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методические указания по выполнению курсовой работы.doc
Скачиваний:
38
Добавлен:
20.05.2014
Размер:
1.63 Mб
Скачать

Часть 2. Синтез схемы комбинационного устройства по заданной таблице истинности.

В цифровой схемотехнике можно выделить два основных класса устройств – комбинационные устройства (КУ) и последовательности устройства или конечные автоматы (КА). Оба класса устройств служат для преобразования и обработки цифровых сигналов, которые представляют входную и выходную информацию на каждом такте работы устройства в двоичной системе счисления в виде наборов (кодовых слов) из двух знаков «0», «1».

В радиотехнических, телевизионных и других системах цифровые сигналы получаются при преобразовании исходных аналоговых сигналов в цифровую форму в аналогово-цифровых преобразователях (АЦП), в вычислительной технике при записи чисел в двоичной системе. Тактовая частота, определяющая быстродействие цифровых устройств, зависит от времени переключения логических элементов (ЛЭ), входящих в состав КУ или КА, их схемами и технологией изготовления.

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

Последовательностным называют устройство, в котором значение выходного сигнала на данном такте определяется значением входного сигнала на том же и ряде предыдущих тактов. Такое устройство должно включать элементы памяти, в которых хранятся значения сигнала с предыдущих тактов.

Пусть комбинационное устройство имеет n входов, на которые подаётся входной сигнал в виде комбинации xn, xn-1, …x2, x1 и m выходов ym, ym-1, …y2, y1 , каждый из которых соответствует одной логической функции от аргументов xi , i=1,2,…n. Число m возможных логических функций yj , j=1,2,…m ограничено и определяется числом n аргументов логической функции. Это получается ввиду того, что каждый аргумент xi и каждая функция yj могут принимать только два дискретных значения xi=0,1; yj=0,1.

Рассмотрим логические функции одной x и двух x2 ,x1 переменных, задавая их таблицами истинности.

Для одной переменной (n=1) возможны всего =4 функции, приведённые в таблице истинности.

На графике в переменных x, y значения этих функций соответствуют углам квадрата.

x

y1

y2

y3

y4

0

0

1

0

1

1

0

0

1

1

Функции имеют следующие названия:

y1 ≡0 – тождественный ноль

y2= - отрицание, «не»

y3=x – повторение

y4≡1 – тождественная 1.

Наиболее важное значение имеет функция «не». Выполняющий её логический элемент обозначается следующим образом:

Для двух переменных (n=2) возможны 2n=4 комбинации аргументов и m==16 логических функций. Приведем 5 наиболее важных логических функций двух переменных в одной таблице истинности. На графике в зависимости от x1, x2 значения этих функций лежат в углах куба

x2 x1

y1

y2

y3

y4

y5

0 0

0

0

1

1

0

0 1

1

0

0

1

1

1 0

1

0

0

1

1

1 1

1

1

0

0

0

Они имеют следующие формы записи, названия и обозначение соответствующих ЛЭ:

логическое сложение

«или»

логическое умножение

«и»

функция Пирса

«или-не»

функция Шеффера

«и-не»,

- неравнозначность, сложение по модулю два и др.

При увеличении числа аргументов n число их комбинаций растет как 2n, число возможных логических функций как .

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

«и», «или», «не» - базис Буля;

«или-не» - базис Пирса;

«и-не» - базис Шеффера.

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

В целом синтез КУ можно разбить на следующие этапы:

  1. Сформулировать алгоритм задачи, выполняемой КУ.

  2. Составить таблицу истинности КУ на основании алгоритма его действия.

  3. Записать логическую (структурную) формулу, описывающую работу КУ, на основании таблицы истинности КУ.

  4. Минимизировать логическую формулу КУ, сведя её к тупиковому выражению, содержащему минимальное количество операций.

  5. При необходимости перевести логическую формулу в заданный базис.

  6. Составить схему КУ по его логической формуле.

Для выполнения этапов 3,4,5 в общем случае используем следующие правила.

Этап 3. Запись логической функции по таблице истинности производится в виде совершенной дизъюнктивной нормальной формы (СДНФ) или совершенной конъюнктивной нормальной формы (СКНФ).

Для составления логической формулы в СДНФ выбираем в таблице истинности строки, где логическая функция y=1, число таких строк обозначим Р; записываем логическую сумму Р произведений всех переменных xi; в соответствующем данной строке произведении xi записываем без инверсии, если хi=1 и с инверсией, если xi=0. Такие произведения называют минтермами.

Для составления логической формулы в СКНФ выбираем в таблице истинности строки, где логическая функция у=0, число таких строк обозначим Q; записываем логическое произведение Q сумм всех переменных xi; в соответствующей данной строке сумме xi записываем без инверсии, если xi=0, и с инверсией, если xi=1.

Целесообразно составлять логическую функцию в СДНФ, если P<Q и в СКНФ, если P>Q.

Этап 4. Минимизацию логических функций проводят с применением законов алгебры логики и карт Карно. Основные законы алгебры логики имеют вид:

  1. Закон двойного отрицания

  1. Перестановочный закон

(коммутативность)

  1. Сочетательный закон

(ассоциативность)

  1. Законы повторения

  1. Распределительный закон

,

но

  1. Законы инверсии Де Моргана

Следствия:

  1. Закон поглощения

  2. Закон склеивания

При алгебраической минимизации используют ряд приемов:

  • Добавление имеющихся слагаемых, т.к. ,

  • Умножение на ,

  • Выделение ,

  • Применение законов поглощения и склеивания и др.

Карты Карно используют для минимизации логических функций, представленных в СДНФ как суммы минтермов m. Вид карт Карно для двух, трёх и четырёх переменных представлен на рисунке.

Каждому минтерму соответствует клетка на пересечении строки и столбца и если в полученную СДНФ входит этот минтерм, то ставим в такой клетке 1.

Структура карт Карно такова, что при переходе в соседний столбец или соседнюю строку инвертируется только одна переменная. Это же получается при переходе между верхней и нижней строками, между правым и левым столбцами, которые также могут считаться соседними. Поэтому минтермы соседних клеток склеиваются, причём можно склеивать группы минтермов из двух или четырёх соседних клеток.

Общие правила работы с картами Карно:

  • Склеиваться могут 2,4,8 и т.д. членов, расположенных в линию или прямоугольником; они очерчиваются контуром

  • Одним контуром следует объединять максимальное количество клеток

  • Одна и та же клетка может охватываться несколькими контурами, т.к. m=m+m+…m.

  • Крайние строки и крайние столбцы считаются соседними

С размеченной таким образом карты Карно производим считывание, т.е. запись логической функции в виде выделенных групп минтермов, включая и отдельные необъединенные минтермы. Далее внутри каждой группы производим склеивание, в результате получим минимальную дизъюнктивную нормальную форму (МДНФ) исходной логической функции.

Чтобы использовать карты Карно при записи логической функции у через строки таблицы истинности, соответствующие у=0, целесообразно применять СДНФ для инвертированной функции , выбирая строки . Получив с помощью карты Карно МДНФ для , инвертируя её и применяя законы де Моргана, придем к минимизированной СКНФ. Запись функции в СДНФ целесообразна при использовании логических элементов «и-не», в СКНФ – при использовании логических элементов «или-не».

Этап 5. Для перевода логической функции, записанной в виде СДНФ, к базису «и-не» (в виде СКНФ – к базису «или-не»), используется закон двойного отрицания и законы де Моргана.

Примеры синтеза КУ.

Пример 1. Полусумматор.

  1. Полусумматор выполняет сложение двух одноразрядных двоичных чисел x1 , x2 . В соответствии с правилами сложения в данном разряде получаем сумму S=0 при x1=x2=0 и x1=x2=1 и S=1 при x1=0, x2=1; x1=1, x2=0. Перенос в следующий разряд С=1 только при x1=x2=1, в остальных случаях С=0.

  2. Таблица истинности получается на основе правил сложения

    x2

    x1

    S

    C

    0

    0

    0

    0

    0

    1

    1

    0

    1

    0

    1

    0

    1

    1

    0

    1

  3. Для данной таблицы S представляет функцию неравнозначности , С-функцию «и» C=x1x2. Общие правила записи логической функции по таблице истинности приведены выше.

  4. Для минимизации S используем соотношения алгебры логики: .

В преобразованном выражении получаем 4 логических операции «и», «или», «не» (базис Буля), по сравнению с 6 операциями в исходных выражениях для S и C.

  1. Преобразование к базису Шеффера «и-не»

  2. Схемы полусумматора в различных базисах.

Полусумматор в базисе Буля по п.3

Полусумматор в базисе Буля после минимизации по п.4

Полусумматор в базисе Шеффера по п.5

При соединении входов ЛЭ «и-не» получаем элемент «не».

Полусумматор обозначается следующим образом, где А≡x1 , B≡x2 .

Пример 2. Составить схему полного одноразрядного сумматора, выполняющего сложение двоичного числа в i-m разряде с учетом переноса из предыдущего i-1 – го разряда.

Запишем порядок составления схемы по этапам.

  1. Полный одноразрядный сумматор должен выполнять сложение трёх одноразрядных двоичных чисел по правилам двоичной арифметики:

0+0+0=0, 0+0+1=1, 0+1+1=10, 1+1+1=11.

  1. Применение этих правил к сложению чисел Ai , Bi i-го разряда и переноса Сi в i-й разряд из предыдущего i-1 – го разряда приводит к следующей таблице истинности, в которой Si – сумма в i-м разряде, Ci+1 – перенос в i+1 – разряд.

Ai

Bi

Ci

Si

Ci+1

0

0

0

0

0

1

0

0

1

0

0

1

0

1

0

1

1

0

0

1

0

0

1

1

0

1

0

1

0

1

0

1

1

0

1

1

1

1

1

1

  1. По таблице истинности составим логические формулы для Si и Ci+1 в совершенной дизъюнктивной нормальной форме (СДНФ):

, (1)

(2)

  1. Минимизируем полученные выражения. Для Ci+1 используем карту Карно

Получаем на карте Карно три объединения минтермов, которые склеиваются

(3)

То же самое получается чисто алгебраически, если в исходное выражение для Сi+1 добавить дважды уже имеющееся в нем слагаемое AiBiCi и сгруппировать члены.

В выражении для Si нет склеивающихся минтермов, в чем можно убедиться, составляя для Si карту Карно, т.е. выражение (1) является тупиковым.

Однако количество логических операций для совместной реализации логических функций Si, Ci+1 можно уменьшить, преобразуя Si к виду (доказать!):

(4)

  1. Преобразование логических функций Si, Ci+1 к базису «и-не». Для этого используем законы двойного отрицания и инверсии де Моргана.

Получим:

(5)

(6)

Логический элемент «не» также реализуется на логическом элементе «и-не» при объединении его входов, т.к.

Можно получить также выражение Si через неравнозначность.

Из (1) имеем:

(7)

т.к. (доказать!)

Функцию «неравнозначность» представим через логическую функцию «и-не» следующим образом

(8)

  1. Согласно выражениям (5) и (7) получим следующую схему полного одноразрядного сумматора

где ЛЭ

выполняющий

функцию неравнозначность, может быть построен на ЛЭ «и-не» согласно формуле (8).

Полный одноразрядный сумматор обозначается следующим образом:

Пример 3. Минимизировать алгебраически и с помощью карты Карно логическую функцию.

Для алгебраической минимизации добавим имеющееся в этом выражении слагаемое и сгруппируем члены следующим образом

Карта Карно имеет вид:

Объединение «а» даёт х2х3 , объединение четырёх членов «в» , т.е.

.

Пример 4. Минимизировать с помощью карты Карно логическую функцию 4-х переменных.

Карта Карно имеет вид:

Минимизированная функция имеет вид:

Библиографический список

  1. Ю.А. Быстров, И.Г. Мироненко. Электронные цепи и микросхемотехника, Москва, «Высшая школа», 2002.

  2. С.В. Мухин, О.П. Новожилов. Цифровые и микропроцессорные устройства. Учебное пособие, МИЭМ.М.:2005.

Утверждено на заседании кафедры «Радиоэлектроника».

Протокол № 5 от 26 апреля 2006г.