BG60791B1 - Multicomputer system - Google Patents

Multicomputer system Download PDF

Info

Publication number
BG60791B1
BG60791B1 BG97671A BG9767193A BG60791B1 BG 60791 B1 BG60791 B1 BG 60791B1 BG 97671 A BG97671 A BG 97671A BG 9767193 A BG9767193 A BG 9767193A BG 60791 B1 BG60791 B1 BG 60791B1
Authority
BG
Bulgaria
Prior art keywords
register
inputs
outputs
bus
internal
Prior art date
Application number
BG97671A
Other languages
Bulgarian (bg)
Other versions
BG97671A (en
Inventor
Христо Ангелов
Петко ПЕТКОВ
Original Assignee
Христо Ангелов
Петко ПЕТКОВ
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Христо Ангелов, Петко ПЕТКОВ filed Critical Христо Ангелов
Priority to BG97671A priority Critical patent/BG60791B1/en
Publication of BG97671A publication Critical patent/BG97671A/en
Publication of BG60791B1 publication Critical patent/BG60791B1/en

Links

Landscapes

  • Multi Processors (AREA)

Abstract

Мултикомпютърната система е с паралелни физическивръзки между процесорите, поради което се повишава ефективната производителност, като системата функционира в съответствие с изчислителния модел, заложен в езика оссам. Мултикомпютърна система е съставена от главна изчислителна машина (1) и n процесорни елементи (3), свързани към интерфейса (2) на главната машина (1). Процесорните елементи (3) са свързани помежду си чрез съединителна подсистема (5), която се състои от n еднакви комуникационни елементи (6) по един от всеки процесорен елемент (3). Комуникационните елементи (6) са свързани като периферни устройства към интерфейсите (4) на съответните процесорни елементи (3), всеки от които разполага с к паралелни комуникационни връзки (9), състоящи се от паралелен входен канал (7) и паралеленизходен канал (8). Комуникационните връзки (9) на съответните елементи (6) са свързани помежду си, като броят на връзките (9) и начинът на свързванетоим зависят от топологията на мултикомпютърната система, респективно на съединителната мрежа, реализирана от подсистемата (5). Всеки комуникационен елемент (6) се състои от интерфейсен буфер (10), вътрешна шина (4), арбитър на шината (11), к комплекти, съставени от входен fifо-буфер (12), входен канален адаптер (13) и изходен канален адаптер (14), като всеки комплект съответства на отделна комуникационна връзка (9).The multi-computerized system has parallel physical connections between the processors, which raises effective performance, and the system operates in accordance with the computational model set in the language as a whole. A multicomputer system is comprised of a major computing machine (1) and n processor elements (3) connected to the interface (2) of the main machine (1). The process elements (3) are interconnected by means of a connection subsystem (5), which consists of n identical communication elements (6) each of each processor element (3). The communication elements (6) are connected as peripheral devices to the interfaces (4) of the respective processing elements (3), each of which has parallel communication links (9) consisting of a parallel input channel (7) and a parallel output channel ). The communication links (9) of the respective elements (6) are connected to each other, the number of connections (9) and the way of connection depend on the topology of the multi-system or the connective network realized by the subsystem. Each communication element (6) consists of an interface buffer (10), an internal bus (4), a bus arbiter (11), k sets composed of an input fifo buffer (12), an input channel adapter (13) and an output channel adapter (14), each set corresponding to a separate communication link (9).

Description

1. Област на техниката.1. Field of technology.

Изобретението се отнася до мултикомпютърна система.The invention relates to a multicomputer system.

2. Предшестващо състояние на техниката.2. BACKGROUND OF THE INVENTION

^ · г ...^ · R ...

Известни са паралелни изчислителни системи, съставени от еднотипни процесорни елементи, свързани помежду си с помощта на директна съединителна мрежа (interconnection network). В подобни системи процесорните елементиParallel computing systems are known, consisting of the same type of processor elements connected to each other by means of an interconnection network. In such systems, the processor elements

представляват обособени подсистеми, съставени от процесор и оперативна памет, в която се съхраняват програмите и данните, изпълнявани (респ. обработвани) от процесорния елемент. В някои случаи процесорният елемент съдържа допълнителни функционални възли - аритметичен (скаларен) и/или векторен ко-процесор, комуникационен процесор,периферни контролери и пр. По силата на посочените особености процесорните елементи могат да се разглеждат като самостоятелни компютри, които обаче функционират взаимосвързано в състава на изчислителната система и в контекста на решаваната задача. Ето защо подобни изчислителни системи понякога се означават с термина мултикомпютърни системи” (МКС).are separate subsystems composed of a processor and RAM, which stores programs and data executed (or processed) by the processor element. In some cases, the processor element contains additional functional units - arithmetic (scalar) and / or vector co-processor, communication processor, peripheral controllers, etc. By virtue of these features, the processor elements can be considered as standalone computers, but they function interconnected in the composition of the computing system and in the context of the problem being solved. That is why such computing systems are sometimes referred to as multicomputer systems ”(ISS).

В една мултикомпютърна система решаваната задача се декомпозира на подзадачи (процеси), които се разпределят между процесорните елементи и се изпълняват паралелно с отчитане на съответните логически и информационни Връзки между тях. Подобен механизъм на функциониране се описва адекватно с изчислителния модел , известен под наименованието ВзаимодейстВуваици последователни процеси, който се използува В една или друга форма В повечето от известните МКС. Един от Вариантите на този модел - процеси, ВзаимодейстВуВащи чрез канали е реализиран В езика OCCAM и ВъВ фамилията микропроцесори , т. нар. транспютри, на фирмата Inmos[5].In a multicomputer system, the solved task is decomposed into sub-tasks (processes) that are distributed between the processing elements and executed in parallel, taking into account the corresponding logical and information links between them. Such a mechanism of operation is adequately described by the computational model known as the Interaction Processor sequence, which is used in one form or another in most of the known ISSs. One of the variants of this model - channel-interacting processes is implemented in the OCCAM language and in the family of microprocessors, the so-called transducers, of Inmos [5].

Информационните канали, свързващи разпределените процеси, се реализират с помощта на физическите канали (Връзки), които В съвкупност формират съединителната мрежа на МКС. Структурата на тази подсистема се описва с графThe information channels connecting the distributed processes are realized using the physical channels (Links), which collectively form the ISS interconnecting network. The structure of this subsystem is described by a graph

на връзките , чиито върхове се отъждествяват с процесорните елементи, а дъгитеof the links whose vertices are identified with the processing elements, and the arcs

- със съответните физически връзки. В известните МКС най - широко разпространение са получили няколко вида графи: п-мерен двоичен куб (хиперкуб), едномерни и двумерни решеткоВи.респ. рингови и тороидални структури, двоични дървета и пр., като особено широко приложение намират хиперкубовете поради редица техни предимства, а така също - двумерните решетки и торове [1-4].- with appropriate physical connections. In the known ISS, several types of graphs have become most widespread: n-dimensional binary cube (hypercube), one-dimensional and two-dimensional lattices. ring and toroidal structures, binary trees, etc. Hypercubes are particularly widely used because of their many advantages, as well as two-dimensional lattices and fertilizers [1-4].

Недостатък на известните системи е използуването на последователни физически връзки, което води до силна диспропорция между голямата изчислителна мощност на процесорните елементи (особено, когато те съдържат векторни ко процесори) и сравнително ниската скорост на предаване на данните между тях. ВA disadvantage of known systems is the use of consistent physical links, which results in a strong disproportion between the high processing power of processor elements (especially when they contain vector co-processors) and the relatively low data rate between them. IN

резултат на това ефективната производителност на МКС се намалява - в някои случаи значително - като намалението е толкова по-голямо, колкото по-голям е относителният дял на обменните операции в изпълняваната паралелна програма. Посоченият отрицателен ефект може да бъде намален до известна степен чрез подходящо разполагане на процесите по процесорни елементи, т.е. чрез минимизиране на междупроцесорния трафик и чрез балансиране на изчислителните и обменните операции в процесорните елементи [3], което обаче усложнява значително програмирането на МКС.as a result, the effective productivity of the ISS decreases - in some cases significantly - as the decrease is greater the greater the relative share of exchange operations in the parallel program implemented. The aforementioned negative effect can be reduced to some extent by appropriately positioning the processes along the processor elements, i. by minimizing interprocessor traffic and by balancing compute and exchange operations in processor elements [3], which, however, significantly complicates ISS programming.

Задача на изобретението е да се разработи архитектурата на мулти компютърна система с паралелни физически връзки между процесорните елементи, което би доВело до намаляване на посочените по-еоре недостатъци.It is an object of the invention to develop an architecture for a multi-computer system with parallel physical links between the processing elements, which would reduce the aforementioned disadvantages.

