загрузка...
загрузка...
На головну

Архітектура контролера прямого доступу до пам'яті КР580ВТ57

БІС програмованого контролера прямого доступу до пам'яті КР580ВТ57 призначена для організації високошвидкісного обміну даними між пам'яттю і зовнішніми пристроями, що виконується з ініціативи зовнішнього пристрою (рис. 3.8). Контролер прямого доступу до пам'яті (КПДП) генерує сигнали, необхідні для організації обміну. КПДП містить чотири канали прямого доступу, кожен з яких забезпечує передачу блоку даних розміром від 0 до 16К байт з довільним початковим адресою в діапазоні від 0 до 64К байт (рис. 3.8, а)

До складу БІС входять (рис. 3.8, а): двонаправлений двустабільний буфер даних (BD), призначений для обміну інформацією між МП і КПДП; схема управління читанням / записом (RWCU), Адреса внутрішні регістри КПДП і управляюча обміном по шині D (7-0); блок керування (CU), містить регістри режиму і стану КПДП і забезпечує послідовність операцій, необхідних для організації режиму прямого доступу до пам'яті; блок керування пріоритетами (PC U), забезпечує певний порядок обслуговування запитів зовнішніх пристроїв; чотири канали прямого доступу (СНО - СНЗ), містять регістр адреси осередки пам'яті, з якої виробляється обмін, і лічильник циклів обміну. Два старших розряду лічильника відведені для завдання операцій обміну. Призначення вхідних, вихідних і керуючих сигналів КПДП приведено при описі висновків мікросхеми в табл. 3.10.

Таблиця 3.10. Опис висновків КПДII

 позначення виводу  номер контакту  призначення виведення
D (7-0)  21; 22; 23; 26; 27; 28; 29; 30  Входи / виходи даних для обміну з МП
I / OR 1  Читання введення / виведення - двонаправлений трістабільний вхід / вихід; вхідний сигнал L-рівня дозволяє читання інформації з КПДП в МП; вихідний сигнал L-рівня дозволяє читання з ВУ
I / OW  Запис введення / виведення - двонаправлений трістабільний вхід / вихід; вхідний сигнал L-рівня дозволяє програмування КПДП; вихідний сигнал L-рівня дозволяє запис в ВУ
CLK  Вхід тактовихімпульсів
RESET  Вхід установки 0
A (3-0)  35; 34; 33; 32  Двонаправлені трістабільний адресні висновки
CS  вибір мікросхеми
A (7-4)  40; 39; 38; 37  Трістабільний адресні виходи
READY  Готовність - вхідний сигнал H-рівня вказує на готовність до обміну
HRQ  Запит захоплення - вихідний сигнал H- рівня вказує на запит щодо доступу КПДП до системних шин
HLDA  Підтвердження захоплення - вхідний сигнал H-рівня вказує на можливість доступу до системних шин
MEMR  Читання з пам'яті - трістабільний вихід; вихідний сигнал L-рівня дозволяє читання з комірки пам'яті, що адресується КПДП
MEMW  Запис в пам'ять - трістабільний вихід; вихідний сигнал L- рівня дозволяє запис в осередок, що адресується КПДП
AEN  Дозвіл адреси - сигнал H-рівня використовується для блокування деяких шин адреси і даних
ADSTB  Строб адреси - сигнал H-рівня вказує на знаходження на шині D (7-0) старшого байта адреси ЗУ
TC  Кінець рахунку - сигнал H-рівня визначає виконання останнього циклу передачі блоку даних
MARK  Маркер - сигнал H-рівня вказує, що до кінця переданого блоку необхідно виконати число циклів обміну, кратне 128
DRQ3-DRQO  16; 17; 18; 19  Запити прямого доступу до пам'яті каналів СНЗ-С Н0, сигнал H-рівня вказує на запит від ВУ
DACK3-DACKO  15; 14; 24: 25  Підтвердження запитів прямого доступу до пам'яті каналів СНЗ-СНТ, сигнал L - рівня вказує на дозвіл обміну
Ucc  Напруга живлення (+5 В)
GND  »» (0 В)

 
 

Мал. 3.8

При підключенні КПДП до шин мікроЕОМ молодший байт адреси пам'яті видається по лініях А (3-0) и А (7-4), а старший байт - через шину D (7-0), тому КПДП зазвичай працює разом з буферним регістром (рис. 3.8, б).

Для початкової установки КПДП необхідно записати відповідну інформацію в 16-розрядний регістр адреси каналу (RGA), в 16-розрядний лічильник циклів каналу (СТ) і в 8-розрядний регістр режиму, загальний для всіх каналів. Запис цієї інформації проводиться за допомогою команди OUT, хоча можливий і інший спосіб звернення до КПДП як до осередків пам'яті. Запис інформації в 16-розрядні регістри здійснюється двома командами, починаючи з молодшого байта. Два старших розряду лічильника циклів визначають операцію обміну наступним чином: запис в пам'ять - 01, читання з пам'яті - 10, контроль - 00 (комбінація II заборонена). Стан КПДП можна контролювати читанням, за допомогою команди IN вмісту RGA, СТІ 8-розрядного регістра стану, загального для всіх каналів. Для читання вмісту 16-розрядного регістра використовуються дві команди IN з однієї і тієї ж адресною частиною, причому спочатку відбувається зчитування молодшого байта.

