Проектирование ЭВМ. Довгий П.С - 43 стр.

UptoLike

43
ROMM – микропрограммное ПЗУ с закодированными функциональными
микрокомандами;
Mx0 – мультиплексор условий;
Mx1 – мультиплексор микрокода позволяет сформировать значение нуль,
если выбранное мультиплексором Mx[ifo] значение бита нуль;
DCM – первая ступень декодирования на основе ПЗУ, которое содержит
двоичные коды структурных микрокоманд.
Первый байт команды из программной памяти Code поступает в
адресный преобразователь ADC и фиксируется по синхросигналу в
регистре IR.
Ряд команд содержат в первом байте параметры – Ri, Rj, A
10
-A8, которые
сохраняются в IR.
Количество различимых типов команд в системе команд MCS51 всего
102 и ]log
2
102[=7-разрядность минимального различающего кода команды
Декодер ADC выполнен в ПЗУ, где для всех 256 возможных значений
первого байта сохраняется семиразрядный двоичный код. При выборке код
дополняется тремя нулевыми битами и фиксируется на 10-разрядном регистре
адреса микрокоманд RAMM по синхросигналу Clk. Этот адрес является
началом линейной трассы кодов функциональных микрокоманд
микропрограммы в ROMM и соответствуют выбранному
коду команды. Далее
микрокоманды выбираются последовательно по счетчику (не более 8
микрокоманд).
Количество различимых функциональных микрокоманд существенно
меньше полного их перебора, определяемого длиной и числом кодов полей
структурной микрокоманды. Этот факт позволяет выделить для хранения
двоично-кодированных структурных микрокоманд быструю нанопамять
DCM c широким словом (до 32 и более бит). Так в предлагаемых проектах
количество различимых микрокоманд (структурных или функциональных)
менее 32 и для их адресации в DCM достаточно 5 битов и память ROMM
хранит микропрограммы из 5 битовые кодов микрокоманд.
Структурные микрокоманды, выбранные из DCM, частично
декодируются в отдельные управляющие сигналы (ACC+, SP+, SP-, slA, slB и
др.), а поля адресов мультиплексоров и селекторов декодируются элементами
функциональной схемы проекта.
В течение такта происходит выборка кода
функциональной
микрокоманды из ROMM, выборка структурной микрокоманды из DCM,
декодирование и исполнение микрокоманды. Таким образом, существенная
задержка при выборке и исполнении микрокоманды определяет длительность
такта.
Возможно сокращение длительности такта переходом в
микроконвейерный (совмещенный) режим исполнения и выборки
микрокоманды с дополнительным регистром микрокоманд.
Первая микрокоманда IR=Code[PC++], общая для всех операций,
формируется ROMM по адресу
RAMM=0. Эта микрокоманда выбирает
текущую команду по счетчику РС и сохраняет адрес начала трассы