Системата трябва да функционира В съответствие с изчислителния модел, заложенThe system must function In accordance with the computational model laid down

В езика OCCAM с оглед на евентуалната и реализация на базата на транспютърни елементи.In OCCAM language for possible implementation based on transputer elements.

3. Техническа същност на изобретението.3. SUMMARY OF THE INVENTION

Задачата на изобретението се решава с мултикомпютърна система, съставена от главна изчислителна машина и п процесорни елементи, които са свързани към интерфейса на главната машина. Процесорните елементи са свързани помежду си чрез съединителна подсистема, съставена от п еднакви комуникационни елементи - по един за Всеки процесорен елемент, при което комуникационнитеThe object of the invention is solved by a multicomputer system consisting of a main computer and n processor elements that are connected to the interface of the main machine. The processor elements are connected to each other by a connection subsystem composed of n identical communication elements - one for each processor element, wherein the communication elements

елементи са свързани като периферни устройства към интерфейсите на съответните процесорни елементи.Всеки от комуникационните елементи разполага с к на брой комуникационни Връзки, Всяка от които се състои от паралелен входен канал и паралелен изходен канал. Комуникационните Връзки на съответните елементи са свързани помежду си, като броят на Връзките ( на комуникационния елемент) и начинът на свързване на връзките на съответните елементи се определят от топологията на мултикомпютърната система, примерно хиперкуб, двумерна решетка, тор, бинарно дърво и пр.elements are connected as peripherals to the interfaces of the respective processor elements. Each of the communication elements has a number of communication links, each consisting of a parallel input channel and a parallel output channel. The Communication Links of the respective elements are interconnected, and the number of Links (of the communication element) and the way of connecting the connections of the respective elements are determined by the topology of the multicomputer system, for example, a hypercube, two-dimensional lattice, fertilizer, binary tree, etc.

Комуникационният елемент на свой ред се състои от интерфейсен буфер,The communication element, in turn, consists of an interface buffer,

Вътрешна шина, арбитър на шината, к на брой комплекта, съставени от ВходенInner Bus, Bus Arbitrator, k number of kits made up of Input

FIFO буфер, Входен канален адаптер и изходен канален адаптер, като всеки един комплект съответства на отделна комуникационна връзка. При това паралелниятFIFO Buffer, Input Channel Adapter and Output Channel Adapter, each set corresponding to a separate communication link. In doing so, the parallel

Входен канал на i-mama Връзка е съединен с Входа на i-тия FIFO буфер, чиито изход ма свой ред е свързан към Входа на i-тия Входен канален адаптер. Изходът на i-тия изходен канален адаптер е свързан с паралелния изходен канал на i-mama комуникационна Връзка. Входните и изходни канални адаптери са свързани към Вътрешната шина на комуникационния елемент, достъпът до която се управлява от шинния арбитър. За целта Входовете за заявка (на шината) и изходите за разрешение на арбитъра са съединени със съответните изходи и Входове на каналните адаптери. Линиите на Вътрешната шина са съединени с интерфейсния буфер на комуникационния елемент, а буферът на свой ред е сВързан към интерфейса на съответния процесорен елемент.I-mama Input Channel A connection is connected to the Input of the i-th FIFO buffer whose output is in turn connected to the Input of the i-Input Channel Adapter. The output of the i-th output channel adapter is connected to the parallel output channel of the i-mama communication connection. The input and output channel adapters are connected to the Inner Bus of the communication element, which is accessed by the bus arbitrator. For this purpose the Inputs (on the bus) and the outputs for the permission of the arbitrator are connected to the corresponding outputs and inputs of the channel adapters. The lines on the Inner Bus are connected to the interface buffer of the communication element, and the buffer in turn is connected to the interface of the respective processor element.

Входният канален адаптер се състои от интерфейсни буфери за управляващите сигнали, адресите и данните, Вътрешни шини на управляващите сигнали, адресите и данните, адресен дешифратор, управляващ регистър, управляващ автомат, спомагателен регистър, адресен регистър-брояч, брояч на думите и буферен регистър на данните. Интерфейсните буфери са свързани, от една страна, към съответните Видове линии на Вътрешната шина на комуникационния елемент, а от друга страна към съответните Вътрешни шини наThe input channel adapter consists of interface buffers for control signals, addresses and data, internal buses for control signals, addresses and data, address decoder, control register, automatic teller, slave register, address register counter, word counter and buffer register. the data. The interface buffers are connected, on the one hand, to the respective Line Types of the Internal Bus of the communication element and, on the other, to the respective Internal Bus of the

адаптера. Входовете на адресния регистър, брояча на думите и спомагателния регистър са свързани към Вътрешната шина за данни на адаптера. Изходите на адресния регистър са съединени с Вътрешната адресна шина, а изходите на спомагателния регистър - съответно, с вътрешната шина за данни, изходите на брояча на думите са свързани чрез дешифратор на нулева комбинация към един отadapter. The address register inputs, word counter and slave register are connected to the Inner Data Bus of the adapter. The outputs of the address register are connected to the Internal address bus, and the outputs of the auxiliary register - respectively, to the internal data bus, the outputs of the word counter are connected via a zero combination decoder to one of the

Входовете на управляващия автомат. Входовете на буферния регистър на данните са свързани към изходите на съответния Входен FIFO буфер, а изходите му-къмControl inputs. The inputs of the buffer register are connected to the outputs of the corresponding Input FIFO buffer and its outputs to

Вътрешната шина за данни на адаптера. Част от линиите на тази шина са свързани със съответните входове на управляващия регистър, а останалите му входове са съединени със съответните изходи на управляващия автомат; част от изходите на същия регистър са съединени със съответните линии на Вътрешната управляваща шина, а друга част - със съответните входове на управляващия автомат.Internal adapter data bus. Part of the lines of this bus are connected to the corresponding inputs of the control register, and the rest of its inputs are connected to the corresponding outputs of the control automaton; some of the outputs of the same register are connected to the corresponding lines of the Inner control bar, and the other part to the corresponding inputs of the automatic control.

Останалата част от Входовете и изходите на управляващия автомат са свързани със съответните сигнални линии - за управляващи сигнали и сигнали-логически условия, в контекста на реализирания от автомата алгоритъм за функциониране на входния канален адаптер. Входовете на адресния дешифратор са съединени с вътрешната адресна шина на адаптера и със съответните линии на вътрешната управляваща шина, а изходите му - със съответните входове на управляващия регистър, спомагателния регистър, адресния регистър и брояча на думите, които са програмно достъпни.The rest of the inputs and outputs of the control unit are connected to the corresponding signal lines - for control signals and signal-logic conditions, in the context of the algorithm implemented by the machine for the operation of the input channel adapter. The inputs of the address decoder are connected to the internal address bus of the adapter and to the corresponding lines of the internal control bus, and its outputs to the corresponding inputs of the control register, slave register, address register and word counter, which are programmatically accessible.

Изходният канален адаптер се състои от интерфейсни буфери за управляващите сигнали, адресите и данните, Вътрешни шини на упраВляВащите сигнали, адресите и данните, адресен дешифратор, управляващ регистър, управляващ автомат, спомагателен регистър, адресен регистър-брояч, брояч на думите и буферен регистър на данните. Интерфейсните буфери са свързани, от една страна, към съответните видове линии на вътрешната шина на комуникационния елемент, а от друга страна - към съответните вътрешни шини на адаптера. Входовете на адресния регистър, брояча на думите и спомагателния регистър са свързани към вътрешната шина за данни на адаптера. Изходите наThe output channel adapter consists of interface buffers for control signals, addresses and data, internal buses for control signals, addresses and data, address decoder, control register, control automat, slave register, address register counter, word counter and buffer register. the data. The interface buffers are connected, on the one hand, to the respective line types on the internal bus bar of the communication element and, on the other, to the corresponding internal bus bars of the adapter. The address register inputs, word counter and slave register are connected to the adapter's internal data bus. The exits of

адресния регистър са съединени с вътрешната адресна шина, а изходите на спомагателния регистър - съответно - с вътрешната шина за данни; изходите на брояча на думите са свързани чрез дешифратор на нулева комбинация към един от входовете на управляващия автомат. Входовете на буферния регистър на данните са свързани към вътрешната шина за данни на адптера, а изходите му - към паралелния изходен канал на съответната комуникационна връзка. Част от линиите на шината за данни са свързани със съответните входове на управляващия регистър, а останалите му входове са свързани със съответните изходи на управляващия автомат; част от изходите на същия регистър са съединени със съответните линии на вътрешната управляваща шина, а друга част - съсthe address register is connected to the internal address bus and the outputs of the slave register - respectively - to the internal data bus; the outputs of the word counter are connected via a zero combination decoder to one of the inputs of the control machine. The inputs of the buffer data register are connected to the internal data bus of the adapter and its outputs to the parallel output channel of the respective communication link. Part of the data bus lines are connected to the corresponding inputs of the control register, and the rest of its inputs are connected to the corresponding outputs of the control automaton; some of the outputs of the same register are connected to the corresponding lines of the internal control bar and the other part to

