RU2066067C1 - Central processor for multiple-processor computer system - Google Patents

Central processor for multiple-processor computer system Download PDF

Info

Publication number
RU2066067C1
RU2066067C1 SU4950675A RU2066067C1 RU 2066067 C1 RU2066067 C1 RU 2066067C1 SU 4950675 A SU4950675 A SU 4950675A RU 2066067 C1 RU2066067 C1 RU 2066067C1
Authority
RU
Russia
Prior art keywords
output
register
information
block
input
Prior art date
Application number
Other languages
Russian (ru)
Inventor
В.М. Пентковский
А.И. Зайцев
С.С. Коваленко
В.М. Фельдман
Original Assignee
Институт точной механики и вычислительной техники им.С.А.Лебедева РАН
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 Институт точной механики и вычислительной техники им.С.А.Лебедева РАН filed Critical Институт точной механики и вычислительной техники им.С.А.Лебедева РАН
Priority to SU4950675 priority Critical patent/RU2066067C1/en
Application granted granted Critical
Publication of RU2066067C1 publication Critical patent/RU2066067C1/en

Links

Images

Landscapes

  • Advance Control (AREA)

Abstract

FIELD: computer engineering, processing of data from physical experiments, automatic real-time control. SUBSTANCE: device has two instruction decoders, unit of registers, read-only memory unit, unit for processing integers, unit for processing float point numbers, unit for logical processing, unit for processing addresses and unit for processing of addresses of registers. EFFECT: increased speed. 3 cl, 11 dwg

Description

Изобретение относится к вычислительной техники и может быть использовано, например, для обработки данных физических экспериментов, для решения задач автоматизированного управления в реальном масштабе времени и для научных расчетов, требующих высокой производительности и большого объема памяти. The invention relates to computer technology and can be used, for example, for processing data from physical experiments, for solving problems of automated control in real time, and for scientific calculations requiring high performance and a large amount of memory.

Известен процессор, содержащий первый и второй блоки сопряжения, первый и второй блоки регистров, блок контроля, блок постоянной памяти, блок обработки целых чисел, блок обработки вещественных чисел, блок постоянной памяти, блок логической обработки (1). A known processor containing the first and second blocks of conjugation, the first and second blocks of registers, a control unit, a read-only memory unit, an integer processing unit, a real-number processing unit, a read-only memory unit, a logical processing unit (1).

Известный процессор построен на базе архитектуры с сокращенным набором команд, в котором большинство простых команд выполняется за один период следования синхроимпульсов, при этом обеспечивается конвейерная обработка в большом числе параллельно работающих блоков обработки информации. Например, операции над целыми и вещественными числами могут выполняться одновременно в двух независимо работающих блоках. Большинство команд данного процессора оперируют с данными, находящимися в блоке регистров, что ускоряет процесс обработки и повышает быстродействие. Однако, в случае выполнения процедурных переходов, то есть переходов на новые подпрограммы, возникает необходимость сохранения содержимого регистров в оперативной памяти, что требует дополнительных временных затрат. Кроме того, выполнение сложных операций, а также обработка исключительных ситуаций, таких как преобразование форматов и типов, реализуются путем выполнения последовательности простых типов, реализуются путем выполнения последовательности простых команд, генерируемых компилятором в процессе трансляции программ. В частности, работа с динамикой типов операндов требует дополнительных программных затрат. В этом случае, однако, увеличивается количество обращений в оперативную память, что приводит к снижению производительности. The well-known processor is built on the basis of architecture with a reduced set of instructions, in which most simple instructions are executed in one period of synchronization pulses, and this provides pipelining in a large number of parallel processing units of information processing. For example, operations on integers and real numbers can be performed simultaneously in two independently working blocks. Most of the instructions of this processor operate with data in the register block, which speeds up the processing process and improves performance. However, in the case of performing procedural transitions, that is, transitions to new subprograms, there is a need to save the contents of the registers in RAM, which requires additional time costs. In addition, the execution of complex operations, as well as the handling of exceptional situations, such as the conversion of formats and types, are implemented by performing a sequence of simple types, are implemented by executing a sequence of simple commands generated by the compiler in the process of translating programs. In particular, working with the dynamics of operand types requires additional software costs. In this case, however, the number of accesses to RAM increases, which leads to a decrease in performance.

