Строительный блокнот Корпуса микропроцессорных микросхем Подпрограмм. При выполнении команды RSR содержимое RGO увеличивается на 1 для следующего адреса {RGO+CINRGO), RG1 загружается от входов NA и триггер устанавливается в 1. Регистр RG1 определяет число повторений микрокоманды или подпрограммы. Содержимое RG1, используемого в качестве счетчика циклов, увеличивается до тех пор, пока все его разряды ие будут заполнены единицами (полный счет). В этом случае число повторений, первоначально загружаемое в RG1, может быть дополнением до 2 требуемого числа. Установка триггера в 1 позволяет с помощью команд JSR и RTN повторить подпрограммы и с помощью RPI повторить единичные микрокоманды; RP1 - повторение команды, используется для повторения единичных микрокоманд. В режиме повторения (триггер устанавливается в 1 с помощью команды RSR) RPI хранит константу адреса RGO управляющей памяти и увеличивает на I число повторений RG1. При конечном числе повторений (все 1 в RGJ) триггер устанавливается в О и по команде RPI содержимое RG1 и входов NA, объединенное операцией И, загружается в RGO. Команда RPI выполняет прямой переход по коду нового адреса после того, как последовательность повторения микрокоманд заканчивается и во всех разрядах RG1 содержится 1. Вывод ЕХ используется для заполнения регистра RGt всех микросхем К1800ВУ1. В режиме без повторения (RSQ=Q) команда RPI становится прямым переходом по коду регистра RG1. Выход этого регистра соединяется со входами NA операций И и загружается в RGO. В этом режиме команда RPI используется совместно с JLA для одноуровневой подпрограммы, где адрес возврата (начальный адрес плюс CR1) соединяется операцией И с входами NA\ BRC - переход по условию, является условным переходом по коду входов NA. Разрешение условного перехода определяется вы-ражением ЕХ-(С04 У BR). Если ЕХ (С04 V BR)=0, то BRC выполняет прямой переход по коду NA. Если значение условного перехода равно 1, то содержащийся в RGO адрес управляющей памяти увеличивается на 1 {RGO+CRl-RGO) и программа переходит к следующему шагу. Обычно контрольный разряд вводится на вход условного перехода BR. При соединении нескольких микросхем К1800ВУ1 вывод ЕХ включен так, что все микросхемы реагируют на один и тот же сигнал условного перехода. По управляющему входу С04 разрешается управление входом BR, выбирающим ту микросхему К1800ВУ1, для которой проверяется выполнение условного перехода. Выбранный разряд RG3 может также использоваться для условного перехода; BSR - условный переход к подпрограмме, выполняется, если ЕХ (С04 \/BR)=0. Адрес назначения подпрограммы со входов загружается в RGO, а содержащийся в RGO адрес уве- личивается на 1 и загружается в стек (RO0+ -CRl->-RG4). Если значение условного перехода равно 1, то настоящий адрес управляющей памяти увеличивается на 1 (RGO + CRIRGO). Состоянне триггера не влияет на команду BSR. Однако подпрограмма BSR может быть вложена в последовательность повторяющейся подпрограммы JSRRTN без увеличения числа циклов регистра RG1. Далее используется команда ROC для возврата от перехода к команде BSR; ROC - возврат по условию, является условным возвратом от подпрограммы. Если значение условного перехода ЕХ (С04 V BR)=0, то возврат выполняется загрузкой содержания RG4 в RGO. Если это значение равно 1, то выполняется прямой переход к подпрограмме загрузкой входов NA и RGO. Команда работает независимо от триггера и может использоваться совместно с командой BSR для вложения подпрограммы в повторяющуюся последовательность; BRM - условный переход и переадресация, является переходом по коду входов NA с из-менением адреса с помощью входов BR и EX. В RGO загружается следующая информация RG03=NA3; RG02=NA2; RGONAIEX; RGOO=NAOBR. Необходимо отметить, что сигнал ЕХ инвертируется как модификатор. Изменение адреса разрешает условный переход на несколько направлений. По сигналу С04 переключается модификатор условного перехода. Выполнение одной нз 16 команд MCU проводится согласно условиям, приведенным в табл. 10.19. Возможными источниками информации являются регистры RG1, RG2, RG4, входы шин NA, IB, ОВ и блок приращения и переноса. После выполнения соответствующей команды информация заносится в адресный регистр RGO и может поступать на выходы RG0~RG03 через блок управления выдачей адреса при С05=1. Если СО5=0, то выдача информации нз регистра RGO на внешние выводы запрещена и используется только для выполнения внутренних операций. Регистр повторения RG1 работает как счетчик для повторяющихся единичных микрокоманд нлн повторяющихся подпрограмм команд многократного сдвига, умножении и деления. Кроме этого, регистр RGI может выполнять функции накапливающего регистра адреса управляющей памяти. Регистр команд RG2 используется в основном как регистр команд или регистр кода операции. Источником информации для RG2 является входная шина IB. Работа регистра RG2 (как и предыдущих регистров) контролируется кодом IC0-IC3. Регистр состояния RG3 используется для запоминания условий признака. Регистр может загружаться со входов NA и шины IB при воздействии управляющих сигналов СО0~СОЗ и входа DI (табл. 10.20). Информация с любого разряда RG3 может поступать Коман Управление Условия перехода нлн повторения Выходы регистра или триггера INC JMP JIB JIN JPl JEP JL2 JLA X X X X X X X X X 400+CRl IB-NA IB-NA RG2NA OB-NA 3aipy3ha RGO в RGS RSQ VRIN.EX=0 RSQ УЛ>ЛГ.£Л=/ NA NA Загрузка RGO в RGS Загрузка RGO+CRl RSQ\JRl N EX=Q RSQ\JRIN.EX=\ RG4 RG4 ROl+CRl Разгрузка GS в RGO Разгрузка RGS в RGO RSR RPf RSQ V RlN-EXO RSQV Л/Л-£Х=1 ROO+CRI RGl. NA NA RGI+CRI EX- iCO4yBR) = 0 £X- (C04VBR)=I RGO+CR/ EX-(CO4yBR) = 0 Ш- (C04\JBR)=[ MA RGO+CR 1 Загрузка RGO+CRI EX-{CO4yBR) = 0 £X.(CO?VBR)=/ Разгрузка RGS в RGO C04--=\ C04= 0 RGOONAO BR Ra01=NAlX XEX RQ02=NA? RQ03=NA3 Примечания. 1. /?SQ - выход триггера в блоке повторения; X -состояние ие определено; - состояние не изменяется; RIN - RQ13-RG 12.RG 11-RG10. 2. Установка регистра и RS-трнггеров происходит по положительному фронту синхросигнала. на ВЫВОД расширения EX. Другой функцией RG3 является расширение адреса управляющей памяти путем организации ее в формат слово-страница. Адрес слова в данном случае содержится в регистре адреса, а адрес страницы - в регистре состояния. Третьей функцией регистра RG3 является запоминание всего кода операции или его части. Стек регистров RG4-RG7 используется для хранения адресов возврата нлн обращений к подпрограммам и для запоминания состояния внутренних регистров при обработке с прерыванием. Стек регистров состоит из 16 триггеров с организацией 4X4. Выход каждого триггера одного регистра подключен ко входу триггера того же разряда следующего регистра. Информация записывается в pei-.rp RG4 через внутренние входы OY0-OY3, а в регистр RG7 -через внутренние входы ОХО- 0X3. Состояние регистров стека RQ4~RG7 определяется управляющими сигналами СОб- С08 и соетояиием на ЕХ, RSQ (табл. 10,21). Прн необходимости увеличить разрядность стека можно через внешние шииы IB к ОВ подключить регистры на других микросхемах или объединить параллельно микросхемы К1800ВУ1, Занесение или выдача информации во внутренних регистрах К1800ВУ1 производится через шины IB и ОБ с помощью управляющих сигналов С06-С08 (табл, 10.22), Блок приращения ,ти переноса используется для увеличения иа 1 содержимого регистров RGO, RGI при выполнении команд или повторяющихся микрокоманд, а также для организации параллельной работы нескольких MCU. Блок повторения обеспечивает условия рабо-
RG:iO RG.il RoJy rg.i.i rg.lil rgTi rgH RG3.4 ТЫ И послелопатсльность повторения команд. Триггер RSQ этого блока устанавливается в 1 при повторяющемся и в О при неповторяющемся режимах. Блок следующего адреса под воздействием сигнала условного перехода BR, сигнала расширения ЕХ и сигнала С04 управляет выполнением операции повторения или условного перехода. Выполнение условного пе-рехода определяется выражением £АХ Х{С04 У BR). Состояние вывода ЕХ описывается табл. 10.23, где функция повторения равна RSQ(RG13RG12RGI1RG10). Объединение двух микросхем микропрограммного управления К1800ВУ1 для 16-разрядного микропроцессора показано на рнс. 10.6. Выводы ICO-1СЗ соединены параллельно, и обе микросхемы выполняют одинаковую команду. Параллельно подключен! входы синхронизации SYN и установки SR. Управляющие входы СОО-СОЗ работают независимо в каждой микросхеме и управляют регистрами RG3 отдельно. Регистр RG3 в микросхеме В является регистром адреса страницы управляющей микропрограммной памяти, а в микросхеме А - регистром битов состояния. Вход CRI микросхемы А подключен к напряжению низкого уровня при выполнении приращения на I, а вход CRO микросхемы А выдает сигналы в CR} микросхемы В. Вывод ЕХ является общим и предназначен для выполнения функции условного перехода. Таблица 10.21
Примечание. X - состояние не определено; -сосгоянне не изменяется. аак.
|