![]() |
|
|
Реферат: ПТЦА - Прикладная теория цифровых автоматовСумматор - операционный элемент, выполняющий суммирование кодов чисел. В зависимости от кодов чисел различают сумматоры прямого, обратного, дополнительного кодов. Кроме того, сумматоры бывают комбинационными и накапливающими. Комбинационный сумматор вырабатывает выходные сигналы суммы и переноса, определяемые комбинацией цифр слагаемых, одновременно поданных на входы сумматора. Данный сумматор не обладает памятью и после снятия сигналов с входов выходные сигналы также исчезают. Условное обозначение комбинационного сумматора представлено на рис.50.
Накапливающим называется сумматор, который осуществляет сложение слов A и B при подаче их на сумматор одного за другим. В накапливающем сумматоре имеется дополнительный регистр для хранения результата.
Структура и условное обозначение накапливающего сумматора представлены на рис. 51. Счетчик - операционный элемент, который реализует микрооперацию счета. Микрооперация счета состоит в изменении состояния счетчика (значения хранимого слова) на 1. Кроме того счетчик может выполнить и такие микрооперации: установка в 0 и прием произвольного числа. Т.е. полный набор возможных микроопераций для счетчика:
Счетчик, выполняющий микрооперацию у1 называется суммирующим, микрооперацию у2 - вычитающим, обе микрооперации - реверсивный. Дешифратор - операционный элемент, выполняющий функцию преобразования некоторого n-разрядного двоичного кода в унитарный код «один из N». Если N=2n - то такой дешифратор называется полным, если N<2n - то частичным. Таблица истинности простейшего полного дешифратора (n=2) и его условное обозначение приведены в табл. 25. и на рис. 53. Промышленность может выпускать дешифраторы с инверсными выходами. Для такого дешифратора таблица истинности и условное обозначение имеют вид (табл. 26., рис. 54.)
СИНТЕЗ МИКРОПРОГРАММНЫХ АВТОМАТОВ ПО ГРАФ-СХЕМЕ АЛГОРИТМА Граф-схема алгоритма есть форма представления микропрограммы, которую должно выполнить операционное устройство (ОУ). При построении операционного устройства, как состоящего из операционного (ОА) и управляющего (УА) автоматов, необходимо уметь выделить функции ОА и УА из ГСА. Обычно микропрограмма представляется в виде содержательной ГСА. В этом случае для задания функций ОА необходимо перечислить все выполняемые микрооперации и все проверяемые логические условия данной микропрограммы, а также описать разрядность слов, обрабатываемых операционным устройством. На основании этих данных можно построить ОА методами, которые будут изложены в курсе «Схемотехника ЭВМ». Для инициализации выполнения той или иной микрооперации на ОА должны поступать в нужный согласно ГСА момент времени управляющие сигналы Yi. Обычно при проектировании ОУ принимают определенный способ кодирования микроопераций (чаще всего кодом, содержащим столько разрядов, сколько всего различных микроопераций) и для разработки ОА считают, что УА выдает код микроопераций, которые должны выполниться в данный момент времени. Для УА важна последовательность выдачи соответствующих кодов микроопераций в зависимости от логических условий, вырабатываемых ОА и анализируемых УА в нужные моменты времени. Если принят способ кодирования микроопераций, то функции УА задаются кодированной ГСА. Поэтому для различных содержательных ГСА , имеющих одинаковую кодированную ГСА, ОА будут различны, но УА будет одним и тем же. В дальнейшем будем рассматривать синтез только УА и только кодированной ГСА. Конечный автомат, интерпретирующий микропрограмму работы дискретного устройства, называется микропрограммным автоматом. Одну и ту же ГСА можно интерпретировать как автоматом Мили, так и автоматом Мура. Абстрактный синтез микропрограммного автомата по ГСА осуществляется в два этапа: 1. Получение отмеченной ГСА. 2. Построение графа автомата или таблиц переходов и выходов.
СИНТЕЗ АВТОМАТА МИЛИ На этапе получения отмеченной ГСА входы вершин, следующих за операторными, отмечают символами a1, a2,.. по следующим правилам: 1) символом а1 отмечают вход вершины, следующей за начальной, а также вход конечной вершины; 2) входы всех вершин следующих за операторными, должны быть отмечены; 3) входы различных вершин, за исключением конечной, отмечаются различными символами; 4) если вход вершины отмечается, то только одним символом. Ясно, что для проведения отметок потребуется конечное число символов а1,...,am. Результатом первого этапа является отмеченная ГСА, которая служит основой для второго этапа - перехода к графу или таблицам переходов-выходов. Пример ГСА, отмеченной для автомата Мили, представлен на рис. 55.
На втором этапе, из отмеченной ГСА, строят граф автомата или таблицы переходов-выходов. Для этого полагают, что в автомате будет столько состояний сколько символов ai понадобилось при отметке ГСА.
Отмечаем на графе все указанные пути для всех состояний в виде дуг, которым приписываем условия перехода и выходной сигнал, вырабатываемый на этом переходе. Получим граф автомата (рис.55. ).
На этом графе переходам типа а3 ®a4, a5 ® a1 приписывается условие перехода 1, т.к. эти переходы являются безусловными и выполняются всегда, когда автомат попадает в состояние а3 (или а5). На основании отмеченной ГСА или графа автомата можно построить таблицу переходов-выходов. Для микропрограммных автоматов таблица переходов-выходов строится в виде списка и различаются прямая и обратная таблицы. Для данного автомата прямая таблица представлена в табл. 27., обратная - в табл. 28.
Табл. 27.Прямая таблица переходов- Табл. 28.Обратная таблица перехо- выходов автомата Мили дов - выходов автомата Мили
В приведенных таблицах am - исходное состояние, aS - состояние перехода, Х - условие (входной сигнал), обеспечивающий переход из состояния am в состояние as, Y - выходной сигнал, вырабатываемый автоматом при переходе из am в aS.
СИНТЕЗ АВТОМАТА МУРА. Для автомата Мура на этапе получения отмеченной ГСА разметка производится согласно следующим правилам: 1) символом а1 отмечается начальная и конечная вершины; 2) различные операторные вершины отмечаются различными символами; 3) все операторные вершины должны быть отмечены; Пример ГСА, отмеченной для автомата Мура, представлен на рис. 56.
Граф автомата Мура, соответствующий отмеченной ГСА (рис. ), представлен на рис. . Построение его аналогично построению графа для автомата Мили.
Таблицы переходов-выходов автомата Мура представлены в табл. 29 (прямая) и табл. 30 (обратная). Обычно для автомата Мура в таблице переходов-выходов дополнительный столбец для выходных сигналов не используется и выходной сигнал записывается в столбце, где указывается исходное состояние am или состояния перехода aS. Табл. 29.Прямая таблица переходов Табл. 30.Обратная таблица переходов автомата Мура. автомата Мура.
Получением графа или таблиц переходов-выходов заканчивается этап абстрактного синтеза микропрограммного автомата. Как и для конечных автоматов, на этапе абстрактного синтеза можно выполнить минимизацию количества внутренних состояний автомата.
СТРУКТУРНЫЙ СИНТЕЗ МИКРОПРОГРАММНЫХ АВТОМАТОВ Структурный синтез микропрограммных автоматов после получения графа или таблицы переходов-выходов в принципе аналогичен каноническому методу синтеза цифровых автоматов, рассмотренному ранее. Однако существуют и определенные особенности в первую очередь связанные с тем, что для реальных автоматов количество элементов памяти и входных сигналов может достигать десяти и более. Функции возбуждения и выходных сигналов трудно поддаются минимизации да и практически минимизация не дает существенного упрощения этих функций при большом количестве переменных. Поэтому минимизация практически не используется при синтезе микропрограммных автоматов. При выполнении структурного синтеза строят так называемые структурные таблицы переходов и выходов, которые также могут быть как прямыми так и обратными. Рассмотрим этапы структурного синтеза на конкретных примерах. СТРУКТУРНЫЙ СИНТЕЗ АВТОМАТА МИЛИ Выполним структурный синтез микропрограммного автомата Мили, заданного своей таблицей переходов-выходов (табл. 27 или табл. 28). В качестве примера синтез будем выполнять по прямой таблице (табл. 27). 1. В исходном автомате количество состояний М=6, следовательно, число элементов памяти m = ] log 2 M [ = ] log 2 6 [ = 3. Пусть для синтеза используются JK триггеры. 2. Кодируем внутренние состояния автомата, используя для этого карту Карно (рис.57.) и по возможности метод соседнего кодирования. Рекомендуется самостоятельно закодировать состояние с помощью эвристического алгоритма.
3. Строим прямую структурную таблицу переходов-выходов автомата Мили (табл. 31). В данной таблице в столбцах k(am) и k(as) указывается код исходного состояния и состояния перехода соответственно. В столбце функций возбуждения ФВ указывается те значения функций возбуждения, которые на данном переходе обязательно равны 1. Остальные (т.е. равные 0 или принимающие неопределенные значения) не указываются. Это эквивалентно тому, что всем неопределенным значениям функций возбуждения приписывается значение 0, что в общем случае не дает минимальной функции, однако в реальных автоматах минимизация обычно не делается в виду ее неэффективности. Предлагается самостоятельно построить структурную таблицу переходов с указанием всех значений функций возбуждения (в том числе и неопределенных), выполнить минимизацию и сравнить результаты с приведенными ниже. Табл. 31. Структурная таблица переходов-выходов автомата Мили.
4. Для получения функций возбуждения поступаем следующим образом. Выражение для каждой функции получается в виде логической суммы произведений вида aiX, где ai - исходное состояние, X-условие перехода. Для упрощения полученных выражений выполняем все возможные операции склеивания и поглощения:
5. Для получения функций выходов поступаем аналогично:
y4 = a1x1 + a2x3x2 + a3 + a4x2 6. Для построения функциональной схемы автомата по полученным выражениям необходимо либо заменить ai его значениями через Q1Q2Q3 либо получить сигнал, соответствующий ai. Обычно используют второй способ и для получения сигнала ai применяют так называемый дешифратор состояний, на вход которого поступают сигналы с выходов элементов памяти Q1Q2Q3. Кроме того, при построении схемы стараются выделить общие части, встречающиеся в функциях возбуждения или выходных сигналах. В этом случае окончательная система уравнений, по которым строится схема, будет иметь вид:
B = a4x2 ; K1 = a3 + a5; y2 = A + D + C + a5 + E ;
E = a1x1 ; K3 = a6 + C ; F = a1x1 J3 = F+a2x3x2 Функциональная схема автомата, построенная на основании полученных уравнений, представлена на рис. 58.
СТРУКТУРНЫЙ СИНТЕЗ АВТОМАТА МУРА Выполним структурный синтез микропрограммного автомата Мура, заданного своей таблицей переходов-выходов (табл.29 или табл. 30). В качестве примера синтез будем выполнять по обратной таблице (табл. 32). 1. В исходном автомате количество состояний М=7, следовательно число элементов памятиm = ] log 2 M [ = ] log 2 7 [ = 3 Пусть для синтеза используется D-триггеры. 2. Кодируем внутренние состояния автомата, используя алгоритм кодирования для D-триггеров. Количество переходов в данное состояние легко определяется из обратной таблицы: a1 ~ 2, a2 ~ 3, a3 ~ 2, a4 ~ 1, a5 ~ 1, a6 ~ 1, a7 ~ 2. Поэтому коды состояний следующие: a2-000, a1-001, a3-010, a7-100, a4-011, a5-101, a6-110. 3. Строим структурную таблицу переходов - выходов автомата Мура. Табл. 32. Структурная таблица переходов - выходов автомата Мура.
Построение таблицы выполняется аналогично автомату Мили. 4. Выражения для функций возбуждения получаются в виде суммы произведений aiх, где ai-исходное состояние, х - условие перехода.
D2 = a1x1 + a4 + a3x2 + a2x3x2
или A = a3x2 B = a2x3x2
D2 = a1x1 + a4 + A + B
5. Выражения для выходных сигналов автомата Мура получаем, исходя из того, что эти сигналы определяются только внутренним состоянием автомата. y1 = a2 + a4 y2 = a2 + a5 + a7 y3 = a3 + a5 y4 = a3 + a4 + a6 6. Для построения функциональной схемы автомата как и в предыдущем случае используем дешифратор состояний. Схема представлена на рис. 61 . ЗАМЕЧАНИЯ.1. При синтезе микропрограммных автоматов изложенным методом получаемые выражения для функций возбуждения не всегда являются минимальными и в некоторых случаях могут быть упрощены. В частности, можно доопределить функции возбуждения на некоторых наборах единичным значением (а не нулевым, как было ранее) и выполнить все операции склеивания. Например, в синтезированном ранее автомате Мили таким образом можно получить значение k1=1. Рекомендуется в этом убедиться самостоятельно. Для упрощения схем автоматов можно также предварительно упростить ГСА, уменьшив количество вершин или узлов методами, изложенными в / /. Автомат Мили в течении такта сохраняет свое состояние и лишь в конце его переходит в новое. Пока автомат находится в данном состоянии Ai он вырабатывает выходные сигналы y=f(Ai,x), где х - сигналы, подаваемые на вход автомата в течение данного такта. В связи с этим автомат Мили может интерпретировать микропрограмму корректно только в том случае, если для любого перехода выполняется условие независимости логических условий от результатов выполнения микроопераций на данном переходе. Условие независимости нарушается, если на некотором переходе из аm в аs под действием сигнала х с выработкой уi наблюдается функциональная зависимость х = f(уi). В таком случае выполнение микрооперации уi может привести к изменению значения х и автомат, находясь в состоянии аm, и, реагируя на набор входных сигналов, сформирует набор выходных сигналов, не соответствующий микропрограмме. Чтобы избежать этого, можно использовать следующие способы: 1) запомнить значение сигналов х на промежуток времени, равный длительности такта; 2) ввести в автомат дополнительные состояния; 3) реализовать автомат по схеме Мура. Запоминание значений сигналов х в течение такта осуществляется операционным автоматом с помощью дополнительных элементов памяти – триггеров. Интерпретация микропрограммы автоматом Мура рассматривалась ранее. Введение дополнительных состояний иллюстрируется рис. 59 . В исходном автомате (рис. 59.а) есть переходы из аi в аj под действием сигналов х и х с выработкой y1 и y2 соответственно и имеет место х = f(y1, y2). Действительно, введение вспомогательных состояний аk и аl позволяет устранить возможную ошибку в выдаче выходных сигналов. На переходах аi аk или аiаl выходные сигналы не вырабатываются. Переходы аi аk или аiаl являются безусловными с выработкой y1 или y2 соответственно. В таком случае изменение значения х, в результате выполнения микроопераций y1 или y2, не повлияет на выходной сигнал, вырабатываемый автоматом, так как на переходах аi аk или аiаl выходной сигнал уже не зависит от х.
Синтез управляющего автомата
Мура Кроме рассмотренного ранее канонического метода, существуют и другие методы синтеза управляющих автоматов, среди которых наиболее широко используется синтез на базе регистра сдвига. Этот метод позволяет при построении схемы отказаться от дешифратора, т.к. состояния кодируются унитарным кодом. В автомате количество элементов памяти выбирается равным количеству внутренних состояний. В каждый момент времени только один триггер находится в 1, остальные в 0. Обычно при синтезе на базе регистра сдвига используются D-триггеры. Очень эффективен данный метод для так называемых линейных микропрограмм, т.е. микропрограмм без ветвлений (отсутствует логические условия). Рассмотрим пример синтеза управляющего автомата Мура данным методом. Пусть закодированная ГСА микропрограммы имеет вид рис. 60. Разметив данную ГСА для автомата Мура, получаем семь состояний. Следовательно число триггеров m=7. Выполним синтез с использованием D-триггеров. Закодируем состояния унитарным кодом: a1=1000000, a2=0100000,..., a7=0000001. Обратная структурная таблица переходов-выходов для данного автомата представлена в таблице.
На основании структурной таблицы записываем выражения для выходных сигналов yi и функций Di : D1 = a6 + a7 y1 = a2 D2 = a1 y2 = a2 + a3 + a5 D3 = a2 y3 = a4 + a6 D4 = a3 y4 = a4 + a7 D5 = a4 D6 = a5 D7 = a4×x Т.к. состояния автомата закодированы унитарным кодом, то можно отождествить каждое состояние с выходом соответствующего триггера, т.е. принять аi=Qi. Для принятого способа кодирования переход из одного состояния в другое как бы сопровождается сдвигом кода, за- писанного в семиразрядном регистре. Этим и объясняется название метода. Функциональная схема автомата Мура, построенная по полученным уравнениям, приведена на рисунке 62. При определенных навыках синтез автомата Мура на базе регистра сдвига выполняется непосредственно по отмеченной ГСА без построения структурной таблицы переходов-выходов.
|
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9
![]() |
||
НОВОСТИ | ![]() |
![]() |
||
ВХОД | ![]() |
|
Рефераты бесплатно, реферат бесплатно, курсовые работы, реферат, доклады, рефераты, рефераты скачать, рефераты на тему, сочинения, курсовые, дипломы, научные работы и многое другое. |
||
При использовании материалов - ссылка на сайт обязательна. |