загрузка...
загрузка...
На головну

Цикли обміну по ISA

  1. IV.1. Одноразові ітераційні цикли
  2. Хвороби обміну речовин
  3. Великі цикли кон'юнктури
  4. Вплив обміну речовин на опірність
  5. Вплив різних факторів на процеси газообміну. Розвитку систем газообміну.
  6. Виявляє порушення ліпідного обміну.
  7. геокосмічні цикли

Про циклах обміну по магістралі ISA вже згадувалося в розділі 2.2. Тут ми розглянемо їх трохи докладніше, на рівні, достатньому для практичного використання.

В режимі програмного обміну інформацією на магістралі ISA виконується чотири типи циклів:

  • цикл записи в пам'ять;
  • цикл читання з пам'яті;
  • цикл записи в пристрій вводу / виводу;
  • цикл читання з пристрою вводу / виводу.

Цикли обміну з пам'яттю і з пристроями введення / виводу розрізняються між собою використовуваними стробами запису і читання, а також тимчасовими затримками між сигналами.

Цикл обміну з пристроями вводу / виводу починається з виставляння задатчиком коду адреси на лініях SA0 ... SA15 і сигналу -SBHE, що визначає розрядність інформації. Найчастіше використовуються тільки 10 молодших ліній SA0 ... SA9, так як більшість розроблених раніше плат розширення задіюють тільки їх. У відповідь на отримання адреси виконавець, що розпізнав свою адресу, повинен сформувати сигнал -I / O CS16 в разі, якщо обмін має бути 16-розрядних. Далі слід власне команда читання або запису.

При циклі читання задатчик виставляє сигнал -IOR, у відповідь на який виконавець повинен видати дані на шину даних. Ці дані повинні бути зняті виконавцем після закінчення сигналу -IOR.

У циклі запису задатчик виставляє записувані дані і супроводжує їх стробом записи -IOW. Виконавець повинен прийняти ці дані (для гарантії - по задньому фронту сигналу -IOW).

На рис. 8.2 наведені тимчасові діаграми циклів обміну з пристроями введення / виводу. Для простоти на одному малюнку показані як цикл запису, так і цикл читання, хоча виробляються вони, звичайно, в різний час.


Мал. 8.2. Тимчасові діаграми циклів програмного обміну з пристроями вводу / виводу (всі інтервали в наносекундах).

Якщо виконавець не встигає виконати команду в темпі магістралі, він може призупинити на ціле число періодів Т сигналу SYSCLK завершення циклу читання або запису за рахунок зняття (переведення в низький рівень) сигналу I / O CH RDY (так званий подовжений цикл). Це проводиться у відповідь на отримання переднього фронту сигналу -IOR або -IOW. Сигнал I / O CH RDY може утримуватися низьким не більше 15,6 мкс, в іншому випадку процесор переходить в режим обробки немаскируемого переривання NMI.

Розробнику ISA-пристроїв необхідно, перш за все, звертати увагу на ті тимчасові інтервали, які пов'язані з швидкодією апаратури цих пристроїв. Наприклад, на обробку адреси селектору адреси відводиться не більше 91 нс, а буфер даних в циклі читання повинен видавати дані на магістраль не більше ніж за 110 нс.

При циклах програмного обміну з пам'яттю використовуються ті ж самі сигнали, тільки замість стрибає читання -IOR застосовуються строби читання -MEMR і -SMEMR, а замість стрибає записи -IOW - строби записи -MEMW і -SMEMW. Для визначення байтового або словного формату даних застосовується сигнал -MEM CS16. Для асинхронного режиму обміну (подовженого циклу) тут також використовується сигнал I / O CH RDY. Відзначимо, що пам'ять повинна обробляти всі адресні розряди магістралі, включаючи і LA17 ... LA23.

На рис. 8.3 показана тимчасова діаграма обміну з пам'яттю, причому тут вказані тільки тимчасові інтервали, що відрізняються від аналогічних інтервалів на рис. 8.2. Для простоти на одному малюнку показані як цикл запису в пам'ять, так і цикл читання з пам'яті.


Мал. 8.3. Тимчасові діаграми циклів програмного обміну з пам'яттю (всі інтервали в наносекундах).

