39 ПОНЯТТЯ ІНТЕРФЕЙСУ
39 ПОНЯТТЯ ІНТЕРФЕЙСУ
Під поняттям «інтерфейс» прийнято розуміти набір засобів, що використовуються взаємодії двох систем. У перекладі з англійської слово interface буквально означає місце дотику, а під системами, між якими здійснюється така взаємодія, можуть матися на увазі різні об'єкти. Наприклад, це може бути взаємодія між обладнанням і людиною, різними видами обладнання, але найчастіше під інтерфейсом мають на увазі систему взаємодії програми з людиною для обміну даними та отримання потрібної інформації.
Інтерфейс (interface) - це сукупність засобів, методів та правил, призначених для взаємодії елементів системи (або цілих систем) між собою.
Усього розрізняють кілька видів інтерфейсу:
Людино-машинний - призначений для взаємодії людини-оператора з машиною, механізмом (пульти, важелі, кнопки тощо).
Користувача - призначений для взаємодії користувача (людини) з програмно-апаратними компонентами комп'ютерної системи (клавіатура, миша, сенсорний екран, мікрофон).
Апаратний - призначений для взаємодії фізичних пристроїв один з одним (порти, роз'єми, шлюзи тощо).
Інтерфейс користувача розділяється на кілька підвидів:
Командний рядок — взаємодія з комп'ютером здійснюється за допомогою введення команд спеціальною (машинною) мовою в командний рядок. Наприклад, у операційних системах ПК.
Графічний інтерфейс — взаємодія з допомогою програмних функцій, які у вигляді графічних елементів (меню, значки, кнопки екрані, вікна тощо. буд.). Наприклад, інтерфейс сайту.
SILK interface (Speech Image Language Knowledge) – команди даються за допомогою голосу, мови.
Жестовий інтерфейс - управління за допомогою жестів (сенсорний екран, джойстик, кермо тощо).
Нейрокомп'ютерний (нейронний) інтерфейс - обмін даними між людським мозком та електронним пристроєм здійснюється за допомогою біологічного зворотного зв'язку та вбудованих електронних імплантатів. Наприклад, імітація сітківки ока для відновлення зору.
Апаратні інтерфейси є одним з основних компонентів обчислювальної системи із змінним складом обладнання. Вони дозволяють робити обмін даними і керуюючою інформацією між пристроями фізичної структури ОС за інформаційними правилами.
Уніфікація правил взаємодії забезпечує можливість підключення до ОС різноманітних периферійних пристроїв (ПП), які відрізняються призначенням, швидкодією та принципами дії.
Апаратним інтерфейсом прийнято називати сукупність правил уніфікованої взаємодії між окремими пристроями, а також сукупність апаратних, програмних і конструктивних засобів, необхідних для реалізації цих правил.
Взаємодія здійснюється з допомогою сигналів, що передаються електричними (або оптичними) колами, які називаються лініями інтерфейсу.
Сукупність ліній, згрупованих за функціональним призначенням, прийнято називати шиною інтерфейсу.
Уніфікація правил взаємодії направлена на забезпечення інформаційної, електричної і конструктивної сумісності; а саме уніфікація і стандартизація лежать в основі побудови інтерфейсів.
Інформаційна сумісність досягається за рахунок єдиних вимог, що ставляться до структури і складу ліній інтерфейсу, алгоритмів взаємодії, засобів кодування і форматів даних, управляючої і адресної інформації, часовим співвідношенням між сигналами.
Електрична сумісність означає узгодженість параметрів електричних або оптичних сигналів, які передаються середовищем інтерфейсу, відповідність логічних сигналів, що передаються середовищем інтерфейсу, відповідність логічних станів рівням сигналів. Електрична сумісність визначає вимоги до навантажувальної можливості компонентів і характеристик ліній передачі, що використовуються (довжина, допустимі активне і реактивне навантаження, порядок підключення схем узгодження і т.д.).
Конструктивна сумісність означає можливість механічного з'єднання електричних кіл, а іноді і механічної заміни деяких блоків, цей вид сумісності забезпечується стандартизацією з'єднувальних елементів (роз'ємів, штекерів і т.п.) кабелів, конструкцій плат і т.п.
Інтерфейси в системах вводу/виводу (СВВ) виникають між різними рівнями ієрархії фізичного складу ОС, тому вимоги, які ставляться до організації обміну, істотно відрізняються.
Єдиний стандартний інтерфейс не зміг би забезпечити ефективну роботу різноманітних пристроїв, що використовуються на різних рівнях ієрархії СВВ. Цим пояснюється наявність системи інтерфейсів різних рангів, які відрізняються своїми характеристиками і ступенем уніфікації.
Залежно від вимог уніфікації виділяють:
фізичну реалізацію інтерфейсу, тобто склад і характеристики ліній передачі, конструкцію засобів їх підключення (наприклад, роз'єм), вид і характеристики сигналів;
логічну реалізацію інтерфейсу, тобто протоколи взаємодії або алгоритми формування сигналів обміну.
Система апаратних інтерфейсів є однією з основних частин поняття архітектури ОС. В структурі ОС з виділеними процесорами вводу/виводу (ПВВ) відмітимо інтерфейси чотирьох рангів (рис. 39.1).
Рисунок 39.1 – Інтерфейси великих ЕОМ
Через інтерфейс I1 проводиться обмін інформацією між ОП і процесорами (центральним − ЦП або ПВВ). Через інтерфейс I2 – управляючою інформацією між ЦП і ПВВ. Інтерфейси I1 та I2 є внутрішніми, які відображають особливості певної моделі і не уніфікуються.
Інтерфейси вводу/виводу (I3) забезпечують обмін між ПВВ і контролерами ПП (КПП); вони стандартизуються, що дає можливість використовувати однакові контролери і ПП в різних моделях ЕОМ однієї системи.
Інтерфейси I4 створюють групу так званих «малих» інтерфейсів, під впливом яких власне ПП й поєднується з контролером.
Ступінь уніфікації малих інтерфейсів залежить від типу ПП і контролера. Так, якщо контролер призначений для управління тільки одним ПП і конструктивно об'єднаний разом з ними, то їх інтерфейс не уніфікується.
Якщо ж контролер призначений для одночасного обслуговування множини ПП, то відповідний малий інтерфейс повинен бути стандартизований.
У разі підключення апаратури систем передачі даних відповідні інтерфейси прийнято називати стиками.
Для міні- і мікро-ЕОМ характерна (рис. 39.2) наявність інтерфейсу I0, за допомогою якого зв'язані між собою ЦП, ОП і контролери. Цей інтерфейс прийнято називати системним (або об'єднаним), він уніфікований для всього сімейства ЕОМ.
Рисунок 39.2 – Інтерфейси міні- і мікро-ЕОМ
Контролери в міні- і мікро-ЕОМ достатньо прості, оскільки управління обміном між ПП і ОП робиться в значній мірі програмним шляхом. Це дозволяє для сімейства ЕОМ з різними інтерфейсами I0 використовувати однакові ПП (але з різними контролерами).
Інтерфейси прийнято характеризувати такими параметрами:
видом зв'язку, тобто можливістю вести дуплексну (повідомлення можуть одночасно передаватися у двох напрямках, що потребує двох каналів зв'язку), напівдуплексну (повідомлення можуть передаватись в двох напрямках, але одночасно можлива передача тільки в одному) або симплексну передачу (повідомлення можуть передаватись тільки в одному напрямку);
пропускною здатністю, тобто кількістю інформації, що передається через інтерфейс за одиницю часу;
максимально допустимою відстанню між пристроями, або сумарною довжиною ліній, що з'єднують всі пристрої інтерфейсу;
затримками під час організації передачі, що викликані необхідністю виконання підготовчих та закінчуючих дій по встановленню зв'язку між пристроями.
Конкретні значення цих параметрів залежать від багатьох факторів, частково від інформаційної ширини інтерфейсу, способу синхронізації, середовища інтерфейсу, топологічної структури з'єднань і організації ліній інтерфейсу, суміщення або функціонального розділення ліній. Всі ці фактори визначають організацію інтерфейсу.
Організація інтерфейсів визначається способом передачі інформації (паралельної або послідовної, асинхронної або синхронної), з'єднанням пристроїв і використанням ліній.
Цифрові повідомлення можуть передаватись у послідовній і паралельній формі; відповідно інтерфейси прийнято ділити на послідовні і паралельні.
У послідовному інтерфейсі передача даних здійснюється всього по одній лінії, хоч загальне число ліній може бути і більшим. Інтерфейси послідовного типу характеризуються відносно невеликими швидкостями передачі і низькою вартістю мережі зв'язку. Вони можуть використовуватись для підключення низькошвидкісних ПП, що розташовані на значних відстанях від центрального ядра ЕОМ (інтерфейси рангу I4).
У паралельному інтерфейсі передача повідомлення виконується послідовно квантами, що мають m байт. Кожний квант передається одночасно по m лініях. Величина m має назву ширина інтерфейсу і, як правило, дорівнює або кратна байту.
Найбільш розповсюджені паралельні інтерфейси, в яких m = 8 або m = 16. Для внутрішніх інтерфейсів рангу I1 і I2 високопродуктивних ЕОМ ширина інтерфейсу може бути значно більшою.
Розкид параметрів середовища інтерфейсу викликає неоднакові викривлення фронтів і затримки сигналів, що передаються по різних лініях Л1 ÷ Лm. Це означає, що одночасно видані передавачем ПРД сигнали на лінії Л1 ÷ Лm сприймаються приймачем ПРМ неодночасно, а в інтервалі (t1, t2) (рис. 39.3, а і б).
Таке явище називається перекосом інформації. В інтервалі (t1, t2) приймач може сприйняти будь-яку кодову комбінацію (Хі), і = (1, m), яка відрізняється від комбінації (Ві), що повинна бути прийнята.
Для виключення можливості прийому неправильної кодової комбінації в паралельних інтерфейсах вводять додаткову лінію стробування.
Сигнал стробу STR, що передається по ній, повинен надійти в приймач ПРМ в момент tstr, який відповідає закінченню встановлення на входах ПРМ стану (Ві), тобто в момент, коли виконується умова tstr > t2. При цьому необхідно передати сигнал STR з затримкою відносно моменту видачі інформації сигналів на лінії Л1 ÷ Лm:
τstr > 2max (Δtij) = 2max |ti – tj| ,
де ti, tj – найраніший і найпізніший моменти надходження сигналів у приймач ПРМ по лініях i та j, відповідно у разі одночасної їх видачі передавачем;
Δ τij – можливий розкид моментів надходження сигналів по лініях Л1 ÷ Лm, а Δ τstr – по лінії стробу.
Рисунок 39.3 – Часові діаграми сигналів паралельного інтерфейсу
Далі будемо використовувати умовну форму часової діаграми (рис. 39.3, в) на якій паралельна передача сигналів по лініях Л1 ÷ Лm обумовлена однією широкою смугою, звужена частина якої відповідає інтервалу перекосу (t1, t2), строб показаний у вигляді сигналу ідеальної форми в момент завершення інтервалу перекосу.
Взаємодія передавача ПРД і приймача ПРМ передбачає узгодження в часі моментів передачі й прийому квантів інформації.
Під час синхронної передачі передавач ПРД підтримує постійні інтервали між черговими квантами інформації в процесі передачі всього повідомлення або значної його частини.
Приймач ПРМ незалежно або з допомогою сигналів управління, що надходять від передавача, забезпечує прийом квантів у темпі їх видачі.
Для реалізації синхронного режиму передачі у разі послідовного інтерфейсу передавач ПДР на початку повідомлення передає завчасно обумовлену послідовність бітів, яка називається символом синхронізації SYN.
Перехід лінії інтерфейсу із стану «0 » в стан «1» використовується приймачем для запуску внутрішнього генератора, частота якого збігається з частотою генератора в передавачеві; приймач ПРМ розпізнає символ SYN, що передається, після чого приймає наступний символ повідомлення, починаючи з його першого біта. Цей процес проілюстрований на рис. 39.4.
Рисунок 39.4 – Синхронна (а) і асинхронна (б) передача в послідовному інтерфейсі
Стабільність інтервалів передачі (прийому) символів забезпечується синхронно працюючими незалежними генераторами в передавачеві і приймачеві, які мають високу стабільність частоти.
У разі порушення синхронізації передавач повинен вставити в послідовність байт повідомлень, що передаються, додаткові символи SYN.
Якщо під час послідовної передачі використовуються додаткові лінії інтерфейсу, то синхронна передача підтримується сигналами синхронізації, які передаються по лініях управління.
Аналогічно з допомогою сигналу синхронізації реалізується синхронна передача в паралельному інтерфейсі. Як сигнал синхронізації використовується стробуючий сигнал.
Наступний квант інформації передається тільки після того, як попередній квант прийнятий, зафіксований і розпізнаний у приймачеві.
Якщо передача повідомлень через інтерфейс виконується між передавачем ПРД і одним з кількох приймачів ПРМ, то інтервал синхронізаціїї Т встановлюється з розрахунку на найбільш повільний приймач ПРМ, тобто
Тс ≥ max Тсi .
Передачу називають асинхронною, якщо синхронізація передавача й приймача здійснюється під час передачі кожного кванта інформації. Інтервал між передачею кожного кванта нестабільний. У разі послідовного інтерфейсу кожен байт, який передається, «обрамляється» стартовими і стоповими сигналами, як показано на рис. 39.4, б.
Стартовий сигнал змінює стан лінії інтерфейсу і служить для запуску генератора в приймачеві, стоповий сигнал переводить лінію в початковий стан і зупиняє роботу генератора.
Таким чином, синхронізація передавача й приймача підтримується тільки в інтервалі передачі одного байта.
У разі паралельного інтерфейсу режим асинхронної передачі звичайно реалізується за схемою «запит – відповідь».
Приймач ПРМ, отримавши сигнал по лінії стробу і зафіксувавши байт повідомлення по лініях Л1 ÷ Лm, формує відповідний сигнал: квитанцію RCP, який пересилається в передавач ПРД; таку передачу називають передачею з квитуванням.
Сигнал RCP є дозволом передавачеві перевести лінії Л1 ÷ Лm і лінію стробування в попередній стан, після чого приймач ПРМ також скидає сигнал RCP. Скид сигналу RCP служить для передавача дозволом на передачу наступного байта.
Квитування дозволяє ніби підлатувати темп обміну під кожний конкретний пристрій і забезпечити в ряді випадків високий темп обміну, не дивлячись на необхідність передачі сигналів в двох напрямках. Крім того, квитування забезпечує високу надійність передачі і достовірність даних, що передаються.
Однак під час передачі з квитуванням може виникнути ситуація, за якої процес обміну припиняється через відмову, яка спричинить відсутність сигналу квитанції. Виявлення подібних ситуацій базується на вимірюванні інтервалу часу, протягом якого передавач гарантовано повинен отримати сигнал-квитанцію. Якщо за цей встановлений інтервал сигнал Тто передавачем не буде отриманий, то фіксується відмова. Такий контроль називається контролем за тайм–аутом, а інтервал Тто – інтервалом тайм–ауту, величина якого повинна відповідати умові
ТTO ≥ max { Таi },
де Таi – можливі інтервали між видачею квантів інформації пристроями за відсутності відмов.