съответните входове на управляващия автомат. Останалата част от входовете и изходите на управляващия автомат са свързани със съответните сигнални линии за управляващи сигнали и сигнали-логически условия, в контекста на реализирания от автомата алгоритъм за функциониране на изходния канален адаптер. Входовете на адресния дешифратор са съединени с вътрешната адресна шина на адаптера и със съответните линии на вътрешната управляваща шина, а изходите му - със съответните входове на управляващия регистър, спомагателния регистър, адресния регистър и брояча на думите, които са програмно-достъпни.the corresponding inputs of the control unit. The rest of the inputs and outputs of the control unit are connected to the corresponding signal lines for control signals and signal-logic conditions, in the context of the algorithm implemented by the machine for the operation of the output channel adapter. The inputs of the address decoder are connected to the internal address bus of the adapter and to the corresponding lines of the internal control bus, and its outputs to the corresponding inputs of the control register, slave register, address register and the word counter, which are programmatically accessible.

Предимствата на предлаганата мултикомпютърна система произтичат от използуването на паралелни връзки между процесорните елементи(ПЕ), което води до премахване на диспропорцията между скоростта на изчисленията в ПЕ и скоростта на предаване на данните между тях. В предлаганата система Времето за обмен на съобщения между два съседни елемента е на порядък по-малко от това В известните системи и е съизмеримо с времетраенето на една машинна инструкция. В резултат на това значително се повишава производителността на системата и значително се облегчава програмирането и, тъй като отпада до голяма степен необходимостта от специални мерки за минимизиране на комуникационния трафик( В смисъла на изискВанията^посочени на стр. 2).The advantages of the proposed multicomputer system stem from the use of parallel connections between the processor elements (PE), which eliminates the disproportion between the speed of the calculations in the PE and the data transfer rate between them. In the proposed system, the messaging time between two adjacent elements is an order of magnitude less than that in known systems and is commensurate with the duration of a machine instruction. As a result, the system's productivity is significantly increased and programming is also much easier, as it eliminates to a large extent the need for special measures to minimize communication traffic (in the sense of the requirements ^ mentioned on page 2).

Архитектурата на предлаганата МКС се основава на изчислителния модел ВзаимодейстВуВащи последователни процеси ( във вида, използван в езикаThe architecture of the proposed ISS is based on the computational model of Interacting sequential processes (as used in the language

OCCAM). Същата се характеризира с относително проста и регулярна структура, което облегчава реализацията и на основата на серийно произвеждани интегрални схеми, В т.ч. и микропроцесори от транспютърната фамилия на фирмата Inmos. В този случай серийните връзки на транспютрите могат да бъдат използвани в качеството на допълнителни (резервни) информационни канали, В/И канали за паралелно Въвеждане/извеждане на данни и пр.OCCAM). It is characterized by a relatively simple and regular structure, which facilitates the implementation on the basis of serially produced integrated circuits, incl. and microprocessors from the Inmos transputer family. In this case, the serial connections of the transducers can be used as additional (backup) information channels, I / O channels for parallel Data Input / Output, etc.

4. Описание на приложените фигури.4. Description of the attached figures.

По-подробно изобретението се пояснява с приложените фигури, където:The invention will be further explained with the accompanying drawings, where:

фиг. 1 илюстрира общата организация на мултикомпютърната система;FIG. 1 illustrates the common organization of a multicomputer system;

фиг. 2 - организацията на съединителната подсистема на МКС;FIG. 2 - the organization of the ISS junction subsystem;

фиг. 3 - топологията на връзките, реализирани В съединителната подсистема, в два разпространени варианта - хиперкуб (фиг. 3-а.)и двумерна решетка, респ. тор (фиг. З-б);FIG. 3 - topology of the connections realized In the connection subsystem, in two common variants - a hypercube (Fig. 3-a.) And a two-dimensional lattice, respectively. tor (Fig. 3b);

фиг. 4 - структурата на комуникационния елемент;FIG. 4 - the structure of the communication element;

фиг. 5 - структурата на входния канален адаптер;FIG. 5 - structure of the input channel adapter;

фие. 6 - структурата на изходния канален адаптер;fie. 6 - structure of the output channel adapter;

фиг. 7 - алгоритъма на функциониране на изходния канален адаптер;FIG. 7 - algorithm of operation of the output channel adapter;

<Ьиг. 8 - алгоритъма на функциониране на входния канален адаптер.<Leg. 8 - the algorithm of operation of the input channel adapter.

5. Примери за изпълнение на изобретението.5. Examples of carrying out the invention.

МултикомпюгЪърната система се състои от глаВна изчислителна машина 1 и п на брой процесорни елемента 3, които са свързани към интерфейса 2 на главната машина 1. Процесорните елементи 3 са свързани помежду си чрез съединителната подсистема 5, съставена от п еднакви комуникационни елемента 6 - по един за всеки процесорен елемент 3,при което комуникационните елементи 6 са свързани като периферни устройства към интерфейсите 4 на съответните процесорни елементиThe multicomputer system consists of a mainframe machine 1 and a number of processor elements 3 that are connected to the interface 2 of the mainframe machine 1. The processor elements 3 are connected to each other by a connection subsystem 5 composed of n identical communication elements 6 - one each for each processor element 3, wherein the communication elements 6 are connected as peripherals to the interfaces 4 of the respective processor elements

3.3.

Всеки от комуникационните елементи 6 разполага с к на брой паралелни комуникационни връзки 9, всяка от които се състои от паралелен входен канал 7 и паралелен изходен канал 8. Комуникационните връзки 9 на съответните елементи 6 са свързани помежду си, като броят на връзките на комуникационния елемент 6 и начинът на свързване на съответните връзки 9 на елементите 6 зависят от топологията на мултикомпютърната система, респ. на съединителната мрежа, реализирана от подсистемата 5. Така например, при двоичния р-мерен куб (фиг. 3-а) к=р = юд2 п, при двумерна решетка, респ. тор (фиг. З-б) к = 4, при двоични дървета к = 3 пр. Ширината на информационния тракт w на входните и изходни паралелни канали на връзките 9 е конструктивен параметър, който се определя както от изискванията за по високо бързодействие, така и от възможностите на използуваната технология за производство и монтаж на схемни модули, разредноста и броя на процесорите, топологията на връзките ипр. В зависимост от посочените фактори ше{8, 16, 32}.Each of the communication elements 6 has a k number of parallel communication links 9, each consisting of a parallel input channel 7 and a parallel output channel 8. The communication links 9 of the respective elements 6 are interconnected, the number of connections of the communication element 6 and the method of connecting the respective connections 9 of the elements 6 depend on the topology of the multicomputer system, respectively. of the coupling network realized by the subsystem 5. For example, for the binary p-dimensional cube (Fig. 3-a) k = p = south 2 n, for a two-dimensional lattice, respectively. fertilizer (Fig. 3b) k = 4, for binary trees k = 3 BC The width of the information path w of the input and output parallel channels of the connections 9 is a design parameter, which is determined by both the requirements for higher speed and and the capabilities of the technology used to produce and install circuit modules, the order and number of processors, the connection topology, etc. Depending on the above factors, {8, 16, 32}.

Комуникационният елемент 6 на свой ред се състои от интерфейсен буфер 10, вътрешна шина 4', арбитър на шината 11, к на брой комплекта, съставени от входен FIFO буфер 12, входен канален адаптер 13 и изходен канален адаптер 14, като всеки един комплект съответствува на отделна комуникационна връзка 9. При това паралелният входен канал 7 на i-mama връзка 9 е съединен с входа на i-тия FIFO буфери 12, чийто изход на свой ред е свързана към входа на i-тия входен канален адаптер 13. Изходът на i-тия изходен канален адаптер 14 е свързан с паралелния изходен канал 8 на i-mama комуникационна връзка 9. Входните и изходни канални адаптери, респ. 13 и 14 са свързани към вътрешната шина 4' на комуникационния елемент 6, достъпът до която се управлява от шинния арбитър 11. За целта входовете за заявка (на шината) и изходите за разрешение на арбитъра 11 са съединени със съответните изходи и входове на каналните адаптери 13 и 14.The communication element 6, in turn, consists of an interface buffer 10, an internal bus 4 ', an arbiter of the bus 11, k number of sets consisting of an input FIFO buffer 12, an input channel adapter 13 and an output channel adapter 14, each set corresponding to a separate communication link 9. The parallel input channel 7 of the i-mama link 9 is connected to the input of the i-th FIFO buffers 12, whose output is in turn connected to the input of the i-th input channel adapter 13. The output of the i-th output channel adapter 14 is connected to the parallel output channel 8 of the i-mama com connection 9. Input and output channel adapters respectively. 13 and 14 are connected to the inner busbar 4 'of the communication element 6, access to which is controlled by the bus arbiter 11. For this purpose, the inputs (on the bus) and the outputs for the permission of the arbiter 11 are connected to the corresponding channel outputs and inputs adapters 13 and 14.

