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

Теория цифровых автоматов. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
1 1* 0* 0*
0011
1
1
xx x
2
2
1 1 0 0
0*0*1*1*
1
1
xx x
2
2
x
21
21
(y1y2)
jj = τ2.
Запишем функцию jк:
41
  󰇛   
*
󰇜
󰇛󰇜
Для записи МДНФ этой функции построим карту Карно.
jк = τ2.
Функция возбуждения для Т-триггера получена в п. 2.5: jT = m.
V этап: запись функции выхода.
Именно этот этап отличается от процедуры синтеза автоматов МУРА, так как функция выходов в автомате МИЛИ задается иначе. Заметим, что выходные двоичные переменные y1 и y2 отмечают каждое ребро графа автомата МИЛИ, поэтому логическое условие появления единичного сигнала y1 или y2 может быть записано по аналогии с записью функций возбуждения по соответствующим меткам. Поясним на примере одного перехода заданного автомата.
Так как функции выхода записываются в СДНФ, то необходимо отыскать единичное значение кодирующей переменной l1 или l2. Для рассматриваемого примера имеем

42
Данное логическое условие говорит о том, что на выходной шине автомата y2 появится единичный сигнал, если автомат находился в состоянии 00 и на его вход подан сигнал x = 1.
Рассмотрев аналогично логические условия для других ребер, можно записать функции выходов автомата МИЛИ:
    