У разі циклів прямого доступу до пам'яті (ПДП) використовується інший протокол обміну. Так як магістраль ISA має роздільні строби читання і запису для пристроїв введення / виводу і для пам'яті, пересилання даних в режимі ПДП проводиться за один машинний цикл. Тобто якщо дані треба переслати з пристрою вводу / виводу в пам'ять, то одночасно проводиться читання даних з пристрою введення / виводу (по сигналу -IOR) і їх запис в пам'ять (за сигналом -MEMW). Аналогічно здійснюється пересилання даних з пам'яті в пристрій вводу / виводу (за сигналами -MEMR і -IOW).

Цикл ПДП (рис. 8.4) починається з запиту ПДП від виконавця, який бажає зробити обмін, за допомогою одного з сигналів DRQ. Після звільнення магістралі поточним задатчиком (наприклад, процесором) контролер ПДП через час t формує відповідний сигнал -DACK, що говорить про надання ПДП запит його.


Мал. 8.4. Тимчасова діаграма циклів прямого доступу до пам'яті (всі інтервали в наносекундах).

Потім контролер ПДП виробляє адреса комірки пам'яті, з якої буде проводитися обмін в поточному циклі, і сигнал AEN, який говорить пристрою введення / виводу про те, що до нього йде звернення в режимі ПДП. Після цього виставляється строб читання (-IOR або -MEMR), у відповідь на який джерело переданих даних виставляє свою інформацію на шину даних, і стрибає записи (-MEMW або -IOW), за яким дані записуються в приймач даних. Тут так само, як і в звичайному циклі, можливий асинхронний обмін (подовжений цикл) з використанням сигналу I / O CH RDY. Для простоти на одному малюнку показано два циклу: передачі з пам'яті в пристрій вводу / виводу і передачі з пристрою вводу / виводу в пам'ять. Тимчасові інтервали цих двох циклів не однакові.

при апаратних перериванняпротокол обміну зовсім простий, так як переривання використовуються радіальні. Виконавець, який бажає ініціювати переривання, виставляє свій запит (позитивний перехід на одній з ліній IRQ) на магістраль. Контролер переривань, отримавши цей запит, перетворює його в запит переривань процесора. Процесор, закінчивши виконання поточної команди, переходить на адресу початку програми обробки даного переривання, який однозначно визначається за номером використовуваного сигналу IRQ. Після обробки переривання процесор повертається до основної програми.

Для проведення регенерації динамічної пам'яті комп'ютера використовуються спеціальні цикли регенерації (рис. 8.5).


Мал. 8.5. Тимчасові діаграми циклів регенерації на ISA (всі інтервали вказані в наносекундах).

Такі цикли виконує контролер регенерації, який повинен для цього отримувати управління магістраллю кожні 15 мікросекунд. Під час циклу регенерації проводиться читання однієї з 256 осередків пам'яті (для адресації при цьому використовуються тільки вісім молодших розрядів адреси SA0 ... SA7). Читається інформація ніде не застосовується, тобто це цикл псевдочтенія. Проведення 256 циклів регенерації, тобто псевдочтеніе з 256 послідовних адрес пам'яті, забезпечує повне оновлення інформації в пам'яті і її безперервне збереження. Якщо з якихось причин цикл регенерації пам'яті не проводиться вчасно, можлива втрата інформації.

Цикл регенерації включає в себе виставлення сигналу -REFRESH, сигналів коду адреси SA0 ... SA7 і стрибає читання з пам'яті -MEMR. У разі необхідності може використовуватися сигнал I / O CH RDY, що забезпечує асинхронний обмін.

При включенні харчування, а також при натисканні кнопки RESET на передній панелі комп'ютера на магістралі виробляється сигнал RESET DRV, який використовується усіма пристроями, підключеними до магістралі для скидання в початковий стан і відключення від магістралі.

захоплення магістралі стороннім задатчиком, в принципі, передбачена стандартом, використовується на практиці досить рідко, так як вимагає від пристрою, який захопив магістраль, повного управління нею, включаючи і підтримку періодичної регенерації пам'яті.

Електричні характеристики магістралі пред'являють жорсткі вимоги до всіх підключається пристроїв за величиною вхідних і вихідних струмів, а також по споживаної потужності. В іншому випадку можливий вихід з ладу всього комп'ютера в цілому.

