Микропроцессор
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Текст
пр в к ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССРОО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКР АВТОРСКОМУ СВ(54)(57) . МИКРОПРОЦЕССОР, содержащий операционный блок, первый блок модификации адреса, первый регистр мнкрокоманд и первый блок памяти м(крокоманд, причем группа выхо дов первого блока модификации адреса соединена с группой адресныхходов первого блока памяти микрооманд, выход которого соединен с информационным входом первого реги-. стра микрокоманд, вход сброса которого соединен с входом начальной установки первого блока модификации адреса и с входом начальной установки микропроцессора, вход синхронизации операционного блока соединен с входом синхронизации микропроцессора, информационный вход м)кропроцессора подключен к информационному входу операционного блока, адресный и информационный выходы которого являютея соответст венно адресным и информационным выходами микропроцессора, о т л и- чающий ся тем сцелвю повышения производительности,. онсодержит второй блок модификацииадреса, второй блок памяти микрокоманд, второй регистр микрокоманд,блок проверки условий, первый ивторой мультипЛексоры, блок форжрования временных интервалов, содержащий три 1 К-триггера и элементИЛИ, блок коррекции фазы, содержащий два 1 К-триггера, два сумматорапо модулю два и два элемента И,блок управления формированием следующего адреса, содержащий три дешифратора, восемь элементов И, дваэлемента ИЛИ-НЕ и три элемента ИЛИ,причем выход поля адреса первогорегистра микрокоманд соединен спервыми информационными входамипервого и второго блоков модификации адреса, вторые информационныевходы которых соединены с выходомполя адреса второго регистра макрокоманд, выходы поля операции первого и второго регистров микрокомандсоединены соответственно с первыми вторым информационнымн входаьжпервого мультиплексора, первая,вторая и третья группы выходов которого подключены соответственно кгруппе управляющих выходов микропроцессора, к группе входов кодаоперации операционного блока и кгруппе управляющих входов блока проверки условий, группа информационных входов которого соединена с группой выходов признаков операционногоблока, группа выходов второго блокамодификации адреса соединена сгруппой адресных входов второго блока памяти микрокоманд, выход которо14 13 11 Ь 4721 Продолжение табл.2 Код перехода Тип перехода, 01 1 О Адресжкр окоманды Микрокоманданечетной поПоле перехода Поле перехода Микрокомандачетной Код перехода Бит наБит, наКод перехода пр авления пеправленияперехода последовательно сти следовательности рехода ОООО М 2 00 ОО Х М 0 МЗ М 4 000Мб 0010 00 00 0011 М 8 00 00 М 10 0100 Х 010 М 11 И 12 10 00 0110 М 14 Х 00 00 И 13 М 16 О О М 5 М 8 1000 М 17 00 00 М 9 1001 1 О М 20 О 1 М 22 0 ОО 01 5 Безусловный переход между разноименными последовательностями микрокомандБезусловный переход между микрокомандами в одноименной 1 О последовательности микрокомандУсловный переход МПри нулевом значении сигнала 84мультиплексоры 12 и 13 коммутируют на свои выходы соответствующие части микрокоманды М 1 см. поз. 83). юОперациОнная часть микрокоманды состоит из бита управления, операционного поля и поля проверки условий.Бит управления поступает с перво- у го выхода мультиплексора .12 на выход 6 мюкропроцессора и предназначен для управления режимом чтения/заЗначение бита направления перехода, равное нулю, указывает на переход в микрокоманду разноименной последовательности. Значение бита напранления перехода, равное единице, указывает на пе- реход в микрокоманду одноименной последовательности. Значения полей перехода для каждой микрокомаиды рассматриваемого алгоритма приведены в табл. 3.Таблиц а 3 писи внешнего запоминающего устройства Значение бита управления,равное единице, соответствует режиму чтения из внешнего запоминающего устройства. Если.же бит управления равен нулю выполняется режимзаписи во внешнее запоьянающее устройство,Операционное поле поступает свторого выхода мультиплексора 12на вход кода операции операционногоблока 1,Продложение табл.Ч Код операции Выполняемая операция 001 010 О 100 101 Код операции Выполняемая операция 00 Операционное поле состоит из поля приемника результата, поля операндов, поля констант, бита входного признака и поля операций.Поле приемника результата посту пает на управляющий вход дешифратора 23. В этом поле указывается номер регистра (адресного 20, информационного 21 или одного из группы регистров 22 общего назначения ),в кото- О рый записывается результат выполняемой арифметико-логической операции.Поле операндов поступает на управ ляющий вход мультиплексора 24. В этом поле указывается номер ис точника второго операнда для выпол- нения арифметико-логической опера-., ции По этому номеру мультиплексор 24 передает на свой выход или информационный код с входа 18 мик-20 ропроцессора, или содержимое одного из группы регистров 22 общего назначения, или содержимоеполя кон-, стант, Поле констант поступает на второй вход мультиплексора 24. 25Бит входного признака поступает одновременно на вход переноса сумма" тора 25 и на вход сдвига сдвигателя 29. Битом входного признака за-; дается входной перенос или входной ЗО сдвиг при выполнении операций сложения или сдвига.Поле операций поступает на управляющий вход дешифратора 36 . В этом поле задается код арифметико. логической операции. По этому коду дешифратор 36 отрывает .одну из групп элементов 30-35 И, вследствие чего результат соответствующей операции с выхода сумматора 25, или с выходов групп элементов 26 И, 27 ИЛИ 28 НЕ, или с выходов сдвигателя 29 и мультиплексора 24 поступает нв информационные входы адресного 20, информационного 21 регистров игруппы . регистров 22 общего назначения.Набор выполняемых операций в соответствии с кодом, задаваемым в по ле операций, представлен в табл. 4,Таблица,4 Сложение содержимого информационного регистра 2 5 (первого операнда) с вторым операндом, поступающим с выхода мультиплексора 24. Конъюнкция первого и второго операндов. Дизъюнкция, первого и второго операндов. Инверсия первого операнда,Сдвиг вправо на один разряд первого операнда. Прямая пересылка второгоопер.аида. Если результат операции равен нулю, на выходе элемента 39 И вырабатывается единичный сигнал. Сигнал с выхода элемента 39.И, также как и сигналы а выхода старшего разряда группы элементов 37 ИЛИ (знак результата). и .с выходов переноса сумматора 25, сдвига,сдвигателя 29 поступают на вход признаков операционного блока 1. Сигналы с выхода признаков операционного блока 1 поступают на инфор- . мационный вход блока 9 проверки условий, на управляющий вход которого поступает поле проверки условий операционной части микрокоманды с третьего выхода мультиплексора 12В поле проверки условий содержится номер проверяемого условия и бит, указывающий на предполагаемое значение проверяемого условия. Номер проверяемого условия поступает на управляющий вход мультиплексора 51, в результате чего последний подключает . на первый вход сумматора 52 по моду-. лю два сигнап соответствующего условия. На. второй вход сумматора 52 по модулю два поступает бит,указывающий на предполагаемое значение проверя емого условия, Если реапьное и предполагаемое значения условия совпадают, нв выходе блокв 9 проверки условий присутствует нулевой сигнал, в случае несовпадения " единичный, Сигнал с выхода блока 9 проверки условий поступает на вход элемента И 65 блока 1.1164721 17 Функция Входы управления Комментарий ВходсинхВход управления адресом р ониэ ации 1.21 0 0 0 0 ЙА- Я Х 0 0 А 1 КЯ А А- йДА А 0 0 ПА 1 -А+1-+р д 0 0 А 2-ф А 0 П А 2-фА+1-ф ВА. Код адреса с второго вхо-да блока модификации адреса увеличивается на единицу и записывается в регистр 40. 0 Блок 11 в зависимости от управляющих сигналов и кодов, поступающихна его входы, формирует на выходахэлементов И 70, ИЛИ 74 и 75 и ИЛИ 72,ИЛИ-НЕ 73 коды управления. адресом .5соответственно блоков 2 и 3 модификации адреса,Управляющие коды с соответствующих выходов блока 11 поступают навходы управления адресом соответственно блоков 2 и 3 модификации адреса. В зависимости от кода, поступающего на вход управления адресом; блоки 2 и 3 модификации адреса формируют на своих выходах адреса следующих микрокоманд соответственно нечетной и четной последовательностей,Соответствие между кодом на входе управления адресом и адресом на выходе блока 2 или 3 модификации адреса приведено в табл . 5 .Т аблиц а 5 Содержимое регистра40 передается на выходблока модификации адреса,Содержимое регистра 40увеличивается на единицуеКод адреса с первого. вхоца блока модифика -ции адреса записывается в регистр 40 и передается на адресный выход.. Код адреса с второговхода блока модификации адреса записываетсяв регистр 40 и передается на адресный выход.Код адреса с первоговхода блока модификацииадреса передается на выход.Код адреса с первого входа блока модификации адреса увеличивается наединицу и записывается врегистр 40,Код адреса с второго входа блока модификации адреса передается на выход,5 О 15 20 40 55 Нулевой бит с входа управленияадресом поступает на управляющийвход мультиппексора 42, первый битна управляющий вход мультиплексора 43, а второй бит - на управляющий вход мультиплексора 44.На вход блока 2 моди 4 жкации адреса поступает адрес АЗ микрокоманды МЗ (см. поз. 79 ),По импульсу 76 результат арифметика-логической операции с выходагруппы элементов 37 ИЛИ записывается в один из приемников (адресный20, информационный 21 регистры илиодин из группы регистров 22 общего.назначения) в зависимости от кода,заданного в поле приемника результата.Информация с выходов адресного20 и информационного 21 регистровпоступает соответственно на выходы14 и 15 микропроцессора. Выходы14, 15 и 16 микропроцессора предна-.значены для подкпючения к нему внеш-него запоминающего устройства (ВЗУ).Если микропроцессор производитзапись в ВЗУ, то по адресу, установ:ленному на выходе 14 и нулевом значении бита управления на выходе 16микропроцессора, в ВЗУ записываются 30:данные с выхода 15 микропроцессора.В режиме чтения на выход 6 поступает единичное значение бита управ- .ления и по адресу, установленномуна выходе 14 микропроцессора, изВЗУ считывается информация и поступает на вход 17 микропроцессора.:По импульсу 78 микрокоманда М 2заносится в регистр 7 мнкрокоманд(см. поз. 82), а в регистр 40 блока3 заносится адрес А 4 микрокомандыМ 4 и поступает на выход блока .3(см. поз, 80),По единичному значению сигнала84" мультиплексоры 12 и 13 коммути"руют на свои выходы соответствую"щие части микрокоманды М 2 (см.поз, 83).После выполнения микрокоманд М 2и МЗ микропроцессор приступает к50выполнению микрокоманды М 4 (см.поз, 83). Микрокоманда М 4 являетсямикрокомандой условного перехода.Сигналы, характеризующие реэуль"тат выполнения арифметико-логической операции микрокоманд М 4, посту- .пают с выхода признаков операцион-,,ного блока 1 на.информационный вход блока 9 проверки условий. Мультиплексор 51 в соответствии с кодом, поступающим на его управляющий вход, подключает на первый вход сумматора 52 по модулю два сигнал необходимого условия. На второй вход сумматора 52 по модулю два поступает бит предполагаемого значения условия, Значение этого бита соответствует такому значению условия,при котором после выполнения жкрокоманды М 4 выполняется микрокоманда М 5 . Например, реальное и предполагаемое значения совпадают. Тогда значение сигнала на выходе блока 9 проверки условий равно нулю. При этом после выполнения микрокоманды М 4 выполняются микрокоманды М 5, Мб и М 7, Аналогично, если привыполнении микрокоманды М 7 реапьноеи предполагаемое значения проверяемого условия совпадают, то после выполнения микрокоманды М 7 выполняется микрокоманда М 8. В этих случаях условные переходы осуществляются без нарушения естественного порядка следования адресов.Например, при выполнении микрокоманды М 4 реальное и предполагаемое значения условия не совпадают (фиг. 11). Сигнал 86 принимает единичное значение. По импульсу 16 блок 10 формирования временных интервалов вырабатывает идиничные сигналы 87 и 90. Сигнал 86 принимает нулевое значение, Блок 2 модификации адреса выдает на свой выход адрес А 9 (см. поэ. 79), поступающий с первого выхода регистра 1 микрокоманд на второй вход блока 2 Еди"яичный сигнап 90 закрывает элемент38, приостанавливая работу операционного блока 1, в результате чегоблокируется неравномерное выполнениемикрокоманд М 5 и Мб,По импульсу 78 в регистр 40 блока3 модификации адреса записывается,адрес А 10 микрокоманды М 10 и передается на выход блока 3 модификации адреса (см. поз. 80).По импульсу 76 блок 10 формирования временных интервалов вырабатывает сигнал 88. По следующему импульсу 76 сигналы 87, 88 и 90 принимаютнулевое значение, По импульсу 77микрокоманда М 9 записывается в регистр 6 микрокоманд (см. поз. 81)и при нулевом значении сигнала 845 записывается на выходы мультиплексоров 2 и 3 для выполнения (см,поз. 83),В рассмотренном случае показанпример выполнения условного перехода из четной последовательности(микрокоманда М 4) в нечетную (микрокоманда М 9) с нарушением естественного порядка следования адресов.После выполнения макрокомандыМ 9 поступает .на выполнение микрокоманда МО (см. поз 83). Микрокоманда.М 10 также является микрокомандой условного перехода. Еслипри выполнении микрокоманды М 10реальное и предполагаемое значениепроверяемого условия совпадают,то естественный порядок выполнениямикропрограммы ие нарушается ипосле микрокоманды М 10 выполняется 20микрокоманда М 11 (см, поз, 83 нафиг. 14). Если же совпадения нет, вырабатывается сигнал 86 ( см.фиг, 11). Так как условный переходв случае несовпадения реаПьного и .25цредполагаемого значения осуществляется между микрокомандами в одноименной последовательности (измикрокоманды М 10 в микрокомандуМ 18), то сигнал 91 в процессе выполнения микрокоманды М 0 имеетединичное значение. При единичномзначении сигнала 91 по импульсу76 триггер 46 изменяет свое состояние на противоположное, в резуль., тате чего блок 8 изменяет фазу выдачи импульсов 77 и 78 на противоположные. Блок 3 модификации адресапередает на свой выход адрес А 8,поступающий на первый вход блока 3 40модификации адреса с первого выходарегистра 7 микрокоманд, По сигнапу90 операционный блок 1 приостанавливает свою работу, предупреждаянеправомерное исполнение микрокоманд, Заштрихованные участки навременных 1 диаграммах (си. поэ, 81,82 и 83) указывают на неопределенное значение кода в рассматриваемый:момент времени. 50После выполнения микрокомандыМ 10 выполняется микрокомаида М 18,после чего поступает к выполнениюмикрокоманда И 19. Йкрокоманда М 19является микрокомандой обусловленного перехода, В данном случае без-.условный переход осуществляетсямежду микрокомандами в одноименной последовательности (иэ микрокоманды М 9 в микрокоманду МЗ).Сигнап 89 имеет ециничное значение. Блок 2 модификации адресапередает на свой выход адрес АЗ(см. поз. 79). При единичном значении сигнапа 89 по импульсу 76 ус.танавливается в единицу триггер54, в результате чего сигнал 90принимает единичное значение. Приостанавливается на один такт работа операционного блока 1, вследствие чего предупреждается выполнение макрокоманды М 20. После выполнения микрокоманды М 19 .выполняется микрокоманда МЗ.На временной диаграмме (фиг. 12)после выполнения микрокоманд М 5 иМ 6 показан условный переход иэ ьокрокоманды М 7 в микрокоманду М 13для случая неравенства реапьногои предполагаемого значений прове-,ряемого условия. В данном случаеусловный переход осуществляетсямежду микрокомандами в оДноименнойпоследовательности и его выполнениепроизводится аналогично выполнениюусловного перехода из микрокомандыМ 10 в микрокоманду М 18 (фиг. 1).Выполнение условнсго переходаиз микрькоманды М 15 показано для .случая равенства реапьного и пред-полагаемого значений условия, Послевыполнения микрокоманды М 15 выпол -няется микрокоманда И 16.На данном участке алгоритма микропрограммы осуществляется безусловный переход между разноименными последовательностями (из микрокоманды М 17 в микрокоманду М 2). В этомслучае код перехода в микрокомандахМ 16 и М 17 равен 01 (табл. 2).Блоки 3 и 2 модификации адресапередают на свои выходы соответственно адреса А 2 и АЗ (см, поз, 80и 79). После выполнения микрокомандМ 16 и М 17 выполняются микрокоманды М 2 и МЗ,На временной диаграмме (фиг, 13)показано выполнение условного перехода из микрокоманды И 16 в микрокоманду М 20 (в одноименной последовательности) и безусловного переходамежду разноименными последовательностями (из ьжкрокоманды .М 22 в мик-,рокоманду М 5). Выполнение их производится так же, .как и выполнениеаналогичных переходов (фиг. 12).ъ1364721 26 К -1-К -К,а35 Зависимость коэффициента Ку от. коэффициента Кд для предлагаемого устройства следующая:,4 0,5 0,6 0,7 0,8 0,9 3 К 3 0 О 3 02 03 0 К 3 0,85 0,7 0,55 0,4 0,25 0,1 0 0 0 0 2 Символом П (фиг. 15) показаносемейство зависимостей времени вы. полнения микропрограмм от коэффициента К для архитектуры прототипа. Семейство зависимостей построено при различных значениях, Послед-,няя зависимость в семействе (3 1,5)приведена для случая конкретнойреализации микропроцессора-прототипана микропроцессорном наборе серии589. При этом предлагаемое устройство реализуется иа той же элементной базе и при использовании памяти Мкрокоманд такого же быстродействия, что и прототип.,В табл . 6 указаны параметры обеих вариантов реализации ьокропроцессора,Таблиц а 6 Иикр опр оце ссор Параметр Предла Прот гаемый тиг,Дпительопер аци(ш 1 п),ость цикланного блокас 10 00 Дпитель . ьикроко сть циклаанды (ш 1 п),нс 300 ВЬ е 25символом 1 (фиг. 15) показан график зависимости времени выполнения микропрограмм для архитектуры предлагаемого устройства от значе- ния коэффициента К . Значение коэф-. фициента К 3 при этом выбирается иэ следующих соображений: Обычно количество условных переходов в реальных микропрограммах . (программах) в среднем составляет 203 от общего числа переходов, Количество же безусловных переходов гораздо меньше,Кя можем принять количество микрокоманд безусловного перехода равным половине числа микрокоманд условного перехода,Тогда К 3=3-3 ф.КУПри К=0,7 значение К принимается равным нулю. В этом случае берется во внимание наихудший вариаит, имеющий максимальное время выполнения микропрограмм, так как учитывается максимальное число испольэуемьв: в микропрограмме микрокоманд условного и безусловного перехода.. Иэ приведенных (фиг. 15) зависимостей нетрудно заметить, что при данной .техническои реализации обеих вариантов сокращение времени выполнения микропрограмм в предлагаемом микропроцессоре по сравнению с прототипом составляет около 1,5 раза, 30 Таким образом, предлагаемый микропроцессор использует ьянимальныйцикл микрокоманды, равный циклу работы операционного блока, в отличие З 5 от прототипа, где цикл микрокомандыопределяется быстродействием управляющей части микропроцессора (памятььикрокоманд, генератор последовательности адресов) и оказывается 40 больше оптимального. За счет сокращенного цикла микрокоманды предлагаемый микропроцессор более производителен по сравнению с прототипом, Кро.ме того, при работе устройства с 45 максимальным быстродействием циклсчитывания макрокоманды из памятиоказывается более длинным, чем в работающем с максимальным быстродействием устройстве-прототипе. Данное 50 обстоятельство позволяет использовать в предлагаемом устройстве менее быстродействующую и, следовательно, более дешевую память ьикрокоманд,11 б 4721ффююрейюм фема 3 ем иитюрдааУ юу,чтй иена Риист гвкре- иаюР тр игю 4 Фиеиг,го соединен с информационным входом второго регистра микрокоманд, вход сброса которого соединен с входом начальной установки второго блока формирования адреса, с входом начальной установки микропроцессора и с входами сброса первого и второго 1 К-триггербв блока коррекции фазы, входы синхронизации которых соединены с первыми входами первого и ,второго элементов И блока коррекции фазы, с входами синхронизации первого, второго и третьего 1 К-триггеров блока формирования временных интервалов и с входом синхронизации мскропроцессора, 1- и К-входы первого и второго триггеров блока коррекции .фазы подключены соответственно к шине единичного потенциала и к выходу первого элемента И блока управления формированием следующего адреса, единичный и нулевой выходы первого 1 К-триггера блока коррекции фазы подключены соответственно к первым входам первого и второго сумматоров по модулю два блока коррекции фазы, вторые входы которых соединены с единичным выходом второго 1 К-триггера блока коррекции фазы, выход первого сумматора по модулю. два блока коррекции фазы соединен с вторым входом первого элемента И блока коррекции фазы, выход которого соединен с входаьи синхронизации второго регистра микрокоманд и второго блока модификации адреса, . выход .второго сумматора по модулю два блока коррекции фазы соединен с управляющимн входами первого и второго мультиплексоров и с вторым входом второго элемента И блока коррекции фазы, выход которого соединен с входаж синхронизации первого регистра микрокоманд и первого блока модификации адреса, первыи, второй и третий управляющие входы которого соединены соответственно с выходами первого элемента ИЛИ блока управления формированием следующего адреса, второго элемента И блока управления форжрованием следующего адреса и первого элемента ИЛИ-НЕ блока управления формированием следующего адреса, первый, второй и третий управляющие входы второго блока модификации адреса соединены соответственно с вйходами второго, третьего элементов ИЛИ блока управления формированием следующего адреса и второго элемента ИЛИ-НЕ блока управления форьмрованием следующего адреса, первый информационный вход первой группы второго мультиплексора соединен с первым выходом признака перехода первого регистра микро- команд, с инверсным входом третьего элемента И блока управления формированием следующего адреса, с первым входом четвертого элемента И блока управления формированием следующего адреса и с первым инверсным входом пятого элемента И блока управления формированием следующего ад -реса, выход которого соединен с первыми входами первого элемента ИЛИ блока управления формированием следующего адреса и первого элемента ИЛИ-НЕ блока управления формированием следующего адреса, второй входкоторого соединен с вторым входом первого элемента ИЛИ блока управления формированием следующего ацреса, с первым входом третьего элемента ИЛИ блока управления формированием следующего адреса и с первым выходом первого дешифратора блока управления формированием следующего адреса, вход которого соединен с вторым входом признака перехода первого регистра микрокоманд и с вторыминформационным входом первой группывторого мультиплекссра, первый информационный вход второй группы которого соединен с первым выходом признака перехода второго регистра микрокоманд, с первым входом шестого элемента И блока управления форьированием следующего адреса и с инверсным входом второго элемента И блока управления формированием следующего адреса, первый вход которого соединен с прямым входом третье - го элемента И блока управления формированием следующего адреса, с выходом седьмого элемента И блока управления формированием следующего адреса и с 1-входом первого 1 К-триггера блока формирования временных интервалов, второй информационный вход второй группы второго мультиплексора соединен с вторым выходом признака перехода второго регистра микро- команд и с входом второго дешифратора блока управления формированием следующего адреса, первый выход которого соединен с первыми входами1164721 Фиг Составитель Ю,ЛанцовТехред О.Ващишина Корректор В,йюрн торА.Гу Зака а кая на дК тент", г. Ужгород, ул. Проектная, 4 лиап ППП 188/46 ВНИИПИ по д 1 3035 ,.Ивторого элемента ИЛИ блока управления формированием следующего адреса и второго элемента ИЛИ - НЕ блока упранления формированием следующего адреса, второй вход которого соединен с вторым выходом второго дешифратора блока управления Формированием следующего адреса с вторым входом второго элемента ИЛИ, блока управления Форформированием следующего адреса и с третьим входом первого элемента ИЛИ блока управления формированием следующего адреса, четвертый вход которого соединен с третьим входом первого элемента ИЛИ-НЕ блока управления формированием следующего адреса, с выходом четвертого элемента И блока управления формированием следующего адреса и с вторым входом третьего элемента ИЛИ блока управления Форжрованием следующего адреса, третий вход которого соединен с третьим входом второго элемента ИЛИ блока управления формированием следующего адреса, с выходом шестого элемента И блока управления формированием следующего адреса, с третьим входом второго элемента ИЛИ-НЕ блока упранления формированием следующего адреса и с прямым входом восьмого элемента И блока управления формированием следующего адреса, выход которого соединен с пятым входом первого элемента ИЛИ блока управления формированием следующего адреса, шестой вход которого соединен с четвертым входом первого элемента ИЛИНЕ блока управления Формированием следующего адреса и с вторым выходом первого дешифратора блока управления формированием слецующего адреса, выход первого 1 К-триггера блока формирования временных интервалов соединен с 1 в вход второго 1 К-триггера бпока формирования временных интерналон, с первым входом элемента ИЛИблока формирования временных интервалов, со стробирующим входом третьего дешифратора блока управления формированием следующего адреса с вторыми входами четвертого и шестого элементов И блока управления формированием следующего адреса и с прямым входом пятого элемента И блока управления формированием следующего адреса, второй инверсный вход которого соединен с инверсным входом восьмого элемента И блока управления Форжрованием следующего адреса, с К в входа первого и второго 1 К-триггеров блока формирования временных интервалов и с выходом второго 1 К в тригге блока формирования .временных интервалов, 1-вход третьего 1 К-триггера блока формйрования временных интервалов соединен с первым выходом третьего дешифратора блока управления формированием следующего адреса, второй выход которого соединен с первыж входами первого и седьмого элементов И бло-ка управления формированием следующего адреса, вторыевходы которых соединены соответственно с первым выходом второго мультиплексора и выходом блока проверки условий, второй выход нторого мультиплексора соединен с входом третьего дешифратора блока управления формированием следующего адреса, выход третьего элемента И блока управления Формированием следующего адреса соединен с четвертым входом третьего элемента ИЛИ блока управления формированием следующего ад" реса, К-вход и выход третьего 1 К- , триггера. блока форжрования временных интервалов соединены с вторым входом элемента ИЛИ блока Фор. мирования временных интервалов, выход которого соединен с входом останова операционного блока.2. Микропроцессор по п. 1, о тл и ч а ю щ и й с я тем, что каждый из блоков модификации адреса содержит регистр, сумматор и три мультиплексора, причем группа выходов перзого мультиплексора соединена с первой группой входов сумматора и является группой выходов блока, первый информационный вход первого мультиплексора соединен с выходом регистра, информационный вход которого соединен с выхоцом второго мультиплексора, первый информационный вход которого соединенс выходом сумматора, вторые информационные входы первого и второго мультиплексоров соединены с выходом третьего мультиплексора, первый и второй информационные входы которого являются соответственно пер- . вым и вторым информационными входаж блока, вход синхронизации регистра и вход сброса регистра являются соответственно входом синхронизации1блока и входом начальной установкиблока, управляющие входы первого,нторого и третьего мультиплексоровявляются соответственно первым, вторым и третьим управляющими входамиблока, вход младшего разряда нторойгруппы входов сумматора подключенк шине единичного потвнциала, остальные входы второй группы сумматора подключены к шине нулевого потенциала,3. Микропроцессор по пп. 1 и 2,о т л и ч а ю щ и й с я тем, что 64721блок проверки услоаий содержит мультиплексор по модулю цва, причем группа информационных входов мультиплексора янляется группой информационных входов блока, выход мультиплексора соединен с первым входом сумматора по модулю два , выход которого является выходом блока, управляющие входы мультиплексора и второй нход сумма - тора по модулю два являются управляющими входами. группы блока.Изобретение относится к вычислительной технике и может быть использовано для обработки данных нсистемах управления,Известен микропроцессор, содержащий центральный блок обработки данных, блок микропрограммного управления, блок памяти и конвейерныйрегистр 11.Недостатком этого микропроцес- Осора конвейерного типа является низкая производительность, обусловленная неоптимальным циклом макрокоманды, а также непроизводительнойзатратой времени при выполнении каждого условного перехода,Наиболее близким к предлагаемомуявляется микропроцессор, содержащийоперационный блок, блок модификации адреса, регистр микрокоманд и 2 Облок памяти микрокоманд, причем группа выходов блока модификации адреса соединена с группой адресных входов.блока памяти микрокоманд, выходкоторого соединен с информационным 25входом регистра юкрокоманд, входсброса которого соединен с входомначальной установки блока модификации адреса и с входом начальной установки масропроцессора, вход синхронизации операционного блока соединен с нходом синхронизации микропроцессора, информационный вход микропроцессора подключен к информационному входу операционного блока,адресный и информационный выходыкоторого являются соответственно ад 2ресным и информационным выходами микропроцессора 2 .Недостатком данного ьккропроцессора также является низкая производительностьобусловленная следующими факторами.Цикл микрокоманды н данном микропроцессоре выбирается из расчета максимальной длительности цикла работы либо операционного блока, либо управляющей части (генератор последовательности адресов, блок памяти микрокоманд):гпах То 1,Р) где с - длительность цикла микрокоманды;Т- цикл работы операционногоблока 1Т,1- цикл работы управляющейчасти микрокоманды. При построении микропроцессораиа элементнои базе одной и той же.технологии перечисленные компоненты имеют соизмеримые значения быстродействия и ТТ . В результатеэтого цикл микрокомаиды оказывается длиннее оптимального значения,равного Тд,Кроме того, при конвейерномпринципе выполнения микрокомандвыборка микрокомаццы опережает нацикл,ее выполнения, в результатечего при выполнении условных переходов следующая после условного перехода микрокоманда выбирается раньше, чем формируется логическоеуслоцие, определяющее направлениеперехода. Поэтому при каждом условном переходе в микропрограммепредусматривается холостая микрокоманда, выполняющая функцию задержки на один цикл, Таким образом,выполнение каждой микрокомаццы условного перехода осуществляется эадва цикла жкрокоманды.Целью изобретения является повышение производительности микропроцессора,Поставленная цель достигаетсятем, что в микропроцессор, содержащий операционный блок, первый блокмодификации адреса, первый регистрьокрокоманд .и первый блок памятиьикрокомайд, причем группа выходовпервого блока модификации адресасоединена с группой адресных входов первого блока памяти микрокоманд, выход которого соединен с информационным входом первого регистра микрокоманд, вход сброса которого соединен с входом начальной установки первого блока модификацииадреса и с.входом начальной установки микропроцессора, вход синхронизации операционного блока соединен с входом синхронизации микропроцессора, информационный вход микропроцессора подключен к информаци-онному входу операционного блока,адресный и информационный выходыкоторого являются соответственноадресным и информационным выходаммикропроцессора, введены второйблок модификации адреса, второйблок памяти микрокоманд, второйрегистр микрокоманд, блок проверкиусловий, первый и второй мультиплексоры, блок формирования временных интервалов, содержащий три1 К-.триггера и элемент ИЛИ, блоккоррекции фазы, содержащий два 1 Ктриггера, два сумматора по модулюдва и два элемента И, блок управления формированием следующего адреса, содержащий три дешифратора,восемь элементов И, два элементаИЛИ-НЕ и три элемента ИЛИ, причемвыход поля адреса первого регистра микрокомандсоединен с первыьиинформационными входами первого ивторого блоков модификации адреса,вторые информационные входы которых соединены с выходом поля адреса второго регистра микрокоманд,выходы поля операции первого ивторого регистров микрокоманд соединены соответственно с первым и5 вторым информационными входамипервого мультиплексора, первая,вторая и третья группы выходовкоторого подключены оответственнок группе управляющих выходов ьякропроцессора, к группе входов кодаоперации операционного блока и кгруппе управляющих входов блокапроверки условий, группа информационных входов которого соединена с 15 группой выходов признаков операционного блока, группа выходов второго блока модификации адреса соединена . группой адресных входоввторого блока памяти микрокоманд 20Фвыход которого соединен с информационным входом второго регистрамикрокоманд, вход сброса которого;.соединен с входом начальной установки второго блока формирования адреса, с входом начальной устанрвкимикропроцессора и с входами сбросапервого и второго 1 К-триггеров бло. ка коррекции фазы, входы синхронизации которых соединены с первыми 30 входами первого и второго элементов И блока коррекции фазы, с входа,к синхронизации первого, второгои третьего 1 К-триггеров блока формирования временных интервалов и с 35 входом синхронизации микропроцессора, Е- и К-входы первого и второго 1 К-триггеров блока коррекцииФазы подключены соответственно к шине единичного потенциала и к выходу 40 первого элемента И блока управле. ния формированием следующего адреса, единичный и нулевоц выходы первого 1 К-триггера блока коррекциифазы подключены соответственно к пер" 45 вым входам первого и второго сумматоров по модулю два блока коррекции фазы, вторые входы. которыхсоединены с единичным выходом второго 1 К-триггера блока коррекции 50 фазы, выход первого сумматора по мо. дулю два блока коррекции фазы соединен с вторым входом первого элемента И блока коррекции фазы, выходкоторого соединен с входами синх ронизации второго регистра ьякрокоманд и второго блока модификации, адреса, выход второго сумматора псмодулю два блока коррекции фазысоединен с управляющимивходами пер ного и второго мультиплексоров и с вторым входом второго элемента И блока коррекции фазы, выход которого соединен с входами синхро ниэации первого регистра микрокоманд и первого блока модификации адреса, перный, второй и третий управляющие входы которого соединены соответственно с выходами первого элемента ИЛИ блока, управления формированием следующего адреса, второго элемента И блока управления формированием следующего адреса и первого элемента ИЛИ-НЕ блока управления формированием следующего адреса, первый, второй и третий управляющие входы второго блока модификации ад" реса соединены соответственно с выходами второго, третьего элементов ИЛИ блока управления формированием, следующего адреса и второго элемента ИЛИ-НЕ блока управления формированием следующего адреса, первый информационный вход первой группы25 второго мультиплексора соединен с первым выходом признака перехода первого регистра микрокоманд, .с инверсным входом третьего элемента И блока управления формированием сле-ЗО дующего адреса, с первым входом четвертого элемента И блока управления формированием следующего адреса и с первым инверсным входом пятогоэлемента И блока управления формиро- З 5 ванием следующего адреса, выход которого соединен с первыми входами первого. элемента ИЛИ блока управления формированием следующего адреса . и первого элемента ИЛИ-НЕ блоха уп О ранления форжрованием следующего адреса, второй вход которого соединен с вторым входом первого элемента ИЛИ блока улранления формированием следующего адреса, с первым входом третьего элемента ИЛИ блока управления формированием следующего адреса и с первым выходом первого дешифратора блока управления формированием следующего-.адреса, вход кото рого соединен с нторым входом признака перехода первого регистра микрокоманд и с вторым информационным входом первой группы второго мультиплексора, перный информационный вход второй группы которого соединен с первым выходом пркннака перехода второго регистра жкрокоманд, с первым входом шестого элемента И блока управления Формированием следующего адреса и с инверсным входом второго элемента И блока управления формированием следующего адреса, первый вход которого соединен с прямым входом третьего элемента И блока управления формированием следующегоадреса, с выходом седьмого элементаИ блока управления форьцированием следующего адреса и с 1-нходом первого1 К-триггера блока формирования временных интервалов, второй информационный вход второй группы второгомультиплексора соединен с вторым выходом признака перехода второго регистра микрокоманд и с входом второго дешифратора блока управления формированием следующего адреса, первый выход которого соединен с первыми входами второго элемента ИЛИ блока управления формированием следующего адреса и второго элементаИЛИ вблока управления формированием следующего адреса, второй вход которого соединен с вгорым выходом второго дешифратора блока. управления формированием следующего адреса, с вторым входом второго элемента ИЛИ блока управления формированием следующего адреса и с третьим входом первого элемента ИЛИ блока управления формированием следующего адрет са, четвертый вход которого соединен с третьим входом первсго элемента ИЛИ-НЕ блока управления формированием следующего адреса, с выходом четвертого элемента И блока управления формированием следующего адреса и с вторым входом третьего элемента ИЛИ блока управления формированием следующего адреса, третий вход которого соединен с третьим входом второго элемента ИЛИ блока управления формированием следующего адреса, с выходом. шестого элемента И .гблока управления формиронанием следующего адреса, с третьим входом второго элемента ИЛИ-НЕ блока управления формированием следующего адреса и с прямым входом восьмого элемента И блока управления формирова" нием следующего адреса, выход кото-рого. соединен с пятым входом первого элемента ИЛИ блока управления формированием следующего адреса, шестой вход которого соединен с четфвертым входом первого элемента ИЛИНЕ блока управления формированиемследующего адреса и с вторым выходом первого дешифратора блока управления формированием следующегоадреса, выход первого 1 К-триггераблока формирования временных интервалов соединен с 1-входом второго1 К-триггера блока Форжрования временных интервалов, с первым входомэлемента ИЛИ блока формированиявременных интервалов, со стробирующим входом третьего дешифратораблока управления Формированием сле-.дующего адреса, с вторыми входамичетвертого и шестого элементов Иблока управления Формированием следующего адреса и с прямым входомпятого элемента И блока управленияформированием следующего адреса,второй инверсный вход которого соединен с инверсным входом восьмогоэлемента И блока управления Форми"рованием следующего адреса, с к -вхо- .дами первого и второго 1 К-триггеров блока формирования временных ин-тервалов и с выходом второго 1 Ктриггера блока формирования временных интервалов, 1-вход третьего1 К-триггера блока формирования временных интервалов соединен с первым 30выходом третьего дешифратора блокауправления .формированием следукнцего адреса, второй выход которогосоединен с первыми входами первогои седьмого элементов И блока управления формированием следующего адреса, вторые входы которых соединены соответственно с первым выходом второго мультиплексора и выхо-.дом блока проверки условий, второйвыход второго мультиплексора соединен с входом третьего деши 4 ратораблока управления формированиемследующего адреса, выход третьегоэлемента И блока управления форьырованием следующего адреса соединен е четвертым входом третьегоэлемента ИЛИ блока управления Формированием следуюшго адреса, К-вщщи выход третьего К-триггера бло- ука формирования временных интервалов соединены с вторым входом элемента ИЛИ блока формирования временных интервалов, выход которогосоединен с входом останова.опера- уционного блока,Кроме того, каждый из блоков модификации адреса содержит регистр,сумматор и три мультиплексора, причем группа выходов первого мультиплексора соединена с первой группой входов сумматора и являетсягруппой выходов блока, первый информационный вход первого мультиплексора соединен с выходом регистра, информационный вход которого соединен с выходом второго муль-,типлексора, первый информационныйвход которого соединен с выходомсумматора, .вторые информационныевходы первого и второго мультиплексоров соединены с выходом третье.го мультиплексора, первый и второйинформационные входы которого являются соответственно первым ивторым информационными входами блока, вход синхронизации регистраи вход сброса регистра являютсясоответственно входом синхронизации блока и входом начальной установки блока, управляющие входыпервого, второго и третьего мультиплексоров являются соответственно первым, вторым и третьим управляющими входами блока, вход младшего разряда второй группы входов сумматора подключен к шине еди 3ничного потенциала, остальные входывторой группы сумматора подключеныфк шине нулевого потенциала.При этом блок проверки условийсодержит мультиппексор и сумматорпо модулю два, причем группа информационных входов мультиплексора является группой информационных входовблока, выход мультиплексора соединенс первым входом сумматора по модулюдва, выход которого является выходом блока, управляющие входы мультиплексора и второй вход сумматорапо модулю два являются управлякшцюми входаьм группы блока,На Фиг.изображена схема предлагаемого микропроцессораф на фиг,2 схема операционного блока, на фиг.Зсхема блока модификации адресаф наФиг. 4 - схема блока коррекции 1 нафиг. 5 - схема блока проверки условий; на фиг. 6 - схема блока формирования временных интервалов; нафиг. 7 - схема мультиплексора; на4 иг. 8 - схема блока управления форькрованием следующего адреса, нафиг, 9 - блок-схема алгоритма функционирования жкропроцессора; наФиг. 10-14 - временные диаграммы25 30 40 работы микропроцессораф на Фиг, 15 графики зависимостей времени выполнения микрепрограмм в предлагаемом и известном устройствах,Микропроцессор содержит операционный блок 1, блоки 2 и 3 модификации адресов, блоки 4 и 5 памятимикрокоманд, регистры 6 и 7 микрокоманд, блок 8 коррекции фазы, блок9 проверки условий, блок 10 формирования временных интерваловблок 1 управления формированиемследующего адреса, мультиплексоры12 и 3, адресный выход 14, информационный выход 15, управляющийвыход 16, информационный вход17, вход 18 синхронизации и вход19 начальной установки.Операционный блок(Фиг. 2)содержит адресный 20 и информационный 21 регистры, группу регистров 22общего назначения, дешифратор 23.приемника результата, мультиплексор 24 операндов, сумматор 25,группы операционных элементов 26 И,27 ИЛИ, 28 НЕ, сдвигатепь 29,группы коммутирующих элементов30-35 И, дешифратор 36 операций,группу элементов 37 ИЛИ, элементы38 и 39 И.Каждый из блоков 2,и 3 модифика-,ции адреса (фиг., 3) содержит регистр 40, счетчик 41, первый 42,второй 43 и третий 44 мультиплексоры.Блок 8 коррекции фазы (фиг, 4)содержит первый 45 и второй 46 1 Ктриггеры, первь 1 й 47 и второй 48сумматоры по модулю два и при-емный 49 и второй 50 элементы И.Блок 9 проверки условий (фиг.5 )содержит мультиплексор 5 1 и сумматор 52 по модулю два.Блок 10 Формирования временныхинтервапов (фиг. 6) содержит три55, 54 и 55 1 К-триггера и элемент56 ИЛИ.Мультиплексор 12 и 13 (Фиг. 7)содержат первый 57 и второй 58блоки элементов И и блок 59 элементов ИЛИ,Блок 1 управления формированием следующего адреса (Фиг. 8) содержит третий 60, второй 61 и первый 62 дешифраторы, первый 63, четвертый 64, седьмой,65,шестой 66,пятый 67, третий 68, восьмой 69 ивторой 70 элементы И, второй 71 1 О 15 35 45 55 и третий 72 элементы ИЛИ, второй элемент ИЛИ-НЕ 73, первый элемент ИЛИ 74 и первый элемент ИЛИ-НЕ 75.Символами М (=1,Рп) обозначены микрокоманды (Фиг. 9).На временных диаграммах работы устройства (Фиг. 10-.14) представлены импульсы 76 на входе 18 синхронизации микропроцессора, импульсы 77 на выходе элемента И 50, импульсы 78 на выходе элемента И 49, сигнал 79 адреса на выходе блока 2 модификации адреса, сигнал 80 адреса на выходе блока 3 модификации адреса, сигнап 81 кода микрокоманды на выходе регистра 6 микрокоманд, сигнал 82 кода микрокоманды на входах регистра 7 микрокоманд, сигнал 83 кода микрокоманды на выходах мультиплексоров 2 и 3, сигнал 84 на выходе сумматора 48 по модулю два, сигнал 85 на входе 9 начальной установки микропроцессора, сигнал 86 на выходе элемента И .65, сигнал 87 на выходе 1 К-триггера 53, сигнал 88 на выходе ТК- триггера 55, сигнал 89 на первом выходедешифратора 60, сигнап 90 на выходе элемента ИПИ 56, сигнал 91 на выходе элемента И 63, 7 - цикл микрокоманды.Рассмотрим работу устройства на примере выполнения им микропрограммы (Фиг. 9)Нечетные микрокоманды (М,М , М,) содержатся в блоке 4 памяти микрокоманд и составпяют нечетную последовательность микрокоманд, а четные (М,М 4,М 6,) в блоке 5 памяти микрокоманд и составляют четную последовательность микрокоманд.В процессе работы микропроцессора возможны следующие особенности выполнения микропрограммы: выполнение линейного участка микропрограммы (в этом случае производится поочередное выполнение микрокоманд из нечетной и четной последовательностей без нарушения естественного порядка следования адресов - адрес каждой следующей ьккрокоманды на единицу больше адреса предыдущей, выполнение ус 3ловного перехода без нарушения естественного порядка следования адресов; выполнение условного перехода между разноименными последова12 1164721 В соответствии с табл, 1 триггер 45 постоянно находится в счетном режиме, распределяя входнуюсерию импульсов 76 на две 77 и 78,Все действия в микропроцессореосуществляются по задним фронтамимпульсов 76, 77 и 78.По нулевым адресам А 1 и А 2 (см.поэ. 79 и 80) соответственно изблоков 4 и 5 памяти жкрокоманд выбираются микрокоманды М 1 и И 2 ипоступают на информационные входырегистров 6 и 7 микрокоманд соответственно. По импульсу 77 микрокоманда И заносится в регистр 6 микрокоманд (см. поэ. 81). Одновременнов регистр 40 блока 2 модификацииадреса заносится адрес микрокомандыМЗ, сформированный на выходе счетчика 41Микрокоманда состоит из адреснойи операционной частей и поля перехода.Адресные части микрокоманд нечетной и четной последовательностейприсутствуют всегда на первых выходах соответственно регистров 6 и 7микрокоманд. В адресной части яикрокоманды задается адрес микрокомаиды, в которую выполняется условныйили безусловный переход. Операционн е части микрокоманд нечетной ичетной последовательностей поступают с вторых выходов регистров 6 и 7микрокоманд на первый и второй входы мультиплексора 12 соответственно.Поля переходов нечетной и четнойпоследовательностей макрокоманд поступают с третьих выходов регистров6 и 7 микрокоманд соответственно напервый и второй входы мультиплексора 13 и на входы элементов И 64,67, 66, 68 и 70 и дешифраторов 61и 62,Паде перехода содержит двухразрядный код перехода и бит направления перехода, Определение типа перехода в соответствии с кодом перехода показано в табл. 2,Т д б л и ц а Таблица Входы Выходы 2 Х Х 0 0 Тип перехода Код перех 0 1О1 0 5 0 1 1 тельностями микрокоманд с нарушением естественного порядка следования адресов," выполнение условного перехода между микрокомандамив одноименной последовательностис нарушением естественного порядкаследования адресов, выполнение безусловного перехода между разноименными последовательностями мйк- .рокоманд; выполнение безусловногоперехода между микрокомандами водноименной последовательности,Алгоритм микропрограммы предполагает выполнение микропрограммыс учетом перечисленных особенностей.Рассмотрим работу устройствав соответствии с временной диаграммой (фиг.О ) .Для приведения микропроцессорав исходное состояние подается. сигнап 85, в результате чего регистры б и 7 микрокоманд,регистры40 в блоках 2 и 3 модификации адреса, триггеры 45 и 46 устанавливаются в ноль,После снятия сигнала 85 блок8 коррекции фаэ начинает вырабатывать на входах две серии импульсов 77 и 78; сдвинутых относительно друг друга на полупериод, Бпок8 коррекции фаз как и блок 10формирования временных интервалов построен иа базе 1 К-тригге"ров.Таблица истинности 1 К-триггерапоказ ана в табл . 1 ( символом Хобозначено соответственно безразличное или неопределенное состояние сигнапа). оса Синхр они з а- . К Я ции 5 10 15 20 25 30 35 40 45 Переход на линеином участке микропрограммы беэ нарушения естественного порядкаследования адресов.
СмотретьЗаявка
3687753, 05.01.1984
ОСОБОЕ КОНСТРУКТОРСКОЕ БЮРО ГОЛОВНОЕ МОНТАЖНО-ТЕХНИЧЕСКОЕ УПРАВЛЕНИЕ "ЮГ" ЦЕНТРАЛЬНОГО НАУЧНО-ПРОИЗВОДСТВЕННОГО ОБЪЕДИНЕНИЯ "КАСКАД"
ПУШКАРЕВ ЮРИЙ ЯКОВЛЕВИЧ, ПОЛОНСКИЙ ДМИТРИЙ ВАСИЛЬЕВИЧ
МПК / Метки
МПК: G06F 15/00
Метки: микропроцессор
Опубликовано: 30.06.1985
Код ссылки
<a href="https://patents.su/22-1164721-mikroprocessor.html" target="_blank" rel="follow" title="База патентов СССР">Микропроцессор</a>
Предыдущий патент: Ассоциативный матричный процессор
Следующий патент: Устройство связи для вычислительной системы
Случайный патент: Устройство автоматического поиска каналов радиосвязи