Линиите на вътрешната шина 4’ са съединени с интерфейсния буфер 10 на комуникационния елемент б, а буферът 10 на свой ред е свързан към интерфейса 4 на съответния процесорен елемент 3.The lines on the inner bus 4 'are connected to the interface buffer 10 of the communication element b, and the buffer 10 is in turn connected to the interface 4 of the respective processor element 3.

В така описания комуникационен елемент каналните адаптери могат да бъдат изпълнени като специализирани интегрални схеми ( вж. по-долу). FIFO буферите 12 могат да бъдат реализирани въз основа на серийно произвеждани интегрални схемиFIFO памети. Същите представляват двупортови схеми с асиметричен достъп, допускащ четене, респ. запис от съответните портове под въздействието на съответните управляващи сигнали (R, съответно W). Запаметяващата част на схемата е организирана като цикличен буфер, чиито клетки се адресират с помощтаIn the communication element described as such, the channel adapters can be implemented as specialized integrated circuits (see below). FIFO buffers 12 can be implemented based on commercially produced integrated circuitsFIFO memories. They are two-port asymmetric read-only and / or access schemes. recording from the respective ports under the influence of the respective control signals (R, respectively W). The storage part of the scheme is organized as a cyclic buffer, the cells of which are addressed by

на входен, респ. изходен указател. Указателите се поставят в начално състояние с помощта на съответния сигнал (reset) и в процеса на работа се инкрементират от сигналите R и W при всяко поредно обръщане към съответните портове. Схемата се синхронизира с външните устройства с помощта на флагови сигнали Full (пълен буфер) и Empty (празен буфер).at the entrance, respectively. source directory. The pointers are reset using the corresponding signal (reset) and in the process of operation are incremented by the R and W signals at each successive access to the respective ports. The scheme is synchronized with external devices using the Full and Empty flags.

Арбитърът 11 следва да бъде реализиран по стандартната схема- с независими заявки и въртящи се приоритети (independent-request-rotating-priority arbiter), за да се осигури равномерното обслужване на заявките за достъп до шината от страна на каналните адаптери 13 и 14.The arbiter 11 should be implemented according to the standard independent-request-rotating-priority arbiter scheme, to ensure that the bus access requests of the channel adapters 13 and 14 are evenly served.

Входният канален адаптер 13 се състои от интерфейсни буфери заInput channel adapter 13 consists of interface buffers for

управляващите сигнали 15, адресите 16 и даннитеcontrol signals 15, addresses 16 and data

17, вътрешни шини на управляващите сигнали 18, адресите 19 и данните 20, адресен дешифратор17, control signal internal buses 18, addresses 19 and data 20, address decoder

21, управляващ регистър 22, управляващ автомат 23, спомагателен регистър 24, адресен регистър-брояч 25, брояч на думите 26 и буферен регистър на данните 27. Интерфейсните буфери 15, 16 и 17 са свързани,от една страна, към съответните видове линии на вътрешната шина 4' на комуникационния елемент 6, а от друга страна - към съответните вътрешни шини 18, 19 и 20 на адаптера 13. Входовете на адресния регистър 25, брояча на думите 26 и спомагателния регистър 24 са свързани към вътрешната шина за данни 20 на адаптера 13. Изходите на адресния регистър 25 са съединени с вътрешната адресна шина 19, изходите на спомагателния регистър21, control register 22, control machine 23, slave register 24, address register counter 25, word counter 26 and buffer data register 27. Interface buffers 15, 16 and 17 are connected, on the one hand, to the respective types of line the internal bus 4 'of the communication element 6 and, on the other hand, the corresponding internal buses 18, 19 and 20 of the adapter 13. The inputs of the address register 25, the word counter 26 and the slave register 24 are connected to the internal data bus 20 of adapter 13. The outputs of address register 25 are connected to an internal one and address bar 19, outputs of the slave register

24- съответно с вътрешната шина за данни 20, а изходите на брояча на думите 26 са свързани чрез дешифратор на нулева комбинация ( не е показан на фигурата) към един от входовете на управляващия автомат 23. Входовете на буферния регистър на данните 27 са свързани към изходите на съответния входен FIFO - буфер 12, а изходите му - към вътрешната шина за данни 20 на адаптера 13. Част от линиите на шината 20 са свързани със съответните входове на управляващия регистър 22, а останалите входове на регистъра 22 са съединени със съответните изходи на управляващия автомат 23. Част от изходите на регистъра 22 са съединени със съответните линии на вътрешната управляваща шина 18, а друга част - със съответните входове на управляващия автомат 23. Останалата част от входовете и изходите на управляващия автомат 23 са свързани със съответните сигнални линии - за управляващи сигнали и сигнали-логически условия, в контекста на реализирания от автомата 23 алгоритъм за функциониране на входния канален адаптер 13(вж. по-долу). В същия контекст се обяснява и предназначението на регистрите 22, 24, 25,26 и 27. Входовете на адресния дешифратор 21 са съединени с Вътрешната адресна шина 19 и със съответните линии на вътрешната управляваща шина 18, а изходите му - със съответните входове на управляващия регистър 22,спомагателния регистър 24, адресния регистър 25 и брояча на думите 26, които са програмно достъпни.24, respectively, to the internal data bus 20, and the outputs of the word counter 26 are connected via a zero combination decoder (not shown in the figure) to one of the inputs of the control automaton 23. The inputs of the data buffer register 27 are connected to the outputs of the respective input FIFO buffer 12 and its outputs to the internal data bus 20 of the adapter 13. Part of the bus lines 20 are connected to the respective inputs of the control register 22, and the other inputs of the register 22 are connected to the corresponding outputs of the steering car at 23. Part of the outputs of the register 22 are connected to the respective lines of the internal control bus 18 and the other part to the corresponding inputs of the control automaton 23. The rest of the inputs and outputs of the control automat 23 are connected to the corresponding signal lines - for control signals and signal-logic conditions, in the context of the automaton 23 algorithm for the operation of the input channel adapter 13 (see. below). In the same context, the purpose of the registers 22, 24, 25,26 and 27 is explained. The inputs of the address decoder 21 are connected to the Internal address bar 19 and the corresponding lines of the internal control bus 18, and its outputs to the corresponding inputs of the controller register 22, slave register 24, address register 25, and word counter 26 that are programmatically accessible.

Изходният канален адаптер 14 се състои от интерфейсни буфери за управляващите сигнали 28, адресите 29 и данните 30, вътрешни шини за управляващите сигнали 31, адресите 32 и данните 33, адресен дешифратор 34, управляващ регистър 35, управляващ автомат 36, спомагателен регистър 37, адресен регистър-брояч 38, брояч на думите 39 и буферен регистър на данните 40. Интерфейсните буфери 28, 29 и 30 са свързани,от една страна, към съответните видове линии на вътрешната шина 4' на комуникационния елемент 6, а от друга страна - към съответните вътрешни шини 31, 32 и 33 на адаптера 14. Входовете на адресния регистър 38, брояча на думите 39 и спомагателния регистър 37 са свързани към вътрешната шина за данни 33 на адаптера 14. Изходите на адресния регистър 38 са съединени с вътрешната адресна шина 32, изходите на спомагателния регистърThe output channel adapter 14 consists of interface buffers for control signals 28, addresses 29 and data 30, internal buses for control signals 31, addresses 32 and data 33, address decoder 34, control register 35, control machine 36, slave register 37, address register counter 38, word counter 39 and buffer data register 40. The interface buffers 28, 29 and 30 are connected, on the one hand, to the respective line types on the internal bus 4 'of the communication element 6 and, on the other, to the corresponding internal busbars 31, 32 and 33 of the adapter a 14. The inputs of the address register 38, the word counter 39 and the slave register 37 are connected to the internal data bus 33 of the adapter 14. The outputs of the address register 38 are connected to the internal address bus 32, the outputs of the slave register