Стандарт визначає, що вихідний струм будь-якого джерела магістральних сигналів не повинен бути менше 24 мА, а вхідний струм будь-якого приймача магістральних сигналів не повинен перевищувати 0,8 мА. Крім того, порушення в роботі комп'ютера може викликати недотримання часових обмежень, що накладаються використовуваними протоколами обміну у всіх розглянутих циклах.

 8.1.3. Розподіл ресурсів компьютераПомімо архітектури апаратних засобів і параметрів системної шини специфіка будь-якого комп'ютера визначається прийнятим стандартним розподілом усіх його ресурсів. Дотримуватися правил, встановлених цим розподілом, повинні і програмісти (як системні, так і займаються розробкою прикладних програм), і розробники додаткового обладнання, і навіть ті користувачі, які просто хочуть встановити в комп'ютер нову плату розширення. У разі найменшого порушення цих правил можливі як непередбачені збої в роботі комп'ютера, неможливість його початкового завантаження, так і повний вихід комп'ютера з строя.Под розподілом ресурсів в даному випадку розуміється:
  • розподіл адресного простору системної пам'яті, відведення окремих областей пам'яті під особливі цілі;
  • розподіл адресного простору пристроїв вводу / виводу, в тому числі для системних засобів комп'ютера;
  • розподіл каналів запиту переривань, в тому числі для системних пристроїв;
  • розподіл каналів запиту прямого доступу до пам'яті.
 Зрозуміло, що якщо програміст захоче використовувати ті адреси пам'яті, які відведені для системних потреб (наприклад, для пам'яті дисплея або системних таблиць), то працездатність комп'ютера порушиться. Якщо виконувана програма спробує записати будь-яку інформацію за тими адресами системної пам'яті, які стандартом відведені під постійну пам'ять (ROM), то записується інформація буде просто втрачена, і програма працювати не буде. Якщо писати інформацію за тими адресами пам'яті, які відведені під відеопам'ять, то буде спотворюватися зображення на екрані відеомонітора.Еслі вставляється в комп'ютер плата розширення використовує неправильні (зайняті іншими пристроями) адреси в адресному просторі пам'яті, то її робота буде неможлива, і не виключений навіть вихід з ладу апаратури комп'ютера (так як при циклах читання з перекриваються адрес пам'яті два пристрої будуть виставляти свої дані на шину одночасно, що може стати причиною вигоряння буферних мікросхем) .Якщо розробник плати розширення з пристроєм вводу / виводу або користувач, що підключає нову плату розширення , встановлять адресу свого пристрою так, що він буде збігатися з адресою системного пристрою або адресою іншої плати розширення, то можливі конфлікти при зверненні до даного пристрою. При цьому в циклі запису інформація буде записуватися не в одне, а в два або більше пристроїв, а в циклі читання на шину даних будуть одночасно виставляти свої дані не одне, а кілька пристроїв. Тобто в циклі запису можливе порушення встановлених режимів роботи системних пристроїв (наприклад, контролера переривань або контролера ПДП) або неправильна робота нової плати розширення, а в циклі читання - навіть вихід з ладу одного з пристроїв, що виставляють свої дані на магістраль одновременно.Еслі при підключенні до комп'ютера нової плати розширення встановити для неї неправильний канал запиту переривання, це може привести до того, що дане переривання просто не буде обслуговуватися. Може також перестати обслуговуватися переривання від системного пристрою, з яким конфліктує нова плата. У гіршому випадку це може викликати вихід з ладу нової плати розширення або ж системного устройства.Точно так само при неправильному виборі номера каналу запиту прямого доступу до пам'яті може перестати обслуговуватися запит ПДП системного пристрою, а може вийти з ладу системний пристрій або нова плата розширення. Тобто дотримання правил стандартного розподілу ресурсів комп'ютера - це не чиясь примха, а життєва необходімость.Правда, останнім часом набула поширення знімає дані проблеми технологія автоматичного розподілу ресурсів Plug-and-Play (PnP, P & P), що можна перевести як « вставляй і працюй ». При цьому користувачеві досить просто підключити свою плату до комп'ютера, а всі операції з розподілу ресурсів комп'ютер виконає самостійно, і будь-які конфлікти автоматично устранени.Но для цього необхідне обов'язкове виконання двох умов. По-перше, технологію PnP повинен підтримувати даний комп'ютер і його програмне забезпечення. По-друге, цю технологію має підтримувати підключається до комп'ютера пристрій. Визначити це досить просто: якщо на платі є переставляти перемички або механічні перемикачі для завдання параметрів плати (адрес портів вводу / виводу, номера використовуваного переривання, базової адреси пам'яті, номера каналу ПДП), то можна сміливо стверджувати, що вибір конфігурації, облік стандартного розподілу ресурсів комп'ютера лягає на користувача. Комп'ютер тут не помічник. Звичайно ж, перед установкою в комп'ютер нових плат розширення слід уважно прочитати інструкцію і точно слідувати їй. Детальніше про роботу режиму PnP буде розказано ніже.А тепер розглянемо прийняте в персональних комп'ютерах стандартний розподіл ресурсов.О стандартному розподілі пам'яті вже говорилося в попередньому розділі. Трохи докладніше розподіл адрес пам'яті описано в табл. 8.3.Із таблиці видно, що для пам'яті, що входить до складу пристроїв введення / виводу, відводиться зона всього лише в 92 Кбайта (адреси С8000 ... DFFFF). У цьому просторі може розташовуватися як оперативна пам'ять, так і постійна пам'ять пристроїв введення / виводу. Іноді пам'ять пристроїв введення / виводу захоплює також і зону адрес С0000 ... С7FFF.
 Таблиця 8.3. Розподіл адрес пам'яті (адреси дані в шістнадцятковому коді).
 адреси пам'яті  призначення
 000000 ... 0003FF  Таблиця векторів переривань
 000000 ... 09FFFF  Пам'ять DOS і призначених для користувача програм
 0А0000 ... 0АFFFF  Пам'ять дисплея EGA або VGA
 0B0000 ... 0B7FFF  Пам'ять монохромного дисплея MDA
 0B8000 ... 0BFFFF  Пам'ять дисплея CGA
 0C0000 ... 0C3FFF  ПЗУ BIOS для EGA / VGA
 0C8000 ... 0DFFFF  Пам'ять пристроїв вводу / виводу
 0E0000 ... 0EFFFF  Резерв ПЗУ ВIOS на материнській платі
 0F0000 ... 0FFFFF  ПЗУ BIOS на материнській платі