Наиболее близким по технической сущности к предлагаемому устройству является процессор вычислительной системы (2), содержащий первый и второй блоки сопряжения, блок регистров, блок контроля, блок постоянной памяти, блок обработки целых чисел, блок обработки вещественных чисел, блок логической обработки, информационную магистраль, магистраль управления, магистраль контроля, адресно-числовой вход-выход и информационный вход-выход первого блока сопряжения являются первым и вторым информационными входами-выходами процессора, первый информационный вход и адресный выход второго блока сопряжения являются информационным входом и адресным выходом процессора, первый выход блока постоянной памяти является управляющим выходом процессора, второй выход блока постоянной памяти и его адресный вход соединен со вторым информационным входом-выходом и адресно-числовым входом-выходом второго блока сопряжения, второй выход которого через информационную магистраль соединен со вторым информационным входом-выходом первого блока сопряжения, первым информационным входом-выходом блока обработки целых чисел, первым информационным входом блока регистров, первым информационным входом-выходом блока обработки вещественных чисел и первым информационным входом-выходом блока логической обработки, выходы группы второго блока сопряжения через магистраль управления подключены к управляющим входам первого блока сопряжения, блока обработки целых чисел, блока регистров, блока обработки вещественных чисел, блока контроля, блока логической обработки, третий информационный вход-выход первого блока сопряжения через магистраль контроля соединен со вторыми информационными входами-выходами блоков обработки целых чисел, регистров, обработки вещественных чисел, логической обработки и информационным входом блока контроля, выход которого подключен ко входу считывания блока постоянной памяти и управляющему входу второго блока сопряжения. В этом процессоре большинство исключительных ситуаций, а также случаи работы с динамикой типов и форматов обрабатываются без прерывания процессора и выхода на процедуры операционной системы. Выполнение операций ведется с использованием конвейера в блоках обработки. Возможно одновременное выполнение операций над целыми и вещественными числами. Формирование адресов в командах обращения в память производится в блоке обработки целых чисел, а сформированный адрес передается в первый блок сопряжения. Это, однако, снижает производительность, поскольку невозможно параллельное выполнение команды обработки целых чисел и обращений в память. Кроме того, недостатком данного процессора является необходимость сохранения и восстановления содержимого регистров, требующих большого числа обращений в память. The closest in technical essence to the proposed device is a processor of a computing system (2), containing the first and second pairing units, a register unit, a control unit, a read-only memory unit, an integer processing unit, a real number processing unit, a logical processing unit, an information highway, control line, control line, address-numerical input-output and information input-output of the first interface unit are the first and second information inputs-outputs of the processor, the first information the input and address output of the second interface unit are the information input and address output of the processor, the first output of the permanent memory unit is the control output of the processor, the second output of the permanent memory unit and its address input are connected to the second information input-output and the address-numerical input-output of the second the interface unit, the second output of which is connected through the information highway to the second information input-output of the first interface unit, the first information input-output of the unit integer processing, the first information input of the register block, the first information input-output of the processing unit of real numbers and the first information input-output of the logic processing unit, the outputs of the group of the second interface block are connected to the control inputs of the first interface block, the integer processing block, through the control line, block of registers, block of processing of real numbers, control block, block of logical processing, the third information input-output of the first block of pairing through the trunk to trol is connected with second information input-output processing units integer registers, processing of real numbers, logical processing and control information input unit, an output of which is connected to the input of the read only memory unit and the control input of the second coupling block. In this processor, most exceptions, as well as cases of working with the dynamics of types and formats, are processed without interrupting the processor and entering the operating system procedures. The operations are carried out using the conveyor in the processing units. It is possible to simultaneously perform operations on integers and real numbers. The formation of addresses in the memory access commands is performed in the integer processing unit, and the generated address is transmitted to the first pairing unit. This, however, reduces performance because it is not possible to execute an instruction to process integers and memory accesses in parallel. In addition, the disadvantage of this processor is the need to save and restore the contents of registers, requiring a large number of memory accesses.

Цель изобретения повышение быстродействия процессора. The purpose of the invention is the increase in processor speed.

На фиг. 1 представлена блок-схема центрального процессора; на фиг. 2 - схема блока обработки адресов памяти; на фиг. 3 схема блока обработки адресов регистров; на фиг. 4 схема первого блока дешифрации команд; на фиг. 5 схема второго блока дешифрации команд; на фиг. 6 блок регистров; на фиг. 7 блок обработки целых чисел; на фиг. 8 блок обработки вещественных чисел; на фиг. 9 блок логической обработки; на фиг. 10 блок контроля; на фиг. 11 блок постоянной памяти. In FIG. 1 is a block diagram of a central processor; in FIG. 2 is a diagram of a memory address processing unit; in FIG. 3 scheme of the register address processing block; in FIG. 4 diagram of the first block decryption commands; in FIG. 5 diagram of the second block decryption commands; in FIG. 6 block of registers; in FIG. 7 unit for processing integers; in FIG. 8 block processing real numbers; in FIG. 9 logical processing unit; in FIG. 10 control unit; in FIG. 11 block of read-only memory.

Центральный процессор содержит первый блок 1 дешифрации команд, блок 2 регистров, второй блок 3 дешифрации команд, блок 4 контроля, блок 5 постоянной памяти, блок 6 обработки целых чисел, блок 7 обработки вещественных чисел, блок 8 логической обработки, блок 9 обработки адресов памяти и блок 10 обработки адресов регистров. The central processor comprises a first instruction decryption unit 1, a register block 2, a second instruction decryption unit 3, a control unit 4, a permanent memory unit 5, an integer processing unit 6, a real number processing unit 7, a logical processing unit 8, a memory address processing unit 9 and a register address processing unit 10.

