22979

Прямий доступ до пам’яті (ПДП)

Лекция

Коммуникация, связь, радиоэлектроника и цифровые приборы

Контролер ПДП Забезпечити роботу в режимі захоплення шин можна за допомогою логічних схем та тригерів саме так це зроблено наприклад у €œМікролабі€ але зручніше скористатися спеціальною ВІС контролером прямого доступу до пам’яті КПДП. Працює КПДП в двох сильно відмінних один від одного режимах: в режимі програмування коли мікропроцесор €œзакладає€ в нього необхідні інструкції і в режимі обміну даними між зовнішнім пристроєм і ОЗП. Схематичне зображення ІМС КПДП типу КР580ВТ57 подано на рис. В режимі програмування вони...

Украинкский

2013-08-04

3.8 MB

1 чел.

Лекція № 10

Прямий доступ до памяті (ПДП)

 При роботі з ЕОМ або мікропроцесорними системами часто виникає потреба швидко розмістити в операційній памяті великі масиви даних або швидко перенести їх з памяті до зовнішніх пристроїв. Темп такого обміну даним може бути дуже великим. Так наприклад, при обміні з накопичувачем на магнітних дисках темп, що ним задається, становить порядку кількох байтів за мікросекунду. Високі швидкості обміну задаються також сучасними АЦП, що обробляють дані про швидкоплинні процеси. Так наприклад, паралельний АЦП типу К1107ПВ1 має цикл перетворення тривалістю в 100 нс, а К1107ПВ3А навіть 20 нс.

Шлях обміну даним по ланцюжку “зовнішній пристрій - ППА  мікропроцесор - память” (або в зворотному напрямку) виявляється надто повільним, оскільки акт обміну байтом виконується за кілька машинних циклів, котрі звичайно мають тривалість у кілька мікросекунд. Тому в подібних ситуаціях доцільно використовувати метод прямого доступу до памяті .

Принцип прямого доступу до памяті (ПДП) 

При прямому доступу до памяті керування шинами вилучається спід контролю мікропроцесора і передається спеціальній ІМС, котра і організовує “прямий контакт” зовнішнього пристрою з памяттю, обминаючи мікропроцесор.  На час такого обміну виконання мікропроцесором фонової програми припиняється і він мов-би “завмирає”.

Перехід до режиму ПДП ініціюється сигналом запиту з боку зовнішнього пристрою на “захоплення шин”. Сигнал запиту потрапляє на вхід МП “HOLD“- “Запит на захоплення шин”. У кожному машинному циклі МП перевіряє чи не зявився такий сигнал і якщо він поступив, то по закінченню машинного циклу МП перериває свою роботу, припиняє виконання фонової програми і переводить свої виводи ШД і ША у високоімпедансний стан, відключаючись тим від цих шин. Далі МП виставляє на своєму виході HLDA сигнал високого рівня (“Підтвердження на захоплення шин”), дозволяючи зовнішньому пристрою користуватися шинами для ПДП.

Одержавши право на захоплення шин, зовнішній пристрій використовує системні шини для безпосереднього обміну з памятю, подібно до того, як це звичайно робить мікропроцесор. По закінченню обміну по ПДП зовнішній пристрій виставляє сигнал HOLD = 0 і МП знову одержує можливість нормально працювати і користуватись шинами.

Контролер ПДП

Забезпечити роботу в режимі захоплення шин можна за допомогою логічних схем та тригерів (саме так це зроблено, наприклад, у “Мікролабі”), але зручніше скористатися спеціальною ВІС - контролером прямого доступу до памяті (КПДП). У мікропроцесорному комплекті К580 це ІМС типу КР580ВТ57, або у міжнародних позначеннях 8257. Вона здатна керувати прямим доступом до памяті чотирьох зовнішніх пристроїв. Якщо треба більше, то слід скористатися касадуванням. Слід підкреслити, що контролер ПДП лише керує роботою шин - самі передавані дані через нього не проходять, а ідуть прямо по шині даних, до якої підключені тепер безпосередньо як ЗП, так і оперативна память.

