Контроллер для связи процессоров с общей магистралью

Иллюстрации

Показать все

Реферат

 

Изобретение относится к вычислительной технике и может быть использовано для построения быстродействующих мультипроцессорных систем с общей магистралью. Целью изобретения является расширение области применения контроллера за счет передачи сообщений от источника к нескольким получателям. Поставленная цель достигается тем, что в контроллер, содержащий регистр передатчика, узел сопряжения, регистр признаков, пять триггеров, регистр приемника, регистр адреса, первую и вторую схемы сравнения, счетчик адреса, шесть элементов И, элемент ИЛИ и усилитель - формирователь, введена третья схема сравнения. 5 ил.

СОЮЗ СОВЕТСНИХ

COLlHAËÈÑÒÈ×ЕСНИХ

РЕСПУБЛИН (gy)S G 06 F 15/16

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

Н А BTOPCHOMV СВИДЕТЕЛЬСТВУ

ГОСУДАРСТВЕННЫЙ НОМИТЕТ

ПО ИЗОБРЕТЕНИЯМ И ОТНРЫТИЯМ

ПРИ ГКНТ СССР (2.1) 4486073/24-24 (22) 23.09.88 (46) 30.06.90. Бюл. ¹ 24 (72) В.П.Цемик, В.А. Мостепанов, А.А. Антипов и В.А. Куц (53) 681.325(088.8) (56) Каган Б.М. и Сташин В.В. Основы проектирования микропроцессорных устройств автоматики, М.: Энергоатомиз,цат, 1987, с. 143"153.

Патент С IA ¹ 4223380, кл. G 06 F 15/16, опублик. 1980 (54) КОНТРОШ1ЕР ДЛЯ СВЯЗИ ПРОЦЕССОРОВ

С ОБЩЕЙ МАГИСТРАЛЬЮ (57) Изобретение относится к вычисли1

Изобретение относится к вычислительной технике и может быть использовано для построения близкодействующих мультипроцессорных систем с обшей магистралью, Целью изобретения является расширение области применения контроллера за счет возможности передачи сообщений от источника к нескольким получателям.

На фиг. 1 приведена структурная схема мультипроцессорной системы, использующей предлагаемый контроллер для связи процессоров с обшей магистралью; на фиг. ?. — функциональная схема передатчика; на фиг. 3 — функциональная схема приемника контролле ра; на Фиг. 4 — функциональная схема узла сопряжения; на фиг. 5 — диаграмма состояний приемника контроллера.

„„SU„„1575197. А 1

2 тельной технике и может быть использовано для построения быстродействующих мультипроцессорных систем с общей магистралью. Целью изобретения является расширение области применения контроллера за счет передачи сообщений от источника к нескольким получателям.

Поставленная цель достигается тем, что в контроллер, содержащий регистр передатчика, узел сопряжения, регистр признаков, пять триггеров, регистр приемника, регистр адреса, первую и вторую схемы сравнения, счетчик адреса, шесть элементов И, элемент ИЛИ и усилитель-формирователь, введена третья схема сравнения, 5 ил. 3 табл.

В мультипроцессорную систему (Лиг.l) входит устройство 1 для обмена информацией, посредством которого взаимодействуют между собой процессоры 2. Устройство l, в свою очередь, содержит некоторое количество контроллеров 3 (по числу процессоров 2), обьединеннмх общей магистралью 4.

Контроллер 3 для связи процессоров с общей магистралью {фиг.2 и 3) содержит узел 5 сопряжения, триггеры

6-10, счетчик ll адреса, схемы 12-14 сравнения, регистр 15 передатчика, регистр 16 признаков, регистр 17 ад- . реса, регистр 18 приемника, элементы

И 19-24, элемент ИЛИ 25, усилительформирователь ?6, первый 27 и второй 28 информационные входы-выходы, вход 29 установки системного адреса, вход-выход 30 признака передачи адре!

5 5197 р вход-выход 31 признака передачи бранных, вход-выход 32 синхронизации, вход-выход 33 подтвержедения переда н, выход 34 запроса прерывания, вход 35 записи, .вход 36 считывания, адресный вход 37, вход 38 установки базового адреса и вход 39 синхронизации.

