Анализ архитектур параллельных вычислительных систем




Скачать 1.11 Mb.
Название Анализ архитектур параллельных вычислительных систем
страница 14/18
Дата публикации 21.05.2014
Размер 1.11 Mb.
Тип Литература
literature-edu.ru > Информатика > Литература
1   ...   10   11   12   13   14   15   16   17   18

2.8.Выполнение системных операций


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

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

Указанные работы требуют включения операционной системы (операционного процессора), для чего должны быть предусмотрены специальные команды передачи управления, в частности, рассмотренные выше команды БПВ2 и В2.

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

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

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

2.9.Устройства потоковой вычислительной системы

2.9.1.Выполнение команд процессором


На процессоре реализован конвейер обработки трехадресных командных слов, состоящий из трех уровней.

Для основной группы команд на первом уровне производится их модификация.

На втором уровне формируются физические адреса вычислителей, базируются адреса ОПД, находятся адреса заявок к памяти в ОЗП.

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

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

На рис. 2.13 представлены основные адресуемые регистры памяти процессора (ПП). Их назначение частично рассматривалось, а более подробно будет рассмотрено при описании алгоритмов выполнения команд. Ниже, чтобы не перегружать схему, рассмотрим последовательно или группами схемы выполнения команд процессором, с учетом распределения работ между уровнями конвейера.



Рис. 2.. Основные адресуемые регистры ПП

Выполнение программы начинается с засылки значения БП на регистр номера команд . Считанные из ПК команды поступают на регистр команд RK. Команды условных переходов блокируют последующее считывание из ПК.

После модификации команды БПУ (рис. 2.14) исполнительный адрес поступает на .



Рис. 2.. Выполнение команд БПУ, БПВ1 и БПВ2

Одновременно с модификацией команды БПВ1 (тот же рисунок) выполняются операции УВС УСВ:=УВС УСВ+1; В:=БП, где УВС  указатель вершины стека (управляющих слов возврата), В  относительный адрес возврата.

Одновременно с модификацией команды БПВ2 (см. рис. 2.14) выполняются операции УВС УСВ:=УВС УСВ+1; В:=БП. Затем управление передается на стандартный вход операционной системы (OS).

Таким образом, команды БПУ и БПВ2 выполняются на одном уровне конвейера, команда БПВ1  на двух уровнях.

На первом уровне конвейера выполнения команды В1 (рис. 2.14) из вершины стека УСВ (по адресу УВС УСВ) выбирается адрес возврата В. Он увеличивается на единицу для того, чтобы без учета базы указывать на следующую команду, с которой необходимо продолжить выполнение программы. На втором уровне конвейера выполнения выполняются операции коррекции указателя вершины стека УВС УСВ:=УВС УСВ1 и базирования для получения окончательного значения номера команды, с которой должно быть продолжено выполнение программы, :=В+(БП).

На первом уровне конвейера выполнения команды В2 (рис. 2.15) из вершины стека базовых регистров (по адресу УВ СБР) выбираются восстанавливаемые значения баз БП и БД. Одновременно из вершины стека УСВ (по адресу УВС УСВ) выбирается адрес возврата В. Выполняется операция В:=(УВС УСВ)+1. На втором уровне конвейера корректируются указатели стеков УВС УСВ:=УВС УСВ1; УВ СБР:=УВ СВР1 и формируется номер команды для продолжения счета после возврата в основную программу, :=В+(БП).

На первом уровне конвейера выполнения команды УП (рис. 2.15) производится модификация. На втором уровне выполнения команды, если =0, т.е. сигнал не поступил, организуется остановка конвейера в ожидании прихода сигнала . Если =1=0, номер команды увеличивается на единицу, :=+1. Если =1=1, выполняется операция :=+(БП). Если =1, то выполняется операция :=0.



Рис. 2.. Выполнение команд В1, В2 и УП

На первом уровне выполнения команды ЦИКЛ (рис. 2.16) производится модификация. Для организации цикла используются три регистра, хранящих элемент цикла: СЦ  счетчик цикла, ГЗЦ  граничное значение цикла,  адрес начала цикла. Если в момент выполнения данной команды (ГЗЦ)0, то формируемый цикл является вложенным. Тогда на втором уровне конвейера производится запись в стек циклов (по адресу УВ СТЦ) текущего значения элемента цикла {СЦ, ГЗЦ, }. Если и (или)  математические адреса вычислителей, они проходят на втором уровне конвейера обработку блоком (см. далее), формирующим физические адреса вычислителей и (или) . Если и (или)  адреса ОПД, блок (см. далее) складывает эти адреса с базой данных БД и вырабатывает адреса и (или) заявок к ОПД в ОЗП. (Как будет видно далее, в действительности эти адреса сообщает ПП).