Важливо пам'ятати, що крім цього розподілу, загального для будь-яких програмних і апаратних засобів, існують ще й розподілу пам'яті, специфічні для кожної операційної системи. Їх також необхідно враховувати, щоб уникнути відмови при виконанні системних програм. Відзначимо, що в сучасних комп'ютерах, звичайно ж, не використовуються давно застарілі дисплеї стандартів CGA або MDA. Однак в тому випадку, якщо потрібно універсальність програмного забезпечення, треба враховувати і те, що його можуть спробувати запустити на комп'ютерах з подібними дисплеями.

Стандартний розподіл адрес в адресному просторі пристроїв введення / виводу персонального комп'ютера наведено в табл. 8.4.

Як уже зазначалося, стандарт допускає адресацію 64К пристроїв введення / виводу (тобто можна використовувати 16 розрядів адреси). Однак переважна більшість плат розширення для спрощення апаратури використовує тільки 10 молодших розрядів, що відповідає за все 1К (або 1024) адрес (від 000 до 3FF в шістнадцятковому коді). При цьому 16-розрядні порти вводу / виводу мають парні адреси, тобто їх може бути всього 512.

 Таблиця 8.4. Розподіл адрес пристроїв введення / виводу.
 адреси  призначення
 000 ... 01F  Контролер ПДП 1
 020 ... 03F  Контролер переривань 1
 040 ... 05F  таймер
 060 ... 06F  контролер клавіатури
 070 ... 07F  Годинник реального часу
 080 ... 09F  Регістр сторінки ПДП
 0A0 ... 0BF  Контролер переривань 2
 0С0 ... 0DF  Контролер ПДП 2
 0F0 ... 0FF  математичний співпроцесор
 170 ... 177  Накопичувач на жорсткому диску (другий)
 1F0 ... 1F7  Накопичувач на жорсткому диску (перший)
 200 ... 207  Ігровий порт (джойстик)
 278 ... 27F  Паралельний порт LPT2
 2С0 ... 2DF  Адаптер EGA 2
 2F8 ... 2FF  Послідовний порт COM2
 300 ... 31F  прототипні плати
 320 ... 32F  Накопичувач на жорсткому диску XT
 360 ... 36F  резервні адреси
 370 ... 377  Накопичувач на гнучкому диску (другий)
 378 ... 37F  Паралельний порт LPT1
 380 ... 38F  Контролер бісінхронного обміну SDLC2
 3A0 ... 3AF  Контролер бісінхронного обміну SDLC1
 3B0 ... 3DF  адаптер VGA
 3B0 ... 3BF  Адаптер дисплея MDA і принтера
 3C0 ... 3CF  Адаптер EGA 1
 3D0 ... 3DF  адаптер СGA
 3F0 ... 3F7  Накопичувач на гнучкому диску (перший)
 3F8 ... 3FF  Послідовний порт COM1