Працює КПДП в двох сильно відмінних один від одного режимах: в режимі програмування, коли мікропроцесор “закладає” в нього необхідні інструкції, і в режимі обміну даними між зовнішнім пристроєм і ОЗП. Схематичне зображення ІМС КПДП типу КР580ВТ57 подано на рис.10.1.

Тут  D0 - D7 - входи/виходи даних. В режимі програмування вони використовуються для введення програми роботи КПДП; в режимі обміну даними виводи D0 - D7 служать виходами  для видачі старших бітів  адреси (А15 - А8) комірок памяті ОЗП.  Через виводи А7 - А0  видаються молодші біти адреси шістнадцятирозрядної адреси ОЗП.. В режимі програмування А3 - А0 служать як входи для вибору і програмування  каналів обміну; А7 - А4 відключені.

 - вибір мікросхеми; активізується нулем при програмуванні контролера. Підключається до ША ( до розрядів А7 - А4) через дешифратор. В режимі обміну  відключено.

 та  в режимі програмування вказують на напрямок руху даних ( = 0 - запис програми до КПДП;   = 0 -  читання слова стану з КПДП). В режимі обміну вони вказують зовнішньому пристрою, що той має робити:  = 0 - сприймати дані;  = 0 - видавати дані.

,  - сигнали для керування ОЗП:  = 0 - запис до ОЗП;   = 0 - читання з ОЗП.

 DRQ N ( N від 0 до 3) - вхід для сигналу запиту на захоплення шин, що надходить від N - того зовнішнього пристрою.

 HRQ - сигнал запиту на захоплення шин, що його надсилає КПДП на вхід HOLD мікропроцесора.

HLDA - згода на захоплення шин (надходить від мікропроцесора).

      CLK - вхід для тактових імпульсів (надходить від F2 ).

      RESET - скидання. Після зняття сигналу RESET = 1 контролер готовий для сприймання програмування.

     READY - підтвердження готовності від зовнішнього пристрою або ОЗП.

     N - підтвердження запиту на прямий доступ до памяті, що його надсилає КПДП до N - того зовнішнього пристрою. N = 0 дозволяє N-тому  ЗП здійснювати обмін.

    ADSTB та AEN - службові сигнали; їх зміст ми розглянемо трохи згодом.

         MARС та TC - сигнали що інформують про наближення до кінця обміну та кінець обміну. ( MARK - попередження, що до кінця обміну лишається кількість циклів кратне до 128 10 ).

Табл.10.1.

Призначення виводів КПДП типу КР580ВТ57

    N виводів

Позна-

чення

          В режимі

       програмування

      В режимі обміну

Примітки

21  -  23

26  -  30

D7 - D0

Підключені до ШД  МП.

Сприймають керуючі слова

або виводять слово стану.

Підключені через буферний

регістр до ША. Видають          старший  байт адреси

           А15 - А8.

32  -  35

37  -  40

А3  -  А0

А7  -  А4

Служать для вибору каналів.

Відключені від ША.

Видають молодший байт

    адреси А7  -  А0.

   11

  

= 0 дозволяє програму-

   вання від МП по ШД.

     Підключений через     дешифратор  до А7  -  А4.

     Відключений.

    1

 

 При  = 0 МП читає

         слово стану

По  = 0 відбувається

  читання з зовн. пристрою.

ЗП ОЗП

    4

      Відключений 

По = 0 відбувається

        запис у память

“----------“

     2

 

  При   = 0  КПДП

 сприймає керуюче слово

             віл МП.

По   = 0 відбувається

       запис у память

ОЗП ЗП

     3

 

      Відключений

По =0 відбувається

читання з памяті за адресами  що їх вилає        КПДП

“----------“

 

В режим програмування

КПДП входить після зняття

сигналу RESET=1 і встанов-

        лення = 0

Після програмування КПДП

  знаходиться у холостому

режимі . В режим обміну