Узел 5 сопряжения (фиг.4) содержит коммутатор 40, элементы И 41-45, т(риггер 46, схему 47 сравнения, выфтючатель 48, вход 49 установки базового адреса, информационныи выход 50, информационный вход 51, первый 52 и второй 53 адресные входы, выход 54 г(ризнака передачи адреса, выход 55 запроса передачи, выход 56 синхронизации, вход 57 синхронизации, инфор(мационный вход-выход 58, выход 59 уп" 20 ,давления синхронизацией, вход 60 состояния передатчика, вход 61 состоя(ия приемника, выход 62 запроса прерывания, вход 63 записи, вход 64 считыйания, выход 65 признака передачи данных, первый 66 и второй 67 выходы режима чтения, Контроллер может одновременно ðàботать в двух режимах: режиме передачи сообщения и режиме приема сообще" ния.

Рассмотрим работу контроллера применительно к мультипроцессорной системе, содержащей 16 процессоров 2, в

Каждом из которых применена магистраль И 41, подключенная к соответствующему контроллеру 3 устройства 1 для обмена информацией„ Каждому контроллеру 3 на входе 29 устанавливают уникальный системный адрес из ряда 40

0000, 0001, 0010,...,1110, 1111. Кроме того, во всех контроллерах 3, за

Исключением контроллера с системным адресом, например, 1111, выключатели 48 замкнуты, что препятствует передаче в линию синхронизации CW магистрали 4 сигналов синхронизации более, чем от одного процессора ?.

Счетчики 11 адреса в каждом.контроллере 3 имеют коэффициенты пересчета, При включении системы счетики 11 адреса и триггеры 6-10 и 46 сбрасываются в состояние "0" (цепи сброса на фиг.2-4 не показань(). Сигналы синхронизации воздействуя на счетные вхо 55 ды счетчиков ll адреса, синхронно переключают их в состояние, соответствующее одному из всех возможных комбинаций кодов системных адресов контроллеров 3. В каждом контроллере 3 текущее состояние счетчиков 11 адреса сравнивается с кодом системного адреса, установленном на входе 29. так как в каждом из контроллеров код системного адреса уникален по отношению к остальным, то в каждом периоде сигнала синхронизации срабатывает схема 12 сравнения только в одном из контроллеров 3. Именно этот контроллер 3 и получает право передать в магистраль 4 системы одно информационное слово, которое считывается неделимой, минимальной частью сообщения и в дальнейшем называется символом сообщения. Процессоры 2 в рамках рассматриваемой мультипроцессорной системы взаимодействуют посредством сообщений, состоящих из произвольного числа символов. Структура сообщения предполагает, во-первых, что сообщение состоит из двух частей: адресной и информационной; во-вторых, что адресная часть сообщения состоит из символов адресов, т.е. символов, которые при передаче в магистраль 4 системы сопровождаются передачей "1" в линию признака передачи адреса и в младших информационных разрядах содержат адрес контроллера 3, приемник которого является получателем сообщения, причем количество символов в адресной части сообщения соответствует количеству контроллера 3, назначенных получателяии сообщения, в-третьих, что информационная часть сообщения состоит из символов данных, первый из которых численно равен числу символов данных в информационной части сообщения.

Контроллер 3 с точки зрения связанного с ним посредством узла 5 сопряжения процессора 2 может быть представлен в виде некоторого набора регистров ввода-вывода или набора ячеек памяти. Состав и назначение портов (ячеек памяти) приведены в табл.1. В последнем столбце таблицы указаны адреса портов в системе ввода-вывода процессора 2 на основе магистрали И 41 в соответствии с приведенным на фиг. 4 вариантом исполнения узла 5 сопряжения.

В табл.1 указаны значения младших адресных разрядов портов ввода-вывода, старшие разряды АЛ2,...,А, 17 образуют базовый адрес контроллера 3 в системе ввода-вывода процессора 2

1 575197 6 и выбираются посредством установки на входе 49 в узле 5 сопряжения. В табл.2 приведены форматы символа ад, реса сообщения для мультипроцессорной системы, содержащей 16 процессоров 2 и слова состояния контроллера 3.

В табл. 3 приведены форматы слова состояния °

Функционально контроллер 3 может быть представлен в виде двух независимых частей: перецатчика (фиг,2) и приемника (фиг.3,, обеспечивающих возможность одновременно быть источником и получателем сообщений, В режиме передачи сообщения контроллер работает следующим образом.

Предназначенное для переда:.и сообщение хранится в последовательных ячейках памяти процессора 2, опрецеленных при .создании конкретно .о программного обеспечения в качес-ве буфера передачи. По заполнении буфера передачи процессор 2 выполняет операцию записи первого символа сообщения, который всегда долже)) быть символом адреса, в порт символа адреса контроллера 3„

При выполнении данной операции возникнет единица на выходе 55 узла 5 сопряжения, которая записывает значения поступающих с выхода 50 узла сопряжения сигналов, соответствующие содержанию передаваемого символа„ в регистр IS передатчика, нулевое значение сигнала признака передачиданных и единичное значение сигнала признака передачи адреса в регистр 16 признаков, г также устанавливает триггер 6 в состояние "!". С выхода триггера 6 сигнал "1" поступает на вход

60 состояния передатчика. узла сопряжения, свидетельствуя о неготовности передатчика для передачи нового символа сообщения, и ближайшим и) г:уль сом синхронизации записывается в триггер

8, обеспечивая синхронизацию момента активизации передатчика с моментом изменения состояния счетчика ll адреса.

Сигнал "1" с выхода триггера 8 открывает элемент И 19, через который при равенстве выходного кода счетчика адреса и кода системного адреса на входе 29, имеющем место на входах схемы

12 сравнения, единица с выхода послед-, ней разрешает передачу содержимого регистров 15 передатчика и 16 признаков!

О !

SQ тоянии (триггеры 6 и 8 установлены)

1и при каждом срабатывании схемы 12 в магистраль 4 и, поступая на информационный вход триггера 7, подготавливает его переключение в единичное состояние. При этом, если на вход записи нуля триггера 7 с линии подтверждения передачи магистрали 4 через

rr u вход-выход 33 поступает сигнал 0 свидетельствуя о готовности к приему передаваемого символа всеми получателями сообщения, то ближащий импульс синхронизации записывает в триггер 7 единицу с выхода элемента И 19. Единица с выхода триггера 7 сбрасывает триггер 6 в состояние "0". Нуль с выхода триггера 6 ближайшим импульсом синхронизации записывается в триггер

8, перевоця передатчик в неактивное состояние и, воздействуя на вход записи единицы триггера 46, устанавливает его с состояние "1". Нуль с инверсного выхода триггера 46 в качестве сигнала запроса прерывания прерывает выполнение текущей программы процессора 2. При обработке прерывания процессор 2 в качестве обязательной процедуры осуществляет анализ значения сигнала состояния передатчика.

Выполнение команды чтения слова состояния сопровождается возникновением единицы на выходе элемента И 42, сбрасывающей триггер 46 в состояние

"0". Если значенче сигнала состояния передатчика равно нулю, то процессор

2 записывает в порт символа адреса, либо в порт символа данных передатчика очередной символ сообщения. Процессор 2 должен обладать способностью опредслять окончание адресной части сообщения и начало его информационной части, что можно ос1лчествить на программном уровне, например указанием количества символов адреса в адресной части сообщения.

Если при передаче символа сообщения хотя. 6); один из приемников получателей сообщения не готов, то он вырабатывает в линию подтверждения передачи магистрали 4 через вход-вы ход 33 сигнал "!"„ который поступает на вход записи нуля триггера 7, удер- живая его в сброшенном состоянии нг время действия очередного импульса синхронизации и, препятствуя, тем самым сбросу тригтера 6. В результате передатчик останется в активном сос1575197

/сравнения осуществляет повторную передачу символа сообщения, Это происходит до тех пор, пока все приемники получатели сообщения в одном сеан5 се передачи не окажутся готовыми к приему.

Работа контроллера в режиме при-! ема сообщения.

Дпя приема сообщений в контролле ре 3 предназначен приемник (фиг.3). !

Процессор 2 совместно с приемником, контроллера 3 образует получатель

;сообщения. Приемник в контроллере 3

| может находиться в одном из следую- 15 ших трех состояний: ожидание сообщения (A!ME) когда триггеры 9 и 10 :сброшены н состояние "О" и приемник

„доступен для соответствующего ему первого символа адреса, передаваемого 2Q ,От любого источника системы; захват сообщения (TRI%), когда триггер 9 сброшен, триггер 10 установлен в сос тояние "1" и приемник доступен для ,. приема одного символа данных от за- 25, хватившего его источника сообщения ,(от источника первым передававшим в приемник соответствующий символ адреса); блокировка сообщения (DEME), когда триггеры 9 и 10 установлены

;в состояние "1" и регистр 18 приемника занят.

Переходы между состояниями приемника отражены на диаграмме состояний приемника (фиг.5). В состояние

TR lE поскольку триггеры 9 и 10 сброшены, то в регистры адреса 17 и приемника 18 импульсами синхронизации записываются значения соответстненНО выходных сигналОв счетчика ll ap 40 реса и сигналов, поступающих на информационные вход-выход 28, Поскольку запись содержимого счетчика 11 адреса в регистр 17 адреса и переключение счетчика 11 адреса осуществляется одним и тем же сигналом, то обеспечивается гарантированное неравенство кодов на входах схемы 13 сраннения, а следовательно, невосприятие символов данных, передаваемых н магистраль. В то же.. время схема 14 сравнения постоянно сравнивает значения сигналов, поступающих на информационный вход-выход 28 с кодом си< темного адреса на входе 29 контроллера 3, которому принадлежит приемник. Если коды равны, то единица с выхода схемы 14 сравнения открывает элемент

И 24. В магистраль 4 в это время передается признак адреса, о чем свидетельствует поступление на второй вход элемента И 24 единицы с линии признака передачи адреса магистрали.

При этом единица с выхода элемента

И 24 ближайшим импульсом синхронизации записывается в триггер 10, перенодя приемник в состояние ТЮК. При этом единица с выхода триггера 10, во-первых, поступая на входы управления триггера 1О и регистра 17 адреса, запрещает изменение состояния триггера 10 посредством записи информации с его информационного входа. и запись в регистр 17 адреса, фиксируя в нем таким образом содержимое счетчика 1! адреса, при котором передавался принятый символ адреса, во-вторых обеспечивает выработку сигнала неготовности приемника при передаче в магистрали обращенного к нему символа адреса от некоторого другого источника. При этом единица с выхода схемы 14 сравнения открывает элемент И 24, а единица с выхода триггера 10 открывает элемент И 22, В результате единица, поступая с входавыхода 30, через элементы И 24. Л 22 и .ИЛИ 25 придет на вход записи нуля триггера 7 в источнике сообщения и будет препятствовать изменению его состояния, что обусловливает повторную передачу, Таким образом, если приемник находится в состоянии ТИЖ, то никакой источник в системе, кроме источника, системный адрес которого зафиксирован в регистре 17 адреса не может передать ему свое сообщение, т.е. в системе -поддерживается принцип неразрывности сообщений. Источник сообщения, последовательно передавая символы адреса нескольких приемников (получателей), может адресовать сообщения сразу нескольким процессорам 2. При этом уже захваченные приемники никак не будут реагировать на передачу символов адреса от захватившего их источника, поскольку символ адреса сопронождается передачей нуля в линии признака передачи данных, который поступая на вход-выход 31, блокирует передачу единицы на выход элемента И 23, обеспечивая прием каждого симнола данных от захватившего их источника.

Из состояния т. МЕ приемник может перейти лишь н состояние DEME, что

Осуществляется приемом в регистр 18!

575197

10 приемника символа-данных от источника, адрес которого зафиксирован в регистре 17 адреса. В таком случае срабатывает схема 13 сравнения, единица с выхода которой открывает элемент

И 23, и если в линии признака передачи данных имеет место единица, свидетельствующая о передаче в магистрали символа данных, то она через

I элементы И 23 и И 20 записывается в триггер 9. Единица с выхода триггера 9, во-первых блокирует запись в триггер 9 и в регистр 19 приемника, фиксируя в нем информационное значение принятого символа данных, во-вторых открывает элемент И 21, обеспечивая выработку через элементы И 21 и 23 и ИЛИ 25 единицы в линию подтверждения передачи магистрали, свидетельствующую о блокировке приемника, такая ситуация возможна, когда источник сообщения передает очередной символ данных, а регистр 18 приемника еще занят предыдущим символом 25 данных, в-третьих устанавливает триггер 46 узла 5 сопряжения в состояние выработки сигнала запроса прерывания и поступает в соответствующий разряд порта слона состояния контроллера. 30

Если при передаче символа данных от .источника одновременно к нескольким получателям по крайней мере один из них находится в состоянии ПЕЙ, то единица с линии подтверждения передачи магистрали 4 через входы"выходы 33 воздействует на инзертирующие входы элементов И 20, препятствуя приему символа данных, который осуществляется только тогда, когда приемники всех получателей сообщения приняли состояние ТЕМЕ. Из состояния DEME приемник переходит либо в состояние ИТИЕ, когда процессор 2 читает регистр 18 приемника через порт конечного символа сообщения с выработкой на выходах элементов И 45 и 41 единичных значений сигналов, либо в состояние ТИП, когда процессор 2 читает регистр 18 приемника через порт текущего символа сообщения с выработкой единичного значения сигнала на выходе элемента И 45, В первом случае сбрасываются оба триггера 9 и 10 а во втором — только триггер 9.

Формула изобретения

Контроллер дпя связи процессоров с общей магистралью, содержащий регистр передатчика, узел сопряжения, регистр признаков, пять триггеров, регистр приемника, регистр адреса, первую и вторую схемы сравнения, счетчик адреса, шесть элементов И, элемент ИПИ и усилитель-формирова" тель, причем информационный вход регистра передатчика подключен к информационному выходу узла сопряжения, информационный вход-выход узла сопряжения является первым информационным входом-выходом контроллера, выход регистра передатчика соединен с инфор" мационным входом регистра приемника, первым входом первой схемы сравнения и вторым информационным входом-выходом контроллера, выход регистра приемника подключен к информационному входу узла сопряжения, второй вход первой схемы сравнения соединен с первым входом второй схемы сравнения и входом установки системного адреса конт" роллера, второй вход второй схемы сравнения подключен к выходу счетчика адреса и информационному входу регистра адреса, выход которого соединен с первым адресным входом узла сопряже-. ния, выход признака передачи адреса узла сопряжения подключен к Первому информационному входу регистра признаков, первый выход которого соединен с входом-выходом признака передачи адреса контроллера, выход запроса передачи узла сопряжения подключен к входу записи регистра признаков, входу записи регистра передатчика и входу установки в "1" первого триггера, выход первой схемы сравнения соединен с первым входом первого элемента И, выход второй схемы сравнения подключен к первому входу второго элемента И, выход которого соединен с входом управления выходом регистра передатчика, входом управления и выходом регистра признаков, выход синхронизации узла сопряжения подключен к информационному входу усилитель-формирователя, вход синхронизации узла сопряжения является входом синхронизации контроллера, выход управления синхронизацией узла сопряжения соединен с управляющим входом усилителя-формирователя, выход которого подключен к счетному входу счетчика адреса, входу синхронизации регистра адреса, входу синхронизации регистра приемника и входу-выходу синхронизации контроллера, выход!

575i97

Таблица!

Порты ввода (ячейки чтения) Порты вывода (ячейки записи) Адрес порта в системе ввода-вывода магистрали И 41

Разряд

A,Ö О

Разряд

АД 1

Слова состояния (Р А)

Принято символа (с выработкой сигнала) (P С1) . Принято симво.ла (с выработкой сигнала С) (P С1) Символа адреса (PYFA)

Символа данных (РТЮ) первого триггера соединен с входом состояния передатчика узла сопряжения, выход второго триггера подключен к входу состояния приемника узла

Сопряжения и первому входу третьего элемента И, выход запроса прерывания узла сопряжения является выходом

Запроса прерывания контроллера, вход записи узла сопряжения является .входом записи контроллера, вход считываНия узла сопряжения является входом считывания контроллера, второй адресный вход узла сопряжения является адресным входом контроплера, вход установки базового адреса узла сопряя ения является входом установки базоцого адреса контроллера, о т л и— ч а ю шийся тем, что, с целью р асширения области применения контроллера эа счет возможности передачи сообщений от источника к нескольфм получателям, в него введена трет1ья схема сравнения, причем первый вХод третьей схемы сравнения подключен к выходу счетчика адреса, второй вХод третьей схемы сравнения соединен с выходом регистра адреса, выход третьей схемы сравнения подключен к,первому входу четвертого элемен-! тЬ И, второй вход которого соединен с вторым выходом регистра признаков и входом-выходом признака передачи данных контроллера, второй информацИонный вход регистра признаков подключен к выходу признака передачи > д4нных узла сопряжения, второй вход первого элемента И соединен с первым вЫходом регистра признаков, вход записи нуля первого триггера подключен к выходу третьего триггера, вход синхронизации третьего триггера соелинен с входом синхронизации четвертого триггера, входам синхронизации второго триггера, входом синхронизации пятого триггера и счетным входом счетчика адреса, информационный вход четвертого триггера подключен к выходу первого триггера, выход четвертого триггера соединен с вторым входом второго эле1О мента И, информационный вход третьего триггера подключен к выходу второго элемента И., вход записи нуля третьего триггера соединен с выходом элемента ИЛИ, инверсным входом пято15 го элемнта И и: входом-выходом подтверждения передачи контроллера, выход четвертого элемента И подключен к прямому входу пятого элемента И и второму входу третьего элемента И, вы20 ход которого соединен с первым входом элемента ИЛИ, выход пятого элемента И подключен к информационному входу второго триггера, вход управления записью которого соединен с первым входом третьего элемента И и входом управления записью регистра

".ðHåMíèêà, выход первого элемента И подключен к информационному входу пятого триггера и первому входу шестого элемента И, выход которого соединен с вторым входом элемента ЗЛИ второй вход шестого элемента H подключен к выходу пятого триггера, входу управления записью пятого триггера и входу управления записью регистра адреса, вход записи нуля второго триггера соединен с первым выходом режима чтения узла сопряжения, вход записи нуля пятого триггера подключен к второму выходу режима чтения узла сопряжения.

1575197

Таблица 2

ДАТО ДАТ 1 ДАТ2 ДАТ 3 ДАТ4 ДАТ5 ДАТ6 ДАТ 7

А СО А Cl А С2 А СЗ

Адрес контроллера 3 связи, Резервные разряды получателя сообщения

Таблица3 .1АТО ДАТ1 ДАТ2 gATЗ ДАТ4 ДАТ5 ДАТ6 ДАТ7

ATF А С ATFO (ATFl ATF2 АТРЗ

Адрес контроллера 3 связи, источника сообщения

Резервные

1 разряды

° I

1 Порт принятого символа содержит символ сообщения (готовность приемника) О Порт принятого символа пуст (неготовность приемника)

Порты передатчика (символа адреса или символа данных) занят (неготовность передатчика) Порты передатчика свободны (готовность передатчика) !

575197

i 575197

$4TF

44ЯС

4 СЯ0...4

Фтя

РеС ..,4PRF

PurF

IPA

40ЯЯ

4ЯИ

FLP

П4 яяс

Составитель В. Есипов

Редактор Ю. Середа Техред M.Õoäàíè÷ Корректор Э. Лончакова

Заказ 1786

Тираж 570

Подписное

ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР

113035, Москва, Ж вЂ” 35, Раушская наб., д. ч/5

Производственно-издательский комбинат "Патент", r. Ужгород, ул, Гагарина, 101

Рис жк иск

Нанцпьнаю дстаюдка

PPtl8f180A (ЮЮС) 0 08И СИ40ЛП.

ЯЗВИ Ю P8

ggmp щ)МВИЯШ

ОВН СИИ50д0 пины Ф реиспр щтеиноя