VI этап: построение функциональной схемы.
Из предыдущих этапов получили функции возбуждения для JK- и Т­триггеров, а также функции выходов. По этим функциям можно построить схему автомата. Выбрав JK-триггер, мы получили простую функцию возбуждения.
Отличительной особенностью схемы автомата МИЛИ является то, что выходные сигналы определяются не только состоянием автомата, но и входной информацией. Из схемы следует, что работа автомата не зависит от JK-триггера, это говорит о том, что исходный граф автомата можно упростить до графа состоящего из двух вершин, иными словами полученный граф автомата по словесному алгоритму содержит избыточную информацию, так как невыполненный этап упрощения графа автомата с помощью специальных методов, а проектировщик остановился только на интуитивном уровне перехода от словесного алгоритма к графу.
43
T
T
С
T
J
K
1
τ
1
БП
KС
2
С
&
&
x
ТИ
j
T
j
j
j
К
1
x x
y
1
y
2
КС
1
2
τ
1
τ
2
τ
2
DI
DO
ОА УА
X
Y КОП
2.7. Структура цифрового вычислителя
В функциональном отношении большинство цифровых вычислительных устройств (ЦВУ) могут быть представлены в виде композиции операционного и управляющего автоматов (ОА и УА), как показано на рис. 8.
Рис. 8. Структура вычислительного устройства
ОА может включать АЛУ, регистры, счетчики, блоки памяти, дешифраторы, каналы передачи информации и т.д. Операционные автоматы служат для обработки информации (DI и DO).
УА генерирует распределенную во времени последовательность управляющих сигналов Y в соответствии с микропрограммой кода
44
операции (КОП) и логическими условиями X, т.е. определяет последовательность переработки информации и координирует работу всех блоков в ОА.
В ОА оказывается сосредоточенным основной объем оборудования. На долю управляющего автомата остается сравнительно небольшая часть. При этом аппаратура управления может быть конструктивно рассредоточена по всему устройству. Поэтому с конструктивной точки зрения подобное разделение устройства на две части не оправдано. Тем не менее, на стадии логического проектирования разделение целесообразно потому, что методика проектирования получаемых частей совершенно различна.
Операционный автомат составляется из типовых, хорошо известных модулей, которые не нужно проектировать заново. Что же касается схемы управления, то ее устройство может сильно отличаться даже в изделиях, близких по своему назначению и свойствам. Кроме того, схема управления, несмотря на относительно небольшой физический объем, имеет относительно более сложные функции, отчего ее синтез требует более серьезного подхода. В частности, именно здесь требуется применение теории автоматов с памятью.
Таким образом, разделение проектируемого устройства на операционный и управляющий автоматы возникает на стадии логического синтеза аппаратуры, а в дальнейшем, при переходе к физическому проектированию, становится ненужным и исчезает.
Операционные автоматы делятся на блочные и многофункциональные, синхронные и асинхронные, на автоматы обратного и дополнительного кодов, на автоматы двоичной, десятичной систем счисления и др.
В блочном автомате для каждой операции предусмотрен соответствующий блок, в многофункциональном автомате единая структура перестраивается с учетом каждой операции.
В автомате с синхронным управлением на любую операцию затрачивается одинаковое время (время самой продолжительной операции), в автомате с асинхронным управлением время каждой операции различно.
45
Операционный автомат имеет определенные характеристики: набор операций, точность расчетов, быстродействие, код, систему счисления и др.
2.8. Понятия микрооперации, микрокоманды, микропрограммы
Последовательность выполнения операций в ОА определяется микропрограммой (МП), которая представляет собой совокупность микроопераций и логических условий.
Под микрооперацией понимается элементарная обработка информации за время одного такта, т.е. в промежутке между двумя дискретными моментами времени ti и t
. В синтаксическом смысле
i+1
микрооперация состоит из левой части (знака присваивания) и двоичного выражения в правой части.
Различают микрооперации:
установки (А:=1111),
инвертирования (А:=),
передачи (А:=В), сдвига (А:=L1(А), А:=R1(А)), счета (А:=А+1, А:= А-1),
сложения (С:=С+А, С:=С+) и т.д.
Некоторые из используемых в программе микроопераций (МО) могут выполняться параллельно во времени, т.е. за один такт. Такие микрооперации называют функционально совместимыми. Если микрооперации не могут выполняться параллельно во времени, то они функционально несовместимы. Совместимость микроопераций обусловлена содержанием операторов и структурой ОУ, поэтому иногда говорят о структурной совместимости или несовместимости микроопераций.
Для выполнения в ОА i-й микрооперации в УА должен выработаться управляющий сигнал yi ϵ Y, однозначно сопоставленный с этой МО.
Совокупность микроопераций, выполняемых в ОУ одновременно за один такт, образует микрокоманду (МК). Если, например, Yt = {yt1,
yt2,…,ytn} – микрокоманда, то микрооперации yt1, yt2,…,y
выполняются
tn
одновременно за один такт. При n=1 микрокоманда содержит одну
46
микрооперацию, а n=0 может означать пропуск такта, т.е. отсутствие выполнения каких-либо элементарных действий.
Порядок выполнения микрокоманд определяется в общем случае логическими условиями xi ϵ X или булевыми функциями (функциями перехода), аргументами которой являются логические условия.
Совокупность микрокоманд и функций перехода образуют
микропрограмму.
В микропрограмме каждой паре микрокоманд Yi, Yj соответствует функция переходов aij. Если aij =1, то после выполнения микрокоманды Yi должна выполняться микрокоманда Yj. Причем среди множества функций переходов {ai1, ai2, aij,…,aim}, где m – число различных микрокоманд, в каждый момент времени единице равна только одна функция. В противном случае процесс выполнения микропрограммы был бы недетерминированным.
2.9. Управляющие автоматы
Управляющий автомат (УА) можно строить двумя способами [10].
Управляющий автомат с жесткой логикой – специальная логическая сеть с элементами памяти, реализующая микропрограмму выполнения команды. Структура сети определяется теми микропрограммами, которые должны выполняться данным устройством. При этом способе можно свести к минимуму объем оборудования и, что бывает гораздо важнее, обеспечить максимально возможное быстродействие. Зато проектирование такого управления является делом долгим и сложным, а перепрограммирование УА на другую работу вообще невозможно.
Микропрограммный УА, или управляющий автомат с программируемой логикой строится с использованием специальной встроенной памяти микропрограмм. В эту память записываются все требуемые микропрограммы, а от схемы управления требуется только организация чтения микропрограмм. Проектирование микропрограммного автомата несравненно проще, так как в нем используются типовые аппаратные модули. Единственной специальной задачей, решаемой в рамках теории автоматов, остается абстрактный синтез и составление
47
таблиц программирования памяти. Недостатками микропрограммного управления является некоторая избыточность оборудования и меньшее быстродействие.
В действительности оба принципа построения УА сочетаются в той или иной пропорции.
2.9.1. Общие понятия и функциональное назначение устройства
управления
Нам уже известно, что в каждом такте в любом процессоре должна быть сформирована своя микрокоманда, или микроинструкция, которая и обеспечивает выполнение необходимых микроопераций. На рис. 9 представлена диаграмма, на которой по горизонтальной оси отображена последовательность тактов, а по вертикальной – номера цепей управления процессора при выполнении им некой команды [1]. Каждому такту и каждой цепи управления поставлен в соответствие определенный уровень управляющего сигнала. Например, единичный уровень сигнала является разрешающим, а нулевой уровень сигнала – запрещающим. Следует заметить, что для некоторых цепей за разрешающий может быть принят и нулевой уровень.
Из диаграммы видно, что в каждом такте на управляющие цепи процессора (общее число их может составлять 40–60 и более) должна быть подана своя совокупность сигналов управления, разрешающих или запрещающих какую-то микрооперацию. Эту совокупность сигналов управления и называют микрокомандой, или управляющим словом. Считают, что в тех тактах, в которых имеются несколько разрешающих сигналов, одновременно выполняется несколько элементарных действий – микроопераций. Но при этом в каждом такте имеется только одно управляющее слово, т.е. реализуется одна микрокоманда.
Таким образом, при выполнении любой команды в процессоре должна быть сформирована совокупность управляющих сигналов, распределенных в пространстве (по цепям управления) и во времени (по тактам). Эта совокупность управляющих сигналов и представляет собой микропрограмму, реализующую данную команду.
48
C1
C2
C3
C4
C5
C6
C7
C8
C9
1 2 3 4 5 6 7 8 9 10
Такты (ti)
Управляющие
сигналы
Микрокоманда на 6-м такте (Y6)
0 0 1 0 0 0 0 0 1 0
0 0 1 0 0 0 0 0 0 0
0 0 1 0 0 0 1 0 1 0
0 0 1 0 0 0 0 0 1 1
0 0 1 0 0 0 0 0 x 0
0 0 1 0 1 0 0 0 1 0
0 0 0 0 0 0 0 1 0 0
0 0 x 0 0 0 0 x 1 0
1 0 1 0 0 0 0 0 1 0
каждом такте осуществляется устройством управления процессора. Как видим, задача формирования управляющих сигналов является достаточно сложной и громоздкой, если принять во внимание при этом, что в процессоре имеется достаточно большое число цепей управления и значительное число команд (до 130 и более), причем каждая команда выполняется за несколько тактов (до 5-10 и более). Кроме того, устройство управления должно реагировать также на внешние сигналы управления.
построения устройства управления.
Рис. 9. Диаграмма распределения управляющих сигналов процессора
по цепям управления и по тактам
Формирование управляющих сигналов для всех цепей управления в
Рассмотрим некоторые общие узлы, которые используются для
Регистр команды (РК) предназначен для приема и хранения кода операции команды, считанной из оперативного запоминающего устройства (ОЗУ), на время ее выполнения процессором. Разрядность регистра команды равна разрядности шины данных процессора. Содержимое регистра команды несет в себе информацию о коде операции и об используемом в данной операции способе адресации. При этом
49
другие байты, или слова команды, которые несут в себе адресную информацию или являются непосредственными данными, принимаются другими регистрами процессора.
Дешифратор команды (в частности, дешифратор кода операции) является обязательным узлом любого устройства управления процессора. Это функциональное комбинационное устройство, предназначенное для расшифровывания кода операции команды для использования в других узлах устройства управления.
Во многих современных процессорах есть узел, который представляет собой очередь команд. Очередь команд – это запоминающее устройство (ЗУ), предназначенное для хранения очередных команд, подлежащих выполнению.
Заполнение буферной памяти команд производится в интервалы времени, когда шина данных процессора не занята им для обмена данными с основной памятью или внешними устройствами. Выборка команд из очереди команд производится процессором по мере их выполнения. Таким образом обеспечивается повышение общей производительности процессора, поскольку практически не требуется дополнительных затрат времени на выборку команд из ОЗУ, так как очередные команды уже находятся во внутренней буферной памяти процессора. Полное время на выборку команды с обращением к ОЗУ тратится лишь в тех случаях, когда производится передача управления при реализации условных переходов в программе. В этих случаях производится реинициализация очереди команд и загрузка ее новой последовательностью команд. При этом первая же выбранная из ОЗУ команда становится сразу доступной для выполнения. Одной из разновидностей реализации очереди команд является так называемая КЭШ-память, размещаемая непосредственно на кристалле процессора. В ряде современных процессоров КЭШ-память используется при этом как буферное запоминающее устройство не только для потока команд, но также и для потока данных.
2.9.2. Устройство управления с жесткой логикой
В настоящее время известно большое количество схемных реализаций устройств управления на основе «жесткой» логики. В качестве
50
Блок
синхросигналов
Формирователи управляющих
сигналов
Формирователи управляющих
сигналов
Логические схемы образования
управляющих сигналов
Дешифратор
тактов
Дешифратор
кода операции
Счетчик тактов
Регистр кода
операции
сложение
вычитание
...
Такт 1
Такт 2
..
Такт n
Управляющие сигналы
...
С0 С1 Сm
примера можно было бы привести структуру одного из вариантов УУ (рис. 10).
Рис. 10. Структурная схема управляющего автомата с «жесткой» логикой
В состав схемы входит регистр кода операции, являющийся частью регистра команд, счетчик тактов, дешифратор тактов и дешифратор кода операции, а также логические схемы образования управляющих функциональных сигналов.
Код операции поступает из регистра на дешифратор кода операции, где раскодируется в сигнал, например, «сложение», «вычитание» и др.
счетчик с каждым сигналом меняет свое состояние. Состояния счетчика
На счетчик тактов поступают сигналы от блока синхросигналов, и
представляют номера тактов, изменяющиеся от 1 до n. Дешифратор тактов формирует на j-м выходе единичный сигнал при i-м состоянии счетчика тактов, т.е. во время i-го такта.
Логические схемы образования управляющих сигналов для каждой команды возбуждают формирователи управляющих сигналов для выполнения требуемых в данном такте микроопераций.
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]