Навігація
Головна
 
Головна arrow Інформатика arrow Архітектура ЕОМ і систем
< Попередня   ЗМІСТ   Наступна >

СТРУКТУРНО-ФУНКЦІОНАЛЬНА ОРГАНІЗАЦІЯ ПРОЦЕСОРІВ

Для більш глибокого розуміння і швидкого освоєння досліджуваного матеріалу розглянемо архітектурні особливості найпростіших 8-розрядних процесорів.

Основні функції процесора

На процесор покладається виконання операцій, передбачених його системою команд. При виконанні програми центральний процесор мікропроцесорної системи забезпечує виконання всіх функцій, передбачених програмою. До них відноситься:

  • формування адреси команд або даних, що зберігаються в оперативній пам'яті;
  • вибірка команд з пам'яті і їх дешифрування;
  • прийом даних з основної (оперативної) пам'яті, виконання над ними арифметичних, логічних і інших операцій, які визначаються кодом команди, і передача оброблених даних в зовнішні пристрої або пам'ять;
  • формування сигналів стану (логічних умов), управління і часу, необхідних для нормальної роботи внутрішніх вузлів, а також зовнішніх пристроїв і пам'яті;
  • тимчасове зберігання результатів виконаних операцій, адрес, які формуються сигналів стану і інших даних;
  • прийом сигналів запиту від зовнішніх пристроїв і їх обслуговування. Для виконання перерахованих функцій процесор повинен мати у своєму розпорядженні необхідним набором апаратних засобів.

Склад процесора

Для опису основних вузлів процесора скористаємося структурною схемою на рис. 5.14, в якій можна виділити чотири зазначені вище складові частини:

  • операційний автомат , до якого можна віднести АЛУ і обслуговуючі його регістри (акумулятор А і два додаткових регістра), блок десяткового корекції та регістр ознак, що формує логічні умови;
  • керуючий автомат , що включає регістр команд, дешифратор і блок управління;
  • внутрішню пам'ять , що складається з регістрів загального призначення ( IV, Z, В, С, D, Е, Н, L), покажчика стека, лічильника команд, регістра адреси і буферного регістра;
  • засоби комунікації у вигляді внутрішньої шини, шини даних і шипи управління.

Арифметичне-логічний пристрій (АЛП) дозволяє виконати наступні операції над 8-розрядними операндами:

  • • арифметичне додавання двох операндів з передачею перенесення в старший розряд (і без нього) і віднімання з передачею позички в молодший розряд (і без нього);
  • • логічне додавання, множення, що виключає АБО і порівняння;
  • • чотири види циклічних зрушень;
  • • арифметичні операції над десятковими числами.

При виконанні операцій один з операндів надходить в АЛП через акумулятор А і додатковий регістр 1, інший операнд - через додатковий регістр 2. Циклічні зсуви виконуються тільки над вмістом акумулятора А. В акумулятор також поміщаються результати виконаних в АЛП операцій.

Блок десяткового корекції. При підсумовуванні десяткових чисел може виникнути потреба в регулюванні результату, для виконання якої в процесорі передбачений блок десяткової кор-

Структурна схема 8-розрядного процесора

Мал. 5.14. Структурна схема 8-розрядного процесора

рекции. При додаванні кожен розряд десяткового числа (цифра) представляється 4-розрядних двійковим кодом (напівбайтів, тетрадой), наприклад кодом 8421. Додавання напівбайтів відбувається за правилами двійковій арифметики. Якщо сума більше 9, то виникає необхідність в проведенні корекції. Корекція здійснюється додатковим додатком двійкового числа 0110 (6) до отриманого результату. Це обумовлено тим, що вага 5-го розряду двійкового числа становить 16 десяткових одиниць, а вага старшого розряду десяткового числа - 10, тобто різниця дорівнює 6. Якщо при додаванні отриманий результат 10 ... 15, то поповнення числа 6 (0110) 2 призведе до появи 1 в 5-м розряді. Цей розряд "йде" в старший напівбайт і забирає з собою "добавку" (6), залишаючи правильний результат. У тому випадку, коли результат становить 16 ... 18, в 5-м розряді з'являється одиниця, значення якої (до перенесення) відповідає 16 в десятковому численні. Після перенесення одиниці 5-го розряду в старший напівбайт її значення стає рівним 10. Таким чином, перенесення супроводжується зменшенням результату на 6 десяткових одиниць, що також вимагає проведення його корекції. Принцип корекції ілюструється на двох наведених прикладах.