Процессор имеет первый информационный выход-выход 11, второй информационный вход-выход 12, управляющий вод 13, адресный выход 14 и управляющий выход 15, а также информационную магистраль 16, магистраль 17 управления, магистраль 18 контроля. The processor has a first information output-output 11, a second information input-output 12, control water 13, address output 14 and control output 15, as well as an information highway 16, control highway 17, control highway 18.

Первый блок 1 дешифрации команд имеет информационные входы-выходы 19 - 1. 19 3, адресно-числовой вход-выход 20, управляющий вход 21, адресный вод 22, блок 2 регистров выполнен как совокупность 2-х блоков регистров прототипа (2) и имеет информационные входы-выходы 23 1 и 23 2, управляющий вход 24, адресный вход 25, блоки 3, 4, 5, 6, 7, 8 выполнены и подключены также как в прототипе, блок 9 обработки адресов памяти имеет информационные входы-выходы 44 1 и 44 2, управляющий вход 45, адресный выход 46 и информационный выход 47, блок 10 обработки адресов регистров имеет первый управляющий вход 49, информационный вход 50 и адресный выход 51. The first block 1 command decryption has information inputs-outputs 19 - 1. 19 3, address-numeric input-output 20, control input 21, address water 22, block 2 registers is made as a combination of 2 blocks of register prototype (2) and has information inputs and outputs 23 1 and 23 2, control input 24, address input 25, blocks 3, 4, 5, 6, 7, 8 are made and connected as in the prototype, the memory address processing unit 9 has information inputs and outputs 44 1 and 44 2, control input 45, address output 46 and information output 47, register address processing unit 10 has a first control vlyayuschy input 49, information input 50 and output 51 of the address.

В состав блока 9 обработки адресов памяти входят регистр 52 базы текущей процедуры, регистр 53 тега базы, регистр 54 границы, регистр 55 тега границы, регистр 56 первого операнда, регистр 57 второго операнда, сдвигатель 58, сумматор 59, элемент сравнения 60, блок 61 управления, мультиплексор 62 тегов, мультиплексор 63, регистр 64 адреса, первый формирователь 65, второй формирователь 66. The memory address processing unit 9 includes a base register 52 of the current procedure, a base tag register 53, a border register 54, a border tag register 55, a first operand register 56, a second operand register 57, a shifter 58, an adder 59, a comparison element 60, block 61 control, tag multiplexer 62, multiplexer 63, address register 64, first driver 65, second driver 66.

В состав блока 10 обработки адресов регистров входят мультиплексор 67, сумматор 68, блок 69 управления. The structure of the block 10 processing the addresses of the registers includes a multiplexer 67, an adder 68, a control unit 69.

В состав первого блока 1 входят регистр 70 адреса, регистр 71 считываемых данных, регистр 72 записываемых данных, регистр 73 тега записываемых данных, регистр 74 тега считываемых данных, узел 75 управления, блоки шинных формирователей 76 80. The first block 1 includes an address register 70, a read data register 71, a write data register 72, a write data tag register 73, a read data tag register 74, a control unit 75, bus former units 76 80.

В состав второго блока 3 входят регистр 81 команд, дешифратор 82 команд, регистр 83 управляющего слова первого уровня, регистр 84 управляющего слова второго уровня, регистр 85 управляющего слова четвертого уровня, регистр 87 константы, счетчик 88 индекса команды, регистр 89 индекса перехода, мультиплексор 90, выходной регистр 91 индекса, блок 92 регистров индексов исполняемых команд, узел 93 управления, блоки шинных формирователей 94. The second block 3 includes a register of 81 commands, a decoder 82 commands, a register 83 of a control word of the first level, a register 84 of a control word of a second level, a register of 85 control words of a fourth level, a register of 87 constants, a counter 88 of the command index, a register 89 of the transition index, a multiplexer 90, the output index register 91, the block 92 index registers of the executable commands, the control unit 93, the blocks of bus shapers 94.

В состав блока 2 регистров входят регистр 95 номера, дешифратор 96 номера, регистровый накопитель 97, регистр 98 данных, регистр 99 тега, блоки шинных формирователей 100, 101, узел 102 управления. The block 2 of the registers includes a register 95 numbers, a decoder 96 numbers, a register drive 97, a data register 98, a register 99 tags, blocks of bus drivers 100, 101, a control unit 102.

В состав блока 6 обработки целых чисел входят регистры 103, 104 операндов, сумматор 105, регистр 106 результата, регистры 107, 108 тегов операндов, узел 109 контроля, узел 110 управления, блок шинных формирователей 111. Узлы 109 и 120 могут быть выполнены на многовходовых логических схемах И ИЛИ НЕ. The integer processing unit 6 includes operand registers 103, 104, an adder 105, a result register 106, operand tag registers 107, 108, a control unit 109, a control unit 110, a bus former unit 111. The nodes 109 and 120 can be multi-input logical circuits AND OR NOT.

В состав блока 7 обработки вещественных чисел входят регистры 112, 113 операндов, регистры 114, 115 тегов операндов, сумматор 116, умножитель 117, мультиплексор 118, блок шинных формирователей 119, узел контроля 120, узел 121 управления. The real number processing unit 7 includes operand registers 112, 113, operand registers 114, 115, adder 116, multiplier 117, multiplexer 118, bus former unit 119, monitoring unit 120, control unit 121.

