Задание 2.1 Построить цифровой автомат заданного типа (Мура) для заданной ГСА (рис.2), используя заданный тип триггера (T-триггер). Синтез цифрового автомата, реализующего блок управления, и включает следующие этапы: 1. построение графа выбранного типа цифрового автомата на основе ГСА функционирования имеющегося объекта; 2. составление объединенной кодированной таблицы переходов и выходов цифрового автомата; 3. составления логических выражений для сигналов управления памятью и выходных сигналов цифрового автомата; 4. синтез логических схем на основании полученных логических выражений в заданном логическом базисе. ГСА на рис. 1 преобразуем в граф автомата Мура, приведенный на рис. 2.
Рис. 1
Y1, Y13 A0
Y5 A1
Y21, Y11 A2 0 1 X1 0 X7 X14 1
Y4, Y15, Y10 A3 Y19 A4
0
1 X5
Y31 A5
Y11, Y10, Yk A6
Рис. 2 Составим объединенную кодированную таблицу переходов и выходов цифрового автомата на основе всех возможных путей из всех вершин графа автомата. При формировании этой таблицы использовалась кодировка состояний цифрового автомата двоичными эквивалентами их индексов, а разряды кода состояния обозначены как Q1Q2Q3. В качестве элемента памяти использован T-триггер. № Начало пути Конец пути Логическое условие Выход. сигнал Управление памятью П.п Aн Код Aн Q1Q2Q3 Ак Код Aк Q1Q2Q3 qT1 qT2 qT3 1 2 3 4 5 6 7 8 9 10 1 A0 000 A1 001 1 Y5 0 0 1 2 A1 001 A2 010 1 Y21, Y11 0 1 1 3 A2 010 A2 010 x̅1 x̅7 Y21, Y11 0 0 0 4 A3 011 x̅1 x7 Y4, Y15, Y10 0 0 1 5 A4 100 x1x̅14 Y19 1 1 0 6 A3 011 A2 010 x5 Y21, Y11 0 0 1 7 A5 101 x̅5 Y31 1 1 0 8 A6 110 1 Y11, Y10, Yk 1 0 1 9 A4 100 A2 010 x5 Y21, Y11 1 1 0 10 A5 101 x̅5 Y31 0 0 1 11 A6 110 1 Y11, Y10, Yk 0 1 0 12 A5 101 A6 110 1 Y11, Y10, Yk 0 1 1
На основании составленной таблицы логические выражения для выходных сигналов и сигналов управления памятью имею вид: y5 = Q̅1Q̅2Q3; y21 = Q̅1Q2Q̅3; y11 = Q̅1Q2Q̅3 + Q1Q2Q̅3; y4 = Q̅1Q2Q3; y15 = Q̅1Q2Q3; y10 = Q̅1Q2Q3 + Q1Q2Q̅3; y19 = Q1Q̅2Q̅3; y31 = Q1Q̅2Q3; yk = Q1Q2Q̅3; qT1 = Q̅1Q2Q̅3x1x̅14 + Q̅1Q2Q3x̅5 + Q̅1Q2Q3 + Q1Q̅2Q̅3 (5, 7, 8, 9); qT2 = Q̅1Q̅2Q3 + Q̅1Q2Q̅3 x1x̅14 + Q̅1Q2Q3x̅5 + Q1Q̅2Q̅3x5 + Q1Q̅2Q̅3 + Q1Q̅2Q3 (2, 5, 7, 9, 11, 12); qT3 = Q̅1Q̅2Q̅3 + Q̅1Q̅2Q3 + Q̅1Q2Q̅3x̅1x7 + Q̅1Q2Q3x5 + Q̅1Q2Q3 + Q1Q̅2Q̅3x̅5 + Q1Q̅2Q3 (1, 2, 4, 6, 8, 10, 12). После записи дизъюнктивной логической функций для сигналов управления разрядами памяти в скобках приведен перечень кодов используемых в этом выражении конъюнкций (номеров строк).
На рисунке приведена логическая схема, реализующая заданный цифровой автомат. Обратные значения условий х1, х5, х7, х14 формируются с помощью схем НЕ. На схеме каждый выход конъюнктивной части ПЛМ (горизонтальные линии) помечен кодом конъюнкции (номером строки в таблице), формируемой на этом выходе.
Задание 2.2 Написать микропрограмму, соответствующую заданной ГСА, с учетом заданных множества микроопераций (Y = 125), множества проверяемых условий (Х = 15), ёмкости запоминающего устройства (ЗУ = 2000) и начального адреса размещения микропрограммы (МП =590) в ЗУ. В каждом адресе запоминающего устройства может храниться 16 бит информации. Обозначение ук соответствует микрооперации, обозначающей последнюю микрокоманду в микропрограмме. Если это допускает длина микрокоманды, использовать модификатор дисциплины перехода. Исходя из характеристик управляемого, объекта следует: длина кода для кодирования микроопераций равна к=7, так как количество выполняемых в управляемом объекте микроопераций равно 125 (125 < 27); длина кода для кодирования условий равна четырем (т.е. р = 4), так как количество проверяемых условий в управляемом объекте равно 15 (15 <24); длина кода адреса равна 11, так как количество адресов в памяти, учитывая, что длина адресуемой ячейки равна 16 бит, т.е. двум байтам, равно 2000 (2000 =<211). Таким образом, формат микрокоманд для данного управляемого объекта имеет вид, приведенный на рисунке 1.
Рис. 1
Формат операционной микрокоманды (МКО) имеет длину 16 бит и включает: поле типа микрокоманды (Т), имеющее длину в один бит и занимающее 0-ой разряд микрокоманды; поле первой микрооперации (Y1), которое занимает разряды с 1-го по 7; поле второй микрооперации (Y2), которое занимает разряды с 8-го по 14; поле микрооперации ук, которое используется только в последней микрокоманде для указания завершения выполнения микропрограммы. Формат микрокоманды перехода (МКП) имеет длину 16 бит и включает: поле типа микрокоманды (Т), имеющее длину в один бит и занимающее 0-ой разряд микрокоманды; поле проверяемого условия (Х), которое занимает разряды с 1-го по 5; поле адреса (А), которое занимает разряды с 6-го по 15. При составлении микропрограммы с помощью микрокоманд необходимо реализовать все вершины, имеющиеся в ГСА, и обеспечить необходимые ветвления процесса.
Микропрограмма, реализующая приведенную ГСА, имеет вид, приведенный в табл.1.
В приведенной таблице: в первой графе фиксируется номер строки; во второй графе приводится номер вершины, реализуемой микрокомандой этой строки; в третьей графе указан в двоичном коде адрес расположения данной микрокоманды в запоминающем устройстве; в четвертой графе располагается код микрокоманд; в пятой графе указаны номера вершин - ссылки, адреса которых должны быть указаны в данной команде перехода. В приведенной микропрограмме кодировка микроопераций и проверяемых условий осуществлена по их индексам в двоичном коде. Подчеркнутые коды адресов в микрокомандах перехода заполняются после записи последней строки формируемой микропрограммы, используя коды, соответствующие вершинам-ссылкам, указанные в графе «Адрес» строк.