Арифметическое устройство с микропрограммным управлением
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Номер патента: 1541594
Авторы: Горохов, Коротков, Малахов, Смирнов, Шек-Иовсепянц
Текст
(51)5 С ИТЕТ РИТИ ГОСУДАРСТВЕННЫПО ИЗОБРЕТЕНИЯПРИ ГКНТ СССР ОБРЕТЕНИ ИСАНИ ДЕТЕЛЬС К АБТОРСНО.Смирнов681.325(088,8 А.Шекхов е лектр машин в: ованираэМ.: роектийств изацие рис.З рядно-мо Мир, 198 ИФМЕТИЧЕСКОЕ УСТРОЙСТВО СОГРАММНЫМ УПРАВЛЕНИЕМобретение относится к вычой технике и может бытьано при проектировании ариких устройств вычислительЦель изобретения - повышеействия основных команд иопераций деления при односокращении оборудования. 54) АРМИКРОП 57) И лител льз ф ых метичесмашин.быстрод командменно относится к вычислипри одновреИзобртельной тен ехн е и может быть ис ектировании арифм тв вычислительных л дования,ы схемы арис микропро и"зованоческихшин трои а фиг.З "го узла выбоателя разряЦе.льодей тения - повышени ыполнения основн твия(56) Самофалов К.Г. ровые вычислительные Вища школа, 1976,Мнк Дж., Брик Дж. микропроцессорных усдульной орга 4, с. 152-162,ЯО 15415 ройство содержит арифметико-логический блок, выполненный из М вычислительных ячеек и узла ускоренногопереноса, шинный формирователь,контроллер состояний, регистр адресапамяти, два узла выборки операндов,каждый из которых содержит соединенные мультиплексор адреса и регистрадреса, и блок микропрограммного управления, состоящий иэ регистра команд,дешифратора команд, дешифраторапрерывания, узла микропрограммногоуправления, узла памяти микроко-,манд, первого регистра микрокоманд и узла обработки прерываний, а также связи между укаэанными элементами согласно чертежу. Новым является введение в блок микропрограммного управления регистра адреса микрокоманд, второго регистрамикрокоманд, дешифратора битовыхсигналов и формирователя разрядовчастного. В узел выборки операндоввведен дешифратор адреса, включенныймежду вторым выходом мультиплексора адреса и вторым входом регистраадресаФормирователь разрядов частного содержит дешифратор частногои дешифратор адреса, 9 ил 7 табл,манд и команды деления менном сокращении оборНа фиг.1 и 2 показа метического устройства граммным управлением; н структурные схемы перво ки операндов и формировТаблица 7 Выход Входы управления11 10 9 О О 1 1 00 01 02 03 04 05 06 Р 7 0 О 0 О 0 1 О 0 1 35 40 45 50 55 вход 2 - значение старшего разряда делимого остатка; вход 3 " значение признака "Деление"," выход - значение младшего разряда (Ор) функции управления "Сдвиг" (4-й разряд РМК 20) .Состояние входных и ныходных сигналов ДШЧ 35 (мультиплексор 8 - 1) показано в табл.7. П р и м е ч а н и е, 00-Р 7 - гоммутируемые на выход входные сигналы;00-03 - сигналы низкого уровня; 01 и 02 " высокого уровня; 04 и 05 не комиутируются; 06 и Р 7, - текущее значение нулевого разряда функции "Сдвиг" (4-й разряд РМК 20). Во время выполнения цикла "Деление" производится декремент содер" , жимого счетчика циклов и его анализ.Производится передача управления на (йовтор ее выполнения при 1 И ч цикл0 и на выполнение действий оператора 12 при выходе из цикла "Деление" при ВС, цикл. = О.Необходимо дать разъяснение принципа приема и обработки сигналов прерынаний УОП 22. Узлом 22 в течение выполнения текущей микропрограммы команды принимаются и запоминаются сигналы прерываний от ЦВМ. Узел 22 осуществляет обработку прерываний согласно присваиваемому Йм приоритету. Наивысший из принятых сигналон прерываний преобразуется в 3- разрядный вектор, поступающий с первой группы выходов УОП 22 на информационные входы ДШП 15. Выборка по адресу вектора разрешается после выполнения микропрограммы команды в момент загрузки начального адре 10 15 20 25 30 са, следующей рз ДШК 16, С второи группы выходов РМК 20 поступает управление выбора и загрузки адреса и микрокоманды иэ трех возможных источников; с пятой группы выходов РМК 20, с выходом ДШП 15 и ЛШК 16.Состояниявыходов этих источников в любой момент времени таковы, что активным может быть только один, а остальные должны находиться в состоянии высокого импеданса (отключены), возможно отключение и всех трех источников. Если с второй группы выходов УОП 22 вырабатывается по 3-разрядной шине сигнал "ПРЕР", сви" детельстнующнй о наличии требования хоть одного прерывания, происходит определенная коммутация выходов тристабильных источников адре" са микрокоманды ДШП 15, ДШК 16, РМК 20, а именно активным становится выход ДШП 15.Результатом является то, что вместо загрузки начального адреса следующей команды из ДШК 16 происходит загрузка начального адреса микропрограммы обработки прерываний сигнала прерывания высшего приоритета из принятых. Концом выполнения микропрограммы обработки прерывания является вновь микрокоманда загрузки начального адреса микрокоманды из ДШК 16. Если прерывания отсутствуют, то происходит переход на выполнение следующей команды, поступающей из регистра команд. 14,Формула изобретения Арифметическое устройство с микропрограммным управлением, содержащее арифметико-логический блок,содержащий И вычислительных ячеек, узел ускоренного переноса, шинный формирователь, контроллер состояний, регистр адреса памяти, два узла выборки операндов, каждый из которых содержит мультиплексор адреса и регистр адреса, и блок микропрограммного управления, содержащий регистр команд, дешифратор прерываний и дешифратор команд, узел микропрограммного управления, узел памяти микрокоманд, первый регистр микро- команд и узел обработки прерываний, причем шина данных устройства соеди 21 1,541594 225 5 20 25 30 Э 5 40 45 50 55 иена с информационным входом регистра команд и первым информационным входом шинного формирователя, информационные выходы которого соединены с информационными входами И вычислительных ячеек, информационные выходы которых соединены с информационными входами регистра адреса памяти, выходы которого являются шиной адреса устройства, первый и второй выходы двунаправленной цепи сдвига д-й вычислительной ячейки (где1,2И) соединены с первым и вторым двунаправленными входами сдвига (+1)-й вычислительной ячейки соответственно, первый и второй двунаправленные входы сдвига первой вычислительной ячейки соединены с первым и вторым двунаправленными выходами сдвига соответственно контроллера состояний, третий и четвертый двунаправленные выходы сдвига которого соединены с первым и вторым двунаправленными выходами сдвига Я-й вычислительной ячейки, первый, второй и третий выходы признака состояний первой вычислительной ячейки соединены с первым, вторым и третьим входами признаков условного перехода контроллера состояний, выход переноса которого соединен с входом последовательного переноса И-й вычислительной ячейки и с входом переноса узла ускоренного переноса, группа информационных входов которого соединена с входами последовательного переноса х-х вычислительных ячеек и выходами распространения и разрешения переноса (+1)-х вычислительных ячеек, первая группа выходов регистра команд соединена с группой информационных входов дешифратора команд, группа выходов которого соединена с первой группой адресных входов узла микропрограммного управления, вторая группа адресных входов которого соединена с группой выходов дешифратора прерываний, информационный вход которого соединен с .выходом вектора узла обработки прерываний, вторая и третья группы выходов регистра команд соединены с управляющими входами мультиплексоров адреса первого и второго узлов выбора операндов соответственно, выходы которых соединены с информационными входами соответствующего регистра адреса, выход условия перехода контроллера состояний соеди -нен с входом разрешения выборки адреса узла микропрограммного управления,вход прямых тактовых сигналовустройства соединен с синхровходами контроллера состояний, узла микропрограммного управления, регистров адреса первого и второго узловвыбора операндов, выходы которыхсоединены с первым и вторым адресными входами соответственно всехвычислительных ячеек, о т л и ч а -ю щ е е с я тем, что, с целью повышения быстродействия выполнения основных команд и команды операцииделения при одновременном сокращении оборудования, в блок микропрограммного управления введены регистрадреса микрокоманд, второй регистр микрокоманд, дешифратор битовых управляющих сигналов и формировательразрядов частного, содержащий дешифратор адреса и дешифратор частного,в первый узел выбора .операндов введен дешифратор адреса, первый информационный вход которого соединенс выходом мультиплексора адреса первого узла выбора операндов, выходдешифратора адреса первого узла выбора операндов соединен с входом разрешения записи регистра адресапервого узла выбора операндов, выходузла микропрограммного управления соединен с информационным входом регистра адреса микрокоманд, выходкоторого соединен с адресными входами узла памяти микрокоманд, выход которого соединен с информационнымивходами первого и второго регистровмикрокоманд, синхровход узла микропрограммного управления соединен ссинхровходами регистра адреса микрокоманд, узла памяти микрокоманд, первого регистра микрокоманд и всех вычислительных ячеек, вход инверсныхтактовых сигналов устройства соединен с синхровходом второго регистрамикрокоманд, первая группа выходов первого регистра микрокоманд соединена с входами микрокоманд всехвычислительных ячеек, вторая группавыходов первого регистра микрокомандсоединена с входами узла обработкипрерываний, выходы сигнала прерывания которого соединены с управляющими входами дешифратора прерываний,дешифратора команды и первого регистра микрокоманд, вход установки в23 начальное состояние которого соединен с входом установки устройства,третья группа выхоцов первого регистра микрокоманд соединена с входами управления приемом данных, четвертая группа выходов. первого регистра микрокоманд соединена с управляющими входами узла микропрограм"много управления, третья группа адресных входов которого соединена спятой группой выходов первого регистра микрокоманд, шестая группа выходов которого соединена с входом константы шинного формирователя, входадреса которого соединен с информационным входом регистра адреса па"мяти, управляющие входы которого соединены с первой группой выходов второго регистра микрокоманд и с входами управления адреса шинного формирователя, седьмая группа выходов первого регистра микрокоманд соединенас первой группой входов микрокомандконтроллера состояний, вторая группавходов микрокоманд которого соединена с второй группой выходов второгорегистра микрокоманд, третья группа выходов которого соединена с входами дешифратора битовых управляющихсигналов, первый выход которого соединен с входом разрешения записи регистра команд, выход знакового раэряда которого соединен с первым управляющим входом дешифратора частного, второй управляющий вход которого соединен с первым информационным 1594 24входом дешифратора адреса формирователя разрядов частного, вторым входом дешифратора адреса первого узла 5выбора операнда и вторым выходом дешифратора битовых управляющих сигналов, четвертая и пятая группы выходов второго регистра микрокоманд соединены с информационными входамимультиплексоров адреса первого и второго узлов выбора операндов соответственно, выходы регистров адресапервого и второго узлов выбора операнда соединены с первыми и вторымивходами адреса соответственно всехвычислительных ячеек, выход младшего разряда первого регистра микрокоманд соединен с первым, вторым, третьим и четвертым информационными 2 О входами дешифратора частного, пятыйи шестой информационные входы которого соединены с входом логическойединицы устройства, вход логическогонуля устройства соединен с седьмым 25 и восьмым информационными входамидешифратора частного, третий управляющий вход которого соединен с выходом дешифратора адреса, формирователя разрядов частного, второй ин" 30 формационный вход которого соединенс третьим информационным входом дешифратора адреса первого узла выбораоперандов и вторым двунаправленнымвходом сдвига первой вычислительнойячейки, выход дешифратора частногосоединен с входом микрокоманды сдвига контроллера состояний,1541594 й - (С +С) дов частного; на Фиг,4 - формат микрокоманды; на фиг.5 - схема органиэации микропрограммного управления; на Фиг.б - временная диаграмма орга"ниэации микропрограммного управления;.на фиг.7 и 8 - алгоритмы деле" ния; на фиг.9 - содержание алгоритма выполнения цикла "Деление".Арифметическое устройство (фиг.1 и 2) содержит арифметико-логический блок 1 (АБ), выполняющий арифметические и логические операции над опе-, рандами; блок 2 микропрограммного управления (БМУ), управляющий рабо" той АБ.АБ 1 содержит арифметико-логический узел 3 (АЛУ), состоящий из вычислительньж ячеек 4-7 (1-И) (больших интегральных схем, например, БИС.1804 20 ВС 1); узел 8 ускоренного переноса (2 УУП) (БИС 1804 ВР 1), служащий для органиэации ускоренного переноса между ячейками АПУ; контроллер 9 состояний (КСС) - (БИС 1804 ВР 2), служащий для связи сдвиговых элементов АЛУЗ, управления сигналами перенЬ- са, записью, считывания и модификации признаков состояния, выработки "флага" (сигнала передачи управления) для органиэации ветвлений по микрокоманде; шинный Формирователь 10 (ШФИ), служащий для организации обмена информацией интерфейсной шине; регистр 11 адреса памяти (РАП), предназначенный для хранения адреса запоминающего устройства во время операций выборки или записи информации; первый узел 12 выборки операндов (УВО) и второй узел 13 выборки операндов.Блок 2 микропрограммного управления (БМУ) содержит регистр 14 команд (РК), служащий для храненияво время выполнения каналом информации о команде дешифратор 15 векторов прерываний (ДШП) - (БИС 555 РТ 7(2 Кх 8), перекодировщик кодов векторов прерываний в начальные адресасоответствующих микропрограмм обработки прерываний; дешифратор 16 команд (ДШК), представляющий собойпостоянное запоминающее устройство,дешифрирующее код операций. в начальный адрес микропрограммы этой операции; узел 17 микропрограммного уравления (УМУ) - (БИС 1804 ВУ 4), вы-рабатывающий следующий адрес микрокоманды в зависимости от сигнала "Г" 4управления ("Ьаг") устройства КСС 9;регистр 18 Формирования адреса (старшие разряды), служащий для храненияадреса микрокоманды во время выборки ее нэ узла памяти; узел 19 памяти микрокоманд (УПМК) - четыре восьмиразрядные секции БМС 556 РТ 16 (8 Кхх 8); первый регистр 20 микрокоманд(РМК) - конвейерный регистр, служащий для хранения микрокоманды на время ее выполнения (32 разряда) синхронно с сигналом "Т"; второй регистр 21 микрокоманд (РМК) - конвейерный регистр, служащий для хранения микрокоманды и время ее выполнения (32 разряда) синхронно с сигналом Т; узел 22 обработки прерываний (УОП) - (БИС 585 ИЭ 14), служащийдля управления приоритетами уровнейпрерываний, приема сигналов прерываний и Формирование их векторов; дешифратор 23 битовых управляющих сигналов (ДШБС), формирователь 24 разрядов частного (ФРЧ), шину 25 данных и шину 26 адреса, источник 27постоянного тока; вход 28 тактовыхпрямых сигналов; вход 29 тактовых инверсных сигналов; вход 30 "УстановкаУзел 12 содержит (фиг.З) мультиплексор 31 адреса, дешифратор 32 адреса и регистр 33 адреса и отличается от узла 13 наличием дешифратора 33 адреса. Формирователь разрядов частного содержит дешифратор 34адреса и дешифратор 35 частного,вход 36 логической "1", вход 37 логического "0",Для синхронизации временных процессов информация об адресе микрбкоманды на выходе регистра 33 должна быть синхронна с работой АЛУ 3.С этой целью прием адреса по входуРА стробирован синхроимпульсом Т, стробирующим и работу АЛУ 3. Дешифратор 32 нулевого разряда адреса (ДША) узла 12 эмулирует нулевой разряд адреса д в зависимости от входных сигналов С 1-СЗ по Форму- ле где С С и СЗ - входы дешифратора 32;Й - выход дешифратора 32,154 1594 Р 1 ынрсконаида 1, . У о такт деления1. 0 ередача уяраВления по услоВиесодермивгоесчепг чик,р циклсд/яактоВ делениЮ.г, Слипнись Аниного/остатка и делителя(3 елищелф йрсрнирсбан операторон б или В(.,г, Щиг Вас на 1 раюряд 3 еиимого/остатва арсрнирсВанием Ю мфадигем разрядеийуащего агрба частного пс рещлимаюяу5 ьтслнвния предыдущего пганпа деления,Ф. Декренент счетчика тактоВ деления Ииярсясманда 2, йф Ы таят деления1 Рсрнирсание сле 3 ующего по номеру адресамикрокснандн и срормиробанному Ю спер. Я,1.Я. Сложение делимсгс/остатка и деяителг(селителг срормиробан сператорои 5 ыли б(.г. Сооиг слебс на 1 рагряд делиного/остаткас рормиройаниен Ю нладщен рагрядюследующего рагрвда часпгного по рещягтатусьпслнения предыдущего такта деления Ю Лнавиг число таврог оеления ФФцг, У Составитель Н.МаркеловаТехред М,Ходанич Корректор М.СамборскаяфЗаказ 280 Тираж 563 Подписное.ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР113035, Москва, Ж, Раушская наб., д, 4/5 Редактор А.Козориз Производственно-издательский комбинат "Патент", г. Ужгород, ул. Гагарина, 101Таблица истинности состоянийвходных и выходных сигналов ДША 32представлена в табл.1. Таблица 11 Х 0 1 1 Х Х 0 1 0 1 0 1П р и м е ч а н и е, Х соответствует любому значению (О или. 1); ДША 34 служит для устранения генерации эа счет положительной обратной связи входов и выходов регистров сдвигателей РОН и Я АЛУЗ. Таблица 2 Эмулируемоезначение адресаРОН Вход узла(старший разряд РОН АЛУ 3) Четное (14)Нечетное (15) 0 1 П р и м е .ч а н и е. Исходное эна.чение РОН АЛУ 3, указанное в микрокомандах цикла деления нечетное,например 15. 1Формат микрокоманды предложенного АУ показан на фиг.3. Слово микрокоманды содержится в регистрах РМК 20, РМК 21 (0-31 и 32-63-й разряды микрокоманды соответственно). Разряды в регистрах объединяются в поля управления устройств (всего девять полей), Количество полей микрокоманды (0-63) соответствует разрядности выхадов блоков регистров РМК .20 и РМК 21На входах 1-4 дешифратора 34 реализована комбинация кода 0110 с постоянным источником тока (+5 В).В каждой команде "Деление" (фиг,3) под управлением РОН АПУ 3 старшего разряда регистра-сдвигателя (выход 9 ячеек 4 АЛУ 3), содержащего значение 16 (старших из 32-х) разрядов делимого остатка, эмулируется четный/нечетный адрес РОН АЛУ 3 согласно табл.2. Поля управления регистра РМК 20(0-3 1-й разряды микрокоманды): первое поле управления (23-31-й разря 5ды МК) - управление функциями АЛУ3; второе поле управления (20-22-йразряды МК) - управление загрузкойначальных адресов микропрограмм команд (ДШК 16), векторов микропрограмм обработки прерываний (ДШП 15),обратных адресов микрокоманд (РМК20); третье поле управления (12-15-йразряды МК) - управление приемомданных ШФИ 10 с шины интерфейса 25;четвертое поле управления (16-19-йразряды МК) - управление функциямиформирования адреса микрокомандыУМУ 17; пятое поле управления - формирование микрокоманды трех парал 20 лельных форматов; первый формат(О-Й разряды МК) "Адрес" - формирование константы адреса УКУ 17;второй формат (О-й разряды МК)"Константа" - формирование констан 25 ты как операнда АЛУ 3;третий формат(О-й разряды МК) "Сдвиг" - формирование функций сдвигов КСС 9.Использование многоформатностимикрокоманды (употребление отдель 30 ных разрядов и полей (слова) микрокоманды для формирования функций разрядов и полей (слова) микрокомаидыдля формирования функций управленияразличных устройств) позволяет сократить необходимую длину словамикрокоманды. Например, в рассматриваемой структуре БМУ необходимаядлина слова микрокоманды сокращается по 15 разрядов,10 Поля управления регистра РМК 21:первое поле управления - управлениеузлами 12 и 13 АЛУ 3 (48-59-й разряды МК) - разделяется на управление узла 12 (48-53-й разряды МК),на управление узла 13 (54-59-й разряды МК), 50-53-й и 56-59-й разрядыМК первого поля участвуют в выбореномера регистра через порты А и. ВАЛУ 3 и 48, 49 и 54, 55-й разрядыМК в выборе источника операнда вАПУ 3; второе поле управления - управление ДШБ 23 (60-63-й раФфядыМК), служащие для формирования шестнадцати битов признаков управления55 микрокоманды третье поле управления - управление записью признаковсостояния и формирования флага КСС9 (32-44-й разряды МК); четвертоеполе управления - формирование при 154159410 15 20 25 30 35 40 45 50 55 знаков интерфейса служащих сигналами сопровождения инфогмации интерфейса и управления работой ШФИ 10 иРАП 11 (45-47-й разряды МК) .В структурной схеме организациимикропрограммного управления (Фиг,5)показаны взаимосвязи основных потоков инФормации УСУ 2 и АУ 1 междублоками УМУ 17, РАМК 18, УПМК 19,РМК 20, РМК 21 узлов 12 и 13, АЛУ3 и КСС 9,С выхода УМУ 17 по 12-разряднойшине адрес микрокоманды поступаетна первую группу входов РЛМК 18. Кодадреса микрокоманды Фиксируетсяпередним фронтом строба Т по первому входу РАМК 18. Временный стробТ в . сигнал с периодом 0,5 мкс, скважностью 2. Временной сигнал Т - инверсный сигнал Т.С выхода РАМК 18 12 старших разрядов адреса с микрокоманды поступают на вход. узла 19. Туда же под"соединен сигнал Т; являющийся в этомслучае нулевым (младшим разрядомадреса), Поэтому за период прохождения сигнала Т дважды будет выбираться из узла 19 информация по 32-раз:рядной шине. по нечетному, а затем почетному адресу. Считанная информацияиз УПМК 19 записывается на первыегруппы входов регистров РМК 20 иРМК 2 1 в момент переднего Фронтасигналов Т и Т, поступающих на первые входы регистров. Информация спервой группы выходов РМК 21 о выборе источников операндов, сдвинутая на полтакта вперед относительно.такта работы АЛУ 3, поступает навходы МПА узлов 12 и 13 и синхрониэируется стробом Т.С выбранными узлами 12 или 13по четырехраэрядным входам адресаячеек 4-7 операндом производятсяарифметические и логические операции в ЛЛУ 3. Результатом операцийявляется выборка признаков состояния с выходом признака состоянийячеек АЛУ 3, поступающи соответственно на входы признаков условияперехода КСС 9 для хранения и модификации.Результатом после. обработки сигналов состояния на 13-раэрядной шине (третья группа выходов РМК 21),поступающих на вход микрокоманд КСС9, является выработка сигнала Г навыходе условия перехода КСС 9, поступающего в узел 1 7 на вход (СС). Привыработке сигнала Г с выхода КСС 9информация по 12-разрядной шине спятой группы выходов РМК 20 проходитпо первой группе входов в узел 17как информация следующего адреса МК.В случае отсутствия сигнала Г отКСС 9 12-разрядный адрес иэ УМУ 17Формируется в зависимости от кодовой комбинации на 4"разрядной шиневходов в узел 17.Рассмотрим сущность взаимодействияблоков 1 и 2,Начало работы инициируется сигналом .Установка", поступающим на входРМК 20, по которому адрес микрокоманды с пятого выхода регистра 20записывается синхронно с сигналомТ эа два такта через узел 17 в РАМК18, Это и является исходным состоянием для начала работы устройства,Адрес МК формируется на входеузла 19 последовательно за периодсигнала Т дважды: в нечетный и четный полупериоды, отличающиеся междусобой на единицу младшего разряда,Информация, выбранная по нечетномуадресу, записывается в РМК 21 по сигналу Т,а по четному в РМК 20 - посигналу Т. Информация, хранящаяся врегистре РМК 20, управляет работойАЛУ 3. Номер регистра общего назначения (РОН) АЛУ 3 вырабатываетсяузлами 12 и 13 синхронно сигналу Т.Пунктирами на фиг.4 показано прохождение информации одновременно длятрех последовательных значений следующего адреса микрокоманд (А А + 1,А+ 2).В момент интервала времени Х происходят следующие действия.Под управлением регистров 20 и 21выполняются арифметические или логические операции в АЛУ 3 для МК А,формируются по ее результатам признаки слова состояния процесса изаписываются по концу интервала времени в КСС 9, Под управлением регистра РАМК ,8 и признака Т дваждывыбираются нечетный, затем четныйадрес МК "А+1") информация из ЗУМК19 и по окончании интервала времениХ записывается соответственно в РМК21 (нечетный адрес) и РМК 20 (четный адрес), Под управлением 4-разрядной шины с четвертой группы выходов РМК 20 в УМУ 17 формируется следующий адрес выборки микрокомаиды9 15А+2 и по окончании интервала времени Х записывается в РАМК 18.Динамику формирования следующегоадреса микрокоманды, работу АЛУ иКСС поясняет временная диаграмма,представленная на фиг.6, на которойпо вертикали обозначены сверху внизномера циклограмм, по гориэонтали -длительности и виды циклограмм с выделением интервала времени Х.На циклограммах 1 и 2 показана последовательность синхроимпульсов Ти Т, синхронизирующих работу устройства. На циклограммах 1-10 рассмотрена работа последовательности микрокоманд от Адо А+5.Предположим, что момент времениХ соответствует выполнению микрокоманды А по циклограмме 5 в АЛУ 3.Тогда в регистре РМК 20 (циклограммы 3 и 4) существует информация, управляющая работой А-й микрокоманды, а в регистре РМК 21 в течение первого полупериода существуетинформация для А-й микрокоманды, ав течение второй половины периодадля А+ 1-й микрокоманды. В то же время под управлением РАМК 18, содержащим информацию о номере микрокоманды А+1 (циклограмма 9), выбирается из УП 19 (циклограмма 7) нечетный, а затем четный адрес А+1-й микрокоманды,Выбранная информация, соответствующая А+1-й микрокоманде, иэ УПМК 19по нечетному адресу записывается вРМК 21 (циклограмма 4) и по четномуадрЕсу - в РМК 20 (циклограмма 3).Номер РОН АЛУ 3, содержащий операнд,необходимый для выполнения операцииАЛУ, хранится в узле 12 или 13 синхронно с работой АЛУ 3 (циклограмма10) . Из временной диаграммы (фиг.6) и структурной схемы организации управления (фиг.5) видно, что в предложенной схеме реализован конвейер на "2" выработки следующего адреса микрокоманды, т.е. когда выполняют" ся действия под управлением микро- команды А в АЛУ 3, под управлением РАМК 18 выбирается иэ УПМК 19 информация А+1-й микрокоманды, а в УМУ 17 вырабатывается адрес А+2-й микрокоманды, Совмещение процесса выработки, следующего адреса для микрокоманд А, А+ 1, А+2 создает воз 4159410можность значительного сократНИ%времени его выполнения,Двукратная выборка иэ УЛМК заодин такт позволяет в два раза сокра.тить количество микросхем УПМК 19.Временной такт (при двукратной выборке информации из ЗУМК 19) уменьшается с Т = 300 нс до Т = 250 нсв конкретном примере реализации.На фиг.7 и 8 приведены алгоритмы выполнения операции деления (способ деления - без восстановленияостатка).Оператор 1 выполняет следующиедействия; устанавливает необходимоечисло циклов (равное количествуразрядов делителя в счетчике цикловУМУ 17; иэ внешней памяти выбирают 20 ся значения делимого (двойной длины - 32 разряда) и делителя (16 разрядов); делимое размещается в регистрах-сдвигателях РОН и ЯАЛУ 3; делитель в другом регистре РОН АЛУ 3.25 Операторы 2 и 3 по значению делителя У = 0 или делимого Х = 0 передают управление на выполнение действий оператора 12, формирующегопризнаки слова состояния по результатам выполнения операции деления,при значениях операндов УО,Х 1 0передается управление на оператор 4.Оператор 4 по значению старшегознакового разряда делителя переда 35ет управление на оператор 5 в случае Зн У = 1, или на оператор 6 вслучае Зн У = О.Оператор 5 выполняет подготовительные операции по размещению в40 двух соседних регистрах РОН АЛУ значения делителя так, чтобы в выбранном номере - четном размещался прямой код делителя, а в нечетном -дополнительный. Оператор 6 выполня 45 ет действия, обратные действиям оператора 5, т.е, в нечетный РОН АЛУзаписывается дополнительный, а вчетный прямой код делителя. Оператор 7 выполняет действия первоготакта деления, после чего производится анализ результатов выполнениядействия первого такта оператором 8.В случае некорректности деления(переполнение разрядной сетки 16-разрядного результата деления) передается управление оператору на формиро-вание признаков выполнения операции,иначе выполняются остальные тактыделения операторами 9-11 (анализ(знак остатка) Регистр (АЛУ Таблица 3 Знакделителя 20 0 0 1 0 1 0 1 О 1 0 Старший разряд делимого (остатка) Операция 0 0 1О О 0 1 СложениеВычитание Вычитание Сложение Таблица 5т Вид сдвига 35 Код сдвига условий некорректности деления здесь и далее не рассматриваются).Рассмотрим отдельно цикл деления (фиг.9) .В устройстве все действия укаэанных операторов выполняются операторами 9 и 1 О (фиг.8), представляющими собой две микрокоманды. Действия этих микрокоманд включают сложение остатка й делителя; вычитание из остатка делителя.Эти действия выполняются в зависимости от значений знаков делителя и старшего разряда делимого (остатка) согласно табл.З. П р и м е ч а н и е. Старший разряд делимого (остатка) анализируется после действий в предыдущем такте деления. В микрокоманде цикла деления указан нечетный адрес РОН той пары ре гистров РОН, в которых предварительно оператором 5 или 6 были сформированы прямые или дополнительные коды делителя, Поэтому, учитьвая в микро- ,командах нечетный адрес одного иэ них, позволяют узлу 12 по старшему разряду делимого (вход 4) и призна" ку деления (вход 5) выбирать нужный операнд (делитель) в прямом или дополнительном коде для выполняемых микрокомандами действий сложения.Одновременно полученный результат в регистрах - сдвигателя РОН (остаток) и младшие разряды делимого (регистр Я) двигаются влево на один разряд. По значению сдвигаемо" го влево старшего разряда РОН (остатка) и фиксированного в РК знаке делителя формирователем разрядов частного ФРЧ 24 и КСС 9 вырабатывается разряд частного и записывается в освободившийся при сдвиге влево исходный разряд регистра ЯАЛУ согласно табл.4,25Формирование разрядов частногов КСС 9 производится ФРЧ 24 за счеткоммутации функции сдвига (коды 0 110или 0 111), изменяя значение младше 30 го разряда функции.Коды управления функциями сдвигасоответствуют видам сдвига (табл.5). 0110 Рег.РОН Рег. 0 15 0 15 0 Разряд Остаток Частное частного Рег. РОН Рег, 1 0111 15 0 15 04 сФункция сдвига 0110 укаэьваетсяв каждой микрокоманде цикла "Деление", Младший разряд функции сдвига коммутируется в ФРЧ 24. Цикл "Де ление" выполняется за счет повтоИрения ( в - - 2) раз двух микроко манд, где И - число разрядов делиПервая микрокоманда цикла "Деление" производит декремент (вычитание) содержимого регистра-счетчика циклов БМУ и сравнение полученногорезультата с нулем. Если М Ф 0 происходит передача управления на повторение микрокоманды, если Б =- 0 передается управление на оператор 12,Таким образом, цикл "Деления" заключается в выполнении циклически двух микрокоманд (при организации конвейера выборки следующего адреса микрокоманды с модулем два), в каждой из которых происходит формирование одного разряда частногоВ итоге за цикл деления формируются два разряда частного.Микрокоманды (21-я и 9.2-я) цикла "Деление" отличаются между собой только адресной функцией УМУ 2 (фиг.7) . В первой микрокоманде (адрес А) производится декремент счетчика (уменьшение счетчика на единицу младшего разряда) цикла УМУ 2, пе" редача управления в зависимости от его значения. Во второй микрокоман- де производится безусловная (обязательная после условной: условия ветвлений) передача управления на микро- команду с адресом А+1.Работа по выполнению арифметиче" ских и логических операций над опе-, рандами в АЛУ 3 производится под управлением полей микрокоманды с первых групп выходов РМК 21 (12-разрядная шина) и РМК 20 (9-разрядная шина). Под управлением сигналов на первой группе выходов РМК 2 1 производится выбор узлов 12 и 13 источни ков адресов операндов внутреннего ОЗУ АЛУ 3 (источник 1-й - РК 14, ис точник 2-й - РМК 21), С выходов РМК 20 производится управление арифметическими или логическими операциями в АЛУ 3 над операндами. Операнды могут быть использованы в зависимости от значений функций управления АЛУ 3, поступающих с первых (9-разрядная шина) и пятых (5-разрядная шина) выходов РМК 20, из внутреннего ОЗУ АЛУ 3 или с шины данных 25 через ШФИ 10 на В-входы АЛУ 3,По результатам выполнения операций над операндами в АЛУ 3 вырабатываются признаки (Е, С, Ч, И-входы КСС 9) слова состояния А 11 У 3, По сигналам управления с третьей группы выходов РМК 21 (13-разрядная шина) в КСС 9 запоминаются и обрабатываются признаки слова состояния и в зависимости от их комбинацийвырабатывается сигнал Р для организации процесса ветвлений микропрограммы. Процесс обмена информациейс внешними устройствами производится 5по шинам адреса 26 и данных 25.При необходимости перехода обменаинформацией с внешними носителямиинформапии по интерфейсу типа "узкая шина" шины "Адрес" и "Данные"объединяются.С первых выходов РАП 11 в шину26 адреса поступает 16-разрядный кодадреса и признаки для его сопровожпения,Результат операций над операндамис первых выходов ячеек 4-7 АЛУ 3 поступает на первые входы ШФИ 10 длязапоминания в буферном регистре итрансляции через выходы ШФИ 10 на 20 Э-входы ячеек 4-7 АЛУ 3 в качествеоперанда следующей операции или через первые входы/выходы ШФИ 10 нашину 25 данных для запоминания вовнешних носителях информации.25 В случае запоминания результатавычислений во внешнем ОЗУ микрокоманды генерируют адрес ячейки внешнего ОЗУ с первых выходов РАП 11 нашину 26, обеспечивают работу ин терфейса по приему адреса с РАП 11 иданных с ШФИ 10 по шине 25 во внешние ОЗУ.За счет "свертки" временных процессов, происходящих в БМУ 2 вовремя выборки адреса следующей микрокоманды, достигается йри сокращении оборудования БМУ 2 более короткий такт обработки информации(250 нс).40 Различные типы операций арифметических и логических операций выполняются за время:Типа регистррегистра 1 мкс (4 такта)Память - регистр 2 мкс (8 тактов)Умножение 6-10 мкс (2440 тактов)Деление 10-15 мкс (4060 тактов)Диапазон времени выполнения определяется реализуемой системой команд,Рассмотрим работу АУ, начиная с момента включения, т.е. инициализации начального адреса микропрограммы включения. Сигнал "Установка по входу 30, сигнализирующий об отсутствии вторичных напряжений питания АЛУ или наличии переходныхпроцессов при их установлении, поступает на установочный вход РИК 20, В регистре РМК 20 под управлением сигнала "установка" четвертым полем (фиг.3) вырабатывается функция управления УМУ 17 для выработки адреса 00, поступающего с четвертой группы выходов по 4-разрядной шине на группу входов УМУ 17. УИУ 17 вырабатывает 12-разрядный адрес (ОО) и выставляет его на выходе,РАИК 18 по синхросигналу Т записывает " указанный 00 (четный) адреси начинается выборка содержимого нулевой ячейки УПИК 19 (старшие раэряды 32-63) с записью информации по синхросигналу Т в РМК 21.Синхроимпульс Т подключает младший разряд адреса на входе УПМК 19, Адрес 0001 (нечетный) выбираетиэ УПИК 19 содержимое первой ячейкии записывает по синхросигналу Т в РМК 20 (младшие разряды 0-31). Так заканчивается процесс инициализации начального адреса микропрограммы "Инициализация", в процессе вУ. полнения которой загружаются, устанавливаются значения различных счет"чиков и узлов АБ 1 и БУ 2 в исходное состояние. Программа инициализации заканчивается загрузкой в РК 14 первой команды по сигналу из ДШБС 23, поступившей из запоминающего устройства. Разряды команды по 16-разрядной шине поступают в ДШК 16. Даниые на управляющем входе ДШК 16 управляют выходами дешифратора, переключая выходы из состояния высокого импеданса в активный режим. В то же время сигналы на выходе ДШП 15 и на пятой группе выходов РМК 20 (обратный адрес) находятся в состоянии высокого импеданса, т.е. отключены.С выхода ДШК 16 по 12-разрядной шине начальный адрес микропрограммыкоманды поступает в УИУ 17, транслируется им, эмулируется в зависимостиот функции управления передачи адреса, поступающего с четвертой группывыходов РИК 20. Эмулированный адрес поступает с выхода УИУ 17 на инфор" мационные входы РАИК 18 и, как описано, в случае выборки адреса инициализации выбирается дважды в течение такта из УПМК и записывается в регистры РМК 21 и РМК 20,Предположим, что очередная выбранная из внешнего накопителя по шине10 15 25 30 40 50 55 данных 25 комаяды - команда "Деление". Иэ условия, что в регистрахРИК 20 и РМК 21 выставлен код первой микрокоманды деления, начинается выполнение микропрограммы деления согласно алгоритму (фиг.7 и 8) .Выполнение оператора 1 заключаетсяв действиях по выборке информацииделимого и делителя из внутреннихрегистров РОН АЛУ или внешней памя"ти.Местоположение (исходное) операндов и методы адресации памятиопределяются системой команд. Предположим, что реализована система команд типа СМ. В этом случае информация делимого располагается вдвух регистрах РОН, четном и нечет 20 ном, номер первого из них указан вкоманде. Делитель в зависимости отсистемы адресации, указанной в команде, выбирается пос 3 тедовательностью микрокоманд по сформированномуадресу из внешней памяти. Предположим, что в команде используется метод адресации, когда адрес размещается в РОН с номером, укаэанным в0-2 разрядах команды (метод адресации указан в 3-5-м разрядах) . Первыемикрокоманды оператора 1 выставляютзначение указанного РОН АЛУ 3 на выход АЛУ 3 и записывают содержимоеего в РАП 11 как адрес операнда намагистрали 26.Выбранный иэ внешней памяти операнд (делитель) с магистрали 25 поступает в ШФИ 10 и фиксируется вбуферном регистреШФИ 10 осуществляет процедуру интерфейсногообмена, т.е. прием информации посигналам сопровождения и выдачу соответствукзцих кватирующих сигналов оприеме информации под управлениемуправляющих сигналов РМК микрокоманды 2. Третья микрокоманда оператора1 переписывает информацию делителяиз буферного регистра ШФИ 10 в рабочий РОН АЛУ 3. Четвертая микро"команда оператора 1 формирует константу о количестве циклов повторения микрокоманд цикла "Деление",С пятой группы выходов РИК 20 по12-разрядной шине "Адрес" поступаетв УИУ 17, где информация запоминается в счетчике циклов,Выработка следующего адреса микрокоманды при переходе от первоймикрокоманды к второй и т.д. осуще1541594 8РАМЫ = 1 - адрес (номер РОН) с выхода узла 12 - нечетный ( 15) .Под управлением первого поля РМК20 АЛУ 3 выполняет действие сложения содержимого номера РОН (К,),укаэанного в микрокоманде, где размещено делимое (остаток) и делитель,в прямом или дополнительном кодах,размещенных ранее в четных и нечетных регистрах РОН оператором 5 или6 (фиг.7 и 8), Узел 12, эмулируяв зависимости от значений старшегоразряда РАМ АЛУ 3 (делимого/остатка) выборку четных или нечетных регистров РОН АЛУ 3, производит действия оператора 12 или оператора 13,соответствующие известным операторам.Одновременно под управлением сигналов "Знак делителя" (вход 1), старшего разряда делимого/остатка (вход3) в ФРЧ 24 эмулируется младшийразряд функции "Сдвиг влево" КСС 9так, чтобы выполнились действияоператоров 14, 16 или 14, 17.Алгоритм выполнения действий поформированию разряда четного соответствует описанному в табл.4 и оп"ределяется распайкой ФРЧ 24 (фиг.2),представляющего собой мультиплексорс организацией 8- 1.Устройство 24,1 дешифрации адреса представляет собой логическуюсторону ИЛИ. Эмулирование значениямладшего разряда функции сдвига (4-йразряд РМК 20) производится в соответствии с табл.6 и 7 состояний вход"ных и выходных сигналов ФРЧ 24 и ДШЧ40 24,2. Таблица 6 Выход Управление 0 0 1 0 О 0 0 1 0 1 0 О. 0 Текущее 1 значение 1 4-го разряда 1 РМК 20 1 0 1 0 1, " 01 5 С 55 ствляется с четвертой группы выходов РМК 20 по 4-разрядной шине, Причем каждая микрокоманда под номером А указывает адрес выборки из УПМК А+2-й микрокоманды.5Выполнив действия операторов 1, а затем операторов 2 и 3 (действия их рассмотрены при описании фиг.7 и 8),производится подготовка инфор" мации делителя действиями микрокоманд оператора 5 или 6. Микрокоманды оператора 5 загружают в два соседних рабочих регистра РОН АЛУ (четный и нечетный) информацию делителя; четный регистр (например, номер 14) РОН - дополнительный код, в нечетный (15) РОН " прямой, Действия микрокоманд оператора 9 загружают информацию в указанные регистры наоборот 20 в четный (14) - прямой, и нечетный (15) - дополнительный код делителя.После указанных подготовительных действий производится выполнение микрокоманд 1-го такта "Деления".25 Рассмотрим, что представляют собойФ .поля управления микрокоманды "Деление". В поле 5 РМК 20 применяетсяформат 3 "Сдвиг", выполняется управление функциями сдвига КСС 9, а 30 именно сдвиг влево регистров РОН и Я (код 0110) . В четвертом поде выставляется информация, управляющая УМУ 17 так,чтобы производился декремент регистра-счетчика циклов и анализ его состояния с переходом по состояниюК= 0 на повторение микрокомандыделения, а по состоянию й сч = 0 - навыполнение действий оператора 12,Первым полем РМК 20 управляетсяАЛУ 3 - производится операция суммирования и пересылка полученной суммыпо адресу (номеру РОН), указанномув первом поле узла 13, где содержится делимое, а в последующем - остаток. В первом поле узла 12 указывается адрес (номер РОН),информацияв котором есть делитель с указаниемо его расположении в нечетном РОН(в нашем примере 15),Узел 12 эмулирует с помощью дешифратора адреса ДША 3, исходное единичное значение нулевого разряда номера РОН под управлением старшего разряда регистра сдвигателя РАМЫ АЛУ 3.При РАМЫ0 - адрес (номер РОН) свыхода узла 12 - четный (14). При Вход 3 Вход 2 Вход 1 П р и м е ч а н и е, Вход 1значение знакового разряда делителя;
СмотретьЗаявка
4457494, 08.07.1988
ЛЕНИНГРАДСКОЕ НАУЧНО-ПРОИЗВОДСТВЕННОЕ ОБЪЕДИНЕНИЕ "ЭЛЕКТРОАВТОМАТИКА"
КОРОТКОВ ВАЛЕРИЙ АНАТОЛЬЕВИЧ, ШЕК-ИОВСЕПЯНЦ РУБЕН АШОТОВИЧ, ГОРОХОВ ЛЕВ ПЕТРОВИЧ, МАЛАХОВ ЮРИЙ ВАСИЛЬЕВИЧ, СМИРНОВ ЕВГЕНИЙ ВЛАДИМИРОВИЧ
МПК / Метки
МПК: G06F 7/38
Метки: арифметическое, микропрограммным, управлением
Опубликовано: 07.02.1990
Код ссылки
<a href="https://patents.su/20-1541594-arifmeticheskoe-ustrojjstvo-s-mikroprogrammnym-upravleniem.html" target="_blank" rel="follow" title="База патентов СССР">Арифметическое устройство с микропрограммным управлением</a>
Предыдущий патент: Устройство для сравнения
Следующий патент: Конвейерный сумматор
Случайный патент: Токарный патрон