Рис. 12 Фрагмент схемы алгоритма
В поле М микрокоманды, описывающей данный фрагмент, записывается код
Адрес | Микрокоманда | 16-ричное | |||
ПЗУ | М | Y | ЛУ | А | представление микрокоманды |
0000 0000 | 0000 1010 | 0000 0101 | 0000 | 0000 0001 | 0A05001 |
0000 0001 | 0000 1101 | 0000 0000 | 0000 | 0000 0010 | 0D00002 |
0000 0010 | 0000 0010 | 0000 0000 | 0000 | 0000 0011 | 0200003 |
0000 0011 | 0100 0110 | 0000 0000 | 0000 | 0000 0100 | 4600004 |
0000 0100 | 0000 0010 | 0000 0000 | 0000 | 0000 0101 | 0200005 |
0000 0101 | 0000 0010 | 0000 0000 | 0000 | 0000 0110 | 0200006 |
0000 0110 | 0001 0110 | 0010 0000 | 0000 | 0000 0111 | 1620007 |
0000 0111 | 0100 0110 | 0000 0000 | 0000 | 0000 1000 | 4600008 |
0000 1000 | 0000 1101 | 0000 0000 | 0000 | 0000 1001 | 0D00009 |
0000 1001 | 0001 0110 | 0010 0000 | 0000 | 0000 1010 | 162000A |
0000 1010 | 0000 0110 | 0000 0000 | 0100 | 0000 1100 | 060040C |
0000 1011 | “Дыра” | в | микро | программе | |
0000 1100 | 0000 1100 | 0000 0000 | 0000 | 0000 1101 | 0C0000D |
0000 1101 | 0000 1011 | 0000 0000 | 0000 | 0000 1101 | 0B0000D |
3.1. Моделирование микропрограммного устройства с программируемой логикой
На рис. 14 показана общая структура микропрограммного цифрового устройства. Исходные данные и результаты вычислений хранятся в ОЗУ. Запись данных DO в ОЗУ проводится по сигналу WR, а чтение данных DI по сигналу RD. Разрядность данных - 8 бит.
Моделирование цифрового устройства с программируемой логикой связано с разработкой на основе СА микропрограммы управления операционным автоматом. Разработанная микропрограмма записывается в ПЗУ управляющего автомата.
Рис. 14 Структура микропрограммного цифрового устройстваМодели операционного и управляющего автоматов реализованы на языке PML системы PCAD [4,5]. Моделирование проводится с использованием языка PC LOGS. Документирование результатов моделирования производится с использованием программы POSTSIM. На рис. 15 приведен шаблон программы моделирования, в которой пользователю необходимо определить лишь содержимое ОЗУ и ПЗУ.
Содержимое ОЗУ и ПЗУ определяется аналогично директивой MEMLOAD языка PC LOGS. Общий формат записи содержимого ОЗУ(ПЗУ) на языке PC LOGS имеет следующий вид:
MEMLOAD <имя ОЗУ(ПЗУ)> HEX/Ан Sн Sн+1 ... /Аi Si Si+1 ... /Aj Sj Sj+1
Допускается использование непрерывного или фрагменти-рованного адресного пространства. В первом случае задается в 16-ричной форме начальный адрес ОЗУ(ПЗУ) - Ан, вслед за которым записывается содержимое ОЗУ(ПЗУ) Sн Sн+1 ..., начиная с адреса Ан. Во втором случае описание каждого фрагмента ОЗУ(ПЗУ) следует за символом / -адрес начала фрагмента Аi и содержимое ОЗУ(ПЗУ), Si Si+1 ..., начиная с этого адреса. Содержимое ОЗУ(ПЗУ), соот-ветствующее неописанным адресам, принимает значение нео-пределенности Х. На рис. טו показана программа моделирования ци-фрового устройства, СА которого приведена на рис. ט. Исходные данные А=25h и В=14h загружены в ОЗУ, начиная с адреса 0. Микропрограмма управления цифровым устройством загружена в ПЗУ также начиная с адреса 0. Содержимое ПЗУ в программе моделирования взято из табл. י. В частности по адресу 0 в соответствии с рис. יא записана микрооперация NOP (0A), упра-вляющие сигналы y1 и у3 (05), отсутствие проверяемых признаков (0) и адрес следующей микрокоманды 01.
lo poss.net
cy 3
ge [0 0] pus d0/1 d1/1 d0/50
ge [0 0] bk d0/3 (d1/1 d0/1) memload el2 hex /00 25 14memload pzu1 hex /00 0A05001 0d00002 0200003 4600004 0200005 0200006 1620007 4600008 0D00009 162000A 060040C /0C 0C0000D 0B0000D
mo hex(RA7 RA6 RA5 RA4) hex(RA3 RA2 RA1 RA0) % hex(m7 m6 m5 m4) >
hex(m3 m2 m1 m0) % hex(y8 y7 y6 y5) hex(y4 y3 y2 y1) >
% hex(ac7 ac6 ac5 ac4) hex (ac3 ac2 ac1 ac0) % hex (r77 r76 r75 r74) >
hex (r73 r72 r71 r70) % hex (r67 r66 r65 r64) hex (r63 r62 r61 r60) >
% hex (r57 r56 r55 r54) hex (r53 r52 r51 r50) % hex (r47 r46 r45 r44) >
hex (r43 r42 r41 r40) % hex (r37 r36 r35 r34) hex (r33 r32 r31 r30) >
% hex (r27 r26 r25 r24) hex (r23 r22 r21 r20) % hex (r17 r16 r15 r14) >
hex (r13 r12 r11 r10) % hex (r07 r06 r05 r04) hex (r03 r02 r01 r00) %% >
n % c % z % v % t %% st %%%%el1/ko
spool on
ty 6
Рис. 15 Шаблон программы моделирования
Для удобства восприятия результаты моделирования представляются в табличной форме, при этом содержимое всех 8-ми разрядных регистров операционного автомата и служебных регистров отображаются в виде двух 16-тиричных цифр. На рис. 16 показаны результаты моделирования по отдельным тактам модельного времени.
Рис. 16 Результаты моделирования
В 1-м такте (cycle step 1:2) устанавливается регистр адреса ПЗУ в нуль (RAH=0 - старшая часть регистра RA и RAL=0 - младшая часть регистра RA). В такте 3 выполняется первая микрокоманда (y1, y3, NOP), что отражается строкой 3:2 c микрокомандой MH=0, ML=5. Результатом ее выполнения является обнуление АС (ACH=0, ACL=0) и формирование значений признаков N, Z, V, T. В 27-м такте моделирование заканчивается, в АС формируется результат (5Eh) и сигнал окончания ST.
4. Микропрограммный управляющий автомат с жесткой логикой
4.1. Абстрактный синтез управляющего автомата
Абстрактный синтез включает следующие этапы:
– построение кодированной СА, описывающей алгоритм работы управляющего автомата;