Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по СиФО часть 5.2.doc
Скачиваний:
38
Добавлен:
15.09.2014
Размер:
687.62 Кб
Скачать

основной программы возобновляется.

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

5.7.6. Команды ввода-вывода

Обычно команды данной группы содержат в своей структуре прямой или вычислимый адрес УВВ. Структура аппаратных средств для выполнения простейшей команды ввода-вывода может быть представлена аппаратурой, представленной на рис. 5.37.

Устройство работает следующим образом. Перед исполнением очередной команды, например вывода, в аккумулятор процессора помещается выводимая информация. Для подключения порта к ШД адрес УВВ из RG C передается на шину адреса и, далее, на вход дешифратора порта. Дешифратор активизирует соответствующую линию выборки (устанавливает в нулевое состояние) и готовит элемент 2ИЛИ к переключению. Далее, на ШУ выдается сигнал , который вызывает переключение логического элемента 2ИЛИ в ноль, установку на входеактивного низкого уровня и подключение входов адресуемого порта к ШД компьютера.

В универсальных, больших системах команды ввода-вывода, как правило, имеют структуру, соответствующую формату SI рис. 5.38.

I2

В1

D1

КОП

Рис. 5.38

Адрес порта в данной структуре определяется суммой: а поле непосредственного операнда не используется.

5.8. Переход от алгоритма к структуре компьютера. Эмуляция вычислительных устройств в микропроцессорной среде

5.8.1. Переход от алгоритма к структуре

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

1) обеспечение заданного времени решения задач при минимальных аппаратурных затратах;

2) обеспечение минимального времени реализации алгоритмов при заданных ограничениях на аппаратурные затраты;

3) обеспечение минимального времени решения задач практически без ограничений (в разумных пределах) на оборудование.

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

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

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

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

,

где F – значение функции, используемое, например, для целей управления; a,b,c,d,e,f – последовательности входных данных, образующие в компьютере в текущем цикле вычислений аргументы функции F.

При последовательной реализации расчетов граф-схема алгоритма решения данной задачи будет выглядеть следующим образом (см. рис.5.39).

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

1) модули ОЗУ для хранения исходных данных и результатов расчетов;

2) схемы умножения двух операндов;

3) схемы двоичного суммирования.

Очевидно, что в самом общем случае конфигурация проектируемого устройства может быть представлена только двумя блоками: одним универсальным вычислителем и одним общим блоком ОЗУ рис.5.40.

Максимальная конфигурация компьютера предполагает распараллеливание вычислений, что приводит к структуре вида рис.5.41.

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

Рис. 5.41

В соответствии с поставленной задачей присвоим запоминающим блокам системы индексы с 1-го по 7-й, а решающим – с 8 по 12-й. Зададимся, далее, следующими временами выполнения операторов ТHJ:

1) время чтения операндов из ОЗУ: T1.1= T2.2= T4.3= T5.4= T8.5 =T9.6=10 мкс,

2) время умножения: T3.8= T6.9 =T10.10= 40 мкс,

3) время суммирования: T7.11 =T11.12=20 мкс,

4) время записи результатов в ОЗУ: Т12.7=10 мкс.

В использованном для времен TH,J обозначении первый индекс Н – представляет собой номер вершины последовательного алгоритма (см. рис.5.39), а индекс J - номер блока параллельной структуры вычислителя (см. рис.5.41).

Исходя из принятого алгоритма и времени выполнения операторов, нетрудно подсчитать, чтоминимальная длительность вычисления значений функции F составит величину:

Тmax= T1,1 + T3,8 + T7,11 + T11,12 + T12,7 =

= 10+40+20+20+10=100 мкс.

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