В состав блока 8 логической обработки входят регистры 122, 123 операндов, сумматор 124, дешифратор 125, мультиплексор 126, сдвигатель 127, логический элемент 128 И, генератор 129 маски, регистр 130 результата, блок шинных формирователей 131, узел 132 управления. The logical processing unit 8 includes registers 122, 123 of the operands, an adder 124, a decoder 125, a multiplexer 126, a shifter 127, a logic element 128 AND, a mask generator 129, a result register 130, a bus former unit 131, a control unit 132.

В состав блока 4 контроля входят регистры 133, 134, 135, программируемые логические матрицы 136 1.136 3, узел 137 управления, блок 138 приоритета, мультиплексор 139. Блок 138 приоритета имеет выходы 140 1.140 3 запросов прерываний и вход 140 4, несущий функции входов синхронизации, строба разрешения, кода уровня текущего приоритета. The control block 4 includes registers 133, 134, 135, programmable logic arrays 136 1.136 3, control node 137, priority block 138, multiplexer 139. Priority block 138 has outputs 140 1.140 3 interrupt requests and input 140 4, which carries the functions of synchronization inputs , permission strobe, current priority level code.

В состав блока 5 постоянной памяти входят дешифраторы 141, накопитель 142, регистр 143, блок шинных формирователей 144. Синхронизация центрального процессора 4-х-тактная, широко используемая в современных вычислительных машинах, в частности типа Эльбрус, может быть реализована аналогично устройствам синхронизации МВК "32" (техническое описание ИЫЗ.057.009 ТО "Синхронизатор центральный"). The structure of the permanent memory unit 5 includes decoders 141, a drive 142, a register 143, a bus former unit 144. The central processor synchronization is 4-clock, widely used in modern computers, in particular, the Elbrus type, can be implemented similarly to MVK synchronization devices " 32 "(technical description ИЫЗ.057.009 TO" Central synchronizer ").

При этом каждый хранящий регистр в зависимости от числа ступеней предшествующий логики синхронизации одной из четырех фаз. В зависимости от элементной базы, типов используемых триггеров и схемотехники может быть использована и другая система синхронизации. Moreover, each storage register, depending on the number of steps preceding the synchronization logic of one of the four phases. Depending on the element base, types of triggers used and circuitry, another synchronization system can be used.

Работает процессор следующим образом. The processor works as follows.

Команды, поступающие в процессор приходят на второй блок 3 дешифрации команд, где дешифрируются и преобразуются в управляющие слова для блоков процессора. Блоки процессора могут работать параллельно, причем одновременно могут выполняться несколько команд. Состав исполнительных блоков процессора может быть различным. Блоки 6 и 7 обработки целых и вещественных чисел достаточно традиционны и не требуют подробного описания. В блоке 8 логической обработки реализуется выделение и вставление поля байт произвольного размера в пределах 32-х разрядов, обработанная в блоках информация поступает в информационную магистраль 16. При дешифрации команды формируется управляющее слово, которое разбито на фиксированные поля для каждого блока. В свою очередь, каждое поле может иметь разряды, относящиеся к различным фазам выполнения команды. Команды по длительности выполнения могут включать от двух до четырех фаз. Во втором блоке 3 дешифрации команд организован конвейер выполняемых команд в виде регистров. Выходы регистров логически суммируются, в результате образуется текущее управляющее слово, поступающее в магистраль управления 17. The commands received by the processor come to the second block 3 of the command decryption, where they are decrypted and converted into control words for the processor blocks. The processor units can work in parallel, and several commands can be executed simultaneously. The composition of the Executive blocks of the processor may be different. Blocks 6 and 7 of the processing of integers and real numbers are quite traditional and do not require a detailed description. In block 8 of the logical processing, the selection and insertion of a field of bytes of arbitrary size within 32 bits is implemented, the information processed in the blocks enters the information line 16. When decrypting the command, a control word is generated, which is divided into fixed fields for each block. In turn, each field can have bits related to different phases of the command. Duration commands can include two to four phases. In the second block 3 of the decryption of commands organized by the pipeline of executed commands in the form of registers. The outputs of the registers are logically summed, as a result, the current control word is generated, which enters the control line 17.