Неправильний результат виявляється за наявністю одиниць в двох старших розрядах (3-й і 2-й), в 3-м і 1-м або за наявністю перенесення в наступну тетраду.

Регістр ознак. АЛУ безпосередньо пов'язано з 5-розрядним регістром ознак (прапорів), у якому фіксується результат виконання деяких арифметичних і логічних операцій. Регістр містить 5 тригерів:

  • тригер перенесення, що виробляє сигнал С = 1, якщо при виконанні операцій додавання і зсуву з'являється одиниця переносу зі старшого розряду;
  • тригер додаткового перенесення, що виробляє сигнал V = 1, якщо при виконанні операції з двійковій-десятковими кодами з'являється одиниця з третього розряду (старшого розряду молодшого полубайта);
  • тригер нуля, що виробляє сигнал Z = 1, якщо результат операції дорівнює нулю;
  • тригер знака, що виробляє сигнал S = 1, якщо значення старшого розряду операнда (в додатковому коді) дорівнює одиниці, тобто результат операції - негативне число;
  • тригер парності, що виробляє сигнал Р = 1, якщо результат операції містить парне число одиниць.

Зазначені тригери забезпечують виконання в програмі умовних переходів. Наприклад, якщо результат виконання попередньої операції дорівнює нулю, то тригер нуля встановлюється в одиничний стан (Z = 1) і умова переходу в іншу частину програми виявляється виконаним. Розподіл розрядів регістра ознак умов в байті при передачі по шині даних наступне:

розряд

А

А

А

А

А

А

А

А

ознака

S

Z

0

V

0

р

1

з

Регістри. Доступ до регістрів, в тому числі до лічильника команд і вказівником стека, здійснюється через мультиплексори за допомогою селектора регістрів.

Регістри загального призначення (РОН) грають роль акумуляторів, коли в них містяться оброблювані дані, або покажчиків, коли в них зберігаються адреси операндів. Регістри В, С, D, Е, Н, L можуть бути використані в програмі як окремі 8-розрядні регістри або як 16-розрядні реєстрові пари ВС, DE, HL. Назва пари В, D, Я завжди відповідає назві першого регістра пари, в якому зберігається старший байт 16-розрядного числа. 16-розрядний регістр Я служить адресним регістром: при непрямій реєстрової адресації він зберігає виконавчу адресу, що надходить з основної пам'яті.

Регістри WZ не є програмно-доступними і використовуються для виконання команд всередині мікропроцесора. У них зберігаються другий і третій байт команди.

Обмін інформацією між мікропроцесором і зовнішніми пристроями здійснюється через двонаправлений буферний регістр, а адресація до пам'яті і зовнішніх пристроїв - через 16-розрядний регістр адреси. Особливість буферного і адресного регістрів полягає в тому, що крім стану логічного нуля і одиниці в них передбачено третій стан, в якому вихідний опір регістрів нескінченно велике. У цьому стані мікропроцесора зовнішніми пристроями здійснюється прямий доступ до пам'яті.

Покажчик команд, або програмний лічильник (Program Counter - PC). Лічильник вказує адресу, де знаходиться в пам'яті черговий байт команди (для команд використовуються 3-байтові формати). Байти команд зазвичай вибираються в порядку наростання їх адрес. Тому після вибірки кожного чергового байта схема інкремента- декремента збільшує вміст програмного лічильника на одиницю. Перед початком вибірки який-небудь команди в лічильник заноситься адреса її першого байта. В процесі вибору 3-байтной команди вміст лічильника збільшується тричі. Звичайний порядок проходження адрес може бути змінений. Для цього в лічильнику передбачена можливість запису початкового адреси тієї частини програми, яка повинна виконатися. Цю частину програми зазвичай називають підпрограмою.

Покажчик стека (Stack Pointer - SP) являє собою 16-розрядний регістр, призначений для швидкої адресації особливого виду пам'яті, що називається стеком. Стекова пам'ять може бути виділена в основний пам'яті комп'ютера. Вона використовується при обслуговуванні переривань. В стек заноситься адреса повернення до перерваної програми на час обробки мікропроцесором підпрограми, вміст акумулятора, регістра ознак.