37- съответно с вътрешната шина за данни 33, а изходите на брояча на думите 39 са свързани чрез дешифратор на нулева комбинация (не е показан на фигурата) към един от входовете на управляващия автомат 36. Входовете на буферния регистър на данните 40 са свързани към вътрешната шина за данни 33 на адаптера 14, а изходите му -към паралелния изходен канал 8 на съответната комуникационна връзка37- respectively with the internal data bus 33, and the outputs of the word counter 39 are connected via a zero combination decoder (not shown in the figure) to one of the inputs of the control automatic machine 36. The inputs of the data buffer register 40 are connected to the internal data bus 33 of the adapter 14, and its outputs - to the parallel output channel 8 of the respective communication link

9. Част от линиите на шината 33 са свързани със съответните входове на управляващия регистър 35, а останалите входове на регистъра 35 са съединени със съответните изходи на управляващия автомат 36. Част от изходите на регистъра 35 са съединени със съответните линии на вътрешната управляваща шина 31, а друга част - със съответните входове на управляващия автомат 36. Останалата част от входовете и изходите на управляващия автомат 36 са свързани със съответните сигнални линии - за управляващи сигнали и сигнали - логически условия, в контекста на реализирания от автомата 36 алгоритъм за функциониране на изходния канален адаптер 14(вж. по долу). В същия контекст се обяснява и предназначението на регистрите 35, 37, 38, 39 и 40. Входовете на адресния дешифратор 34 са съединени с вътрешната адресна шина 32 и със съответните линии на вътрешната управляваща шина 31, а изходите му - със съответните входове на управляващия регистър 35, спомагателния регистър 37, адресния регистър 38 и брояча на думите 39, които са програмно достъпни.9. Part of the bus lines 33 are connected to the respective inputs of the control register 35, and the other inputs of the register 35 are connected to the corresponding outputs of the control machine 36. Part of the outputs of the register 35 are connected to the corresponding lines of the internal control bus 31 and the other part - with the corresponding inputs of the controller 36. The rest of the inputs and outputs of the controller 36 are connected to the corresponding signal lines - for control signals and signals - logical conditions, in the context of 36, an algorithm for the operation of the output channel adapter 14 (see below). In the same context, the purpose of registers 35, 37, 38, 39 and 40 is explained. The inputs of the address decoder 34 are connected to the internal address bar 32 and the corresponding lines of the internal control bar 31, and its outputs to the corresponding inputs of the controller register 35, slave register 37, address register 38, and word counter 39, which are programmatically accessible.

От направеното описание на изходния канален адаптер 14 се вижда, че в структурно отношение същият е почти идентичен на входния канален адаптер 13, като се изключи предназначението, респ. начина навързване на буферните регистри на данните (27, респ. 40) и структурата на управляващите автомати 23, респ. 36, които реализират различни, макар и симетрични алгоритми (вж. по-долу).From the description of the outlet channel adapter 14, it can be seen that in structural terms it is almost identical to the inlet channel adapter 13, except for the intended purpose, respectively. how the buffer registers of the data (27, respectively 40) are connected and the structure of the control machines 23, respectively. 36 that implement different, albeit symmetric, algorithms (see below).

6. Приложение на изобретението. - ' ’ ,6. Application of the invention. - '',

Функционирането на мултикомпютърната система се определя от заложения в нея изчислителен модел, дефиниран в контекста на езика OCCAM. То се състои в паралелното изпълнение на множество от взаимодействащи изчислителни процеси, разположени в съответните процесорни елементи на мултикомпютърната система. Взаимодействието на процесите се свежда до синхронизиран обмен на съобщения с помощта на механизма на т. нар. симетрично рандеВу [5]. За целта се използуват оператори за предаване респ. за приемане на съобщения от Вида :The functioning of a multicomputer system is determined by the computational model set out in it, defined in the context of the OCCAM language. It consists in the parallel execution of a plurality of interacting computing processes housed in the respective processing elements of a multicomputer system. The interaction of the processes is reduced to a synchronized exchange of messages by the mechanism of the so-called symmetric rendering [5]. For this purpose, operators are used to transmit resp. to receive messages from the Species:

channel! χ , съответно, channel ? у ,channel! χ, respectively, channel? in,

В които се посочва комуникационния канал (channel), чрез който се осъществява комуникацията между процеса-източник (А) и процеса приемник (В). При това, В първия оператор се специфицира променливата χ, х е domain(A), съдържаща съобщението , респ. началния адрес и размера на съответния масив В адресното пространство на процеса А Аналогично, Във Втория оператор се специфицира променливата у, у е domain (В), респ. началния адрес и размера на съответния масив В адресното пространство на процеса В, където се записва приетото съобщение. В частен случай, размерът на съобщението може да бъде нулев, при коетоIndicating the channel through which communication is made between the source process (A) and the receiver process (B). The first operator specifies the variable χ, x is the domain (A) containing the message, respectively. the starting address and the size of the corresponding array In the address space of process A Similarly, the second operator specifies the variable y, y is domain (B), respectively. the starting address and size of the corresponding array B in the address space of process B where the received message is recorded. In the particular case, the message size may be zero, at which

Взаимодействието между процесите А и В се редуцира до Взаимна синхронизация чрез рандеВу.The interaction between processes A and B is reduced to mutual synchronization by rendezvous.

Реализацията на разгледаните по-горе механизми зависи съществено от местоположението на кореспондиращите процеси. Ако същите са разположени В един и същи процесорен елемент (Възел), комуникацията между тях се осъществява по програмен път, а информационният канал се реализира като клетка на оперативната памет, обща за двата процеса[5].The implementation of the mechanisms discussed above depends essentially on the location of the correspondent processes. If they are located in the same processor element (Node), communication between them is accomplished through a programmatic path and the information channel is implemented as a cell of RAM shared by both processes [5].

Когато процесите са разположени В два съседни Възела, Взаимодействието между тях се осъществява с помощта на физически канал, който се поставя В съответствие на логическия канал channel, посочен В операторите за предаване, респ. за приемане на данни, физическият канал се формира чрез свързването на изходния канал 7 с Входния канал 8 на съответните комуникационни Връзки 9 на кореспондиращите възли 3. При това се реализира информационен тракт със следната конфигурация:When the processes are located in two adjacent Nodes, the interaction between them is carried out by means of a physical channel, which is placed in accordance with the logical channel channel indicated in the transmission operators, respectively. for receiving data, the physical channel is formed by connecting the output channel 7 to the Input channel 8 of the respective communication links 9 of the corresponding nodes 3. In this case, an information path is realized with the following configuration:

{ оперативна памет на процесорния елемент 3 -> изходен канален адаптер 14-> паралелен изходен канал 8{източник { паралелен Входен канал .Входен FIFO буфер 12 -4 Входен канален адаптер 13—> оперативна памет на процесорния елемент 3)приемнику чието функциониране се управлява съвместно от каналните адаптери 14 и 13 на процесорните елементи 3, явяващи се съответно източник и приемник на информацията.{Processor RAM 3 -> Output Channel Adapter 14-> Parallel Output Channel 8 {Source {Parallel Input Channel. Input FIFO Buffer 12 -4 Input Channel Adapter 13—> RAM of the Processor Element 3 ) Receiver whose operation is controlled together with the channel adapters 14 and 13 of the processor elements 3, being respectively the source and receiver of the information.

В този случай изпълнението на операторите channel ! х, респ. channel ? у, активирани В процесите А и В (съответно - източник и приемник на съобщенията), протича В следната последователност:In this case, the implementation of the channel! x, resp. channel? y, activated in processes A and B (respectively - source and receiver of messages) proceeds in the following sequence:

1. Иницализират се регистрите на изходния канален адаптер 14, респ. Входния канален адаптер 13. По-конкретно, В адресния регистър 38(25) се зарежда началният адрес на масива х (респ. у), а В брояча на думите 39 (26) се зарежда размерността на х1. The registers of the output channel adapter 14, respectively. Input channel adapter 13. In particular, the start address of the array x (respectively y) is loaded in the address register 38 (25) and the dimension x is loaded in the word counter 39 (26).

(респ. у). В спомагателните регистри 37(24) се зареждат за Временно съхранение указателите се към работните области (workspace pointers) на процесите А респ. В, непосредствено преди тяхното дезактивиране (Вж. т. 3).(resp. y). In the auxiliary registers 37 (24) are loaded for temporary storage the directories to the workspace pointers of the processes A or. C, immediately before they are deactivated (See section 3).

2. Стартират се операциите по предаване, респ. приемане на съобщенията чрез зареждане на съответните кодови комбинации В управляващите регистри 35, респ, 22.2. Transmission operations, respectively. receiving messages by loading the corresponding code combinations In the control registers 35, respectively, 22.

3. Процесите А и В се самоблокират, т.е. преминават В неактивно състояние. От тук нататък управлението на обмена на данните между процесите А и В (респ. между възлите, в които са разположени А и В) се осъществява по схемен път, с помощта на каналните адаптери 14 и 13 и на вградените в тях управляващи3. Processes A and B are self-locking, ie. go offline. From here on, the control of the data exchange between processes A and B (respectively between the nodes in which A and B are located) is effected through a circuit, using the channel adapters 14 and 13 and the controllers integrated therein.

автомати 36 и 23, Последните реализират каналните алгоритми на операторите channel ? х и channel ? у, показани съответно на фиг. фиг. 7 и 8. Споменатите алгоритми са симетрични и следва да се разглеждат във взаимна връзка.vending machines 36 and 23, the latter implement channel algorithms for channel operators? x and channel? y, shown respectively in FIG. FIG. 7 and 8. The algorithms mentioned are symmetric and should be considered in conjunction with each other.

Взаимодействието между каналните адаптери протича на три етапа: 1)The interaction between the channel adapters proceeds in three stages: 1)

Взаимна синхронизация на адаптерите; 2) Обмен на съобщението в режим на пряк достъп до паметта на възела - източник, респ. възела приемник с междинно буфериране на съобщенията във входния FIFO буфер 12 на възела-приемник; 3)Mutual synchronization of adapters; 2) Exchange of the message in the mode of direct access to the memory of the node - source, respectively. a receiver node with intermediate message buffering in the input FIFO buffer 12 of the receiver node; 3)