Як видно з таблиці, значна частина можливих адрес вже зайнята системними пристроями, вільних адрес не так багато. Резервні адреси - це ті, які зарезервовані під подальше розширення системи.

У табл. 8.5 представлено стандартний розподіл номерів апаратних переривань і відповідних їм номерів у таблиці векторів переривань (INT).

Як видно з таблиці, більшість входів IRQ зайняті системними ресурсами комп'ютера. Вільні (зарезервовані) тільки чотири канали: 10, 11, 12, 15, причому вони знаходяться на 16-розрядної частини роз'єму магістралі ISA. Правда, іноді в комп'ютерах застосовується тільки один паралельний порт або (набагато рідше) тільки один послідовний порт, і тоді вільними виявляються ще IRQ3 і IRQ5. Сигнали IRQ0 ... IRQ2, IRQ8 і IRQ13 задіяні на системній платі і недоступні платам розширення.

 Таблиця 8.5. Розподіл каналів апаратних переривань.
 Номер переривання IRQ  INT  призначення
 таймер
 контролер клавіатури
 0A  Каскадування другого контролера
 Годинник реального часу (тільки АТ)
 Програмно переадресовано на IRQ2
 резерв
 резерв
 резерв
 математичний співпроцесор
 Контролер жорсткого диска
 резерв
 0B  Послідовний порт COM2
 0C  Послідовний порт COM1
 0D  Паралельний порт LPT2
 0E  Контролер гнучкого диска
 0F  Паралельний порт LPT1

У комп'ютері використовуються два 8-розрядних контролера переривань. Сигнали IRQ0 ... IRQ7 відносяться до першого з них, а IRQ8 ... IRQ15 - до другого. Для каскадирования другого контролера переривань задіяний вхід IRQ2 (рис. 8.6). У зв'язку з цим запити переривання мають наступні пріоритети обслуговування в порядку зростання: IRQ7, IRQ6, IRQ5, IRQ4, IRQ3, IRQ15, IRQ14, IRQ12, IRQ11, IRQ10, IRQ9. Така схема включення склалася історично, так як в комп'ютері IBM PC XT використовувався тільки один 8-канальний контролер переривань, а при переході на IBM PC AT до нього був доданий другий контролер для подвоєння кількості каналів запитів переривань. У сучасних комп'ютерах обидва контролери переривань разом з іншими контролерами можуть входити до складу однієї і тієї ж мікросхеми, але сумісність розподілу переривань як і раніше забезпечується.


Мал. 8.6. Включення двох контролерів переривань.

Стандартний розподіл каналів запиту прямого доступу до пам'яті представлено в табл. 8.6.

Як і у випадку з контролерами переривань, тут застосовується два контролера, причому один з них каскадіруется через інший. На кожній лінії DRQ повинен бути один вихід ISA-пристрої. Канали, що відповідають першому контролеру ПДП (сигнали DRQ0 ... DRQ3), призначені тільки для 8-бітного обміну, а відповідні другому контролеру (DRQ5 ... DRQ7) - для 16-бітного. Канал DRQ4 використовується для каскадування двох контролерів ПДП і тому недоступний користувачам. Сигнал запиту DRQ0 має найвищий пріоритет, сигнал DRQ7 - найнижчий. У IBM PC XT канал DRQ0 використовувався для регенерації динамічної пам'яті. Кожен канал ПДП може передавати дані в межах 16-мегабайтного адресного простору блоками довжиною до 64 Кбайт (канали 0, 1, 2, 3) або до 128 Кбайт (канали 5, 6, 7).

 Таблиця 8.6. Стандартний розподіл каналів прямого доступу до пам'яті.
 Номер каналу ПДП  призначення
 резервний
 Контролер бісінхронного обміну SDLC
 Накопичувач на гнучкому диску
 резервний
 Каскадування першого контролера
 резервний
 резервний
 резервний