На третьем уровне конвейера обработки команды при (ГЗЦ)0 выполняется операция УВ СТЦ:=УВ СТЦ+1. Во всех случаях формируется :=+1. Если  число, производится операция СЦ:=; если  число, производится операция ГЗЦ:=; если  адрес модификатора, производится операция СЦ:=(); если  адрес модификатора, производится операция ГЗЦ:=().

На этом же уровне обработки если и (или)  адреса вычислителей, в позиции адресов результатов найденных вычислителей направляются адреса регистров СЦ и (или) ГЗЦ процессора. Если эти адреса  адреса ОПД, то в ОЗП направляются заявки на считывание по адресам и (или) и отправку на регистры СЦ и (или) ГЗЦ соответственно.



Рис. 2.. Выполнение команды ЦИКЛ

Заметим, что обработка команды ЦИКЛ совпадает с обработкой арифметической или логической команды при условии, что устройством, на котором она выполняется, является процессор, а регистрами его буфера  регистры СЦ и ГЗЦ.

На первом уровне конвейера выполнения команды КЦ (рис. 2.17) в случае (ГЗЦ)0 производится операция СЦ:=СЦ+1. Если (ГЗЦ)=0, то это означает, что выполнение рабочей части цикла закончилось раньше, чем в результате коммутации загрузки ГЗЦ (при обработке соответствующей команды ЦИКЛ) эта загрузка произошла. Организуется ожидание  прерывание работы конвейера до загрузки ГЗЦ.


Рис. 2.. Выполнение команд КЦ и ПКЦ

На втором уровне конвейера, при условии СЦГЗЦ, выполняется операция := . Если СЦ=ГЗЦ, то выполняются операции :=+1; ГЗЦ:=0. Если затем УВ СТЦ0, т.е. существует охватывающий цикл, то на третьем уровне конвейера восстанавливается его выполнение:

{СЦ, ГЗЦ, }:=(УВ СТЦ); УВ СТЦ:=УВ СТЦ1.

На первом уровне конвейера выполнения операции ПКЦ (рис. 2.17) в случае (ГЗЦ)=0 производится ожидание загрузки этого регистра, как рассматривалось выше. В противном случае производится модификация. На втором уровне выполняются операции :=+(БП); УВ СТЦ:=УВ СТЦ; ГЗЦ:=0. Если после этого (УВ СТЦ)0, то на третьем уровне конвейера производится загрузка регистров СЦ, ГЗЦ, из вершины СТЦ и уменьшение указателя вершины этого стека на единицу.

Команда загрузки модификаторов (ЗАГ) выполняется (рис. 2.18) на первом уровне конвейера в том случае, если все указанные в ней адреса являются числами или адресами незаблокированных модификаторов.



Рис. 2.. Выполнение команды ЗАГ

Примечание. Так как запись в модификатор может быть выполнена непосредственно процессором лишь при выполнении команды ЗАГ в том случае, если адрес , или является числом или адресом другого модификатора, а в остальных только коммутируется, то при выполнении этой команды устанавливается блокировка дальнейшего считывания из изменяемого модификатора. Блокировка снимается любой последующей записью в модификатор. Чтобы не нарушать регулярности действий при коммутации, целесообразной для основной группы команд, допустим возможность использования адресов вычислителей и ОПД только в первом и втором адресном поле команды.

Если хотя бы один модификатор оказывается заблокированным, организуется ожидание  приостановка конвейера до снятия блокировки этих модификаторов.

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

Команды J+ и J (рис. 2.19) выполняются на первом уровне конвейера в том случае, если все указанные в них адреса являются числами или адресами незаблокированных модификаторов. Если среди адресов имеется хотя бы один адрес заблокированного модификатора, организуется остановка конвейера до снятия блокировки.



Рис. 2.. Выполнение команд J+ и J-

Рассмотренные выше команды отличаются от основного набора команд ПВС порядком обработки. Рассмотрим подробно (рис. 2.20) обработку основного набора команд на каждом уровне конвейера.

На первом уровне конвейера производится модификация  одновременное сложение трех адресов , , с содержимым трех указанных при них модификаторов , , . Для этого (рис. 2.21) каждый модификатор, входящий в состав регистровой памяти (на рисунке ПМ  память модификаторов) имеет выход по записи через коммутатор K на три шины i=1, 2, 3, с каждой из которых связан комбинационной сумматор Входящие в состав коммутатора дешифраторы по адресам модификаторов открывают группы вентилей этих модификаторов для записи в шину i.

Поток команд прерывается при необходимости выполнения условного перехода, если  число, т.е. адрес ПК.

На втором уровне обработки в зависимости от типа адресов , , формируются физические адреса вычислителей по математическим адресам, адреса заявок к памяти в ОЗП по адресам ОПД, производится считывание информации из модификатора, если является адресом модификатора, подготовка записи на вычислитель значения , если оно является кодом-операндом, а также нахождение вычислителя-исполнителя данной команды, если не является адресом вычислителя.



