ZIP архив

Текст

ОП ИКАНИЕ Союз Советскии Социалистических Республиксоединением заявки М асударстееииый комит Соеета Министрое ССС по делам изооретеиийи открытий Приорит(45) Дата оп кования описания 23,12,76 И. К. Ростовцев, Л.Б. Ш, Переверзева, ЛИ, И, Лиокумович, А Кондратьев, В. М А. Елисеев, .Ч. Л. М. Раецкий, 1. И. Ленксва, О. С. Ковалев, Беляева, И, Г. Шандлер, овшик и Л. М. Гриневск Авторызобретения, и регстр ссс одом дешпфрато ыход блока псс а пер ысп е дняляти сссэ рэвтсян сй па вым вьиямп, а с гистра упраьения счстравлеп;я состояниями. ре Вод слв.-вссм инфсрданных, регистра управ мании из арпфметичесв управления первым и ми, регистра адресации яти. Выходы этих блсходами ре гистсг уп единен с ре у.прика авления в а передач дом инфороегистрс стр с ци л ь.вс ока лен о б с ммутато оа в ной пам ы с со лоха скаль ов соединен ешифра кроме етствуюшнм о из котссь ыходы ка ух, соед торам енспередач ены состветс ; входом блс ервых первым у данных, втблока пере в приема из етическсго блсдами первого ервым входом ка псстсянной ка, первых и второго адресного памяти сс ггера э ереадресавход и вых ативно ции, бл ыодо стсрог чере вате хои трети ходом регистра данных, в Изобретение относится к цифровои вь.чисительной технике. В большинстве моделей вычислительных систем используются процессоры с микропрограммным управлением 11Эти процессоры одержат оперативную память, постоянную память, блок регистров, арифметико-.,сги - ческий блок, связанные системой информационных и управляющих шин. Повышение быстродействия известных процессоров достигается обьчно путем расширения разрядности устройств и информационных шин, что увеличивает объем информации, обрабатываемой за один машинный такт, и применения различных способов совмещения. Однако увеличение раз-д рядной сетки требует увеличения аппаратуры обработки данных, использование же совмещения значительно усложняет управление,тогда как простые методы совмещения не дают необходимого повышения быстродействия, 20Из известных процессоров наиболее близким к данному является процессор, содержащий блок постоянной памяти, выход которого следовательно соединенные формироадреса, связанный с выходом регист равд яющил осыми входами узло дач данных и арифм и управляющими вхс коммутаторов и с и регистра, Выход бло единен с входами тр разряда и регистра оперативной памяти, соединены с первымии циклов, а выход является четвертым выходом этого блока.3. Процессор по пп. 1 и 2, о т л и ч аю и и й с я тем, что буферный запоминающий блок содержит селекторрегистров, вы ход которого является выходом буферного запоминающего блока, многофункциональный регистр, выход которого соединен с первым информационным входом селектора регистров, второй информационный вход которого явля ется вторым информационным входом буферного запоминающего блока, узлы занесения из арифметического блока, блока передач данных и блока постоянной памяти; с управляющим входом которого соединен триггер приема, входы установки в нуль и единицу которого соединены соответственно с первым и вторым управляющими входами буферного запоминающего блока, первый, второй и третий информационные входы многофункциональ ного регистра через узлы занесения из арифметического блока, блоков передач и постоянной памяти соответственно соединены стретьим, четвертым и первым информационными входами буферного запоминающего блока, с четвертым и пятым управляющими входами которого соединеныпервые управляющиевходы узлов занесения из арифметическогоблока и блока передач соответственно, вторые управляющие входы которых, а такжеуправляющий вход селектора регистров соединены с третьим управляющим входом буфер- ,ного запоминающего блока.Источники информации, принятые во внимание при экспертизе:1. Патент США3500337, кл. 340172.5, 1970 г,2. Хассон С. Микропрограммное управление. Вып. 2, М, 1974 г., стр. 44-143Составитель И, ХазоваРедактор Е. Гончар Техред А. Богдан Корректор Л. БоринскаяЗаказ 5144/485 Тираж 864 Подписное ЦНИИПИ Государственного комитета Совета Министров СССР по делам изобретений и открытий 113035, Москва, Ж, Раушская наб., д,4/5 Филиал ППП "Патент", г. Ужгород, ул. Проектная, 4ды которого соединены соответственно с вь - ходом арифметического олока и блоха пере - дач данных и через узлы приема из арифэ= тичэского блока к слока передач дань-,ых - с первым и вторым входами блоха реги тров. ь Выход этого блока соединен с первым инфор-" мационным входом блока передач даннъх и с первыми информационными входами первого и второго коммутаторов, выходы которых соедичены с первыми и вторыми входами ариф - 0 метического блока, блок локальной памяти, первый вход и выход которого соединены соответственно с выходом и третьим информационньвл входом блока передач данных, а второй вход - с выходом адресного регистоа Ц ,5Однако неполное использование быстродействия арифметического блока и локальной памяти снижает общее быстродействие пооцессора, 20 Цель изобретения - повышение быстродей-. ствия микропрограммного процессора.Достигается это тем, что процессор содержит блок байтов и циклов, первый и вто 25 рой вь:ходы которого соединены с вторыми управляющими входами первого и второго коммутаторов, третий выход - с вторым входом узла приема из арифметического блока и первым управляющим входом регис,.ра данных, а четвертый выход - с вторым управляющим входом блока пеоедач данных, втооыми входами адресного регистра и узла приема из блока передач данных, реглстр байтов и циклов, вход которого соединен с выходом блока постоянной памяти, а первый, второй и третий выходы соединены соответ-. ственно с первым, вторым и третьим входами блока байтов и циклов, четвертый, пятый, шестой, седьмой и восьмой входы которого40 соединены соответственно с первым, вторым и третьим выходами блока счетчиков номера байта, выходом счетчика длины операнда и через соответствующий дешифратор - с выходом регистра управления счетчиками;буферный запоминающий блок, первый, второй, третий и четвеотый информационные входы которого соединены соответственно с выходом блока оперативной памяти, первьвл выходом регистра данных, выходоьл арифметического блока и выходом блока передач данных, а первый, второй, третий, четвертый и пятый управляющие входы подключены соответственно к первому и второму выходам дешифратора управления состояниями, выходу триггера альтернативного разряда, к третьему и четвертому выходам блока байтов и циклов, выход буферного запоминающего блока соединен с вторым информационным входом блока передачи данных и вторь ми инфорлационными входами первого и второго коммутаторов, Блок байтов и циклов содеркит первый, второй ч третий узл выбора байта, первые вы.,с,.:, которых являются соответстВенпо первы.: вчорым и ,тьим выходами блока байчов ; циклов, входы управления байтовым режимом всех трех узлов выбора байта соединены стретьим входом блока байтов и циклов, входы управления циклами функции узлов выбора байта - с первым входом блока байтов и циклов, а с входом анализа состояния третьего узла выбора байта соединен шестой вход блока байтов и циклов, узел блокировки второго цикла, с первым и вторым входами которого соединены вторые выходы первого и второго узлов выбора байта соответственно, с входом анализа состояния узла блокировкивторого цикла соединен седьмой вход блока байтов и циклов, восьмой вход которого соедичен с входом анализа модификации узлаблокировки второго цикла, выход которого соединен с соответствующими входами первого, второго и третьего узлов выбора байта, причем с входом анализа состояния первого узла .выбора байта соединен четвертый, а с входом анализа состояния второго узла выбора байта - пятый входы блока байтов и циклов, узел циклов локальной памяти, вход которого соединен с вторым входом блока байтов и циклов, а вь.ход является четвертым выходом этого блоха, Кроме того буферный запоминающий блок содержит селектор регистров, выход которого является выходом буферного запоминающего блока, многофунхциональный регистр, выход которого соединен с первым информационным входом селектора регистров, вторсй инфорллационный вход которого является вторым информационным входом буферного запоминающего блока, узлы занесения из арифметического блока, блока передач данных и блока постоянной памяти,. с управляющим входом которого соединен триггер приема, входы установки в нуль и единицу которого соединены соответственно с первым и вторым управляющими Входами буфеоного запоминающего блока. Первый, второй и третий информационные входы многофункционального регистра через узлы занесения из арифметического блока, блоков передач данных и постоянной памяти соответственно соединены с третьим, четвертым и первым информационными входами буферного запоминающего блока, с четвертым и пятым управляющими входами которого соединены первые управляющие входы узлов занесения из арифметического блока и блока пе= редачи данных соответственно, вторые управляющие входы которых, а также управляющийвход селектора регистров соединены с третьим управляющим входом буферного запоминающего блока.В процессоре быстродействие повышаетсяза счет двойного обращения к арифметическому блоку и блоку локальной памяти в одном машинном такте, а также за счет частичного совмещения выборки двух последовательно расположенных команд из блока оперативной памяти, Двухцикловая работа арифметического блока и локальной памяти фактически вдвое увеличивает разрядную сеткупроцессора,На фиг. 1 изображена схема процессорас микропрограммным управлением; на фиг, 2-15схема блока байтов и циклов; на фиг. 3 -схема буферного запоминающего блока; нафиг, 4 - временная диаграмма его работы;на фиг. 5 - схема узла выбора байта и нафиг. 6 - схема узла блокировки второгоцикла.Выход блока оперативной памяти 1 (см,фиг. 1) подключен к первому входу регистра данных 2 и к первому информационномувходу 3 буферного запоминающего блока 4. 25Выход регистра данных 2 соединен с входомблока оперативной памяти 1 и с вторым информационным входом 5 буферного запоминающего блока 4. Выход арифметического блока 6 подключен к третьему информационному 30входу 7 буферного запоминающего блока 4и к третьему входу регистра данных 2, атакже через узел 8 приема из арифметического блока - к первому входу блока регистров 9. Выход блока 10 передач данных соединен с информационным входом блока локальной памяти 11, с вторым входом регистра данных 2, с четвертым информационным входом 12 буферного запоминающегоблока 4 и через узел 13 приема из блока 40передач данных - с вторым входом блокарегистров 9, выход которого подключен кпервым информационным входам блока 10передач данных, первого коммутатора 14 ивторого коммутатора 15. Выход блока локальной памяти 11 соединен с вторым информационным входом блока 10 передачданных, в к третьему информационному входу этого блока и к вторым информационнымвходам первого 14 и второго 15 коммутаторов подключен выход буферного запоминающего блока 4. Выходы первого 14 ивторого 15 коммутаторов соединены с первым и с вторым входами арифметическогоблока 6 соответственно. Выход блока постоянной памяти 16 в регистре микрокомвнд 17 подключен к входам триггеров регистра 18 управления состояниями, триггера 19 альтернативного разряда, регистра 20 переадресации регистра 21 байтов60 и циклов регистра . 2 упревлен;:,ми, регистра 23 управления выводол:, .ь;о-.мации из блока передач, регистре 2;,.и:",т: -ления выводом информации из арифл;о-,цце"и; -го блока, регистра 25 управце;-:пя икоммутатором, регистра 26 управленц- вторым коммутатором, регистра 27 упр.-. е-п."вводом информации в блок передач и:егпстра 28 адресации блока локальной пол - :тп, Е ход регистра 18 управления состоян:тля. с; -единен с входол дешифратора 29 упрат.:,т:состояниями, первый выход которого ".одц ". -чен к входу регистра состояний 30, е ,":." Си третий выходы - к первому 33 и вто, ому 32 управляющим входам буферного з.-сминающего блока 4, к третьелу упра о.: псму входу 33 которого подключен и:-.:ход т.цгера 19 альтернативного разряда. Выхоп ;.:. -гистра состояний 30 соединен с первыл. входом формирователя адреса 34, к второл:увходу которого подключен выход регистра,Опереадресации. Выход формирователя адресасоединен с входом блока постоянной памяти 16, К первому 35, второму 36 и третьему 37 входам блока 38 байтов и циклов подключены, соответственно, первый, второйтретий выходы регистра 21 байтов и цилов,с четвертым 39, пятым 40 и шестыл. 41входами блока 38 байтов и циклов сос;.н -ны первый, второй и третий выходы блоке 4:счетчиков номера байта, а к седьмому 43и восьмому 44 входал блока 38 бай-.;.:циклов подключены, соответственно, выхо;счетчика 45 длины операнда и чеоез д=.шйратор 46 управления счетчиками, вь.х;д регистра 22 управления счетчиками. Вь:ход регистра 23 управления выводом информа.н:;: -из блока передач данных через дешк,".,рато: ",.,управления передачами подключен к первол;,управляющему входу узла 13 приема из блока передач, выходы регистров 24-28 управления выводом информации из арифметическо -го блока, первым коммутатором, вторымкоммутатором, входом блокапередач данных иадресного регистра локальной памяти черездешифраторы управления выводом инфорыпкииз арифметического блока, первым кол;.л утатором, вторым коммутатором, вводом инфоглмации в блок передач и адресным рогистро.,соответственно подключены к первым управляющим входам узла 8 приема из арифметического блока, первого коммутатора 1 4, второго коммутатора 15, блока 10 передачданных и адресного регистра 53 соответственно, Выход адресного регистра 53 соединенс адресным входом блока локальной памяти 11. К вторым управляющим входам первого коммутатора 14, второго коммутатора 15и узла 8 приема из арифметического блокаподключены, соответственно, первый 54, вто 525956рой 55 и третий 56 вь;ходы блока 38 байтов и циклов. Третий выход 56 блока 38 байтов и циклов соединен также с четвертым управляющим входом буферного запоминаюшего блока 4 и с управляюшим входом регистра данных 2 а четвертый выход 57 блока 38 байтов и циклов подключен к пятому управляющему входу буферного запоминающего блока 4 и к вторым управляющим входам узла 13 приема из блока передач, адресного ц) регистра 53 и блока 10 передач данных, Выход триггера 58 однобайтной работы арифметического блока (см. фиг, 2) подключен к . первым входам первого 59, второго 60 и третьего 61 узлов выбора байта, Выход трнггера 62 двух циклов локальной памяти соединен с входом узла 63 циклов локальной памяти, Первые выходы первого 59 и второго 60 узлов выбора байта являются соответственно первым 54 и вторым 55 выходами блока 38 байтов и циклов, выход третье. го узла 61 выбора байта является третьим 56 вь".ходом блока 38 байтов и циклов, а выход узла 63 циклов локальной памяти - четвертым 57 выходом блока 38 байтов и циклов, 2 Выход триггера 64 двух циклов функцииподключен к вторым входам первого 59, второго 60 и третьего 61 узлов выбора байта, Вторые выходы первого 59 и второго 60 узлов выбора байте соединены с первым и, ф вторым входами узла 65 блокировки второго цикла, С третьим и четвертым входами уела 65 блокировки второго цикла соединены выход 43 счетчика 45 длины операнда и выход 44 дешифратора 46 управления счетчиками. К первому,.второму и третьему входам многофункционального регистра 66 (см, фиг. 3) через узлы 6768 и 69 занесения из арифметического блока, блока передач и постоянной памяти соответствен О но подключены выходы 7, 12 и 3 этих уст. ройств, К управляющему входу узла 69 занесения из памяти подключен единичный вь:ход триггера 70 занесения из памяти, а входы установки в нуль и в единицу этого45 триггера соединены соответственно с первым 31 и вторым 32 выходами дешифратора 29 управления состояниями. К первым; управляюшим входам узлов 67 и 68 зане 5 О сения из арифметического блока и из блока передач подключены третий 56 и четвертый 57 выходы блока 38 байтов и циклов соответственно, С первым и с вторым информационными входами селектора регистров 71 соединены соответственно выходмногофункционального регистра 66 и выход 5 регистра данных 2, К управляющему входу селектора регистров 71, а также к вторым управляющим входам узлов 67 и 68 занесе-э ния из арифметического блока и блока передач данных подключен выход 33 триггера 19альтернативного разряда. Выход селекторарегистров 71 является выходом буферногоэапоминаюшего блока 4,В блоке оперативной памяти 1 хранятсякоманды программы и операнды командйй, 21,2 и ЬУ или ЯЗ форматов. Быстродействующая локальная память 11 служитдля хранения операндов фиксированной длиныдля команд Р, РХ, ЙЬ форматов, базовых и индексных адресов для команд Р 1,%3и 66 форматов, а также промежуточныхоперандов и служебной информации, Выполнение каждой команды состоит из двух фаз,Первая фаза - выборка команды, в течениекоторой происходит считывание очередной команды иэ блока оперативной памяти 1 в четырехбайтный регистр данных 2, базировкаи индексация адресов операндов, размещениеосновной информации о команде по узлам иблокам процессора (например, формированиекода длины команды в регистре состояний 30,занесение адресов операндов в соответствующие регистры блока регистров 9, запись информации о длине операндов в счетчик 45длины операндов и т.д.). Выборка и выполнение всех команд производится микропрограммами, расположенными в блоке постояннойпамяти 16, В конце фазы выборки по ходуоперации каждой команды определяется адрес в блоке постоянной памяти 16, с которого начинается микропрограмма обработкиоперандов для данной команды. Вторая фаза выполнения команды - обработка операндов. Перед этой фазой операндылибо уже прочитаны из блока локальной памяти 11 н занесены в блок регистров 9, либо подготовлены адреса операндов в блокеоперативной памяти 1 или блоке локальнойпамяти 11. Арифметический блок 6 в фазеобработки операндоР осушествляет приемоперандов через первый и второй двухбайъные коммутаторы 14 и 15 и арифметическую или логическую их обработку с последующей пересылкой результата через узел 8приема иэ арифметического блока в блок регистров 9, Затем результат через двухбайтный блок 10 передачи данных может бытьзаписан в блок локальной памяти 11 или через регистр данных 2 - в блок. оперативной,памяти 1,За время одного машинного такта (см.фиг. 4) в процессоре выполняется одна микрокоманда, Ее выполнение синхронизируетсячетырьмя разнесенными во времени синхроимпульсами. СИ 1,СИ 2, СИЗ, СИ 4, которыевырабатываются в течение одного машинноготакта, а также импульсами первого полутакта ПТ 1 и второго полутакта ПТ 2.В каждом машинном такте микрокоманда считывается из блока постоянной памяти 16 по адресу, сформированному формирователем адреса 34 из содержимого регистра 20 переадресации и регистра состояний 30 в регистр микрокоманд 17, управляющие поля этого регистра преобразуются дешифраторами 29, 46-52 в набор микроопераций, управляющий действиями в данном машинном такте. За один машинный такт процессор может обработать до четырех байтов информации.Полный цикл чтения и регенерации оперативной памяти 1 составляет четыре машинных такта П- (П+5) (см. фиг. 4), при этом адрес считанного слова из четырех байтов соответствует целочисленной границе для слова (два младших разряда адреса при 20 дешифрации не учитываются), Микрооперация чтения ЧТ, вырабатываемая в данном машинном такте ( й, ), вызывает считывание информации, которая принимается в регистр данных 2 в конце следующего машин ного такта ( П + 1 ). Микрооперация регенерации РГ запускает оперативную память 1 на запись (в такте П +2), что приводит к занесению информации в нее к концу такта (8+3), 30При чтении операндов переменной длины должен адресоваться каждый байт, поэтому нужный байт информации может быть считан в любой (нулевой, первый, второй или третий) байт регистра данных 2, 35Арифметический блок 6 имеет разрядность два байта и в течение одного машинного такта выполняет два цикла обработки операндов. При работе в режиме двух циклов функции, определяемом регистром 21 бай тов и циклов, прием информации в первый 14 и второй 15 коммутаторы выполняется дважды за один машинный такт - по СИ 1 и СИ 3; занесение выхода арифметического блока и признаков результата обработки (перенос, переполнение, нуль результатаи т.д,) происходит также дважды - по СИ 2 и СИ 4, При работе в режиме одного цикла функции прием информации во входные коммутаторы происходит только по СИ 1, а50 занесение вь,хода арифметического блока 6 и признаков результата - по СИ 2,Каждая ячейка блока локальной памяти 11 55 содержит два байта, В течение одного машинного такта может быть выполнено одноили два обращения к блоку локальной памяти 11 и прочитано или записано два или четыре йта данных. 60 Блок регистров содержит группу четырехбайтных регистров общего назначения, используемых для хранения считанных из блокаоперативной памяти 1 или блока локальнойпамяти 11 операндов, а также один (два)адресных регистров, используемых для хра -нения адреса команды и(или) адресов операндов. Передачей информации необходимых регистров на входные коммутаторы аоифметического блока 6 блока передач 10 и приемомв них информации с выхода этих блоков управляют соответственно регистры 25,26,27и 24,23 через дешифраторы 49,50,51 и 48,47,Рассмотрим работу процессора при выполнении команд формата ЯЯДанные переменной длины могут располагаться в блоке оперативной памяти 1 с любого адреса, и обработка их должна вестись побайтно, Два младших разряда адреса каждого операнда определяют номер обрабатываемого байта в сло -ве блока оперативной памяти 1.После выборки команды адреса операндов находятся в блоке регистров 9 (см.фиг. 1 ), указатель длины операндов - в счетчике 45 длины операндов, а два младших разряда адресов первого и второго операндов - в блоке 42 счетчиков номера байта. фаза обработки операндов начинается с чтения пз блока оперативной памяти 1 второго операнда в регистр данных 2. Затем содержимое регистра данных 2 пересылается в один из рабочих регистров блока регистров 9 через буферный запоминающий блок 4, блок 10 пе - редач данных и узел 13 приема из блока передачи данных и производится чтение первого операнда. Данные переменной длины обрабатываются побайтно, но арифметичес.;й блок 6 может за один машинный такт выполнить функцию обработки дважды, поэтому в регистр 21 байтов и циклов триггер 58 однобайтной работы арифметического блока и триггера 64 двух циклов функции установлены в единичное состояние. Блок 38 байтов и и циклов, учитывая содержимое регистра 21 байтов и циклов, выдает в первый коммутатор 14 (с выхода 54) и во второй коммутатор 15 (с выхода 55) управляющие сигналы, по которым по синхроимпульсу СИ 1 в младший байт первого коммутатора 14 из регистра данных 2 (он выдается на первый коммутатор по сигналу с дешифратора 49) через буферный запоминающий блок 4 передается байт данных, номер которого в слове оперативной памяти (а значит и в регистре 2) определяется одним из счетчиков блока 42 счетчиков номера байта (счетчиком первого входа), В младший байт второго коммутатора 15 также по синхроимпульсу СИ 1 из блока регистров 9 (по сигналу с выхода дешифратора 50) заносится байт второго операнда, причекл номер этого байта в слове задансче.".;.ком второго входа из блока 42 счетчиковномера байта. После завершения обработки байта операндов байт результата по синхроимпульсу СИ 2 передается в байт регистраданных 2, номер которого определен счетчикомвыхода из блока 42 счетчиков номера байта. Затем в зависимости от напюавления обработки (от старших к младшим или наоборот) выполняется модификация всех счетчиков в блоке 42 счетчиков ноллера байта наплюс или минус единицу, а также модификация счетчика 45 длины операнда, По синхюоимпульсу СИ 3 в младшие байты первогокоммутатора 14 ч второго коммутатора 15заносятся следующие байты первого и второго операндов. функция обработки повторяется еше раз и байт результата по синхроимпульсу СИ 4 заносится в регистр данных 2.По завершении обработки слова (исчерпанодин из счетчиков входов или оба влесте)производится запись результата в оперативную память 1 и считывание следуюшегослова второго и (или) первого операндов.Обработка опеюандов продолжается до техпор, пока не исчерпается счетчик 45 длиныопеюанда. При всех передачах информациина входные коммутаторы арифлетическогоблока 6 и при передачах результата обработки в блок регистров 9 или в юегистюданных 2 блок 38 байтов и циклов по соцеюжчмому счетчиков выбиюает нужные байты первого и второго операндов и производит их передачу в младшие байты входныхкоммутаторов, а результат обработки пересыпает в нужный байт регистра блока регистров 9 или регистюа данных 2. При этомпервый узел 59 (см. фиг, 2) выбора байта управляет занесением информации в первый коммутатор 14, второй узел 60 выбора байта управляет занесением во второй коммутатор 15, третий узел 61 выбора байта управляет занесением выходаарифметического блока 6 в регистр данных 2, в буферный запоминаюший блок 4и в блок регистров 9, Узлы выбора байтапостроены однотипно (см, фиг, 5), Навход дешифратора 72 номера байта поступают сигналы с выхода блока 42 счетчиков номера байта (например, для первого узла 59 выбора байта это будетсигнал с выхода 39), Дешифратор 72 номера байта будет вырабатывать управляюшие сигналы толькО при наличии разрешающего потенциала на входе 37 управления байтовым режимом (триггер 58однобайтной работы арифметического блока на фиг. 2 установл:н в единичное состояние). При использованииданного узла в качестве первого 59 или второто 60 узла выбора байта сигнал на выходе элемента И 73 в однобайтно:, режимеразрешает занесение в младший бай входного комлутатора третьего байта и:- слова данных. Сигнал на выходе элемента И 74 разрешает занесение второго байта из слова данных в младший байт входного коммутатоюа,элементов И 75 и 76 - занесение первогои нулевого байта, На вторые входы элементов И 73 - 76 подается сигнал с выходаэлемента ИЛИ 77, который вырабатываетсяпо потенциалу первого полутакта (ПТ 1), поступаюшеллу на вход 78, или по потенциалувторого полутакта (ПТ 2), поступаюшему навход 79, и отсутствии сигнала блокировкивторого цикла на входе 80 элемента И 81,Сигналом блокировки второго цикла предусматривается возможное достижение границы одним из счетчиков блока 42 счетчиковномера байта или счетчиком 45 длины операнда после завершения первого циклаарифметического блока 6 при заданном двухцикловом режиме работы (т,е, когда тюиггер 64двух циклов функций установлен в единичноесостояние (см. фиг. 2). Потенциалы ПТ 1и ПТ 2 вырабатываются блоком синхронизации процессора, не показанным на схемах. При выполнении команд с операндамификсированной длины обработка их выполняется в двухбайтном юежиме (т.е. триггер 58 находится в нулевом состоянии), В первом цикле работы арифметического блока 6 (на входе 78 присутствует потенциал полутакта ПТ 1) на выходе элемента И 73 вырабатывается сигнал занесения третьего байта из слова данных в младший байт входного коммутатоюа и одновременно на выходе 82 вырабатывается сигнал нанесения второго байта из слова данных в старший байт входного коммутатора, т.е. в первом цикле по сигналу ПТ 1 на входе 78 срабатывает элемент И 83, так как на входе 3 ( отсутствует сигнал однобайтного режима работы. Во втором цикле срабатывает элемент И 84, на входы которого поступает сигнал двухбайтного режима работы с элемента НЕ 85, потенциал полутакта ПТ 2 (по входу 79) и сигнал с триггера 64 (см, фиг. 2) двухцикловой работы (по входу 35). На выходе элемента И 75 и на выходе 86 вырабатываются сигналы занесения первого и нулевого байтов из слова данных в младший и старший байты входного коммутатора. Управляющие сигналы с выходов дешифратора 72 и с выходов элементов И 83 и 84 объединяются элемен(см, фиг. 6,1 Вьшает с;1 гчал -,го цикла на выход 80 в тех ),-зяб,ОДИН ИЗ СЧЕТЧИКОВ ВХОДОВ ДОС 1 И; Н в ,1 ЕВсссзначения (на одном из входов 89 эле, "- -та ИП)И 91 высокий потенциал) и сб; .-бст -ка операндов ведется от старши к )ла;шим байтам. Если счетчики мсдифиц 0) к. ) "ся на плюс единицу, то по вход:- .1 л"гер 92 модификации счетчиков у);) . - ,.;Вл;-1)в един.Рлнсе состояние и срабаты 11.;.мент И 93, Если модификация счетч 1,)выполняется на минус едини 1.".;, гс - . в.О.ду 44 триггер 92 модификации ч;установлен в нулевое состояние и ксодин из счетчиков принимает 1 лаче.,:.0 Р.еное трем,. на од 110 из вхдев ):)э,та ИЛИ 94 появится сигнал, который пр 11 -Ведет к срабатыванию элементс И 95,),",игналы модификации на пл 100 и мину . 1 инк .цы, поступаюшче "а ВхОЯ 44, Высасатысются дешифраторо.и 46 управ 1:.еньля с)ст-:1 кам 1 л. Если обработка операндов провс) 11 тся с использованием счетчика 45,1 л 11 н)операнда (в командах ЬЬ ф;,;):;)а-. э,триггер 96 по любому сигналу (плюс ц:.:)минус) на входе 44 устанавливаэ.)ся вединичное состся 11 ие 1 и псявлепие нг гхсде 43 анализа состояния счетчика длинь:операнда си 111 ала рг енства нулю счетчикадлины 45 псиводит к,срабатыванию элемснта И 9, и выдаче сигнала :,. к.:.1)свк 1в-орого цикла с вь хода 80 э;.еме таУзел 6" .(см. фиг. 0 пик) ) кпамяти и") 1 0 ,иничнсм ссстсяни 1; т л 11 ге.)адВух цик 1),.лска лОкальы 01-, па 1 я - ; Р),сабатывает упасляюший сигнал, р=-:=)е 1 аю 1 ц 1: - ,.двойное с;итывание из блок. Нкап ) ".:, л.А Гмяти 1." ь течение одного маши 110 го такта, 1 аПри этом в адресный регистр 53 (см.:.1:г.1 )выдается 011 ч ал модификации г др ес а блокалокальной памяти 11 для 0=-ит 1 лванчя илк записи двух последовательных пс"),О) В блок 10 передач данных - сигнал Парешения двойной в течение такта передач Полуслов данных, в буферный запохл 1 П 1 а)100,)1 й б)лск-, и в узел 13 прие 1 ла из слска песе-" - угнал ра )решения дв йного В .ечени; .,)а явно-. го так псиема данных и блка 0 и-се=дач данньх. 1 Л ) ,.). ) ) з 1) К., г) К)1 а 1 3,О , )11) 3, 1. ." . Т10,1) )К 01) Р 1 з.110,) .яется 1 1)а 1)1 1.;О " . , ") 11 10:; 0 )1, 1 смаН- ки ,1" )-1".к)1 х лска 1 ы;: )"ш В б.)Отсо, е.):.О. ) тс.,ст .: 0; "1 аэ Вь)-"Г) ПСЕХС" ) )11 )1 ПОЛ 110 Н 1111В) 1)00;: : .-;:у 10 Так как чтение инфссмации 11:. 110 ка О.;ративнсй памяти .) Происходит це 11-,1.,ми, а команда состоит из однсгО. д 11116 Время выполнения операций в предлагаемом процессоре и в модели 40 системы 360 Операция вычитание)нной запято формат ож ение фиксирова,5 - 3,54 - 6 ормат иксированн множени 4 5,5 запятои Деление запятой иксированно 76,8 ложение (вычитаниелаваюшей запятой 7,6 Умно жен плавающеи 9 130 апят 2 5 лаваюшей запятой лен фео следующего слова, При этом будет считана вся команда ИХ, Й Ь или 53 формата, или первое слово команды Я Я формата, поэтому после завершения выполненияпрель душей команды КЙ формата выборкаследующей команды выполняется непосредственно из буфера, что дает дополнительныйвыигрыш во времени, так как отсутствуетнеобходимость чтения блока опеоативной памяти 1. 10 Для расширения функциональных возможностей буферного запоминающего блока 4 в многофункциональный регистр 66 предусмотрены занесения с выхода 7 арифметическо д го блока 6 и из блока 10 передач данных (по входу 12), а содержимое многофункционального регистра 66 чеоез селектор регистров 71 может быть передано на вход олока 10 передач данных, а также на вхо ды первого 14 и второго 15 коммутаторов. Таким образом, многофункциональный регисто 66 может быть использован при выполнении команд, требующих большего количества вспомогательных рабочих регистров.При этом будут отсутствовать потери времени на запись (считывание) промежуточных операндов в блок локальной памяти 11 или из него, При выполнении сложных команд (например, умножение) применение 30 многофункционального регистра 66 в качестве рабочего дает возможность почти вдвое уменьшить время выполнения этих команд при незначительном увеличении времени выборки команды, следующей за даннойсложной командой. При использовании многофункционального регистра 66 в качестве рабочего в регистре состояний 30 фиксируется отсутствие буферизации команды и выборка следующей команды выполняется из блока оперативнойпамяти 1, Работа с многофункциональным регистром 66 осуществляется по тем же микрооперациям, что и работа с регистром данных 2, т.е. занесение информации в эти регистры, прием информации из регистров на входные коммутаторы арифметического блока 6 и на вход блока 10 передач данных. Выбор между тем и другим регистром определяется состоянием триггера 19 альтернативного разряда. Например, при единичном состоянии этого триггера на выход селектора регистров 71 передается содержимое многофункционального регистра 66, при нулевом - содержимое регистра данных 2 по входу 5, Использование небольшого объема дополнительного оборудования позволило сушественноувеличитьбыстродействие процессора. Предварительные расчеты и моделирование показывают, что предлагаемый процессор имеет быстродействие примерно в 2 раза выше, чем прототип при сравнимом объеме оборудования, Время выполнения основных операций в предлагаемом процессоре и в модели 40 системы 360 приведено в таблице,Время выполнения, микро/секФормула изобретения 1. Процессор с микропрограммным управлением, содержащий блок постоянной памяти, вход которого через последовательно соеди неиные формирователь адреса, связанный с выходом регистра переадресации, и регистр управления состояниями соединен с первым выходом дешифратора управления состояниями, а выход блока постоянной памяти соедиО неи с входами регистра управления счетчиками, регистра управления состояниями, регистра управления вводом и выводом информации блока передач данных, регистра управления выводом информации из арифме 15тического блока, регистров управления пер вым и вторым коммутаторами, регистра адресации блока локальной памяти, выходы которых соединены с соответствующими дешифраторами, и выходы каждого изкоторых, кро- ме первых двух, соединены соответственно с первым управляющим входом блока передач данных, вторыми входами узлов приема из блока передач данных и арифметического, блока, первыми управляющими,входами первоИ го и второго коммутаторов и с первым входом адресного регистра, выход блока постоянной памяти соединен с входами триггера альтернативного разряда и регистра переадресации, блок оперативной памяти, вход и выход которого соединены с первыми входом и выходом регистра данных, второй и третий входы которого соединены соответственно с выходом арифметического блока и блока передач данных и через узлы приема из арифметического блока и блока передач данных - с первым и вторым входами блока регистров, выход которого соединен с первым информационным входом блока передач данных и с первыми информационными входами первого и второго коммутаторов, выходы которых соединены с первым и вторым входами арифметического блока, блок локальной памяти, пер-. вый вход и выход которогб соединены соответственно с выходом и третьим информационным входом блока передач данных, а второй вход - с выходом адресного регистра, ,отличающийся тем,что,сцелью повышения быстродействия, он содержит блок бо байтов и циклов, первый и второй выходы которого соединены со вторыми управляющими входами первого и второго коммутаторов, третий выход - с вторым входом узла приема из арифметического блока и первым уп- и; равляющим входом регистра данных, а четвертый выход - со вторым управляющим входом блока передач данных, вторыми входами адресного регистра и узла приема из блока передач данных, регистр байтов ицикО лов, вход которого соединен с выходом блцка постоянной памяти, а первый, второй итретий выходы соединены соответственно спервым, вторым и третьим входами блокабайтов н циклов, четвертый, пятый, шс тоседьмой и восьмой входы которого соединены соответственно с первым, вторым и третьим выходами блока счетчиков номера баФта, выходом счетчика длины операнда и че, .рез соответствующий дешифратор - с выхо+дом регистра управления счетчиками, буфеный запоминающий блок, первый, второй,третий и четвертый информационные входыкоторого соединены соответственно с выходом блока оперативной памяти, первым выходом регистра данных, выходом арифметического блока и выходом блока передач дан.ных, а первый,-второй, третий, четвертый ипятый управляющие входы подключены соответственно к первому и второму выходам дешифратора управления состояниями, выходутриггера альтернативного разряда, к третье;му и четвертому выходам блока байтов ициклов, выход буферного запоминающего блока соединен со вторым информационным вхо.дом блока передачи данных и вторыми информационными входами первого и второго ком.мутаторов. 2. Процессор по и. 1, о т л и ч а ю - щ и й с я тем, что блок байтов и циклов содержит первый, второй и третий узлы выбора байта, первые выходы которых являются соответственно первым, вторым и третьим выходами блока байтов и циклов, входы управления байтовым режимом всех трех узлов выбора байта соединены с третьим входом блока байтов и циклов, входы управления циклами функции узлов выбора байта - с первым ,входом блока байтов и циклов, а со входом анализа состояния третьего узла выбора бай-та соединен шестой вход блока байтов и цик лов, узел блокировки второго цикла, с пер- вым и вторым входами которого соединены вторые выходы первого- и второго узлов выбора байта соответственно, со входом анализа состояния узла блокировки второго цикла соединен седьмой вход блока байтов и циклов, восьмой вход которого соединен с входом анализа модификации узла блокировки второго цикла, выход которого соединен с соответствующими входами первого, второгО и третьего узлов выбора байта, причем со входом анализа состояния первого узла выбо ра байта соединен четвертый, а с входом анализа состояния второго узла выбора бай та - пятый вход блока байтов и циклов, узел циклов локальной памяти, вход которого соединен со вторым входом блока байтов