входить за сигналом HLDA=1від мікропроцесора.

Режим програмування КПДП

Підготування до програмування КПДП полягає в подачі на вхід RESET сигналу високого рівня тривалістю не менш 0.3 мкс.  Тоді входи , ,

А3 - А0 і  переходять у стан сприймання інформації і контролер настроюється на режим програмування.

При програмуванні мікропроцесор визначає, які з чотирьох каналів  звязку з ЗП діятимуть, і з якими пріоритетами, а також повідомляє контролеру таку інформацію:1

- початкову адресу ОЗП тої області памяті куди записуватимуться дані або з якої вони будуть зчитуватися;

- обєм масиву, що підлягає обміну;

- напрямок обміну (з зовнішнього пристрою в память або навпаки).

Усі ці дані закладаються до КПДП за допомогою трьох керуючих слів, для кожного з каналів окремо. По закінченню сприймання керуючих слів контролер переходить у холостий стан і готовий здійснювати керування обміном як тільки від одного з ЗП надійде запит на захоплення шин.

Для перевірки стану контролера мікропроцесор має змогу запитати слово стану контролера.

Робота в режимі обміну

 Після того як КПДП запрограмований, він перебуває у холостому стані і очікує надходження запиту на захоплення шин. Як тільки такий запит надійде від будь-якого зовнішнього пристрою ( напр. DRQ N = 1, тобто від N - того ЗП), контролер виробляє запит на захоплення шин HRQ і надсилає його до мікропроцесора. Той зупиняє свою роботу і відповідає сигналом згоди HLDA. Контролер пересилає сигнал згоди ( N = 0)  N - тому зовнішньому пристрою, котрий надсилав запит, і той приступає до обміну.

Рис 10.2

Трохи раніше за сигнал   контролер виставляє адресу вказаної в програмі першої комірки памяті. Молодший байт адреси надходить до ОЗП з виходів А7 - А0 звичайним шляхом по шині адреси. Що ж до старшого байту, то він видається з виходів D7 - D0 і потрапляє на ШД. Щоб вивести його на ША використовується буферний регістр - фіксатор (напр. КР580ИР82) . Старший байт адреси надходить по ШД на його інформаційні входи і записується по адресному стробу ADSTB що його виставляє КПДП. Сигналом AEN  записана адреса виводиться на інформаційні виходи регістра - фіксатора і по лініях А15 - А8 подається на ОЗП.2  . Одночасно  сигналом AEN  блокується системний контролер (по його входу ), щоб той не заважав роботі КПДП.

Одночасно з формуванням адреси контролером виробляються сигнали  і   (при запису з зовнішнього пристрою з память) або  і  ( при запису з памяті у зовнішній  пристрій). Якщо ОЗП і ЗП готові до обміну (READY = 1), то відбувається обмін одним байтом . Обмін іде поза мікропроцесором і КПДП, безпосередньо по шині даних, до якої підключені як ОЗП, так і ЗП. Цим забезпечується швидкість обміну.

 По закінченню обміну байтом лічильник адреси комірки памяті інкрементується, а вміст лічильника кількості актів обміну декрементується, і акт обміну байтом повторюється . Коли вміст лічильника КПДП стає рівним нулю, видається сигнал закінчення обміну ( ТС = 1) і робота КПДП припиняється.

Наступний запит на захоплення шин відновлює процес обміну за тією ж програмою, котра була закладена в контролер при його попередньому програмуванні. Якщо ж бажано щось змінити в програмі, то КПДП слід програмувати знову.

Програмування КПДП

Щоб розпочати програмування  слід подати і зняти сигнал RESET = 1 і подати   = 0. Після цього КПДП входить у режим програмування. При програмуванні керуючими словами  має бути надіслана до КПДП така інформація (окремо для кожного каналу):

     - початкова адреса масиву в ОЗП;

- обєм масиву;

- напрямок передачі;

- пріоритети обслуговування каналів ;

    - і ще деяка службова інформація.

