Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1.АРХІТЕКТУРА.doc
Скачиваний:
18
Добавлен:
15.09.2019
Размер:
2 Мб
Скачать
☆

14. Організація введення-виведення в режимі прямого доступу до пам’яті. Робота контролера прямого доступу до пам’яті. Канали прямого доступу до пам’яті.

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

Одним зі способів операцій введення/введення є прямий доступ до пам ’яті, коли спеціалізований процесор модуля підсистеми введення/введення приймає на себе всі дії по передачі інформації між оперативною пам’яттю комп’ютера і зовнішнім пристроєм.

Під системними ресурсами розуміють: адреси пам'яті; канали запитів переривань (TRQ); канали прямого доступу до пам'яті (DMA); адреси портів вводу/виводу.

В даному перерахунку системні ресурси розміщені в порядку зменшення ймовірності виникнення конфліктів.

При кількісному порівнянні конфліктів IRQ і DMA можна прийти до висновку, що конфліктів, иов'язаних з ресурсами IRQ, виникає значно більше, ніж з ресурсами DMA, оскільки переривання запитуються частіше.

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

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

Канали прямого доступу до пам'яті (DMA) використовуються пристроями, що здійснюють високошвидкісний обмін даними. Послідовний і паралельний порти, наприклад, не використовують DMA, на відміну від звукової плати чи адаптера SCSI. Один канал DMA може використовуватися різними пристроями, але не одночасно. Наприклад, канал DMA 1 може використовуватися як мережевим адаптером, так і накопичувачем на магнітній стрічці, але ви не зможете записувати інформацію на стрічку при роботі в мережі. Для цього кожному адаптеру необхідно виділити свій канал DMA. Канали DMA 8-розрядної шини ISA. У цій шині для швидкісної передачі даних між пристроями вводу-виводу і пам'яттю можна використовувати чотири канали DMA. Стандартний розподіл цих каналів приведене в таб.

Канал DMA

Стандартна функція

Тип слота (адаптера)

0

Регенерація динамічної пам'яті

Нет

1

Доступний

8-розрядний

2

Контролер гнучких дисків

8

3

Контролер жорсткого диска

8

15. Розподіл простору пам’яті комп’ютера й зовнішніх пристроїв. Непряма адресація. Регістри стану зовнішніх пристроїв. Взаємодія зовнішніх пристроїв з центральним процесором в режимі програмного управління введенням-виведенням.

Прямая адресация. В этом типе адрес данных сам является частью инструкции. Когда процессор декодирует инструкцию, он получает адрес ячейки памяти, откуда может быть считана (куда может быть записана) требуемая информация. Mov Reg. [Addr] В данном случае операнд Addr указывает на область памяти, содержащее данные и копирует их в указанный регистр Reg.

Непряма адресация. В этом случае адрес может храниться в регистре. Инструкции будут обращаться к регистру, содержащему адрес. То есть, для получения данных, инструкция должна декодировать данные соответствующего регистра. Содержимое регистра будет обработано как адрес, используя который, будет считана/записана информация из/в соответствующую область памяти.

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

  1. сформировать начальный адрес области обмена ОП;

  2. занести длину передаваемого массива данных в один из внутренних регистров, который будет играть роль счетчика;

  3. выдать команду чтения информации из УВВ; при этом на шину адреса из МП выдается адрес УВВ, на шину управления - сигнал чтения данных из УВВ, а считанные данные заносятся во внутренний регистр МП;

  4. выдать команду записи информации в ОП; при этом на шину адреса из МП выдается адрес ячейки оперативной памяти, на шину управления - сигнал записи данных в ОП, а на шину данных выставляются данные из регистра МП, в который они были помещены при чтении из УВВ;

  5. модифицировать регистр, содержащий адрес оперативной памяти;

  6. уменьшить счетчик длины массива на длину переданных данных;

  7. если переданы не все данные, то повторить шаги 3-6, в противном случае закончить обмен.

Как видно, программно-управляемый обмен ведет к нерациональному использованию мощности микропроцессора, который вынужден выполнять большое количество относительно простых операций, приостанавливая работу над основной программой. При этом действия, связанные с обращением к оперативной памяти и к периферийному устройству, обычно требуют удлиненного цикла работы микропроцессора из-за их более медленной по сравнению с микропроцессором работы, что приводит к еще более существенным потерям производительности ЭВМ.

Как правило, регистры внешних устройств имеют четные адреса, однако при помощи байтовых команд можно обращаться к любому байту 16- разрядного регистра. Каждое внешнее устройство может иметь несколько различных регистров. Регистр состояния (РС) содержит информацию об операции, выполняемой внешним устройством, характеризует состояние внешнего устройства и участвует в операциях по предоставлению прерывания.

Бит регистра состояния

Название

Назначение

3

ERR

0 - принтер сигнализирует об ошибке

4

SEL

1 - принтер "выбран"

5

PO

1 - нет бумаги

6

ACK

0 - готов к приему следующ. символа

7 (инвертирован по отношению к сигналу на контакте разъема)

BSY

0 - занят или отключен

Таблица 3. Формат регистра состояния порта принтера

15