Каждый из блоков процессора, в соответствии с кодом операции, поступающим из управляющего слова, выполняет действия над операндами, считываемыми из блока 2 регистров, в который записывается результат операции. Операнды, считываемые из блока 2 регистров на информационную магистраль 16, могут приниматься и обрабатываться всеми блоками процессора, результат же операции выдает только один блок. Таким образом, большинство функций, выполняемых предлагаемым процессором, аналогично выполняющих в прототипе. Однако, в прототипе формирование адресов для обращения в память осуществляется в блоке обработки целых чисел, а в предлагаемом процессоре адресная арифметика реализуется в блоке 9 обработки адресов памяти. При этом используется базово-индексный режим адресации. База поступает на регистр 56 первого операнда, индекс на регистр 57 второго операнда. Затем база и индекс, предварительно проходящий через сдвигатель 58, складывается на сумматоре 59. Сформированный адрес через отдельный адресный выход 46 передается в память через первый блок 1 дешифрации команд. В случае выполнения команды формирования адреса результат, полученный на сумматоре 59, фиксируется в регистре 64 адреса и записывается в блок 2 регистров через мультиплексор 63 и первый шинный формирователь 65. Each of the processor blocks, in accordance with the operation code coming from the control word, performs actions on operands read from the block 2 registers, in which the result of the operation is written. The operands read from block 2 of the registers to the information highway 16 can be received and processed by all blocks of the processor, the result of the operation produces only one block. Thus, most of the functions performed by the proposed processor, similarly performing in the prototype. However, in the prototype, the formation of addresses for accessing the memory is carried out in the processing unit of integers, and in the proposed processor, address arithmetic is implemented in the processing unit 9 of the memory addresses. In this case, the base-index mode of addressing is used. The base goes to the register 56 of the first operand, the index to the register 57 of the second operand. Then the base and the index, previously passing through the shifter 58, is added to the adder 59. The generated address through a separate address output 46 is transmitted to the memory through the first block 1 of the command decryption. In the case of the execution of the address generation command, the result obtained on the adder 59 is fixed in the address register 64 and is recorded in the block 2 of the registers through the multiplexer 63 and the first bus driver 65.

И исполнение автономного блока для адресной арифметики разрешает конфликт по ресурсам между командами обработки целых чисел и командами обращения в память и разрешает их совместное выполнение. And the execution of an autonomous unit for address arithmetic resolves a resource conflict between integer processing instructions and memory access instructions and allows their joint execution.

Кроме того, в процессоре реализован способ организации аппаратного буфера стека процедур. Для этого введен регистр 52 базы текущей процедуры, в котором хранится значение базы, указывающей начало регистрового "окна", используемого в текущей процедуре. In addition, the processor implements a method of organizing a hardware buffer of the procedure stack. To do this, the base register 52 of the current procedure is entered, which stores the value of the base indicating the beginning of the register "window" used in the current procedure.

Если в прототипе адреса регистров брались непосредственно из команды, то в предлагаемом процессоре аналогичные поля команд указывают относительные номера регистров, используемых в текущей процедуре, а абсолютные адреса получаются путем суммирования содержимого регистра 52 базы текущей процедуры и относительного номера на сумматоре 68 в блоке 10 обработки адресов регистров. If in the prototype the addresses of the registers were taken directly from the command, then in the proposed processor the similar instruction fields indicate the relative numbers of the registers used in the current procedure, and the absolute addresses are obtained by summing the contents of the register 52 of the base of the current procedure and the relative number on the adder 68 in the address processing unit 10 registers.

При выполнении процедурного перехода значение базы изменяется путем индексирования регистра 52 базы текущей процедуры. Это осуществляется на сумматоре 59 блока 9 обработки адресов памяти. Таким образом реализуется перемещение начала "окна" и вызванная процедура работает с новыми регистрами. При возврате в вызывающую процедуру значения регистра 52 базы текущей процедуры восстанавливается и работа возобновляется с ранее используемыми регистрами. Случаи сохранения содержимого регистров в памяти и их обратного восстановления при таком подходе сведены к минимуму и зависят только от общего числа регистров в блоке 2 регистров и уровня вложенности процедур. В случае исчерпания всех регистров при очередном процедурном переходе формируется сигнал из элемента 60 сравнения текущего значения базы и регистра 54 границы, в котором хранится значение максимального количества регистров. По этому сигналу происходит переход на процедуру сохранения регистров в памяти. When performing a procedural transition, the base value is changed by indexing the base register 52 of the current procedure. This is done on the adder 59 of the block 9 processing memory addresses. In this way, the start of the “window” is realized and the called procedure works with the new registers. When the values of the register 52 of the base of the current procedure are returned to the calling procedure, it is restored and work is resumed with the previously used registers. Cases of storing the contents of the registers in memory and their reverse recovery with this approach are minimized and depend only on the total number of registers in the block of 2 registers and the level of nesting procedures. If all the registers are exhausted during the next procedural transition, a signal is generated from the element 60 for comparing the current base value and the border register 54, in which the value of the maximum number of registers is stored. By this signal, a transition to the procedure for storing the registers in memory takes place.

Подход, примененный при работе с регистрами, позволяет, кроме того, объединить в один блок регистры, работающие с программами, взятыми из памяти команд и регистры, используемые в случае выполнения программы, хранящиеся в блоке 5 постоянной памяти. В случае выполнения встроенных подпрограмм адрес регистра формируется не суммированием относительно номера из команды со значением базы, а путем приписывания к номеру единицы в старшем разряде. Это осуществляется на мультиплексоре 67 в блоке 10 обработки адресов регистров по сигналу из блока контроля 20. ЫЫЫ2 ЫЫЫ4 ЫЫЫ6 ЫЫЫ8 ЫЫЫ10 The approach used when working with registers allows, in addition, to combine into one block the registers working with programs taken from the command memory and the registers used in the case of program execution stored in block 5 of permanent memory. In the case of executing the built-in subprograms, the register address is formed not by summing up the number from the command with the base value, but by assigning a unit in the high order to the number. This is done on the multiplexer 67 in the block 10 processing the addresses of the registers by a signal from the control unit 20. YYYY2 YYY4 YYY6 YYY8 YYY10

