- •4.1.Основи побудови мікро-еом.
- •4.3.Регістри мікропроцесора.
- •4.3.1.Регістри спеціального призначення.
- •4.3.2.Лічильник команд.
- •4.3.4.Регістр адреси памяті.
- •4.3.5.Регістр команд (рк).
- •4.3.6. Регістр станів.
- •4.3.7.Вказівник стеку.
- •4.3.8.Індексний регістр.
- •4.3.9.Буферний регістр.
- •4.4.Регістри загального призначення.
- •4.5.Пристрій керування.
- •4.5.1.Пристрій керування з жорсткою логікою.
- •Команда із озп
- •4.5.2.Мікропрограмований пристрій керування.
- •Команда із озп
- •4.6.Буферні схеми. Магістральний принцип
- •4.6.1.Внутрішні шини.
- •4.18.Загальні поняття про переривання.
- •4.19.Пристрій обслуговування переривань.
4.3.7.Вказівник стеку.
Стек – область памяті де тимчасово зберігається інформація, необхідна для повернення до програми після виконання підпрограми. В деяких МП стек являє собою набір внутрішніх регістрів. Стан стеку відтворюється в деякому регістрі аналогічно регістровій парі ВС (рис.4.3.) яка називається вказівником стеку ВкСт. (Stek pointer).
В більшості МП ВкСт виконаний у вигляді спеціального регістра. ВкСт вміщує інформацію про те яка область памяті повинна бути використана при наступному зверненні до стеку. Кожен раз коли у стек переміщується байт інформації здійснюється негативний приріст ВкСт тобто стек запамятовується в напрямку зменшення значень адрес памяті. Слово що було записане в стек першим зчитуватиметься останнім.
ВкСт вказує адресу головки стеку тобто останньої записаної чарунки. Все що було зчитане із стеку, в памяті не зберігається окрім того область памяті відведена під стек не повинна займатися іншими.
Розрядність вказівника стеку в двічі більша за розрядність процесора.
4.3.8.Індексний регістр.
Розрядність індексного регістру в двічі більша за розрядність процесора. Цей регістр близький до регістра адреси памяті (РАП) та використовується для організації різних способів адресації памяті.
4.3.9.Буферний регістр.
Буферний або тимчасовий регістр використовується для тимчасового зберігання інформації при пересиланні її із одного вузла МП в інший. Розрядність цього регістру співпадає з розрядністю МП.
На рис.4.3. буферні регістри є два
1)буфер акумулятора
2)буфер АЛП.
Буфер АЛП необхідний тому що в АЛП відсутній запамятовуючий пристрій. У склад АЛП входять тільки комбінаційні схеми тому при поступленні вхідних даних на вході АЛП на його виході миттєво появиться результат як наслідок виконання операції даної програми. АЛП повинен отримати дані із внутрішньої шини МП модифікувати їх а потім помістити оброблені дані в аккумулятор. Ці операції в АЛП виконати без БР неможливо.
БР програмно недоступні. Коли в АЛП приймають участь два слова одне із них виходить із А результат потім переміщується в А.Буфер акумулятора дозволяє уникнути ситуації коли вхід та вихід АЛП підєднані до однієї і тієї ж точки схеми.
Приведений вище список регістрів спеціального призначення (РСП) є максимальним. Кожен РСП виконує тільки свою функцію функції кожного із них можуть бути виконані регістрами загального призначення (РЗП).
4.4.Регістри загального призначення.
Стандартна кількість регістрів загального призначення (РЗП) коливається в межах від 4 до 16 але іноді і 32. РЗП – це універсальні регістри найголовнішою задачею яких є зверхоперативні запамятовуючі пристрої (ЗОЗП). Час звернення до РЗП набагато менший ніж до ОЗП. Записати в РЗП можна тільки слова із внутрішньої магістралі (шини) даних (ВШД) аналогічно – слово прочитане із РЗП передається в ВШД. Зазвичай існує схема вибору РЗП яка керується схемою керування (рис.4.3.). Реалізація алгоритму керування найбільш ефективна якщо РЗП використовується максимально. Чисельність РЗП обмежена ступіню інтеграції.
Як уже говорилося в 2.3.9 РЗП можуть використовуватися і в якості регістрів спеціального призначення (РСП). Існує велика кількість мікропроцесорів у яких використовуються тільки РЗП. Розрядність РЗП відповідає розрядності МП.
РЗП можуть бути використані в якості
1) накопичувачі (для обробки інформації)
2) вказівники адреси (РЗП вміщує адресу переходу а не сам операнд) – непрямий метод
3) вказівники адрес вміст яких змінено із заданим кроком що дозволяє звертатися до послідовно розміщених чарунок памяті. Автоматичне збільшення вмісту вказівника при зверненні до послідовно розміщених чарунок наз. автоінкрементною адресацією. Автоматичне зменшення вмісту вказівника при зверненні до послідовно розміщених чарунок наз. автодекрементною адресацією. Ці способи аресації можуть бути використані при обробці табульованих даних
4) індексні регістри вміст яких прирівнюється до індексного слова для обрахунку адреси операнда що дозволяє звертатися до різних елементів списку.
Використання автоінкрементного та автодекрементного способу адресації дає можливість організації стекової памяті. В якості вказівника стеку програмно може бути обраний будь-який РЗП але деякі команди які використовуються при перериваннях зверненню до підпрограми як правило автоматично використовують РЗП Р6 як апаратний вказівник стеку.
Програма будується таким чином щоб була велика кількість звернень до РЗП.