Смотреть

Заявка

2094891, 08.01.1975

ПРЕДПРИЯТИЕ ПЯ М-5339

РОСТОВЦЕВ ИГОРЬ КИРИЛЛОВИЧ, КОНДРАТЬЕВ АНАТОЛИЙ ПАВЛОВИЧ, ЛЕНКОВА ВАЛЕНТИНА МИРОНОВНА, КОВАЛЕВ ОЛЕГ СЕМЕНОВИЧ, ПЕРЕВЕРЗЕВА БЭЛЛА ШЕПСЕЛЕВНА, ЕЛИСЕЕВ АЛЕКСАНДР АЛЕКСАНДРОВИЧ, БЕЛЯЕВА МАРИНА АЛЕКСАНДРОВНА, ШАНДЛЕР ИНЕССА ГРИГОРЬЕВНА, ЛИОКУМОВИЧ ИРИНА ИСААКОВНА, РАЕЦКИЙ АЛЕКСАНДР МУСТАФОВИЧ, КОВШИК ТАМАРА ИВАНОВНА, ГРИНЕВСКАЯ ЛАРИСА МИХАЙЛОВНА

МПК / Метки

МПК: G06F 15/20

Метки: микропрограммным, процессор, управлением

Опубликовано: 25.08.1976

Код ссылки

<a href="https://patents.su/14-525956-processor-s-mikroprogrammnym-upravleniem.html" target="_blank" rel="follow" title="База патентов СССР">Процессор с микропрограммным управлением</a>

Похожие патенты