Обмін зі стеком виробляється 2-байтними словами, для зберігання яких виділяються дві сусідні комірки. Особливості обміну для випадку, коли покажчик стека SP зберігає адресу А. проілюстровані на рис. 5.15. При введенні інформації в стек вміст SP умень-

стекові операції

Мал. 5.15. стекові операції

шается на 1 і за адресою А - 1 поміщається старший байт ( СБ ), а потім вміст SP знову зменшується на 1 і за адресою А - 2 надходить молодший байт (МБ) і т.д. Адреса останньої клітинки, зайнятої під стек, буде збережений в SP. Висновок інформації з стека починається з осередку, адреса якої зберігається в SP (для розглянутого випадку - це адреса А). Після виведення першого, молодшого байта (МБ) вміст збільшується на 1 і за адресою А + 1 виводиться старший байт (СБ). Після читання СБ вміст SP знову збільшується на 1 і т.д., тобто SP не залишається на прочитаної осередку, він вказує на вершину стека. Таким чином, стековая пам'ять характеризується тим, що звернення до неї здійснюється за принципом: першими вибирають дані, що надійшли останніми.

Блок керування. Перший байт виконуваної команди записується в регістр команд. У дешифраторі команд формуються сигнали, під дією яких у пристрої керування запускається вбудоване для виконання необхідної операції. Прошивки операцій, визначених набором команд мікропроцесора, "зашиті" в керуючу нам'яти. На входи пристрою управління надходять:

  • • дві неперекривающіеся послідовності тактових імпульсів (Ф1, Ф2) з періодом Т;
  • • сигнал готовності (READY) зовнішніх пристроїв і пам'яті до обміну інформацією з мікропроцесором;
  • • сигнал запиту від зовнішніх пристроїв на переривання (INT) виконання основної програми і перехід на виконання підпрограм обслуговування переривання;
  • • сигнал запиту від зовнішніх пристроїв на захоплення шин (HOLD), як правило, для організації обміну інформацією по каналу прямого доступу до пам'яті;
  • • сигнал скидання (RESET), за яким відбувається початкова установка мікропроцесора.

З виходу пристрою управління знімаються сигнали для управління внутрішніми вузлами (на рис. 5.14 ці зв'язки не показані) процесора і зовнішніми пристроями. Для управління зовнішніми пристроями виробляються:

  • • сигнал синхронізації (SYNC), який вказує на початок кожного машинного циклу - проміжку часу, необхідного для одного звернення процесора до зовнішніх пристроїв або пам'яті;
  • • сигнал прийому (DB1N), що підтверджує готовність процесора до прийому даних;
  • • сигнал очікування (WAIT), який свідчить про те, що процесор знаходиться в стані очікування;
  • • сигнал підтвердження захоплення (HLDA), що підтверджує, що шини знаходяться в високоомному стані, і зовнішні пристрої можуть звертатися до пам'яті безпосередньо, минаючи процесор;
  • • сигнал дозволу переривання (INTE), який свідчить про те, що тригер дозволу переривання в блоці управління знаходиться в стані логічної одиниці, при якому можливий прийом сигналів запиту;
  • • сигнал видачі ( WR = 0), який вказує на те, що процесор видав інформацію на шину даних для її запису в пам'ять або передачі в зовнішні пристрої.

Інтерфейс мікропроцесора. Обмін інформацією між вузлами процесора здійснюється по 8-розрядної внутрішньої шині даних , а з зовнішньої 8-розрядної шиною даних (ШД) - через буферний регістр. Для адресації до пам'яті і зовнішніх пристроїв використовуються 16-розрядна шина адреси (ША) і регістр адреси. До інтерфейсу можна також віднести буферний регістр і регістр адреси.

 
Якщо Ви помітили помилку в тексті позначте слово та натисніть Shift + Enter
< Попередня   ЗМІСТ   Наступна >
 
Дисципліни
Агропромисловість
Аудит та Бухоблік
Банківська справа
БЖД
Географія
Документознавство
Екологія
Економіка
Етика та Естетика
Журналістика
Інвестування
Інформатика
Історія
Культурологія
Література
Логіка
Логістика
Маркетинг
Медицина
Нерухомість
Менеджмент
Педагогіка
Політологія
Політекономія
Право
Природознавство
Психологія
Релігієзнавство
Риторика
Соціологія
Статистика
Техніка
Страхова справа
Товарознавство
Туризм
Філософія
Фінанси
Пошук