Для цього КПДП програмується трьома однобайтовими керуючими словами: словом початкової адреси, словом обєму масиву і словом режиму.

 Початкова адреса масиву являє собою 16 - розрядне число. Воно передається по частинам; спочатку молодший байт, потім старший. Запис адреси масиву відбувається за адресою відповідного каналу КПДП. Старші розряди цієї адреси  А7 - А4 фіксовані ( ними КПДП активізується через дешифратор), молодші задані для відповідного каналу в першій частині табл.10.2. Так наприклад, для каналу з нульовим номером К0  запис адреси масиву проводиться за адресою А3 - А0 = 0000; для  К1    А3 - А0 = 0010.

 Приклад:   Нехай старший напівбайт адреси КПДП  А7 - А4 = 1111. Треба записати в канал К0  початкову адресу масиву 0415Н. Програма матиме такий вигляд:

                        MVI A, 15     -молодший байт адреси масиву

                            OUT F0     - адреса першого керуючого слова К0

                        MVI A, 04     - старший  байт адреси масиву

                          OUT F0   - адреса першого керуючого слова К0

 

 Обєм масиву   може складати до 16 кбайт. Тому його розмір описується 14 - розрядним числом. Два надлишкових старших біти використовуються для визначення напрямку передачі: 01 - в память  з ЗП; 10 - з памяті до ЗП. Одержане 16 - розрядне число також передається по окремих байтах за адресами, які вказані у другій частині табл.10.2.

Слід спеціально відмітити що при запису обєму масиву треба вказувати число на одиницю менше за реальний обєм масиву. Так наприклад,  для запису в ОЗП масиву з пяти чисел слід скласти таку програму:

                                             MVI A, 04   -молодший байт величини обєму

                                             OUT F1    - адреса  другого керуючого слова К0

                                             MVI A, 40   - молодший байт величини обєму

                                             OUT F1    - адреса  другого керуючого слова К0

 Керуюче слово режиму (третє керуюче слово) має таку структуру:

 D0 - D3 - дозвіл на обслуговування запитів на ПДП по каналах. Одиниця у N - тому розряді означає що відповідний N - тий канал задіяно. Якщо ж стоїть нуль, то цей канал не працює, він, як то кажуть, “замаскованний”.

 D4 визначає пріоритет каналів. При D4 = 0 пріоритети фіксовані (К0 має найвищий пріоритет); при D4 = 1 пріоритети циклічно змінюються.

 D5 = 1 визначає що тривалість сигналів та  збільшена для узгодження зі швидкодією зовнішніх пристроїв;

 D6 = 1  забороняє роботу каналу по закінченню обміну;

D7 = 1 визначає режим автозавантаження.

Третє керуюче слово записується за адресою А3 - А0 = 1000; за цією ж адресою можна прочитати слово стану КПДП. Біти А7 - А4 фіксовані (як і у попередніх випадках).

Так наприклад, при роботі тільки по каналах К0 та К1 (інші канали замасковані), з фіксованими пріоритетами, з забороною роботи по закінченню обміну, керуюче слово режиму матиме вигляд 0100 0011 = 43Н.

Отже, програма запису цього слова буде

                                          MVI A, 43

                                          OUT  F8 

 Після запису керуючих слів КПДП переходить у холостий стан і очікує на запит на захоплення шин. Одержавши такий запит він переходить у режим обміну (якщо тільки при попередньому обміні його не було заблоковано бітом D6 = 1 керуючого слова режиму). 

  


 

А также другие работы, которые могут Вас заинтересовать

28372. Защита права собственности: понятие, система способов защиты 14.67 KB
  Защита права собственности: понятие система способов защиты. Вещноправовые средства защиты права собственности характеризующиеся тем что они направлены непосредственно на защиту права собственности как абсолютного субъективного права не связаны с какимилибо конкретными обязательствами и имеют целью либо восстановить владение пользование и распоряжение собственника принадлежащей ему вещью либо устранить препятствия или сомнения в осуществлении этих правомочий. Соответственно к вещноправовым искам относятся иск об истребовании имущества...
