BG60791B1 - мултикомпютърна система - Google Patents

мултикомпютърна система 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
English (en)
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/bg
Publication of BG97671A publication Critical patent/BG97671A/bg
Publication of BG60791B1 publication Critical patent/BG60791B1/bg

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).

Description

1. Област на техниката.
Изобретението се отнася до мултикомпютърна система.
2. Предшестващо състояние на техниката.
^ · г ...
Известни са паралелни изчислителни системи, съставени от еднотипни процесорни елементи, свързани помежду си с помощта на директна съединителна мрежа (interconnection network). В подобни системи процесорните елементи
представляват обособени подсистеми, съставени от процесор и оперативна памет, в която се съхраняват програмите и данните, изпълнявани (респ. обработвани) от процесорния елемент. В някои случаи процесорният елемент съдържа допълнителни функционални възли - аритметичен (скаларен) и/или векторен ко-процесор, комуникационен процесор,периферни контролери и пр. По силата на посочените особености процесорните елементи могат да се разглеждат като самостоятелни компютри, които обаче функционират взаимосвързано в състава на изчислителната система и в контекста на решаваната задача. Ето защо подобни изчислителни системи понякога се означават с термина мултикомпютърни системи” (МКС).
В една мултикомпютърна система решаваната задача се декомпозира на подзадачи (процеси), които се разпределят между процесорните елементи и се изпълняват паралелно с отчитане на съответните логически и информационни Връзки между тях. Подобен механизъм на функциониране се описва адекватно с изчислителния модел , известен под наименованието ВзаимодейстВуваици последователни процеси, който се използува В една или друга форма В повечето от известните МКС. Един от Вариантите на този модел - процеси, ВзаимодейстВуВащи чрез канали е реализиран В езика OCCAM и ВъВ фамилията микропроцесори , т. нар. транспютри, на фирмата Inmos[5].
Информационните канали, свързващи разпределените процеси, се реализират с помощта на физическите канали (Връзки), които В съвкупност формират съединителната мрежа на МКС. Структурата на тази подсистема се описва с граф
на връзките , чиито върхове се отъждествяват с процесорните елементи, а дъгите
- със съответните физически връзки. В известните МКС най - широко разпространение са получили няколко вида графи: п-мерен двоичен куб (хиперкуб), едномерни и двумерни решеткоВи.респ. рингови и тороидални структури, двоични дървета и пр., като особено широко приложение намират хиперкубовете поради редица техни предимства, а така също - двумерните решетки и торове [1-4].
Недостатък на известните системи е използуването на последователни физически връзки, което води до силна диспропорция между голямата изчислителна мощност на процесорните елементи (особено, когато те съдържат векторни ко процесори) и сравнително ниската скорост на предаване на данните между тях. В
резултат на това ефективната производителност на МКС се намалява - в някои случаи значително - като намалението е толкова по-голямо, колкото по-голям е относителният дял на обменните операции в изпълняваната паралелна програма. Посоченият отрицателен ефект може да бъде намален до известна степен чрез подходящо разполагане на процесите по процесорни елементи, т.е. чрез минимизиране на междупроцесорния трафик и чрез балансиране на изчислителните и обменните операции в процесорните елементи [3], което обаче усложнява значително програмирането на МКС.
Задача на изобретението е да се разработи архитектурата на мулти компютърна система с паралелни физически връзки между процесорните елементи, което би доВело до намаляване на посочените по-еоре недостатъци.
Системата трябва да функционира В съответствие с изчислителния модел, заложен
В езика OCCAM с оглед на евентуалната и реализация на базата на транспютърни елементи.
3. Техническа същност на изобретението.
Задачата на изобретението се решава с мултикомпютърна система, съставена от главна изчислителна машина и п процесорни елементи, които са свързани към интерфейса на главната машина. Процесорните елементи са свързани помежду си чрез съединителна подсистема, съставена от п еднакви комуникационни елементи - по един за Всеки процесорен елемент, при което комуникационните
елементи са свързани като периферни устройства към интерфейсите на съответните процесорни елементи.Всеки от комуникационните елементи разполага с к на брой комуникационни Връзки, Всяка от които се състои от паралелен входен канал и паралелен изходен канал. Комуникационните Връзки на съответните елементи са свързани помежду си, като броят на Връзките ( на комуникационния елемент) и начинът на свързване на връзките на съответните елементи се определят от топологията на мултикомпютърната система, примерно хиперкуб, двумерна решетка, тор, бинарно дърво и пр.
Комуникационният елемент на свой ред се състои от интерфейсен буфер,
Вътрешна шина, арбитър на шината, к на брой комплекта, съставени от Входен
FIFO буфер, Входен канален адаптер и изходен канален адаптер, като всеки един комплект съответства на отделна комуникационна връзка. При това паралелният
Входен канал на i-mama Връзка е съединен с Входа на i-тия FIFO буфер, чиито изход ма свой ред е свързан към Входа на i-тия Входен канален адаптер. Изходът на i-тия изходен канален адаптер е свързан с паралелния изходен канал на i-mama комуникационна Връзка. Входните и изходни канални адаптери са свързани към Вътрешната шина на комуникационния елемент, достъпът до която се управлява от шинния арбитър. За целта Входовете за заявка (на шината) и изходите за разрешение на арбитъра са съединени със съответните изходи и Входове на каналните адаптери. Линиите на Вътрешната шина са съединени с интерфейсния буфер на комуникационния елемент, а буферът на свой ред е сВързан към интерфейса на съответния процесорен елемент.
Входният канален адаптер се състои от интерфейсни буфери за управляващите сигнали, адресите и данните, Вътрешни шини на управляващите сигнали, адресите и данните, адресен дешифратор, управляващ регистър, управляващ автомат, спомагателен регистър, адресен регистър-брояч, брояч на думите и буферен регистър на данните. Интерфейсните буфери са свързани, от една страна, към съответните Видове линии на Вътрешната шина на комуникационния елемент, а от друга страна към съответните Вътрешни шини на
адаптера. Входовете на адресния регистър, брояча на думите и спомагателния регистър са свързани към Вътрешната шина за данни на адаптера. Изходите на адресния регистър са съединени с Вътрешната адресна шина, а изходите на спомагателния регистър - съответно, с вътрешната шина за данни, изходите на брояча на думите са свързани чрез дешифратор на нулева комбинация към един от
Входовете на управляващия автомат. Входовете на буферния регистър на данните са свързани към изходите на съответния Входен FIFO буфер, а изходите му-към
Вътрешната шина за данни на адаптера. Част от линиите на тази шина са свързани със съответните входове на управляващия регистър, а останалите му входове са съединени със съответните изходи на управляващия автомат; част от изходите на същия регистър са съединени със съответните линии на Вътрешната управляваща шина, а друга част - със съответните входове на управляващия автомат.
Останалата част от Входовете и изходите на управляващия автомат са свързани със съответните сигнални линии - за управляващи сигнали и сигнали-логически условия, в контекста на реализирания от автомата алгоритъм за функциониране на входния канален адаптер. Входовете на адресния дешифратор са съединени с вътрешната адресна шина на адаптера и със съответните линии на вътрешната управляваща шина, а изходите му - със съответните входове на управляващия регистър, спомагателния регистър, адресния регистър и брояча на думите, които са програмно достъпни.
Изходният канален адаптер се състои от интерфейсни буфери за управляващите сигнали, адресите и данните, Вътрешни шини на упраВляВащите сигнали, адресите и данните, адресен дешифратор, управляващ регистър, управляващ автомат, спомагателен регистър, адресен регистър-брояч, брояч на думите и буферен регистър на данните. Интерфейсните буфери са свързани, от една страна, към съответните видове линии на вътрешната шина на комуникационния елемент, а от друга страна - към съответните вътрешни шини на адаптера. Входовете на адресния регистър, брояча на думите и спомагателния регистър са свързани към вътрешната шина за данни на адаптера. Изходите на
адресния регистър са съединени с вътрешната адресна шина, а изходите на спомагателния регистър - съответно - с вътрешната шина за данни; изходите на брояча на думите са свързани чрез дешифратор на нулева комбинация към един от входовете на управляващия автомат. Входовете на буферния регистър на данните са свързани към вътрешната шина за данни на адптера, а изходите му - към паралелния изходен канал на съответната комуникационна връзка. Част от линиите на шината за данни са свързани със съответните входове на управляващия регистър, а останалите му входове са свързани със съответните изходи на управляващия автомат; част от изходите на същия регистър са съединени със съответните линии на вътрешната управляваща шина, а друга част - със
съответните входове на управляващия автомат. Останалата част от входовете и изходите на управляващия автомат са свързани със съответните сигнални линии за управляващи сигнали и сигнали-логически условия, в контекста на реализирания от автомата алгоритъм за функциониране на изходния канален адаптер. Входовете на адресния дешифратор са съединени с вътрешната адресна шина на адаптера и със съответните линии на вътрешната управляваща шина, а изходите му - със съответните входове на управляващия регистър, спомагателния регистър, адресния регистър и брояча на думите, които са програмно-достъпни.
Предимствата на предлаганата мултикомпютърна система произтичат от използуването на паралелни връзки между процесорните елементи(ПЕ), което води до премахване на диспропорцията между скоростта на изчисленията в ПЕ и скоростта на предаване на данните между тях. В предлаганата система Времето за обмен на съобщения между два съседни елемента е на порядък по-малко от това В известните системи и е съизмеримо с времетраенето на една машинна инструкция. В резултат на това значително се повишава производителността на системата и значително се облегчава програмирането и, тъй като отпада до голяма степен необходимостта от специални мерки за минимизиране на комуникационния трафик( В смисъла на изискВанията^посочени на стр. 2).
Архитектурата на предлаганата МКС се основава на изчислителния модел ВзаимодейстВуВащи последователни процеси ( във вида, използван в езика
OCCAM). Същата се характеризира с относително проста и регулярна структура, което облегчава реализацията и на основата на серийно произвеждани интегрални схеми, В т.ч. и микропроцесори от транспютърната фамилия на фирмата Inmos. В този случай серийните връзки на транспютрите могат да бъдат използвани в качеството на допълнителни (резервни) информационни канали, В/И канали за паралелно Въвеждане/извеждане на данни и пр.
4. Описание на приложените фигури.
По-подробно изобретението се пояснява с приложените фигури, където:
фиг. 1 илюстрира общата организация на мултикомпютърната система;
фиг. 2 - организацията на съединителната подсистема на МКС;
фиг. 3 - топологията на връзките, реализирани В съединителната подсистема, в два разпространени варианта - хиперкуб (фиг. 3-а.)и двумерна решетка, респ. тор (фиг. З-б);
фиг. 4 - структурата на комуникационния елемент;
фиг. 5 - структурата на входния канален адаптер;
фие. 6 - структурата на изходния канален адаптер;
фиг. 7 - алгоритъма на функциониране на изходния канален адаптер;
<Ьиг. 8 - алгоритъма на функциониране на входния канален адаптер.
5. Примери за изпълнение на изобретението.
МултикомпюгЪърната система се състои от глаВна изчислителна машина 1 и п на брой процесорни елемента 3, които са свързани към интерфейса 2 на главната машина 1. Процесорните елементи 3 са свързани помежду си чрез съединителната подсистема 5, съставена от п еднакви комуникационни елемента 6 - по един за всеки процесорен елемент 3,при което комуникационните елементи 6 са свързани като периферни устройства към интерфейсите 4 на съответните процесорни елементи
3.
Всеки от комуникационните елементи 6 разполага с к на брой паралелни комуникационни връзки 9, всяка от които се състои от паралелен входен канал 7 и паралелен изходен канал 8. Комуникационните връзки 9 на съответните елементи 6 са свързани помежду си, като броят на връзките на комуникационния елемент 6 и начинът на свързване на съответните връзки 9 на елементите 6 зависят от топологията на мултикомпютърната система, респ. на съединителната мрежа, реализирана от подсистемата 5. Така например, при двоичния р-мерен куб (фиг. 3-а) к=р = юд2 п, при двумерна решетка, респ. тор (фиг. З-б) к = 4, при двоични дървета к = 3 пр. Ширината на информационния тракт w на входните и изходни паралелни канали на връзките 9 е конструктивен параметър, който се определя както от изискванията за по високо бързодействие, така и от възможностите на използуваната технология за производство и монтаж на схемни модули, разредноста и броя на процесорите, топологията на връзките ипр. В зависимост от посочените фактори ше{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.
Линиите на вътрешната шина 4’ са съединени с интерфейсния буфер 10 на комуникационния елемент б, а буферът 10 на свой ред е свързан към интерфейса 4 на съответния процесорен елемент 3.
В така описания комуникационен елемент каналните адаптери могат да бъдат изпълнени като специализирани интегрални схеми ( вж. по-долу). FIFO буферите 12 могат да бъдат реализирани въз основа на серийно произвеждани интегрални схемиFIFO памети. Същите представляват двупортови схеми с асиметричен достъп, допускащ четене, респ. запис от съответните портове под въздействието на съответните управляващи сигнали (R, съответно W). Запаметяващата част на схемата е организирана като цикличен буфер, чиито клетки се адресират с помощта
на входен, респ. изходен указател. Указателите се поставят в начално състояние с помощта на съответния сигнал (reset) и в процеса на работа се инкрементират от сигналите R и W при всяко поредно обръщане към съответните портове. Схемата се синхронизира с външните устройства с помощта на флагови сигнали Full (пълен буфер) и Empty (празен буфер).
Арбитърът 11 следва да бъде реализиран по стандартната схема- с независими заявки и въртящи се приоритети (independent-request-rotating-priority arbiter), за да се осигури равномерното обслужване на заявките за достъп до шината от страна на каналните адаптери 13 и 14.
Входният канален адаптер 13 се състои от интерфейсни буфери за
управляващите сигнали 15, адресите 16 и данните
17, вътрешни шини на управляващите сигнали 18, адресите 19 и данните 20, адресен дешифратор
21, управляващ регистър 22, управляващ автомат 23, спомагателен регистър 24, адресен регистър-брояч 25, брояч на думите 26 и буферен регистър на данните 27. Интерфейсните буфери 15, 16 и 17 са свързани,от една страна, към съответните видове линии на вътрешната шина 4' на комуникационния елемент 6, а от друга страна - към съответните вътрешни шини 18, 19 и 20 на адаптера 13. Входовете на адресния регистър 25, брояча на думите 26 и спомагателния регистър 24 са свързани към вътрешната шина за данни 20 на адаптера 13. Изходите на адресния регистър 25 са съединени с вътрешната адресна шина 19, изходите на спомагателния регистър
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, които са програмно достъпни.
Изходният канален адаптер 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, изходите на спомагателния регистър
37- съответно с вътрешната шина за данни 33, а изходите на брояча на думите 39 са свързани чрез дешифратор на нулева комбинация (не е показан на фигурата) към един от входовете на управляващия автомат 36. Входовете на буферния регистър на данните 40 са свързани към вътрешната шина за данни 33 на адаптера 14, а изходите му -към паралелния изходен канал 8 на съответната комуникационна връзка
9. Част от линиите на шината 33 са свързани със съответните входове на управляващия регистър 35, а останалите входове на регистъра 35 са съединени със съответните изходи на управляващия автомат 36. Част от изходите на регистъра 35 са съединени със съответните линии на вътрешната управляваща шина 31, а друга част - със съответните входове на управляващия автомат 36. Останалата част от входовете и изходите на управляващия автомат 36 са свързани със съответните сигнални линии - за управляващи сигнали и сигнали - логически условия, в контекста на реализирания от автомата 36 алгоритъм за функциониране на изходния канален адаптер 14(вж. по долу). В същия контекст се обяснява и предназначението на регистрите 35, 37, 38, 39 и 40. Входовете на адресния дешифратор 34 са съединени с вътрешната адресна шина 32 и със съответните линии на вътрешната управляваща шина 31, а изходите му - със съответните входове на управляващия регистър 35, спомагателния регистър 37, адресния регистър 38 и брояча на думите 39, които са програмно достъпни.
От направеното описание на изходния канален адаптер 14 се вижда, че в структурно отношение същият е почти идентичен на входния канален адаптер 13, като се изключи предназначението, респ. начина навързване на буферните регистри на данните (27, респ. 40) и структурата на управляващите автомати 23, респ. 36, които реализират различни, макар и симетрични алгоритми (вж. по-долу).
6. Приложение на изобретението. - ' ’ ,
Функционирането на мултикомпютърната система се определя от заложения в нея изчислителен модел, дефиниран в контекста на езика OCCAM. То се състои в паралелното изпълнение на множество от взаимодействащи изчислителни процеси, разположени в съответните процесорни елементи на мултикомпютърната система. Взаимодействието на процесите се свежда до синхронизиран обмен на съобщения с помощта на механизма на т. нар. симетрично рандеВу [5]. За целта се използуват оператори за предаване респ. за приемане на съобщения от Вида :
channel! χ , съответно, channel ? у ,
В които се посочва комуникационния канал (channel), чрез който се осъществява комуникацията между процеса-източник (А) и процеса приемник (В). При това, В първия оператор се специфицира променливата χ, х е domain(A), съдържаща съобщението , респ. началния адрес и размера на съответния масив В адресното пространство на процеса А Аналогично, Във Втория оператор се специфицира променливата у, у е domain (В), респ. началния адрес и размера на съответния масив В адресното пространство на процеса В, където се записва приетото съобщение. В частен случай, размерът на съобщението може да бъде нулев, при което
Взаимодействието между процесите А и В се редуцира до Взаимна синхронизация чрез рандеВу.
Реализацията на разгледаните по-горе механизми зависи съществено от местоположението на кореспондиращите процеси. Ако същите са разположени В един и същи процесорен елемент (Възел), комуникацията между тях се осъществява по програмен път, а информационният канал се реализира като клетка на оперативната памет, обща за двата процеса[5].
Когато процесите са разположени В два съседни Възела, Взаимодействието между тях се осъществява с помощта на физически канал, който се поставя В съответствие на логическия канал channel, посочен В операторите за предаване, респ. за приемане на данни, физическият канал се формира чрез свързването на изходния канал 7 с Входния канал 8 на съответните комуникационни Връзки 9 на кореспондиращите възли 3. При това се реализира информационен тракт със следната конфигурация:
{ оперативна памет на процесорния елемент 3 -> изходен канален адаптер 14-> паралелен изходен канал 8{източник { паралелен Входен канал .Входен FIFO буфер 12 -4 Входен канален адаптер 13—> оперативна памет на процесорния елемент 3)приемнику чието функциониране се управлява съвместно от каналните адаптери 14 и 13 на процесорните елементи 3, явяващи се съответно източник и приемник на информацията.
В този случай изпълнението на операторите channel ! х, респ. channel ? у, активирани В процесите А и В (съответно - източник и приемник на съобщенията), протича В следната последователност:
1. Иницализират се регистрите на изходния канален адаптер 14, респ. Входния канален адаптер 13. По-конкретно, В адресния регистър 38(25) се зарежда началният адрес на масива х (респ. у), а В брояча на думите 39 (26) се зарежда размерността на х
(респ. у). В спомагателните регистри 37(24) се зареждат за Временно съхранение указателите се към работните области (workspace pointers) на процесите А респ. В, непосредствено преди тяхното дезактивиране (Вж. т. 3).
2. Стартират се операциите по предаване, респ. приемане на съобщенията чрез зареждане на съответните кодови комбинации В управляващите регистри 35, респ, 22.
3. Процесите А и В се самоблокират, т.е. преминават В неактивно състояние. От тук нататък управлението на обмена на данните между процесите А и В (респ. между възлите, в които са разположени А и В) се осъществява по схемен път, с помощта на каналните адаптери 14 и 13 и на вградените в тях управляващи
автомати 36 и 23, Последните реализират каналните алгоритми на операторите channel ? х и channel ? у, показани съответно на фиг. фиг. 7 и 8. Споменатите алгоритми са симетрични и следва да се разглеждат във взаимна връзка.
Взаимодействието между каналните адаптери протича на три етапа: 1)
Взаимна синхронизация на адаптерите; 2) Обмен на съобщението в режим на пряк достъп до паметта на възела - източник, респ. възела приемник с междинно буфериране на съобщенията във входния FIFO буфер 12 на възела-приемник; 3)
Сигнализация за края на операцията.
Изпълнението на каналните процедури започва при наличието на заявки съответно за предаване на съобщение (Тг=1) и приемане на съобщение (Re = l), формирани в управляващите регистри 35 и 22 на каналните адаптери 14 и 13 при стартирането на операциите за предаване, респ. за приемане. След това се преминава към установяване на готовността за комуникация на отсрещната страна. За целта се изпълняват следните действия:
- В предаващата страна най-напред се изчиства възприетата заявка за предаване (Тг: = 0) и едновременно с това се извършва фиктивен запис на данни във FIFO буфера 12 на приемащата страна (W: = 1). Това автоматично води до нулиране на флага Е (empty), което води до зацикляне на алгоритъма, докато Е = 0, респ. до изчакване на потвърждение от отсрещната страна (Е = 1).
- В приемащата страна най-напред се изчаква нулирането на сигнала Е, т.е. получаването на сигнал готовност за предаване от отсрещната страна. В
отговор на този сигнал се нулира заявката за приемане (Re: = 0) и едновременно с това се извършва фиктивно четене от FIFO буфера 12, (R: = 1). Това води до възстановяване единичното значение на флага Е, което се тълкува като сигнал за потвърждение, респ. готовност за приемане.
По такъв начин се реализира своего рода рандеву между каналните адаптери и 13, което води до тяхната синхронизация непосредствено преди началото на следващия етап( обмен на съобщението).
Обменът на съобщението започва по един и същи начин в предаващата и в приемащата страна - проверява се началното съдържание на брояча на думите (БД = 0?) и при нулево значение, т.е при обмен на празно съобщение, се преминава към край на процедурата (сигнализиране за края на операцията). В противен случай се формира сигнал за заявяване на магистралата 4’ на съответния комуникационен елемент 6, който се подава към съответния арбитър 11, след което се изчаква разрешението на арбитъра за използуване на магистралата.
По-нататък, адаптерите 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 на предаващата, съответно на приемащата страна.
При това е предвидена логика, реализирана с помощта на допълнителния признак (означен с А и в двата алгоритъма), която дава възможност за освобождаване на магистралата 4’ за времето през което адаптерът 14 (респ. 13) се намира в състояние на изчакване, докато буферът 12 е все още пълен (F = 1), респ. празен (Е = 1).
Прехвърлянето на данни от оперативната памет на възела-източник във FIFO-буфера 12 и съответно - от FIFO-буфера 12 в паметта на възела-приемник - се осъществява с помощта на на буферните регистри на данните 40(27), адресните регистри - броячи 38(35)и броячите на думите 39 (26) на съответната двойка адаптери 14 и 13,съгласно алгоритмите, показани на фиг. фиг. 7 и 8. Същите са оптимизирани по бързодействие чрез подходящо групиране и съвместяване на микрооперациите, включени в цикличните участъци. Това обаче налага адресният регистър 25 да се инициализира с началния адрес на масива приемник, намален с 1.
Прехвърлянето на съобщението завършва с нулирането на брояча на думите 39(26), след което взаимодействуващите канални адаптери 14 и 13 освобождават системните магистрали 4' В съответните комуникационни елементи 6.
И при двата адаптера каналната процедура завършва със сигнализиране на съответния процесор за настъпване края на операцията. За целта се формира сигнал за прекъсване, чиято обработка се свежда до реактивизиране на съответния процес. Един от начините за това (ако системата е изградена с транспютри) се състои в прочитане на указателя на работното пространство на процеса от спомагателния регистър 37(24) и включването му В списъка на активните процеси на съответния процесор.
Направените разглеждания илюстрират функционирането на един информационен канал респ, Взаимодействието между съответната двойка адаптери. В общия случай в системата функционират едновременно и независимо г информационни канала, г < R, където R е общия брой на каналите, определен от топологията на системата. Това е Възможно, Вследствие на разпределеното управление на информационните канали, реализирано чрез управляващите устройства 36 (23) на адаптерите 14(13).Паралелната работа на множество входни
и изходни канали, в рамките на един процесорен елемент, може да доведе до конфликти при взаимодействието с оперативната памет на елемента, респ. при използване на магистралата 4 (4*). Същите се разрешават от магистралния арбитър
11, Включен В състава на комуникационния елемент 6.
Разгледаните механизми осигуряват взаимодействие между процеси, намиращи се в един и същи възел или 8 различни, но съсединени възли. В общия случай реализацията на произволни (по характер) паралелни алгоритми налага да се осигури Възможността за комуникация между изчислителни процеси, разположени В несъседни
Възли. В мултикомпютърните системи, използващи изчислителния модел на езика
OCCAM, подобно Взаимодействие се реализира по програмен път с помощта на допълнителен комуникационен слой (т. нар. harness), В който се осъществява маршрутизацията на съобщенията.

