SU309363A1 - CENTRAL PROCESSOR OF THE MULTIPROGRAM MULTIPROCESSOR COMPUTING SYSTEM - Google Patents
CENTRAL PROCESSOR OF THE MULTIPROGRAM MULTIPROCESSOR COMPUTING SYSTEMInfo
- Publication number
- SU309363A1 SU309363A1 SU1409003A SU1409003A SU309363A1 SU 309363 A1 SU309363 A1 SU 309363A1 SU 1409003 A SU1409003 A SU 1409003A SU 1409003 A SU1409003 A SU 1409003A SU 309363 A1 SU309363 A1 SU 309363A1
- Authority
- SU
- USSR - Soviet Union
- Prior art keywords
- register
- processor
- command
- circuit
- buffer
- Prior art date
Links
- UIIMBOGNXHQVGW-UHFFFAOYSA-M buffer Substances [Na+].OC([O-])=O UIIMBOGNXHQVGW-UHFFFAOYSA-M 0.000 description 99
- 230000015654 memory Effects 0.000 description 82
- 238000004458 analytical method Methods 0.000 description 51
- 230000000875 corresponding Effects 0.000 description 12
- 230000004048 modification Effects 0.000 description 9
- 238000006011 modification reaction Methods 0.000 description 9
- 239000003550 marker Substances 0.000 description 5
- 238000005070 sampling Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000011664 signaling Effects 0.000 description 4
- 241001442055 Vipera berus Species 0.000 description 3
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 3
- 239000003607 modifier Substances 0.000 description 3
- 230000000903 blocking Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000003139 buffering Effects 0.000 description 1
- 239000000571 coke Substances 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000001419 dependent Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 239000012536 storage buffer Substances 0.000 description 1
Description
Изобретение относитс к вычислительной технике и, в частности, к структуре центрального процессора мультипрограммной мультипроцессорной вычислительной системы, в состав которого входит набор специализированных устройств обработки.The invention relates to computing and, in particular, to the structure of a central processor multiprogram multiprocessor computing system, which includes a set of specialized processing devices.
Известны центральные процессоры мультипрограммной мультипроцессорной вычислительной системы, содержащие процессор команд; процессор выполнени операций с фиксированной зап той, включающий набор регистров общего назначени ; процессор выполнени операций с плавающей зап той, включающий набор регистров арифметики с плавающей зап той; устройство управлени основной оперативной пам тью и устройство управлени основной расширенной пам тью. Причем в процессорах выполнени операций содержатс буферные регистры операндов и магазины кодов операций, подключенные к выходу регистра команды процессора команд, регистры арифметики с плавающей зап той, буферы операндов и магазин кода операций арифметики с плавающей зап той подключены к исполнительным блокам процессора выполнени операций с плавающей зап той. Регистры общего назначени , буферы операндов и магазин кодов операций арифметики с фиксированной зап той подключены к исполнительному блоку процессора выполнени операций с фиксированной зап той. Регистры арифметики с плавающей зап той и исполнительный блок процессора выполнени операций с фиксированной зап той подключены к информационному буферу записи устройства управлени основной оперативной пам тью. Недостатком известного процессора вл етс сложность структуры отдельных специализированных устройств. Путем определенных изменений структуры известного процессора может быть достигнута больша потенциальна производительность.Known central processors multiprogram multiprocessor computing system containing the processor commands; a fixed point execution processor including a set of general registers; a floating point execution processor including a set of floating point arithmetic registers; a main memory management device and a main extended memory management device. Moreover, in the execution processors, buffer operand registers and operation code stores connected to the output of the instruction processor instruction register register, floating-point arithmetic registers, operand buffers, and the floating-point arithmetic operation code store are connected to the processor execution units that General registers, operand buffers, and the fixed-point arithmetic operation code store are connected to the execution unit of the processor to perform fixed-point operations. The floating-point arithmetic registers and the execution unit of the fixed-execution processor are connected to the information buffer of the main memory management device. The disadvantage of the known processor is the complexity of the structure of individual specialized devices. By certain changes in the structure of a known processor, greater potential performance can be achieved.
Предлагаемый центральный процессор отличаетс от известного тем, что он содержит в процессоре команд коммутирующую схему передачи команд на декодирование непосредственно из регистров буфера команд; схему быстрой предварительной проверки и схему точной проверки совпадени адресов чеек пам ти при подготовке операции запоминани с адресами команд, наход щихс в буфере команд; схему записи команд непосредственно из информационного буфера записи устройства управлени оперативной пам тью при совпадении адреса чейки пам ти, в которую производитс запись с адресом какой-либо команды, хран щейс в буфере команд процессора команд, одновременно с записью в чейку пам ти; раздельные шины передачи запросов на чтение и на запись от процессораThe proposed central processor differs from the known one in that it contains in the processor of instructions a switching circuit for transmitting commands for decoding directly from the registers of the instruction buffer; a quick preliminary check circuit and an exact check pattern of the addresses of the memory cells when preparing the storage operation with the addresses of the instructions in the instruction buffer; a scheme for recording commands directly from the information buffer of the memory management device recording device when the address of the memory location in which the recording is made with the address of a command stored in the instruction buffer of the command processor simultaneously coincides with recording into the memory location; separate buses transfer read and write requests from the processor
ных переходов, ускор работу вычислительной машины, и сохран ют содержимое регистров буфера команд, если перехода фактически нет.transitions, speed up the operation of the computer, and retain the contents of the instruction buffer registers if there is no transition.
Первые 16 разр дов декодируемой команды и следующие 32 разр да из регистров буфера команд направл ютс на декодирование через коммутирующую схему 17 с помощью дешифратора 18.The first 16 bits of the decoded instruction and the next 32 bits from the instruction buffer registers are sent to the decoding via the switching circuit 17 using the decoder 18.
К адресу декодируемой команды, записанному в регистре 4, на сумматоре 19 добавл етс длина команды, а результат {адрес следующей команды) запоминаетс в разр дах 40- 63 регистра 20 слова состо ни программы.The length of the command is added to the address of the decoded command recorded in register 4 on the adder 19, and the result (address of the next command) is stored in bits 40-63 of the register 20 of the program state word.
При переходе к декодированию следующей команды адрес из регистра 20 помещаетс в регистр 4. С помощью дешифратора 18 из регистров буфера команд подаютс на декодирование первые 16 разр дов этой команды и следующие 32 разр да и т. д.In the transition to decoding the next command, the address from register 20 is placed into register 4. Using the decoder 18, the command buffer registers the first 16 bits of this command and the next 32 bits, and so on, for decoding.
Команды декодируютс в блоке 21 декодировани команд и помещаютс в регистр 22 команды, из которого под управлением блока 23 анализа конфликтов направл ютс в процессор 24 выполнени операций с фиксированной зап той или процессор 25 выполнени операций с плавающей зап той в магазины кодов операций 26 и 27. Декодированные команды переходов и переключени состо ни направл ютс блоком 21 в блок 28 выполнени команд переходов и переключени состо ни , где они выполн ютс при участии блока 23 анализа конфликтов.Commands are decoded in a command decoding unit 21 and placed into a command register 22, from which, under the control of the collision analyzing unit 23, are sent to a fixed-point processor 24 or a floating-point processor 25 to operation code stores 26 and 27. The decoded transition and state switching commands are sent by block 21 to block 28 for performing transition commands and state switching, where they are performed with the assistance of block 23 of conflict analysis.
В блоке 29 модификации адреса процессора команд формируетс адрес операнда и запрос в устройство управлени оперативной пам тью под управлением блока 23 анализа конфликтов . Запрос на выборку операнда подаетс через коммутатор 5 и регистр 7 запроса на чтение под управлением схемы 6. Сформированный в блоке 29 модификации адреса под управлением блока 23 анализа конфликтов запрос на запись подаетс в адресный буфер 30 записи в устройстве управлени основной оперативной пам тью по отдельной щине 31.In block 29 of modifying the address of the instruction processor, the address of the operand and a request to the memory management device under the control of the collision analysis block 23 are generated. A request to fetch the operand is sent through the switch 5 and the register 7 of the read request under the control of the circuit 6. The write request formed in the address modification block 29 controlled by the conflict analysis block 23 is sent to the write address buffer 30 in the main RAM memory by a separate bus 31.
Если сформирован запрос на запись, то схема 32 быстрой проверки определ ет предварительно , вли ет ли операци запоминани на содержимое буфера 10 команд.If a write request is made, the quick check circuit 32 determines in advance whether the memory operation affects the contents of the command buffer 10.
В случае определени такого вли ни блокируетс выборка команд и декодирование, включаетс схема 33 точной проверки, котора сравнивает адрес чейки пам ти, в которую будет производитьс запоминание, с адресами в регистрах М и 3.If such an influence is determined, the sampling of commands and decoding are blocked, an exact check circuit 33 is included which compares the address of the memory cell into which the memory will be made with addresses in the registers M and 3.
Регистр 3 отмечает адрес первого двойного слова команд, помещенного в буфер команд. Когда в результате увеличени адреса в регистре 2 происходит совпадение трех младших разр дов адреса двойного слова в этом регистре с трем младщими разр дами адреса двойного слова в регистре 3 при передаче запроса в устройство управлени основной оперативной пам тью па выборку двойного словаRegister 3 marks the address of the first double word of commands placed in the command buffer. When, as a result of increasing the address in register 2, the three lower order bits of the double word address in this register coincide with the three lower bits of the double word address in register 3 when the request is sent to the main random access memory control unit on the double word sample
команд, единица добавл етс не только к адресу в регистре 2, но и к адресу в регистре 3. Добавление единицы к адресу в регистре 3 производитс на сумматоре 34, а результат запоминаетс в промежуточном регистре 35. По окончании передачи запроса выход регистра 35 подключаетс ко входу регистра 3. Совпадение трех младших разр дов адреса в регистрах 2 и 5 указывает на то, что буфер 10 комапд заполнен и при последующих выборках двойных слов команд происходит замена двойных слов команд, наход щихс в этом буфере, начина с первого.commands, the unit is added not only to the address in register 2, but also to the address in register 3. Adding one to the address in register 3 is done on adder 34, and the result is stored in intermediate register 35. When the request is completed, the output of register 35 is connected to the input of register 3. The coincidence of the three least significant bits of the address in registers 2 and 5 indicates that the buffer 10 kompapd is full and on subsequent samples of command double words the command double words are replaced that are in this buffer, starting with the first one.
Блокировка снимаетс , если результат точной проверки указывает на то, что запоминание пе вли ет на содержимое буфера команд. Если же адрес чейки пам ти, в которой будет произведено заноминапие, совпадает с адресом какой-либо команды в буфере команд,A lock is released if the result of an exact check indicates that storing the ne does not affect the contents of the command buffer. If the address of the memory cell in which the zanomapia will be produced matches the address of a command in the command buffer,
то блокировка пе снимаетс до тех пор, пока эта команда не будет заменена па новую. Как только информаци дл запоминани поступит в информационный буфер 36 записи, блокировка снимаетс . Така замена производитс This lock is not released until this command is replaced with a new one. As soon as the information for storing enters the recording information buffer 36, the lock is released. This replacement is made
схемой 37.diagram 37.
Полный запрос в устройство управлени основной оперативной пам тью, кроме адреса чейки пам ти, содержит еще ключ защиты пам ти, признак записи или признак чтени ,A complete request to the main operating memory management device, in addition to the address of the memory cell, also contains a memory protection key, a write flag or a read flag,
адрес регистра-приемника и маркер.address of the destination register and the marker.
Четырехразр дный ключ защиты пам ти служит дл защиты определенных областей пам ти от ошибочных засылок информации во врем выполпени программы.The four-bit memory protection key serves to protect certain areas of the memory from erroneous sending of information during the execution of a program.
Дл целей защиты оперативна пам ть разделена на блоки по 256 двойных слов (2048 байтов). С каждым блоком св зан п тиразр дный ключ пам ти. П тый разр д служит дл защиты от выборки.For protection purposes, the operational memory is divided into blocks of 256 double words (2048 bytes). A memory key is associated with each unit. Fifth bit is used to protect against sampling.
При обращении в пам ть в устройстве 9 управлени основной оперативной пам тью производитс сравпение четырехразр дного ключа защиты с четырьм разр дами ключа пам ти . Запись и чтепие разрешены, если приWhen accessing the memory in the main RAM control device 9, the four-bit security key is copied with the four bits of the memory key. Recording and reading are allowed if
этом происходит совпадение или, во всех разр дах ключа защиты пули. Если ключ защиты не пулевой и не совпадает с четырьм разр дами ключа пам ти, запись не разрещена. Чтепие разрешено, если при этом п тый разр д . ключа пам ти нулевой и нет, если единица .this is a match or, in all bits of the bullet protection key. If the security key is not a bullet and does not match the four bits of the memory key, the entry is not allowed. A thread is allowed if it is fifth grade. the memory key is zero and not if the unit.
Ключ защиты хранитс в регистре 20 слова состо ни программы. Ключи пам ти хран тс в блоке 38 пам тиThe security key is stored in register 20 of the program status word. Memory keys are stored in memory block 38.
ключей и поступают в устройство управлени основной оперативной пам тью по щине 39. Ключи пам ти устанавливаютс по команде «Установить ключ пам ти и провер ютс по команде «Прочитать ключ пам ти блоком 28keys and enter the main memory management device via the slit 39. The memory keys are set by the command "Install the memory key and checked by the command" Read the memory key by the block 28
выполнени команд переходов и переключени состо ни .executing transition and state switching commands.
Так как пам ть оперирует со словами двойной длины, а команды - с информацией перемеппой длины (байт, полуслово, слово,Since the memory operates with double-length words, and the commands operate with length information (byte, half-word, word,
Высока производительность достигнута акже благодар уменьшению времени обраени к ЗУ и времени выполнени операций, ысокой степени совмещени операций, паралельного выполнени программ и использованию высокоэффективных алгоритмов.High performance is also achieved due to the reduction of the time of access to the memory and the time of execution of operations, a high degree of combination of operations, parallel execution of programs and the use of high-performance algorithms.
С целью уменьшени времени обращени к У, основна оперативна пам ть разбиваетс на четыре блока с самосто тельным управлением таким образом, что соседние программы и информаци по соседним адресам содератс в разных блоках и выбираютс из них независимо. При такой организации пам ти среднее врем обращени к пам ти уменьшаетс в общем случае пропорционально степени расслоени (разбиени ). Однако в реальных услови х решени задач обращение к отдельным блокам пам ти получаетс неравномерно распределенным во времени. Дл сглаживани такого неравномерного распределени обращений к отдельным блокам пам ти и согласовани времени выборки и времени выполнени операций в процессор введены буферные запоминающие устройства.In order to reduce the time for accessing Y, the main operative memory is divided into four blocks with independent control in such a way that neighboring programs and information on neighboring addresses are stored in different blocks and are independently selected from them. With such an organization of memory, the average access time to memory is reduced in the general case in proportion to the degree of separation (partitioning). However, in the real world of problem solving, accessing individual memory blocks is unevenly distributed in time. To smooth out such an uneven distribution of calls to the individual memory blocks and match the sampling time and the execution time of the operations, buffer memories are introduced into the processor.
Различного рода другие буферные устройства процессора используютс дл организации совмещени операций, С помощью буферов обеспечиваетс постр оение очереди, сглаживание неравномерностей при выполнении операций на различных уровн х и запоминание промежуточных результатов. Така пам ть небольщого объема имеет скорость работы того же пор дка, что и скорость работы логических схем.Various kind of other buffer devices of the processor are used to organize the combination of operations. With the help of buffers, a queue is built, unevenness is smoothed when performing operations at different levels, and the intermediate results are memorized. Such a small memory has a speed of the same order as the speed of the logic circuits.
Буферна пам ть в центральном процессоре позвол ет во врем работы арифметических блоков накапливать командную и числовую информацию, а также приступать к выполнению следующей операции, не дожида сь выполнени предыдущей. Структурна схема центрального процессора реализует принцип максимального совмещени одновременной работы каждого блока с работой остальных. При этом оптимальна согласованность работы отдельных блоков обеспечиваетс системой св зей между ними.The buffer memory in the central processor allows to accumulate command and numerical information during the operation of arithmetic units, as well as to start the execution of the next operation, without waiting for the previous one. The structural scheme of the central processor implements the principle of maximum combination of simultaneous operation of each unit with the work of the others. At the same time, the optimal consistency of the work of individual blocks is ensured by a system of communications between them.
Благодар согласованной параллельной работе отдельных блоков производительность предлагаемого центрального процессора не имеет пр мой зависимости от времени выполнени каждой конкретной операции.Due to the coordinated parallel operation of individual blocks, the performance of the proposed central processor does not directly depend on the time of each individual operation.
Эффективное использование высокой производительности предлагаемого центрального процессора при работе с внешними устройствами и устройствами ввода-вывода достигаетс организацией мультипрограммной работы. При одновременном выполнении двух или нескольких программ предусмотрена защита их от взаимного вли ни . Управление мультипрограммной работой осуществл етс специальной управл ющей программой.Efficient use of the high performance of the proposed CPU when working with external devices and I / O devices is achieved by organizing multiprogram work. When two or more programs are executed simultaneously, their protection against mutual influence is provided. Management of multiprogram work is carried out by a special control program.
Р д элементов предлагаемого центрального процессора осуществл ет автоматическое распределение пам ти, защиту участков пам ти, зан тых какой-либо задачей, от возможныхA series of elements of the proposed CPU provides automatic memory allocation, protection of the memory areas occupied by a task from possible
ощибочных обращений к ним при рещении других задач; автоматическое переключение с одной задачи на другую.alarms to them when solving other tasks; automatic switching from one task to another.
Предусмотрена также совместна работа нескольких процессоров.It also provides for the joint operation of several processors.
Дл программного управлени внещним обменом и автоматического переключени с одной задачи на другую используетс систе.ма прерываний.An interrupt system is used to programmatically control external exchanges and automatically switch from one task to another.
На фиг. 1 дана структурна схема предлагаемого центрального процессора; на фиг. 2- развернута блок-схема блока анализа конфликтов , координирующего работу отдельных буферных ступеней запоминани информации. Команды из пам ти в процессор 1 команд выбираютс 64-разр дными (двойными) словами . Адрес первого двойного слова команд помещаетс в регистры 2 и 3..., адрес первой команды -в регистр 4. С выхода регистра 2 через коммутатор 5 под управлением схемы 6 управлени выборкой адрес подаетс на регистр 7 запроса на чтение и далее по щине 6 передачи запроса на чтение к устройству 9 управлени основной оперативной пам тью. Три младших разр да адреса двойного слова команд указывают на номер регистра буфера 10 команд, в который нужно поместить выбранное из пам ти двойное слово команд. На сумматоре И к адресу первого двойного слова команд добавл етс единица и результат (адрес второго двойного слова команд) запоминаетс в промежуточном регистре 12, при этом адрес первого двойного слова команд запоминаетс в промежуточном регистре 13. По окончании передачи запроса на первое двойное слово команд выход регистра 12 подключаетс ко входу регистра 2, выход регистра 13 - ко входу регистра 14. В регистре 12 при этом оказываетс адрес второго двойного слова команд. Передаетс запрос на выборку второго двойного слова команд, после чего в регистре 2 устанавливаетс адрес третьего двойного слова команд и т. д. до тех пор, пока не возникнет одно из трех условий: а) переданы запросы на п ть двойных слов команд (при передаче запросов на четыре слова дополнительно передаетс запрос еще на одно слово команд, если при этом не задерживаетс передача запроса на операнд); б) устанавливаетс условный режим в результате обработки команды «Условный переход ;FIG. 1 given the structural scheme of the proposed CPU; in fig. 2- a block diagram of the conflict analysis block, coordinating the work of individual buffer stages of storing information, is developed. Commands from the memory into the processor 1 of the commands are selected by 64-bit (double) words. The address of the first double word of commands is placed in registers 2 and 3 ..., the address of the first command is in register 4. From the output of register 2 through switch 5 under the control of the sampling control circuit 6, the address is sent to register 7 of the read request and further on read request to main memory management device 9. The three low-order bits of the command double word address indicate the register number of the 10 command buffer, in which the double word of the command selected from the memory should be placed. At the accumulator I, a unit is added to the address of the first double word of commands and the result (address of the second double word of commands) is stored in intermediate register 12, and the address of the first double word of commands is stored in intermediate register 13. When the request for the first double word of the commands is transmitted, the output register 12 is connected to the input of register 2, the output of register 13 is connected to the input of register 14. In register 12, this is the address of the second double word command. A request is sent to select the second double word of commands, after which register 2 sets the address of the third double word of commands, etc. until one of three conditions occurs: a) requests for five double words of commands are transmitted (when transmitting requests for four words are additionally sent a request for one more command word, if this does not delay the transmission of the request for the operand; b) a conditional mode is established as a result of processing the "Conditional Jump" command;
в) обнаруживаетс неоднородность, т. е. нарушаетс процесс выборки в результате операций перехода, прерывани или запоминани . Выбранные из пам ти двойные слова команд запоминаютс в регистрах буфера 10 команд или в дополнительных буферах 15 и 16.c) non-uniformity is detected, i.e., the sampling process is interrupted as a result of transition, interruption or storage operations. The command double words selected from the memory are stored in the buffer registers of the 10 commands or in the additional buffers 15 and 16.
Дополнительные буферы используютс при обработке команд перехода. В них записываютс два первых двойных слова команд новой последовательности, обработка которой начинаетс , если переход успешный. Эти буферы обеспечивают начало работы в случае успешного буферного регистра. Этот узел состоит из регистра 76, представл ющего собой шесть независимо управл емых триггеров в соответствии с числом буферных регистров процессора выполнени операций с плавающей зап той, схемы выработки кода свободного буферного регистра 77 и схемы 78 сигнализации наличи в процессоре выполнени операций с плавающей зан той свободного буферного регистра.Additional buffers are used when processing transition commands. They record the first two double words of the new sequence commands, the processing of which begins if the transition is successful. These buffers provide a start in case of a successful buffer register. This node consists of a register 76, which consists of six independently controlled triggers in accordance with the number of buffer registers of the processor for performing floating-point operations, the generation scheme of the free buffer register 77 and the signaling circuit 78 of the presence of floating-free operations in the processor. buffer register.
При обработке команды, относ щейс к классу команд с плавающей зап той, иснользующих информацию, котора находитс в пам ти , блок анализа конфликтов провер ет наличие в процессоре выполнени операций с плавающей зап той свободного буферного регистра , сигнал по щине 79 вырабатывает трехразр дный код свободного буферного регистра, поступающий по щине 80 на схему формировани команд в блок декодировани 2/ команд и схему формировани запроса в блок 29 модификации адреса и производит запоминание зан тости выбранного свободного буферного регистра на соответствующем ему триггере (сигнал о зан тости поступает по щине 81 дл обработки следующих команд). Когда процессор 25 выполнени операций с плавающей зап той использует содержимое того или иного буферного регистра, он сигнализирует об этом блоку 23 анализа конфликтов по щине 82, включа соответствующий триггер регистра 76. Информаци о состо нии триггеров по щине 55 поступает на анализ в регистр 77 и схему 78. Работой узла анализа состо ни буферных регистров процессора выполнени oneраций с плавающей зап той управл ет сигнал по щине 84 со схемы S5 выработки управл ющих сигналов.When processing a command belonging to the class of floating point commands that use the information stored in the memory, the collision analyzer checks the processor for performing operations with the floating point of a free buffer register, and the signal on the 79 79th panel produces a three-bit free code. the buffer register, which comes along the command line 80 to the command generation circuit in the decoding unit 2 / commands and the request generation circuit in the address modification block 29 and stores the occupation of the selected free buffer Registers at a corresponding flip-flop (signal busy on schine 81 enters processing for the next instruction). When the processor 25 performing the floating-point operations uses the contents of one or another buffer register, it signals this block 23 of conflict analysis on bus 82, including the corresponding register trigger 76. The status of the trigger on bus 55 is fed to the analysis in register 77 and circuit 78. The operation of the node for analyzing the state of the buffer registers of the floating-point execution processor controls the signal via the strip 84 from the control signal generation circuit S5.
Узел анализа состо ни буферных регистров процессора выполнени операций с фиксированной зап той предназначен дл сигнализации о наличии свободных буферных регистров в этом процессоре и дл выработки кода свободного буферного регистра. Этот узел состоит из регистра 86, представл ющего собой щесть независимо управл ющих триггеров в соответствии с числом буферных регистров в процессоре 24; схемы 87 выработки кода свободного буферного регистра; схемы 88 анализа наличи свободного буферного регистра в процессоре 24 трехразр дного счетчика 89 дл подсчета числа зан тых буферных регистров и схемы 90 анализа числа незан тых буферных регистров.The state of analysis of the state of the buffer registers of the processor performing fixed-point operations is intended to signal the presence of free buffer registers in this processor and to generate a code for the free buffer register. This node consists of register 86, which is the name of independently controlling triggers according to the number of buffer registers in the processor 24; circuit 87 generating code free buffer register; analysis 88 of the availability of a free buffer register in the processor 24 of the three-bit counter 89 for counting the number of occupied buffer registers and the circuit 90 analyzing the number of unused buffer registers.
При обработке команды, относ щейс к классу команд арифметики с фиксированной зан той, использующих информацию, наход щуюс в пам ти, блок 23 анализа конфликтов провер ет факт наличи в процессоре 24 свободного буферного регистра (сигнал но щине 97) и при наличии такового схема 55 выработки управл ющих сигналов по признаку обрабатываемой команды блока 23 анализа конфликтов выдает в узел анализа состо ни буферных регистров этого процессора управл ю12When processing a command belonging to the class of commands of arithmetic with fixed occupation, using information stored in the memory, the conflict analysis block 23 checks for the presence of a free buffer register in the processor 24 (signal 97) and, if so, the circuit 55 generating control signals on the basis of the processed command of the collision analyzing unit 23 outputs to the node analyzing the state of the buffer registers of this processor a control 12
щий сигнал по щине 92, поступающий на схемы 87, 88 и счетчик 89.the transmitting signal on the bus 92, arriving at the circuits 87, 88 and the counter 89.
По этому сигналу схема 87 по щине 93 выдает трехразр дный код свободного буферного регистра процессора 24 в блок 21 декодировани команд на схему формировани команд и в блок 29 модификации адреса на схему формировани запроса; схема 88 выдает на соответствующий триггер регистра 86 сигнал зан тости выбранного буферного регистра по щине 94; счетчик 89 запоминает факт очередного выбора буферного регистра процессора 24.On this signal, the circuit 87 on the tongue 93 issues the three-bit code of the free buffer register of the processor 24 to the instruction decoding unit 21 on the instruction generation circuit and to the address modification unit 29 on the query generation circuit; circuit 88 sends to the corresponding trigger register 86 a busy signal of the selected buffer register via bar 94; The counter 89 remembers the fact of the next selection of the buffer register of the processor 24.
Когда процессор 24 выполнит очередную команду, использующую содержимое буферного регистра, он сигнализирует об этом блоку 23 анализа конфликтов по щине 95 об освобождении буферного регистра, выключа соответствующий триггер регистра 86 и вычита «1 из содержимого счетчика 89. Информаци о состо нии триггеров регистра 86 по щине 96 поступает на схемы анализа 87 и 88 - дл выработки нового кода свободного буферного регистра , и информаци со счетчика 89 по щине 97 поступает на схему 90 анализа количества свободных буферных регистров, так как встречаютс команды арифметики с фиксированной зап той, дл выполнени которых требуетс наличие в процессоре двух свободных буферных регистров. Сигнал по щине 98 со схемы 90 сигнализирует о наличии в процессоре 24 более одного свободного буферного регистра .When processor 24 executes the next command using the contents of the buffer register, it signals this conflict analysis block 23 for clearing the buffer register 95 by turning off the corresponding register 86 trigger and subtracting "1 from the contents of counter 89. The state of the register 86 trigger on bus 96 arrives at analysis circuits 87 and 88 — to generate a new code of the free buffer register, and information from counter 89 via bus 97 arrives at scheme 90 for analyzing the number of free buffer registers, since I meet The PC commands are fixed-point arithmetic, which requires the processor to have two free buffer registers. The signal along the busch 98 from the circuit 90 signals the presence in the processor 24 of more than one free buffer register.
Узел анализа состо ни буферных регистров устройства управлени оперативной пам тью предназначен дл сигнализации наличи свободного буферного регистра в устройстве и выработки кода свободного буферного регистра. Он состоит из регистра 99, представл ющего собой три независимо управл емых триггера в соответствии с числом буферных регистров в устройстве 9 управлени основной оперативной пам тью, схемы 100 выработки кода свободного буферного регистра; схемы 101 анализа наличи свободного буферного регистра в устройстве 9. При обработке команд запоминани блок анализа конфликтов провер ет факт наличи в устройстве 9 свободного буферного регистра (сигнал по щине 102} и при наличии такового схема 55 выработки управл ющих сигналов по признаку обрабатываемой команды выдает в узел анализа состо ни буферных регистров устройства 9 управл ющий сигнал по щине 103, поступающий на схемы 100 и 101.The node for analyzing the state of the buffer registers of the memory management device is intended to signal the presence of a free buffer register in the device and generate a free buffer register code. It consists of a register 99, which is three independently controlled flip-flops in accordance with the number of buffer registers in the main memory management device 9, a circuit for generating a free buffer register code 100; The analysis of the availability of a free buffer register in the device 9. When processing the memory commands, the collision analysis unit checks the fact that the device 9 has a free buffer register (the signal from the slit 102} and, if any, the control signal generation circuit 55, on the basis of the processed command, issues the node of the analysis of the state of the buffer registers of the device 9 control signal on the bar 103, arriving at the circuits 100 and 101.
По этому сигналу схема 100 по щине 104 выдает двухразр дный код свободного буферного регистра устройства 9 в регистр 22 команды и в блок 29 на схему формировани запроса; схема 101 выдает на соответствующий триггер регистра 99 сигнал зан тости выбранного буферного регистра по щине 105. Когда устройство 9 произведет запись информации из буферного регистра в нам ть, оно сигнализирует блоку 23 анализа конфликтов по щинеAccording to this signal, the circuit 100 on the tongue 104 outputs the two-digit code of the free buffer register of the device 9 to the command register 22 and to the block 29 to the query generation circuit; The circuit 101 outputs to the corresponding trigger of the register 99 a busy signal of the selected buffer register along the bus 105. When the device 9 records the information from the buffer register into the cell, it signals the block 23 for analyzing conflicts on the bus
ни требуемой информации и двойном слове необходимы особые признаки.Neither the required information nor the double word requires special signs.
Место расположени требуемой информации указываетс в запросе с помощью восьмиразр дного маркера (в соответствии с числом байтов в двойном слове).The location of the required information is indicated in the request using an eight-bit marker (according to the number of bytes in a double word).
Независимо от длины информации, которую необходимо записать в пам ть, начало ее в регистрах информационного буфера 36 записи всегда совпадает со старшим разр дом.Regardless of the length of information that needs to be written to the memory, its beginning in the registers of the information buffer 36 of the record always coincides with the high-order bit.
Из буфера 36 информаци поступает на схему 40 сдвига, котора подает информацию в шину 41 к блокам управлени основной оперативной пам ти и шину 42 к устройству управлени расширенной оперативной пам тью в соответствии с маркером соответствующего запроса на запись.From the buffer 36, information is transferred to the shift circuit 40, which supplies information to the bus 41 to the main RAM memory control units and the bus 42 to the extended RAM memory management device in accordance with the token of the corresponding write request.
Информаци , выбранна из пам ти, приходит по шине 43 в соответствии с маркером в соответствующем запросе на чтение на входной регистр 44. Одновременно с информацией из пам ти из устройства управлени основной оперативной пам тью по шине- 5 приходит адрес регистра-приемника, который помещаетс в регистр 46, и маркер по шине 47 в регистр 48. Схемой 49 сдвига информаци сдвигаетс так, чтобы начало ее всегда совпадало со старшим разр дом регистра-приемника, и подаетс по шине 50 к регистр , определенному адресом регистра-приемника под управлением дешифратора 51 адреса регистра-приемника .The information selected from the memory comes over the bus 43 in accordance with the marker in the corresponding read request to the input register 44. Simultaneously with the information from the memory, the address of the destination register arrives on the bus 5, which is placed to register 46, and the marker on bus 47 to register 48. By shifting circuit 49, the information is shifted so that its beginning always coincides with the high register of the receiver register, and is fed via bus 50 to the register defined by the address of the receiver register under control of g cipher 51 addresses of the register-receiver.
Кроме того, с регистра 44 информаци подаетс на схему 52 контрол передачи.In addition, from the register 44, information is fed to the transmission control circuit 52.
Команды, оперирующие с информацией переменной длины, могут выполн тьс как программным , так и аппаратным методом. При использовании программного метода такие команды вызывают прерывание программы, по которому из пам ти вызываетс подпрограмма выполнени таких команд.Commands that operate on variable-length information can be performed both in software and hardware. When using the program method, such commands cause the program to be interrupted, according to which a routine for executing such commands is called from the memory.
Дл выполнени команд, оперирующих с информацией переменной длины, аппаратным методом предусматриваетс возможность подключени специализированного блока.To execute commands operating with variable length information, the hardware method provides for the possibility of connecting a specialized unit.
В этом случае прерывание программы не происходит, и код операции из блока 21 декодировани команд подаетс в специализированный блок по шине 53.In this case, the program is not interrupted, and the operation code from the command decoding unit 21 is supplied to the specialized unit via the bus 53.
По шине 54 к блоку дешифрации команд подаетс сигнал о том, что специализированный блок подключен, по которому происходит блокировка прерывани при дешифрации команд, оперирующих с информацией переменной длины , и разрешение передачи кода операции этих команд.Bus 54 sends a signal to the command decryption unit that a dedicated unit is connected, through which the interrupt is blocked when decrypting commands operating with variable length information and allowing the transfer of the operation code of these commands.
Блок 55 прерываний обрабатывает прерывани программы при по влении внешних по отношению к системе сигналов, а также сигналов , поступающих из устройств ввода-вывода или возникающих в самом центральном процессоре.Interrupt block 55 processes program interruptions when signals external to the system appear, as well as signals coming from input / output devices or appearing in the central processor itself.
Св зь с другими центральными процессорами системы осуществл етс по шинам 56 и 57 через блок 58 ввода-вывода.Communication with other central processors of the system is effected via buses 56 and 57 through an input / output unit 58.
Св зь с каналами ввода-вывода по управлению осуществл етс по шинам 59 и 60 через тот же блок 58, который участвует в обработке команд ввода-вывода и пр мого управлени .The control I / O channels are connected via buses 59 and 60 through the same block 58, which participates in the processing of I / O commands and direct control.
Центральный процессор св зан с блоками основной расширенной пам ти через блок 61 управлени основной оперативной пам тью и устройство 62 управлени основной расширенной пам тью по адресной шине 63 и информационной шине 64.The central processor is connected to the main extended memory blocks via the main RAM control unit 61 and the main extended memory control unit 62 via the address bus 63 and the information bus 64.
Устройство 62 управлени основной расширенной пам тью св зано с каналами вводавывода шиной 65.The main extended memory control unit 62 is associated with the input and output channels of the bus 65.
По шине 66 от блока 61 управлени основной оперативной пам тью производитс передача адреса при обращени х к блокам основной расширенной оперативной пам ти.The bus 66 from the main memory management unit 61 is used to transmit the address when accessing the blocks of the main extended random access memory.
Все команды с плавающей зап той выполн ютс в процессоре 25 выполнени операций с плавающей зан той, в который кроме магазина кодов операций 27 вход т блок 67 сложени , в котором выполн ютс операции сложени (вычитани ) с нормализацией результатаAll floating point commands are executed in the processor 25 for performing floating operations, in which, in addition to the operation codes store 27, there is an addition block 67, in which operations of addition (subtraction) are performed with normalization of the result
и без нормализации и сравнение; блок 6S умножени и делени , в котором выполн ютс операции умножени и делени ; регистры 69 арифметики с плавающей зап той, предназначенные дл временного хранени результатов операций с плавающей зап той; буфер 70 операндов арифметики с плавающей зап той, предназначенный дл буферизации операндов, поступающих из оперативной пам ти; дешифратор 71 кода операций.and without normalization and comparison; a multiply and divide unit 6S in which multiply and divide operations are performed; floating-point arithmetic registers 69 for temporarily storing the results of floating-point operations; a buffer 70 of operands in floating point arithmetic designed to buffer operands coming from RAM; descrambler 71 opcode.
Процессор 24 выполнени операций с фиксированной зап той предназначен дл выполнени арифметических операций с фиксированной зап той и логических операций. Процессор 24, кроме магазина 26 кола операций.A fixed-point processor 24 is designed to perform fixed-point arithmetic and logical operations. The processor 24, except for the store 26 coke operations.
содержит исполнительный блок 72, выполн ющий арифметические и логические операции; буфер 75 операндов арифметики с фиксированной зап той, предназначенный дл буферизации операндов, поступающих из оперативнойcontains an execution unit 72 performing arithmetic and logical operations; a buffer of 75 operands of fixed-point arithmetic, intended for buffering operands coming from operational
пам ти; дешифратора 74 кода операций; регистры 75 общего назначени , предназначенные дл временного хранени результатов операций с фиксированной зап той. Регистры общего назначени имеют непосредственную св зьmemory; decoder 74 opcode; general purpose registers 75 for temporarily storing the results of fixed-point operations. General purpose registers are directly connected
с процессором / команд, который может обращатьс к регистрам общего назначени , производить запись и чтение информации из этих регистров.with a processor / instruction that can access general registers, write and read information from these registers.
В некоторых случа х процессор 24 выполнени операций с фиксированной зап той может брать операнды из буфера 70 операндов арифметики с плавающей зап той, который св зан с буфером 73 операндов арифметики с фиксированной зап той.In some cases, a fixed-point processor 24 may take operands from a buffer 70 of floating-point arithmetic operands that is associated with a buffer 73 of fixed-arithmetic operands.
Узел анализа состо ни буферных регистров процессора выполнени операций с плавающей зап той предназначен дл сигнализации наличи в процессоре выполнени операций с плавающей зап той свободных буфер121 . Нар ду с функци ми, описанными выше, схема 121 запоминает номера трех регистров общего назначени , содержимое которых будет использовано при выполнении команд процессором 24. Информаци об этих регистрах поступает по шинам 135 и 124 из блока 21 и представл ет собой четырехразр дные коды, содержащие номера регистров общего назначени 75. Схема 121 по сигналу по шине 136 производит запоминание номеров регистров общего назначени , содержимое которых будет использоватьс при выполнении команд процессором 24. Запоминание производитс на счетчиках 133, номера которых соответствуют номерам регистров общего назначени .The node of analysis of the state of the buffer registers of the processor performing floating point operations is intended to signal the presence in the processor of performing floating point operations free buffers121. Along with the functions described above, the circuit 121 stores the numbers of three general registers, the contents of which will be used when executing instructions of the processor 24. Information on these registers is received on buses 135 and 124 from block 21 and is four-digit codes containing the numbers of the general purpose registers 75. The circuit 121 signals the bus 136 to memorize the numbers of the general purpose registers, the contents of which will be used when executing the commands of the processor 24. The memory is performed on the counters 133, the numbers of which correspond to the numbers of the general purpose registers.
При выполнении процессором 24 команды, использующей содержимое регистра 75 общего назначени , этот процессор выдает в блок 23 анализа конфликтов на счетчик 133 по шине /57 сигнал, по которому этот счетчик производит вычитание «1 в соответствующем счетчике и перевод счетчика в нулевое состо ние , означающее, что данный общий регистр свободен от использовани его в командах с фиксированной зап той.When the processor 24 executes a command using the contents of general register 75, this processor issues to the conflict analysis block 23 to the bus counter 133 via the / 57 signal, by which this counter subtracts "1 in the corresponding counter and the counter is reset to zero, meaning That this general register is free from its use in commands with a fixed comma.
При обработке команд процессора, результатом выполнени которых вл етс изменение информации регистра 75 общего назначени , необходимо следить за тем, чтобы информаци заносилась только в тот регистр, который свободен от использовани в командах процессора 24. Эту функцию выполн ет схема 134 анализа зан тости общих регистров дл команд процессора. Схема 134 получает информацию о регистрах общего назначени , содержимое которых будет изменено в результате выполнени команд процессором 24 (шина 129); информацию о регистрах общего назначени , содержимое которых используетс при выполнении команд процессором 24 (шина 138); информацию о регистре общего назначени , содерлшмое которого изменитс в результате выполнени команды процессором 24, (шина 139) и признак команд процессора, измен ющих содержимое регистров общего назначени (шина 140).When processing processor commands, the result of which is a change in the general register 75, it is necessary to ensure that the information is entered only in the register which is free from use in processor commands 24. This function is performed by the general register occupancy analysis 134 for processor commands. Circuit 134 receives information about general registers, the contents of which will be changed as a result of the execution of instructions by processor 24 (bus 129); information about general registers whose contents are used when executing instructions by processor 24 (bus 138); information about the general purpose register, the contents of which will change as a result of the execution of a command by the processor 24 (bus 139) and the indication of processor commands that change the contents of the general purpose registers (bus 140).
Результат анализа со схемы,/54 в виде сигнала по шине 141 поступает в блок 29 и либо разрешает, либо запрещает запись информации в регистр 75 в результате выполнени команды процессором /.The result of the analysis from the circuit, / 54 as a signal on the bus 141 enters block 29 and either enables or prohibits the recording of information in register 75 as a result of execution of a command by the processor /.
Узел управлени потоком команд предназначен дл вы влени конфликтных ситуаций, которые могут возникнуть при прин том параллельном способе обработки нескольких команд на разных уровн х. Он состоит из регистра 142, представл ющего собой три независимо управл емых триггера, предназначенных дл фиксации признаков, которые могут вызвать прерывание непрерывного потока обработки , обусловленное вли нием команд программы друг на друга; схемы 143 анализа межкомандных блокировок, регистра 144, представл ющего собой три независимо управл емых регистра дл фиксации признаков, которые могут вызвать прерывание непрерывного потока обработки команд, обусловленное вли нием условий, не относ щихс к обрабатываемым командам; и схемы 145 анализа блокировок, не завис щих от обрабатываемых команд.The command flow control node is intended to detect conflicts that may arise when a parallel method of processing several commands is received at different levels. It consists of a register 142, which is three independently controlled flip-flops designed to fix features that can interrupt the continuous processing flow caused by the effect of program instructions on each other; inter-command lock analysis circuits 143, register 144, which are three independently controlled registers for capturing features that can interrupt a continuous stream of command processing due to conditions other than the commands being processed; and interlock analysis circuits 145, independent of the commands being processed.
При обработке команд запоминани может возникнуть ситуаци , когда результат выполнени очередной команды вли ет на команду,When processing memory commands, a situation may arise when the result of executing the next command affects the command
следующую за ней. В этом случае необходимо прекратить декодирование следующей команды , пока не закончитс выполнение команды запоминани . При обработке команды запоминани блок анализа конфликтов заиоминаетfollowing her. In this case, it is necessary to stop decoding the next command until the memory command is completed. When processing the memorization command, the conflict analysis block
эту команду на одном из триггеров регистраthis command on one of the register triggers
142(сигнал по щине 146 из блока 21). Схема 32 быстрой проверки выдает на регистр 142 сигнал по шине 147, который сигнализирует о возможности такого вли ни . Схема 143 в этом случае вырабатывает сигнал по шине 148, который поступает в блок 21 и блокирует подачу команд на дешифрацию и на схему дл блокировки выработки управл юШ .ИХ сигналов.142 (signal along the splint 146 from block 21). The quick check circuit 32 provides a signal to the register 142 via the bus 147, which signals the possibility of such an effect. The circuit 143 in this case generates a signal on the bus 148, which enters block 21 and blocks the supply of commands for decryption and the circuit for blocking the generation of control signals.
После окончательного вы влени вли ни команды запоминани на команды, следующие за ней, схема 33 формирует сигнал по шине 149, который либо подтверждает действие сигнала по шине 147, либо отмен ет его.After the final determination of the effect of the memory command on the commands following it, the circuit 33 generates a signal on the bus 149, which either confirms the effect of the signal on the bus 147 or cancels it.
Информаци с регистра 142 передаетс на схему анализа 143 по шине 150. Другой случай возникновени межкомандных блокировок происходит при обработке команд переходов. В этом случае необходимо прекращать выполнение очередных команд програ.ммы до вы влени решени о переходе. Дл этого схемаThe information from register 142 is transmitted to analysis circuit 143 via bus 150. Another case of the occurrence of inter-command locks occurs during the processing of transition commands. In this case, it is necessary to stop the execution of the next commands of the program until the decision on the transition is made. For this circuit
143получает из блока 21 сигнал признака команды перехода по шине 151.143 receives from block 21 the signal of the sign of the transition command on the bus 151.
При обработке команд программы возникают ситуации, когда приходитс прекращать выполнение команд под вли нием условий, требующих перехода к обработке других программ или подпрограмм. К числу таких условий относ тс поступление сигналов от блокаWhen processing program commands, situations arise when it is necessary to stop the execution of commands under the influence of conditions that require a transition to the processing of other programs or subroutines. These conditions include the arrival of signals from the unit
55 прерываний (сигнал по шпне 152), от таймера (сигнал по шине 153) или вмешательство оператора (сигнал по шипе 154). В любом из этих случаев схема 145 вырабатывает сигнал блокировки по шине 148 на основе анализа содержимого регистра 144, поступающего на схему 145 по шине /55. С другой стороны схема 145 сама вырабатывает сигнал прерывани , по шине 156 поступающий в блок 55 прерываний. Если этот блок принимает сигнал55 interrupts (signal on the spindle 152), from the timer (signal on the bus 153) or operator intervention (signal on the spike 154). In any of these cases, the circuit 145 generates a blocking signal on the bus 148 based on the analysis of the contents of the register 144 arriving at the circuit 145 via the bus / 55. On the other hand, the circuit 145 itself generates an interrupt signal, which is fed via bus 156 to interrupt unit 55. If this block receives a signal
на исполнение, он сообщает об этом блоку 23 анализа конфликтов посылкой сигнала по шине 152, а та, в свою очередь, производит прерывание обработки основного потока команд.for execution, he reports this to the conflict analysis block 23 by sending a signal via bus 152, and that, in turn, interrupts the processing of the main command stream.
Причиной выработки сигнала прерывани по шине 156 схемой 145 вл етс : отсутствие в системе оборудовани дл выполнени тех или иных команд (сигнал по шине /57), так как в этом случае они вл ютс с помощьюThe reason for the generation of the interrupt signal on bus 156 is the circuit 145: the absence of equipment in the system to execute certain commands (bus signal / 57), since in this case they are
1313
106 об освобождении буферного регистра, сбрасыва соответствующий триггер регистра 99. Информаци о состо нии триггеров регистра 99 по шине 107 поступает на схемы анализа 100 и 101 дл выработки нового кода свободного буферного регистра устройства 9.106 about releasing the buffer register by dropping the corresponding trigger register 99. Information about the state of the trigger register 99 via bus 107 goes to analysis circuits 100 and 101 to generate a new code of the free buffer register of the device 9.
Узел анализа состо ни магазинов кодов операций процессоров выполнени операций с фиксированной и плавающей зап той предназначен дл сигнализации способности процессоров принимать команду на исполнение, т. е. того, что магазины команд процессоров имеют свободные регистры дл приема команд. Он состоит из четырехразр дного счетчика 108, фиксирующего число команд, переданных в процессор 25; трехразр дного счетчика 109, фиксирующего число команд, поступивших в процессор 24, и схемы 110 анализа способности процессоров прин ть в магазин следующую очередную команду.The node of the analysis of the state of stores of operation codes of processors with fixed and floating point is intended to signal the ability of processors to accept instructions for execution, i.e., that processor instruction stores have free registers for receiving instructions. It consists of a four-bit counter 108, which records the number of commands transmitted to the processor 25; a three-bit counter 109, which records the number of instructions received by processor 24, and the circuitry 110 of analyzing the ability of processors to accept the next sequential instruction to the store.
При обработке команды с плавающей зап той блок анализа конфликтов провер ет способность процессора 2.5 прин ть команду на исполнение по сигналу по шине 111 со схемы 110. При положительном ответе схема 85 блока 23 анализа конфликтов выдает в счетчик 108 сигнал по шине 112, по которому этот счетчик запоминает факт передачи команды в процессор 25. По окончании выполнени очередной команды процессор 25 выдает в блок 23 анализа конфликтов сигнал по щине 113 на счетчик 108, который сигнализирует об освобождении одного из восьми регистров магазина кодов операций. Аналогично при обработке команды с фиксированной зап той блок анализа конфликтов провер ет способность процессора 24 прин ть команду на исполнение по сигналу по ШЛне.114 схемы 110 и при положительном ответе схема 85 блока 23 анализа конфликтов выдает в счетчик 109 сигнал по шине 115, по которому этот счетчик запоминает факт передачи команды в процессор 24. По окончании выполнени очередной команды процессор 24 выдает в блок анализа конфликтов сигнал по шине 116 на счетчик 109, который сигнализирует об освобождении одного из шести регистров магазина кодов операций. Содержимое счетчиков 108 и 109 по шинам 117 и 118 поступает в схему 110 дл следующего анализа.When processing a floating point command, the collision analysis block checks the ability of processor 2.5 to receive a command to execute on a signal via bus 111 from circuit 110. If the answer is positive, circuit 85 of collision analyzer 23 outputs a signal to bus 108 via bus 112, which the counter remembers the fact of sending the command to the processor 25. Upon completion of the execution of the next command, the processor 25 issues a signal in block 23 to the conflict analysis unit on the counter 113 to the counter 108, which signals the release of one of the eight store registers of the operand codes walkie-talkies. Similarly, when processing a command with a fixed comma, the collision analysis block checks the ability of the processor 24 to receive a command to execute on a signal from SCHNE.114 of the circuit 110 and, if the answer is positive, the circuit 85 of the collision analyzer 23 outputs the signal on bus 115 to counter 109 This counter remembers the fact that a command was sent to the processor 24. Upon completion of the execution of the next command, the processor 24 issues a signal on the bus 116 to the counter analysis block at the counter 109, which signals the release of one of the six registers. opcode. The contents of counters 108 and 109 over buses 117 and 118 enter circuit 110 for the following analysis.
Узел анализа зан тости общих регистров дл модификации адреса предназначен дл управлени поступлением информации в сумматор модификатора. Узел состоит из 16 трехразр дных счетчиков 119 в соответствии с числом регистров общего назначени , наход щихс Б процессоре 24, схемы 120 анализа зан тости регистров общего назначени и схемы 121 управлени счетчиками зан тости регистров общего назначени . При обработке команды, относ щейс к классу команд арифметики с фиксированной зап той, в результате выполнени которой будет измен тьс содержимое регистра общего назначени , схема 85 блока анализа конфликтов вырабатывает сигнал уп14The common register occupancy analysis node for address modification is intended to control the flow of information into the modifier adder. The node consists of 16 three-bit counters 119 in accordance with the number of general registers that are in the B processor 24, the general register occupancy analysis circuit 120, and the general register registers control counter circuit 121. When processing a command belonging to the command class of arithmetic with a fixed comma, as a result of the execution of which the contents of the general-purpose register will change, the circuit 85 of the conflict analysis block generates a signal
равлени , по шине 122 поступающий на схему 121.on the bus 122 arriving at the circuit 121.
Схема 121 запоминает факт изменени содержимого регистра общего назначени путем выдачи сигнала по шине 123 на счетчик, номер которого соответствует номеру того регистра общего назначени , содержимое которого будет изменено в результате выполнени команды процессора 24. Дл выработки сигналовCircuit 121 remembers the fact that the general register contents were changed by issuing a signal on bus 123 to a counter whose number corresponds to the number of that general register whose contents will be changed as a result of the execution of a command from processor 24. To generate signals
управлени счетчиками 119 схема 121 получает с выходной ступени блока 21 по шине 124 четырехразр дный код номера общего регистра 75, содержимое которого будет изменено, и сигнал 125 - признак команд, измен ющихmeter control 119, the circuit 121 receives from the output stage of block 21 via bus 124 the four-digit code of the general register number 75, the contents of which will be changed, and the signal 125 is a sign of the commands that change
содержимое регистров общего назначени .the contents of general registers.
При выполнении процессором 24 команды, в результате которой содержимое регистра общего назначени измен етс , процессор сигнализирует об этом блоку 23 анализа конфликтов , выдава по шине 126 сигнал на счетчик с номером, соответствующим номеру регистра общего назначени , содержимое которого изменилось. По ЭТОМУ сигналу вычитаетс «1 из содержимого соответствующего счетчика,When the processor 24 executes the command, as a result of which the contents of the general register change, the processor signals this to the conflict analysis block 23, issuing a signal on the bus 126 to a counter with a number corresponding to the number of the general register whose contents have changed. With this signal, "1 is subtracted from the contents of the corresponding counter,
и счетчик переходит в нулевое состо ние. Это означает, что данный общий регистр свободен. При обработке команд, требующих модификации адреса содержимым общих регистров, прежде чем послать содержимое общих регистров в блок 29, необходимо убедитьс , что общие регистры, содержимое которых будет использовано , свободны.and the counter goes to the zero state. This means that this general register is free. When processing commands that require modification of the address with the contents of the general registers, before sending the contents of the general registers to block 29, it is necessary to make sure that the general registers whose contents will be used are free.
Эту функцию выполн ет схема 120 анализа зан тости общих регистров дл модификацииThis function is performed by common register occupancy analysis circuit 120 to modify
адреса. По шинам 127 и 128 из блока 21 схема 120 получает номера регистров общего назначени , содержимое которых должно быть передано в блок 29, а по шине 129 - информацию о состо нии регистров общего назначени вaddresses. On buses 127 and 128 from block 21, circuit 120 receives the numbers of general purpose registers, the contents of which must be transferred to block 29, and on bus 129, information about the state of general registers in
данный момент. В результате анализа схема 120 вырабатывает сигнал по шине 130, который поступает на схему 85 блока анализа конфликтов и содержит информацию, разрешающую или запрещающую передачу содержимого регистров общего назначени в блок 29 модификации адреса. При разрешении использовани содержимого регистров общего назначени дл модификации адреса схема 85 вырабатывает управл ющие сигналы, поступающиеthis moment. As a result of the analysis, the circuit 120 generates a signal on the bus 130, which is fed to the circuit 85 of the conflict analysis block and contains information allowing or prohibiting the transfer of the contents of the general purpose registers to the address modification block 29. When allowing use of the contents of the general purpose registers to modify the address, the circuit 85 generates control signals arriving
в блоки 21 и 29 по шинам 131 и 132.in blocks 21 and 29 for tires 131 and 132.
Узел анализа зан тости регистров общего назначени дл процессора / команд предназначен дл управлени занесением информации в регистры общего назначени в результате выполнени команд этим процессором, измен ющих содержимое общих регистров. Он состоит из 16 трехразр дных счетчиков 133 в соответствии с числом регистров общего назначени ; схемы 134 анализа зан тости схемыThe general register occupancy analysis node for the processor / command is intended to control the entry of information into the general registers as a result of the execution of instructions by this processor modifying the contents of the general registers. It consists of 16 three-bit counters 133 according to the number of general-purpose registers; schema 134 analysis of the scheme
121 управлени счетчиками зан тости. При обработке команды, относ щейс к классу команд арифметики с фиксированной зап той, схема 85 блока 23 анализа конфликтов вырабатывает , как было описано выше, сигнал упцу полуслова, слова и двойного слова при передаче информации от информационного буфера записи к блокам пам ти и на границу двойного слова при передаче информации из блоков пам ти в буфер операндов арифметики с плавающей зап той и буфер операндов арифметики с фиксированной зап той, он содержит шины передачи маркера выставки от схемы модификации адреса к адресному буферу записи, от регистра запроса на чтение кю блоку управлени основной оперативной пам тью и от блока управлени основной оперативной пам тью к процессору команд, причем меледу пам тью и процессором команд включен дополнительный регистр сдвига со схемойis контрол правильности передачи, а между информационным буфером записи и пам тью- схема сдвига. 4. Центральный процессор мультипрограммной мультипроцессорной вычислительной си-20 стемы по п. 1, отличающийс тем, что, с целью сокращени оборудовани , в нем блок анализа конфликтов содержит узлы анализа состо ни буферных регистров процессоров выполнени операций с фиксированной и пла-25 вающей зап той и устройства управлени основной оперативной пам тью, включающие входные регистры, схемы выработки кодов свободных буферных регистров и схемы анализа наличи свободных буферных регистров, св занных управл ющими выходами с входными регистрами; узлы анализа состо ни магазинов кодов операций процессоров выполнени операций с фиксированной и плавающей зап той, содержащие счетчики числа команд в исполнительных блоках и схему анализа наличи свободных чеек в магазинах, св занную с выходами счетчиков узла, узел анализа зан тости регистров общего назначени дл блока модификации адреса, включающий набор счетчиков числа команд изменени содержимого любого регистра общего назначени , схему сигнализации освобождени регистров общего назначени , подключенную к модификатору , и схему управлени счетчиками, узел анализа зан тости регистров общего назначени дл команд процессора, содержащий набор счетчиков со схемой управлени и схему сигнализации освобождени регистров общего назначени при выполнении команд процессора , узел прерывани непрерывного потока команд, включающий схему анализа блокировок , не завис щих от обраб атываемых команд, и схему анализа блокировок, обусловленных вли нием команд друг на друга, и буферные регистры дл запоминани условий, вызывающих блокировки, подключенные к соответствующим входам первой и второй схем узла.121 management counters occupancy. When processing a command belonging to the command class of fixed-point arithmetic, the circuit 85 of the conflict analysis block 23 generates, as described above, a signal of half word, word and double word when transmitting information from the recording information buffer to the memory blocks and to the boundary double word when transferring information from memory blocks to the operand buffer of floating point arithmetic and the operand buffer of fixed arithmetic, it contains the exhibition marker transmission buses from the address modification circuit to the address buffer in the record, from the register of the request for reading a cue to the main RAM memory control unit and from the main RAM memory control unit to the command processor, with the memory and the command processor being switched on an additional shift register with the transfer control circuit, and between the information write buffer and memory shift pattern. 4. The central processor of the multiprogrammed multiprocessor computing system-20 of the system in accordance with claim 1, characterized in that, in order to reduce the equipment, in it the conflict analysis block contains the nodes of the analysis of the state of the buffer registers of the processors performing operations with fixed and floating comma and main memory management devices, including input registers, schemes for generating free buffer registers, and schemes for analyzing the presence of free buffer registers associated with control outputs with input Registers; nodes of analysis of the status of stores of operation codes of processors with fixed and floating point, containing counters of the number of commands in execution units and a scheme for analyzing the presence of free cells in stores related to the outputs of the node counters, a node of analysis of general purpose registers for the modification block addresses, including a set of counters of the number of commands for changing the contents of any general register, a signal circuit for releasing general registers connected to the modifier, and counter control circuit, general register occupancy analysis node for processor commands containing a set of counters with a control circuit and a general purpose register release signaling circuit when the processor commands are executed, a continuous command interrupt node that includes analysis of locks that are not dependent on the processed commands, and the analysis of locks caused by the influence of commands on each other, and buffer registers for storing the conditions causing the locks connected to the corresponding yuschim inputs of the first and second circuit node.
65 S1 BJ 6665 S1 BJ 66
1717
д щих к неправильному выполнению команд, например нарушение расположени информации в пам ти в соответствии с граничными услови ми (сигнал по шине 158 из блока 29) или нарушение специфических условий, налагаемых на информацию, содержащуюс в компонентах команды (сигнал по шине 159 со схемы 85). В двух последних случа х необходимо перейти к программе отыскани причины нарушени спецификаций.commands for incorrect execution, for example, violation of the location of information in the memory in accordance with boundary conditions (signal via bus 158 from block 29) or violation of specific conditions imposed on the information contained in the command components (signal via bus 159 from circuit 85 ). In the last two cases, you need to go to the program to find the cause of the violation of specifications.
Схема выработки управл ющих сигналов 85 предназначена дл управлени работой всех перечисленных узлов блока 23 анализа конфликтов . Схема получает информацию о состо нии всех узлов блока 23 и на основании этого выдает совокупность управл ющих сигналов . Помимо сигналов, перечисленных при описании узлов, схема 85 получает информацию из блока 29 о состо нии модификатора адреса Э (сигнал по шине 160) и из блока 21 признак обрабатываемой команды по щине 161; и формат обрабатываемой команды по шине 162. Дл каждой обрабатываемой в данный момент команды схема 85 провер ет выполнение всех условий, при которых можно выполнить команду, и только в этом случае выдает совокупность управл ющих сигналов на те или иные узлы. При невыполнении какого-либо услови схема 85 не выдает управл ющих сигналов до тех нор, пока это условие не будет выполнено. Таким образом, схема 85 может приостановить обработку потока команд на врем выполнени требуемых условий .The control signal generation circuit 85 is designed to control the operation of all of the listed nodes of the conflict analysis block 23. The circuit receives information about the state of all nodes of block 23 and, on the basis of this, outputs a set of control signals. In addition to the signals listed in the description of the nodes, the circuit 85 receives information from block 29 on the status of the address modifier E (signal via bus 160) and from block 21 the sign of the command being processed via bar 161; and the format of the command being processed via the bus 162. For each command currently being processed, the circuit 85 checks that all the conditions under which the command can be executed is executed, and only in this case gives a set of control signals to those or other nodes. If any condition is not met, circuit 85 does not issue control signals until these conditions are met. Thus, circuit 85 may suspend processing of a stream of commands for the duration of the required conditions.
Предмет изобретени Subject invention
1. Центральный процессор мультипрограммной мультипроцессорной вычислительной системы , содержащий процессор команд; процессор выполнени операций с фиксированной зап той, включающий набор регистров общего назначени ; процессор выполнени операций с плавающей зап той, включающий набор регистров арифметики с плавающей зап той , устройство управлени основной оперативной пам тью и устройство управлени основной расщиренной пам тью, причем в процессорах выполнени операций содержатс регистры операндов и магазины кодов операций , подключенные к выходу регистра команды процессора команд, регистры арифметики с плавающей зан той; буферы операндов и магазин кода операций арифметики с плавающей зап той подключены к исполнительным блокам процессора выполнени операций с плавающей зап той; регистры общего назначени , буферы операндов и магазин кодов операций арифметики с фиксированной зап той подключены к исполнительному блоку процессора выполнени операций с фиксированной зап той; регистры арифметики с нлавающ ,ей зап той и исполнительный блок процессора выполнени операций с фиксированной зап той подключены к информационному1. The central processor of a multiprogram multiprocessor computing system containing the instruction processor; a fixed point execution processor including a set of general registers; a floating-point processor, comprising a set of floating-point arithmetic registers, a main memory management device and a main extended memory management device, the operand processors and operation code stores connected to the processor command register output in the execution processors commands, registers of floating arithmetic; operand buffers and the floating point arithmetic operation code store are connected to the execution units of the processor to perform floating point operations; general purpose registers, operand buffers, and the fixed-point arithmetic operation code store are connected to the executive unit of the processor performing fixed-point operations; The registers of arithmetic with a link, its comma, and the executive unit of the processor performing fixed-point operations are connected to the information
1818
буферу записи устройства управлени основной оперативно; пам тью, отличающийс тем, что, с целью упрощени структуры, сокращени оборудовани и повышени быстродейстВИЯ , он содержит в процессоре команд коммутирующую схему передачи команд на декодирование непосредственно из регистров буфера команд, схему быстрой предварительной проверки и схему точной проверки совпадени the write buffer of the main control device operatively; memory, characterized in that, in order to simplify the structure, reduce equipment and improve performance, it contains in the command processor a switching circuit for transmitting commands for decoding directly from the command buffer registers, a fast preliminary check circuit and an exact matching circuit
адресов чеек пам ти при подготовке операции запоминани с адресом команд, наход щихс в буфере команд; схему записи команд непосредственно из информационного буфера записи устройства управлени оперативнойthe addresses of the memory cells in preparation for the memorization operation with the address of the commands that are in the instruction buffer; command recording circuit directly from the information buffer of the recording control device operative
пам тью при совпадении адреса чейки пам ти , в которую производитс запись, с адресом какой-либо команды, хран щейс в буфере команд процессора команд, одновременно с записью в чейку пам ти; раздельные щины передачи запросов на чтение и на запись от процессора команд к устройству управлени основной оперативной пам тью, причем коммутирующа схема св зана с выходами регистров буфера команд, а ее выходы через схеv .y декодировани команд и схему модификации адреса подсоединены ко входам схем быстрой и точной проверки, выход которой подсоединен к схеме записи команд в буфер команд непосредственно из информационногоmemory in case of coincidence of the address of the memory cell into which the recording is made, with the address of any command stored in the command buffer of the command processor, simultaneously with writing to the memory cell; separate transmissions of read and write requests from the command processor to the main RAM management device, the switching circuit associated with the outputs of the command buffer registers, and its outputs through the command decoding circuit .y and the address modification circuit are connected to the inputs of the fast and accurate verification, the output of which is connected to the scheme of recording commands to the command buffer directly from the information
буфера записи, а также блок анализа конфликтов , св занный со схемами декодировани команд и со схема.ми анализа заполнени магазинов кодов онераций процессоров выполнени операций с фиксированной и плавающейa write buffer, as well as a conflict analysis block associated with instruction decoding circuits and with schemes for analyzing the filling of magazines of onerations of processors for performing operations with fixed and floating
зап той, со схемой сигнализации освобождени регистров общего назначепи , схемой сигнализации доступности регистров информационного буфера записи устройства управлени основной оперативной пам тьюwith a general release register signaling circuit, a signaling circuit availability scheme of the information storage buffer registers of the main memory management device
при передаче запроса на запись, схемой доступности буферов онерандов процессоров выполнени операций с фиксирова);ной и плавающей зап той, с регистрами арифметики с плавающей зап той и подключенныйwhen sending a write request, the availability of buffer buffers for processors of execution of operations from a fixed) floating point, with registers of floating-point arithmetic and connected
управл ющими выходами к коммутирующей схеме передачи команд на декодирование, схеме формировани команд дл иснолнительных блоков, схеме модификации адреса, магазинам процессоров онераций с фиксированной иcontrol outputs to the switching circuit for transmitting commands for decoding, the circuit for generating commands for extra blocks, the circuit for modifying the address, stores for processors with fixed and
плавающей зан той, схеме формировани запроса , к устройству управлени основной оперативной пам тью.floating, the request creation scheme, to the main RAM management device.
2.Центральный процессор мультипрограммной мультипроцессорной вычислительной системы по п. 1, отличающийс тем, что, с целью расширени системы выполн емых команд, в нем к схеме декодировани процессора команд подключен коммутатор, входы управлени которого св заны с блоком анализа конфликтов,2. The central processor of a multiprogram multiprocessor computing system according to claim 1, characterized in that, in order to expand the system of executable instructions, there is a switch connected to the command processor decoding circuit, the control inputs of which are connected to the collision analysis unit,
а выходы - с входными шинами подключаемого специализировапкого блока обработки.and exits - with input tires of the connected specialized processing unit.
3.Центральный процессор мультипрограммной мультипроцессорной вычислительной системы по п. , отличающийс тем, что, с целью3. The central processor of a multiprogram multiprocessor computing system according to claim. Characterized in that, for
Publications (1)
Publication Number | Publication Date |
---|---|
SU309363A1 true SU309363A1 (en) |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100373331C (en) | Multithreaded processor for processing multiple instruction streams independently of each other by flexibly controlling throughput in each instruction stream | |
EP0333366B1 (en) | Context switching method and apparatus for use in a vector processing system | |
US4206503A (en) | Multiple length address formation in a microprogrammed data processing system | |
US5499356A (en) | Method and apparatus for a multiprocessor resource lockout instruction | |
US5109495A (en) | Method and apparatus using a source operand list and a source operand pointer queue between the execution unit and the instruction decoding and operand processing units of a pipelined data processor | |
EP0079133B1 (en) | Virtual memory protected system | |
US4320455A (en) | Queue structure for a data processing system | |
US5113521A (en) | Method and apparatus for handling faults of vector instructions causing memory management exceptions | |
US4707784A (en) | Prioritized secondary use of a cache with simultaneous access | |
US5043867A (en) | Exception reporting mechanism for a vector processor | |
US6330661B1 (en) | Reducing inherited logical to physical register mapping information between tasks in multithread system using register group identifier | |
US3469244A (en) | Electronic computer | |
JPH07281896A (en) | Information processor | |
JPS5911943B2 (en) | Trap mechanism for data processing equipment | |
KR970011208B1 (en) | Pipelined register cache | |
US4680702A (en) | Merge control apparatus for a store into cache of a data processing system | |
US3654621A (en) | Information processing system having means for dynamic memory address preparation | |
US5291581A (en) | Apparatus and method for synchronization of access to main memory signal groups in a multiprocessor data processing system | |
US4047247A (en) | Address formation in a microprogrammed data processing system | |
EP0431326A2 (en) | Inter-processor interrupts in an n-element multi-processor | |
US4385365A (en) | Data shunting and recovering device | |
JP2581323B2 (en) | How to update reference bits and change bits | |
US3623158A (en) | Data processing system including nonassociative data store and associative working and address stores | |
SU309363A1 (en) | CENTRAL PROCESSOR OF THE MULTIPROGRAM MULTIPROCESSOR COMPUTING SYSTEM | |
CN115437691B (en) | Physical register file allocation device for RISC-V vector and floating point register |