Рис. 2.. Выполнение основного набора команд



Рис. 2.. Модификация адресов

Здесь учтена обработка команд отношения, в которых указан или не указан адрес перехода. Учтена обработка как первого, так и второго командного слова пятиадресной команды УСЛ. Обработка второго слова, характеризующегося отсутствием кода операции ( =0), отличается тем, что используется тот же физический адрес вычислителя-исполнителя, который был сформирован и использовался при анализе предыдущего командного слова. Принято, что число как операнд (непосредственный адрес) может быть указано только по второму адресу команды. Если  число, на втором уровне обработки команды организуется выполнение условного перехода после поступления признаков и .

На третьем уровне конвейера производится рассылка связующей информации, как это видно из рисунка.

Рассмотрим особенности выполнения команды пересылки (рис. 2.22). Если на втором уровне конвейера установлено, что не является адресом вычислителя, то вычислитель-исполнитель данной команды блоком не формируется. Если  адрес вычислителя, то после его обработки блоком формируется соответствующий ему физический адрес вычислителя. Операция пересылки выполняется этим вычислителем, для чего на третьем уровне выполнения команды ему сообщается код операции. Коммутируется отправка пересылаемого значения на место первого операнда вычислителя . На рисунке помечены виды пересылок (вычислительвычислитель, вычислительОП, ОПвычислитель, ОПОП), при которых выполняются блоки.



Рис. 2.. Особенности выполнения команд пересылки.

При обработке групповой операции (рис. 2.23) на первом уровне конвейера прерывается поток команд из ПК. Счетчик групповой операции СГО загружается содержимым модификатора +2. Производится начальная модификация адресов , и настройка последующей модификации с помощью модификаторов +1, +1, +1. При последующем выполнении команды на первом уровне ее обработки производится модификация, уменьшение значения счетчика на единицу и сравнение его содержимого с нулем. При достижении счетчиком групповой операции нулевого значения возобновляется поступление команд из ПК.

Второй и третий уровни выполнения групповой операции совпадают с соответствующими схемами выполнения этих операций (рис. 2.23).



Рис. 2.. Выполнение групповых операций
1   ...   10   11   12   13   14   15   16   17   18

Похожие:

Анализ архитектур параллельных вычислительных систем icon Кафедра автоматизации систем вычислительных комплексов автоматическое...
Формулируются критерии, проводится сравнительный анализ и выбирается один метод для реализации в рамках метода обнаружения уязвимостей....
Анализ архитектур параллельных вычислительных систем icon «Организация эвм» Контрольно курсовая работа «Проектирование вычислительной системы»
Данная контрольно-курсовая работа выполняется с целью закрепления знаний по курсу «Организация ЭВМ и систем» и получения практических...
Анализ архитектур параллельных вычислительных систем icon Староюрьевский филиал тогбоу спо «Мичуринский аграрный техникум»
Оператор электронно-вычислительных и вычислительных машин (эвм) (шифр, наименование)
Анализ архитектур параллельных вычислительных систем icon Рабочая программа составлена в соответствии с государственными образовательными...
Для профиля "Программное обеспечение и администрирование информационно-вычислительных систем и сетей"
Анализ архитектур параллельных вычислительных систем icon Рабочая программа составлена в соответствии с государственными образовательными...
Для профиля "Программное обеспечение и администрирование информационно-вычислительных систем и сетей"
Анализ архитектур параллельных вычислительных систем icon Рабочая программа составлена в соответствии с государственными образовательными...
Для профиля "Программное обеспечение и администрирование информационно-вычислительных систем и сетей"
Анализ архитектур параллельных вычислительных систем icon Методические указания и задания к лабораторным работам по курсам “
Дискретные структуры“, “Теория алгоритмов и вычислительных процессов“ (для студентов специальностей 050102 “Программное обеспечение...
Анализ архитектур параллельных вычислительных систем icon План лекции: Задачи, решаемые вычислительными центрами Структура...
Создание вычислительных центров является способом повышения эффективности работы ЭВМ. Вычислительный центр объединяет технику различных...
Анализ архитектур параллельных вычислительных систем icon Лекция №1. Введение
Овладение методологией экспертных систем помогает принять решение в самых сложных и уникальных ситуациях. Чтобы уметь использовать...
Анализ архитектур параллельных вычислительных систем icon Программа преддипломной практики
Целью практики является: овладение методикой проектирования, внедрения и эксплуатации отдельных задач и подсистем экономических информационных...
Литература


При копировании материала укажите ссылку © 2015
контакты
literature-edu.ru
Поиск на сайте

Главная страница  Литература  Доклады  Рефераты  Курсовая работа  Лекции