Афанасьев В.А. Прикладная теория цифровых автоматов - файл n1.doc

приобрести
Афанасьев В.А. Прикладная теория цифровых автоматов
скачать (2521.5 kb.)
Доступные файлы (1):
n1.doc2522kb.01.06.2012 08:22скачать

n1.doc

  1   2   3   4   5
Лабораторная работа №1

АНАЛИЗ И СИНТЕЗ КОМБИНАЦИОННЫХ СХЕМ

Целью работы является освоение основных этапов синтеза комбинационных схем типовых узлов вычислительной техники с использованием механизма имитационного моделирования программы Electronics Workbench.

1. Основные положения

Существующие электронные схемы принято делить на два класса - аналоговые и цифровые. Аналоговые схемы предназначены для преобразования и обработки сигналов, изменяющихся по закону непрерывной функции (это различного рода усилители, генераторы, модуляторы, фильтры и т.д.). Цифровые схемы оперируют с сигналами, изменяющимися по закону дискретной функции. При этом в большинстве случаев эта функция является двоичной, так как возможные её значения определяются символами двоичного алфавита: 0 или 1. Этим дискретным значениям в схеме соответствуют два хорошо различающихся уровня напряжения: высокий или H-уровень (high - высокий) и низкий или L-уровень (low - низкий). Величины H- и L- уровней зависят только от типа используемой транзисторной технологии и, например, для TTL- технологии они составляют

UH  2,4 В (типовые 3,4 В), UL  0,4 В (типовые 0,2 В).

В свою очередь электронные схемы в вычислительной технике по принципу функционирования принято делить на два типа - комбинационные и последовательностные (цифровые автоматы).

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

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

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

В общем случае можно выделить несколько этапов синтеза:

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

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

  3. Преобразование минимальных нормальных форм к виду, соответствующему выбранному (или заданному) набору логических элементов (логическому базису).

  4. Построение комбинационной схемы.

Применительно к данному лабораторному практикуму этот перечень нужно дополнить этапом исследования (моделирования) комбинационной схемы «на рабочем столе» программы Electronics Workbench на предмет проверки правильности её функционирования.

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

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

Индивидуальные задания к работе включают синтез комбинационных схем практически важных функциональных узлов, использующихся в схемотехнике вычислительных устройств. В зависимости от сложности задачи (или её недостаточной освещённости в рекомендуемой литературе) после формулировки задания даются краткие пояснения, следуя которым можно решить поставленную задачу. Выбор логического базиса для реализации схемы осуществляется самостоятельно из состава элементов программы Electronics Workbench.

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

Задание 1. Пятиразрядный преобразователь прямого кода в дополнительный и обратно (один разряд знаковый, четыре - цифровых).

ПОЯСНЕНИЯ к решению [Л.2].

Сопоставление прямого и дополнительного кодов показывает, что последний (для отрицательных чисел) отличается от первого инверсными значениями старших цифровых разрядов после первого справа разряда, содержащего "1". Младший цифровой и знаковый разряд всегда остаётся равными для обоих кодов. Данное правило, применительно к n-разрядному коду (ai - разряд числа на входе преобразователя, bi - на выходе), можно записать в следующем виде ((n-1)-й - знаковый разряд):

bi = ai  (ai-1 V...V a0), i = n-2, n-3, ,1 и

bi = ai , для i = 0; n-1.
Для положительных чисел:

bi = ai, i = n-1, ,0.

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

Задание 2. Приоритетный шифратор PRCD (83) для преобразования 8-разрядного входного кода в двоичный код числа i, где i - номер позиции старшей единицы во входном коде.


а7

а6

а5

а4

а3

а2

а1

а0

GS

A2

A1

A0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1

1

0

0

0

0

0

0

0

0

0

1

x

1

0

0

1

0

0

0

0

0

1

x

x

1

0

1

0










.

.

.



















0

1

x

x

x

x

x

x

1

1

1

0

1

x

x

x

x

x

x

x

1

1

1

1


а) б)

Рис. 1.1 Приоритетный шифратор 83(а) и таблица истинности его работы(б)

ПОЯСНЕНИЯ к решению [Л.3].

Получение минимальной формы для каждой из функций приоритетного шифратора рис. 1.1 с помощью классических методов минимизации вызывает затруднение, так как число аргументов функции n=8. Однако минимальные формы можно быстро получить, используя два правила из булевой алгебры:

xy V x = x;

x V y = x V y.

Так, например, применяя первое правило к отмеченной строке таблицы истинности для А1, можно получить импликанту , а их совместное использование для двух последних строк позволяет получить