Claims (3)

1. Центральный процессор для многопроцессорной вычислительной системы, содержащий первый и второй блоки дешифрации команд, блок регистров, блок контроля, блок постоянной памяти, блок обработки целых чисел, блок обработки вещественных чисел, блок логической обработки, первый и второй информационные входы/выходы первого блока дешифрации команд являются соответственно первым и вторым информационными входами-выходами процессора, информационный вход и первый информационный выход второго блока дешифрации команд являются соответственно информационным входом и информационным выходом процессора, первый выход блока постоянной памяти является выходом признака готовности процессора, второй выход блока постоянной памяти и его адресный вход подключены соответственно к первым и вторым информационным входам-выходам второго блока дешифрации команд, второй информационный выход которого через информационную магистраль соединен с третьим информационным входом-выходом первого блока дешифрации команд, первым информационным входом-выходом блока обработки целых чисел, первым информационным входом блока регистров, с первым информационным входом-выходом блока обработки вещественных чисел и первым информационным входом-выходом блока логической обработки, выходы группы второго блока дешифрации команд через магистраль управления подключены к управляющему входу блока обработки целых чисел, к входу записи/чтения блока регистров, к управляющим входам блоков обработки вещественных чисел контроля, логической обработки и первого блока дешифрации команд, четвертый информационный вход-выход которого через магистраль контроля подключен к вторым информационным входам-выходам блоков обработки целых чисел, обработки вещественных чисел, логической обработки, к информационному входу-выходу блока регистров и к информационному входу блока контроля, выход которого подключен к входу считывания блока постоянной памяти и управляющему входу второго блока дешифрации команд, отличающийся тем, что, с целью повышения быстродействия, в центральный процессор введены блок обработки адресов памяти и блок обработки адресов регистров, причем информационный выход блока обработки адресов регистров подключен к входу выборки блока регистров, управляющие входы и первый информационный вход блока обработки адресов регистров подключены к выходам группы второго блока дешифрации команд и к выходу блока контроля, первый информационный выход блока обработки адресов памяти подключен к второму информационному входу блока обработки адресов регистров, второй информационный выход блока обработки адресов памяти подключен к информационному входу первого блока дешифрации команд, первый информационный вход/выход блока обработки адресов памяти через информационную магистраль подключен к второму информационному выходу второго блока дешифрации команд, к третьему информационному входу-выходу первого блока дешифрации команд, к информационному входу блока регистров и к первым информационным входам-выходам блока обработки вещественных чисел, блока обработки целых чисел и блока логической обработки, второй информационный вход-выход блока обработки адресов памяти через магистраль контроля подключен к четвертому информационному входу-выходу первого блока дешифрации команд, к информационному входу-выходу блока регистров, к информационному входу блока контроля и к вторым информационным входам-выходам блока обработки целых чисел, блока вещественных чисел и блока логической обработки, управляющие входы блока обработки адресов памяти подключены к выходам группы второго блока дешифрации команд. 1. A central processor for a multiprocessor computing system, comprising the first and second instruction decryption units, a register unit, a control unit, a read-only memory unit, an integer processing unit, a real number processing unit, a logical processing unit, the first and second information inputs / outputs of the first unit command decryption are respectively the first and second information inputs / outputs of the processor, the information input and the first information output of the second command decryption unit are respectively formation input and information output of the processor, the first output of the read-only memory block is the output of the processor readiness indicator, the second output of the read-only memory block and its address input are connected respectively to the first and second information inputs and outputs of the second command decryption unit, the second information output of which is connected via the information highway with the third information input-output of the first command decryption unit, the first information input-output of the integer processing unit, the first inf by the radiation input of the register block, with the first information input-output of the block for processing real numbers and the first information input-output of the block of logical processing, the outputs of the group of the second block of command decryption through the control line are connected to the control input of the block for processing integers, to the write / read input of the register block , to the control inputs of the blocks for processing real numbers of control, logical processing, and the first block of command decryption, the fourth information input-output of which is through the highway the control is connected to the second information inputs and outputs of the blocks for processing integers, processing real numbers, logical processing, to the information input and output of the register block and to the information input of the control unit, the output of which is connected to the read input of the read-only memory block and the control input of the second command decryption unit characterized in that, in order to improve performance, a memory address processing unit and register address processing unit are introduced into the central processor, wherein the information output is block the processing of register addresses is connected to the input of the sample of the register block, the control inputs and the first information input of the processing unit of the register addresses are connected to the outputs of the second block of command decryption and to the output of the control unit, the first information output of the processing unit of the memory addresses is connected to the second information input of the register processing unit , the second information output of the memory address processing unit is connected to the information input of the first command decryption unit, the first information input / output the memory address processing lock via the information highway is connected to the second information output of the second command decryption block, to the third information input-output of the first command decryption block, to the information input of the register block and to the first information inputs and outputs of the real number processing block, the integer processing block, and logical processing unit, the second information input-output of the memory address processing unit through the control line is connected to the fourth information input-output of the first about the command decryption block, to the information input-output of the register block, to the information input of the control block and to the second information inputs and outputs of the integer processing block, real number block and logical processing block, the control inputs of the memory address processing block are connected to the outputs of the second block group command decryption. 2. Процессор по п.1, отличающийся тем, что блок обработки адресов памяти содержит регистр базы текущей процедуры, регистр тега базы, регистр границы, регистр тега границы, регистры первого и второго операндов, регистр сдвига, сумматор, элемент сравнения, узел микропрограммного управления, мультиплексор тегов, регистр адреса, мультиплексор, первый и второй шинные формирователи, причем первый информационный вход-выход блока обработки адресов памяти подключен к информационным входам регистров базы текущей процедуры, границы, первого операнда и второго операнда и к выходу первого шинного формирователя, второй информационный вход-выход блока обработки адресов памяти подключен к информационным входам регистров тега базы, тега границы и к выходам второго шинного формирователя и элемента сравнения, второй информационный выход блока подключен к информационному выходу сумматора, к первому информационному входу элемента сравнения и к информационному входу регистра адреса, первый информационный выход блока подключен к выходу регистра базы текущей процедуры и к первому информационному входу мультиплексора, выходы узла микропрограммного управления подключены к входам записи-считывания регистра базы текущей процедуры, регистра тега базы, регистра границы, регистра тега границы, регистров первого и второго операндов, регистра адреса и регистра сдвига, к управляющим входам сумматора, элемента сравнения, мультиплексора тегов, мультиплексора, первого и второго шинных формирователей, выход регистра тега базы подключен к первому информационному входу мультиплексора тегов, второй информационный вход которого подключен к выходу регистра тега границы, выход мультиплексора подключен к информационному входу первого шинного формирователя, выход регистра адреса к второму информационному входу мультиплексора, третий информационный вход которого подключен к выходу регистра границы и к второму информационному входу элемента сравнения, выход мультиплексора тегов подключен к информационному входу второго шинного формирователя, выход регистра первого операнда к первому информационному входу сумматора, второй информационный вход которого подключен к выходу регистра сдвига, информационный вход которого соединен с выходом регистра второго операнда. 2. The processor according to claim 1, characterized in that the memory address processing unit comprises a base register of the current procedure, a base tag register, a boundary register, a boundary tag register, first and second operand registers, a shift register, an adder, a comparison element, a firmware control node , tag multiplexer, address register, multiplexer, first and second bus drivers, the first information input-output of the memory address processing unit being connected to the information inputs of the base registers of the current procedure, border, first operand and the second operand and to the output of the first bus driver, the second information input-output of the memory address processing unit is connected to the information inputs of the base tag registers, the border tag and to the outputs of the second bus driver and the comparison element, the second information output of the unit is connected to the information output of the adder, the first information input of the comparison element and the information input of the address register, the first information output of the block is connected to the output of the base register of the current procedure and to the first information At the input of the multiplexer, the outputs of the firmware control node are connected to the write-read inputs of the base register of the current procedure, the base tag register, the border register, the border tag register, the first and second operand registers, the address register and the shift register, to the control inputs of the adder, comparison element, tag multiplexer, multiplexer, first and second bus formers, the output of the base tag register is connected to the first information input of the tag multiplexer, the second information input of which is connected the output of the boundary tag register, the multiplexer output is connected to the information input of the first bus driver, the address register output is to the second information input of the multiplexer, the third information input of which is connected to the boundary register output and the second information input of the comparison element, the tag multiplexer output is connected to the information input the second bus driver, the output of the register of the first operand to the first information input of the adder, the second information input of which is connected to move the shift register data input coupled to an output of a second register operand. 3. Процессор по п.1, отличающийся тем, что блок обработки адресов регистров содержит мультиплексор, сумматор и узел микропрограммного управления, причем первый и второй управляющие входы блока обработки адресов регистров подключены соответственно к входам синхронизации сумматора и узла микропрограммного управления, третий управляющий вход блока обработки адресов регистров подключен к первому управляющему входу мультиплексора, первый и второй информационные входы которого подключены соответственно к первому и второму информационным входам блока, информационный выход которого подключен к информационному выходу сумматора, первый информационный вход которого подключен к выходу мультиплексора, первый и второй выходы узла микропрограммного управления подключены соответственно к второму управляющему входу мультиплексора и к второму информационному входу сумматора. 3. The processor according to claim 1, characterized in that the register address processing unit comprises a multiplexer, an adder and a firmware control unit, the first and second control inputs of the register address processing unit being connected respectively to the synchronization inputs of the adder and the firmware control unit, the third control input of the unit register address processing is connected to the first control input of the multiplexer, the first and second information inputs of which are connected respectively to the first and second information the inputs of the unit, the information output of which is connected to the information output of the adder, the first information input of which is connected to the output of the multiplexer, the first and second outputs of the microprogram control unit are connected respectively to the second control input of the multiplexer and to the second information input of the adder.
SU4950675 1991-06-27 1991-06-27 Central processor for multiple-processor computer system RU2066067C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
SU4950675 RU2066067C1 (en) 1991-06-27 1991-06-27 Central processor for multiple-processor computer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SU4950675 RU2066067C1 (en) 1991-06-27 1991-06-27 Central processor for multiple-processor computer system

