Розподіл адресного простору МПС
Вхідний контроль:
1 З якою метою адресний простір розподіляється поміж підсистемами МПС різних типів?
2 Чи можуть займати адресний простір периферійні пристрої?
3 Чи займає адресний простір центральний процесор?
4 Чи займає адресний простір співпроцесор?
За основу підходу до розділу адресного простору, який формує МП МС68ЕС020, було взятo мапу пам’яті контролера FLIGHT-68EC020EVM. Розподіл адресного простору МПС подано на рис. 11.23.
Адресний простір розподіляється поміж ПЗУ – адреси $000000...$3FFFFF, ОЗП – адреси $400000...$7FFFFF, паралельними периферійними інтерфейсами-таймерами РІ/Т – адреси $800000...$9FFFFF, та асинхронними послідовними адаптерами DUART – адреси А00000...FFFFFF.
Розподіл адресного простору поміж типами пристроїв можна зреалізовувати на програмованій логічний матриці – ПЛМ, наприклад 16L8D (PAL2) фірми Motorola (рис. 11.24).
Зарезервовано для розвитку | $FFFFFF $C00000 |
DUART | $BFFFFF $A00000 |
PI/T | $9FFFFF $800000 |
RAM | $7FFFFF $400000 |
ROM | $3FFFFF $000000 |
Рисунок 11.23 – Розподіл адресного простору МПС
Рисунок 11.24 – Схема формування сигналів розподілу
адресного простору
Вихідні логічні функції – це сигнали: ROMS# – дозвіл на роботу декодерів адреси BIC постійної пам’яті, RAMS# – дозвіл на роботу декодерів адреси BIС оперативної пам’яті, CS230# – дозвіл на роботу декодерів адреси BIC PI/T, CS681# – дозвіл на роботу декодерів адреси ВІС DUART. Отже, розподіл адресного простору зреалізовується за допомогою ієрархічної структури: ПЛМ розподіляє адресний простір на підпростори для пристроїв різних типів, а всередині кожного підпростору адреси розподіляються поміж окремими ВІС одного призначення за допомогою декодерів адреси.
Перед тим як застосовувати декодер адресного простору PAL2, треба за допомогою логічної схеми сформувати сигнал . На рис. 11.25 подано схему формування сигналу FC# – циклу центрального процесора в інверсній формі.
Рисунок 11.25 – Формування сигналу FC#
Вихідні сигнали PAL2 може бути описано в аналітичний формі як функції вхідних сигналів:
З цих виразів видно, що сигнал ROMS# матиме низький рівень, коли розряди адреси А23, А22, А21 дорівнюватимуть 0, тобто розпочинаючи з адреси $000000.
Сигнал RAMS# дорівнюватиме 0, коли адресні розряди А23, А22, А21 матимуть відповідно значення 010, тобто розпочинаючи з адреси $400000.
Сигнал СS230# дорівнюватиме 0, коли адресні розряди А23, А22, А21 матимуть відповідно значення 100, тобто розпочинаючи з адреси $800000.
Сигнал CS681# дорівнюватиме 0, коли адресні розряди А23, А22, А21 матимуть відповідно значення 101, тобто розпочинаючи з адреси $A00000.
Нульові значення сигналів ROMS#, RAMS#, CS230#, CS681# слугують розподілу адресного простору.
Формування сигналу читання/запису RWAS#, який подається на входи RAM, здійснюється на логічних елементах (рис. 11.26).
Рисунок 11.26 – Схема формування сигналу RWAS#
Контрольні питання:
1 Який обсяг пам’яті у Мбайтах займає кожний підпростір пам’яті у мапі пам’яті FLIGHT-68EC020ЕVM?
2 Які початкові адреси мають адресні підпростори, призначені для адресування кожного типу пристроїв, які входять до підсистем МПС?
3 Чим визначаються значення початкових адрес адресних підпросторів?
4 З якою метою формується сигнал читання/запису RWAS#?
5 У який спосіб можна сформувати сигнал RWAS#?
6 З якою метою формується сигнал FC#?
Контрольні питання підвищеної складності:
1 Як програмуються ПЛМ у якості дешифратора адреси?
2 Проілюструйте, як можна на ПЛМ 16L8D сформувати сигнал дозволу роботи співпроцесора?