Методичка для курсового проектирования по ПТЦА

Страница: 10/11

║ ┌┬─────┬┐ │ │ │ │ ┌┘k │║

╚>╡│STACK│╞═>╡3 │ │ │K │ ┌┬──┬┐K' │║

└┴────A┴┘ │ │ │ ╞═══╧>╡│RG│╞╗ │║

║ │ А │ │ │ ││ ││║ │║

║ └─A─┘ └───┘ ─/┴┴──┴┘║ │║

┌───┐ ║ ║ C ║ │║

│MUX│ ┌──┐ ┌╨──────╨┐ ║ │║

0>┤0 ├─>┤M2├>┤ CS ╞<══════════════════╝ │║

a>┤1 │┌>┤ │ │ │ │║

b>┤2 ││ └──┘ └────────┘ │║ k ┌───┐

│А ││e' │║ └─┤ 1 ├─CC

└A──┘└──────────────────────────────────────┘║ ──┤ │

╚═══════════════════════════════════════════╝ SYN └───┘

Переход к микроподпрограмме с возвратом

При реализации достаточно сложных вычислений удобно вос-

пользоваться механизмом микроподпрограмм.

Одна и та же микроподпрограмма может быть вызвана из

разных точек вызывающих микропрограмм. Поэтому при вызове

микроподпрограммы необходимо запомнить адрес, с тем, чтобы

восстановить его при возвращении из микроподпрограммы. Чтобы

запомнить и восстановить адреса возврата от вложенных вызо-

вов, используется безадресная память - стек (stack).

Принцип (дисциплина) работы стека описывается условием

"последний вошел - первым вышел" (Last In - First Out, LIFO).

чтобы описать этот принцип будем считать, что слова, хранящи-

еся в стеке, перенумерованы с помощью первых натуральных чи-

сел 1,2, .,N. Слово с наибольшим номером называют вершиной

стека.

Стек может выполнять следующие действия:

-"чтение" слова с наибольшим номером,

-"выталкивание" (стирание) из памяти слова с наибольшим но-

мером,

-"запись" нового слова с присваиванием ему наибольшего номе-

ра.

При вызове микроподпрограммы выполняется операция "запи-

си" адреса возврата в стек. При возвращении из микроподпрог-

раммы выполняется операция "чтения" адреса возврата, затем -

"выталкивания" его же из стека.

Операция "чтения" без "выталкивания" выполняется при ис-

пользовании стека для организации циклов.

Разряды с именем "К" определяют тип выполняемой микро-

инструкции. В связи с тем, что теперь в схеме существует 4

источника адреса для управляющей памяти, возможны 4 типа бе-

зусловных переходов, кроме того, возможны различные условные

переходы в различных сочетаниях комбинирующие эти источники

адреса и входные переменные.

С помощью комбинационной схемы CS разряды микроинструкции

"К" преобразуются в сигналы управления стеком и мультиплексо-

ром.

УПРАВЛЕНИЕ С ПРЕДВОСХИЩЕНИЕМ

В конвейерном варианте для команд переходов по предикат-

ным переменным, зависящих без сдвига от сигналов управления,

приходится добавлять еще один такт для того, чтобы "увидеть"

значение переменной, по которой выполняется ветвление, и выб-

рать нужную МКИ.

Можно построить управляющий автомат, в котором для уско-

рения выполнения программы выполняются следующие действия:

Предварительно выбирается из ПЗУ одна из двух альтернативных

Реферат опубликован: 28/11/2009