Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АВМиС(лекции).docx
Скачиваний:
6
Добавлен:
25.09.2019
Размер:
2.28 Mб
Скачать

1 Прямые межпроцессорные связи.

  1. Точка-точка.

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

  1. Кольцо

  1. Звезда

Эффективность обмена зависит от канальности коммутатора.

  1. Общая шина

Очень маленькая эффективность.

  1. Гиперкуб 3-ей степени.

2 Через память

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

Управляющий автомат анализирует все управляющие сигналы от каждого канала согласно заданному алгоритму или соединяет одноканальную память с шинами одного канала. Доступ осуществляется в режиме разделения времени.

Еще один вариант решения задачи многопортовой памяти – схема с решетчатыми переключателями.

Че-то там является дешемой тк используются МС одноканальной памяти. Так же является достаточно эффективной, тк каждый процессор может взаимодействовать с отдельной памятью. Легко масштабируемой. Коммутация каналов осуществляется внутри решетчатого переключателя простым сравнением старших раздяров адреса. Все МС имеют одинаковый объем.

Шинная топология с одной общей памятью.

3 Межпроцессорные связи через коммуникационные каналы.

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

В качестве системной шины могу импользоваться интерфейсы

Контроллер прерываний.

Программируемый контроллер прерываний – это устройство отвечающае за возможность последовательной обработки запросов на аппаратное прерывание от разных устройств. Как отдельная микросхема.

1 Инициализация контроллера и конфигурирование прерываний – каждому устройству назначается своя линия запроса прерывания IRQ и свой вектор прерывания. Указатель на адрес его обработки.

2 Программируемый контроллер прерываний (ПКП) при обнаружении одного либо нескольких запросов на своих входах IRQ[i] выдает общий запрос прерывания int поступающий на соответствующий вход.

3 ЦП если флаг IF установлен сохраняет в стеке регистр флагов и адрес возврата, запрещает маскируемые прерывания и формирует сигнал подтверждения прерывания INTA.

4 ПКП осуществляет снова опросы своих линий и определяет номер прерывания (если их несколько, то наиболее приоритетный), посылает его к центральному процессору. ЦП получив номер прерывания вызывает соответствующую процедуру его обработки.

6 ПКП получив код процессора команду завершения обработки прерывания, разрешает прием запросов с линий IRQ0-IRQ7.

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

Сигнал запроса прерывания должен поддерживаться устройством в активном состоянии как минимум до подтверждения сигнала, сигналом INTA, а максимум должен быть снят до получения команды EOI.

Каждый из 8 входов IRQ может быть программно замаскирован, тогда он не будет вызывать общего запроса.

ПКП может работать так же и в режиме опроса со стороны ЦП. Для этого у него имеет 3 8-ми битных регистра.

IRR – регистр запроса прерываний. Биты IRR.0-IRR.7 устанавливаются при поступлении сигнала запроса на соответствующие входы IRQ0-7.

Регистр IRM установкой соответствующего бита можно замаскировать на соответствующий вход.

ISR – регистр обслуживаемого прерывания.

Доступ к этим регистрам осуществляет через обычный цикл шины.

При наличии более 8 устройств:

  1. Каскадирование контроллеров. Обычно используются всего лишь 2 контроллера позволяющие управлять запросами от 16 устройств в/в. И традиционно выход запроса прерывания 1 микроконтроллера подключается именно ко 2 входу.

  2. На современных чипсетах устанавливаются усовершенствованные APIC контроллеры предназначенные для симметричных мультиконтроллерных систем. Система состоит из локальных контроллеров и контроллеров прерываний от устройств в/в.

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

Статический каждый запрос только своему процессору, и его номер указывается. Динамически каждый вход запроса может быть индивидуально запрограммирован с помощью таблицы перенаправления прерывания в/в (любой запрос посылается наимее приоритетному свободному процессу).

Обмен сообщениями между контроллерами APIC осуществляется по локальной шине.

Встроенной чет-там включает 2 вида прерываний:

От локальных внутренних устройств.

От таймера APIC, встроенного в него самого.

От таймера мониторинга производительности.

От термодатчика.

Внутренние ошибки APIC:

Межпроцессорные.

От внешних устройств.

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

Вместе использования традиционного APIC возникает проблема нехватки линий прерываний.