Природно, звичайному користувачеві запам'ятати всю цю інформацію про розподіл ресурсів досить складно, до того ж при найменшій помилці можливі неприємності. Саме з цих міркувань фірмами Compaq Computer, Intel, Microsoft і Phoenix Technologies в 1993 році була запропонована технологія Plug-and-Play (PnP), яка покладає всі турботи про конфігурацію комп'ютера на сам комп'ютер. Користувач при цьому може навіть нічого не знати про адресний простір, переривання і каналах прямого доступу, він просто підключає плату, і вона відразу ж починає працювати правильно. Правда, при цьому всі компоненти комп'ютера (базова система введення / виведення BIOS, операційна система, прикладне програмне забезпечення, пристроїв для підключення) повинні підтримувати режим PnP. Зрештою, технологія PnP повинна працювати на всіх використовуваних інтерфейсів комп'ютера: ISA, PCI, VLB, IDE, RS-232C і т.д. Найбільш же пристосована для цього системна шина PCI, що має спеціально передбачені кошти, що ще більш збільшує її шанси стати єдиним стандартом системної шини.

При включенні комп'ютера з PnP його програма початкового запуску BIOS визначає пристрої, які необхідні в процесі завантаження. Потім BIOS запитує в кожного з цих пристроїв його унікальний номер (ідентифікатор), що зберігається в пам'яті PnP-пристрої. Після цього BIOS дозволяє всі конфлікти між пристроями. При цьому пристрої, які не потрібні для завантаження комп'ютера, не обслуговуються.

Після завантаження операційної системи вступає в дію спеціальний програмний драйвер - менеджер конфігурації (configuration manager), який за допомогою драйверів-нумераторів шин (bus enumerators) визначає пристрої, що вимагають системних ресурсів. Якщо підключений пристрій не підтримує PnP і не може видати інформацію про себе, то така інформація повинна бути закладена в формується вручну базу даних. Вся зібрана інформація про поточну конфігурацію зберігається в оперативній пам'яті, в області hardware tree. Цю інформацію в подальшому використовує програма-арбітр ресурсів (resource arbitrator) при розподілі системних ресурсів між пристроями. Після цього менеджер конфігурації через нумератори шин повідомляє PnP-пристроїв про те, які ресурси комп'ютера їм привласнені, і дана інформація в подальшому зберігається в програмно доступних регістрах (або flash-EPROM) цих пристроїв. На цьому робота PnP по розподілу ресурсів закінчується, і далі комп'ютер функціонує як зазвичай, звертаючись до всіх пристроїв стандартним чином.

Відзначимо також, що в деяких комп'ютерах передбачена можливість так званого «гарячого підключення» зовнішніх пристроїв (тобто без виключення живлення комп'ютера). Режим PnP повинен підтримувати і цю можливість, розподіляючи ресурси не тільки при початковому завантаженні, але і в міру підключення нових пристроїв.

 8.2. Інтерфейс CentronicsОсновним призначенням інтерфейсу Centronics (вітчизняний аналог - стандарт ИРПР-М) є підключення до комп'ютера принтерів різних типів (через що його називають принтерним портом). Тому розподіл контактів роз'єму, призначення сигналів, програмні засоби управління інтерфейсом орієнтовані саме на таке застосування. У той же час, за допомогою даного інтерфейсу можна підключати до комп'ютера і багато інших стандартні зовнішні пристрої (наприклад, сканери, дисководи і т.д.), а також нестандартні зовнішні устройства.Назначеніе 36 контактів роз'єму Centronics і відповідних їм контактів роз'єму принтера наведено в табл. 8.7. У таблиці символ I позначає вхідний сигнал комп'ютера, а O - вихідний сігнал.Сігнали інтерфейсу Centronics мають наступне призначення:
  • D0 ... D7 - 8-розрядна шина даних для передачі з комп'ютера в принтер (передбачається і можливість двобічної передачі даних).
  • -STROBE - Сигнал стробування даних. Дані дійсні як по передньому, так і по задньому фронту цього сигналу. Сигнал говорить приймачу (принтеру) про те, що можна приймати дані з шини даних.
  • -ACK - Сигнал підтвердження прийняття даних і готовності приймача (принтера) прийняти наступні дані. Тобто реалізується асинхронний обмін.
  • BUSY - сигнал зайнятості принтера обробкою отриманих даних і неготовність прийняти наступну порцію даних. Активний також при переході принтера в стан off-line, при помилці і при відсутності паперу. Комп'ютер починає новий цикл передачі тільки після зняття -ACK і після зняття BUSY.
  • -AUTO FD - сигнал автоматичного перекладу рядка. Отримавши його, принтер переводить каретку на наступний рядок тексту. Решта сигнали не є обов'язковими.
  • PE - сигнал кінця паперу. Отримавши його, комп'ютер переходить в режим очікування. Якщо в принтер вставити лист паперу, то сигнал знімається.
  • SLCT - сигнал готовності приймача. З його допомогою принтер повідомляє про те, що він обраний і готовий до роботи. У багатьох принтерів має постійно високий рівень.
  • -SLCT IN - сигнал, за допомогою якого комп'ютер повідомляє принтеру про те, що той обраний, і піде передача даних.
  • -ERROR - Сигнал помилки принтера. Активний при внутрішній помилку, перехід принтера в стан off-line або за відсутності паперу. Як бачимо, тут багато сигналів дублюють один одного.
  • -INIT - Сигнал ініціалізації (скидання) принтера. Його тривалість становить не менше 2,5 мкс. По ньому відбувається очищення буфера друку.
 Таблиця 8.7. Призначення контактів роз'ємів Centronics.
 Контакт роз'єму комп'ютера  сигнал  I / O  Контакт роз'єму принтера
 -STROBE O
 D0 O
 D1 O
 D2 O
 D3 O
 D4 O
 D5 O
 D6 O
 D7 O
 -ACK I
 BUSY I
 PE I
 SLCT I
 -AUTO FD O
 -ERROR I
 -INIT O
 -SLCT IN O
 18 ... 25  GND -  16, 17, 19 ... 30, 33

