SU1070557A1 - Firmware processor - Google Patents

Firmware processor Download PDF

Info

Publication number
SU1070557A1
SU1070557A1 SU823492809A SU3492809A SU1070557A1 SU 1070557 A1 SU1070557 A1 SU 1070557A1 SU 823492809 A SU823492809 A SU 823492809A SU 3492809 A SU3492809 A SU 3492809A SU 1070557 A1 SU1070557 A1 SU 1070557A1
Authority
SU
USSR - Soviet Union
Prior art keywords
group
outputs
output
input
address
Prior art date
Application number
SU823492809A
Other languages
Russian (ru)
Inventor
Василий Петрович Супрун
Анатолий Иванович Кривоносов
Иван Иосифович Корниенко
Григорий Николаевич Тимонькин
Сергей Николаевич Ткаченко
Вячеслав Сергеевич Харченко
Original Assignee
Предприятие П/Я А-7160
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Предприятие П/Я А-7160 filed Critical Предприятие П/Я А-7160
Priority to SU823492809A priority Critical patent/SU1070557A1/en
Application granted granted Critical
Publication of SU1070557A1 publication Critical patent/SU1070557A1/en

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Description

го операнда и с первой группой инфор мационных входов коммутатора адреса микрокоманды, втора  группа информационных входов которого соединена с выходом первого элемента ИЛИ и с группой выходов немодифицируемой 4ac ти адреса следующей микрокоманды блока пам ти микрокоманд, вход адреса которого соединен с информационным выходом регистра адреса микрокоманд , информационный вход которого соединен с выходом коммутатора адреса микрокоманды, управл ющий вход которого соединен с выходом конца команды формировател  микроопераций, группа выходов управлени  коммутатором индексов Которого соединена с группой управл ющих входов коммутатора индексов, втора  группа информационных входов которого соединена с группой входов констант устройства, группа информационных выходов группы счетчиков индексов соединена с третьей группой информационных входов коммутатора индексов, группа информационных выходов которого соединена с группами информационных входов счетчика команд группы счетчиков циклов,регистра приращений и с первой группой информационных входов коммутатора блока формировани  исполнительного адреса оперативного запоминающего устройства, группа информационных выходов которого соединена с группой информационных входов регистра исполнительного адреса, группа информационных выходов которого соединена с первой группой входов сумматора и первой группой информационных входов коммутатора адреса оперативного запоминаиощего устройства , группа информационных выходов которого соединена с группой адресных входов блока оперативного запоминающего устройства, управл ющие входы которого соединены с выходами коммутатора управлени  оперативньгм запоминающим устройством, первый управл ющий вход которого соединен с управл ющим входом коммутатора адреса оперативного запоминающего устройства, с первым управл ющим входо 1 коммутатора данных и выходом разрешени  внешнего доступа к блоку оперативного запоминающего устройства процессора и формировател  микроопераций , выход конца работы процессора которого соединен с первым входом элемента И блока пуска-останова , второй вход которого соединен со BTophiM выходом генератора тактовых импульсов, с входом синхронизации операционного блока и с первым управл ющим входом формировател  микроопераций, второй управл ющий вход которого соединен с первым выходом генератора тактовых импульсов , управл ющий вход которого соедкНен с выходом триггера блока пуска-останова , вход установки в ноль которого соединен с выходом элемента И блока пуска-останова, вход установки в единицу триггера блока пуска-останова соединен с входом пуска процессора, группа выходов пол  кода логических условий формировател  1чикроопераций соединена с группой управл ющих входов мультиплексора логических условий, группа информационных входов которого соединена с группой информационных выходов группы счетчиков циклов и группой информационных выходов операционного блока, группа адресных входов которого соединена с группами выходов первого, второго блоков элементов И и блока формировани  исполнительного адреса регистров общего назначени , вьссод кода микроопераций блока пам ти микрокоманд соединен с информационным входомoperand with the first group of information inputs of the microcommand address switch, the second group of information inputs of which is connected to the output of the first OR element and with the output group of the unmodifiable 4ac address of the next microcommand of the microcommand memory block, the address input of which is connected to the information output of the microcommand address register, the information input of which is connected to the output of the microcommand address switch, the control input of which is connected to the output of the end of the command of the microoperation command, the group in control switches of the index switches of which are connected to the group of control inputs of the index switch, the second group of information inputs of which are connected to the group of inputs of device constants, the group of information outputs of the group of index counters are connected to the third group of information inputs of the index switch, the group of information outputs of which are connected to groups of information inputs the command counter of the group of cycle counters, the increment register and with the first group of information inputs of the switch b The formation of the operational address of the operative memory, the group of information outputs of which is connected to the group of information inputs of the register of the executive address, the group of information outputs of which is connected to the first group of inputs of the adder and the first group of information inputs of the switch of the address of the operational memory, the group of information outputs of which is connected to the group of address the inputs of the operational storage unit, the control inputs of which from operative memory control switch outputs, the first control input of which is connected to the control memory address switch input, the first data switch control input 1 and the output output of allowing external access to the processor's RAM and the microoperation processor, end output the processor which is connected to the first input of the element And block start-stop, the second input of which is connected to the BTophiM generator output so pulses, with the synchronization input of the operating unit and with the first control input of the microoperation processor, the second control input of which is connected to the first output of the clock generator, the control input of which is connected to the trigger output of the start-stop unit, the input of which is zero connected to the output of the element And block start-stop, the installation input unit trigger unit start-stop is connected to the start input of the processor, the group of outputs of the code field of the logic conditions of the driver 1 of the operation with dinene with a group of control inputs of a logical conditions multiplexer, a group of information inputs of which are connected to a group of information outputs of a group of cycle counters and a group of information outputs of an operation unit, a group of address inputs of which are connected to groups of outputs of the first and second blocks of elements And assignment, the microcode opcode microcode code is connected to the information input

формировател  микроопераций, первый второй третий, четвертый и п тый выходы третьей группы управл ющих выходов которого соединены соответственно с входами синхронизации регистра адресации первого операнда, регистра адресации второго операнда, с управл ющим входом первого коммутатора операндов, с управл кнцим входом второго коммутатора операндов, с управл ющим входом первого блока элементов И и с управл кхцим входом второго блока элементов И, первый, второй и третий выходы четвертой группы управл югг их выходов формировател  микроопераций соединены соответственно с вторым управл ющим входом коммутатора данных, с вторым управл ющим входом коммутатора уп- равлени  оперативным запоминающим устройстЕом и с третьим управл ющим входом ко а утатора управлени  оператив ным3 апоминающим устройством, первый, второй и третий выходы п той группы управл ющих выходов формировател  микроопераций соединены Соответственно с входом синхронизации регистра исполнительного адреса, с входом синхронизации регистра приращений и с управл ющим входом коммутатора, блока формировани  исполнительного адреса оперативного запоминающего устройства, втора the microoperation driver, the first second third, fourth and fifth outputs of the third group of control outputs are connected respectively to the synchronization inputs of the address register of the first operand, the second operand address register, with the control input of the first operand switch, with the control of the input of the second operand switch, with the control input of the first block of elements And with the control of the input of the second block of elements And, the first, second and third outputs of the fourth group control the yugg of their outputs of the microwaper operations are connected respectively with the second control input of the data switch, with the second control input of the control switch of the operational storage device and with the third control input of the control unit of the operational3 storage device, the first, second and third outputs of the fifth group of control outputs The driver of microoperations is connected, respectively, with the synchronization input of the register of the executive address, with the synchronization input of the increment register and with the control input of the switch, the form block ani executive address of the random access memory, second

группа информационных входов которого соединена с группой выходов сумматора, втора  группа входов которого соединена с группой информационных выходов регистра приращений, группа информационных выходов регистра адресации первого операнда и группа информационных выходов ре- . гистра адресации второго операнда соединены соответственно с первыми иthe group of information inputs of which is connected to the group of outputs of the adder, the second group of inputs of which is connected to the group of information outputs of the increment register, the group of information outputs of the register of addressing the first operand and the group of information outputs of the re-. gistra addressing the second operand are connected respectively with the first and

вторыми группами информационных входов первого и второго коммутаторов операндов, группы информационных выходов которых соединены соответственно с группой входов первого и второго блоков элементов И, группа адресных входов процессора соединена с второй группой информационных входов коммутатора адреса оперативного запоминающего устройства, один из входов группы адресных входов процессора соединен с четвертым уп равл ющим входом коммутатора управлени  оперативным запоминающим устройством , а другой соединен с п тым управл ющим входом коммутатора управлени  оперативным запоминающим устройством и с третьим управл ющим входом коммутатора данных, перва , втора  и треть  группы информационных входов-выходов которого соединены соответственно с группой информационных входов-выходов внешних данных процессора, оперативного запоминающего устройства и операционного блока, группа информационных выходов счетчика команд соединена с группой адресных ЕЕХОДОВ блока пам ти команд, выход мультиплексора логических условий соединен с вторым входом первого элемента ИЛИ, группа информационных входов процессора соединена с группой информационных входов блока элементов И, выход прерывани  формировател  микроопераций образует выход прерывани  процессора, а выход второго элемента ИЛИ соединен с входом синхронизации счетчика командthe second groups of information inputs of the first and second switches of the operands, the groups of information outputs of which are connected respectively to the group of inputs of the first and second blocks of elements I, the group of address inputs of the processor are connected to the second group of information inputs of the switch of the operational memory address with the fourth control input of the control switch of the random access memory, and the other is connected with the fifth control in On the switch memory control unit and with the third control input of the data switch, the first, second and third groups of information inputs / outputs of which are connected respectively to the information inputs / outputs group of external data of the processor, random access memory and operation unit, group of information outputs of the program counter connected to the group of addressable TRACKS of the command memory, the output of the logical conditions multiplexer is connected to the second input of the first OR element, the group of information inputs of the processor is connected to the group of information inputs of the block of elements AND, the output of the interrupt of the microoperations generator forms the output of the interrupt of the processor, and the output of the second element OR is connected to the synchronization input of the command counter

2. Процессор по п. 1, отличающийс  тем, что формирователь микроопераций содержит регистр, первый, второй и третий дешифраторы, первый и второй элементы И, элемент ИЛИ, первый вход которого соединен .с первым выходом первого дешифратора , группа информационных входов которого соединена с первой группой выхода регистра, втора  группа выходов которого соединена с группой информационных входов второго дешифратора , управл ющий вход которого соединен с управл ющим входом третьего дешифратора, с первыми входами первого и второго элементов И, с входом синхронизации регистра и с первым управл ющим входом формировател , треть  группа выходов регистра соединена с информационным входом третьего дешифратора, перва  группа выходов которого соединена с первой группой входов элемента ИЛИ, втора  группа входов которого соединена с первой группой выходов второго дешифратора , управл ющий вход первого дешифратора соединен с вторым управл кнцим входом формировател , первый выход регистра соединен с вторым входом второго элемента И и с выходом конца команды формировател , перва  и втора  группы управл ющих выходов формировател  соединены соответственно с второй группой выходов второго дешифратора., и с второй группой выходов третьего дешифратора , первый, второй, третий, четвертый и п тый выходы третьей группы управл квдих выходов формировател  соединены соответственно с выходом второго элемента И, с вторым, третьим , четвертый и п тым выходами регистра , шестой выход регистра соединен с вторым входом первого элемента И и с первым выходом четвертой группы управл ющих выходов формировател , второй и третий выходы четвертой группы управл ющих выходов которого соединены соответственно с выходом первого элемента И и с седьмым выходом регистра, первый, второй и третий выходы п той группы управл ющих выходов формировател  соединены соответственно с вторым выходом первого дешифратора, с третьим выходом первого дешифратора и с восьмым выходом регистра, четверта , п та  и шеста  группы выходов которого соединены соответственно с группой выходов кода операций формировател , с группой выходов управлени  коммутатором индексов формировател  и с группой выходов пол  кодов логических условий формировател , дев тый и дес тый выходы регистра и выход элемента ИЛИ соединены соответственно с выходом разрешени  вноинего доступа к оперативному запоминающему устройству формировател , с выходом конца работы процессора формировател  и выходом прерывани  формировател , информационный вход регист ра соединен с информационным входомформировател ,2. The processor according to claim 1, characterized in that the microoperation driver contains a register, first, second and third decoders, first and second AND elements, an OR element whose first input is connected to the first output of the first decoder, the group of information inputs of which are connected to the first register output group, the second group of outputs of which is connected to the group of information inputs of the second decoder, the control input of which is connected to the control input of the third decoder, with the first inputs of the first and second elements And, with the register synchronization input and with the first control input of the generator, the third group of register outputs is connected to the information input of the third decoder, the first group of outputs of which is connected to the first group of inputs of the OR element, the second group of inputs of which is connected to the first group of outputs of the second decoder, control input The first decoder is connected to the second control input of the driver, the first output of the register is connected to the second input of the second element I and to the output of the end of the driver command, the first and the torus of the control outputs of the driver are connected respectively to the second group of outputs of the second decoder. And the second, control outputs of the driver, are connected to the second group of outputs of the third decoder, first, second, third, fourth and fifth the second, third, fourth, and fifth register outputs, the sixth register output is connected to the second input of the first element I and to the first output of the fourth group of control outputs of the driver, the second and third outputs The fourth group of control outputs of which are connected respectively to the output of the first element I and to the seventh register output, the first, second and third outputs of the fifth group of control outputs of the driver are connected respectively to the second output of the first decoder, to the third output of the first decoder and to the eighth output the register, the fourth, the fifth, and the pole of the output group of which are connected respectively to the output group of the operation code of the generator, to the group of outputs of the control by the switch of indexes of the generator and with the output of the field of logical conditions codes of the generator, the ninth and tenth outputs of the register and the output of the OR element are connected respectively to the output of permitting access to the operational memory of the generator, and the output of the processor output end, and the information input of the register is connected to information logger

Изобретение относитс  к автоматике и вычислительной технике и может быть использовано при построении .The invention relates to automation and computing and can be used in the construction.