Publications (1)

Publication Number Publication Date
RU2066067C1 true RU2066067C1 (en) 1996-08-27

Family

ID=21582016

Family Applications (1)

Application Number Title Priority Date Filing Date
SU4950675 RU2066067C1 (en) 1991-06-27 1991-06-27 Central processor for multiple-processor computer system

Country Status (1)

Country Link
RU (1) RU2066067C1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7733635B2 (en) 2002-10-22 2010-06-08 Sullivan Jason A Systems and methods for providing a robust computer processing unit
US7764506B2 (en) 2002-10-22 2010-07-27 Sullivan Jason A Systems and methods for providing a dynamically modular processing unit
US7817412B2 (en) 2002-10-22 2010-10-19 Sullivan Jason A Non-peripherals processing control module having improved heat dissipating properties
RU2584470C2 (en) * 2014-03-18 2016-05-20 Федеральное государственное учреждение "Федеральный научный центр Научно-исследовательский институт системных исследований Российской академии наук" (ФГУ ФНЦ НИИСИ РАН) Hybrid flow microprocessor
USRE48365E1 (en) 2006-12-19 2020-12-22 Mobile Motherboard Inc. Mobile motherboard

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
1. Том Мануэль. Новый процессор 88000. Фирма "Motorola". - Электроника, том 61,9 (791), 1988, с. 28 - 34. 2. Авторское свидетельство СССР N 2028663, кл. G 06 F 15/00, 1989. *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7733635B2 (en) 2002-10-22 2010-06-08 Sullivan Jason A Systems and methods for providing a robust computer processing unit
US7764506B2 (en) 2002-10-22 2010-07-27 Sullivan Jason A Systems and methods for providing a dynamically modular processing unit
US7817412B2 (en) 2002-10-22 2010-10-19 Sullivan Jason A Non-peripherals processing control module having improved heat dissipating properties
US8405969B2 (en) 2002-10-22 2013-03-26 Jason A. Sullivan Non-peripherals processing control module having improved heat dissipating properties
US8976513B2 (en) 2002-10-22 2015-03-10 Jason A. Sullivan Systems and methods for providing a robust computer processing unit
US9606577B2 (en) 2002-10-22 2017-03-28 Atd Ventures Llc Systems and methods for providing a dynamically modular processing unit
US9961788B2 (en) 2002-10-22 2018-05-01 Atd Ventures, Llc Non-peripherals processing control module having improved heat dissipating properties
US10285293B2 (en) 2002-10-22 2019-05-07 Atd Ventures, Llc Systems and methods for providing a robust computer processing unit
US10849245B2 (en) 2002-10-22 2020-11-24 Atd Ventures, Llc Systems and methods for providing a robust computer processing unit
US11751350B2 (en) 2002-10-22 2023-09-05 Atd Ventures, Llc Systems and methods for providing a robust computer processing unit
USRE48365E1 (en) 2006-12-19 2020-12-22 Mobile Motherboard Inc. Mobile motherboard
RU2584470C2 (en) * 2014-03-18 2016-05-20 Федеральное государственное учреждение "Федеральный научный центр Научно-исследовательский институт системных исследований Российской академии наук" (ФГУ ФНЦ НИИСИ РАН) Hybrid flow microprocessor