Тимчасова діаграма циклу передачі даних представлена ??на рис. 8.7. Перед початком циклу передачі даних комп'ютер повинен переконатися, що зняті сигнали BUSY і -ACK. Після цього виставляються дані, формується строб, знімається строб, і знімаються дані. Принтер повинен встигнути прийняти дані з обраним темпом. При отриманні стрибає принтер формує сигнал BUSY, а після закінчення обробки даних виставляє сигнал -ACK, знімає BUSY і знімає -ACK. Потім може починатися новий цикл.

Максимальна довжина кабелю за стандартом - 1,8 м. Максимальна швидкість обміну - 100 Кбайт / с.

Формування і прийом сигналів інтерфейсу Centronics проводиться шляхом запису і читання виділених для нього портів введення / виводу. У комп'ютері може використовуватися три порти Centronics, що позначаються LPT1 (базова адреса 378), LPT2 (базова адреса 278) і LPT3 (базовий адреса 3BC).

Базова адреса порту використовується для передачі принтеру байта даних. Встановлені на лініях дані можна вважати з цього ж порту.

Наступна адреса (базовий + 1) служить для читання бітів стану принтера (біт 3 відповідає сигналу -ERROR, біт 4 - сигналу SLCT, біт 5 - сигналу PE, біт 6 - сигналу -ACK, біт 7 - сигналу BUSY). Останній використовується адреса (базовий + 2) застосовується для запису бітів управління принтером (біт 0 відповідає сигналу -STROBE, біт 1 - сигналу -AUTO FD, біт 2 - сигналу -INIT, біт 3 - сигналу -SLCT IN і, нарешті, біт 4 , що дорівнює одиниці, дозволяє переривання від принтера).


 Мал. 8.7. Тимчасові діаграми циклу передачі даних в Centronics (усі часові інтервали зазначені в наносекундах).

При сполученні з комп'ютером через паралельний порт LPT якогось іншого пристрою (НЕ принтера) призначення сигналів і порядок обміну можуть бути іншими, але тоді необхідні спеціальні програмні драйвери, що реалізують вибрані протоколи обміну. При розробці нестандартних зовнішніх пристроїв, що сполучаються з комп'ютером через Centronics, можна самостійно вибирати як призначення сигналів, так і протокол обміну.



Попередня   52   53   54   55   56   57   58   59   60   61   62   63   64   65   66   67   Наступна

Опис лабораторного макета | Ініціалізація мікроконтролера макета | Програмування навчальних завдань | Глава 7. Організація персонального комп'ютера | Особливості процесора 80386 | Особливості процесора 486 | Особливості процесорів Pentium | Оперативна пам'ять | Постійна пам'ять | Системна магістраль ISA |

загрузка...
© um.co.ua - учбові матеріали та реферати