а7 V = a7 V a6.

Итак, следуя данным рекомендациям, вы быстро определите минимальные формы для каждой из функций.

Работу схемы сравнить с интегральной схемой 74148 приоритетного шифратора 8?3 (отечественный аналог 155ИВ1).

Задание 3 включает две части:

ПОЯСНЕНИЯ к решению [Л.4]. Изображение сумматора и мультиплексора на функциональной схеме приведено соответственно на рис. 1.2, а и б, где приняты следующие обозначения: ai и bi - одноимённые i - разряды слагаемых, si - разряд суммы, а ci и ci+1 - переносы в i-й и (i+1) - разряды соответственно.




Рис. 1.2 Одноразрядный сумматор (а), сдвоенный мультиплексор 41 (б), мультиплексор 81 (в), таблица истинности одной половины сдвоенного мультиплексора КП2 (г).

Мультиплексор имеет входы информационные D0...D3 и адресные A2, A1. Двоичный код адреса означает номер того информационного входа, который коммутируется на выход F1 (F2). (см. таблицу истинности рис. 1.2, г). Адресные входы для сдвоенного мультиплексора являются общими для обеих половин схемы.

Одним из полезных применений мультиплексора является использование его в качестве универсального логического модуля для воспроизведения булевых функций. Как следует из таблицы истинности мультиплексора К155КП2 (рис. 1.2, г), уравнение, описывающее его работу для одного из выходов F1, имеет вид

(1.1)

Поставленная выше задача требует реализации на данном мультиплексоре двух функции от трёх переменных ( si = 1(ai, bi, ci) и ci+1 = 2(ai, bi, ci) ). В общем случае на основе мультиплексора могут быть воспроизведены булевые функции от числа переменных nm, где m - число адресных входов мультиплексора. Случай n=m считается тривиальным в отличие от n > m, когда требуется предварительное разложение искомой функции в ряд Шеннона по m переменным.

Пусть n=m+1=3 (т.е. m=2). Представим произвольную булевую функцию y=f(x3, x2, x1) её разложением по переменным x2 и x1 (т.е. тем переменным, которые задаются на адресные входы):

(1.2)

Здесь f0, f1, f2, f3 – остаточные функции от одного аргумента - переменной x3. Сравнение уравнений (1.1) и (1.2), позволяет выработать подход к реализации метода. В заключение отметим, что функцию si требуется получить на выходе F1 мультиплексора, а функцию ci+1 - на выходе F2. При затруднении с решением как первой, так и второй частей Задания 3 обратитесь к литературе [Л. 2, 3, 4].

Задание 4 включает две части:

ПОЯСНЕНИЯ к решению [Л. 2, 3, 4].

На рис. 1.3, а приведено условное изображение вычитателя и стандартное функциональное обозначение дешифратора DC 38 (К531ИД7, рис. 1.3, б). Для вычитателя приняты следующие обозначения входов и выходов: ai и di - одноимённые разряды операндов вычитателя, si - разряд разности, bi - заём из i-го разряда, а bi+1 - заём из i+1 разряда.




а) б) К531ИД7

Рис. 1.3 Вычитатель (а) и дешифратор К531ИД7 (б)

Дешифратор относится к схемам, преобразующим двоичный код на его входах в активный сигнал на одном из его выходов. Полный дешифратор на n-входов имеет 2n выходов. Поэтому при определении дешифратора допустимо сокращённое обозначение его типа DC 3-8 - дешифратор стремя входами и восьмью выходами.

Дешифратор К531ИД7 имеет инверсные выходы (активный низкий уровень), что и отражено на функциональном обозначении. Для решения вопросов Задания 4 рекомендуется использование методики, принципиальные положения которой изложены к Заданию 3.

Задание 5. Синтез комбинационной схемы 3-разрядной схемы инкрементора/декрементора, условное изображение которого, с учётом назначений входов и выходов, приведено на рис. 1.4.

ПОЯСНЕНИЯ к решению [Л.3].

Из функционального назначения схемы следует, что при Y=0 между значением разряда ai входного слова А и переносом в этот разряд qi=ci должна выполняться операция сложения, а при Y=1 между разрядом ai и заёмом qi=bi – вычитания. Структура таблицы истинности приведена в табл. 1.1.



а) б)

Рис. 1.4 Инкрементор/декрементор (а) и его функциональное описание (б)

Таблица 1.1


Y

ai

qi

si

qi+1

Режим

0

0

0

0

0




0

0

1

1

0




0

1

0

1

