Предмет:
Тип роботи:
Курсова робота
К-сть сторінок:
50
Мова:
Українська
до передачі даних, про наявність помилок при обміні і т.п. Стан зазвичай представляється в декодованому формі - один біт для кожної ознаки.
Реєстр, що містить групу біт, до якої процесор звертається в операціях ВВ, утворює порт ВВ. Таким чином, найбільш загальна програмна модель зовнішнього пристрою, який може виконувати введення та виведення, містить чотири реєстри ВВ: реєстр вихідних даних (вихідний порт), реєстр вхідних даних (вхідний порт), реєстр управління і реєстр стану (Рис 1.1).Кожен з цих реєстрів повинен мати однозначну адресу, який ідентифікується дешифратором адреси. Залежно від особливостей пристрою загальна модель конкретизується, наприклад, окремі реєстри стану та управління об'єднуються в один реєстр, у пристрої введення (виведення) є тільки реєстр вхідних (вихідних) даних, для введення і виведення використовується двонаправлений порт.
Рис 1.1 Загальна програмна модель зовнішнього пристрою
Безпосередні дії, пов'язані з введенням/виведенням, реалізуються одним із двох способів, що розрізняються адресацією реєстрів ВВ.
Інтерфейс з ізольованими шинами характеризується роздільною адресацією пам'яті і зовнішніх пристроїв при обміні інформацією. Ізольований ВВ передбачає наявність спеціальних команд введення/виводу, загальний формат яких показаний на Рис 1.2. При виконанні команди введення IN вміст вхідного реєстра PORT передається у внутрішній реєстр REG процесора, а при виконанні команди OUT вміст реєстра REG передається у вихідний порт PORT. У процесорі можуть бути і інші команди, пов'язані з ВВ і пов'язані з перевіркою і модифікацією вмісту реєстра управління та стану.
Рис 1.2. Команди введення/виводу (загальний формат)
Неважко помітити, що в цьому способі адресний простір портів введення і виведення ізольовано від адресного простору пам'яті, тобто в ЕОМ один і той же адресу можуть мати порт ВВ і осередок пам'яті. Поділ адресних просторів здійснюється за допомогою сигналів, що відносяться до систем ВВ і пам'яті (MEMR # - зчитування даних з пам'яті, MEMW # - запис даних в пам'ять, IOR # - читання порту ВВ, IOW # - запис в порт ВВ) (# -активний низький рівень сигналів).
У ЕОМ, розрахованої на ізольований ВВ, неважко перейти до ВВ, відображеному на пам'ять. Якщо, наприклад, адресний простір пам'яті становить 64 Кбайт, а для програмного забезпечення досить 32 Кбайт, то область адрес від 0 до 32 К-1 використовується для пам'яті, від 32 К до 64 К-1 - для введення/виводу. При цьому ознакою, диференціюються звернення до пам'яті і портів ВВ, може бути старший біт адреси.
Таким чином, інтерфейс із загальними шинами (введення/виведення з відображенням на пам'ять) має організацію, при якій частина загального адресного простору відводиться для зовнішніх пристроїв, реєстри яких адресуються так само, як і осередки пам'яті. В цьому випадку для адресації портів ВВ використовуються повні адресні сигнали: READ - читання, WRITE — запис.
В операційних системах ЕОМ є набір підпрограм (драйверів ВВ), які керують операціями ВВ стандартних зовнішніх пристроїв. Завдяки їм користувач може не знати багатьох особливостей ЗП та інтерфейсів ВВ, а застосовувати чіткі програмні протоколи.
1.2 Паралельна передача даних
Паралельна передача даних між контролером і ЗП є за своєю організацієюнайбільш простим способом обміну. Для організації паралельної передачіданих крім шини даних, кількість ліній в якій дорівнює числу одночаснопереданих бітів даних, використовується мінімальна кількість керуючих сигналів.
Для формування керуючого сигналу "Вихідні дані готові" і прийому з ЗП керуючого сигналу "Дані прийняті" в контролері використовується однорозрядних адресується реєстр стану й керування А2 (зазвичай використовуються роздільні реєстр стану і реєстр управління). Одночасно із записом чергового байта даних із шини даних системного інтерфейсу в адресується реєстр даних контролера (порт виводу А1) в реєстр стану й керування записується логічна одиниця. Тим самим формується керуючий сигнал "Вихідні дані готові" в шині зв'язку з ЗП.
ЗП, прийнявши байт даних, керуючим сигналом "Дані прийняті" обнуляє реєстр стану контролера. При цьому формуються керуючий сигнал системного інтерфейсу "Готовність ЗП" і ознака готовності ЗП до обміну, рухаючись в процесор по одній з ліній шини даних системного інтерфейсу за допомогою стандартної операції введення при реалізації програми асинхронного обміну.
Логіка управління контролера забезпечує селекцію адрес реєстрів контролера, прийом керуючих сигналів системного інтерфейсу і формування на їх основі внутрішніх керуючих сигналів контролера, формування керуючого сигналу системного інтерфейсу "Готовність ЗП".Для сполучення реєстрів контролера з шинами адреси і даних системного інтерфейсу в контролері використовуються відповідно приймачі шини адреси і приймачі шини даних.
Розглянемо на прикладі, яким чином контролер ЗП забезпечує паралельну передачу даних в ЗП під управлінням програми асинхронного обміну.Алгоритм асинхронного обміну в даному випадку передачі простий.
1. Процесор мікроЕОМ перевіряє готовність ЗП до прийому даних.
2. Якщо ЗП готово до прийому даних (в даному випадку це логічний 0 в нульовому розряді реєстру А2), то дані передаються з шини даних системного інтерфейсу в реєстр даних А1 контролера і далі в ЗП. Інакше повторюється п. 1.
Приклад 1.1. Фрагмент програми передачі байта даних в асинхронному режимі з використанням паралельного контролера ЗП (Рис 1.5). Для написання програми асинхронної передачі скористаємося командами процесора 8086.
MOV
DX, A2номер порта A2 вводимо в DX
m1:INAL,