
- •10. Регистровая архитектура
- •11. Стековая архитектура
- •12.Ортогональная архитектура мп
- •13 Архитектура мп, ориентированная на память
- •14 Язык ассемблера для программирования мпс
- •15 Структура программируемого параллельного адаптера (ппа)
- •16 Принцип подключения интерфейсных бис(иБис) в мпс
- •17 Назначение сигналов ппа
- •18 Режимы работы ппа
10. Регистровая архитектура
Архитектура МП – совокупность принципов организации взаимодействия аппаратных и программных средств МП, обеспечивающих его функциональные возможности.
Самые первые МП были реализованы по регистровой архитектуре: каждый МП имел собственный банк регистров общего назначения, которые использовались для временного хранения данных в процессе обработки информации.
PC – программный счетчик – это самый главные регистр в МП-ре.
Рисунок 4.1
Бп РОН – банк регистров общего назначения, в которых временно сохраняются промежуточные результаты вычислений. Основное достоинство регистров общего назначения то, что они находятся на одном кристалле с МП, благодаря этому существенно повышается эффективность работы МП при решении вычислительных задач.
Основной недостаток регистров архитектуры МП в том, что при использовании языков программирования высокого уровня, регистровая архитектура теряет свою эффективность.
Для использования языков высокого уровня требуется 2 функции:
Сохранение содержимого всех регистров общего назначения, а затем восстановление содержимого этих регистров для выполнения прерванной программы. Таким образом при большом числе функций на это требуется большое время процессора и эффективность работы Мп-ра снимается.
Для усовершенствования регистровой архитектуры была предложена стеновая архитектура, в основе которой лежит понятие стек.
11. Стековая архитектура
Стек – это способ организации хранения данных в упорядоченном виде по принципу: последний вошел – первый вышел (LIFO Last Input First Output). Принцип «магазин».
Благодаря такому способу существенно повышается быстродействие работы памяти, т.к. отсутствует необходимость формирования адреса операнда. Адрес в стеке формируется аппаратно, а не программно, поэтому не требует больших затрат времени.
Для организации стека в МПС вводится специальный регистр SP (Stack Pointer – указатель вершины стека). SP всегда указывает на ячуйку памяти, в которую можно записать или из которой можно считать информацию. Для этого в МП входят команды PUSH A, POP A (записать и считать из стека). Для сохранения работоспособности стека эти команды необходимо использовать только парами, чтобы не разрушить структуру стека.
В языках высокого уровня стек используется не только для хранения содержимого регистра при переключении задач, но и для передачи данных между программами через глобальные переменные, потоки (кучи).
Стек наиболее удобен для передачи параметров между функциями и возвращением результатов, главное чтобы совпадало число передаваемых и принимаемых параметров.
Достоинство стека в том, что данные хранятся в упорядоченном виде и поэтому не требуют формирования адреса (адресной части команды при обращении к стеку)
Стек в МП-ре может быть реализован тремя способами:
1. На регистрах общего назначения, то есть часть регистров отводится под стек, это самый быстродействующий способ адресации стека, но имеет один существенный недостаток: малый объем стека. Обычно отводится 8 регистров, таким образом глубина стека всего 8 уровней вложения подпрограмм. Переполнение стека вызывает сбой в работе МП-ра, поэтому программисту его необходимо постоянно настраивать, чтобы не было переполнений.
2. На внешнем запоминающем устройстве, то есть вводятся дополнительные аппаратные затраты для организации стека, что усложняет и увеличивает стоимость разработки (применяют доп микросхему).
Достоинство: большой объем стека, что расширяет функциональные возможности МП-ра, этот способ применяется в специализированных МП-ых системах (военная техника).
Наибольшее распространение получил третий способ организации стека.
3. На запоминающем устройстве общего пользования. При этом требуются минимальные аппаратные затраты и реализуется стек большого объема. Вводя регистр SP-указатель вершины стека. Функции его в следующем: он всегда указывает на адрес ячейки памяти, с которой можно считать или в который можно записать информацию, при этом автоматическое изменение содержимого регистра SP (адреса Стека) происходит на уменьшение адреса при записи, и увеличение адреса при чтении.
ОЗУ
0 |
Программа |
|
Данные |
|
|
max |
Стек |
Основной минус стековой архитектуры в том, что при реализации задач управления внешние запросы прерываний поступают очень часто. В основном загружается МП с сохранением регистров в стеке и восстановлением содержимого регистров из стека и полезных вычислительных операций МП не выполняет, то есть такая архитектура становится не эффективной в задачах управления.
Для устранения недостатков была предложена ортогональная архитектура.