|
Мікросхема КР580ВТ57 - чотирьохканальний програмований контролер прямого доступу до пам'яті (ПДП), призначений для високошвидкісного обміну даними між пам'яттю системи, і периферійними пристроями шляхом генерації масиву послідовних адрес пам'яті на вимогу периферійного пристрою.
Мікросхема здійснює двонаправлений обмін даними між пам'яттю й периферійними пристроями шляхом формування в адресному каналі мікропроцесорної системи параметрів заданого масиву адрес елементів пам'яті й управляючих сигналів. Масив адрес, після якого відбувається обмін даними між периферією й пам'яттю, характеризується початковою адресою, тобто першою адресою початку обміну й числом циклів звернень до пам'яті. Після надання системної шини із сторони процесора мікросхема може здійснити обмін масивом даних між пам'яттю й периферійними пристроями без подальшого втручання процесора.
Кожний з чотирьох каналів мікросхеми забезпечує адресацію (шляхом інкрементування виробленої адреси) зовнішньої пам'яті масивами об'ємом до 16К байт з можливістю задання будь-якого з 64К почпткових адрес.
Призначення виводів показано в таблиці - 3.23; пріоритет каналів показано у табличці - 3.24; умовне графічне позначення мікросхеми приведено на мал. - 3.31; структурна схема показана на мал. - 3.32.
Канали прийому запитів ПДП призначені для прийому й прив'язки несинхронних сигналів прямого доступу до пам'яті DRQ0— DRQ3, маскування входів й видачі сигналів підтвердження запиту прямого доступу до пам’яті —(-DACK0 – DACK3). Кожний канал приймає запит через свій вхід DRQ і видає сигнал «Підтвердження запиту» ПДП через відповідний вихід.
Пристрій управління управляє послідовністю операцій протягом всіх циклів ПДП шляхом генерації відповідних управляючих сигналів. Пристрій здійснює перехід мікросхеми із стану очікування в стан, що обслужив по сигналу HLDA, що поступив з процесора, виробляє й передає зовнішні сигнали на наступні виводи:
l вихід HRQ (запит захоплення) запрошує управління системною шиною. В системі з однією мікросхемою цей вхід повинен бути підключений до входу «Захоплення» мікросхем КР580ВМ80А;
l вхід HLDA (підтвердження захоплення) одержує від КР580ВМ80А сигнал, який свідчить, що мікросхема КР680ВТ57 може приступати до управління системними шинами;
l вхід С (тактовий сигнал), на який подаються тактові імпульси С2 від тактового генератора мікропроцесорної системи;
l вихід SТВА (стробуючий сигнал адреси) стробує старший байт адреси пам'яті що передається через шину даних;
l вихід АЕ (дозвіл адреси) вказує системі, що відбуваються цикли ПДП. Він може бити використаний в системі для блокування адресної шини в пристроях, що не беруть участь в ПДП;
l вихід ТС (кінець рахунку) вказує вибраному зараз периферійному пристрою, що поточний цикл ПДП повинен бити останнім для цього масиву даних. Якщо розряд дозволу «КС-стоп» в регістрі режиму (РгР) встановлений в 1, то вибраний канал буде автоматично заборонений в кінці цього циклу ПДП, тобто в кінці передачі масиву даних. Вивід активізується (встановлюється в 1), коли вміст 14-розрядного регістру циклів (РгЦ) в даному каналі встановлюється в 0. 14 розрядів РгЦ повинні бити завантажені числом N—1, де N—потрібне число циклів ПДП;
l вихід М128 (маркер по модулю 128) вказує вибраному периферійному пристрою, що поточний цикл ПДП є 128-м або кратним 128 від кінця масиву даних. Якщо загальне число циклів ПДП N ділиться на 128 і РгЦ завантажений числом N—1, то сигнал М128 з'являється на 128-м й кожному кратному 128 циклі від кінця масиву даних;
l вхід RDY (готовність) асинхронний й використовується для подовження циклів запису в пам'ять (читання з пам᾽яті) шляхом введення мікросхеми за допомогою сигналу «Готовність» в стан очікування, якщо вибрана пам'ять вимагає більш довгих циклів;
l виводи А0—АЗ — адресні шини. Вони є трьохстабільними виходами й встановлюють розряди 0—3 16-розрядного адресу пам'яті, що генерується мікросхемою під час всіх циклів ПДП.
Схема встановлення режиму зберігає інформацію про запрограмовані режими: автозавантаження; КС-стоп; подовженого запису; звичайного запису; циклічного зсуву пріоритетів; фіксованого пріоритету. Крім того, розряди 0—3 регістру встановлення режиму дозволяють роботу кожного з каналів. Регістр встановлення режиму звичайно завантажується після того, як встановлений регістр адреси (РгА) й регістр циклів (РгЦ).
Регістр встановлення режиму скидається шляхом подачі сигналу на вхід RS, що приводить до заборони роботи всіх каналів у всіх режимах й запобігає конфлікти на шинах при подачі живлення.
Користуватися каналами забороняється до тих пір, поки РгА й РгЦ не будуть завантажені необхідними числами. В гіршому випадку випадковий запит ПДП (DRQ) від периферійного пристрою може викликати цикл ПДП, що приведе до псування даних в пам'яті.
Стан 1 в розряді 4 РгР встановлює режим циклічного зсуву пріоритетів. В цьому режимі після кожного циклу ПДП (але не кожного запиту ПДП) пріоритет кожного каналу змінюється. Канал, який тільки що був обслужений, матиме найнижчий пріоритет, а решта каналів одержить пріоритет, наступний по рівню.
Якщо розряд 4 встановлений в 0, кожний канал ПДП має фіксований пріоритет. В режимі фіксованих пріоритетів канал 0 має найвищий пріоритет, а канал 3 - найнижчий.
Циклічний зсув пріоритетів запобігає монополізації одного з каналів ПДП; послідовність циклів ПДП буде обслуговувати різні канали, якщо дозволено обслуговування більше одного каналу. Всі операції ПДП починаються з первинного привласнення каналу 0 найвищого пріоритету для першого циклу ПДП.
Стан 1 в розряді 5 РгР встановлює режим подовженого запису. В цьому випадку тривалість сигналів (-WR і -WRІО) збільшується шляхом більш ранньої їх активізації в циклі ПДП. Передача даних в мікропроцесорній системі на основі КР580ВМ80А реалізується асинхронно, щоб можна було використовувати різні типи пам'яті і пристроїв вводу / виводу з різним часом доступу до пам'яті. Якщо до пристрою у вказаний інтервал часу доступ неможливий, то воно видає в мікросхему сигнал «Відсутність готовності», тим самим примушуючи її ввійти до одного або більш тактів очікування готовності.
Деякі пристрої відрізняються достатньою швидкодією, щоб отримати до них доступ без використання тактів очікування готовності. Для цього такі пристрої повинні генерувати свій сигнал «Готовність» одночасно з появою фронту сигналу (-WR) або (-WRІО). Проте в процесі формування сигналу «Готовність» він затримується, що може примусити мікросхему увійти до такту очікування готовності. Для обчислювальних систем з цим типом пристроїв режим подовженого запису забезпечує інші тимчасові співвідношення для сигналів (-WR) і (-WRІО), які дають можливість пристроям раніше видати сигнал «Готовність» і отже, виключити такти очікування для мікросхеми, що збільшує пропускну спроможність системи.
Стан 1 в розряді 6 РгР встановлює режим «КС-стоп», при якому після появи сигналу ТС обслужений канал ПДП виявляється забороненим. В результаті автоматично припиняються всякі операції ПДП в даному каналі. Розряд дозволу для даного каналу повинен бути перепрограмований для продовження або початку наступної операції ПДП.
Якщо розряд 6 встановлений в 0, то поява сигналу ТС не забороняє подальше використовування каналу. В цьому випадку сигнал інформує периферію про закінчення операції ПДП.
За наявності 1 в розряді 7 РгР встановлюється режим автозавантаження. Цей режим дозволяє каналу 2 багато разів передавати масив даних без програмного втручання. Регістри каналу 2 встановлюються, як завжди, для однієї передачі масиву. Регістри каналу 3 в цей час бережуть параметри масиву для встановлення регістрів каналу 2 заново (початкова адреса ПДП, число циклів і напрям передачі). Після першої передачі масиву даних через канал 2 і появи сигналу ТС параметри, бережені в регістрах каналу 3, автоматично завантажуються у відповідні регістри каналу 2. Помітимо, що можливості режиму «КС-стоп» не впливають на канал 2, коли розряд 7 встановлений в 1.
Якщо розряд 7 встановлений в 1, то початкові параметри для каналу 2 автоматично дублюються в регістрах каналу 3 при програмуванні каналу 2. Це забезпечує багатократну передачу масиву програмуванням тільки одного каналу. Операція багатократної передачі масиву може бути використана для регенерації зображення на електронно - променевій трубці. Канали 2 і 3 можуть бути завантажені також різними параметрами за умови, що канал 2 завантажується раніше, ніж канал 3. Слід помітити, що в режимі автозавантаження доступний для роботи канал 3, якщо немає запиту ПДП по каналу 2 і розряд дозволу каналу 3 РгР встановлений в 1, використовування цього каналу змінюватиме значення параметрів, які повинні завантажитися в канал 2.
При використовуванні режиму автозавантаження для операцій по скріпленню масивів даних (ланцюжок даних) треба перезавантажувати програмно регістри каналу 3 новими параметрами для передачі наступного масиву даних. Кожного разу, коли в мікросхемі відбувається підміна даних каналу 2 вмістом каналу 3, в регістрі стану (РгС) апаратно встановлюється розряд 4 «Флажок оновлення даних». При цьому підміна відбувається із збереженням інформації в регістрах каналу 3. Повторний запуск каналу 2 відбувається на початку наступного циклу ПДП каналу 2 після появи сигналу ТС. Це перший цикл ПДП нового масиву даних для каналу 2. Розряд «Флажок оновлення даних» в РгС скидається апаратний в кінці цього циклу. Для операцій по скріпленню масивів даних розряд «Флажок оновлення даних» в регістрі стану каналів може контролюватися мікросхемою КР580ВМ80А, щоб визначити, коли параметри наступного масиву даних можуть бути гарантовано завантажені в канал 3.
В розрядах 0—3 РгС апаратно встановлюється «Флаг завершення обслуговування» по відповідному каналу після вироблення сигналу ТС. «Флажок завершення обслуговування» може також контролюватися процесором, проте в результаті прочитування флажок скидається. «Флаг завершення обслуговування» і «Флаг оновлення даних» в РгС можуть бути скинені також сигналом SR або відмовою від режиму автозавантаження шляхом перепрограмування РгР.
Установка розрядів 0—3 регістра установки режимів дозволяє роботу кожного з каналів. Якщо розряд встановлений в 0, то відповідний канал блокується.
Схема управління периферійними пристроями здійснює прийом, формування і видачу сигналів, що забезпечують обмін інформацією між процесором і мікросхемою КР580ВТ57, між пам'яттю і периферійними пристроями. Якщо процесор завантажує або читає один з регістрів мікросхеми КР580ВТ57 (остання є периферійним пристроєм на системній шині), то мікросхема одержує сигнал (-RDІО) або (-WRІО) при(-CS) = 0, декодує молодші адресні розряди А0—А3 і або записує вміст шини даних на той, що адресується розрядами А0—А3 регістр мікросхеми (-WRІО=0), або видає вміст цього регістра на шину даних при (-RDІО) = 0.
В стані обслуговування, коли мікросхема управляє системними шинами, схема генерує сигнали (-RDІО) і (-WR) (цикл запису ПДП) або (-WRІО) і (-RD)(цикл читання ПДП), які управляють каналом даних, пов'язаним з периферійним пристроєм. Якщо мікросхема є периферійним пристроєм по відношенні до процесора, то сигнал (-RDІО)=0, що поступив на вхід (-RDІО), дозволяє зчитування з 8-розрядного регістра стану каналів або старшого (молодшого) байта 16-розрядного регістра адреси, або регістра числа циклів.
Якщо мікросхема знаходиться в стані програмування, то вивід (-WRІО) є входом, а сигнал (-WRІО)=0 дозволяє вміст шини даних завантажити в 8-рoзрядний регістр установки режиму або старший (молодший) байт в 16-розрядний регістр адреси, або регістр числа циклів.
Чотири молодші адресні шини А0—А3 двонаправлені. В режимі програмування вони є входами, які вибирають один з регістрів мікросхеми для прочитування або запису інформації. В режимі обслуговування вони є виходами, на яких встановлюються молодші чотири розряди 16-розрядної адреси пам'яті, що генерується мікросхемою.
Буферна схема даних (БД) є 8-розрядною двонаправленою шиною з трьома станами, що сполучає мікросхему з системною шиною даних.
Двонаправлена шина даних D0—D7 з трьома станами. При програмуванні в режимі запису вісім біт даних для регістра адреси, регістра числа циклів або регістра установки режиму передаються через шину даних з процесора. При читанні процесором вмісту регістра адресу, регістра числа циклів або регістра стану каналів дані передаються в процесор також через шину даних. Протягом циклів ПДП (коли мікросхема управляє системною шиною) вона видає старші вісім розрядів адреси пам'яті (з одного з регістрів адреси ЗУ). Ці розряди адреси видаються на початку кожного циклу ПДП. Потім шина даних звільняється для обміну даними між пам'яттю і периферією протягом частини циклу ПДП.
Необхідною умовою для обслуговування каналу прямого доступу до пам'яті є надходження на мікросхему з периферії сигналу запиту DRQ, внаслідок чого мікросхема виробляє сигнал «Запит захоплення» HRQ для передачі його на процесор. Після отримання від мікропроцесора сигналу «Підтвердження захоплення» HLDA мікросхема здійснює:
ü управління системною шиною;
ü підтвердження запиту периферійного пристрою, який підключений до каналу з щонайвищим пріоритетом;
ü видачу молодших восьми розрядів адреси пам'яті на системні адресні шини А0—А7, а старших восьми розрядів адреси — на шину даних D0—D7;
ü генерацію відповідних сигналів управління (-RD) або (-WRІО), (-RDІО), (-WR), які спонукають периферійний пристрій одержати байт даних з комірки або передати його в комірку пам'яті. За один цикл роботи мікросхема передає один байт даних, причому в першому циклі виробляється адреса комірки, рівна початковій адресі, а в кожному подальшому адреса збільшується на 1 до тих пір, поки число циклів звернень до пам'яті не стане рівним заданому.
Мікросхема управляє системною шиною і повторює послідовність передач до тих пір, поки периферійний пристрій зберігає свій запит. Так мікросхема може передати масив даних в швидкодійний периферійний пристрій або вибрати його з цього пристрою в один прийом. Коли вказана кількість байт передана, мікросхема видає сигнал «Кінець рахунку» ТС, інформуючи про завершення передачі даних.
В процесі виконання циклів ПДП (системні шини знаходяться під управлінням мікросхеми) є три різні режими роботи:
ü режим читання ПДП - забезпечує передачу даних з пам'яті в периферію;
ü режим запису ПДП — забезпечує передачу даних з периферії в пам'ять;
ü режим перевірки ПДП — не включає передачу даних.
Канал ПДП в режимі перевірки не генерує сигнали управління(-RD),(-WR), (-RDІО), (-WRІО), що запобігає передачі даних. Проте в кожному циклі ПДП мікросхема здійснює управління системною шиною і підтверджує запити периферії. Периферія може використовувати сигнали підтвердження для дозволу внутрішнього доступу до кожного байта в масиві даних для того, щоб виконати деякі операції перевірки. Наприклад, масив циклів перевірки ПДП може слідувати за масивом циклів читання ПДП (з пам'яті в периферію) для того, щоб дозволити периферійному пристрою перевірити дані, що знов поступили.
Після закінчення запрограмованого числа циклів ПДП, що характеризується виробленням сигналу ТС, можливі наступні види роботи:
ü подальше нарощування адреси шляхом надбавки 1 в кожному подальшому циклі ПДП;
ü блокування каналу ПДП (режим «КС-стоп»);
ü повторення раніше виробленого масиву адрес (режим автозавантаження).
За наявності двох і більш запитів периферія буде обслуговуватися з щонайвищим пріоритетом. Вид пріоритету встановлюється в процесі програмування.
Є два види установки пріоритету:
ü фіксований, коли канал 0 має щонайвищий пріоритет, а канал 3 — найнижчий;
ü циклічний зсув пріоритету, коли після кожного циклу ПДП пріоритет кожного каналу змінюється.
В процесі функціонування мікросхеми шляхом програмування РгР можна заблокувати (замаскувати) запит будь-якого каналу.
В процесі функціонування у складі мікропроцесорної системи мікросхема може знаходитися в одному з наступних станів: початкове; програмування; очікування; обслуговування.
В початковий стан мікросхема встановлюється після включення шляхом подачі на її вхід SR сигналу «Установка». В цьому стані маскуються запити всіх каналів ПДП, а трьохстабільні буферні схеми системної шини А0—A3 переводяться в стан прийому інформації.
В стані програмування мікросхеми мікропроцесор по системних шинах даних DO—D7 здійснює запис у відповідні регістри мікросхеми початкових даних (початкові адреси і число циклів) і інструкції, що визначає режим роботи мікросхеми при циклах ПДП. При цьому адресат прийому інформації мікросхемою визначається кодом на системних шинах А0—A3.
В стані очікування мікросхема знаходиться від моменту закінчення програмування до отримання сигналу «Підтвердження запиту захоплення» HLDA або в проміжках між масивами циклів ПДП у відсутність запитів ПДП. В стані очікування здійснюється прийом сигналів DRQ і виробляється для мікропроцесора сигнал «Запит захоплення» HRQ. В цьому стані системні шини знаходяться під управлінням мікропроцесора.
Після отримання від мікропроцесора сигналу HLDA за наявності сигналу запиту DRQ мікросхема виробляє сигнал (-DACK) і переходить в стан обслуговування. В цьому стані системні шини знаходяться під управлінням мікросхеми, яка здійснює один із запрограмованих режимів ПДП і генерує набір управляючих сигналів, необхідних для здійснення обміну даними між пам'яттю і периферією.
Регістри мікросхеми завантажуються або з них прочитується інформація, якщо процесор виконує команду запису або читання шляхом звернення до мікросхеми КР580ВТ57 і до відповідних регістрів усередині мікросхеми. Для цього процесору необхідно видати відповідні сигнали запису або читання (-WRІО), (-RDІО) і на системні адресні шини видати адресу регістра мікросхеми. В цей час на шину даних подається необхідна інформація для запису в регістри або ж через шину даних читається інформація з мікросхеми.
Для установки стану програмування необхідно також на мікросхему подати сигнал (-CS)=0, який одержується звичайно шляхом декодування всіх або деяких старших 12 розрядів адреси А4 - А15 (залежно від системної організації пам'яті і пристроїв вводу / виводу). Вхід (-WRІО) (або (-WR) при загальному полі пам'яті і УВВ) указує на запис в регістри мікросхеми, а вхід (-RDІО) або (-RD) — на читання з регістрів.
Розряд A3 дозволяє розрізнити регістри каналів при A3=0, а при А3=1—регістр установки режиму (працює тільки на запис), і регістр стану каналів (працює тільки на читання).
Три молодші розряди А0—А2 вказують конкретний регістр каналу. Якщо адресується регістр установки режиму або регістр стану каналів, то розряди А0—А2 повинні бути встановлені в 0. Коли адресується регістр каналу, розряд АТ дозволяє розрізнити регістри адреси ПДП (при А=0) і числа циклів (при А =1). Розряди А1, А2 дозволяють визначити номер каналу.
У зв'язку з тим, що регістри каналу є 16-разрядными, для їх завантаження або читання необхідні два програмні командні цикли. В мікросхемі є тригер, який автоматично перемикає ланцюги під час виконання операції читання або запису. Цей тригер визначає доступ до старшого або молодшого байта регістра. Скидається тригер шляхом подачі сигналу на вхід SR, а також всякий раз при завантаженні регістра установки режиму. Для забезпечення відповідної синхронізації при зверненнях до регістрів каналу всі команди, що поступають від процесора, повинні з'являтися парами, причому завжди молодший байт регістра повинен дістати доступ до пам'яті першим. Не можна подавати сигнал (-CS) до тих пір, поки сигнал (-RDІО) або (-WRІО) не стане активним, оскільки це може привести до помилкового стану тригера. В системах, що використовують переривання, запити переривання повинні бути заборонені в процесі програмування регістрів каналу, щоб не було розділення парних команд запису або читання регістрів.
Внутрішні операції мікросхеми по переходу із стану очікування в стан обслуговування можуть бути виконані протягом семи тактів. Тривалість тактів визначається тактовою частотою мікросхеми. Якщо мікросхема не виконує циклу ПДП, то вона знаходиться в холостому такті S0 до приходу сигналу запиту ПДП. З приходом сигналу DRQ останній обробляється згідно встановленому пріоритету (фіксованому або циклічному) і виробляється сигнал HRQ. По цьому сигналу мікросхема переходить до такту S1. Це положення зберігатиметься до приходу з процесора сигналу «Підтвердження захоплення» HLDA. Таким чином, стан очікування характеризується перебуванням мікросхеми в тактах S0, S1.
При отриманні сигналу HLDA збуджується шина (-DACK) каналу, що має запит з найвищим пріоритетом. Таким чином здійснюється вибірка каналу і відповідного периферійного пристрою для циклу ПДП, і мікросхема переходить до такту S2. Помітимо, що сигнал HLDA повинен залишатися з високим рівнем напруги до тих пір, поки не з'явиться сигнал (-DACK) при одному циклі ПДП або обидва сигнали (-DACK) і ТС при передачі масиву. Якщо мікросхема втратить управління системними шинами, тобто якщо сигнал HLDA стане рівним 0, то сигнал (-DACK) зберігатиметься до закінчення поточного циклу ПДП. Після цього цикли ПДП припиняються до тих пір, поки мікросхема знову не одержить управління системними шинами.
Кожний цикл ПДП (стан обслуговування) містить не менше чотирьох тактів: S2, S3, S4, S5. Якщо час доступу до пам'яті і УВВ, включених в систему, недостатньо для передачі байта у вказане число тактів, то між тактами S4 і S5 вводиться один і більш тактів очікування SwI. Використовування подовженого запису може в деяких випадках виключити такти очікування. Якщо в циклах ПДП здійснюється режим перевірки, то сигнал RDY не потрібен.
Таблиця 3.23
Презначення виводів
Дата добавления: 2015-07-20; просмотров: 198 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Програмований пристрій вводу/виводу - мікросхема КР580ВВ55А | | | Програмований контролер переривань (ПКП) - мікросхема KP580BH59 |