Claims (4)

  1. Патентни претенции
    1. Мултикомпютърна система, съставена от главна изчислителна машина . и п на брой процесорни елемента , свързани към интерфейса ,на главната машина ч , като процесорните елементи са свързани помежду си чрез съединителна подсистема , характеризираща се с това,че съединителната подсистема (5) се състои от п еднакви комуникационни елемента (6) - по един за Всеки процесорен елемент (3), при което комуникационните елементи (6) са свързани като периферни устройства към интерфейсите (4) на съответните процесорни елементи (3), при това всеки от комуникационните елементи разполага с к на брой паралелни комуникационни Връзки (9), Всяка от които се състои от паралелен Входен канал (7) и паралелен изходен канал (8), а комуникационните Връзки (9) на съответните елементи (6) са свързани помежду си, като броят на Връзките (9) на комуникационния елемент (6) и начинът на свързване на съответните Връзки (9) на елементите (6) зависят от топологията на мултикомпютърната система, респ. на съединителната мрежа, реализирана от подсистемата (5), напр. хиперкуб, двумерна решетка (тор), двоично дърво и пр.
  2. 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).
  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), които са програмно достъпни.
  4. 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), които са програмно-достъпни.
BG97671A 1993-04-27 1993-04-27 мултикомпютърна система BG60791B1 (bg)