Сигнализация за края на операцията.End of operation signaling.

Изпълнението на каналните процедури започва при наличието на заявки съответно за предаване на съобщение (Тг=1) и приемане на съобщение (Re = l), формирани в управляващите регистри 35 и 22 на каналните адаптери 14 и 13 при стартирането на операциите за предаване, респ. за приемане. След това се преминава към установяване на готовността за комуникация на отсрещната страна. За целта се изпълняват следните действия:The execution of the channel procedures begins with the presence of requests respectively for the transmission of a message (Tr = 1) and the reception of a message (Re = l) formed in the control registers 35 and 22 of the channel adapters 14 and 13 at the start of the transmission, resp. . for acceptance. It then proceeds to establishing the readiness for communication on the other side. To do this, the following actions are performed:

- В предаващата страна най-напред се изчиства възприетата заявка за предаване (Тг: = 0) и едновременно с това се извършва фиктивен запис на данни във FIFO буфера 12 на приемащата страна (W: = 1). Това автоматично води до нулиране на флага Е (empty), което води до зацикляне на алгоритъма, докато Е = 0, респ. до изчакване на потвърждение от отсрещната страна (Е = 1).- The receiving party first clears the received transmission request (Tr: = 0) and simultaneously fictitiously records data in the receiving party's FIFO buffer 12 (W: = 1). This automatically causes the flag E (empty) to be reset, which causes the algorithm to loop, while E = 0, respectively. pending confirmation on the opposite side (E = 1).

- В приемащата страна най-напред се изчаква нулирането на сигнала Е, т.е. получаването на сигнал готовност за предаване от отсрещната страна. В- In the host country, the reset of signal E is first waiting, ie. receiving a transmit readiness signal from the opposite side. IN

отговор на този сигнал се нулира заявката за приемане (Re: = 0) и едновременно с това се извършва фиктивно четене от FIFO буфера 12, (R: = 1). Това води до възстановяване единичното значение на флага Е, което се тълкува като сигнал за потвърждение, респ. готовност за приемане.the response to this signal is reset to the receive request (Re: = 0) and at the same time a dummy reading is made from FIFO buffer 12, (R: = 1). This results in the restoration of the single value of flag E, which is interpreted as a confirmation signal, respectively. readiness for acceptance.

По такъв начин се реализира своего рода рандеву между каналните адаптери и 13, което води до тяхната синхронизация непосредствено преди началото на следващия етап( обмен на съобщението).In this way, a kind of rendezvous between the channel adapters and the 13 is realized, which leads to their synchronization just before the next stage begins (message exchange).

Обменът на съобщението започва по един и същи начин в предаващата и в приемащата страна - проверява се началното съдържание на брояча на думите (БД = 0?) и при нулево значение, т.е при обмен на празно съобщение, се преминава към край на процедурата (сигнализиране за края на операцията). В противен случай се формира сигнал за заявяване на магистралата 4’ на съответния комуникационен елемент 6, който се подава към съответния арбитър 11, след което се изчаква разрешението на арбитъра за използуване на магистралата.The message exchange starts in the same way in the transmitting and receiving countries - the initial contents of the word counter (DB = 0?) Are checked and at zero meaning, ie when exchanging a blank message, it goes to the end of the procedure (signaling the end of the operation). Otherwise, a request signal is generated on the highway 4 'of the respective communication element 6, which is fed to the respective arbitrator 11, after which the arbitrator's permission to use the highway is waited.

По-нататък, адаптерите 14 и 13 функционират по различен начин, реализиращи два паралелно-протичащи и комплементарни процеса: 1)Последователно прехвърляне на информационните думи на съобщението от оперативната памет на възела-източник във входния FIFO-буфер 12 на възела-приемник; 2) Последователно прехвърляне на информационните думи от FIFO-буфера 12 в оперативната памет на възела-приемник. При това, двата процеса се изпълняват едновременно и асинхронно, със съвместяване на елементарните операции от вида : Read source mem, Write FIFO; Read FIFO, Write dest mem. Същевременно е предвидена синхронизация, която изключва възможността за неправомерни взаимодействия с FIFO буфера 12 и поспециално - запис на информация в пълен FIFO буфер, респ. прочитане на информация от празен буфер. За целта се използуват флаговите сигнали F и Е (full и empty), чиито единични (нулеВи) значения блокират(разрешават) достъпа go FIFO буфера 12 от страна на адаптерите 14 и 13 на предаващата, съответно на приемащата страна.Further, adapters 14 and 13 function differently, realizing two parallel-flowing and complementary processes: 1) Sequential transfer of message words from the memory of the source node to the input FIFO buffer 12 of the receiver node; 2) Sequential transfer of the information words from the FIFO buffer 12 to the host node RAM. Moreover, both processes are executed simultaneously and asynchronously, with the combination of elementary operations of the type: Read source mem, Write FIFO; Read FIFO, Write dest mem. At the same time, synchronization is foreseen, which excludes the possibility of improper interactions with FIFO buffer 12 and, in particular, the recording of information in full FIFO buffer, respectively. read information from an empty buffer. For this purpose, flags F and E (full and empty) are used, whose single (zero) values block (allow) access to the FIFO buffer 12 by the adapters 14 and 13 of the transmitter or receiver, respectively.

При това е предвидена логика, реализирана с помощта на допълнителния признак (означен с А и в двата алгоритъма), която дава възможност за освобождаване на магистралата 4’ за времето през което адаптерът 14 (респ. 13) се намира в състояние на изчакване, докато буферът 12 е все още пълен (F = 1), респ. празен (Е = 1).In this case, logic is implemented using the additional feature (denoted by A in both algorithms), which enables the motorway 4 'to be released during the time that the adapter 14 (respectively 13) is in the standby state until buffer 12 is still full (F = 1), respectively. blank (E = 1).

Прехвърлянето на данни от оперативната памет на възела-източник във FIFO-буфера 12 и съответно - от FIFO-буфера 12 в паметта на възела-приемник - се осъществява с помощта на на буферните регистри на данните 40(27), адресните регистри - броячи 38(35)и броячите на думите 39 (26) на съответната двойка адаптери 14 и 13,съгласно алгоритмите, показани на фиг. фиг. 7 и 8. Същите са оптимизирани по бързодействие чрез подходящо групиране и съвместяване на микрооперациите, включени в цикличните участъци. Това обаче налага адресният регистър 25 да се инициализира с началния адрес на масива приемник, намален с 1.The transfer of data from the RAM to the source node in the FIFO buffer 12 and accordingly - from the FIFO buffer 12 to the memory of the host node - is carried out by means of the data buffers 40 (27), address registers - counters 38 (35) and word counters 39 (26) of the respective adapter pair 14 and 13, according to the algorithms shown in FIG. FIG. 7 and 8. They are optimized for performance by appropriately grouping and reconciling the micro-operations included in the cyclic sections. However, this requires that the address register 25 be initialized with the starting address of the receiver array, reduced by 1.