0

Инкремент

0

1

1

0

1




1

0

0

0







1

0

1

1

1

Декремент

1

1

0

1

0




1

1

1

0

0



Определив значения для функций выходов si и qi+1, можно получить необходимые логические соотношения, которые будут справедливыми для i=1, 2. В дальнейшем надо только определиться с начальными значениями переноса/заёма при формировании функций so и q1 (i=0).

Задание 6. Преобразователь 4-разрядного двоичного кода в код Грея и обратно. Логический базис – элемент Исключающее ИЛИ.

ПОЯСНЕНИЯ к решению [Л. 2 ,3 ,4].

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



Используя стандартную методику синтеза с минимизацией на картах Карно, можно легко решить прямую задачу. Решение обратной задачи (преобразования кода Грея в двоичный код) – сложнее. Сложность заключается в преобразовании минимальных логических форм типа И/ИЛИ к виду, использующему только операцию Исключающее ИЛИ (mod 2). Решение можно значительно упростить, если рассмотреть карты Карно для функций выходов i (i= 1, 2, 3, 4) как объекты преобразования одной функции в другую на основе операции Исключающее ИЛИ. Для пояснения высказанного предложения на рис.1.5 приведены карты Карно для функций выходов 3 и 2. Сравнение этих карт Карно между собой позволяет убедиться в преобразовании карты Карно для 3 в карту для 2 на основе соотношения: 2 = 3  2 = 3 V 2.

Если это понятно, то решение обратной задачи не вызывает затруднений.

Задание 7. Исследование работы многоразрядного сумматора с последовательным и параллельным переносами

Пояснения к решению [Л.3, 4, 8]. Исследование работы многоразрядного сумматора провести в три этапа.

Двоичный код

Код Грея

4

3

2

1

4

3

2

1

0

0

0

0

0

0

0

0

0

0

0

1

0

0

0

1

0

0

1

0

0

0

1

1

0

0

1

1

0

0

1

0

0

1

0

0

0

1

1

0

0

1

0

1

0

1

1

1

0

1

1

0

0

1

0

1

0

1

1

1

0

1

0

0

1

0

0

0

1

1

0

0

1

0

0

1

1

1

0

1

1

0

1

0

1

1

1

1

1

0

1

1

1

1

1

0

1

1

0

0

1

0

1

0

1

1

0

1

1

0

1

1

1

1

1

0

1

0

0

1

1

1

1

1

1

0

0

0
Таблица 1.2

Задание 8. Синтез схемы преобразователя прямого кода двоичных чисел (4 разряда, включая знаковый) в дополнительный код (вариант 2).

Правило преобразования. Для преобразования дополнительного (прямого) кода отрицательного числа в прямой (дополнительный) код необходимо проинвертировать цифровые разряды исходного числа и, к полученному результату, прибавить «1». Положительные числа имеют одинаковое представление в обоих кодах.

Пояснения к решению. Инвертированием цифровых разрядов ?i управляет знаковый разряд ?s на основе использования логической операции Исключающее ИЛИ

?s ?i i=1, 2, 3.

Прибавление +1 выполнить с использованием сумматора на ИС К155ИМ6 (74283), представленный на рис. 1.6




Задание 9. 3-разрядный цифровой компаратор, определяющий отношения «равно» и «больше» для двоичных чисел А и В.

Пояснения к решению. Предлагается на выбор два способа.

Задание 10. Схема вычитания двух 4-разрядных двоичных чисел с вычислением абсолютной величины и знака разности, использующей циклический перенос.

Пояснения к решению. Предварительно рассмотрим реализацию операции вычитания двоичных чисел А и В, заменив её сложением числа А с поразрядным дополнением числа В. Поразрядное дополнение числа В вводится соотношением 2n-1-B и, фактически, сводится к простому инвертированию всех разрядов числа

A-B = A+2n-1-B = 2n+(A-B)-1. (1.3)

В зависимости от знака разности возможны два случая.

  1. А-В>0. В этом случае реализация соотношения (1.3) приводит к формированию переноса из старшего разряда CF=2n и для получения правильного результата необходимо выполнить операцию циклического сложения с образовавшимся переносом.

2n+(A-B)-1

+ └───20

───────

A-B>0 или |А-В|

Отметим, что здесь знак разности можно получить как ?s= ‫cf
  1   2   3   4   5


АНАЛИЗ И СИНТЕЗ КОМБИНАЦИОННЫХ СХЕМ
Учебный материал
© nashaucheba.ru
При копировании укажите ссылку.
обратиться к администрации