Similar Documents

Publication Publication Date Title
US4524416A (en) Stack mechanism with the ability to dynamically alter the size of a stack in a data processing system
US4539635A (en) Pipelined digital processor arranged for conditional operation
JPS6313215B2 (en)
US3470540A (en) Multiprocessing computer system with special instruction sequencing
JPH0248931B2 (en)
US5053986A (en) Circuit for preservation of sign information in operations for comparison of the absolute value of operands
US4954947A (en) Instruction processor for processing branch instruction at high speed
US4047245A (en) Indirect memory addressing
US5363322A (en) Data processor with an integer multiplication function on a fractional multiplier
RU2066067C1 (en) Central processor for multiple-processor computer system
JPS623461B2 (en)
US5390306A (en) Pipeline processing system and microprocessor using the system
JPS5911921B2 (en) numerical control device
EP0164418B1 (en) Microprogram control system
CA1119307A (en) Microcomputer having separate bit and word accumulators and separate bit and word instruction sets
KR930003399B1 (en) Microprogrammed systems software instruction undo
US4723258A (en) Counter circuit
JPS6285343A (en) Memory reading-out circuit
RU2028663C1 (en) Computing system
SU608160A1 (en) Central processor
RU2179333C1 (en) Synergistic computer system
JPS5925264B2 (en) Vector instruction processing method
CA1155232A (en) Pipelined digital signal processor using a common data and control bus
JP2573711B2 (en) Micro subroutine control method
JPS60178539A (en) By-pass control system of information processor