Прехвърлянето на съобщението завършва с нулирането на брояча на думите 39(26), след което взаимодействуващите канални адаптери 14 и 13 освобождават системните магистрали 4' В съответните комуникационни елементи 6.The message transfer ends with resetting the word counter 39 (26), after which the interacting channel adapters 14 and 13 release the system highways 4 'into the respective communication elements 6.

И при двата адаптера каналната процедура завършва със сигнализиране на съответния процесор за настъпване края на операцията. За целта се формира сигнал за прекъсване, чиято обработка се свежда до реактивизиране на съответния процес. Един от начините за това (ако системата е изградена с транспютри) се състои в прочитане на указателя на работното пространство на процеса от спомагателния регистър 37(24) и включването му В списъка на активните процеси на съответния процесор.For both adapters, the channel procedure ends by signaling the respective processor for the end of the operation. For this purpose, an interrupt signal is generated, the processing of which is reduced to the reactivation of the respective process. One way (if the system is built with transplants) is to read the process workspace directory from slave register 37 (24) and include it in the list of active processes of the respective processor.

Направените разглеждания илюстрират функционирането на един информационен канал респ, Взаимодействието между съответната двойка адаптери. В общия случай в системата функционират едновременно и независимо г информационни канала, г < R, където R е общия брой на каналите, определен от топологията на системата. Това е Възможно, Вследствие на разпределеното управление на информационните канали, реализирано чрез управляващите устройства 36 (23) на адаптерите 14(13).Паралелната работа на множество входниThe examinations made illustrate the functioning of one information channel resp., The Interaction between the respective pair of adapters. In the general case, the system operates simultaneously and independently r information channels, r <R, where R is the total number of channels determined by the system topology. This is Possible, Due to the distributed control of the information channels, realized through the control devices 36 (23) of the adapters 14 (13).

и изходни канали, в рамките на един процесорен елемент, може да доведе до конфликти при взаимодействието с оперативната памет на елемента, респ. при използване на магистралата 4 (4*). Същите се разрешават от магистралния арбитърand output channels, in the one processing element, can lead to conflicts in the interaction with RAM of the element, respectively. when using Highway 4 (4 *). These are permitted by the highway arbitrator

11, Включен В състава на комуникационния елемент 6.11, Included In the communication element 6.

Разгледаните механизми осигуряват взаимодействие между процеси, намиращи се в един и същи възел или 8 различни, но съсединени възли. В общия случай реализацията на произволни (по характер) паралелни алгоритми налага да се осигури Възможността за комуникация между изчислителни процеси, разположени В несъседниThe mechanisms considered provide interaction between processes located in the same node or 8 different but adjacent nodes. In general, the implementation of arbitrary (by nature) parallel algorithms requires the ability to communicate between computational processes located in non-adjacent ones.

Възли. В мултикомпютърните системи, използващи изчислителния модел на езикаNodes. In multicomputer systems using the computational model of language

OCCAM, подобно Взаимодействие се реализира по програмен път с помощта на допълнителен комуникационен слой (т. нар. harness), В който се осъществява маршрутизацията на съобщенията.OCCAM, such Interaction is programmatically implemented by means of an additional communication layer (so-called harness) in which message routing takes place.

Claims (4)