28373. Вещно-правовые способы защиты права собственности 15.02 KB
  К вещноправовым искам относятся: 1иск об истребования имущества из чужого незаконного владения виндикационный иск; 2 иск об устранении нарушений не связанных с лишением владения негаторный иск; 3иск об признании пр. Виндикационный иск это внедоговорные требования не владеющего собственника к фактическому владельцу имущества о возврате имущества. Сущностью этого иска является возврат собственнику конкретного индивидуально определенного имущества выбывшего из его владения вне его воли. иска: 1необходимо что бы собственник был лишен...
28374. Понятие, объекты и субъекты авторского права и смежных прав 15.51 KB
  В субъективном смысле АП – совокупность субъективных прав возникающих у автора в связи с созданием конкретного произведения литературы науки и искусства. Объекты авторского права – произведения литературы науки и искусства являющиеся результатом творческой деятельности независимо от назначения и достоинства произведения а также способа его выражения. а литературные произведения включая программы для ЭВМ – художественные документальные учебные произведения тексты песен и др.; б драматические и музыкальнодраматические произведения...
28375. Авторские и смежные права, срок их действия 14.7 KB
  Авторские и смежные права срок их действия. Личные неимущественные права право авторства право на имя и право на защиту репутации автора охраняются бессрочно. Имущественные права ограничены сроком жизни автора и 70 годами после его смерти. Однако если автор в течение этого периода раскроет свою личность или его личность не будет далее оставлять сомнений то применяется общий срок действия авторского права в течение жизни и 70 лет после смерти; б авторское право на произведение созданное в соавторстве действует в течение всей жизни и...
28376. Защита авторских и смежных прав 14.34 KB
  Защита авторских и смежных прав. Защита авторских и смежных прав – это совокупность мер целью которых является восстановление и признание этих прав в случае их нарушения. В зависимости от отрасли права обеспечивающей защиту авторских и смежных прав выделяют следующие способы защиты. Гражданскоправовой способ защиты – возмещение имущественного ущерба автору или иному правообладателю.
28377. Понятие и субъекты патентного права 14.75 KB
  Понятие и субъекты патентного права. Патентное право в объективном смысле совокупность норм регулирующих имущественные и личные неимущественные отношения возникающие в связи с признанием авторства и охраной изобретений полезных моделей и промышленных образцов установлением режима их использования материальным и моральным стимулированием и защитой права их авторов и патентообладателей. Субъектами патентного права являются авторы изобретений полезных моделей и промышленных образцов патентообладатели а также другие лица не авторы...
28378. Объекты патентного права: понятие, признаки 14.67 KB
  Объектами патентного права являются изобретения полезные модели и промышленные образцы. Органом осуществляющим акт признания новшества в качестве изобретения является федеральный орган исполнительной власти по интеллектуальной собственности Федеральная служба по интеллектуальной собственности патентам и товарным знакам Роспатент. В качестве изобретения согласно ст. Уровень техники служащий критерием новизны изобретения включает любые сведения ставшие общедоступными в мире до даты приоритета изобретения.
28379. Оформление права на изобретение, полезную модель, промышленный образец 15.02 KB
  Оформление права на изобретение полезную модель промышленный образец. Права на изобретение полезную модель и промышленный образец охраняет закон и подтверждает патент на изобретение и промышленный образец и свидетельство на полезную модель патент. Документы которые должны быть в заявке: на изобретение: заявление о выдаче патента указываются автор лицо на имя которого испрашивается патент их местонахождение; полное описание изобретения; формула изобретения выражающая его сущность; чертежи и иные необходимые материалы; документ...
28380. Право автора и патентообладателей, их защита 13.61 KB
  Право автора и патентообладателей их защита. патентообладателей. Защита прав авторов и патентообладателей осуществляется как в судебном так и в адм. Административный порядок защиты прав авторов и патентообладателей предполагает их обращение в специальное подразделение федерального органа по интеллектуальной собственности.