Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МПТ_L_к.doc
Скачиваний:
13
Добавлен:
27.08.2019
Размер:
20.33 Mб
Скачать

5.12. Адресний простір мікропроцесора

В одній комірці (тригері) може зберігатись один двійковий розряд (0 або 1). Для зберігання байту інформації, або слова (інформація в 2 байти) використовують сукупність бітових комірок.

В мікропроцесорній техніці під коміркою пам’яті розуміють сукупність одно бітових комірок довжиною 1 байт, 2 байти і більше, що залежить від типу процесора. Кожна комірка пам’яті нумерується числами, почаючи з 0, 1, і

т.д.. Таке число є номером комірки пам’яті і називається її адресою.

Наприклад, організація однобайтної пам”яті:

Адреса комірок пам”яті Елементи пам”яті

В7 В6 В5 В4 В3 В2 В1 В0

0000 1 0 1 1 0 0 0 0 комірки

0001 0 1 0 1 1 1 1 1 пам’яті

0002 0 0

........ ............................................................................

4095 1 0 0 0 0 0 1 1

Накреслена схема пам’яті має 4096 двійкових 8-ми розрядних слів, тобто, містить 4096 байт інформації. При цьому ж числі елементів пам’яті можна організувати пам’ять на 2048 16-ти бітних слів (двобайтових), або 1024 – 32-х бітних слів (4-х байтні). В цьому випадку слово зберігається в двох або чотирьох послідовно розташованих байтах, перший з яких має адресу (границя слова).

Наприклад, 2-х байтові:

0000 1 0 0 1 1 1 1 1

0 1 1 1 1 1 1 1

0001 0 0 1 1 1 0 0 0

1 1 1 1 1 1 1 1

0002 ...............................................................................

................................................................................

В МП як правило, за виключенням деяких одно кристальних ЕОМ, послідовність команд (програма), яка показує на необхідний порядок виконання операцій, розміщується на зовнішньому по відношенню до МП пристрої пам’яті команд (ЗПК). МП повинен здійснювати вибірку команд в потрібній послідовності, їх дешифрацію і передавати код операції в пристрій керування виконаннями операцій (ПКВО) для їх виконання (рис.1.1).

Адреса команди, яку потрібно виконати, зберігається в програмному лічильнику (ПЛ, ПС) і через буфер адресу (БА), який призначений для підвищення потужності шини адреси, подається на адресні входи зовнішньої пам’яті команд ЗПК. Команда, яка вибрана із ЗПК по сигналу Уі надходить через буфер даних БД до регістру команд РК. Код команди розшифровується дешифратором команд ДшК та схемою керування машинним циклом (СКМЦ), якій проводять аналіз кожного поля команди і передають код операції в пристрій керування виконаннями операцій ПКВО. ПКВО в відповідності з кодом операції виробляє послідовність керуючих сигналів Уj які забезпечують виконання потрібної операції.

Якщо шина адреси мала б всього три сигнальних лінії, то по ній можна передати тільки 2 = 8 різних адрес, тобто, комбінації адреси будуть: 000, 001, 010, 011, 100 101, 110 та 111.

При 4-х лініях число можливих комбінацій (станів) шини становить 2 , що = 16, тобто, 0000, 0001, ...., 1111 (або F).

При 16-ти лініях, як в нашому випадку для КР1816ВЕ31, число можливих комбінацій (станів) складає 2 = 65536 = 64К, де К = 2 = 1024.

Адресний простір мікропроцесора являє собою упорядковану множину кодів від 0, 1, 2, ....., до 2 - 1, де n - число ліній адреси.

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

Простір адреси визначає число можливих, відмінних одна від одної, кодових комбінацій (адрес), які може видати на шину адреси мікропроцесор, тобто, задає потенційні можливості системи – максимально можливе число програмно доступних комірок пам’яті. Його можна зрівняти з приміщенням бібліотеки, де можна зберігати, наприклад, 64К книг.

2 2 2 2 2 2 2 2 2

32K 16K 8K 4K 2K 1K 512 256 128

0000 0000 0000 0000

0001 …… 16K …… 8K ……

0002 32K ……. 3FFF 1FFF

......... ……. 4FFF 2FFF

FFFC (64K-3) …….. 16K….. 8K ……

FFFD (64K-2) 7FFF 7FFF 3FFF

FFFE (64K-1) 8000 4FFF

FFFF (64K) 32K … 8K……

FFFF 5FFF

Старший двійковий розряд адреси, в нашому випадку ( 2 ) , ділить адресний простір на дві великі рівні частини по 32К кожна (перша частина відповідає значенню двійкового числа, якщо в цьому розряді - 0, а друга – відповідно 1). Якщо взяти два старших розряди (тобто, 2 та 2 ), то вони ділять цей простір на 4-ри частини по 16К кожна, три старших розряди ділять адресний простір відповідно на 8-м рівних частин по 8К кожна. 16-ть розрядів адреси ділять простір ємністю 64К на 64К частин по одній комірці, в кожній із яких зберігається по машинному слову. Поняття адресного простору дозволяє наглядно розглядати розміщення в ньому різних програмно доступних об’єктів. Наприклад, в деяких мікропроцесорних системах адреса від 0000 до 3FFF використовується для оперативної пам’яті, а адреса від 4FFF до 5FFF використовується для звертання до постійної пам’яті.

Указаний в команді номер порту задає адресу порту, до якого буде звертання.

ШИНА АДРЕСИ (16 розрядів)

________________________________

____________________________________________________________

↕ ↕ ↕ ↕

_____4FFF_-_5FFF______ ____0000 – 3FFF___ ___________ _

ПЗП (Команди, константи) ОЗП (змінних, даних) Порти вводу Порти

виводу

(256 портів) (256 портів)