мікропроцесори
Організація введення / виведення в мікопроцессорной системі
Введенням / висновком (ВВ) називається передача даних між ядром ЕОМ, що включає в себе мікропроцесор і основну пам'ять, і зовнішніми пристроями (ВУ). Це єдиний засіб взаємодії ЕОМ з "зовнішнім світом", і архітектура ВВ (режими роботи, формати команд, особливості переривань, швидкість обміну і ін.) Безпосередньо впливає на ефективність всієї системи. За час еволюції ЕОМ підсистема ВВ зазнала найбільших змін завдяки розширенню сфери застосування ЕОМ і появи нових зовнішніх пристроїв. Особливо важливу роль засобу ВВ грають в керуючих ЕОМ. Розробка апаратних засобів і програмного забезпечення ВВ є найбільш складним етапом проектування нових систем на базі ЕОМ, а можливості ВВ серійних машин є один з важливих параметрів, що визначають вибір машини для конкретного застосування.
Програмна модель зовнішнього пристрою
Підключення зовнішніх пристроїв до системної шини здійснюється за допомогою електронних схем, званих контролерами ВВ (інтерфейсами ВВ). Вони погодять рівні електричних сигналів, а також перетворять машинні дані в формат, необхідний пристрою, і навпаки. Зазвичай контролери ВВ конструктивно оформляються разом з процесором у вигляді інтерфейсних плат.
Регістр, що містить групу біт, до якої процесор звертається в операціях ВВ, утворює порт ВВ. Таким чином, найбільш загальна програмна модель зовнішнього пристрою, який може виконувати введення і виведення, містить чотири регістри ВВ: регістр вихідних даних (вихідний порт), регістр вхідних даних (вхідний порт), регістр управління і регістр стану (рис. 3.1). Кожен з цих регістрів повинен мати однозначну адресу, який ідентифікується дешифратором адреси. Залежно від особливостей пристрою загальна модель конкретизується, наприклад, окремі регістри стану і управління об'єднуються в один регістр, у пристрої введення (виведення) є тільки регістр вхідних (вихідних) даних, для введення і виведення використовується двонаправлений порт.
Мал. 3.1. Програмна модель зовнішнього пристрою
Безпосередні дії, пов'язані з введенням / висновком, реалізуються одним з двох способів, що розрізняються адресацією регістрів ВВ.
Інтерфейс з ізольованими шинами характеризується роздільної адресацією пам'яті і зовнішніх пристроїв при обміні інформацією. Ізольований ВВ передбачає наявність спеціальних команд введення / виведення, загальний формат яких показаний на рис. 3.2. При виконанні команди введення IN вміст адресується вхідного регістра PORT передається у внутрішній регістр REG процесора, а при виконанні команди OUT вміст регістра REG передається в вихідний порт PORT. У процесорі можуть бути і інші команди, які стосуються ВВ і пов'язані з перевіркою і модифікацією вмісту регістра управління і стану.
Мал. 3.2. Команди введення / виведення (загальний формат)
Неважко помітити, що в цьому способі адресний простір портів введення і виведення ізольовано від адресного простору пам'яті, тобто в ЕОМ один і той же адресу можуть мати порт ВВ і осередок пам'яті. Поділ адресних просторів здійснюється за допомогою керуючих сигналів, що відносяться до систем ВВ і пам'яті (MEMRD # - зчитування даних з пам'яті, MEMWR # - запис даних в пам'ять, IORD # - читання порту ВВ, IOWR # - запис в порт ВВ) (# - активний низький рівень сигналів).
У ЕОМ, розрахованої на ізольований ВВ, неважко перейти до ВВ, відображеному на пам'ять. Якщо, наприклад, адресний простір пам'яті становить 64 Кбайт, а для програмного забезпечення досить 32 Кбайт, то область адрес від 0 до 32 К-1 використовується для пам'яті, від 32 К до 64 К-1 - для введення / виведення. При цьому ознакою, диференціюються звернення до пам'яті і портів ВВ, може бути старший біт адреси.
Таким чином, інтерфейс із загальними шинами (введення / виведення з відображенням на пам'ять) має організацію, при якій частина загального адресного простору відводиться для зовнішніх пристроїв, регістри яких адресуються так само, як і осередку пам'яті. В цьому випадку для адресації портів ВВ використовуються повні адресні сигнали: READ - читання, WRITE - запис.
В операційних системах ЕОМ є набір підпрограм (драйверів ВВ), керуючих операціями ВВ стандартних зовнішніх пристроїв. Завдяки їм користувач може не знати багатьох особливостей ВУ і інтерфейсів ВВ, а застосовувати чіткі програмні протоколи.
<<< зміст >>>