RU2113010C1 - Multiprocessor scalar computer - Google Patents
Multiprocessor scalar computer Download PDFInfo
- Publication number
- RU2113010C1 RU2113010C1 RU95119478A RU95119478A RU2113010C1 RU 2113010 C1 RU2113010 C1 RU 2113010C1 RU 95119478 A RU95119478 A RU 95119478A RU 95119478 A RU95119478 A RU 95119478A RU 2113010 C1 RU2113010 C1 RU 2113010C1
- Authority
- RU
- Russia
- Prior art keywords
- switch
- arithmetic
- output
- input
- bit
- Prior art date
Links
Images
Landscapes
- Complex Calculations (AREA)
Abstract
Description
Изобретение относится к вычислительной технике, а более точно к высокопроизводительным ЭВМ, предназначенным для обработки информации, в том числе сигнальной, в реальном масштабе времени. The invention relates to computing, and more specifically to high-performance computers designed to process information, including signal, in real time.
Для таких ЭВМ характерна многоформатность обрабатываемой информации: целочисленный 16-разрядный формат со знаком или без, 32-разрядный формат с фиксированной и плавающей запятой, формат с плавающей запятой с удвоенной точностью (два 32-разрядных числа в форме с плавающей запятой, порядки которых отличаются на число разрядов в мантиссе), комплексные форматы чисел (например, действительная и мнимая части комплексного числа изображаются 32-разрядными числами в форме с плавающей запятой. Such computers are characterized by multiformatity of the processed information: an integer 16-bit format with or without a sign, a 32-bit format with fixed and floating point, a floating-point format with double precision (two 32-bit floating-point numbers, the orders of which differ by the number of digits in the mantissa), complex number formats (for example, the real and imaginary parts of a complex number are represented by 32-bit floating-point numbers.
Для достижения повышенной производительности в таких ЭВМ часто используются многопроцессорные структуры, причем наибольшей эффективностью по критерию производительность-стоимость здесь обладают многопроцессорные векторные структуры (типа ОКМД). Максимальное количество оборудования, которое можно использовать для создания ЭВМ, ограничено и определяется надежностью технической базы, при этом пиковая производительность пропорциональна среднему объему обрабатывающего оборудования по всем форматам. To achieve increased performance in such computers, multiprocessor structures are often used, and multiprocessor vector structures (such as OKMD) are most effective here according to the performance-cost criterion. The maximum amount of equipment that can be used to create a computer is limited and determined by the reliability of the technical base, while peak productivity is proportional to the average volume of processing equipment in all formats.
Ближайший аналог (прототип) предлагаемого изобретения, ЭВМ М-13, содержит центральную процессорную часть, подсистему ввода-вывода и процессор обработки функций, подключенные через многосвязный 64-байтовый интерфейс к главной внутренней памяти (оперативной и постоянной), а также центральный управляющий процессор, подключенный через многосвязный 8-байтовый управляющий интерфейс ко всем перечисленным подсистемам. Центральная процессорная часть содержит векторное арифметическое устройство, состоящее из 16 многоформатных конвейерных арифметических процессоров, выполняющих в каждом машинном такте одну и ту же операцию с учетом маски и длины обрабатываемого вектора. Каждый арифметический процессор выполняет операции над 1-, 2- и 4-байтовыми операндами, причем в одной операции обрабатывается четыре пары однобайтовых операндов; две пары двухбайтовых операндов или одна пара четырехбайтовых операндов. Четырехбайтовые операнды существуют в форме как с фиксированной, так и с плавающей запятой. Арифметические операции с двойной точностью выполняются с помощью подпрограмм, содержащих от 8 до 25 команд в зависимости от кода операции и точности результата. Процессор обработки функции также включает векторные арифметические устройства, содержащие по 16 арифметических конвейерных процессоров "когерентной обработки", выполняющих в качестве базовой операции двухточечное преобразование Фурье с комплексными операндами в форме с поблочно-плавающей запятой, причем комплексное число представлено в 32-разрядном формате. Синхронизация обработки информации осуществляется с помощью центрального управляющего процессора. В первом такте макроконвейера абоненты реального времени осуществляют ввод информации от объекта управления: сопрягающие процессоры подсистемы ввода-вывода через программируемые абонентские интерфейсы накапливают в своей оперативной памяти 64-байтовые вектора данных и пересылают их в главную внутреннюю память ЭВМ. Адресация главной внутренней памяти осуществляется с точностью до байта, а формат обращения к ней может изменяться от одного до 64 байтов. Один из сопрягающих процессоров получает и обрабатывает сигналы синхронизации. Начало второго такта он сигнализирует по управляющему интерфейсу в центральный управляющий процессор, а тот, в свою очередь, - процессору обработки функций. Процессор обработки функций перекачивает принятый кадр информации в свою память, выполняет сигнальную обработку, результаты помещает в главную оперативную память и сигнализирует завершение по управляющему интерфейсу. Процесс сигнальной обработки может попеременно выполняться на процессоре обработки функций и центральной процессорной части, что потребует дополнительной синхронизации программ. К началу третьего такта макроконвейера сигнальная обработка должна быть завершена и по сигналу центральная процессорная часть начинает вторичную обработку и возможно подготовку выходного кадра, который в четвертом такте может быть передан соответствующему абоненту. The closest analogue (prototype) of the present invention, the M-13 computer, contains a central processing unit, an input-output subsystem and a function processing processor connected via a multiply connected 64-byte interface to the main internal memory (operational and constant), as well as a central control processor, connected via a multiply connected 8-byte control interface to all of the listed subsystems. The central processor part contains a vector arithmetic device consisting of 16 multi-format conveyor arithmetic processors that perform the same operation in each machine cycle, taking into account the mask and the length of the processed vector. Each arithmetic processor performs operations on 1-, 2- and 4-byte operands, and in one operation, four pairs of single-byte operands are processed; two pairs of double-byte operands or one pair of four-byte operands. Four byte operands exist in both fixed and floating point forms. Double-precision arithmetic operations are performed using routines containing 8 to 25 instructions, depending on the operation code and the accuracy of the result. The function processing processor also includes vector arithmetic devices, each containing 16 arithmetic conveyor processors of “coherent processing”, performing as a basic operation a two-point Fourier transform with complex operands in the form of a block-floating point, and the complex number is presented in 32-bit format. Information processing is synchronized using a central control processor. In the first cycle of the macro conveyor, real-time subscribers enter information from the control object: the interfacing processors of the input-output subsystem via programmable user interfaces accumulate 64-byte data vectors in their RAM and send them to the main internal computer memory. Addressing the main internal memory is accurate to bytes, and the format for accessing it can vary from one to 64 bytes. One of the interfacing processors receives and processes synchronization signals. It signals the beginning of the second clock on the control interface to the central control processor, and that, in turn, indicates to the function processor. The function processing processor pumps the received information frame into its memory, performs signal processing, puts the results in the main RAM and signals the completion via the control interface. The signal processing process can be alternately performed on the function processor and the central processing unit, which will require additional program synchronization. By the beginning of the third cycle of the macro conveyor, the signal processing should be completed and the signal from the central processor part starts secondary processing and it is possible to prepare the output frame, which in the fourth cycle can be transmitted to the corresponding subscriber.
Такая структура ЭВМ и соответствующий ей способ обработки сигнальной информации имеет ряд недостатков;
- операции с двойной точностью выполняются по подпрограммам и имеют производительность на порядок ниже, чем другие операции списка команд;
- форматы комплексных чисел, обрабатываемых процессором обработки функций, не соответствуют форматам информации, обрабатываемой центральной процессорной частью, что требует дополнительных затрат производительности для преобразования форматов;
- процесс сигнальной обработки попеременно выполняется на процессоре обработки функций и на центральной процессорной части, что приводит и дополнительным потерям производительности на синхронизации:
- оперативная память процессора обработки функций недоступна другим процессорам;
- наличие двух типов процессоров при реализации структуры ЭВМ на высокоинтегрированной элементной базе потребует увеличенной номенклатуры больших интегральных схем.Such a computer structure and the corresponding signal information processing method has a number of disadvantages;
- operations with double precision are performed according to subprograms and have an order of magnitude lower performance than other operations of the list of commands;
- formats of complex numbers processed by the processor of function processing do not correspond to the formats of information processed by the central processor part, which requires additional performance costs for format conversion;
- the signal processing process is alternately performed on the function processor and on the central processor part, which leads to additional synchronization performance losses:
- RAM processor function processing is not available to other processors;
- the presence of two types of processors when implementing a computer structure on a highly integrated element base will require an increased range of large integrated circuits.
Предлагаемое изобретение позволяет устранить перечисленные недостатки. The present invention eliminates the above disadvantages.
Идея данного изобретения заключается в том, чтобы использовать то обстоятельство, что формат 32-разрядного числа с двойной точностью и комплексный формат, когда действительная и мнимая его части изображаются в виде 32-разрядных чисел в формате с плавающей запятой, совпадают, применить для выполнения арифметических операций с двойной точностью аппаратный конвейер, реализующий подпрограмму двойной точности, и на той же аппаратуре реализовать операции над комплексными числами, включая двухточечное преобразование Фурье, и арифметические операции с 32-разрядными и 16-разрядными числами. В этом случае векторное арифметическое устройство будет содержать восемь многоформатных арифметических процессоров, каждый из которых будет выполнять в каждом такте конвейера одну операцию с двойной точностью, одну операцию с комплексными операндами (включая двухточечное преобразование Фурье), две арифметические операции над 32-разрядными числами, четыре - над 16-разрядными. The idea of this invention is to use the fact that the format of a 32-bit number with double precision and the complex format, when the real and imaginary parts are displayed as 32-bit numbers in the floating point format, are the same, apply to perform arithmetic double-precision operations is a hardware pipeline that implements a double-precision subroutine, and on the same equipment implement operations on complex numbers, including the two-point Fourier transform, and arithmetic operations Operations with 32-bit and 16-bit numbers. In this case, the vector arithmetic device will contain eight multi-format arithmetic processors, each of which will perform one double-precision operation in each pipeline cycle, one operation with complex operands (including the two-point Fourier transform), two arithmetic operations on 32-bit numbers, four - over 16-bit.
Такое расширение списка операций центральной процессорной части позволит выполнять на ней обработку кадра информации от начала до конца с автоматической синхронизацией на одном процессоре, без потерь на преобразование форматов, используя общую оперативную память, причем операции с двойной точностью будут выполняться с тем же темпом. Это позволит исключить из состава ЭВМ процессор обработки функций и подключить вместо него вторую центральную процессорную часть. При реализации такой структуры на высокоинтегрированной элементной базе потребное число типов больших интегральных схем существенно сокращается. Such an extension of the list of operations of the central processor part will allow it to process an information frame from beginning to end with automatic synchronization on one processor, without loss of format conversion, using shared RAM, and double-precision operations will be performed at the same pace. This will eliminate the function processing processor from the computer and connect the second central processor part instead. When implementing such a structure on a highly integrated element base, the required number of types of large integrated circuits is significantly reduced.
Сущность изобретения заключается в том, что многопроцессорная векторная ЭВМ содержит векторную главную внутреннюю память, центральный управляющий процессор, подсистему ввода-вывода и по крайней мере одну центральную процессорную часть, включающую векторное арифметическое устройство, содержащее 2m (m = 0, 1 ..) многоформатных конвейерных арифметических процессоров, каждый из которых содержит узел управления, регистровую память и конвейерное арифметическое устройство и выполняет одновременно с учетом маски операции и длины обрабатываемого вектора две или четыре одно-, двух- или трехместные арифметико-логические операции над N- или N/2-разрядными операндами, соответственно. Многопроцессорная векторная ЭВМ отличается тем, что конвейерное арифметическое устройство для выполнения в каждом многоформатном конвейерном арифметическом процессоре указанных операций, а также для аппаратного выполнения
арифметико-логических операций над действительными 2N-разрядными операндами из старших и младших N-разрядных частей
или арифметических операций над комплексными операндами из N-разрядных вещественных и мнимых частей, содержит
три 2N-разрядных информационных входа, с первого по третий, разделенных каждый на N-разрядные старшую и младшую части, и два 2N-разрядных информационных выхода, первый и второй, разделенных каждый на N-разрядные старшую и младшую части,
тринадцать N-разрядных арифметических схем, с первой по тринадцатую, каждая из которых имеет первые и вторые N-разрядные информационные входы, и по одному информационному N-разрядному выходу,
и связь коммутаторов с первого по седьмой,
причем
арифметические схемы с первой по четвертую одинаковы и являются множительными устройствами, арифметические схемы с пятой по тринадцатую одинаковы и являются суммирующими устройствами,
первый коммутатор имеет четыре N-разрядных выхода, с первого по четвертый, второй коммутатор имеет три N-разрядных выхода, с первого по третий, третий коммутатор имеет три N-разрядных входа с первого по третий, четвертый коммутатор имеет два N-разрядных входа, пятый коммутатор имеет три N-разрядных входа, с первого по третий, шестой коммутатор имеет четыре N-разрядных входа, с первого по четвертый, седьмой коммутатор имеет четыре N-разрядных входа, с первого по четвертый,
первый и второй входы многоформатного конвейерного арифметического процессора подсоединены к первому коммутатору, второй и третий входы многоформатного конвейерного арифметического процессора подсоединены к второму коммутатору, старшая часть первого входа многоформатного конвейерного арифметического процессора подсоединена к первым входам одиннадцатой и двенадцатой арифметических схем и первому входу пятого коммутатора, младшая часть первого входа многоформатного конвейерного арифметического процессора подсоединена к первым входам седьмой и тринадцатой арифметических схем,
выходы первого коммутатора, с первого по четвертый, подсоединены соответственно к первым входам арифметических схем с первой по четвертую, первый выход второго коммутатора подсоединен к вторым входам первой, четвертой, одиннадцатой и двенадцатой арифметических схем, второй выход второго коммутатора подсоединен к вторым входам третьей и тринадцатой арифметических схем, третий выход второго коммутатора подсоединен к второму входу второй арифметической схемы,
выход первой арифметической схемы подсоединен к первому входу третьего коммутатора и второму входу пятого коммутатора, выход второй арифметической схемы подсоединен к первому входу четвертого коммутатора, выход третьей арифметической схемы подсоединен к первому входу пятой арифметической схемы, выход четвертой арифметической схемы подсоединен к второму входу пятой арифметической схемы, выход пятой арифметической схемы подсоединен к третьим входам третьего и седьмого коммутаторов и вторым входам седьмой и восьмой арифметических схем, выход шестой арифметической схемы подсоединен к вторым входам девятой и десятой арифметических схем и к третьему входу шестого коммутатора, выход седьмой арифметической схемы подсоединен к младшей части второго выхода многоформатного конвейерного арифметического процессора, выход восьмой арифметической схемы подсоединен к второму входу седьмого коммутатора, выход девятой арифметической схемы подсоединен к первому входу седьмого коммутатора и старшей части второго выхода многоформатного конвейерного арифметического процессора, выход десятой арифметической схемы подсоединен к второму входу шестого коммутатора, выход одиннадцатой арифметической схемы подсоединен к третьему входу пятого коммутатора, выход двенадцатой арифметической схемы подсоединен к второму входу третьего коммутатора и четвертому входу шестого коммутатора, выход тринадцатой арифметической схемы подсоединен к второму входу четвертого коммутатора и четвертому входу седьмого коммутатора,
выход третьего коммутатора подсоединен к второму входу шестой арифметической схемы, выход четвертого коммутатора подсоединен к первому входу шестой арифметической схемы, выход пятого коммутатора подсоединен к первым входам девятой и десятой арифметических схем, выход шестого коммутатора подсоединен к старшей части первого выхода многоформатного конвейерного арифметического процессора, выход седьмого коммутатора подсоединен к младшей части первого выхода многоформатного конвейерного арифметического процессора.The essence of the invention lies in the fact that a multiprocessor vector computer contains a vector main internal memory, a central control processor, an input-output subsystem and at least one central processor part, including a vector arithmetic device containing 2 m (m = 0, 1 ..) multi-format conveyor arithmetic processors, each of which contains a control node, a register memory and a conveyor arithmetic device and performs simultaneously operations taking into account the mask and length vector of either two or four single, double or triple arithmetic-logical operations on N- or N / 2-bit operands, respectively. A multiprocessor vector computer is characterized in that a conveyor arithmetic device for performing these operations in each multi-format conveyor arithmetic processor, as well as for hardware execution
arithmetic-logical operations on real 2N-bit operands from high and low N-bit parts
or arithmetic operations on complex operands from N-bit real and imaginary parts, contains
three 2N-bit information inputs, from the first to the third, each divided into N-bit high and low parts, and two 2N-bit information outputs, the first and second, each divided into N-bit high and low parts,
thirteen N-bit arithmetic circuits, from the first to the thirteenth, each of which has first and second N-bit information inputs, and one information N-bit output,
and first to seventh switch communications,
moreover
arithmetic schemes from the first to fourth are the same and are multiplying devices, arithmetic schemes from the fifth to thirteenth are the same and are summing devices,
the first switch has four N-bit outputs, from the first to the fourth, the second switch has three N-bit outputs, from the first to the third, the third switch has three N-bit inputs from the first to the third, the fourth switch has two N-bit inputs, the fifth switch has three N-bit inputs, from first to third, the sixth switch has four N-bit inputs, from first to fourth, the seventh switch has four N-bit inputs, from first to fourth,
the first and second inputs of the multi-format conveyor arithmetic processor are connected to the first switch, the second and third inputs of the multi-format conveyor arithmetic processor are connected to the second switch, the older part of the first input of the multi-format conveyor arithmetic processor is connected to the first inputs of the eleventh and twelfth arithmetic circuits and the first input of the fifth switch, the youngest part of the first input of a multi-format conveyor arithmetic processor is connected to the first the inputs of the seventh and thirteenth arithmetic circuits,
the outputs of the first switch, from the first to the fourth, are connected respectively to the first inputs of the arithmetic circuits from the first to the fourth, the first output of the second switch is connected to the second inputs of the first, fourth, eleventh and twelfth arithmetic circuits, the second output of the second switch is connected to the second inputs of the third and thirteenth arithmetic circuits, the third output of the second switch is connected to the second input of the second arithmetic circuit,
the output of the first arithmetic circuit is connected to the first input of the third switch and the second input of the fifth switch, the output of the second arithmetic circuit is connected to the first input of the fourth switch, the output of the third arithmetic circuit is connected to the first input of the fifth arithmetic circuit, the output of the fourth arithmetic circuit is connected to the second input of the fifth arithmetic circuit , the output of the fifth arithmetic circuit is connected to the third inputs of the third and seventh switches and the second inputs of the seventh and eighth arithmetic circuits Ie, the output of the sixth arithmetic circuit is connected to the second inputs of the ninth and tenth arithmetic circuits and to the third input of the sixth switch, the output of the seventh arithmetic circuit is connected to the youngest part of the second output of the multi-format conveyor arithmetic processor, the output of the eighth arithmetic circuit is connected to the second input of the seventh switch, the output of the ninth the arithmetic circuit is connected to the first input of the seventh switch and the older part of the second output of the multi-format conveyor arithmetic processor a, the output of the tenth arithmetic circuit is connected to the second input of the sixth switch, the output of the eleventh arithmetic circuit is connected to the third input of the fifth switch, the output of the twelfth arithmetic circuit is connected to the second input of the third switch and the fourth input of the sixth switch, the output of the thirteenth arithmetic circuit is connected to the second input of the fourth switch and the fourth input of the seventh switch,
the output of the third switch is connected to the second input of the sixth arithmetic circuit, the output of the fourth switch is connected to the first input of the sixth arithmetic circuit, the output of the fifth switch is connected to the first inputs of the ninth and tenth arithmetic circuits, the output of the sixth switch is connected to the older part of the first output of the multi-format conveyor arithmetic processor, the output the seventh switch is connected to the younger part of the first output of the multi-format conveyor arithmetic processor.
Следует пояснить, что операции над 2N-разрядными комплексными операндами, включая операции двухточечного преобразования Фурье, и операции сложения и умножения над 2N-разрядными операндами выполняются на нескольких N-разрядных множительных и суммирующих устройствах, что позволяет использовать в конвейерном арифметическом устройстве одну и ту же аппаратуру для выполнения всех указанных операций и применить ограниченное количество указанных множительных и суммирующих устройств, которые могут быть реализованы, например, в виде больших интегральных схем (БИС) всего двух типов. Далее в описании предполагается, что N-разрядные множительные и суммирующие устройства выполнены в виде БИС, хотя это не принципиально. В состав операций с комплексными числами входит операция двухточечного преобразования Фурье, которая представляет собой операцию A+/-P•F, где A, P, F - комплексные операнды. It should be explained that operations on 2N-bit complex operands, including two-point Fourier transform operations, and addition and multiplication operations on 2N-bit operands are performed on several N-bit multiplying and summing devices, which makes it possible to use the same arithmetic conveyor device equipment to perform all of these operations and apply a limited number of specified multiplying and summing devices, which can be implemented, for example, in the form of large tag schemes (LSI) of only two types. Further in the description, it is assumed that N-bit multiplying and summing devices are made in the form of LSI, although this is not important. The operations with complex numbers include the operation of the two-point Fourier transform, which is the operation A +/- P • F, where A, P, F are complex operands.
Устройство и работа предлагаемого изобретения показаны на примере предпочтительного варианта воплощения, который иллюстрируется фиг. 1 - 13. The device and operation of the invention are shown as an example of a preferred embodiment, which is illustrated in FIG. 1 - 13.
На фиг. 1 показана блок-схема многопроцессорной векторной ЭВМ; на фиг.2 - подсистема ввода-вывода; на фиг.3 - центральная процессорная часть; на фиг. 4, 5 - конвейерное арифметическое устройство (КАУ); на фиг.6 - узел управления одного АП; на фиг. 7 - блок-схема одного КАУ, настроенного на выполнение операции двухточечного преобразования Фурье; на фиг.8 - блок-схема одного КАУ, настроенного на выполнение операции сложения 2N-разрядных чисел; на фиг.9 - блок-схема одного КАУ, настроенного на выполнение операции умножения 2N-разрядных чисел; на фиг.10 - блок-схема одного КАУ, настроенного на выполнение операции сложения двух комплексных операндов, с N-разрядными вещественными и мнимыми частями; на фиг.11 - блок-схема одного КАУ, настроенного на выполнение операции умножения двух комплексных операндов, с N-разрядными вещественными и мнимыми частями; на фиг.12 - блок-схема AC множительного устройства; на фиг.13 - блок-схема AC суммирующего устройства;
Многопроцессорная векторная ЭВМ на фиг.1 содержит центральный управляющий процессор 1, две одинаковые центральные процессорные части 2 и 3 (может быть одна или больше двух), подсистему ввода-вывода 4 и векторную главную внутреннюю память 5 (ГВП). Подсистемы 1 - 4 ЭВМ связаны с векторной ГВП 5 с помощью многосвязного широкоформатного информационного интерфейса 6, включающего информационные шины и шины адресных требований.In FIG. 1 shows a block diagram of a multiprocessor vector computer; figure 2 - I / O subsystem; figure 3 - the Central processor part; in FIG. 4, 5 - conveyor arithmetic device (KAU); figure 6 - control node of one AP; in FIG. 7 is a block diagram of one KAU configured to perform a two-point Fourier transform operation; on Fig is a block diagram of one KAU configured to perform the operation of adding 2N-bit numbers; figure 9 is a block diagram of one KAU configured to perform the operation of multiplying 2N-bit numbers; figure 10 is a block diagram of one KAU, configured to perform the operation of adding two complex operands, with N-bit real and imaginary parts; 11 is a block diagram of one KAU configured to perform the operation of multiplying two complex operands, with N-bit real and imaginary parts; 12 is a block diagram of an AC multiplier; 13 is a block diagram of an AC summing device;
The multiprocessor vector computer in figure 1 contains a
Формат информационных шин интерфейса векторной главной внутренней памяти 5, как правило, равен 2N • 2m, где m = 0, 1, 2, ..., а N/2 - минимальный аппаратно поддержанный дискрет информации в векторной ЭВМ (далее называется позиция), и 2m - количество многоформатных конвейерных арифметических процессоров (АП) в векторном арифметическом устройстве центральной процессорной части ЭВМ 2. Для N в ЭВМ реального времени характерны значения: 16, 24, 32 разряда. Центральный управляющий процессор 1 связан с подсистемами 2 - 5 ЭВМ с помощью многосвязного управляющего интерфейса 7, формат шин которого, как правило, не менее 2N. Центральный управляющий процессор 1 выполняет функции аппаратной поддержки операционной системы реального времени и системы технического обслуживания и интерпретируемого центрального пульта ЭВМ.The format of the information buses of the interface of the vector main internal memory 5, as a rule, is 2N • 2 m , where m = 0, 1, 2, ..., and N / 2 is the minimum hardware-supported information discrete in a vector computer (hereinafter referred to as position) , and 2 m is the number of multi-format conveyor arithmetic processors (AP) in the vector arithmetic device of the central processor part of the computer 2. For N, real-time computers are characterized by the values: 16, 24, 32 bits. The
Векторная главная внутренняя память 5 позволяет за одно обращение прочитать или записать переменный массив от одной до 4 • 2m позиций. Адресация памяти 5 осуществляется с точностью до одной позиции. Адреса по шинам адресных требований поступают в векторную главную внутреннюю память 5 в физической или виртуальной форме. Обращения по физическим адресам поступают на исполнение, а обращения по виртуальным адресам вызывают обращение к аппаратным таблицам виртуальной памяти, где осуществляется поиск соответствия. Найденное соответствие пересылается по группе шин адресного требования в процессор-источник адресного требования для корректировки адресных ассоциативных регистров процессора. Повторное обращение от процессора-источника имеет физический адрес. В случае отсутствия соответствия в таблицах виртуальной памяти по управляющему интерфейсу поступает прерывание в центральный управляющий процессор 1, который находит соответствие в программных таблицах распределения памяти и корректирует аппаратные таблицы в векторной главной внутренней памяти 5, либо снимает с исполнения дефектный процесс и вступает в диалог с оператором.The vector main internal memory 5 allows you to read or write a variable array from one to 4 • 2 m positions in one call. Addressing memory 5 is accurate to one position. Addresses on the address requirement buses arrive in the vector main internal memory 5 in physical or virtual form. Calls to physical addresses are executed, and calls to virtual addresses cause access to the hardware tables of virtual memory, where a match is searched. The found correspondence is sent along the bus group of the address requirement to the source processor of the address request to adjust the address associative registers of the processor. Re-access from the source processor has a physical address. If there is no correspondence in the virtual memory tables, an interrupt arrives at the
Кроме виртуального адреса в адресном требовании поступает "связка ключей доступа", которая сравнивается с замками по записи, чтению и обращению текущего виртуального сегмента. Разрешенные типы обращений также поступают в процессор-источник адресного требования. При обнаружении процессором попытки непредусмотренного обращения формируется прерывание в центральный управляющий процессор 1. In addition to the virtual address, the address request also receives a "bunch of access keys", which is compared with the locks for writing, reading and accessing the current virtual segment. Allowed call types also go to the source processor of the address request. When the processor detects an attempt to accidentally access, an interrupt is generated in the
Векторная главная внутренняя память 5 может быть одноуровневой или двухуровневой, причем первый уровень может иметь в своем составе несколько блоков с независимым обращением, часть из которых работает только на считывание и сохраняет информацию при исчезновении питающих напряжений. Обмен между первым и вторым уровнями главной внутренней памяти 5 управляется автоматом обмена, который взаимодействует с центральным управляющим процессором 1 по управляющему интерфейсу. Предусмотрена автоматическая переадресация обращений при обмене. The vector main internal memory 5 can be single-level or two-level, and the first level can include several blocks with independent access, some of which work only for reading and saves information when the supply voltage disappears. The exchange between the first and second levels of the main internal memory 5 is controlled by an exchange machine that interacts with the
Подсистема ввода-вывода 5 создает определенное количество программируемых абонентских интерфейсов 8 (фиг. 2); она содержит программно-управляемый или автоматический широкоформатный мультиплексный канал 9 и сопрягающие процессоры 10, связанные между собой системой шин 11. Широкая шина интерфейса главной внутренней памяти 5 делится на 4 • 2m столбов, с форматом N разрядов каждый. К каждому стволу подключается группа из сопрягающих процессоров (как правило, 2k, где k = 0,1...). К абонентским интерфейсам 8 подключаются абонентские устройства общего назначения и абоненты реального времени. Формат информационных шин абонентского интерфейса 8 не должен превышать N разрядов, количество управляющих сигналов не должно превышать N. К одному абонентскому интерфейсу 8 может быть подключено несколько малоформатных абонентов, а один широкоформатный абонент может быть подключен к нескольким абонентским интерфейсам. Сопрягающий процессор 10 обеспечивает логическое сопряжение широкого класса абонентских интерфейсов 8: он формирует стандартные сообщения, выполняет редактирование информации и при подключении к автоматическому широкоформатному мультиплексному каналу 9 выполняют функции подканала мультиплексного канала. Адресные требования подсистемы ввода-вывода могут быть направлены как в первый, так и во второй уровень векторной главной внутренней памяти 5 и обрабатываются по общей схеме. Загрузка подканалов мультиплексного канала 9 и сопрягающих процессоров 10, инициализация их работы и сигнализация в центральный управляющий процессор 1 осуществляются по управляющему интерфейсу 7.The input-output subsystem 5 creates a certain number of programmable user interfaces 8 (Fig. 2); it contains a program-controlled or automatic
Центральные процессорные части 2 и 3 (фиг. 3) обеспечивают обработку информации, поступившей от абонентов через подсистему ввода-вывода 4 в векторную главную внутреннюю память 5 или из ее второго уровня по программам, транслированным на машинный язык и размещенным в первом уровне векторной главной внутренней памяти 5. Структура команды многопроцессорной векторной ЭВМ, как правило, имеет переменный состав и формат. Семантика команды машинного языка может быть близка к традиционной (IBM-подобной) с необходимыми для выполнения операций под маской над векторами данных или иметь слоговую структуру, при которой каждый слог команды управляет работой своего конвейера арифметических операций, операций управления потоком команд или конвейером обращения к памяти ("широкая команда"). Центральная процессорная часть 2 многопроцессорной векторной ЭВМ включает центральное управление 12 и векторное арифметическое устройство 13. Центральное управление 12 обеспечивает интерпретацию и исполнение команд, поступающих по управляющему интерфейсу 7, и сигнализацию в центральный управляющий процессор 1; интерпретацию и диспетчирование при исполнении команд машинного языка, в том числе: управление конвейерами арифметико-логических операций; выполнение операций над признаками арифметических операций и масками, формирование обобщенного признака передачи управления, управление конвейером масочных операций; формирование адресных требований к памяти, преобразование в ассоциативной памяти виртуальных адресов данных и команд в физические с проверкой типа обращения, управление конвейером обращений в память; формирование адресов чтения команд и данных, автоматическую буферизацию массивов команд и адресов; управление конвейерами операций управления потоком команд и операций преобразования индексов, формирование признака передачи управления по фиксированному числу циклов; обработку и хранение внутренних и внешних прерываний; загрузку и снятие "фотографии" процесса. Список арифметико-логических операций многопроцессорной векторной ЭВМ включает операции над числами с удвоенной точностью и над числами в комплексном формате, где действительная и мнимая части изображаются 32-разрядными числами в форме с плавающей запятой. The central processor parts 2 and 3 (Fig. 3) provide the processing of information received from subscribers through the input-
Векторное арифметическое устройство 13 многопроцессорной векторной ЭВМ содержит центральное устройство редактирования 14 и многоформатные конвейерные арифметические процессоры 15 (обычно, их число - 2m ). Каждый АП 15 содержит узел управления 16, регистровую память 17, конвейерное арифметическое устройство (КАУ) 18. Регистровые памяти 17 всех АП 15 образуют многопортовую векторную сверхоперативную память, в которой могут размещаться как поименные в команде машинного языка, так и служебные векторные регистры. Векторный регистр может занимать одну или несколько ячеек сверхоперативной памяти. Формат обрабатываемого вектора (формат компоненты и размерность) может формироваться с помощью маскирования арифметико-логической векторной операции и задания формата записи в память результата операции или задеваться в команде (прямо или косвенно). При задании формата вектора в команде аппаратно формируется "маска количества", которая действует совместно с маской операции, предотвращая выработку сигналов прерывания незадействованными арифметическими устройствами и запись в неиспользуемые в операции позиции векторных регистров. Каждый бит маски может воздействовать либо на позицию, либо на компоненту вектора. Для выполнения регистровых векторных операций используются три порта сверхоперативной памяти: два порта чтения и два порта записи. Два порта используются для обмена с векторной главной внутренней памятью 5: один порт чтения и один порт записи и еще два порта используются для выполнения операций в центральном устройстве редактирования 14. Центральное устройство редактирования 14 выполняет операции уплотнение под маской и пересылки компонентов между регистрами; там же осуществляется формирование и буферизации команд и скалярного операнда и пересылка их в центральное управление 12. Центральное управление 12 формирует для АП 15 векторного арифметического устройства 13 код и маску операции, сигналы управления регистровой памятью 17, шины скалярного операнда; признаки арифметической операции и сигналы прерывания поступают в центральное управление 12. Групповой характер операций и возможность считывания за одно обращение к памяти группы команд машинного языка позволяет осуществлять опережающий просмотр команд и осуществлять с помощью аппаратного семафорного механизма динамическую загрузку независимого оборудования центральной процессорной части. При использовании широкой команды загрузка оборудования и разрешение конфликтов на общем оборудовании статически планируется.Vector
На фиг. 4, 5, показано КАУ 18, которое содержит:
первый 2N-разрядный информационный вход 19, разделенный на N-разрядную старшую 20 и младшую часть 21;
второй 2N-разрядный информационный вход 22, разделенный на N-разрядную старшую 23 и младшую часть 24;
третий 2N-разрядный информационный вход 25, разделенный на N-разрядную старшую 26 и младшую часть 27.In FIG. 4, 5,
the first 2N-
the second 2N-bit information input 22, divided into N-bit high 23 and low 24;
the third 2N-
Кроме того, КАУ содержит:
первый 2N-разрядный информационный выход 28, разделенный на N-разрядную старшую 29 и младшую часть 30;
второй 2N-разрядный информационный выход 31, разделенный на N-разрядную старшую 32 и младшую часть 33.In addition, KAU contains:
the first 2N-
the second 2N-
Кроме того, КАУ содержит:
первую N-разрадную АС (Б1) 34, которая имеет первый 35 и второй 36 N-разрядные информационные входы, и один информационный N-разрядный выход 37;
вторую N-разрядную АС (Б2) 38, которая имеет первый 39 и второй 40 N-разрядные информационные входы, и один информационный N-разрядный выход 41;
третью N-разрядную АС (Б3) 42, которая имеет первый 43 и второй 44 N-разрядные информационные входы, и один информационный N-разрядный выход 45;
четвертую N-разрядную АС (Б4) 46, которая имеет первый 47 и второй 48 N-разрядные информационные входы, и один информационный N-разрядный выход 49.In addition, KAU contains:
the first N-bit AC (B1) 34, which has the first 35 and second 36 N-bit information inputs, and one information N-
the second N-bit AC (B2) 38, which has the first 39 and second 40 N-bit information inputs, and one information N-
the third N-bit speaker (B3) 42, which has the first 43 and second 44 N-bit information inputs, and one information N-
the fourth N-bit speaker (B4) 46, which has the first 47 and second 48 N-bit information inputs, and one information N-
(АС с первой 34 по четвертую 46 одинаковы и являются множительными устройствами). (The speakers from the first 34 to the fourth 46 are the same and are multiplying devices).
Кроме того, КАУ содержит:
пятую N-разрядную АС (Б5), которая имеет первый 51 и второй 52 N-разрядный информационные входы, и один информационный N-разрядный выход 53;
шестую N-разрядную АС (Б6) 54, которая имеет первый 55 и второй 56 N-разрядные информационные входы, и один информационный N-разрядный выход 57;
седьмую N-разрядную АС (Б7) 58, которая имеет первый 59 и второй 60 N-разрядные информационные входы, и один информационный N-разрядный выход 61;
восьмую N-разрядную АС (Б8) 62, которая имеет первый 63 и второй 64 N-разрядные информационные входы, и один информационный N-разрядный выход 65;
девятую N-разрядную АС (Б9) 66, которая имеет первый 67 и второй 68 N-разрядные информационные входы, и один информационный N-разрядный выход 69;
десятую N-разрядную АС (Б10) 70, которая имеет первый 71 и второй 72 N-разрядные информационные входы, и один информационный N-разрядный выход 73;
одиннадцатую N-разрядную АС (Б11) 74, которая имеет первый 75 и второй 76 T-разрядные информационные входы, и один информационный N-разрядный выход 77;
двенадцатую N-разрядную АС (Б12) 78, которая имеет первый 79 и второй 80 N-разрядные информационные входы, и один информационный N-разрядный выход 81;
тринадцатую N-разрядную АС (Б13) 82, которая имеет первый 83 и второй 84 N-разрядные информационные входы, и один информационный N-разрядный выход 85.In addition, KAU contains:
the fifth N-bit speaker (B5), which has the first 51 and second 52 N-bit information inputs, and one information N-
the sixth N-bit speaker (B6) 54, which has the first 55 and second 56 N-bit information inputs, and one information N-
the seventh N-bit speaker (B7) 58, which has the first 59 and second 60 N-bit information inputs, and one information N-
the eighth N-bit speaker (B8) 62, which has the first 63 and second 64 N-bit information inputs, and one information N-
the ninth N-bit speaker (B9) 66, which has the first 67 and second 68 N-bit information inputs, and one information N-
the tenth N-bit speaker (B10) 70, which has the first 71 and second 72 N-bit information inputs, and one information N-
the eleventh N-bit speaker (B11) 74, which has the first 75 and second 76 T-bit information inputs, and one information N-
the twelfth N-bit speaker (B12) 78, which has the first 79 and second 80 N-bit information inputs, and one information N-
the thirteenth N-bit speaker (B13) 82, which has the first 83 and second 84 N-bit information inputs, and one information N-
(АС с пятой по тринадцатую одинаковы и являются суммирующими устройствами). (The speakers from the fifth to the thirteenth are the same and are summing devices).
Кроме того, КАУ содержит:
первый коммутатор (КМ1) 86, который имеет четыре N-разрядных выхода, первый 87, второй 88, третий 89 и четвертый 90;
второй коммутатор (КМ2) 91, который имеет три N-разрядных выхода, первый 92, второй 93, третий 94;
третий коммутатор (КМ3) 95, который имеет три N-разрядных входа, первый 96, второй 97, и третий 98;
четвертый коммутатор (КМ4) 99, который имеет два N-разрядных входа, первый 100 и второй 101;
пятый коммутатор (КМ5) 102 имеет три N-разрядных входа, первый 103, второй 104, и третий 105;
шестой коммутатор (КМ6) 106 имеет четыре N-разрядных входа, первый 107, второй 108, третий 109 и четвертый 110;
седьмой коммутатор (КМ7) 111 имеет четыре N-разрядных входа, первый 112, второй 113, третий 114 и четвертый 115.In addition, KAU contains:
the first switch (KM1) 86, which has four N-bit outputs, the first 87, second 88, third 89 and fourth 90;
the second switch (KM2) 91, which has three N-bit outputs, the first 92, the second 93, the third 94;
the third switch (KM3) 95, which has three N-bit inputs, the first 96, the second 97, and the third 98;
the fourth switch (KM4) 99, which has two N-bit inputs, the first 100 and second 101;
the fifth switch (KM5) 102 has three N-bit inputs, the first 103, the second 104, and the third 105;
the sixth switch (KM6) 106 has four N-bit inputs, the first 107, second 108, third 109 and fourth 110;
the seventh switch (KM7) 111 has four N-bit inputs, the first 112, second 113, third 114 and fourth 115.
Первый 19 и второй 22 входы КАУ подсоединены к первому коммутатору 86, второй 22 и третий 25 входы КАУ подсоединены к второму коммутатору 91, старшая часть 20 первого входа КАУ подсоединена к первому входу 75 одиннадцатой 74 АС, к первому входу 79 двенадцатой АС 78 и первому входу 103 пятого коммутатора 102, младшая часть 21 первого входа КАУ подсоединена к первому входу 59 седьмой АС 58, к первому входу 63 восьмой АС 62 и к первому входу 83 тринадцатой АС 82. The first 19 and second 22 KAU inputs are connected to the
Выходы 87, 88, 89, 90 первого коммутатора 86 соединены соответственно с первыми входами 35, 39, 43, 47 первой 34, второй 38, третьей 42 и четвертой 46 АС. Первый выход 92 второго коммутатора 91 подсоединен к второму входу 36 первой АС 34, к второму входу 48 четвертой АС 46, к второму входу 76 одиннадцатой АС 74 и к второму входу 80 двенадцатой АС 78. Второй выход 93 второго коммутатора 91 подсоединен к второму входу 44 третьей АС 42 и к второму входу 84 тринадцатой АС 82. Третий выход 94 второго коммутатора 91 подсоединен к второму входу 40 второй АС 38. The
Выход 37 первой АС 34 подсоединен к первому входу 96 третьего коммутатора 95 и второму входу 104 пятого коммутатора 102. Выход 41 второй АС 38 подсоединен к первому входу 100 четвертого коммутатора 99. Выход 45 третьей АС 42 подсоединен к первому входу 51 АС 50. Выход 49 четвертой АС 46 подсоединен к второму входу 52 пятой АС 50. Выход 53 пятой АС 50 подсоединен к третьему входу 98 третьего коммутатора 95, к третьему входу 114 седьмого коммутатора 111, второму входу 60 седьмой АС 58 и второму входу 64 восьмой АС 62. Выход 57 шестой АС 54 подсоединен к второму входу 68 девятой АС 66, второму входу 72 десятой АС 70 и к третьему входу 109 шестого коммутатора 106. Выход 61 седьмой АС 58 подсоединен к младшей части 33 второго выхода 31 КАУ. Выход 65 восьмой АС 62 подсоединен к второму входу 113 седьмого коммутатора 111. Выход 69 девятой АС 66 подсоединен к первому входу 112 седьмого коммутатора 111 и старшей части 32 второго выхода 31 КАУ. Выход 73 десятой АС 70 подсоединен к второму входу 108 шестого коммутатора 106. Выход 77 одиннадцатой АС 74 подсоединен к третьему входу 105 пятого коммутатора 102. Выход 81 двенадцатой АС 78 подсоединен к второму входу 97 третьего коммутатора 95 и четвертому входу 110 шестого коммутатора 106. Выход 85 тринадцатой АС 82 подсоединен к второму входу 101 четвертого коммутатора 99 и четвертому входу 115 седьмого коммутатора 111. The
Выход третьего коммутатора 95 подсоединен к второму входу 56 шестой АС 54. Выход четвертого коммутатора 99 подсоединен к первому входу 55 шестой АС 54. Выход пятого коммутатора 102 подсоединен к первому входу 67 девятой АС 66 и к первому входу 71 десятой АС. Выход шестого коммутатора 106 подсоединен к старшей части 29 первого выхода 28 КАУ. Выход седьмого коммутатора 111 подсоединен к младшей части 30 первого выхода 28 АП. The output of the
Каждый коммутатор и каждая АС имеют, кроме перечисленных, входы управления и входы синхронизации, о которых будет сказано ниже. АП содержит также регистровую память (не показана), представляющую собой многопортовую сверхоперативную память. Результаты операции с выхода 31 КАУ 18 поступают в регистровую память. Each switch and each speaker has, in addition to the listed, control inputs and synchronization inputs, which will be discussed below. The AP also contains a register memory (not shown), which is a multi-port superoperative memory. The results of the operation from the
На фиг. 5 показан узел управления (УУ) 116 арифметического процессора, содержащий восемь регистров: первый 117, второй 118, третий 119, четвертый 120, пятый 121, шестой 122, седьмой 123 и восьмой 124. Кроме того, УУ содержит комбинационную логическую схему (КЛС) 125, вход кода операции 126 и вход управления 127 для выбора операндов, участвующих в операции, из операндов, поступающих на входы 22 и 25 АП. Операнд, поступающий на вход 19 участвует в каждый операции. Входы 126 и 127 УУ подключены к первому регистру 117 УУ. Выходы каждого регистра с первого 117 по седьмой 123 соединены с входом следующего по номеру регистра (соответственно) и с соответствующими входами КЛС 125. Выход последнего восьмого регистра 124 соединен только с соответствующим входом КЛС 125. Выходы КЛС с первого (128) по двадцатый (147) подсоединены к входам управления коммутаторами и АС. Входы управления не показаны, а соединения выходов КЛС с входами управления коммутаторов и АС будут описаны в таблице при описании работы АП. Таким образом, узел управления УУ 116 содержит конвейер (в рассматриваемом примере 8 ярусов регистров 117 - 124), по которому движется команда АП (код операции и код выбора операнда). In FIG. 5 shows the control unit (UE) 116 of an arithmetic processor containing eight registers: the first 117, the second 118, the third 119, the fourth 120, the fifth 121, the sixth 122, the seventh 123 and the eighth 124. In addition, the UU contains a combinational logic circuit (CLS) 125, the input of the
Множительные устройства Б1 - Б4 показаны на фиг. 4, 5, под номерами 34, 38, 42, 46. Все они одинаковы. Multiplier devices B1 to B4 are shown in FIG. 4, 5, numbered 34, 38, 42, 46. They are all the same.
На фиг. 12 показана блок-схема множительного устройства, которое содержит комбинационную логическую схему (КЛС) 148, регистр 149 и КЛС 150. КЛС 148 имеет информационные входы 151 и 152 и управляющий вход 153. Выход 154 КЛС 148 соединен с входом 155 регистра 149, выход 156 которого соединен с входом 157 КЛС 150. Выход 158 КЛС 150 является выходом множительного устройства. In FIG. 12 shows a block diagram of a multiplier device that contains a combinational logic circuit (CLS) 148, a
Суммирующие устройства Б5 - Б13 показаны на фиг. 4, 5, под номерами 50, 54, 58, 62, 66, 70, 74, 78, 82. Все они одинаковы. Summing devices B5 to B13 are shown in FIG. 4, 5, numbered 50, 54, 58, 62, 66, 70, 74, 78, 82. They are all the same.
На фиг. 13 показана блок-схема суммирующего устройства, которое содержит комбинационную логическую схему (КЛС) 159, регистр 160, КЛС 161, регистры 162 - 167 и коммутаторы 168, 169. Регистр 162 имеет вход 170, а регистр 167 имеет вход 171. Входы 170 и 171 является информационными входами суммирующего устройства. Выход 172 регистра 162 соединен с входом 173 регистра 163. Выход 174 регистра 163 соединен с входом 175 регистра 164. Выход 176 регистра 164 соединен с входом 177 регистра 165. Выход 178 регистра 165 соединен с входом 179 регистра 166. Выход 180 регистра 166 соединен с входом 181 коммутатора 168. Вход 170 соединен с входом 182 коммутатора 168. Выход 172 регистра 162 соединен с входом 183 коммутатора 168. Выход 176 регистра 164 соединен с входом 184 коммутатора 168. Выход 178 регистра 165 соединен с входом 185 коммутатора 168. Выход 186 коммутатора 168 соединен с входом 187 КЛС 159. Выход 188 регистра 167 соединен с входом 189 коммутатора 169. Вход 171 регистра 167 соединен с входом 190 коммутатора 169. Выход 191 коммутатора 169 соединен с входом 192 КЛС 159, выход которой 193 соединен с входом 194 регистра 160. Вход 195 регистра 160 соединен с входом 196 КЛС 161, выход которой 197 является выходом суммирующего устройства. In FIG. 13 shows a block diagram of a summing device that contains a combinational logic circuit (CLS) 159, register 160,
Работа многопроцессорной векторной ЭВМ (фиг. 1) в целом была уже описана выше при рассмотрении устройства многопроцессорной векторной ЭВМ. Проанализируем работу конвейерного арифметического устройства (КАУ) многопроцессорной векторной ЭВМ. The operation of a multiprocessor vector computer (Fig. 1) as a whole has already been described above when considering a device of a multiprocessor vector computer. Let us analyze the operation of a conveyor arithmetic device (KAU) of a multiprocessor vector computer.
Программа работы ЦПЧ 2 ЭВМ записана в ГВП 5. Центральное управление 12 центральной процессорной части 2 обеспечивает выборку и расшифровку инструкций для каждого АП 15 векторного арифметического устройства 13. The work program of the DPC 2 of the computer is recorded in the GWP 5.
Все арифметические процессоры 15 могут выполнять одну и ту же команду. Ширина шин управления и шин передачи данных достаточна для передачи операндов и команд АП для всех АП в одном такте. По одной команде АП в нескольких АП может обрабатываться (параллельно) сразу несколько операндов, т.е. вектор. All
Для описания работы КАУ рассмотрим выполнение в КАУ следующих операций:
A+/-F•P (операция I двухточечного преобразования Фурье, A, F и P - комплексные операнды, имеющие N-разрядные вещественные и мнимые части) (см. фиг. 7),
A+B (операция II сложения 2N-разрядных действительных операндов) (см. фиг. 8),
A•B (операция III умножения 2N-разрядных действительных операндов) (см. фиг. 9),
A+B (операция IV сложения комплексных операндов, имеющих N-разрядные вещественные и мнимые части) (см. фиг. 10).To describe the operation of the KAU, we consider the following operations in the KAU:
A +/- F • P (operation I of the two-point Fourier transform, A, F and P are complex operands having N-bit real and imaginary parts) (see Fig. 7),
A + B (operation II of addition of 2N-bit real operands) (see Fig. 8),
A • B (operation III of multiplication of 2N-bit real operands) (see Fig. 9),
A + B (operation IV of adding complex operands having N-bit real and imaginary parts) (see Fig. 10).
A•B (операция V умножения комплексных операндов, имеющих N-разрядные вещественные и мнимые части) (см. фиг. 11). A • B (operation V of multiplication of complex operands having N-bit real and imaginary parts) (see Fig. 11).
Под A, F и P имеются ввиду операнды, поступающие соответственно на входы КАУ 19, 22 и 25 (фиг. 4, 5). Под B имеется ввиду операнд, поступающий на входы 22 или 25 в зависимости от сигнала U на входе управления 127 УУ. By A, F and P we mean operands arriving at the inputs of
АП представляет собой универсальную конвейерную вычислительную схему, настраиваемую для выполнения конкретной вычислительной операции с помощью команды АП, преобразованной в управляющие сигналы узла управления АП, поступающие на коммутаторы и АС КАУ. The AP is a universal conveyor computing circuit that is configured to perform a specific computing operation using the AP command, which is converted into control signals of the AP control node received by the switches and AC KAU.
Глубина конвейера изменяется в зависимости от выполняемой операции и соответствующей настройки конвейера. Глубина конвейера, в данном случае, - это число, соответствующее общему количеству тактов, необходимых для продвижения промежуточных результатов вычисления по КАУ, начиная с регистра-источника операнда и кончая регистром-приемником результата. Регистры-источники операнда - это регистровая память или регистры для хранения старшей Pс и младшей Pм частей операнда P (не показаны). Для операции двухточечного преобразования Фурье и операции сложения с удвоенной разрядностью глубина конвейера равна 6. Для операции умножения с удвоенной разрядностью глубина конвейера равна 8. Для операции умножения комплексных чисел глубина конвейера равна 4. Для операции сложения комплексных чисел глубина конвейера равна 2.The depth of the conveyor changes depending on the operation being performed and the corresponding adjustment of the conveyor. The depth of the conveyor, in this case, is the number corresponding to the total number of clock cycles needed to advance the intermediate results of the calculation by KAU, starting from the source register of the operand and ending with the receiver register of the result. The source operand registers are the register memory or registers for storing the highest P s and the lower P m parts of the operand P (not shown). For the two-point Fourier transform operation and addition operation with double digit capacity, the depth of the pipeline is 6. For the operation of multiplication with double digit capacity, the depth of the pipeline is 8. For the operation of multiplying complex numbers, the depth of the pipeline is 4. For the operation of adding complex numbers, the depth of the pipeline is 2.
При выполнении конкретных вычислительных операций иногда используются не все коммутаторы и АС КАУ. НА фиг. 7 - 9 изображены блок-схемы КАУ, настроенного для выполнения указанных выше операций. When performing specific computing operations, not all switches and AC KAUs are sometimes used. In FIG. 7 to 9 are block diagrams of a KAU configured to perform the above operations.
Следует повторить, что КАУ с помощью 32-разрядных АС выполняет операции с плавающей запятой над операндами с удвоенной разрядностью (например, 2N = 64 разряда) и над комплексными операндами, в которых вещественные и мнимые части содержат по 32 разряда (т.е. всего тоже 64 разряда). Будем считать, что на первый 32-разрядный вход АС подается число X, а на второй 32-разрядный вход АС подается число Y. It should be repeated that KAU, using 32-bit AS, performs floating-point operations on operands with double digit capacity (for example, 2N = 64 bits) and on complex operands in which the real and imaginary parts contain 32 bits each (i.e., also 64 bits). We assume that the number X is supplied to the first 32-bit AC input, and the number Y is supplied to the second 32-bit AC input.
Вычислительные операции КАУ выполняются с помощью микроопераций АС (название "микрооперация" выбрано здесь условно). The computational operations of the KAU are performed using AS micro-operations (the name "micro-operation" is chosen conditionally here).
Схемы АС с Б1 по Б4 могут выполнять микрооперации умножения трех типов: У, Ус и Ум.AS circuits from B1 to B4 can perform micro-operations of multiplication of three types: U, U s and U m .
Микрооперация У - умножение двух 32-разрядных операндов с выдачей 32-разрядного округленного результата. (Эта микрооперация обозначается значком "*" или буквой "У"). При микрооперации умножения Ус выдается старшая 32-разрядная часть результата умножения двух 32-разрядных операндов. (Микрооперация Ус обозначается значком "*с" или буквами "Ус", например, X *с Y).Microoperation U - multiplication of two 32-bit operands with the issuance of a 32-bit rounded result. (This micro-operation is indicated by the “*” or the letter “U”). During the microoperation of the multiplication of Y c, the highest 32-bit part of the result of the multiplication of two 32-bit operands is output. (Microoperation of U with is indicated by the icon “* s ” or by the letters “U s ”, for example, X * s Y).
При микрооперации умножения Ум выдается младшая 32-разрядная часть результата умножения двух 32-разрядных операндов. (Микрооперация Ум обозначается значком "*м" или буквами "Ум", например, X *м Y). Сумма результатов микроопераций умножения Ус и Ум, выполненных над одной и той же парой операндов X и Y, с большей точностью равна произведению X • Y, чем результат микрооперации умножения У.During the microoperation of the multiplication, U m yields the lower 32-bit part of the result of the multiplication of two 32-bit operands. (Microoperation U m is indicated by the icon "* m " or the letters "U m ", for example, X * m Y). The sum of the results of the microoperation of the multiplication of Y s and U m performed on the same pair of operands X and Y is more accurately equal to the product X • Y than the result of the microoperation of the multiplication of U.
Схемы АС с Б5 по Б13 выполняют микрооперации сложения пяти типов: С, Сс, См, В1 и В2.The AS circuits B5 through B13 perform five types of addition microoperations: C, C s , C m , B1 and B2.
Микрооперация С - сложение двух 32-разрядных операндов с выдачей 32-разрядного округленного результата. (Эта микрооперация обозначается значком "+" или буквой "С"). Microoperation C is the addition of two 32-bit operands with a 32-bit rounded result. (This micro-operation is indicated by the “+” sign or the letter “C”).
При микрооперации сложения Сс выдается старшая 32-разрядная часть результата сложения двух 32-разрядных операндов.During the microoperation of addition C with, the highest 32-bit part of the result of the addition of two 32-bit operands is output.
(Микрооперация Сс обозначается значком "+с" или буквами "Сс", например, X +с Y).(Microoperation C with is indicated by the “+ c ” icon or the letters “C c ”, for example, X + c Y).
При микрооперации сложения См выдается младшая 32-разрядная часть результата сложения двух 32-разрядных операндов.During the microoperation of the addition of C m, the lower 32-bit part of the result of the addition of two 32-bit operands is output.
(Микрооперация См обозначается значком "+м" или буквами "См", например, X +м Y). Сумма результатов микроопераций сложения Сс и См, выполненных над одной и той же парой операндов X и Y, с большей точностью равна сумме X + Y, чем результат микрооперации сложения С.(Microoperation C m is indicated by the “+ m ” icon or the letters “C m ”, for example, X + m Y). The sum of the results of the microoperations of addition C s and C m performed on the same pair of operands X and Y is more accurately equal to the sum of X + Y than the result of the microoperation of addition C.
Микрооперация В1 - вычитание двух 32-разрядных операндов (X - Y) с выдачей 32-разрядного округленного результата. (Микрооперация В1 обозначается значком "-1" или буквой с индексом "В1").Microoperation B 1 - subtraction of two 32-bit operands (X - Y) with the issuance of a 32-bit rounded result. (Microoperation B 1 is indicated by the “- 1 ” symbol or the letter with the index “B 1 ”).
Микрооперация В2 - вычитание двух 32-разрядных операндов (Y - X) с выдачей 32-разрядного округленного результата. (Микрооперация В2 обозначается значком "-2" или буквой с индексом "В2").Microoperation В 2 - subtraction of two 32-bit operands (Y - X) with the issuance of a 32-bit rounded result. (Microoperation B 2 is indicated by the “- 2 ” icon or the letter with the index “B 2 ”).
Результаты работы каждой АС при выполнении каждой из операций АП I - V сведены в табл. 1. The results of each speaker during each of the operations of the AP I - V are summarized in table. one.
Операция двухточечного преобразования Фурье A+/-FP (фиг. 7) состоит в вычислении двух комплексных чисел (E и D)
E = A + F • P,
D = A - F • P,
где
A, F, P - комплексные операнды, приходящие на входы 4, 22 и 25 (фиг. 4, 5). Вещественные и мнимые части операндов A, F, P и результатов E, D обозначены соответственно Aс и Aм, Fc и Fм, Pc и Pм, Ec и Eм, Dc и Dм. Точный алгоритм вычисления E и D можно записать следующим образом:
Eс = Aс + [(Fс • Pс) - (Fм • Pм)],
Eм = Aм + [(Fс • Pм) + (Fм • Pс)],
Dс = Aс - [(Fс • Pс) - (Fм • Pм)],
Dм = Aм - [(Fс • Pм) + (Fм • Pс)].The operation of the two-point Fourier transform A +/- FP (Fig. 7) consists in calculating two complex numbers (E and D)
E = A + F • P,
D = A - F • P,
Where
A, F, P - complex operands arriving at
E s = A s + [(F s • P s ) - (F m • P m )],
E m = A m + [(F s • P m ) + (F m • P s )],
D s = A s - [(F s • P s ) - (F m • P m )],
D m = A m - [(F s • P m ) + (F m • P s )].
Этот алгоритм реализуется на АП, настроенном на выполнение операции двухточечного преобразования Фурье и представленном на фиг. 7, из которой видно, на какие входы каких АС поступают вещественные и мнимые части исходных операндов, промежуточных результатов вычисления, и на каких выходах получаются окончательные результаты вычисления. На первом этапе вычисления производится одновременное умножение в четырех АС (Б1-Б4, 34, 38, 42 и 46). Результаты умножения на втором этапе складываются на Б5 (50) и вычитаются на Б6 (54). На третьем этапе производится сложение на АС (Б8 и Б10, 62 и 70) и вычитание на АС (Б7 и Б9, 58 и 66). Прохождение всех операндов в АП определяется настройкой коммутаторов КМ1 - КМ7 под воздействием сигналов управления. This algorithm is implemented on an AP configured to perform the point-to-point Fourier transform operation and shown in FIG. 7, from which it is seen which inputs of which speakers receive the real and imaginary parts of the original operands, intermediate results of the calculation, and at which outputs the final results of the calculation are obtained. At the first stage of the calculation, simultaneous multiplication is performed in four speakers (B1-B4, 34, 38, 42, and 46). The results of the multiplication in the second stage are added to B5 (50) and subtracted to B6 (54). At the third stage, addition is made to the speakers (B8 and B10, 62 and 70) and subtraction to the speakers (B7 and B9, 58 and 66). The passage of all operands in the AP is determined by the configuration of the KM1 - KM7 switches under the influence of control signals.
Например, коммутатор КМ1 86 настроен так, что он пропускает часть Fс операнда F с входа 23 на первый вход 35 АС 34 и на первый вход 43 АС 42. Он же пропускает часть Fм операнда F с входа 24 на первый вход 39 АС 38 и на первый вход 47 АС 46.For example, the
Коммутатор КМ2 91 настроен так, что он пропускает часть Pс операнда P с входа 26 на второй вход 36 АС 34 и на второй вход 48 АС 46. Он же пропускает часть Pм операнда P с входа 27 на второй вход 40 АС 38 и на второй вход 44 АС 42.
Коммутатор КМ3 95 настроен так, что он пропускает результат с выхода 37 АС 34 на второй вход 56 АС 54. The
Коммутатор КМ4 99 настроен так, что он пропускает результат с выхода 41 АС 38 на первый вход 55 АС 54. The
Коммутатор КМ5 102 настроен так, что он пропускает часть Aс операнда A с входа 20 на первый вход 67 АС 66 и на первый вход 71 АС 70.
Коммутатор КМ6 106 настроен так, что он пропускает результат с выхода 73 АС 70 на выход 29 АП. The
Коммутатор КМ7 111 настроен так, что он пропускает результат с выхода 69 АС 66 на выход 30 АП. The
Упомянутые выше этапы вычисления осуществляются ступенями конвейера АП: первая ступень конвейера содержит АС 34, 38, 42, 46, вторая ступень конвейера содержит АС 50, 54, третья ступень содержит 58, 62, 66 и 70. Между ступенями конвейера могут стоять элементы задержки в виде регистров или других схем (входящих, например, в состав АС) для обеспечения временных согласований. The above calculation steps are carried out by the steps of the AP conveyor: the first stage of the conveyor contains
Например, часть Aс операнда A с входа 20 АП должна поступить на АС 66 и 70 одновременно с результатом с выхода 57 АС 54, для чего поступление части Aс в указанные АС задерживается на необходимое число тактов.For example, part A from operand A from
Операция A+B (сложение двух операндов с удвоенной разрядностью) состоит в вычислении старшей Eс и младшей Eм частей результата E по следующему алгоритму:
Eс = (Aс +c Bс) +с [(Aс +м Bс) +с (Aм + Bм)],
Eм = (Aс +c Bс) +м [(Aс +м Bс) +с (Aм + Bм)],
где
Aс и Aм - старшая и младшая части операнда A,
Bс и Bм - старшая и младшая части операнда B (B - операнд, выбранный под действием сигнала управления по входу 127 из пары операндов F или P).Operation A + B (the addition of two operands with double capacity) consists in calculating the highest E with and the lower E m parts of the result E according to the following algorithm:
E s = (A s + c B s ) + s [(A s + m B s ) + s (A m + B m )],
E m = (A s + c B s ) + m [(A s + m B s ) + s (A m + B m )],
Where
A with and A m - the senior and youngest parts of the operand A,
B c and B m are the highest and youngest parts of operand B (B is the operand selected by the control signal at
Этот алгоритм реализуется на АП, настроенном на выполнение операции сложения с удвоенной разрядностью и представленном на фиг. 8, из которой видно, на какие входы каких АС поступают старшие и младшие части исходных операндов, промежуточных результатов вычисления и на каких выходах получаются окончательные результаты вычисления. This algorithm is implemented on the AP configured to perform the addition operation with double capacity and shown in FIG. 8, from which it is seen which inputs of which speakers receive the upper and lower parts of the original operands, intermediate results of the calculation, and at which outputs the final results of the calculation are obtained.
На первом этапе вычисления производится одновременное сложение в трех АС Б11-Б13 (74, 78, 82). Результаты сложения в Б12 (78) и Б13 (82) на втором этапе складываются на Б6 (54). На третьем этапе производится сложение на АС Б9 и Б10 (66 и 70), после чего на выходах АП 29 и 30 получаются соответственно старшая и младшая части результата. At the first stage of the calculation, simultaneous addition is performed in three B11-B13 speakers (74, 78, 82). The addition results in B12 (78) and B13 (82) at the second stage are added to B6 (54). At the third stage, addition is made to the speakers B9 and B10 (66 and 70), after which the highest and lowest parts of the result are obtained respectively at the outputs of the
Аналогично выполняются операции вычитания с удвоенной разрядностью X-Y и обратного вычитания Y-X. Similarly, double-digit subtraction operations X-Y and inverse subtraction of Y-X are performed.
Операция A•B (умножение двух операндов с удвоенной разрядностью) состоит в вычислении старшей Eс и младшей Eм частей результата E по следующему алгоритму:
Eс = (Aс *с Bс) +с {(Aс *м Bс) + [(Aс • Bм) + {(Aм • Bс)]},
Eм = (Aс *с Bс) +м {(Aс *м Bс) + [(Aс • Bм) + {(Aм • Bс)]},
где
Aс и Aм - старшая и младшая части операнда A,
Bс и Bм - старшая и младшая части операнда B (B - операнд, выбранный под действием сигнала управления по входу 127 из пары операндов F или P).Operation A • B (multiplication of two operands with double capacity) consists in calculating the highest E with and the lower E m parts of the result E according to the following algorithm:
E s = (A s * s B s ) + s {(A s * m B s ) + [(A s • B m ) + {(A m • B s )]},
E m = (A s * s B s ) + m {(A s * m B s ) + [(A s • B m ) + {(A m • B s )]},
Where
A with and A m - the senior and youngest parts of the operand A,
B c and B m are the highest and youngest parts of operand B (B is the operand selected by the control signal at
Этот алгоритм реализуется на АП, настроенном на выполнение операции умножения операндов с удвоенной разрядностью и представленном на фиг. 9, из которой видно, на какие входы каких АС поступают старшие и младшие части исходных операндов, промежуточных результатов вычисления, и на каких выходах получаются окончательные результаты вычисления. This algorithm is implemented on an AP configured to perform the operation of multiplying operands with double bit depth and shown in FIG. 9, from which it is seen which inputs of which speakers receive the upper and lower parts of the original operands, intermediate results of the calculation, and at which outputs the final results of the calculation are obtained.
На первом этапе вычисления производится одновременное умножение в четырех АС Б1-Б4 (34, 38, 42 и 46). Результаты умножения в Б3 (42) и Б4 (46) на втором этапе складываются на Б5 (50). На третьем этапе производится сложение на Б6 (54). На четвертом этапе производится сложение на АС Б9 и Б10 (66 и 70), после чего на выходах АП 29 и 30 получаются соответственно старшая и младшая части результата. At the first stage of the calculation, simultaneous multiplication is performed in four AS B1-B4 (34, 38, 42 and 46). The results of multiplication in B3 (42) and B4 (46) in the second stage are added to B5 (50). At the third stage, addition is performed on B6 (54). At the fourth stage, addition is made to the speakers B9 and B10 (66 and 70), after which the highest and lowest parts of the result are obtained respectively at the outputs of the
Операция A + B = E (сложение двух комплексных операндов A и B) состоит в вычислении Eс - вещественной N-разрядной части результата E, и Eм - его мнимой N-разрядная часть. Операция производится по следующему алгоритму:
Eс = (Aс + Bс)
Eм = (Aм + Bм)
где
Aс и Aм - вещественная и мнимая части операнда A,
Bс и Bм - вещественная и мнимая части операнда B (B - операнд, выбранный под действием сигнала управления по входу 127 из пары операндов F или P).The operation A + B = E (the addition of two complex operands A and B) consists in calculating E with the real N-bit part of the result E, and E m its imaginary N-bit part. The operation is performed according to the following algorithm:
E s = (A s + B s )
E m = (A m + B m )
Where
A with and A m - the real and imaginary parts of the operand A,
B c and B m are the real and imaginary parts of operand B (B is an operand selected under the action of a control signal at
Эта операция реализуется на АП, настроенном на параллельное выполнение двух обычных операций сложения. На фиг. 10 видно, на какие входы АС Б12 (78) и Б13 (82) поступают вещественные и мнимые части исходных операндов и на каких выходах получается окончательный результат вычисления. Вычисления производятся одноэтапно в Б12 (78) и Б13 (82), после чего на выходах АП 29 и 30 получаются соответственно вещественная и мнимая части результата. This operation is implemented on the AP configured to perform two ordinary addition operations in parallel. In FIG. Figure 10 shows which inputs of the AC B12 (78) and B13 (82) are the real and imaginary parts of the original operands and at which outputs the final calculation result is obtained. The calculations are performed one-stage in B12 (78) and B13 (82), after which the real and imaginary parts of the result, respectively, are obtained at the outputs of
Операция A • B (фиг. 11) умножения двух комплексных операндов A и B производится в соответствии с формулами:
Eс = (Aс • Bс) - (Aм • Bм),
Eм = (Aс • Bм) - (Aм • Bс).Operation A • B (Fig. 11) of the multiplication of two complex operands A and B is performed in accordance with the formulas:
E s = (A s • B s ) - (A m • B m ),
E m = (A s • B m ) - (A m • B s ).
Индексы "с" и "м" соответствуют вещественной и мнимой частям комплексного числа. Результат (Eс, Eм) рассматривается не как два результата разрядности N, а как одно комплексное число (Ec- его вещественная N-разрядная часть, Em-его мнимая N-разрядная часть).The indices "c" and "m" correspond to the real and imaginary parts of the complex number. The result (E s , E m ) is considered not as two results of the capacity of N, but as one complex number (E c is its real N-bit part, E m is the imaginary N-bit part).
На первом этапе вычисления производится одновременное умножение в четырех AC Б1-Б4, (34, 38, 42 и 46). Результаты умножения в Б3(42) и Б4(46) на втором этапе складываются на Б5(50). На этом же этапе результаты умножения в Б1(34) и Б2(38) складываются на Б6(54), после чего на выходах АП 29 и 30 получаются соответственно вещественная и мнимая части результата. At the first stage of the calculation, simultaneous multiplication is performed in four AC B1-B4, (34, 38, 42 and 46). The results of multiplication in B3 (42) and B4 (46) in the second stage are added to B5 (50). At the same stage, the multiplication results in B1 (34) and B2 (38) are added to B6 (54), after which the real and imaginary parts of the result are obtained respectively at the outputs of
Узел управления 116 АП работает следующим образом. Комбинационная логическая схема (КЛС) 125 выдает на свои выходы 128-147 сигналы, показанные в табл.2. The
Выходные сигналы узла управления 116 АП, показанные в табл.2, могут принимать значения 0 или 1. Они вырабатываются комбинационной логической схемой 125, реализующей следующие Булевы функции:
1КМ1=(2)[1]+(4)[1]*IC[1]+(5)[1];
1КМ2=(1)[1]+C[1];
1КМ3=(2)[1];
1КМ4=(5)[1];
1КМ7=(4)[1]*IC[1];
1КМ8=(1)[1]+C[1];
1КМ9=(2)[1]+(5)[1];
2КМ1=U[1]*((2)[1]+(3)[1]+(4)[1]*IC[1]+(5)[1]+(6)[1]*IC[1]);
2КМ2=(1)[1]+IU[1]*((2)[1]+(3)[1]+(4)[1]*IC[1]+(5)[1]+(6)[1]*IC[1];
2КМ3=C[1];
2КМ4=U[1]*(2)[1];
2КМ5=U[1]*(5)[1];
2КМ6=IU[1]*(2)[1];
2КМ7=(1)[1]+(5)[1]*IU[1]*C[1];
2КМ9=(1)[1]+C[1]+IU[1]*((2)[1]+(3)[1]+(4)[1]*IC[1]+(5)[1]+6[1]*IC[1];
5КМ1=(1)[1]+С[1];
5КМ2=(2)[2];
5КМ3=(3)[2];
6КМ1=4[2]*IC[2];
6КМ2=(1)[6]+(2)[8]+(3)[6]+C[6];
6КМ3=(5)[4];
6КМ4=(6)[2]*IC[2];
7КМ2=(2)[8]+(3)[6];
7КМ3=(1)[6]+C[6];
1К3=P3[1]*(4)[1];
1К4=P4[1]*(4)[1];
1К5=P5[1]*((4)[1]+C[1]+(2)[1]*IC[1];
1К6=I(4)[1]+P6[1];
1К7=I(4)[1]+P7[1];
2К4=C[1]*P4[1]+IC[1]*(2)[1];
3К5=((4)[1]+C[1])*P5[1];
4К4=C[1]*P4[1];
5К1=C[3]*I(4)[3];
5К2=I(С[3]*I(4)[3];
6К1=((5)[3]+(1)[3])*IC[3]+I(4)[3]*C[3];
7К1=(1)[5]*IC[5]+I(4)[5]*C[5];
7К2=(4)[5]*C[5];
8К1=I(4)[5]*C[5];
8К2=(1)[5]*IC[5]+(4)[5]*C[5];
9K1-(1)[5]+C[5]*P4[5]*IP[5];
9K2=(3)[5]+C[5]*(IP4[5]+P5[5])+(2)[7];
9K4=(3)[5]+C[5]*P4[5]*P5[5]+(2)[7];
9K=C[5]*IP4[5]*P5[5];
10K1=C[5]*P4[5]*IP5[5];
10K2=I(C[5]*P4[5]*IP5[5]);
10K4=C[5]*P4[5]*P5[5];
10K5=(2)[7]+(3)[5]+C[5]*IP4[5]*P5[5];
11K0=C[1]*I(4)[1]*P0[1];
11K1=((3)[1]+C[1])*P1[1];
11K2=((3)[1]+C[1])P2[1];
11K3=P3[1]*IC[1]+(4)[1];
11K4=C[1]*P4[1];
11K5=(3)[1]*IC[1]+C[1]+C[1]*P5[1];
11K6=P6[1]+IC[1]+(4)[1];
11K7=P7[1]+IC[1]+(4)[1];
12K0=((6)[1]+C[1]*I(4)[1]*P0[1];
12K1=((6)[1]+C[1]+(3)[1])*P1[1];
12K2=((6)[1]+C[1]+(3)[1]*P2[1];
12K3=P3[1]+((4)[1]+IC[1])*I(6)[1];
12K4=((6)[1]+C[1])*P4[1]+(3)[1];
12K5=((6)[1]+C[1])*P5[1]
12K6=P6[1]+((4)[1]+IC[1])*I(6)[1];
12K7=P7[1]+((4)[1]+IC[1]*I(6)[1];
13K4=((6)[1]+C[1])*P4[1];
5LO=C[3]+(1)[3]+(2)[3]+(5)[3];
6LO=C[3]+(1)[3]+(2)[5]+(5)[3]+(3)[3];
6L1=(2)[5];
7L1=C[5]+(1)[5];
9LO=(3)[5];
9L1=(1)[5]+(2)[7]+(3)[5]+C[5];
9L2=(2)[7];
11L2=C[1]+(3)[1];
12L2=C[1]+(3)[1]+(6)[1].The output signals of the
1KM1 = (2) [1] + (4) [1] * IC [1] + (5) [1];
1KM2 = (1) [1] + C [1];
1KM3 = (2) [1];
1KM4 = (5) [1];
1KM7 = (4) [1] * IC [1];
1KM8 = (1) [1] + C [1];
1KM9 = (2) [1] + (5) [1];
2KM1 = U [1] * ((2) [1] + (3) [1] + (4) [1] * IC [1] + (5) [1] + (6) [1] * IC [ one]);
2KM2 = (1) [1] + IU [1] * ((2) [1] + (3) [1] + (4) [1] * IC [1] + (5) [1] + (6 ) [1] * IC [1];
2KM3 = C [1];
2KM4 = U [1] * (2) [1];
2KM5 = U [1] * (5) [1];
2KM6 = IU [1] * (2) [1];
2KM7 = (1) [1] + (5) [1] * IU [1] * C [1];
2KM9 = (1) [1] + C [1] + IU [1] * ((2) [1] + (3) [1] + (4) [1] * IC [1] + (5) [ 1] +6 [1] * IC [1];
5KM1 = (1) [1] + C [1];
5KM2 = (2) [2];
5KM3 = (3) [2];
6KM1 = 4 [2] * IC [2];
6KM2 = (1) [6] + (2) [8] + (3) [6] + C [6];
6KM3 = (5) [4];
6KM4 = (6) [2] * IC [2];
7KM2 = (2) [8] + (3) [6];
7KM3 = (1) [6] + C [6];
1K3 = P3 [1] * (4) [1];
1K4 = P4 [1] * (4) [1];
1K5 = P5 [1] * ((4) [1] + C [1] + (2) [1] * IC [1];
1K6 = I (4) [1] + P6 [1];
1K7 = I (4) [1] + P7 [1];
2K4 = C [1] * P4 [1] + IC [1] * (2) [1];
3K5 = ((4) [1] + C [1]) * P5 [1];
4K4 = C [1] * P4 [1];
5K1 = C [3] * I (4) [3];
5K2 = I (C [3] * I (4) [3];
6K1 = ((5) [3] + (1) [3]) * IC [3] + I (4) [3] * C [3];
7K1 = (1) [5] * IC [5] + I (4) [5] * C [5];
7K2 = (4) [5] * C [5];
8K1 = I (4) [5] * C [5];
8K2 = (1) [5] * IC [5] + (4) [5] * C [5];
9K1- (1) [5] + C [5] * P4 [5] * IP [5];
9K2 = (3) [5] + C [5] * (IP4 [5] + P5 [5]) + (2) [7];
9K4 = (3) [5] + C [5] * P4 [5] * P5 [5] + (2) [7];
9K = C [5] * IP4 [5] * P5 [5];
10K1 = C [5] * P4 [5] * IP5 [5];
10K2 = I (C [5] * P4 [5] * IP5 [5]);
10K4 = C [5] * P4 [5] * P5 [5];
10K5 = (2) [7] + (3) [5] + C [5] * IP4 [5] * P5 [5];
11K0 = C [1] * I (4) [1] * P0 [1];
11K1 = ((3) [1] + C [1]) * P1 [1];
11K2 = ((3) [1] + C [1]) P2 [1];
11K3 = P3 [1] * IC [1] + (4) [1];
11K4 = C [1] * P4 [1];
11K5 = (3) [1] * IC [1] + C [1] + C [1] * P5 [1];
11K6 = P6 [1] + IC [1] + (4) [1];
11K7 = P7 [1] + IC [1] + (4) [1];
12K0 = ((6) [1] + C [1] * I (4) [1] * P0 [1];
12K1 = ((6) [1] + C [1] + (3) [1]) * P1 [1];
12K2 = ((6) [1] + C [1] + (3) [1] * P2 [1];
12K3 = P3 [1] + ((4) [1] + IC [1]) * I (6) [1];
12K4 = ((6) [1] + C [1]) * P4 [1] + (3) [1];
12K5 = ((6) [1] + C [1]) * P5 [1]
12K6 = P6 [1] + ((4) [1] + IC [1]) * I (6) [1];
12K7 = P7 [1] + ((4) [1] + IC [1] * I (6) [1];
13K4 = ((6) [1] + C [1]) * P4 [1];
5LO = C [3] + (1) [3] + (2) [3] + (5) [3];
6LO = C [3] + (1) [3] + (2) [5] + (5) [3] + (3) [3];
6L1 = (2) [5];
7L1 = C [5] + (1) [5];
9LO = (3) [5];
9L1 = (1) [5] + (2) [7] + (3) [5] + C [5];
9L2 = (2) [7];
11L2 = C [1] + (3) [1];
12L2 = C [1] + (3) [1] + (6) [1].
В Булевых функциях использованы следующие обозначения:
"I" обозначает инверсию (например, IU означает инверсию U);
"+" обозначает логическое сложение;
"*" обозначает логическое умножение;
"P0-P7" - разряды кода операции (табл. 3);
"U"- поле команды АП, управляющей выбором второго операнда (Y) для всех операций АП, кроме операции двухточечного преобразования Фурье, где используются три операнда. Если U равно 1 (0), то B поступает по входу 22 (25);
"C" несет информацию о виде используемого контроля. (Если C = 0, то контроль сравнением не используется. В заявке аппаратура и работа узла контроля не описана и для простоты изложения "C" принято равным 0);
(1)=P0*P1*P5*IP6*IP7;
(2)=P0*P1*IP3*IP4*IP5*IP7;
(3)=IP0*P3*IP4*IP6*IP7;
(4)=P0*P1*I(IP3*P4*P5)*I(P3*IP4*IP5)*I(IP6*IP7);
(5)=P0*P1*P4*IP6*IP7;
(6)=I(1)[I(2)*I(3)*I(4)*I(5)*IОТСП,
где ОТСОП=IP0*IP1*IP2;
обозначения типа Z[i] были использованы для описания некоторого сигнала или выражения Z, задержанного на i синхронизирующих тактов, т.е. сигнала Z, прошедшего через цепочку из i последовательно соединенных триггеров, на вход синхронизации каждого из которых подан тактовый сигнал. Применение такого обозначения временных сдвигов позволяет не приводить временные диаграммы работы устройства. В ЭВМ используется синхронная временная диаграмма, которая реализуется с помощью единой системы синхронизации. Как было указано, временные согласования работы АС и коммутаторов обеспечиваются сигналами, поступающими из узла управления 116 АП.The following notation is used in Boolean functions:
“I” means inversion (for example, IU means inversion of U);
"+" stands for logical addition;
"*" stands for logical multiplication;
"P0-P7" - bits of the operation code (table. 3);
"U" is the field of the AP command that controls the choice of the second operand (Y) for all AP operations, except for the two-point Fourier transform operation, where three operands are used. If U is 1 (0), then B enters input 22 (25);
"C" carries information about the type of control used. (If C = 0, then control by comparison is not used. In the application, the equipment and operation of the control unit are not described and for simplicity of presentation “C” is taken to be 0);
(1) = P0 * P1 * P5 * IP6 * IP7;
(2) = P0 * P1 * IP3 * IP4 * IP5 * IP7;
(3) = IP0 * P3 * IP4 * IP6 * IP7;
(4) = P0 * P1 * I (IP3 * P4 * P5) * I (P3 * IP4 * IP5) * I (IP6 * IP7);
(5) = P0 * P1 * P4 * IP6 * IP7;
(6) = I (1) [I (2) * I (3) * I (4) * I (5) * IOTSP,
where OTSOP = IP0 * IP1 * IP2;
designations of type Z [i] were used to describe some signal or expression Z delayed by i clock cycles, i.e. signal Z, passing through a chain of i series-connected triggers, to the synchronization input of each of which a clock signal is supplied. The use of such a designation of time shifts allows you to not give time charts of the device. The computer uses a synchronous timing diagram, which is implemented using a single synchronization system. As it was indicated, the temporary coordination of the operation of the AS and the switches is provided by the signals coming from the
Входящие в состав арифметического процессора АС и КМ могут быть выполнены в виде больших интегральных схем или могут располагаться на одном базовом матричном кристалле (БМК), рассчитанном для размещения до 300.000-500.000 эквивалентных вентилей. The AC and CM included in the arithmetic processor can be made in the form of large integrated circuits or can be located on the same base matrix crystal (BMC), designed to accommodate up to 300,000-500,000 equivalent valves.
АС, в которой реализовано суммирующее устройство (фиг. 13), способна выполнять 9 разновидностей операций сложения/вычитания 32-разрядных операндов X и Y с плавающей запятой. В первом случае, при операциях X + Y, X - Y, Y - X формируется округленная сумма или разность двух этих операндов. Во втором случае, при операциях (X + Y)c и (X + Y)м, а также при операциях (X - Y)c, (X - Y)м и при операциях (Y - X)с, (Y - X)м, формируется результат, являющийся соответственно старшей или младшей частью более точного (в данном случае, приблизительно 64-разрядного) результата (суммы или разности) операции X + Y, X - Y или Y - X, соответственно, чем 32-разрядный результат операции в первом случае. В первом случае (при операциях X + Y, X - Y, Y - X) результат содержит 24-разрядную мантиссу. А во втором случае (при операциях (X + Y)c, (X + Y)м, (X - Y)с, (X - Y)м, (Y -X)c, (Y - X)м) БИС выдает результат в виде старшей или младшей части (с 24-разрядной мантиссой) более точной суммы или разности входных 32-разрядных операндов АС. При операциях с удвоенной разрядностью результат операции АП представляет собой совокупность двух результатов, полученных с двух АС. Поступление операндов на каждое суммирующее устройство должно быть согласовано по времени. Для этого предусмотрены регистры 162 - 167, каждый из которых задерживает операнд на один такт. Управляющие сигналы от узла управления 116, поступающие на входы 198, 199 коммутаторов 168, 169 соответственно выбирают те регистры, с выхода которых операнды через коммутаторы 168, 169 поступают на КЛС 159. На вход 200 КЛС 159 из управления 116 поступает управляющий сигнал, который определяет операцию, выполняемую суммирующим устройством.AS, which implements the summing device (Fig. 13), is capable of performing 9 types of operations of addition / subtraction of 32-bit operands X and Y with floating point. In the first case, during operations X + Y, X - Y, Y - X, a rounded sum or difference of these two operands is formed. In the second case, with operations (X + Y) c and (X + Y) m , as well as with operations (X - Y) c , (X - Y) m and with operations (Y - X) c , (Y - X) m , the result is formed, which is, respectively, the oldest or youngest part of the more accurate (in this case, approximately 64-bit) result (sum or difference) of the operation X + Y, X - Y or Y - X, respectively, than the 32-bit the result of the operation in the first case. In the first case (for operations X + Y, X - Y, Y - X), the result contains a 24-bit mantissa. And in the second case (during operations (X + Y) c , (X + Y) m , (X - Y) s , (X - Y) m , (Y-X) c , (Y - X) m ) LSI produces the result in the form of a higher or a lower part (with a 24-bit mantissa) of a more accurate sum or difference of the input 32-bit operands of the speakers. In operations with double digit capacity, the result of the AP operation is a combination of two results obtained from two speakers. The arrival of operands to each totalizer must be time-coordinated. For this, registers 162 - 167 are provided, each of which delays the operand by one clock cycle. The control signals from the
АС, в которой реализовано множительное устройство (фиг. 12), способна выполнять 3 разновидности операций умножения 32-разрядных операндов X и Y с плавающей запятой. В первом случае при операции X * Y формируется округленное произведение двух указанных операндов, содержащее 24-разрядную мантиссу. Во втором случае при операциях (X * Y)c и (X * Y)м, формируется результат, являющийся соответственно старшей или младшей частью более точного (в данном случае приблизительно 64-разрядного) результата (произведения) операции X * Y, чем 32-разрядный результат операции в первом случае. Сумма результатов операций (X * Y)c и (X * Y)м при одних и тех же сомножителях X и Y равна точному произведению X * Y, кроме некоторых особых случаев, таких, как, например, выход в меньшую сторону порядка результата операции (X * Y)м из диапазона допустимых порядков. На вход 153 КЛС 148 из узла управления 116 поступает управляющий сигнал, который определяет операцию, выполняемую множительным устройством.AS, which implements the multiplying device (Fig. 12), is able to perform 3 varieties of operations of multiplying 32-bit operands X and Y with floating point. In the first case, during operation X * Y, a rounded product of the two indicated operands is formed containing a 24-bit mantissa. In the second case, during operations (X * Y) c and (X * Y) m , a result is formed that is, respectively, the oldest or youngest part of the more accurate (in this case, approximately 64-bit) result (product) of operation X * Y than 32 -digit result of the operation in the first case. The sum of the results of the operations (X * Y) c and (X * Y) m for the same factors X and Y is equal to the exact product X * Y, except for some special cases, such as, for example, going down the order of the result of the operation (X * Y) m from the range of permissible orders. The
В качестве примера в вышеприведенном описании были рассмотрены пять арифметических операций. В реальном устройстве, конечно, число операций, выполняемых АП, значительно больше, причем выполняются также и логические операции. Эти операции как более простые выполняются описанной аппаратурой без затруднений. As an example, five arithmetic operations were considered in the above description. In a real device, of course, the number of operations performed by the AP is much larger, and logical operations are also performed. These operations, as simpler, are performed by the described equipment without difficulty.
Предложенное изобретение позволяет за счет выполнения дополнительных операций на одной и той же аппаратуре значительно сократить ее объем и ускорить выполнение операций, а за счет широкого применения однотипных БИС уменьшить их стоимость. The proposed invention allows, by performing additional operations on the same equipment, significantly reduce its volume and speed up operations, and due to the widespread use of the same type of LSIs, reduce their cost.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU95119478A RU2113010C1 (en) | 1995-11-16 | 1995-11-16 | Multiprocessor scalar computer |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU95119478A RU2113010C1 (en) | 1995-11-16 | 1995-11-16 | Multiprocessor scalar computer |
Publications (2)
Publication Number | Publication Date |
---|---|
RU95119478A RU95119478A (en) | 1998-02-20 |
RU2113010C1 true RU2113010C1 (en) | 1998-06-10 |
Family
ID=20173877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU95119478A RU2113010C1 (en) | 1995-11-16 | 1995-11-16 | Multiprocessor scalar computer |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2113010C1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2717965C1 (en) * | 2016-09-30 | 2020-03-27 | Интернэшнл Бизнес Машинз Корпорейшн | Command for multiplication and shift of decimal number |
-
1995
- 1995-11-16 RU RU95119478A patent/RU2113010C1/en not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2717965C1 (en) * | 2016-09-30 | 2020-03-27 | Интернэшнл Бизнес Машинз Корпорейшн | Command for multiplication and shift of decimal number |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US3840861A (en) | Data processing system having an instruction pipeline for concurrently processing a plurality of instructions | |
US5226171A (en) | Parallel vector processing system for individual and broadcast distribution of operands and control information | |
US6061783A (en) | Method and apparatus for manipulation of bit fields directly in a memory source | |
US5995992A (en) | Conditional truncation indicator control for a decimal numeric processor employing result truncation | |
US6260088B1 (en) | Single integrated circuit embodying a risc processor and a digital signal processor | |
US5081573A (en) | Parallel processing system | |
US5802339A (en) | Pipeline throughput via parallel out-of-order execution of adds and moves in a supplemental integer execution unit | |
Lin et al. | The TMS320 family of digital signal processors | |
CA1119731A (en) | Multibus processor for increasing execution speed using a pipeline effect | |
US4713750A (en) | Microprocessor with compact mapped programmable logic array | |
JPH0371337A (en) | Microprocessor circuit | |
JPH0123806B2 (en) | ||
US3675214A (en) | Processor servicing external devices, real and simulated | |
US5251321A (en) | Binary to binary coded decimal and binary coded decimal to binary conversion in a VLSI central processing unit | |
US3999052A (en) | Upper bounds address checking system for providing storage protection for a digital data processor | |
Morse et al. | The Intel 8086 Microprocessor: a 16-bit Evolution of the 8080 | |
JPH04363736A (en) | Information processor | |
US3919534A (en) | Data processing system | |
EP3716050B1 (en) | Using fuzzy-jbit location of floating-point multiply-accumulate results | |
RU2113010C1 (en) | Multiprocessor scalar computer | |
US3937941A (en) | Method and apparatus for packed BCD sign arithmetic employing a two's complement binary adder | |
Edwards et al. | MU6-G. A new design to achieve mainframe performance from a mini-sized computer | |
KR19980018071A (en) | Single instruction multiple data processing in multimedia signal processor | |
JPS63133270A (en) | Floating point arithmetic processor | |
US4723258A (en) | Counter circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20091117 |