Priority Applications (1)

Application Number Priority Date Filing Date Title
BG97671A BG60791B1 (bg) 1993-04-27 1993-04-27 мултикомпютърна система

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
BG97671A BG60791B1 (bg) 1993-04-27 1993-04-27 мултикомпютърна система

Publications (2)

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

Family

ID=3925103

Family Applications (1)

Application Number Title Priority Date Filing Date
BG97671A BG60791B1 (bg) 1993-04-27 1993-04-27 мултикомпютърна система

Country Status (1)

Country Link
BG (1) BG60791B1 (bg)

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
JP2564805B2 (ja) 情報処理装置
US5210828A (en) Multiprocessing system with interprocessor communications facility
EP0172038B1 (en) Information processor
JPS62189549A (ja) 多重階層レベルマルチプロセツサ装置
JPS58501923A (ja) サブシステムコントロ−ラのためのインタ−フェイス回路
Jovanovic et al. An overview of reflective memory systems
US6874049B1 (en) Semaphores with interrupt mechanism
JPS585867A (ja) デ−タ伝送方法および装置
BG60791B1 (bg) мултикомпютърна система
EP0376003A2 (en) Multiprocessing system with interprocessor communications facility
JPS5930292B2 (ja) ソウチカンケツゴウホウシキ
JPS5835635A (ja) メモリ制御回路
JPH0646413B2 (ja) デ−タ処理プロセッサ
JPH064401A (ja) メモリアクセス回路
JP3704367B2 (ja) スイッチ回路
JP2699873B2 (ja) バス制御回路
EP1193606B1 (en) Apparatus and method for a host port interface unit in a digital signal processing unit
JP2976700B2 (ja) プロセッサ間同期制御方式
JPH0521262B2 (bg)
EP1193605A2 (en) Apparatus and method for the transfer of signal groups between digital signal processors in a digital signal processing unit
JPS6049464A (ja) マルチプロセッサ計算機におけるプロセッサ間通信方式
SU618733A1 (ru) Микропроцессор дл вводавывода данных
JPH02114362A (ja) 並列演算装置
JP2663417B2 (ja) 記憶回路