Синхронізація шини
1.Синхронна шина містить лінію яка запускається кварцовим генератором* Сигнал на цій лінії є меандром з частотою зазвичай від 5 до 100 МГц. Будь-яка дія шини займає цілу кількість так званих циклів шини.
2.Асинхронна шина не містить генератора, що задає. Цикли шини можуть бути довільними та не обов'язково однаковими для всіх пар пристроїв.
Як приклад того, як працює асинхронна шина, розглянемо часову діаграму на рис. 3.35.
У цьому прикладі ми будемо використовувати генератор, що задає, на 100 МГц, який дає цикл шини в 10 нс.
Перший цикл починається на фронті відрізка Т1, а третій закінчується на фронті відрізка Т4, як показано на рис. (Жоден із фронтів і спадів не намальований вертикальним, тому що жоден електричний сигнал не може змінювати своє значення за нульовий час.)
Штрихування на схемі показує, що в цей момент не важливо, яке значення набув сигналу.
Перший вказує, що здійснюється доступ до пам'яті, а не до введення-виводу, а другий - що здійснюється читання, а не запис.
У прикладі вводиться один період очікування (Т2), оскільки пам'ять працює занадто повільно.
На початку відрізка Т3, коли є впевненість у тому, що пам'ять отримає дані протягом поточного циклу, сигнал WAIT скидається.
Під час першої половини відрізка Т3 пам'ять містить дані на інформаційні лінії.
На спаді відрізка Т3 центральний процесор зчитує інформаційні лінії даних, зберігаючи їх значення на внутрішньому регістрі.
Вважаючи дані» центральний процесор скидає сигнали MREQ і RD. В разіНеобхідність наступного фронту може розпочатися ще один цикл пам'яті. Ця послідовність може повторюватися нескінченно.
Таблиця 3.4- Деякі тимчасові характеристики процесу зчитування на синхронній шині
Умови синхронізації також вимагають, щоб дані надходили на інформаційні лінії принаймні за 2 не (TDS) до спаду Т3, щоб дати цим час встановити до того, як процесор почне їх зчитувати.
Оскільки достатньо 10 не, пам'ять навіть у найгіршому випадку може завжди відповісти за період Т1. Якщо пам'яті для зчитування потрібно 20 не, необхідно ввести другий період очікування, і тоді пам'ять відповість протягом Т4.
Зрозуміло, що розробнику системи годі було вибирати мікросхему пам'яті, якої потрібно 3 нс на установку.
Обмеження на Тм та ТRL означають, що сигнали МREQ та RD будуть встановлені в межах 3 нс від спаду T1. У гіршому випадку у мікросхеми пам'яті після встановлення сигналів MREQ і RD залишиться лише 10 + 10 - 3 - 2 = 15 нс на передачу даних по шині. Це обмеження вводиться додатково стосовно інтервалу в 15 нс і залежить від нього.
Інтервали ТМH і TRH визначають, скільки часу потрібно на відміну сигналів MREQ і RD після того, як дані зчитані.
Нарешті, інтервал TDH визначає скільки часу пам'ять повинна тримати дані на шипі після зняття сигналу RD.
У прикладі при даному процесорі пам'ять може видалити дані з шини, як тільки скидається сигнал RD; у разі інших процесорів дані можуть зберігатися ще деякий час.
Необхідно підкреслити, що наш приклад є дуже спрощеною версією реальних тимчасових обмежень, насправді таких обмежень набагато більше. Проте цей приклад наочно демонструє, якпрацює синхронна шина.
Зазначимо, що сигнали керування можуть задаватися низькою або високою напругою. Що зручніше в кожному конкретному випадку, повинен вирішувати розробник, хоча, по суті, вибір довільний.
Таку свободу вибору можна назвати «апаратним» аналогом ситуації, коли програміст може уявити вільні дискові блоки в бітовому відображенні як у вигляді нулів, і у вигляді одиниць.