Патентни претенцииClaims 1. Мултикомпютърна система, съставена от главна изчислителна машина . и п на брой процесорни елемента , свързани към интерфейса ,на главната машина ч , като процесорните елементи са свързани помежду си чрез съединителна подсистема , характеризираща се с това,че съединителната подсистема (5) се състои от п еднакви комуникационни елемента (6) - по един за Всеки процесорен елемент (3), при което комуникационните елементи (6) са свързани като периферни устройства към интерфейсите (4) на съответните процесорни елементи (3), при това всеки от комуникационните елементи разполага с к на брой паралелни комуникационни Връзки (9), Всяка от които се състои от паралелен Входен канал (7) и паралелен изходен канал (8), а комуникационните Връзки (9) на съответните елементи (6) са свързани помежду си, като броят на Връзките (9) на комуникационния елемент (6) и начинът на свързване на съответните Връзки (9) на елементите (6) зависят от топологията на мултикомпютърната система, респ. на съединителната мрежа, реализирана от подсистемата (5), напр. хиперкуб, двумерна решетка (тор), двоично дърво и пр.1. A multicomputer system consisting of a master computer. and n are the number of processor elements connected to the interface of the main machine h , the processor elements being interconnected by a coupling subsystem, characterized in that the coupling subsystem (5) consists of n identical communication elements (6) one for each processor element (3), wherein the communication elements (6) are connected as peripherals to the interfaces (4) of the respective processor elements (3), each having a number of parallel communication links ( 9), each consisting of a parallel Input channel (7) and a parallel output channel (8), and the Communication Links (9) of the respective elements (6) are interconnected, with the number of Links (9) of the communication element (6) and the method of connecting the respective Connections (9) of the elements (6) depend on the topology of the multicomputer system, respectively. of the interconnector implemented by the subsystem (5), e.g. hypercube, two-dimensional lattice (fertilizer), binary tree, etc. 2. Мултикомпютърна система, съгласно претенция 1, характеризираща се с това, че комуникационният елемент (6) се състои от интерфейсен буфер(Ю), вътрешна шина (4'), арбитър на шината (11), к на брой комплекта, съставени от входен FIFO-буфер (12), входен канален адаптер (13) и изходен канален адаптер (14), като всеки един комплект съответствува на отделна комуникационна връзка (9), при което паралелният входен канал (7) на i-mama Връзка (9) е съединен с Входа на i-тия FIFOбуфер (12), чийто изход на свой ред е свързан към Входа на i-тия Входен канален адаптер (13), а изходът на i-тия изходен канален адаптер 14 е свързан с паралелния изходен канал (8) на i-mama комуникационна връзка (9), входните и изходните канални адаптери, респ. (13 и 14) са свързани към вътрешната шина (4') на комуникационния елемент(б), достъпът до която се управлява от арбитъра (11), като за целта входовете за заявка (на шината) и изходите за разрешение на арбитъра (11) са съединени със съответните изходи и входове на каналните адаптери (13 и 14), линиите на вътрешната шина (4^ са съединени с интерфейсния буфер (10) а последният на свой ред е свързан към интерфейса (4) на съответния процесорен елемент (3).Multicomputer system according to claim 1, characterized in that the communication element (6) consists of an interface buffer (S), an internal bus (4 '), a bus arbiter (11), k of a number of sets consisting of FIFO input buffer (12), input channel adapter (13) and output channel adapter (14), each set corresponding to a separate communication link (9), wherein the parallel input channel (7) of the i-mom Link (9) ) is connected to the Input of the i-th FIFObuffer (12), whose output is in turn connected to the Input of the i-th Input channel adapter (13), and the output n the i-th output channel adapter 14 is connected to the parallel output channel (8) of the i-mama communication link (9), the input and output channel adapters, respectively. (13 and 14) are connected to the inner bus (4 ') of the communication element (b), the access to which is controlled by the arbitrator (11), for this purpose the inputs (request) (bus) and the outputs for the permission of the arbitrator (11) ) are connected to the corresponding outputs and inputs of the channel adapters (13 and 14), the lines on the internal bus (4 ^ are connected to the interface buffer (10) and the latter is in turn connected to the interface (4) of the respective processor element (3). ). 3. Мултикомпютърна система, съгласно претенции 1 и 2, характеризираща се с това, че Входният канален адаптер (13) се състои от интерфейсни буфери за управляващите сигнали (15), адресите (16) и данните (17), Вътрешни шини на управляващите сигнали (18), адресите (19) и данните(20), адресен дешифратор (21), управляваш, регистър (22), управляваш, автомат(23), спомагателен регистър (24), адресен регистър-брояч(25),брояч на думите (26) и буферен регистър на данните(27), при което интерфейсните буфери (15 , 16 и 17) са свързани, от една страна, към съответните видове линии на шината (4') на комуникационния елемент (6), а от друга страна - към съответните вътрешни шини (18 , 19 и 20), входовете на адресния регистър (25), брояча на думите (26) и спомагателния регистър (24) са свързани към вътрешната шина за данни(20), изходите на адресния регистър (25) са съединени с вътрешната адресна шина (19), а изходите на спомагателния регистър (24)- съответно, с вътрешната шина за данни (20), изходите на брояча на думите (26) са свързани чрез дешифратор на нулева комбинация (не е показан на чертежа) към един от входовете на управляващия автомат(23), входовете на буферния регистър на данните (27) са свързани към изходите на съответния входен FIFO-буфер (12), а изходите му - към вътрешната шина за данни (20), част от линиите на шината (20) са свързани със съответните входове на управляващия регистър (22), а останалите входове на регистъра (22) са съединени със съответните изходи на управляващия автомат (23), част от изходите на регистъра (22) са съединени със съответните линии на вътрешната управляваща шина (18), а друга част - със съответните входове на управляващия автомат(23), останалата част от входовете и изходите на управляващия автомат(23) са свързани със съответните сигнални линии - за управляващи сигнали и сигнали-логически условия, в контекста на реализирания от автомата (23) алгоритъм за функциониране на входния канален адаптер (13), входовете на адресния дешифратор (21) са съединени с вътрешната адресна шина (19) и със съответните линии на вътрешната управляваща шина(18), а изходите му със съответните входове на управляващия регистър (22),спомагателния регистър (24), адресния регистър (25) и брояча на думите (26), които са програмно достъпни.Multicomputer system according to claims 1 and 2, characterized in that the input channel adapter (13) consists of interface buffers for control signals (15), addresses (16) and data (17), internal control bus bars (18), addresses (19) and data (20), address decoder (21), control, register (22), control, machine (23), slave register (24), address register counter (25), counter words (26) and a data buffer (27), wherein the interface buffers (15, 16 and 17) are connected, on the one hand, to the respective types of bus lines ( 4 ') of the communication element (6) and, on the other hand, to the corresponding internal buses (18, 19 and 20), the inputs of the address register (25), the word counter (26) and the auxiliary register (24) are connected to the internal data bus (20), the outputs of the address register (25) are connected to the internal address bus (19), and the outputs of the slave register (24), respectively, to the internal data bus (20), the outputs of the word counter (26) are connected via a zero combination decoder (not shown in the drawing) to one of the inputs of the control machine (23), the inputs b the data register (27) is connected to the outputs of the corresponding input FIFO buffer (12) and its outputs to the internal data bus (20), part of the bus lines (20) are connected to the corresponding inputs of the control register (22) and the other inputs of the register (22) are connected to the corresponding outputs of the automatic control unit (23), part of the outputs of the register (22) are connected to the corresponding lines of the internal control rail (18) and the other part to the corresponding inputs of the control unit (23), the rest of the inputs and outputs of the the control unit (23) is connected to the corresponding signal lines - for control signals and signal-logic conditions, in the context of the algorithm implemented by the machine (23) for the operation of the input channel adapter (13), the inputs of the address decoder (21) are connected with the internal address bar (19) and the corresponding lines of the internal control bar (18) and its outputs with the corresponding inputs of the control register (22), the slave register (24), the address register (25) and the word counter (26) that are programmatically accessible. 4. Мултикомпютърна система, съгласно претенции 1 и 2, характеризираща се с това че изходният канален адаптер (14) се състои от интерфейсни буфери на управляващите сигнали (28), адресите (29) и данните (30), вътрешни шини за управляващите сигнали (31), адресите (32) и данните(ЗЗ), адресен дешифратор (34), управляващ регистър (35), управляващ автомат (36), спомагателен регистър (37), адресен регистър-брояч (38), брояч на думите (39) и буферен регистър на данните (40), при което интерфейсните буфери (28),(29) и (30) са свързани, от една страна, към съответните видове линии на шината (4') на комуникационния елемент (6), а от друга страна - към съответните вътрешни шини (31 , 32 и 33), входовете на адресния регистър (38), брояча на думите (39) и спомагателния регистър (37) са свързани към Вътрешната шина за данни (33), изходите на адресния регистър (38) са съединени с вътрешната адресна шина (32), изходите на спомагателния регистър (37) - съответно, с Вътрешната шина за данни (33), а изходите на брояча на думите (39) са свързани чрез дешифратор на нулева комбинация (не е показан на чертежа) към един от входовете управляващия автомат (36), входовете на буферния регистър на на данните (40) са свързани към вътрешната шина за данни (33), а изходите му - към паралелния изходен канал (8) на съответната комуникационна връзка (9), част от линиите на шината (33) са свързани със съответните входове на управляващия регистър (35), а останалите входове на регистъра (35) са съединени със съответните изходи на управляващия автомат (36), част от изходите на регистъра (35) са свързани със съответните линии на вътрешната управляваща шина (31), а друга част - със съответните входове на управляващия автомат (36), останалата част от входовете и изходите на управляващия автомат (36) са свързани със съответните сигнални линии-за управляващи сигнали и сигнали-логически условия , В контекста на реализирания от автомата (36) алгоритъм за функциониране на изходния канален адаптер (14), входовете на адресния дешифратор (34) са съединени с вътрешната адресна шина (32) и със съответните линии на вътрешната управляваща шина (31), а изходите му - със съответните входове на управляващия регистър (34), спомагателния регистър (37), адресния регистър (38) и брояча на думите (39), които са програмно-достъпни.Multicomputer system according to claims 1 and 2, characterized in that the output channel adapter (14) consists of interface buffers of the control signals (28), addresses (29) and data (30), internal buses for the control signals ( 31), addresses (32) and data (PZ), address decoder (34), control register (35), automatic control (36), slave register (37), address register counter (38), word counter (39) ) and a buffer data register (40), wherein the interface buffers (28), (29) and (30) are connected, on the one hand, to the respective types of bus lines and (4 ') of the communication element (6) and, on the other hand, to the respective internal buses (31, 32 and 33), the inputs of the address register (38), the word counter (39) and the slave register (37) are connected to the Internal data bus (33), the outputs of the address register (38) are connected to the internal address bus (32), the outputs of the slave register (37) respectively, to the Internal data bus (33), and the outputs of the counter of words (39) are connected via a zero combination decoder (not shown in the drawing) to one of the inputs of the control machine (36), the inputs n the data buffer register (40) is connected to the internal data bus (33) and its outputs to the parallel output channel (8) of the respective communication link (9), part of the bus lines (33) are connected to the corresponding the inputs of the control register (35), and the other inputs of the register (35) are connected to the corresponding outputs of the control automaton (36), some of the outputs of the register (35) are connected to the corresponding lines of the internal control bus (31), and the other part - with the corresponding inputs of the automatic control unit (36), the remaining hours The inputs and outputs of the control unit (36) are connected to the corresponding signal lines-for control signals and signal-logical conditions. In the context of the algorithm implemented by the machine (36) for the operation of the output channel adapter (14), the inputs of the address the decoder (34) is coupled to the internal address bus (32) and the corresponding lines of the internal control bus (31) and its outputs to the corresponding inputs of the control register (34), the slave register (37), the address register (38) and the word counter (39), which are prog multi-accessible.
BG97671A 1993-04-27 1993-04-27 Multicomputer system BG60791B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
BG97671A BG60791B1 (en) 1993-04-27 1993-04-27 Multicomputer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
BG97671A BG60791B1 (en) 1993-04-27 1993-04-27 Multicomputer system

Publications (2)

Publication Number Publication Date
BG97671A BG97671A (en) 1995-01-31
BG60791B1 true BG60791B1 (en) 1996-03-29

Family

ID=3925103

Family Applications (1)

Application Number Title Priority Date Filing Date
BG97671A BG60791B1 (en) 1993-04-27 1993-04-27 Multicomputer system

Country Status (1)

Country Link
BG (1) BG60791B1 (en)

Also Published As

Publication number Publication date
BG97671A (en) 1995-01-31

Similar Documents

Publication Publication Date Title
US5193187A (en) Fast interrupt mechanism for interrupting processors in parallel in a multiprocessor system wherein processors are assigned process ID numbers
CA2170458C (en) Multi-cluster computer system
JP2564805B2 (en) Information processing device
US5210828A (en) Multiprocessing system with interprocessor communications facility
EP0172038B1 (en) Information processor
JPS62189549A (en) Multi-hierachical level multi-processor
JPS58501923A (en) Interface circuit for subsystem controller
Jovanovic et al. An overview of reflective memory systems
US6874049B1 (en) Semaphores with interrupt mechanism
JPS585867A (en) Data transmission method and apparatus
BG60791B1 (en) Multicomputer system
EP0376003A2 (en) Multiprocessing system with interprocessor communications facility
JPS5930292B2 (en) Souchikanketsugohoshiki
JPS5835635A (en) Memory control circuit
JPH0646413B2 (en) Data processing processor
JPH064401A (en) Memory access circuit
JP3704367B2 (en) Switch circuit
JP2699873B2 (en) Bus control circuit
EP1193606B1 (en) Apparatus and method for a host port interface unit in a digital signal processing unit
JP2976700B2 (en) Synchronous control method between processors
JPH0521262B2 (en)
JPS6049464A (en) Inter-processor communication system of multi-processor computer
SU618733A1 (en) Microprocessor for data input-output
JPH02114362A (en) Parallel arithmetic unit
JPH04104355A (en) Multi-processing system