У табл. 3.11 наведені коди адресних висновків А (3 - 0) і значення сигналу CS для адресації внутрішніх регістрів КПДП. При програмуванні КПДП операції записи керуючих слів або читання станів внутрішніх регістрів визначаються також значеннями сигналів I / OR и 1 / OW.

Формат керуючого слова, що записується в регістр режиму, наведено на рис. 3.8, в. розряди D3 -DO (EN3 -EN 0) задають дозвіл обміну за відповідним каналу, запис нуля в розряд забороняє обмін. Решта розряди визначають режими роботи каналу.

розряд D4 (RP) встановлює порядок обслуговування запитів від каналів. при RP = 0 включається фіксований пріоритет каналів, і канал 0 має вищий пріоритет. У режимі циклічного пріоритету (RP = 1) після обслуговування каналу йому присвоюється нижчий пріоритет, а наступного за ним каналу - вищий. Причому циклічний зсув пріоритетів проводиться після кожного циклу прямого доступу.

Режим розширеної записи (EW =1) збільшує за рахунок зміщення переднього фронту тривалість сигналів 1 / OW и MEMW, генеруються КПДП. Це дозволяє ВУ, формує сигнал READY по фронту сигналу запису, зменшити час охолодження і збільшити швидкість обміну.

при TCS = 1 поява сигналу ТС в одному з каналів скидає відповідний розряд D3 - DO, в результаті чого канал відключається. Подальша робота цього каналу можлива після перезавантаження регістра режиму. якщо TCS = 0, то поява сигналу ТС не вплине на розряд дозволу роботи каналу і ВУ закінчує передачу за рахунок припинення вироблення сигналу DRQ.

У режимі автозавантаження (AL =1) може працювати тільки другий канал, використовуючи вміст своїх внутрішніх регістрів і внутрішніх регістрів третього каналу. Після передачі даних, відповідно до параметрів регістрів другого каналу і появи сигналу ТС, параметри з регістрів третього каналу автоматично завантажуються в регістри другого каналу; значення 0 або прапор поновлення (UF) в регістрі стану каналів (рис. 3.8, г) встановлюється в 1. Потім передача даних продовжується відповідно до нових параметрів регістрів другого каналу, а в кінці першого ж циклу прямого доступу з новими параметрами прапор UF скидається. Режим автозавантаження дозволяє організувати повторювані пересилання блоків даних з однаковими параметрами або з'єднувати кілька блоків з різними параметрами.

Таблиця 3.11. Адресація внутрішніх регістрів КПДП

 регістр  сигнали управління
 CS  A3  А2  А1  А0
 RQ0
 Ст0  0,
 RQI
 СТ1
 RQ2
 СТ2
 RQ3
 СТЗ
 Регістр режиму (запис)
 Регістр стану (читання)
 NOP * X X Х Х
 Примітки: 1. NOP - означає відключення КРДП від шини даних. 2. X - довільний стан (XI [0,1]).

розряди D3 - DO регістра станів встановлюються одночасно з появою сигналу ТС відповідного каналу і скидаються сигналом RESET при читанні вмісту регістра станів. Зчитування регістра станів на прапор UF (розряд D4) не впливає; прапор можна скинути установкою 0 в розряді D7 регістра режиму.

Якщо два старших розряду лічильника циклів каналу встановлюють режим контролю (VERIFY), то передача даних не проводиться, так як не генеруються сигнали управління записом і читанням, всі інші функції прямого доступу зберігаються. Цей режим може використовуватися ВУ для контролю отриманих даних.

Роботу КПДП пояснює діаграма станів (рис. 3.8, д). Видача старших розрядів адреси супроводжується стробирующих сигналом ADSTB, Які призначені для запису їх у зовнішній буферний регістр. В стані S2 виробляється сигнал DACK, вказує на початок обміну, а також формуються пари сигналів MEMR, I / OR и MEMW. HOW, що визначають напрямок обміну. У стані S3 відбувається передача даних в ЗУ або ВУ. стан S4 завершує цикл прямого доступу. У цьому стані при передачі останнього байта видається сигнал ТС, а в разі кінця блоку - сигнал MARK. При необхідності узгодження швидкодії ЗУ і ВУ за допомогою сигналу READY междусостояніямі S3 и S4 вводиться необхідне число станів очікування SW. У режимі-контролю перехід в стан SW не дозволяється.

Фрагмент програми початкової установки КПДП при зверненні до нього як до зовнішнього пристрою може мати наступний вигляд:

"    
"    
"    
 DI    ; заборона переривань
 MVI  A, 00H  ; Завантаження молодшого байта
 OUT  0F0H  ; адреси масиву
 MVI  A, 40H  ; Завантаження старшого байта
 OUT  0F0H  ; адреси масиву
 MVI  A, 0F7H  ; Завантаження молодшого байта
 OUT  0F1H  ; кількості циклів
 MVI  A, 43H  ; Завантаження шести старших
 OUT  0F1H  ; Розрядів кількості циклів
     ; І коду операції обміну
" "  ; Початкова установка
" "  ; каналів CH1, CH2, CH3
 MVI  A, 4FH  ; Запис керуючого слова
 OUT  0F8H  ; У регістр режиму
 EI    ; дозвіл переривання
"    
     
сигналами ППІ «-- попередня | наступна --» Архітектура БІС програмованого контролера переривань КР580ВН59
загрузка...
© om.net.ua