ЭВМ и вычислительных систем с микропрограммным управлением и высоким быстродействием. Известны микропрограммные процес серы, содержащие пам ть команд, пам ть микрокоманд, регистр адреса ми рокоманд, оперативную пам ть, опера ционный блок и счетчик команд flj, C2J, f3J. Недостатками таких устройств  вл ютс  узка  область применени  и низкое быстродействие. Наиболее близким к предлагаемому по технической сущности и достигаемому положительному эффекту  вл етс  микропрограммный процессор, содержащий операционный блок, оперативное запоминающее устройство, счетчик команд, блок микропрограммн го управлени , посто нное запоминаю щее устройство, триггер режима, п ть элементов И, дешифратор иденти фикации, триггер прерываний, два элемента ИЛИ, элемент ИЛИ-НЕ, группу элементов И, причем первые выходы блока микропрограммного управлени  соединены с первыми входами опе рационного блока, первые выходы которого соединены через оперативное запоминающее устройство с вторыми входами операционного блока, вторые выходы соединены с входами счетчика команд, выходы которого соединены с третьими входами операционного блока и первыми входами группы элементов И, вторые входы которой соединены с третьим выходом операционн го блока, а управл ющие входы подключены к первому выходу Tt Hrrepa, режима, первый вход которого соедйнен с четвертым выходом операционнр го блока, а второй вход соединен с п тым выходом операционного блока, выходы группы элементов И соединены с входами посто нного запоминающего устройства команд операционной системы , выходы которого подключены к четвертым входам операционного блока , шестые выходы которого .соединены с первыми входами блока микропро раммного управлени , а п тый вход соединен с первым выходом триггера прерываний, второй выход которого подключен к второму входу блока мик ропрограммного управлени , второй вход соединен с входом устройства, а первый вход соединен с выходом пер вого элемента ИЛИ, первый вход кото рого соединен с выходом первого эле мента И, второй вход соединен с выходом второго элемента И, третий вход соединен с выходом третьего элемента И, четвертый вход соединен с выходом четвертого элемента И, а п тый вход подключен к выходу п тог элемента И, первый вход которого соединен с первым выходом триггера режима, а второй вход соединен с первым выходом посто нного запоминаю щего .устройства микрокоманд, первым входом элемента ИЛИ-НЕ и первым входом второго элемента ИЛИ, выход которого подключен к первому входу первого элемента И, второй вход которого соединен с первым выходом дешифратора идентификации, второй выход которого соединен с первым входом второго элемента И, второй вход которого соединен с выходом элемента ИЛИ-НЕ и первым входом третьегр элемента И, второй вход которого соединен с третьим выходом дешифратора идентификации, вход которого соединен с вторыми выходами блока микропрограммного управлени , третьи выходы которого подключены к входу посто нного запоминающего устройства микрокоманд, вторые выходы которого соединены с третьими входами блока микропрограммного управлени , а третий выход соединен с вторым входом второго элемента ИЛИ, вторым входом элемента ИЛИ-НЕ и первым входом четвертого элемента И, второй вход которого подключен к второму выходу триггера режима С4. Недостатками известного устройства  вл ютс  узка  область применени  и низка  производительность. Узка  область применени  обусловлена недостаточной номенклатурой дисциплин формировани  исполнительного адреса, Например, в данном устройстве не реализованы специальные режимы индексной адресации: с продвижением индекса, когда исполнительный адрес Aj формируетс  на основе значени  индекса ЛР и значени  смещени  D в соответствии с соотношением A.rDR + D, JI JR+f, ie 1,N где N - мощность множества исполнительных адресов; с посто нным шагом Л(л 1) приращени  индекса, когда исполнительный, адрес А. формируетс  на основе значени  f И шага л по формуле Д.г| J .(2) VjE 2,N ; Л./.44,4-const I с переменным шагом 3 Д,-(г), (1 е 1,м ) приращени  индекса,, когда исполнительный гщрес А.; формируетс  на основе значени  А шага С по формуле ..( y,.,NMpA..4. Hr.ni Указанные режимы формировани  адреса характерны при решении задач обработки больших массивов данных в реальном масштабе времени. Отсутствие аппаратно-микропрограммных средств реализации этих режимов приводит к существенному сужению обла ти применени  известного устройств Низка  производительность устро ства обусловлена тем, что реализаци  специальных режимов адресации данных требует обращени  к подпрог раммам формировани  исполнительных адресов дл  этих режимов, что требует значительных затрат времени н обращени  к ОЗУ ЭВМ. Формирование исполнительного ад реса в режиме индексной адресации с продвижением индекса требует вре мени Т,, которое оцениваетс  по формуле Т 11 где t - врем  выборки значени  ин декса из ОЗУ; -1-12 - врем  выполнени  сложени  ЛК и J) } -1Ъ - врем  увеличени  значени  индекса на 1; -14 врем  выдачи А: ; врем  запоминани  в ОЗУ продвинутого индекса; - врем  обращени  к подпрог рамме формировани  исполн тельного адреса в данном режиме. На формирование исполнительного адреса в режиме индексной адресации с посто нным шагом приращени  индекса требуетс  врем  f , оценив мое по формуле t 2 где t - врем  считывани  из ОЗУ з чени  А,-. ; 22 врем  считывани  из ОЗУ з чени  шага и ; 23 врем  сложени  А -. и л t24 - врем  записи в ОЗУ значен i 2Г врем  выдачи . t2fc - врем  обращени  к подпрог рамме формировани  исполн тельного адреса в данном режиме. При использовании режима индекс ной адресации с переменным шагом приращени  индекса врем  формирова ни  исполнительного адреса Т оцениваетс  по формуле , где tj - врем  записи в ОЗУ значени  А ; 32 врем  формировани  адреса шага Л ; i JJ - врем  считывани  из ОЗУ значени  д. ; 34 - врем  сложени  А j и д } 3S врем  выдачи А,- ; 36 врем  обращени  к подпрограмме формировани  исполнительного адреса в данном режиме. Анализ выражений (41 - (6) показывает , что доминирующими величинами в них  вл ютс  слагаемые, св занные с частыми операци ми обращени  к ОЗУ, что приводит к существенному снижению производительности процессора . Это особенно ощутимо при резком возрастании интенсивности использовани  указанных режимов адресации при обработке больших массивов данных, привод щем к снижению системной производительности за счет частых обращений к ОЗУ. Таким образом, низка  производительность известного устройства обусловлена высокой чувствительностью к изменению рабочей нагрузки при переходе к выполнению обработки больших массивов данных, дол  которой превышает 50% объема алгоритмов решени  таких задач. Поскольку в известном устройстве отсутствуют элементы и св зи дл  аппаратно-микропрограммной реализации указанных режимов адресации, повышение производительности в нем невозможно. . Цель изобретени  -.расширение области применени  путем введени  специальных режимов адресации данных и динамического изменени  формата команды и повьаление производительности микропрограммного процессора. Поставленна  цель достигаетс  тем, что в микропрограммный процессор , содержащий блок пам ти команд, блок пам ти микрокоманд, блок оперативного запоминающего устройства, операционный блок, генератор тактовых импульсов, первый элемент ИЛИ, регистр адреса микрокоманд, счетчик команд, формирователь микроопераций, причем выход модифицируемого разр да адреса следующей микрокоманды блока пам ти микрокоманд соединен с первым входом первого элемента ИЛИ, группа выходов кода операций формировател  микроопераций соединена с группой входов кода операций операционного блока, первый выход генератора тактовых импульсов соединен с входом синхронизации регистра адреса микрокоманд, введены блок элементов И, коммутатор адреса микрокоманду, мультиплексор логических условий, коммутатор индексов, второй, элемент ИЛИ, коммутатор адреса оперативного запоминающего устройства, коммутатор управлени  оперативным запоминающим устройством, коммутатор данных, блок формировани  исполнительного адреса регистров общего на начени , состо щий из регистра адресации первого операнда, регистра адресации второго операнда, первого и второго коммутаторов операндов, первого и второго блоков элементов И, блок формировани  исполнительного адреса оперативного запоминающего устройства/ состо щий из регистра исполнительного адреса, регистра приращений, сумматора и коммутатора блок индексных счетчиков, состо щий из группы счетчиков индексов, блок счетчиков циклов, состо щий из груп пы счетчиков циклов, блок пуска-останова , состо щий из элемента И и триггера, причем управл ющий вход процессора соединен с управл ющими входами блока пам ти команд, блока элементов И и с первым входом второго элемента ИЛИ, выходы первой группы управл ющих выходов формировател  микроопераций соединены соответственно с вторым входом второг элемента ИЛИ, со счетными входами, входами синхронизации счетчиков цик лов и со счетным входом счетчика команд, втора  группа управл ющих выходов формировател  микроопераций соединена со счетными входами и вхо дами синхронизации счетчиков индексов , группа информационных входов которых соединена через шину команд с группой выходов блока пам ти команд , с .группой информационных выходов блока элементов И, с первой группой информационных входов комму татора индексов, с группой информационных входов регистра адресации первого операнда и регистра адресации второго операнда и с первой группой информационных входов комму татора адреса микрокоманды, втора  группа информационных входов которо го соединена с выходом первого элемента ИЛИ и с группой выходов немодифицируемой части адреса следующей микрокоманды блока пам ти микрокоманд , вход адреса которого соединен с информационным выходом регистра адреса микрокоманд, информационный вход которого соединен с в,ыходом коммутатора адреса микрокоманды, уп равл ющий вход которого соединен с выходом конца команды формировател  микроопераций, группа выходов управ лени  коммутатором индексов которого соединена с группой управл ющих входов коммутатора индексов, втора  группа информационных входов которого соединена с группой входов кон тант устройства, группа информационных выходов группы счетчиков индексов соединена с третьей группой информационных входов коммутатора индексов , группа информационных выходов которого соединена с группами информационных входов счетчика команд группы счетчиков циклов, регистра приращений и с первой группой информационных входрв коммутатора блока формировани  исполнительного адреса оперативного запоминающего устройства , группа информационных выходов которого соединена с группой информационных входов регистра исполнительного адреса, группа информационных выходов которого соединена с первой группой входов сумматора и первой группой информационных входов коммутатора адреса оперативного запоминающего устройства, группа информационных выходов которого соединена с группой адресных входов блока onepa-i тивного запоминающего устройства, управл ющие входы которого соединены с выходами коммутатора управлени  оперативным запоминающим устройством , первый управл ющий вход которого соединен с управл ющим входом коммутатора адреса оперативного запоминающего устройства, с первым управл ющим входом коммутатора данных и с выходом разрешени  внешнего доступа к блоку оперативного запоминаиощего устройства процессора и формировател  микроопераций, выход конца работы-процессора которого соединен с первым входом элемента И блока пуска-останова, второй вход которого соединен со вторым выходом генератора тактовых импульсов, с входом-синхронизации операционного блока и с первым управл ющим входом формировател  микроопераций, второй управл ющий вход которого соединен с первым выходом генератора тактовых импульсов, управл ющий вход которого соединен с выходом триггера блока пуска-останова, вход установки в ноль которого соединен с выходом элемента И блока пуска-останова , вход установки в единицу триггера блока пуска-останова соединен с входом пуска процессора, группа выходов пол  кода логический условий формировател  микроопераций соединена с группой управл ющих входов мультиплексора логических условий, группа информационных входов которого соединена с группой информационных выходов группы счетчиков циклов и группой информаг-уионных выходов операционного блока, группа адресных входов которого соединена с группами выходов первого и второго блоков элементов И блока формировани  исполнительного адреса регистров общего назначени , выход кода микроопераций блока пам ти микрокоманд соединен с информационным входом формировател  микроопераций, первый, второй , третий, четвертый и п тый выходы третьей группы управл5пощих выходов которого соединены соответственно с входами синхронизации регистра адресации первого операнда, регистра адресации второго операнда, с управл ющим входом первого коммутатора операндов, с управл квдим входом первого блока элементов И и с управл ющим входом второго блока элементов И, первый, второй и третий выходы четвертой группы управл кжцих выходов формировател  микроопераций соединены соответственно с вторым управл ющим входом коммутатора данных с вторым управл ющим входом коммутатора управлени  оперативным запоминающим устройством и с третьим управл ющим входом коммутатора уп- равлёни  оперативным запоминающим устройством, первый, второй и третий выходы п той группы управл ющих выходов, формировател  микроопераций соединены соответственно с входом (Синхронизации регистра исполнительного адреса, с входом синхронизации регистра приращений и с управл ющим входом коммутатора, блока формировани  исполнительного адреса оперативного запоминающего устройства , втора  группа информационных входов которого соединена с группой выходов сумматора, втора  группа входов которого соединена с группой информационных выходов регистра приращений , группа информационных выходов регистра адресации первого операнда и группа информационных выходов регистра адресации второго операнда соединены соответственно с первыми и вторыми группами информационных входов первого и второго коммутаторов операндов, группы информационных выходов которых соединены соответственно с группой входов первого и второго блоков элементов И, группа адресных входов процессора соединена с второй группой информационных входов коммутатора адреса оперативного запоминающего устройства , один из входов группы адресньрс входов процессора соединен с четвертым управл ющим входом коммутатора управлени  оперативным запоминающим устройством, а другой соединен с п тым управл ющим входом коммутатора управлени  оперативным запоминающим устройством и с третьим управл ющим входом коммутатора данных, перва , втора , и треть  группы информационных входов-выходов которого соединены соответственно с группой информационных входов-выходов внешних данных процессора, оперативного запоминающего устройства и операционного блока, группа информационных выходов счетчика команд соединена с группой адресных входов блока пам ти команд , выход мультиплексора логических условий соединен с вторым входом первого элемента ИЛИ, группа информационных входов процессора соединед на с группой информационных входов блока элементов и, выход прерывани  формировател  микроопераций образует выход прерывани  процессора, а выход второго элемента ИЛИ соединен с входом синхронизации счетчика команд.Computer and computer systems with firmware control and high speed. Known are microprocessor sulfur processes that contain the instruction memory, the microinstruction memory, the microcommand address register, the RAM, the operating unit and the command counter flj, C2J, f3J. The disadvantages of such devices are narrow scope and low speed. The closest to the proposed technical essence and the achieved positive effect is a microprogrammed processor containing an operating unit, random access memory, command counter, microprogrammed control unit, persistent storage, mode trigger, five And elements, an identifier decoder, interrupt trigger, two OR elements, OR-NOT element, AND group of elements, and the first outputs of the firmware control block are connected to the first inputs of the operating unit, the first ones the outputs of which are connected through a random access memory to the second inputs of the operating unit, the second outputs are connected to the inputs of the command counter, the outputs of which are connected to the third inputs of the operating unit and the first inputs of the group of elements I, the second inputs of which are connected to the third output of the operating unit, and the control the inputs are connected to the first output of Tt Hrrepa, the mode whose first input is connected to the fourth output of the operating unit, and the second input is connected to the fifth output of the operating unit, the outputs of the group elements And are connected to the inputs of a permanent memory of operating system commands, the outputs of which are connected to the fourth inputs of the operating unit, the sixth outputs of which are connected to the first inputs of the microprocessor control unit, and the fifth input is connected to the first output of the interrupt trigger, the second output of which is connected to the second input of the microprogram control unit, the second input is connected to the device input, and the first input is connected to the output of the first OR element, the first input of which is connected to the output p The first element is And, the second input is connected to the output of the second element And, the third input is connected to the output of the third element And, the fourth input is connected to the output of the fourth element And, and the fifth input is connected to the output of the fifth element And, the first input of which is connected to the first the output of the mode trigger, and the second input is connected to the first output of the persistent microcommand device, the first input of the OR-NOT element and the first input of the second OR element, whose output is connected to the first input of the first AND element, the second input of which with the first output of the identification decoder, the second output of which is connected to the first input of the second element AND, the second input of which is connected to the output of the OR-NOT element and the first input of the third one of the AND element, the second input of which is connected to the third output of the identification decoder whose input is connected to the second outputs microprogram control unit, the third outputs of which are connected to the input of the persistent storage of microcommands, the second outputs of which are connected to the third inputs of the microprogram control unit And a third output coupled to a second input of the second OR gate, the second input of OR-NO element and the first input of the fourth AND gate, the second input of which is connected to the second output of the flip-flop mode C4. The disadvantages of the known device are narrow scope and low productivity. The narrow scope is due to the insufficient range of disciplines for forming the executive address. For example, this device does not implement special index addressing modes: with index advancement, when the executive address Aj is formed based on the value of the LR index and offset value D according to the ratio A.rDR + D , JI JR + f, ie 1, N where N is the power of the set of executive addresses; with a constant step L (l 1) increment of the index, when the executive, address A. is formed on the basis of the value f and step l according to the formula D. форму | J. (2) VjE 2, N; L./. 44,4-const I with a variable step of 3 D, - (d), (1 e 1, m) index increments, when the executive gap A .; formed on the basis of the value A of step C according to the formula .. (y,., NMpA..4. Hr.ni. The indicated address formation modes are characteristic for solving problems of processing large data arrays in real time. The absence of hardware-firmware means of implementing these modes results to a significant narrowing of the scope of application of the known devices. The low productivity of the device is due to the fact that the implementation of special data addressing modes requires reference to the subprograms for the generation of executive addresses for these modes, It requires a significant investment of time in accessing computer RAM. The generation of an execution address in the index addressing mode with advancement of the index requires a time T, which is estimated using the formula T 11 where t is the sampling time of the index value from RAM; -1-12 - the execution time of the addition of the LC and J)} -1b - the time of increasing the value of the index by 1; -14 time to issue A:; the storage time in the advanced index RAM; - time of accessing the subprogramme of the formation of the executive address in this mode. The formation of the executive address in the index addressing mode with a constant increment of the index requires time f, estimated by the formula t 2 where t is the read time from the RAM of the A, -. ; 22 is a readout time from the RAM of a step and; 23 addition time A -. and l t24 - write time in RAM is the value of i 2Г time of issue. t2fc is the time of access to the subprogramme of the formation of the executive address in this mode. When using the index addressing mode with a variable increment of the index, the formation time of the executive address T is estimated by the formula, where tj is the write time in the RAM of the value A; 32 time of formation of the address of step L; i JJ is the read time of the value of RAM from RAM; 34 is the addition time A j and g} 3S, the dispensing time A, -; 36 is the time for accessing the subroutine to form the executive address in this mode. Analysis of the expressions (41 - (6)) shows that the dominant values in them are terms related to frequent RAM access operations, which leads to a significant decrease in processor performance. This is especially noticeable with a sharp increase in the intensity of use of these addressing modes during processing large amounts of data, leading to a decrease in system performance due to frequent calls to the RAM. Thus, the performance of the known device is low due to the high sensitivity changes in the workload during the transition to processing large data arrays, the proportion of which exceeds 50% of the volume of algorithms for solving such problems. Since the known device has no elements and connections for the hardware-firmware implementation of the specified addressing modes, it cannot improve performance. of the invention — expanding the scope by introducing special data addressing modes and dynamically changing the format of the command and increasing the performance of the firmware processors The goal is achieved by the fact that a microprogram processor containing an instruction memory, microinstructions memory, random access memory, operational unit, clock generator, first OR element, microinstruction address register, instruction counter, microoperation driver, and output modifiable the address of the next microcommand of the microinstructor memory block is connected to the first input of the first element OR, the group of outputs of the operation code of the microoperations generator is connected to the group of inputs The operations of the operation unit, the first output of the clock generator is connected to the synchronization input of the microinstructor address register, a block of AND elements are entered, an address microcontroller switch, a logic conditions multiplexer, an index switch, a second, an OR element, an address memory switch, an operational storage switch , data switch, the unit for generating the executive address of the common start registers, consisting of the address register of the first operand, re the address hub of the second operand, the first and second operand switches, the first and second blocks of AND blocks, the block of formation of the operative address of the operative storage device / consisting of the register of the executive address, the increment register, the adder and the switch block of index counters, consisting of a group of index counters, a cycle counter block consisting of a cycle counter group, a start / stop block consisting of an AND element and a trigger, the control input of the processor being connected to the control inputs a command memory block, an AND block and a first input of the second OR element, the outputs of the first group of control outputs of the microoperations shaper are connected to the second input of the second OR element, respectively, with counting inputs, loop counter synchronization inputs, and a second the group of control outputs of the microoperations former is connected to the counting inputs and the synchronization inputs of the index counters, the group of information inputs of which are connected via the command bus to the group of outputs of the block n Ams of commands, with a group of information outputs of the I block, with the first group of information inputs of the index switch, with a group of information inputs of the address register of the first operand and the address register of the second operand, and with the first group of information inputs of the switch of the microcommand address, second group of information inputs which is connected to the output of the first OR element and to the group of outputs of the unmodifiable part of the address of the next microcommand of the microcommand memory block, whose address input is connected to The microcontrols address register output, the information input of which is connected to the output of the microcommand address switch, the control input of which is connected to the output of the end of the microoperations command, the output control group of the index switch of which is connected to the control input group of the index switch, the second group of information the inputs of which are connected to the group of inputs of the device constants, the group of information outputs of the group of index counters is connected to the third group of information inputs s of the index switch, the group of information outputs of which is connected to groups of information inputs of the command counter of the group of cycle counters, the increment register and the first group of information inputs of the switch of the executive address generation unit of the operational memory, the group of information outputs of which are connected to the group of information inputs of the register of the executive address, group information outputs of which are connected to the first group of inputs of the adder and the first group of information Ion inputs of the switch of the random access memory address, the group of information outputs of which is connected to the group of address inputs of the one-storage device block, the control inputs of which are connected to the outputs of the control switch of the operational memory, the first control input of which is connected to the control input of the address switch memory device, with the first control input of the data switch and with the output of enabling external access to the unit about the storage device of the processor and the microoperation processor, the output of the end of the processor operation of which is connected to the first input of the start-stop unit I, the second input of which is connected to the second output of the clock generator, to the input-synchronization of the operating unit and to the first microoperations control input The second control input of which is connected to the first output of the clock pulse generator, the control input of which is connected to the trigger output of the start-stop unit, the installation input to which is connected to the output of the element I of the start-stop unit, the installation input into the trigger unit of the start-stop unit is connected to the processor start input, the output group of the code field of the logic conditions of the microoperation driver is connected to the group of control inputs of the logical conditions multiplexer, the group of information inputs of which are connected with a group of information outputs of a group of cycle counters and a group of informational outputs of an operational unit, the group of address inputs of which is connected to the groups of outputs of the first the second block of elements AND block forming the executive address of the general purpose registers, the output of the microoperations code of the microcommand memory block is connected to the information input of the microoperations generator, the first, second, third, fourth and fifth outputs of the third group of control outputs of the first register operand, the address register of the second operand, with the control input of the first switch of the operands, with control of the input of the first block of elements And and The first, second and third outputs of the fourth group of control outputs of the microoperations shaper are connected to the second control input of the data switch with the second control input of the control switch of the operational storage device and the third control input of the switch of the control unit The first, second and third outputs of the fifth group of control outputs, the microoperation driver, are connected respectively to the input (Syn onization of the register of the executive address, with the input of the register of increments of synchronization and with the control input of the switch, the block of formation of the operational address of the operational memory, the second group of information inputs of which are connected to the group of outputs of the adder, the second group of inputs of which are connected to the group of information outputs of the register of increments, the group of information the outputs of the address register of the first operand and the group of information outputs of the register of addressing the second operand are connected to responsibly with the first and second groups of information inputs of the first and second switches of operands, groups of information outputs of which are connected respectively to a group of inputs of the first and second blocks of elements I, a group of address inputs of a processor connected to a second group of information inputs of an on-chip memory address switch the address of the processor inputs is connected to the fourth control input of the control switch of the operational memory, and the other not with the fifth control input of the control switch of the random access memory and with the third control input of the data switch, the first, second, and third of the group of information inputs-outputs of which are connected respectively to the group of information inputs-outputs of the external data of the processor, random access memory and operational unit, the group of information outputs of the command counter is connected to the group of address inputs of the command memory block, the output of the logic conditions multiplexer is connected to the second input One of the first element OR, the group of information inputs of the processor are connected to the group of information inputs of the block of elements, and the output of the micro ops generator forms the output of the processor interrupt, and the output of the second element OR is connected to the synchronization input of the program counter.

5five

Кроме того, формирователь микроопераций содержит регистр, первый, второй и третий дешифраторы, первый и второй элементы И, элемент ИЛИ, первый вход которого соединен с пер0 вым выходом первого дешифратора,In addition, the microoperation driver contains the register, the first, second and third decoders, the first and second AND elements, the OR element, the first input of which is connected to the first output of the first decoder

группа информационных входов которого соединена с первой группой выходов регистра, втора  группа выходов которого соединена с группой инфор5 мационных входов второго дешифратора , управл ющий вход которого соединен с управл ющим входом третьего дешифратора, с первыми входами первого и второго элементов И, с входомthe group of information inputs of which is connected to the first group of outputs of the register, the second group of outputs of which is connected to the group of information inputs of the second decoder, the control input of which is connected to the control input of the third decoder, with the first inputs

0 синхронизации регистра и с первым . управл ющим входом формировател , треть  группа выходов регистра сЪединена с информационным входом третьего дешифратора, перва  группа0 register synchronization and with the first. the control input of the driver, the third group of outputs of the register is connected to the information input of the third decoder, the first group

5 выходов которого соединена с первой группой входов элемента ИЛИ, втора  . группа входов которого соединена с первой группой выходов второго дешифратора , управл ющий вход первого5 outputs of which are connected to the first group of inputs of the element OR, the second. the group of inputs of which is connected to the first group of outputs of the second decoder, the control input of the first

Q дешифратора соединен с вторым управл ющим входом формировател , первый выход регистра соединен с вторым входом второго элемента И-и с выходом конца команды формировател , перва  и втора  группы управл ющих выходов формировател  соединены соответственно с второй группой выходов второго дешифратора и с второй группой выходов третьего дешифратора , первый, второй, третий, четвер0 тый и п тый выходы третьей группы управл ющих выходов формировател  соединены соответственно с выходом второго элемента И, с вторым, третьим , четвертым и п тым выходами ре5 гистра, шестой выход регистра соединен с вторым входом первого элемента И и с первым выходом четвертой группы управл ющих выходов формировател , второй и третий выходы чет0 вертой группы управл ющих выходов которого соединены соответственно с выходом первого элемента И и с седьмым выходом регистра, первый, . второй и третий выходы п той групс пы управл ющих выходов формиров1ател  соединены соответственно с вторьом выходом первого дешифратора, с третьим выходом первого дешифратора и с восьмым выходом регистра, четверта , п та  и шеста  группы выходов которого соединены соответственно с группой выходов кода операций формировател , с группой выходов управлени  коммутатором индексов формировател  и с группой выходов пол  кодов логических условий формировател , дев тый и дес тый выходы регистра и выход элемента ИЛИ соединены соответственно с выходом разрешени  внешнего доступа к оперативному запоминающему устройству формировател , с выходом конца работы процессора и выходом прерывани  формировател , информационный вход регистра соединен с информационным входом.формировател .Q decoder is connected to the second control input of the driver, the first output of the register is connected to the second input of the second element I-and to the output of the end of the driver command, the first and second groups of control outputs of the driver are connected respectively to the second group of outputs of the second decoder and the second group of outputs of the third the decoder, the first, second, third, fourth and fifth outputs of the third group of control outputs of the driver are connected respectively with the output of the second element And, with the second, third, fourth and n the second outputs of the register, the sixth register output is connected to the second input of the first element I and the first output of the fourth group of control outputs of the former, the second and third outputs of the fourth group of control outputs of which are connected respectively to the output of the first element And and the seventh register output, the first, . the second and third outputs of the fifth group of control outputs of the driver are connected respectively to the second output of the first decoder, to the third output of the first decoder and to the eighth output of the register, the fourth, fifth and sixth groups of outputs of which are connected respectively to the output group of the operation code of the driver, c a group of control switch outputs of the generator indices and with a group of outputs of the field of logic codes of the generator, the ninth and tenth register outputs and the output of the OR element are connected respectively but with the output of enabling external access to the RAM of the driver, with the output of the end of the processor and the output of the interrupt of the processor, the information input of the register is connected to the information input of the former.

На фиг. 1 приведена функциональна  схема предл:агаемого микропрограммного процессора; на фиг. 2 - то же, формировател  микроопераций; на фиг. 3 - то же, коммутатора данных; на фиг.; 4 - то же, коммутатора индексов; на фиг. 5 - то же, коммутатора управлени  оперативным запоминающим устройством; на фиг. 6 - то же, мультиплексора логических условий v на фиг, 7 - то же, операционного блока; на фиг. 8 - 12 - схемы алгоритмов формировани  исполнительного адреса второго операнда дл  команд форматов R XI - R Jf5 соответственно . .FIG. 1 shows a functional diagram of the proposed: firmware microprocessor processor; in fig. 2 - the same, shaper micro-operations; in fig. 3 - the same as the data switch; in fig .; 4 - the same, switch indexes; in fig. 5 is the same as a random access control switch; in fig. 6 - the same, the multiplexer of the logical conditions v in FIG. 7 - the same, the operational unit; in fig. 8-12 show the algorithms for generating the executive address of the second operand for commands of the formats R XI - R Jf5, respectively. .

Микропрограммный процессор содержит блок 1 пам ти команд, блок 2 пам ти микрокоманд, блок 3 оперативного запоминающего устройства, блок 4 формировани  исполнительного адреса регистров общего назначени , формирователь 5 микроопераций, блок б индексных счетчиков, блок 7 счет ,чиков циклов, блок 8 формировани  исполнительного адреса оперативной пам ти, операционный блок 9, мультиплексор 10 логических условий, коммутатор 11 адреса микрокоманд, первый коммутатор 12 операнда, второй коммутатор 13 операнда, коммутатор 14 индексов, коммутатор 15 адреса оперативной пам ти, коммутатор 16 блока формировани  исполнительного адреса, коммутатор 17 управлени  оперативным запоминающим устройством, коммутатор 18 данных, группу входов 19 константы процессора, блок 20 пуска-останова, генератор 21 тактовых импульсов, регистр 22 адресации первого операнда, регист 23 адресации второго операнда, регистр 24 адреса микрокоманд, регистр 25 исполнительного адреса, регистр 26 приращений , счетчики 27 индексов, счетчик 28 команд, счетчики 29 циклов, сумматор 30, триггер 31 блока пуска-останова , первый блок элементов И 32 и второй блок элементов И 33 блока формировани  исполнительного адреса с регистров общего назначени , элемент И 34 блока пуска-останова, второй элемент ИЛИ 35, первый элемент ИЛИ 36, блок 37 элементов И, шину 38 команд, внутреннюю шину 39 дан| , ных, внешнюю шину 40 данных, информационную шину 41, управл ющий вход 42 процессора, вход 43 пуска, группу информационных входов 44 процессора , группу адресных входов 45 процессора , группу информационных вхо5 дов-выходов 46 внешних данных, выход 47 разрешени  внешнего доступа к оперативному запоминающему устройству , выход 48 конца работы процессора и выход 49 прерывани .The firmware contains block 1 of instruction memory, block 2 of microinstructions memory, block 3 of random access memory, block 4 of generating the executive address of general purpose registers, driver 5 microoperations, block b of index counters, block 7 counting, cycles memory addresses, operational unit 9, logical conditions multiplexer 10, switch 11 micro-command addresses, first operand switch 12, second operand switch 13, index switch 14, adress switch 15 RAM, switch 16 of the generation of the execution address, switch 17 of control of the random access memory, data switch 18, processor constant input group 19, start-stop unit 20, clock generator 21, addressing register 22 of the second operand, second address register 23 operand, register 24 addresses of micro-instructions, register 25 of the execution address, register 26 increments, counters 27 indices, counter 28 commands, counters 29 cycles, adder 30, trigger 31 of the start-stop unit, first block of elements 32 and the second block 33 and the elements forming a unit with the effective address general purpose registers, AND gate 34 blocks the start-stop, the second OR element 35, the first OR gate 36, the AND unit 37, the bus 38 commands the internal bus 39 is given | data, external data bus 40, information bus 41, processor control input 42, start input 43, processor information input group 44, processor address input group 45, external data information input-output group 46, output 47 enabling external access to a random access memory, processor output 48 exit and interrupt output 49.

0 Выходами формировател  5 микроопераций (фиг. 2/  вл ютс  выход 50 конца команды, втора  группа управл ющих выходов 51, выход 52 управлени  коммутатором индексов 52, пер5 вый 53, второй 54, третий 55, четвертый 56 и п тый 57 выходы третьей группы управл ющих выходов, перва  группа управл ющих выходов 58, первый 59, второй 60, третий 61 выходы чет0 вентой группы управл ющих выходов, группа выходов 62 кода операций, первый 63, второй 64 и третий 65 выходы п той груплы управл ющих выходов , выход 66 разрешени  внешнего0 The outputs of the microoperation driver 5 (Fig. 2 / are the command end output 50, the second group of control outputs 51, the output of the index switch control 52 52, the first 53, the second 54, the third 55, the fourth 56 and the fifth 57 outputs of the third group control outputs, the first group of control outputs 58, the first 59, the second 60, the third 61 outputs of the fourth group of control outputs, the output group 62 of the operation code, the first 63, the second 64 and the third 65 outputs of the fifth group of control outputs, output 66 external resolution

5 доступа к оперативному запоминающему устройству, выход 67 конца работы процессора, группа выходов 68 логических условий, второй 69 и первый 70 управл ющие выходы.5 of accessing the operational storage device, the output 67 of the end of the processor operation, the group of outputs 68 of logic conditions, the second 69 and the first 70 control outputs.

0 Формирователь 5 микроопераций содержит регистр 71, третий 72, второй 73 и первый 74 дешифраторы, первый 75 и второй 76 элементы И, элемент ИЛИ 77.0 Shaper 5 micro-operations contains the register 71, the third 72, the second 73 and the first 74 decoders, the first 75 and the second 76 AND elements, the OR element 77.

с Коммутатор 18 данных (фиг. 3 .включает коммутатор 78, элемент НЕ 79, первый 80, второй 81 и третий 82 блоки элементов И.with Switch 18 data (Fig. 3. includes a switch 78, the element is NOT 79, the first 80, the second 81 and the third 82 blocks of elements

Коммутатор 14 индексов (фиг. 4) содержит коммутатор 83, дешифраторThe switch index 14 (Fig. 4) contains the switch 83, the decoder

84 и элемент ИЛИ-НЕ 85. 84 and the element OR NOT 85.

Коммутатор 17 управлени  оперативным запоминающим устройством (фиг. 5) состоит ,из первого 86 и второго 87 одноразр дных коммутато5 ров.A switch 17 for managing a random access memory (FIG. 5) consists of the first 86 and second 87 single-bit switches.

Мультиплексор 10 логических условий (фиг. 6 ) включает коммутатор 88 и дешифратор 89.The multiplexer 10 logical conditions (Fig. 6) includes a switch 88 and a decoder 89.

Операцион;;ый блок 9 (фиг. 1) со0 держит арифметико-логический блок 90у блок 91 местного управлени , блок 92 регистров общего назначени , буферный регистр 93, первый 94, второй 95, третий 96 и четвертый 97The operational block 9 (Fig. 1) contains the arithmetic logic unit 90, the local control block 91, the general-purpose register block 92, the buffer register 93, the first 94, the second 95, the third 96 and the fourth 97

5 мультиплексоры и блок 98 элементов и. Процессор предназначен дл  выполнени  команд форматов регистррегистр (RR I и регистр - пам ть (RX). Формат команды PR содержит по л : код операции, адрес первого опе ранда IRI), адрес второго операнда IR2), а Команды RX - код операции, адрес первого операнда (R1) и сме щение {D ) . В обоих форматах адрес первого операнда R1 задает номер регистра общего назначени  в блоке 92 регист ров общего назначени  операционного блока 9 (фиг. 7), Смещение D за дает адрес первого числа в режимах пр мой адресации (адресации с индексацией ). Данные, обрабатывае 1ые процессором , хран тьс  в блоке 3 оперативно пам ти, а программа смещени , исполнительные адреса, индексы, начальные адреса подпрограмм и дополнени  счетчиков циклов (до записи их в соответствующие счетчики/ - в блоке 1 пам ти команд. Команды формата RX могут быть п ти типов, завис щих от режимов ад ресации Данных в пам ти. В предлагаемом процессоре предус мотрено п ть режимов адресации данных дл  RX-команд: пр ма  адресаци , когда исполнительный сщрес данных Aj формируетс  на основе информации о смещении D,- , считываемой из блока 1 пам ти команд по формуле A-D. , JeV , где N - метцность множества исполнительных адресов ; индексна  адресаци  с продвижени ем индекса, когда исполнительный адрес формируетс  на основе значени  индекса JR и смещени  в соответ ствии с формулой А. JP4IJ , J(jR+-f ; индексна  адресаци  без продвиже ни  индекса, когда исполнительный адрес формируетс  на основе соотношени  , A.JR+D ; индексна  адресаци  с посто нным шагом приращени  д ( Л 1 ) индекса когда исполнительный адрес формируетс  в соответствии с формулой А.Г |V. е 2,N ; А.А.4-& , 4 const; индексна  адресаци  с переменны шагом Л,- 4 (i) ; ( i е 1, N I прираще ни  индекса,когда исполнительный адрес формируетс  по формуле - °J ..А.,М. ,,4.{i Указанным режимам адресации соответствуют команды типов R XI - ЯХ5. Обща  характеристика адресации в процессоре, состоит в следующем. При выполнении команд формата RR адреса первого (R И и второго {R 2) операндов поступают через блок 4 формировани  исполнительного адреса дл  регистров общего назначени  на группу адресных входов операционного блока 9. Кодом операции ксниандЬ определ етс  начальный адрес микропрограммы выполнени  данной команды, при этсми код операции команды с выхода блока 1 через шину 38 команд и коммутатор 11 адреса микрокоманд записываетс  в регистр 24 адреса микрог команд, по которому микрокоманда выбираетс  из блока 2 и записываетс  блок 5. При выполнении команд формата RX адрес первого операнда R1 через блок 4 подаетс  на соответствующие разр ды группы адресных входов операционного блока 9. Формирование адреса второго операнда осуществл етс  сложнее и существенно зависит от типа команды. При выполнении команды типа RXI (фиг. 9) исполнительный адрес второго операнда задаетс  смещением D в формате команды. Этот адрес передаетс  через коммутаторы 14 и 16 в регистр 25 исполнительного адреса, по которому осуществл етс  адресаци  блока 3 оперативного запоминающего устройства. В блоке 3 по адресу, заданному в регистре 25, может производитьс  запись или считывание в соответствии с исполнительной командой и определ емые сигналами на выходах 60 и 61 формировател  5 микроопераций. Команды типа ВХ2 предназначены дл  организации так называемой магазинной обработки данных, когда адрес следующего числа на единицу больший предыдущего. RX 2 - команды позвол ют обрабатывать массивы данных . При этом загрузка индексов в счетчики 27 индексов производитс  заранее соответствующими командами из блока 1 пам ти команд, в поле которых указываетс  загружаемый код в счетчике 27 индекса., Исполнительный адрес очередного числа массива данных в этом случае формируетс  следующим образом. Смещение D во врем  выборки командного слова в последнем цикле выполнени  предыдущей команды через коммутаторы 14 и 16 с выхода блока 1 записываетс  в регистр 25. В следующем цикле первом цикле исполнени  данной команды } индекс с выход., счетчика 27 индекса через коммутатор 14 записываетс  в регистр 265 multiplexers and a block of 98 elements and. The processor is designed to execute the register register commands (RR I and register memory (RX). The format of the PR command contains: operation code, address of the first operand IRI), address of the second operand IR2, and Commands RX contains the operation code, address the first operand (R1) and the offset (D). In both formats, the address of the first operand R1 sets the general register number in block 92 of general purpose registers of operational block 9 (Fig. 7). Offset D gives the address of the first number in direct addressing (indexing) modes. The data processed by the processor is stored in block 3 of the operational memory, and the offset program, executive addresses, indices, initial addresses of the subroutines and additions to the cycle counters (before writing them to the corresponding counters / in block 1 of the instruction memory. Commands of the RX format There can be five types depending on the modes of Data Addressing in the memory. In the proposed processor, there are five data addressing modes for RX commands: direct addressing, when the executive data Aj is formed based on information about the offset D, - read The first is from command memory block 1 according to the formula AD., JeV, where N is the metric nature of the set of execution addresses, the indexing address with the advancement of the index, when the performance address is formed based on the value of the index JR and the offset in accordance with formula A. (jR + -f; index addressing without advancement of the index when the executive address is formed based on the ratio A.JR + D; index addressing with a constant increment increment (L 1) of the index when the executive address is formed in accordance with the formula A.G | V. e 2, N; A.A.4- & , 4 const; indexing addressing with variable steps L, - 4 (i); (i е 1, NI increments of the index, when the executive address is formed by the formula - ° J ..A., M., 4. {i. The specified addressing modes correspond to commands of the types R XI - ЯХ5. The general addressing characteristic in the processor consists in the following. When executing commands of the format RR address of the first (R AND and second {R 2) operands arrive through the block 4 forming the executive address for general purpose registers to the group of address inputs of the operation unit 9. The initial code address of the firmware at u The media operation code of the command from the output of block 1 via the command bus 38 and the microcommand address switch 11 is recorded in the microg instruction address register 24, at which the microcom is selected from block 2 and block 5 is recorded. to the corresponding bits of the group of address inputs of the operation unit 9. The formation of the address of the second operand is more complicated and depends greatly on the type of command. When executing an RXI instruction (FIG. 9), the executive address of the second operand is specified by the offset D in the instruction format. This address is transmitted through the switches 14 and 16 to the register 25 of the execution address, which is used to address block 3 of the random access memory. In block 3, the address specified in register 25 can be written or read in accordance with the executive command and determined by signals at outputs 60 and 61 of the microoperations 5. Commands of type BX2 are intended for organizing the so-called store data processing when the address of the next number is one greater than the previous one. RX 2 - commands allow processing of data arrays. Here, the loading of the indices into the index counters 27 is made in advance by the corresponding commands from the instruction memory block 1, in which the loadable code in the index counter 27 is indicated. In this case, the executive address of the next number of the data array is formed as follows. The offset D during the selection of the command word in the last execution cycle of the previous command via switches 14 and 16 from the output of block 1 is written to register 25. In the next cycle of the first cycle of execution of this command} index from output, index counter 27 via switch 14 is written to register 26

приращений. Во втором цикле исполнени  данной команды производитс  продвижение индекса в счетчике 27 индекса и одновременно просуммированное значение смещени  индекса на сумматоре 30 через ког мутатор 16 поступает в регистр 25 исполнительного адреса и фиксируетс  в нем. В третьем цикле исполнени  данной команды производитс  выборка числа (или запись из блока 3 по исполнительному адресу и подача (или прием его в операционный блок 9, в котором оно обрабатываетс  в соответствии с кодом операции, подаваемым с выхода 62 блока 5 на вход кода операции операционного блока 9. Если данна  команда оказываетс  короткой (типа сложени ), то третий цикл ее исполнени   вл етс  последним, в котором производитсд выборка очередного командного слова из блока 1 пам ти команд, при этом на выходе 50 конца команды блока 5 вырабатываетс  сигнал , определ ющий конец команды и настраивающий коммутатор 11 адреса микрокоманд на прием кода операции команды в регистре 24 в качестве адреса микрокоманды. Во всех циклах, когда сигнал конца команды отсутствует , в регистре 24 адреса микрокоманды записываетс  адрес очередной микрокоманды с соответствующего выхода блока 2 пам ти микрокоманд. Таким образом, коротка  команда .в режиме RX2 выполн етс  за три машинных цикла . В то же врем  коротка  команда в режиме РХ1 выполн етс  за один машинный цикл (фиг. 10 и 9 ). Команды типа RX3 реализуютс  аналогично командам Р Х2, но без продвижени  индекса (фиг. 11).increments. In the second execution cycle of this command, the index is promoted in the index counter 27 and simultaneously the summed index displacement value on the adder 30 through which the mutator 16 enters the register 25 of the executive address and is fixed in it. In the third cycle of the execution of this command, a number is sampled (or a record from block 3 at the executive address and submission (or its reception to the operational block 9, in which it is processed in accordance with the operation code given from the output 62 of the block 5 to the input of the operation code block 9. If the given command is short (such as addition), the third cycle of its execution is the last one in which the next command word is sampled from the instruction memory block 1, while at the output 50 of the command end of the block 5 it generates TC signal defining the command end and setting the micro-command address switch 11 to receive the operation code of the command in register 24 as the micro-command address. In all cycles when there is no command end signal, the micro-command address register 24 records the address of the next micro-command from the corresponding output of block 2 memory of micro-instructions. Thus, a short command in the RX2 mode is executed in three machine cycles, while a short command in the PX1 mode is executed in one machine cycle (Fig. 10 and 9). Commands like RX3 are implemented similarly to commands P x2, but without advancing the index (Fig. 11).

Команды типа R Х4 и RX5 предназначены дл  обработки массивов информации ,с шагом выборки чисел большим единицы , что необходимо при решении задач классификации и сортировки.Commands like R X4 and RX5 are intended for processing arrays of information, with a step of sampling numbers greater than one, which is necessary when solving problems of classification and sorting.

Адрес первого числа задаетс  аналогично описанному дл  команд -формата RXI. Дл  формировани  адресов второго и последующих чисел микропрограммно из блока 1 пам ти считывают значени  величины шага 4 . Причем дл  режима R Х4 считывание выполн етс  один раз, а дл  режима RX5 значение шага считываетс  из блока 1 при обработке у каждого числа массива и очередной исполнительный адрес числа формируетс  суммированием значени  предыдущего исполнительного адреса и значени  4(4 в режиме RX5I. Число слов, обрабатываемых в массиве чисел, задаетс  дополнением до переполнени  i -го (1 1, 2, ...hf счетчика 29 циклов заранее аналогично загрузке счетчиков 27 индексов и при выполнении инструкции обработки массива чисел производитс  проверка услови  переполнени  соответствующего i-ro счетчика 29 циклов в мультиплексоре 10 логических условий. При переполнении i-ro счетчика 29 циклов производитс  модификаци  адреса микрокоманды , что приводит к выходу из выполнени  соответствующей инструкции при этом продвижение t-ro счетчика 29 циклов производитс  параллельно с выработкой А на сумматоре 30.The first number address is set in the same way as described for the RXI format commands. To form the addresses of the second and subsequent numbers, the firmware values from the memory block 1 read the values of step 4. Moreover, for the R X4 mode, the reading is performed once, and for the RX5 mode, the step value is read from block 1 during processing at each array number and the next executive address of the number is formed by summing the value of the previous executive address and the value 4 (4 in RX5I mode. Number processed in the array of numbers, is specified by the addition to the i-th overflow (1 1, 2, ... hf of the counter 29 cycles in advance, similarly to the loading of the index counters 27, and when executing the processing of the array of numbers, the overflow condition is checked the corresponding i-ro counter 29 cycles in the multiplexer 10. Logical conditions. If the i-ro counter 29 cycles overflows, the microcommand address is modified, which leads to exit from the execution of the corresponding instruction while advancing the t-ro counter 29 cycles is performed in parallel with the generation A on the adder thirty.

Таким образом, предлагаемый микропрограммный процессор обладает широкими возможност ми адресации с малыми затратами времени на их реализацию , особенно дл  обработки массивов данных, например, в режиме RX4, дл  формировани  исполнительных адресов дл  К чисел затрачиваетс  К + 1-й машинный цикл.Thus, the proposed microprocessor processor has extensive addressing capabilities with low time costs for their implementation, especially for processing data arrays, for example, in the RX4 mode, K + 1-th machine cycle is spent to generate executive addresses for K numbers.

Основные узлы и блоки процессора имеют следующее назначение.The main nodes and blocks of the processor have the following purpose.

Блок 1 пам ти команд предназначен .дл  хранени  программы вычислительного процесса, начальных адресов подпрограмм, значений индексов, приращений и смещений адресов. Выборка из него в режиме вычислени  осуществл етс  по адресу, заданному в счетчике 28 команд. С выхода блока 1 информаци  выдаетс  в шину 38 команд .The instruction memory block 1 is intended to store the computational process program, the initial addresses of the subroutines, the values of the indices, the increments and the offsets of the addresses. Sampling from it in the calculation mode is carried out at the address specified in the command counter 28. From the output of block 1, information is output to the bus 38 commands.

Кроме того, в режиме подготовки вычислений информаци  в шину 38 команд может поступать через блок 37 элементов И, группы информационных входов 44 процессора. В этом случае сигналом с управл ющего входа 42 процессора блокируетс  блок 1 пам ти , открываетс  блок 37 элементов И и разрешаетс  передача адреса команды с группы информационных входов 44 процессора в щину 38 команд и далее через коммутатор 14 индексов в счет-чик 28 команд, управл емый.синхросигналом записи со входа 42 через элемент ИЛИ 35.In addition, in the mode of preparing computations, information can be fed into the command bus 38 via the block 37 of the elements I, groups of information inputs 44 of the processor. In this case, the signal from the control input 42 of the processor blocks the memory block 1, opens the block of 37 elements AND, and transfers the command address from the group of information inputs 44 of the processor to the command bar 38 and then through the switch 14 indexes into the account sync signal recording from input 42 through the element OR 35.

Блок 2 пам ти микрокоманд предназначен дл  хранени  микрокоманд микропрограмм управлени  выполнением команд вычислительного процесса.Block 2 of the microinstructions memory is intended for storing microinstructions of microprograms for controlling the execution of instructions of the computational process.

Блок 3 оперативного запоминающего устройства предназначен дл  хранени  данных. Обращение к нему возможно как по адресу, задаваемому в регистре 25 исполнительного адреса, так и с группы адресных входов 45 процессора в случа х разрешени  внешнего доступа к оперативной пам ти.Block 3 of the random access memory is intended for data storage. It can be accessed both at the address specified in register 25 of the executive address and from the group of address inputs 45 of the processor in the cases of allowing external access to the RAM.

Команды программы вычислений используютс  в форматах регистр-регистр и регистр-пам ть. Адреса операндов 92 регистров общего назначени  операционного блока 9 (фиг. 7/ формируютс  блоком 4 формировани  исполнительного адреса(фиг. 1 )Calculation program instructions are used in register-register and register-memory formats. The addresses of the operands 92 of the general purpose registers of the operational unit 9 (Fig. 7 / are formed by the execution address generation unit 4 (Fig. 1)

При выполнении команд формата регистр-регистр ( KKJ адрес первого операнда заноситс  в регистр 22, второго - в регистр 23. Коммутаторы 12 и 13 и блоки элементов И 32 и И 33 предназначены дл  динамического управлени  изменением командного слова. Структура их св зей позвол ет маскировать пол  первого или второго операндов командного слова, а также производить рокировку полей. Это дает возможность осуществл ть обнуление регистров в блоке 92 регистров общего назначени  (фиг. 7When executing the commands of the register-register format (KKJ, the address of the first operand is entered into register 22, the second register is register 23. Switches 12 and 13 and blocks of elements 32 and 33 are designed to dynamically control the change of the control word. the field of the first or second operand of the control word, as well as the field castling. This makes it possible to reset the registers in block 92 of general-purpose registers (Fig. 7

.в процессе или при завершении выполнени  длинной команды {делени , умножени  и др.J, использу  только аппаратно-микропрограммные средства.in the process or at the completion of the execution of a long command {division, multiplication, etc., using only hardware-firmware means

без считывани  из блока 1 пам ти команд , специально предназначенные дл  выполнени  обнулени  регистров 91, например команды вычитани  с одним и тем же адресом дэрвого и второго операндов, В данном случае обнуление выполн етс  соответствующей коммутацией блоком 4 регистров 22 и Z3 .микрокомандами микропрограммы выполнени  длинной команды с обнулением регистров 92. Причем после соответствующей микропрограммной коммутации полей микропрограммно выполн етс  операци  вычитани , после чего длинна  .операци  может продолжатьс  иди завершатьс . При выполнении команд формата регистр-пам ть (RX) в блок 9 передаетс  только адрес, содержащийс  в регистре 22, Зс1дак)щий адрес первого операнда .. Содержимое регистра 23 дл  операционного блока 9 безразлично.without reading from instruction block 1, specifically designed for performing register zeroing 91, for example, subtracting instructions with the same address of the Derv and second operands. instructions with register zeroing 92. Moreover, after the corresponding firmware switching of the fields, the firmware operation performs a subtraction operation, after which the long operation can continue or be completed . When executing register-memory (RX) format commands, only the address contained in register 22 (3) is transmitted to block 9. The first operand address is the same.

Формирователь 5 микроопераций (фиг. 2) предназначен дл  управлени , и координации работы всех элементов и узлов процессора. С выходаShaper 5 microoperations (Fig. 2) is designed to control and coordinate the work of all elements and nodes of the processor. From the exit

50 выдаетс  сигнал микрооперации конца команды, который  вл етс  разрешающим сигналом дл  приема кода команды в регистр 24 адреса микрокоманды через коммутатор 11 с выхо-. да блока 1 пам ти команд.50, a command end microoperation signal is issued, which is a enable signal for receiving the command code into the micro-command address register 24 via the switch 11 from the output-to-microcontrol. yes block 1 of instruction memory.

Микрооперации, поступающие со втоЕ)Ой группы управл ющих выходов 51, осуществл ют выдачу сигналов на синхровход илисчетный вход соответствук цего счетчика 27 индекса в блоке 6 с целью записи в него значени  индекса с выхода блока 1 пам ти команд или увеличени  его значени  на единицу.Microoperations arriving from the second group of control outputs 51 send signals to the synchronous input or to the counting input of the corresponding index counter 27 in block 6 to record the index value from the output of the command memory 1 or increase its value by one.

Кодом d выхода 52 производитс  управление коммутатором 14 индексов (фиг. 4). При этом в зависимости от значени  сигналов микроопераций, поступающих на вход дешифратора 84, с выхода 52 формировател  5 может осуществл тьс  передача константы с выхода 19 (фиг. 1) в регистр 26By d code of output 52, an index switch 14 is controlled (FIG. 4). At the same time, depending on the value of the micro-operations signals input to the decoder 84, from the output 52 of the imaging unit 5, the constant from the output 19 (Fig. 1) can be transferred to the register 26

приращений, либо передача с выхода блока 1 кодов глубины циклов соответствующих счетчиков 29, начальных адресов подпрограмм в счетчик 28 команд, либо передача кодов в ре гистры 25 .и 26, либо передача значени  индексов (приращений шага индексации ) в регистр 26 приращений.increments, or the transfer from the output of block 1 of the cycle depth codes of the corresponding counters 29, the initial addresses of the subroutines to the instruction counter 28, the transfer of codes to the registers 25 and 26, or the transfer of the value of the indices (increments of the indexing step) to the register 26 of increments.

Микрооперации, поступающие с вы .ходов третьей группы управл ющих выходов , осуществл ют следук цие действи : с выхода 53 синхронизируют запись в регистры 22 и 23 адресации операндов по окончании выполнени  текущей команды и выборке следующей,.The microoperations coming from the outputs of the third group of control outputs perform the following action: from output 53 they synchronize the writing to the registers 22 and 23 of addressing the operands after the current command is completed and the next one is selected.

5 с выхода 54 (55) разрешаетс  подстановка значени  адреса второго (первого J операнда вместо первого (второго , с выхода 56 (57 запрещаетс  подача значени  первого (второго)5 from the output 54 (55), the substitution of the address value of the second one (the first J operand instead of the first one (the second one, output 56 (the 57

0 операнда через блок элементов И 32 (331 в операционный блок 9, что соOTBteTCTByeT адресации регистра общего назначени  с нулевым адресом, позвол   использовать его в качестве0 operand through the block of elements AND 32 (331 in the operational block 9, which is associated with the BTTTCTByeT addressing the general-purpose register with the zero address, allowing it to be used

5 рабочего регистра.5 working register.

Микрооперации с первой группы управл ющих выходов 58 осуществл ют синхронизацию записи информации в соответствующий счетчик 28 (29) блоQ ка 7, либо увеличивают значение кода счетчика 28 (291 на единицу.Micro-operations from the first group of control outputs 58 synchronize the recording of information into the corresponding counter 28 (29) of block 7, or increase the code value of the counter 28 (291 by one.

Микрооперации с выходов четвертой группы управл ющих выходов осуществл ют следующие действи : с выходаMicro-operations from the outputs of the fourth group of control outputs perform the following actions: from the output

, 59 разрешаетс  передача информации в блок 3 оперативной пам ти из операционного блока 9 через коммутатор 18 данных (фиг. 3), с выхода 60 выдаетс  сигнал разрешени  внутренней записи в блок 3 оперативной пам ти59 is allowed to transfer information to the main memory unit 3 from the operational unit 9 via the data switch 18 (FIG. 3), the output 60 of the internal recording is signaled to the main memory unit 3

0 из операционного блока 9,i поступающий через коммутатор 17 в блок 3 .оперативной пам ти, с выхода 61 разрешаетс  внутреннее чтение информации из блока 3 пам ти. С группы вы5 ходов 62 код реализуемой операции передаётс  на операционный блок 9 (фиг.. 7) .0 from the operation unit 9, i arriving through the switch 17 into the operational memory unit 3. From the output 61, internal reading of information from the memory unit 3 is allowed. From the group of outputs 62, the code of the operation to be implemented is transmitted to the operation unit 9 (Fig. 7).

Микрооперации с выходов п той группы управл ющих выходов выполн 0 ют следующие действи : с выходаMicro-operations from the outputs of the fifth group of control outputs perform the following actions: from the output

63 (64) разрешаетс  запись в регистр63 (64) is allowed to write to the register

25испол.иительного адреса (регистр25 executive address (register

26приращени  ), с выхода 65 - передача из сумматора 30 или с выхода26 increments), from output 65 - transmission from adder 30 or from output

5 коммутатора 14 в регистр 25 через коммутатор 16 в зависимости от отсутстви  или наличи  сигнала на выходе 65.5 switch 14 to register 25 through switch 16, depending on the absence or presence of a signal at output 65.

Микроопераци  с выхода 66  вл ет0 с  сигналом разрешени  доступа к оперативной пам ти извне. Этот сигнал через выход 47 выдаетс  во внешние устройства, а также разрешает задание адреса обращени  к блоку 3 5 с группы адресных входов 45 процессора , блокирует задание адреса даниых с ре гистра 25, разрешает прохождение сигналов внешней записи и внеш него чтени  через коммутатор 17 и осуществл ет коммутацию шины внутренних данных с шиной внешних данных в коммутаторе 18.Micro-op from output 66 is 0 with a memory access enable signal. This signal through output 47 is output to external devices, and also enables the setting of the address of access to block 3 5 from the group of address inputs 45 of the processor, blocks the setting of the address of addresses from register 25, permits the passage of external recording and external reading signals through the switch 17 and The internal data bus commutation with the external data bus in the switch 18.

G группы выходов 68 в мультиплексор 10 поступает код провер емых логических условий (признаки переполнени  счетчиков 29 и сигналы логических условий операционного блока 91.G of the output group 68, the multiplexer 10 receives the code of logical conditions to be checked (signs of overflow of the counters 29 and the logic conditions of the operational unit 91.

С выхода 49 блока 5 выдаетс  сигнал прерывани  в случае по влени  в микропрограмме незадействованных (ошибочных )кодов номеров счетчиков в блоках 27 и 29, а также неверном задании номера регистра в блоке 8.From the output 49 of block 5, an interrupt signal is issued in the case of the appearance in the firmware of unused (erroneous) counter number codes in blocks 27 and 29, as well as an incorrect setting of the register number in block 8.

Блок 6 счетчиков 27 индексов предназначен дл  задани  значений индексов в режимах индексной адресации данных. Начальные значени  индексов хран тс  в блоке 1 пам ти и поступают в блок б через шину 38 команд.The block 6 of the index counters 27 is intended for setting the values of the indexes in the modes of index addressing of data. The initial values of the indices are stored in memory block 1 and are transferred to block b via the bus 38 of commands.

Блок 7 предназначен дл  задани  адреса команды в счетчике 28, а также значений счетчиков циклов в счетчиках 29, информаци  в которые поступают из блока 1 через коммутатор 14. Block 7 is designed to set the address of the command in the counter 28, as well as the values of the cycle counters in the counters 29, the information to which are received from block 1 via the switch 14.

Блок 8 формировани  исполнительного адреса оперативной пам ти предназначен дл  аппаратно-микропрограммной реализации всех режимов адресации данных в процессоре дл  команд форматов RX.The operative memory address generation unit 8 is designed for hardware-firmware implementation of all data addressing modes in the processor for commands of the RX formats.

Операционный блок 9 (фиг. 7 ) предназначен дл  выполнени  обработки данных и может быть построен по типовой схеме, например на микропроцессорах 1в04ВС1.Operational block 9 (Fig. 7) is designed to perform data processing and can be built according to a typical scheme, for example, on microprocessors 1В04ВС1.

Арифметико-логический блок 90 осуществл ет выполнение арифметических и логических операций. Блок 91 местного управлени  координирует работу всех узлов блока 9. Блок 92 регистров содержит регистры общего назначени . Мультиплексоры 94 - 97 предназначены дл  управлени  направлени ми передачи и сдвигами и фррма- ций в процессе обработки ее блоком 9. Блок 98 элементов И предназначен, дл  подключени  выхода арифметикологического блока 90 к группе информационных входов-выходов данных блока 9.The arithmetic logic unit 90 performs arithmetic and logical operations. The local control unit 91 coordinates the operation of all units of block 9. Register 92 contains general purpose registers. Multiplexers 94 - 97 are designed to control the transmission directions and shifts and the structures in the course of processing by block 9. Block 98 of the And elements is intended to connect the output of the arithmetic unit 90 to the group of information data input-outputs of block 9.

Мультиплексор 10 логических условий (фиг. 6 предназначен дл  проверки логических условий, поступающих на его вход с выходов операционного блока 9 и счетчиков 29 циклов .;The multiplexer 10 logical conditions (Fig. 6 is designed to test the logical conditions received at its input from the outputs of the operating unit 9 and the counters 29 cycles.;

Номер провер емого логического услови  задаетс  кодсм, поступгиощим с выхода 68 формировател  5 на вход дешифратора 89.The number of the logical condition being tested is given by a code, received from the output 68 of the driver 5 to the input of the decoder 89.

Алгоритм работы мультиплексора описываетс  выражениемThe multiplexer operation algorithm is described by the expression

rV е.х, rV e.x,

, . irV-f Y .е,Ф , ,ifj 1-1, irV-f Y. e, F,, ifj 1-1

где V - выходной сигнал мультиплексора 10;where V is the output signal of the multiplexer 10;

Р; - признак .-го услови , подлежащего проверке; х - значение f-ro услови . Коммутатор 11 адреса микрокоманд предназначен дл  управлени  приемом адреса очередной микрокоманды с вы5 хода блока 1 пам ти команд через шину 38 команд, задава  тем самым адрес первой микрокоманды микропрог . pajvDuttJ при наличии сигнала конца предыдущей команды с выхода 50 формирО0 вател  5, либо с выхода блока 2 пам ти микропрограммы при отсутствии сигнала на выходе 50 форктровател  5.; . . .R; - a sign of the. condition to be checked; x is the f-ro value of the condition. The switch 11 of the micro-command addresses is intended to control the reception of the address of the next micro-command from the output of the command-memory block 1 via the command bus 38, thereby specifying the address of the first micro-command microprog. pajvDuttJ in the presence of a signal from the end of the previous command from the output 50 of the format 5 driver 5, or from the output of block 2 of the microprogram memory in the absence of a signal at the output 50 of the forkator 5; . . .

Коммутатор 14 индексов (фиг. 4)Switch 14 indexes (Fig. 4)

5 предназначен дл  управлени  передачей информации. С группы входов 19 констант на вторую группу входов коммутатора 14 поступает код константы . С выхода блока 1 пам ти на пер0 вую группу входов, коммутатора 145 is intended to control the transmission of information. From the group of inputs 19 of the constants to the second group of inputs of the switch 14 enters the constant code. From the output of memory block 1 to the first group of inputs, switch 14

поступает; код адреса команды дл  записи в счетчике 28 команд, либо код числа циклов дл  записи в счётчики 29 циклов, либо код значени  прира5 щени  индекса дл  записи в регистр 26 приращени . С выхода блока счетчиков 27 индексов на третью группу коммутатрра 14 поступает значение кода индекса дл  записи в регистр 26 приращени .arrives; the code of the address of the command to be written in the counter 28 of the command, or the code of the number of cycles for writing to the counters 29 cycles, or the code of the value of the increment of the index for writing to the increment register 26. From the output of the block of counters 27 indexes to the third group of commutator 14, the value of the index code is entered for writing to the increment register 26.

Селекци  информации в коммутаторе 14 осуществл етс  выходными сигналами дешифратора 84, который управл етс  кодом с выхода 52 формировател  5.The selection of information in the switch 14 is carried out by the output signals of the decoder 84, which is controlled by the code from the output 52 of the driver 5.

5 При отсутствии сигналов на выходе дешифратора 84 выходным сигналом элемента ИЛИ-НЕ 85 разрешаетс  передача информации с выхода шины 38 команд.5 In the absence of signals at the output of the decoder 84, the output signal of the element OR-HE 85 permits the transfer of information from the output of the command bus 38.

0 При этом в зависимости от наличи  управл ющего сигнала на входе 42 процессора коммутатор может передавать либо, код адреса команды с гр уппы информационных входов 44 процес5 сора, когда сигнал на входе 42 присутствует , либо код адреса команды, число циклов, значение индекса смещени  или приращени  в противном случае.0 In this case, depending on the presence of a control signal at the processor input 42, the switch can transmit either a command address code with information input 44 process5 when the signal at input 42 is present, or a command address code, the number of cycles, the offset index value or increments otherwise.

0 Коммутатор 15 адреса оперативной пам ти предназначен дл  управлени  передачей адреса в блок 3 оперативного запоминающего устройства либо с регистра 25 исполнительного адре5 са при отсутствии сигнала разрешени  внешнего доступа к оперативной пам ти на выходе 66 формировател  5, либо с группы входов 45 процессора, куда он поступает от внешнего устройства при условии разрешени  внешнего доступа к блоку 3.0 The switchboard of the address of the operative memory is designed to control the transfer of the address to the unit 3 of the random access memory either from the register 25 of the executive address in the absence of a signal to allow external access to the RAM at the output 66 of the former 5 or from the input group 45 of the processor comes from an external device, provided that external access to block 3 is allowed.

Коммутатор 16 исполнительного адреса предназначен дл  управлени  передачей исполнительного адреса в регистр 25 исполнительного адреса. При этом адрес передаетс  с выходов сумматора 30 при отсутствии сигнала на выходе 65 блока 5 или в противном случае с выхода коммутатора 14 индексов.The executive address switch 16 is designed to control the transfer of the executive address to the executive address register 25. In this case, the address is transmitted from the outputs of the adder 30 in the absence of a signal at the output 65 of block 5 or otherwise from the output of the switch 14 indexes.

Коммутатор 17 (фиг. 5) предназначен -дл  коммутации сигналов управлени , (записи, считывани  режимами работы блока 3 оперативного запоминающего устройства.The switch 17 (Fig. 5) is intended to switch control signals, (write, read, the modes of operation of block 3 of the random access memory.

Коммутатор 18 данных (фиг. 31 предназначен дл  управлени  передачей информации между блоком 3, операционным блоком 9 и шиной 40 внешних данйых. Св зи между этими трем  блоками устанавливаютс  путем соответствующего соединени  между собой групп входов-выходов блока 80 элементов И внутренних данных, блока 81 элементов И внешних данных и блока 82 элементов И. Формирование Линий св зи осуществл етс  с помощью коммутатора 78 и блоков 80 - 82 элементов И. При отсутствии сигнала на входе 66 коммутатор 78 передает данные с группы в ходов-выходов блока 80 на информационный вход коммутатора 8 , в противном случае - с группами входов-выходов блока 81. При наличии сигнала на выходе 59 коммутатора 18 передача информации разрешаетс  на выход блока 80 (выходы блока 82 закрыты ), а при его отсутствии на выход блока 82 (выходы блока 80 закрыты ). Передача информации на выход блока 81 производитс  только при наличии сигнала на входе 45 коммутатора 18 данных.Data switch 18 (Fig. 31) is designed to control the transfer of information between block 3, operational block 9 and external data bus 40. Communications between these three blocks are established by appropriately interconnecting the input-output groups of block 80 of elements AND internal data, block 81 elements And external data and block 82 elements I. Formation of lines of communication is carried out using switch 78 and blocks 80 - 82 elements I. In the absence of a signal at input 66, switch 78 transmits data from the group to the strokes-outputs of block 80 on information input of the switch 8, otherwise with groups of input-outputs of the block 81. If there is a signal at the output 59 of the switch 18, the information is transmitted to the output of the block 80 (the outputs of the block 82 are closed), and without it, the output of the block 82 (the outputs of the 80 are closed.) Information is transmitted to the output of block 81 only if there is a signal at input 45 of data switch 18.

Блок 20 пуска-останова предназначен дл  включени  генератора 21 тактовых испульсов по сигналу Пуск, котовый поступает на вход 43 процессора . Останов генератора 21 осуществл етс  по сигналу конца работы, который формируетс  на выходе 67 . ормировател  5.Block 20 start-stop is designed to turn on the generator 21 clock pulses on the Start signal, which is fed to the input 43 of the processor. The generator 21 is stopped at the end of work signal, which is generated at output 67. arm 5.

Генератор 2i тактовых импульсрв, выдает тактовое импульсы на выходах 69 и 70 с посто нной частотой и смещением по фазе.The generator 2i clock pulses, gives clock pulses at the outputs 69 and 70 with a constant frequency and phase shift.

Сумматор 30 предназначен дл  сложени  кодов, заданных в регистре 25 исполнительного адреса и регистре 26 приращени .The adder 30 is designed to add the codes specified in the register 25 of the execution address and the increment register 26.

Элемент ИЛИ 36 предназначен дл  модификации адреса очередной микрокоманды в соответствии с результатами проверки логического условий мультиплексором 10.The element OR 36 is designed to modify the address of the next microcommand in accordance with the results of the logical condition test by multiplexer 10.

Устройство работает следующим образом.The device works as follows.

Процессор может функционировать в трех режимах: приема управл ющей информации о выполн емой программе} обработки информации и выполнении вычисленийf. внешнего обмена.The processor can operate in three modes: receiving control information about the program being executed} processing information and performing calculations. external exchange.

В первом режиме триггер 31 пуска выключен и генератор 21 тактовых импульсов не выдает тактовых импульсов , а выход блока 1 пам ти команд заблокирован.In the first mode, the trigger 31 is off and the clock pulse generator 21 does not emit clock pulses, and the output of the command memory block 1 is disabled.

По сигналу с управл кмцего входа 42 открываетс  блок 37 элементов 4 и с группы входов 44 адрес первой команды программы через шину 38 команд и коммутатор 14 записываетс  в счегчик 28 команд, запись В который осуществл етс  также импульсом со входа 42, поступающим на синхровход .счетчика 28 команд через элемент ИЛИ 35. После этого процессор готов к началу работы во втором режиме, в котором сигналы на управл ющем входе 42 процессора отсутствуют и не вырабатываютс  в дальнейшем.The signal from the control input 42 opens a block of 37 elements 4 and from a group of inputs 44 the address of the first command of the program via the bus 38 of commands and the switch 14 is recorded in command counter 28, which is also recorded by the pulse from input 42 arriving at the synchronous input of the counter 28 commands via the OR element 35. After that, the processor is ready to start working in the second mode, in which the signals at the control input 42 of the processor are absent and are not generated further.

Во втором основном режиме работы процессора выполн етс  обработка данных. Исходным состо нием дл  него  вл етс  задание в счетчике 28 адреса первой команды программы. Все остальные элементы пам ти наход тс  в исходном состо нии, при котором на выходе 50 формировател  5 присутствует сигнал, а остальные микрооперации отсутствуют, что соответствует выполнению холостого цикла в течение первого Машинного цикла.In the second main processor operation mode, data processing is performed. The initial state for it is the setting in the counter 28 of the address of the first program command. All other memory elements are in the initial state, in which the output 50 of the former 5 has a signal and the remaining micro-operations are absent, which corresponds to the idle cycle during the first Machine cycle.

По сигналу пуска со входа 43 включаетс  триггер 31 пуска и запускаетс  генератор 21, формирующий тактовую сетку синхронизации работы процессора .The start signal from input 43 triggers start trigger 31, and a generator 21 is started, forming a processor clock synchronization grid.

Из блока 1 пам ти команд по первому тактовому импульсу с выхода 69 генератора 21 считанна  команда (код операции коман;цл) записываетс  в регистр 24 и адресует первую микрокоманду в блоке 2 пам ти микрокоманд.From block 1 of command memory, the first read pulse (operation code command; d) is written to register 24 and addresses the first micro-command in block 2 of micro-instruction memory.

Таким образом, холоста  микрокоманда позвол ет процессору опреде лить тип первой команды и начальный адрес микропрограммы ее выполнени , а также произвести запись в регистры 22 и 23 содержимо1го командного слова.Thus, the idle micro-command allows the processor to determine the type of the first command and the starting address of the firmware, as well as write to registers 22 and 23 of the control word.

Далее выполнение команды зависит от ее. формата.. jFurther execution of the command depends on it. format .. j

Дл  команд формата RR сигналом с выхода 53 формировател  5 производитс  запись значений R1 и R2 в регистры 22 и 23 соответственно. Так как сигналы на выходах 54 - 57 формировател  5 отсутствуют, то содержимое регистров 22 и 23 передаетс  на вход адресации регистров общего назначени  фиг. 7 операционн го блока 9 без изменени . Перва  микрокоманда микропрограм мы выполнени  команды на группе выходов 62 формировател  5 задает код реализуемой операции, который поступает в операционный блок 9. В зависимости от характера выполн емэй операции в счетчики 29 блока 7 может заноситьс  информаци  о кратности реализуемых циклов. В этом случае по адресу, заданному в счетчике 28, считываетс  информаци  из блока 1 пам ти, котора  через шину 38 команд и коммутатор 14 зано ситс  в соответствующий счетчик 29. Управление осуществл етс  микроопераци ми с групп выходов 52 и 58 формировател  5. При считывании информации из бло ка 1 пам ти содержимое счетчика 28 команд продвигаетс  путем подачи си налов на его счетный вход с соответ ствующего выхода группы выходов 58 формировател  5. Рассмотрим режимы формировани  исполнительного адреса дл  команд формата R X. в этом случае работа процессора аналогична описанному, но на вход операционного блока 9 передаетс  со держимое R1, хран щеес  в регистре 22. Содержимое регистра 23 в блоке 9 не воспринимаетс , что определ ет с  кодом операции, задаваёмьии с группы выходов 62 формировател  5. Формирование исполнительного адреса второго операнда происходит следующим образом. При выполнении команд, формата RX1 адрес второго операнда задаетс  в формате команды в виде смещени  D, значение которого (фиг. 91 через коммутаторы 14 и 16 записываетс  в регистр 25 исполнительного адреса и через коммутатор 15 выдаетс  на адресный вход блока 3. Это осуществл етс  сигналом на выходе 63 формировател  5 (записьв регистре 25 при отсутствии сигналов на выходе дешифратора 84 (фиг. 4) и на выходах 65 и 68 формировател  5. По этому адресу в следующей микрокоман де осуществл ют чтение или запись . в блок 3 оперативного запоминающего устройства. В режимах адресации с.индексацией происходит аапись значени  смеще ни  из блока 1 пам ти в регистр 25 исполнительного адреса аналогично описанному дл  режима пр мой адреса ции, а формирование исполнительного адреса второго операнда указано выш при описании режимов RX. Перед реализацией режимов адреса ции данных с индексацией ( RX2РХЗ ) производитс  предварительное занесение значени  индекса в один из счетчиков 27 индекса, а значение глубины цикла (дополнение )- в счетчик 29. При этом адрес индекса или дополнени  сетчика циклов до количества слов, обрабатываемых в массиве , в блоке 1 пам ти задаетс  счетчиком 28. По сигналам микрооперации с соответствующей группы выходов 51 разрешаетс  запись значени  индекса в нужный счетчик 27 индекса, а дополнени  счетчика циклов - в счетчик 29 циклов при выполнении команд загрузки счетчиков 27 и 29. По следующим микрокомандам реализуетс  один из возможных режимов адресации с индексацией. В режиме РХЗ по следующей микрокоманде производитс  перезаписьзначени  индекса из соответствующего счетчика 27 через коммутатор 14 в регистр 26 приращени . Управление осуществл етс  сигналами микроопераций с группы выходов 52 и с выхода 64 формировател  5. В следующей микрокоманде по микрооперации с выхода 63 формировател  5 осуществл етс  запись в регистр 25 значени  исполнительного адреса, равного сумме индекса и смещени , с выхода сумматора 30 через коммутатор 16. В режиме RX2 адресации с индексацией и продвижением индекса необходимо осуществл ть параллельно с выдачей исполнительного адреса числа увеличение значени  индекса на единицу . В данном режиме формирование исполнительного адреса числа осуществл етс  аналогично режиму адресации с индексацией без продвижени  индекса за исключением того, что в цикле записи исполнительного адреса с выхода сумматора 30 через коммутатор 16 в регистр 25 ,.по микрооперации с соответствуквдего выхода группы выходов 51 формировател  5 производитс  увеличение значени  нужнбго счетчика 27 индексов и счетчика 29 циклов на единицу, причем на мультиплексоре 10 логических условий производитс  проверка счетчика 29 циклов, адрес микрокоманды модифицируетс  и производитс  выход из микропрограммы. При выполнении адресации с индексацией с посто нным шагом RX4 исполнительный адрес первого числа формируетс  аналогично описанному дл  режима пр мой адресации (фиг. 11. Значение величины шага по адресу, заданному в счетчике 28, считываетс  из блока 1 пам ти и записываетс  через коммутатор 14, управл емый сигналом с соответствующего выхода группы выходов 52 формировател  5,For the RR format commands, the signal from output 53 of generator 5 records values of R1 and R2 into registers 22 and 23, respectively. Since the signals at the outputs 54-57 of the imaging unit 5 are missing, the contents of the registers 22 and 23 are transmitted to the addressing address of the general purpose registers of FIG. 7, operation unit 9, unchanged. The first microprogram of the firmware execution command on the output group 62 of the generator 5 sets the code of the operation to be performed, which goes to the operation unit 9. Depending on the nature of the operation performed, the information about the multiplicity of the cycles implemented can be entered into the counters 29 of the block 7. In this case, the address specified in the counter 28 reads information from the memory block 1, which via the bus 38 commands and the switch 14 enters the corresponding counter 29. The micro-operations are controlled from the output groups 52 and 58 of the imager 5. When reading information from memory block 1, the contents of command counter 28 are advanced by supplying signals to its counting input from the corresponding output of output group 58 of generator 5. Consider the execution modes for the execution address for R X commands. The spring is similar to that described, but the R1 content stored in register 22 is transferred to the input of the operational unit 9. The contents of the register 23 are not perceived in block 9, which is determined by the operation code specified from the output group 62 of the former 5. Formation of the executive address of the second operand occurs as follows. When executing the commands of the RX1 format, the address of the second operand is specified in the command format as an offset D, the value of which (Fig. 91 via switches 14 and 16 is written to the executive address register 25 and output through the switch 15 to the address input of block 3. This is done by a signal at output 63 of the imaging unit 5 (writing in register 25 in the absence of signals at the output of the decoder 84 (Fig. 4) and at outputs 65 and 68 of the imaging equipment 5. Read or write to this address in the following micro-op. 3 in the random access memory. In p With the indexing presses, the offset value is written from memory block 1 to executive address register 25 in the same way as described for direct addressing mode, and the executive address of the second operand is shown above in the description of RX modes. Before implementing the data addressing modes with indexing (RX2РХЗ) the index value is pre-entered into one of index counters 27, and the cycle depth value (addition) is entered into counter 29. At that, the address of the index or addition of the cycle setter to the number of layers processed in the array, in block 1 of the memory is set by the counter 28. Signals from a micro-operation from the corresponding group of outputs 51 allow writing the index value to the desired index counter 27, and complementing the cycle counter to the counter 29 cycles when executing the load commands of counters 27 and 29. The following microinstructions implement one of the possible addressing modes with indexing. In the RHZ mode, according to the following micro-command, the index value is overwritten from the corresponding counter 27 via the switch 14 to the increment register 26. The micro-operations are controlled from the output group 52 and from the output 64 of the driver 5. In the next micro-command, from the micro operation from the output 63 of the generator 5, the value of the executive address equal to the sum of the index and offset from the output of the adder 30 through the switch 16 is recorded in register 25. In the RX2 addressing mode with indexing and advancement of the index, it is necessary to carry out an increase in the value of the index by one in parallel with the issuing of the execution address of the number. In this mode, the generation of the executive address is carried out similarly to the addressing mode with indexing without advancement of the index, except that in the recording cycle of the executive address from the output of the adder 30 through the switch 16 to the register 25, the microoperations from the output of the output group 51 of the generator 5 are produced increasing the value of the necessary index counter 27 and the counter 29 cycles per unit, with the logic conditions multiplexer 10 testing the counter 29 cycles, the address of the microcommand mod fitsiruets produced and exit the firmware. When performing addressing with indexing with a constant step RX4, the executive address of the first number is generated in the same way as described for the direct addressing mode (Fig. 11. The value of the step value at the address specified in the counter 28 is read from memory block 1 and written through switch 14, controlled by a signal from the corresponding output of the group of outputs 52 of the driver 5,

в регистр 26 приращени  по сигналу с выхода 64 формировател  5.the register 26 increments the signal from the output 64 of the driver 5.

По очередной микрокоманде формируетс  второй исполнительный адрес массива на основе сложени  содержимых регистров 25 и 26 на сумматоре 30 с последующей записью в регистрAccording to the next micro-command, the second executive address of the array is formed based on the addition of the content registers 25 and 26 on the adder 30, followed by writing to the register

25исполнительного адреса. Аналогично второму формируютс  и25 executive address. Similarly, the second is formed and

последующие исполнительные адреса, при этом аналогично режимам ЙХ2 и производитс  проверка услови  переполнени  j-ro счетчика 29 цикло указывающего на окончание обработки массива чисел.subsequent execution addresses, in this case, similarly to modes YX2, and the overflow condition is checked, j-ro counter 29 cycles indicating the end of processing of an array of numbers.

В режиме адресации с перем.енным maroM{f X5) формирование первого и второго исполнительных-адресов осуществл етс  аналогично описанному дл  режима индексной адресации с посто нным шагом.In the addressing mode with variable maroM (f X5), the formation of the first and second executive addresses is carried out in the same way as described for the index addressing mode with a constant step.

Дл  формировани  адреса третьего и последующих чисел осуществл етс  считывание по даресу, заданному в счетчике 28, из блока 1 пам ти значени  приращени  дл  данного числа и запись его в регистр 26 индекса, что на фиг. 12 показано с перене е ,нием блока загрузки Д в регистрIn order to form the address of the third and subsequent numbers, the increment value for the given number is read from the data specified in the counter 28 from the memory block 1 and written to the index register 26, which is shown in FIG. 12 is shown with the transfer of the loading block D to the register

26после блока проверки услови  переполнени  счетчика 29. По следующе микрокоманде происходит сложение на сумматоре 30 содержимого регистров 25 и 26 и запись сформированного таким образом исполнительного адреса в регистр 25.26 after the check block of the overflow condition of the counter 29. Following the micro-command, the contents of the registers 25 and 26 are added to the adder 30 and the executive address thus generated is written into the register 25.

После сформировани  исполнительного адреса второго операнда операционный блок 9 может приступить к выполнению оперепдии.After generating the executive address of the second operand, operation unit 9 may proceed to the operation of the operand.

Дл  выполнени  операции, св занных со считыванием из блока 3 оперативного запоминающего устройства содержание этого блока по адресу, заданному в регистре 25, считываетс  через коммутатор 18 данных на информационную шину 41. После этого операционный блок 9 выполн ет соответствующую операцию. При выполнении операций, св занных с записью данных в блок пам ти, содержимое регистра 25 определ ет адрес, по которому производитс  запись данных в блок 3 оперативного запоминаюи1его устройства.To perform the operation, the readout from the block 3 of the random access memory is read the contents of this block at the address specified in the register 25, is read through the data switch 18 to the information bus 41. After this, the operating block 9 performs the corresponding operation. When performing operations associated with writing data to a memory block, the contents of register 25 determine the address at which data is written to block 3 of the random access memory.

Управление внутренней передачей данных между блоком 3 и операционны блоком 9 осуществл ют микрооперацииThe management of the internal data transfer between unit 3 and operational unit 9 performs micro-operations.

с выходов 60 (внутренн   запись в блок 3), 61 (внутреннее чтение из блока 3 , 59 (управление записью формировател  5 микроопераций.from outputs 60 (internal recording in block 3), 61 (internal reading from block 3, 59 (recording management of the imaging unit 5 micro-operations.

При выполнении йекоторых операций в течение нескольких тактов работа может осуществл тьс  операционным блоком 9 без обращени  к блоку 3. С началом такого режима с выхода 66 формировател  5 выдаетс  сигнал микрооперации, разрешающий внешний доступ к блоку 3 оперативного запоминающего устройства, определ   третий режим работы процессора.When several operations are performed for several cycles, operation can be performed by operation unit 9 without referring to unit 3. With the start of this mode from output 66 of generator 5, a micro-operation signal is issued allowing external access to block 3 of the random access memory, which determines the third mode of operation of the processor.

Этот сигнал поступает на выход 47 процессора и передаетс , например в процессор высшего уровн  управлени  , а также на входы коммутаторов 15, 17 и 18. При этом коммутатор 15 пропускает адрес обращени  к блоку 3 с группы входов 45 процессора, коммутатора 17 в зависимости от сигналов (записи или чтени /, поступающих с управл ющих разр дов группы входов 45 (фиг. 5/, выдает в блок 3 сигнал записи или чтени , а коммутатор 18 формирует такт св эи через внутренние 39 и внешние 40 шины данных , тем самым соедин   группу входов-выходов 46 внешних данных процессора через шину 39 внутренних . данных с группой входов-выходов блока 3.This signal arrives at processor output 47 and is transmitted, for example, to a higher level control processor, as well as to inputs of switches 15, 17 and 18. At the same time, switch 15 passes the address to block 3 from group 45 of processor inputs, switch 17, depending on the signals (records or reads / coming from the control bits of the group of inputs 45 (Fig. 5), gives to the block 3 a write or read signal, and the switch 18 forms a clock through the internal 39 and external 40 data buses, thereby connecting the group input-output 46 external data processor h Through bus 39 internal data with a group of inputs-outputs of block 3.

По окончании такого режима естественного ожидани  процессора сигнал с выхода 66 формировател  5 снимаетс  и процессор продолжает работать аналогично описанному.At the end of this mode of natural standby of the processor, the signal from the output 66 of the driver 5 is removed and the processor continues to work as described.

В последней микрокоманде команды выполн емой процессором программы, с выхода 67 формировател  5 выдаетс  сигнал микрооперации окончани  работы , который с выхода 48 процессора передаетс , например, в процессор высшего уровн  управлени  и через элемент И 34 устанавливает триггер 31 в нулевое состо ние, что приводит к отключению генератора 21 и прекращению работы процессора в целом.In the last microcommand of the command executed by the processor, from the output 67 of the driver 5, a micro-operation end signal is issued, which from the processor output 48 is transmitted, for example, to the higher control level processor and through the element 34 sets the trigger 31 to the zero state, which leads to turn off generator 21 and stop the processor as a whole.

Таким образом, предлагаемый микропрограммный процессор обладает широкими функциональными возможност ми благодар  широкому набору режимов адресации, позвол ющих обрабатывать большие массивы да1нных с более высокой производительностью, чем в известном устройстве.Thus, the proposed microprocessor processor has wide functionality due to the wide range of addressing modes that allow processing of large data arrays with higher performance than in the known device.

ItCItc

Г5 G5

fSSjfSSj

1E

ITIT

00

c3 c3

i i

ca yjca yj

v «av "a

tt

фиг. 2FIG. 2

Cpui.ffCpui.ff

(риг. 5(rig 5

trtr

DC 83DC 83

g, Kl g, Kl

CPUi.fCPUi.f

фиг. 7FIG. 7

Фие. ftPhie. ft

( (

Cf 29i Cr29i+jCf 29i Cr29i + j

MaMa

С конец oBpcfffom If и MacciJSaFrom the end oBpcfffom If and MacciJSa

Pr2S-Pr2Si-Pr2SPr2S-Pr2Si-Pr2S

(конец cpoofKjpoeafft/й Aj j(end of cpoofKjpoeafft / nd Aj j

дл  (poflM.Ajdl (poflM.aj

Запись J3 В Рг 25Record J3 In Prg 25

(Тоика gxoffa зл (poflft.Ajf-f j(Toika gxoffa zl (poflft.Ajf-f j

ЗаписА i 6 fr2eRecord i 6 fr2e

(P(J&. T2(P (J &. T2

Claims (2)

( 54 ) (57 )1 .МИКРОПРОГРАММНЫЙ ПРОЦЕССОР, содержащий блок памяти команд, блок памяти микрокоманд, блок оперативного запоминающего устройства, операционный блок, генератор тактовых импульсов, первый элемент ИЛИ, регистр адреса микрокоманд, счетчик команд, формирователь микроопераций, выход модифицируемого разряда адреса следующей микрокоманды блока памяти микрокоманд соединен с первым входом первого элемента ИЛИ, группа выходов кода операций формирователя микроопераций соединена с группой входов кода операций операционного блока, первый выход генератора тактовых импульсов соединен с входом синхронизации регистра адреса микрокоманд, отличающийся тем, что, с целью увеличения производительности за счет введения специальных режимов адресации данных и динамического изменения формата команды, он содержит блок элементов И, коммутатор адреса микрокоманд, мультиплексор логических условий, коммутатор индексов, второй элемент ИЛИ, коммутатор адреса оперативного запоминающего устройства, коммутатор управления оперативным запоминающим устройством, коммутатор данных, блок формирования исполнительного адреса регистров общего назначения, состоящий из регистра адресации первого операнда, регистра адресации второго операнда, первого и второго коммутаторов операндов, первого и второго блоков элементов И, блок формирования исполнительного адреса оперативного запоминающего устройства, состоящий из регистра исполнительного адреса, регистра g приращений, сумматора и коммутатора, блок индексных счетчиков, состоящий из группы’ счетчиков индексов, блок счетчиков циклов, состоящий из. группы счетчиков циклов, блок пуска-останова, состоящий из элемента И и триггера, причем управляющий вход процессора соединен с управляющими входами блока памяти команд, блока элементов И и с первым входом второго элемента ИЛИ, выходы первой группы управляющих выходов формирователя микроопераций соединены соответственно с вторым входом второго элемента ИЛИ, со счетными входами, входами синхронизации счетчиков циклов и со счетным входом счетчика команд, вторая группа управляющих выходов формирователя микроопераций соединена со счётными входами и входами синхронизации счетчиков индексов, группа информационных входов которых соединена через шину команд с группой выходов блока памяти команд, с группой информационных выходов блока элементов И, с первой группой информационных входов коммутатора индексов , с группой информационных входов регистра адресации первого операнда и регистра адресаций второ(54) (57) 1. A MICROPROGRAM PROCESSOR comprising an instruction memory block, a micro memory instruction block, a random access memory block, an operation block, a clock pulse generator, a first OR element, a micro instruction address register, an instruction counter, a micro-operation shaper, a modifiable address discharge output of the next micro-command of the micro-command memory block is connected to the first input of the first OR element, the group of outputs of the operation code of the microoperator is connected to the group of inputs of the operation code of the operation unit, the first the output of the clock generator is connected to the synchronization input of the micro-command address register, characterized in that, in order to increase performance by introducing special data addressing modes and dynamically change the command format, it contains an AND block, micro-command address switch, logical condition multiplexer, index switch , second OR element, random access memory address switch, random access memory control switch, data switch, form block of registering the executive address of general-purpose registers, consisting of the address register of the first operand, the address register of the second operand, the first and second switch operands, the first and second blocks of AND elements, the block for generating the executive address of random access memory, consisting of the register of the executive address, register g increments, an adder and a switch, an index counter block consisting of a group of index counters, a loop counter block consisting of. groups of cycle counters, a start-stop block consisting of an And element and a trigger, the control input of the processor being connected to the control inputs of the command memory unit, the block of And elements and the first input of the second OR element, the outputs of the first group of control outputs of the microoperator are connected respectively to the second the input of the second OR element, with counting inputs, synchronization inputs of the cycle counters and with the counting input of the command counter, the second group of control outputs of the microoperator is connected to the counting and inputs and synchronization inputs of index counters, the group of information inputs of which are connected via the command bus to the group of outputs of the command memory block, to the group of information outputs of the block of elements AND, to the first group of information inputs of the index switch, to the group of information inputs of the address register of the first operand and the address register second SU „1070557 . 1070557 го операнда и с первой группой инфор* мационных входов коммутатора адреса микрокоманда, вторая группа информационных входов которого соединена с выходом первого элемента ИЛИ и с группой выходов немодифицируемой части адреса следующей микрокоманды блока памяти микрокоманд, вход адреса которого соединен с информационным выходом регистра адреса микрокоманд, информационный вход которого соединен с выходом коммутатора адреса микрокоманды, управляющий вход которого соединен с выходом конца команды формирователя микроопераций, группа выходов управления коммутатором индексов которого соединена с группой управляющих входов коммутатора индексов, вторая группа информационных входов которого соединена с группой входов констант устройства, группа информационных выходов группы счетчиков индексов соединена с третьей группой информационных входов коммутатора индексов, группа информационных выходов которого соединена с группами информационных входов счетчика команд группы счетчиков циклов,регистра приращений и с первой группой информационных входов коммутатора блока формирования исполнительного адреса оперативного запоминающего устройства, группа информационных выходов которого соединена с группой информационных входов регистра исполнительного адреса, группа информационных выходов которого соединена с первой группой входов сумматора и первой группой информационных входов коммутатора адреса оперативного запоминающего устройства , группа информационных выходов которого соединена с группой адресных входов блока оперативного запоминающего устройства, управляющие входа которого соединены с выходами коммутатора управления оперативным запоминающим устройством, первый управляющий вход которого соединен с управляющим входом коммутатора адреса оперативного запоминающего устройства, с первым управляющим входом коммутатора данных и выходом разрешения внешнего доступа к блоку Оперативного запоминающего устройства процессора и формирователя микроопераций, выход конца работы процессора которого соединен с первым входом элемента И блока пуска-останова, второй вход которого соединен со вторым выходом генератора тактовых импульсов, с входом синхронизации операционного блока и с первым управляющим входом формирователя микроопераций, второй управляющий вход которого соединен с первым выходом генератора тактовых импульсов, управляющий вход которого соединен с выходом триггера блока пуска-'останова, вход установки в ноль которого соединен с выходом элемента И блока пуска-останова, вход установки в единицу триггера блока пуска-останова соединен с входом пуска процессора, группа выходов поля кода логических условий формирователя микроопераций соединена с группой управляющих входов мультиплексора логических условий, группа информационных входов которого соединена с группой информационных выходов группы счетчиков циклов и группой информационных выходов операционного блока, группа адресных входов которого соединена с группами выходов первого, второго блоков элементов И и блока формирования исполнительного адреса регистров общего назначения, выход кода микроопераций блока памяти микрокоманд соединен с информационным входом формирователя микроопераций, первый второй^ третий, четвертый и пятый выходы третьей группы управляющих выходов которого соединены соответственно с входами синхронизации регистра адресации первого операнда, регистра адресации второго операнда, с управляющим входом первого коммутатора операндов, с управляющим входом второго коммутатора операндов, с управляющим входом первого блока элементов И и с управляющим входом второго блока элементов И, первый, второй и третий выхода четвертой группы управляющих выходов формирователя микроопераций соединены соответственно с вторым управляющим входом коммутатора данных, с вторым управляющим входом коммутатора управления оперативным запоминающим устройством и с третьим управляющим входом коммутатора управления оператив ным'з апоминающим устройством, первый, второй и третий выхода пятой группы управляющих выходов формирователя микроопераций соединены соответственно с входом синхронизации регистра исполнительного адреса, с входом синхронизации регистра приращений и с управляющим входом коммутатора, блока формирования исполнительного адреса оперативного запоминающего устройства, вторая 1 группа информационных входов которого соединена с группой выходов сумматора, вторая группа входов которого соединена и группой информационных выходов регистра приращений, группа информационных выходов регистра адресации первого операнда и группа информационных выходов регистра адресации второго операнда соединены соответственно с первыми и вторыми группами информационных входов первого и второго коммутаторов операндов, группы информационных выходов которых соединены соответственно с группой входов первого и второго блоков элементов И, группа адресных входов процессора соединена с второй группой информационных входов коммутатора адреса оперативного запоминающего устройства, один из входов группы адресных входов процессора соединен с четвертым управляющим входом коммутатора управления оперативным запоминающим устройством, а другой соединен с пятым управляющим входом коммутатора управления оперативным запоминающим устройством и с третьим управляющим входом коммутатора данных, первая, вторая и третья группы информационных входов-выходов которого соединены соответственно с группой информационных входов-выходов внешних данных процессора, оперативного запоминающего устройства и операционного блока, группа информационных выходов счетчика команд соединена с группой адресных входов блока памяти команд, выход мультиплексора логических условий соединен с вторым входом первого элемента ИЛИ, группа информационных входов процессора соединена с группой информационных входов блока элементов И, выход прерывания формирователя микроопераций образует выход прерывания процессора, а выход второго элемента ИЛИ соединен с входом синхронизации счетчика команд.SU „1070557. 1070557th operand with the first group of information inputs of the address switch of a micro command, the second group of information inputs of which is connected to the output of the first OR element and with the group of outputs of the non-modifiable part of the address of the next micro command of the micro memory instruction block, whose address input is connected to the information output of the micro instruction address register, the information input of which is connected to the output of the switch of the micro command address, the control input of which is connected to the output of the end of the command of the shaper of microoperations, groups and the control outputs of the index switch which is connected to the group of control inputs of the index switch, the second group of information inputs of which is connected to the group of inputs of the device constants, the group of information outputs of the group of index counters is connected to the third group of information inputs of the index switch, the group of information outputs of which is connected to the groups of information inputs the command counter of the group of cycle counters, increment register and with the first group of information inputs of the switch the formation of the executive address of the random access memory, the group of information outputs of which is connected to the group of information inputs of the register of the executive address, the group of information outputs of which is connected to the first group of inputs of the adder and the first group of information inputs of the address switch of the random access memory, the group of information outputs of which is connected to the group of address inputs of the block of random access memory, the control inputs of which are connected the outputs of the control switch of random access memory, the first control input of which is connected to the control input of the address switch of random access memory, with the first control input of the data switch and the output of allowing external access to the block of random access memory of the processor and the shaper of microoperations, the output of the end of which is connected to the first input element And block start-stop, the second input of which is connected to the second output of the clock generator pulses, with the synchronization input of the operating unit and with the first control input of the microoperator, the second control input of which is connected to the first output of the clock generator, the control input of which is connected to the output of the trigger of the start-stop unit, the input of which is set to zero and connected to the output of the And element start-stop unit, the installation input to the trigger unit of the start-stop unit is connected to the start-up input of the processor, the group of outputs of the code field of the logical conditions of the microoperation generator is connected to the load sing of the control inputs of the logical conditions multiplexer, the group of information inputs of which is connected to the group of information outputs of the group of cycle counters and the group of information outputs of the operating unit, the group of address inputs of which is connected to the groups of outputs of the first, second blocks of AND elements and the unit for generating the executive address of general registers, output the microoperation code of the micro-memory block is connected to the information input of the microoperator, the first second ^ third, fourth and the fifth outputs of the third group of control outputs are connected respectively to the synchronization inputs of the address register of the first operand, the address register of the second operand, with the control input of the first operand switch, with the control input of the second operand switch, with the control input of the first block of elements And and with the control input of the second block of elements And, the first, second and third outputs of the fourth group of control outputs of the shaper microoperations are connected respectively to the second control input comm data tator, with the second control input of the operational memory control switch and the third control input of the operational memory control switch, the first, second and third outputs of the fifth group of control outputs of the micro-operation driver are connected respectively to the synchronization input of the executive address register, to the synchronization input increment register and with the control input of the switch, the unit for forming the executive address of random access memory, W paradise 1 group of information inputs of which is connected with a group of combiner outputs, a second group of inputs of which is connected and group information increments register outputs, the group of information outputs of register address of the first operand and the group of information outputs of register address of the second operand are connected respectively to the first and second groups of information inputs of the first and second operand commutators, information output groups of which are connected respectively to the input group of the first and second blocks elements And, the group of address inputs of the processor is connected to the second group of information inputs of the address switch of random access memory, one of the inputs of the group of address inputs of the processor is connected to the fourth control input of the control switch of random access memory, and the other is connected to the fifth control input of the control switch of random access memory and with the third control input of the data switch, the first, second and third groups of information inputs and outputs of which respectively, with the group of information inputs / outputs of external data of the processor, random access memory and operating unit, the group of information outputs of the instruction counter is connected to the group of address inputs of the instruction memory block, the output of the logic condition multiplexer is connected to the second input of the first OR element, the group of information inputs of the processor is connected with a group of information inputs of the block of elements AND, the interrupt output of the shaper of microoperations forms the output of the processor interrupt, and the output is w The next OR element is connected to the synchronization input of the instruction counter. 2. Процессор поп. 1, отличающийся тем, что формирователь микроопераций содержит регистр, первый, второй и третий дешифраторы, первый и второй элементы И, элемент ИЛИ, первый вход которого соединен с первым выходом первого дешифратора, группа информационных входов которого соединена с первой группой выхода регистра, вторая группа выходов которого соединена с группой информационных входов второго дешифратора, управляющий вход которого соединен с управляющим входом третьего дешифратора, с первыми входами первого и второго элементов И, с входом синхронизации регистра и с первым управляющим входом формировате ля, третья группа выходов регистра соединена с информационным входом третьего дешифратора, первая группа выходов которого соединена с первой группой входов элемента ИЛИ, вторая группа входов которого соединена с первой группой выходов второго дешифратора, управляющий вход первого дешифратора соединен с вторым управляющим входом формирователя, первый выход регистра соединен с вторым входом второго элемента И и с выходом конца команды формирователя, первая и вторая группы управляющих выходов формирователя соединены соответственно с второй группой выходов второго дешифратора., и с второй группой выходов третьего дешифратора, первый, второй, третий, четвертый и пятый выходы третьей группы управляющих выходов формирователя соединены соответственно с выходом второго элемента И, с вторым, треть· им, четвертый и пятым выходами регистра, шестой выход регистра соединен с вторым входом первого элемента И ис первым выходом четвертой группы управляющих выходов формирователя, второй и третий выходы четвертой группы управляющих выходов которого соединены соответственно с выходом первого элемента И и с седьмым выходом регистра, первый, второй и третий выходы пятой группы управляющих выходов формирователя соединены соответственно с вторым выходом первого дешифратора, с третьим выходом первого дешифратора и с восьмым выходом регистра, четвертая, пятая и шестая группы выходов которого соединены соответственно с группой выходов кода операций формирователя, с группой выходов управления коммутатором индексов формирователя и с группой выходов поля кодов логических условий формирователя, девятый и десятый выходы регистра и выход элемента ИЛИ соединены соответственно с выходом разрешения внешнего доступа к оперативному запоминающему устройству формирователя, с выходом конца работы процессора формирователя и выходом прерывания формирователя, информационный вход регист ра соединен с информационным входомформирователя.2. The processor pop. 1, characterized in that the microoperator includes a register, first, second and third decoders, first and second AND elements, an OR element, the first input of which is connected to the first output of the first decoder, the group of information inputs of which are connected to the first group of the register output, the second group the outputs of which are connected to the group of information inputs of the second decoder, the control input of which is connected to the control input of the third decoder, with the first inputs of the first and second elements And, with the synchronization input and the register and the first control input of the shaper, the third group of outputs of the register is connected to the information input of the third decoder, the first group of outputs of which is connected to the first group of inputs of the OR element, the second group of inputs of which is connected to the first group of outputs of the second decoder, the control input of the first decoder is connected with the second control input of the shaper, the first output of the register is connected to the second input of the second element And and with the output of the end of the command of the shaper, the first and second groups of control the shaper outputs are connected respectively to the second group of outputs of the second decoder., and to the second group of outputs of the third decoder, the first, second, third, fourth and fifth outputs of the third group of control outputs of the shaper are connected respectively to the output of the second element And, with the second, third the fourth and fifth outputs of the register, the sixth output of the register is connected to the second input of the first element And the first output of the fourth group of control outputs of the shaper, the second and third outputs of the fourth group of control whose outputs are connected respectively to the output of the first element And and to the seventh output of the register, the first, second and third outputs of the fifth group of control outputs of the driver are connected respectively to the second output of the first decoder, with the third output of the first decoder and with the eighth output of the register, the fourth, fifth and the sixth group of outputs of which are connected respectively with the group of outputs of the code of operations of the shaper, with the group of outputs of the control switch of the indices of the shaper and with the group of outputs of the field of codes of logic According to the conditions of the shaper, the ninth and tenth outputs of the register and the output of the OR element are connected respectively with the output of the external access permission to the RAM of the shaper, with the output of the end of the processor and the output of the shaper interrupt, the information input of the register is connected to the information input of the shaper.
SU823492809A 1982-09-16 1982-09-16 Firmware processor SU1070557A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
SU823492809A SU1070557A1 (en) 1982-09-16 1982-09-16 Firmware processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SU823492809A SU1070557A1 (en) 1982-09-16 1982-09-16 Firmware processor

Publications (1)

Publication Number Publication Date
SU1070557A1 true SU1070557A1 (en) 1984-01-30

Family

ID=21029594

Family Applications (1)

Application Number Title Priority Date Filing Date
SU823492809A SU1070557A1 (en) 1982-09-16 1982-09-16 Firmware processor

Country Status (1)

Country Link
SU (1) SU1070557A1 (en)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
1. Па,тент GB 1397253, кл. G 06 F -15/00, опублик. 1975. 2.Патент GB . № 1447736, кл. G 06 F 15/00, опублик. 1976. 3.Авторское свидетельство СССР №664173, кл. О 06 F 15/00, 1979. 4.Авторское свидетельство СССР по за вке №2984194/18-24, кл. О 06 F 15/00, 04.07.80 (прототип ).. ( 54 ) ( 57 )1 .МИКРОПРОГРАММНЫЙ ПРОЦЕССОР., содержсцций блок пам ти команд, блок пам ти микрокоманд, блок оперативного запоминающего устройства, операционный блок, генератор тактовых импульсов, первый элемент ИЛИ, регистр адреса микрокоманд, счетчик команд, формирователь микроопераций, выход модифицируемого разр да адреса следующей микрокоманды блока пам ти микрокоманд соединен спервым входом первого элемента ИЛИ, группа выходов кода операций формировател микроопераций соединена с группой входов кода операций операционного блока, первый выход генератора тактовых импульсов соединен с входом синхронизации регистра адреса микрокоманд, отличающийс тем, что, с целью увеличени производительности за счет введени специал *

Similar Documents

Publication Publication Date Title
KR860001274B1 (en) Data processing system for parrel processing
US3859636A (en) Microprogram controlled data processor for executing microprogram instructions from microprogram memory or main memory
US3990052A (en) Central processing unit employing microprogrammable control for use in a data processing system
JPS6315608B2 (en)
EP0042082B1 (en) Microprogram sequencer for microprogrammed control unit
JPS6319854Y2 (en)
CN1021147C (en) Multiprocessor controller having shared control store
US4047245A (en) Indirect memory addressing
US4320454A (en) Apparatus and method for operand fetch control
SU1070557A1 (en) Firmware processor
US3593316A (en) Data terminal processor
RU2066067C1 (en) Central processor for multiple-processor computer system
SU1254495A1 (en) Interface for linking central processor unit with group of arithmetic processor units
US3938187A (en) System for putting an information record onto a magnetic substrate
SU435527A1 (en) PROCESSOR TO CONTROL DIGITAL CIRCUITS
SU1425680A2 (en) Device for test control of digital units
SU615480A1 (en) Microprogram control arrangement
SU913361A1 (en) Digital computer input-output device
SU545983A1 (en) Channel Control Device
SU446060A1 (en) Computer control unit
JPS6226487B2 (en)
SU474806A1 (en) Firmware device with c-value coding
SU1553984A1 (en) Microprogram processor
SU1168937A1 (en) Microprogram device for controlling and debugging processor microprograms
SU561964A1 (en) Firmware Control