Лекция: Процесори і8086/8088

Обидва процесори виконують 8/16 бітні логічні та арифметичні операції, включаючи множення та ділення, операції із строками та операції введення-виведення. Вони мають 20-розрядну шину адреси, яка дозволяє адресувати до 1 Мб памяті. Шина даних у 8086 16-розрядна, у 8088 розрядність зовнішньої шини даних скорочена до 8 біт, що викликало більшу швидкодію 8086 на 20-60 %. Із програмної точки зору ці процесори абсолютно ідентичні, їх система команд та набір регістрів включені у всі РС-сумісні комп¢ютери. Процесори підтримують апаратні та програмні переривання та допускають роздільне використання шини спільно із іншими процесорами та контролерами (наприклад, прямого доступу до памяті – DMA). Також передбачено використання математичного сопроцесора 8087.

У процесорах застосована конвеєрна архітектура, що дозволяє виконувати виборку кодів інструкцій із памяті та їх декодування під час виконання внутрішніх операцій. Конвеєр підвищує продуктивність процесора за рахунок скорочення часу простоювання його операційних вузлів. Конвеєр 8086 має 6-байтну внутрішню чергу інструкцій блок попередньої виборки при наявності двох вільний байт у черзі старається її заповнити в той час, коли зовнішня шина не зайнята операціями обміну. Черга у 8088 скорочена до 4 байт, а попередня виборка виконується уже при наявності одного вільного байта. Черга обнуляється при наявності будь-якої команди передачі керування, навіть при переході на наступну адресу.

У процесор входять 14 регістрів розрядністю 16 біт, операнди можуть бути 8 або 16 біт та представляти знакові або беззнакові двійкові та двійково-десяткові числа. Система команд має 24 режими адресації операндів. Середній час виконання займає 12 тактів, один цикл обміну на зовнішній шині займає 4 такти (без тактів очікування). Тактова частота 8088 за роки оптимізації збільшилася із 4077 МГц до 8 та 10 МГц.

Пам’ять для процесорів 8086/8088 представляється у вигляді лінійної послідовності байт. Для звернення до памяті МП (разом із зовнішньою схемою) формул шинні сигнали MEMWR# (Memory Write) MEMRD# та (Memory Read). Логічно пам’ять розбивається на сегменти по 64 Кб. Фізична адреса памяті складається із двох 16-бітних частин – адреси сегмента Seg та виконувальної адреси ЕА (executive address) що додаються із зміщенням на 4 біта (рис.6.1). зсув адреси сегмента на 4 біта вліво еквівалентний його перемноженню на 16, відповідно фізична адреса РА=16хSeg + ЕА. Адреса сегмента Seg є вмістом одного із регістрів CS, DS, SS або ES. Виконувальна адреса (ефективна адреса) може бути константою, вмістом регістрів, чарунки пам’яті або сумою декількох величин, але ця сума є 16-розрядною (перенесення ігнорується). Таким чином, фізична адреса ніколи не перейде межу 64-кілобайтного сегменту, на початок якого вказує використовуваний сегментний вказівник.

 

 

19 0

 


19 0

 

 

Рис.6.1. формування фізичної адреси пам’яті МП 8086/8088

 

Структура регістрів процесора приведена на рис 6.2. 16 бітні регістри загального призначення АХ, ВХ, СХ, DХ складаються із двох 8-бітних половин, до яких можна звертатися незалежно за символічними іменами AH, BH, CH, DH (старші байти –High) та AL, BL, CL, DL (молодші байти – Low). Регістри вказівники SP (Stack Pointer – вказівник стеку), ВР (Base Pointer – базовий регістр) та індексні регістри SI (Sourse Index – індекс джерела, DI (Destination Index – індекс призначення) допускають тільки 16-бітне звернення.

 

 

еще рефераты
Еще работы по истории