Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
konspekt-s-1-po-29.docx
Скачиваний:
2
Добавлен:
02.09.2019
Размер:
20.33 Mб
Скачать

1.6 Коммутация потоков и данных

В вычислительных системах типа ОКМД используется единственная память программ и несколько модулей памяти данных, устройств обработки и коммутаторов. При этом коммутируется только один поток команд, распределяемый между соответствующими устройствами обработки. Структурная схема системы типа ОКМД с учетом коммутации изображена на рис 11.

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

В вычислительных системах типа МКМД нередко используется общая (например, внешняя вспомогательная) память и несколько процессоров, которые могут иметь индивидуальную память команд и данных. Общая память коммутируется с каждым из процессоров. Для исключения конфликтов могут использоваться несколько копий одной и той же программы. Структурная схема системы типа МКМД с учетом коммутации изображена на рис 12. Здесь каждый. блок обработки содержит процессор с индивидуальной памятью команд и данных и работает в достаточной степени автономно по своей программе. Коммутаторы осуществляют внешние, по отношению к блокам обработки, функции переключения связей между этими блоками и общей памятью и составляют в вместе с ней необязательную часть системы, поскольку может быть организовано непосредственное взаимодействие между блоками обработки без участия общей памяти.

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

При выполнении программы селекторные коммутаторы работают следующим образом. Селекторный коммутатор данного блока обработки подсоединяет к этому блоку (к микропроцессору блока) шины модулей памяти программы или же его индивидуальный модуль памяти данных для обеспечения доступа к содержимому памяти в соответствии со следующим правилом. Если требуется считать или написать слово данных, то коммутатор подключает к микропроцессору нижнюю шину (см. рис. 13), обеспечивая доступ к индивидуальной памяти данных. Бели же осуществляется выборка команды, то коммутатор подключает к микропроцессору шину соответствующего модуля памяти программы. Выбор шины осуществляется при помощи управляющего слова в регистре каждого блока обработки, которое управляет работой селекторного коммутатора. В обычном режиме управляющее слово не изменяется, поскольку блок обработки выполняет команды одного и того же сегмента программы над данными из индивидуального модуля памяти данных. Оно изменяется при переходе к выполнению блоком обработки следующего сегмента программы.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]