Шина мікропроцесорної системи

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

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

Зазвичай шина даних має 8, 16, 32 або 64 розряди. Зрозуміло, що за один цикл обміну по 64-розрядної шини може передаватися 8 байт інформації, а по 8-розрядної - тільки один байт. Розрядність шини даних визначає і розрядність всієї магістралі. Наприклад, коли говорять про 32-розрядної системної магістралі, мається на увазі, що вона має 32-розрядну шину даних.

навпаки. У більшості випадків рівні сигналів на шинах - ТТЛ.

Шина управління - це допоміжна шина, керуючі сигнали на якій визначають тип поточного циклу і фіксують моменти часу, що відповідають різним частинам або стадіями циклу. Крім того, керуючі сигнали забезпечують узгодження роботи процесора (або іншого господаря магістралі, задатчика, master) з роботою пам'яті або пристрою вводу / виводу (пристрої-виконавця, slave). Керуючі сигнали також обслуговують запит і надання переривань, запит і надання прямого доступу.

Сигнали шини управління можуть передаватися як в позитивній логіці (рідше), так і в негативній логіці (частіше). Лінії шини управління можуть бути як односпрямованим, так і двонаправленими. Типи вихідних каскадів можуть бути самими різними: з двома станами (для односпрямованих ліній), з трьома станами (для двонапрямлених ліній), з відкритим колектором (для двонапрямлених і мультиплексованих ліній).

Найголовніші керуючі сигнали - це строби обміну, тобто сигнали, що формуються процесором і визначальні моменти часу, в які здійснюється пересилка даних по шині даних, обмін даними. Найчастіше в магістралі використовуються два різних стрибає обміну:

· Строб запису (виводу), який визначає момент часу, коли пристрій-виконавець може приймати дані, виставлені процесором на шину даних;

При цьому велике значення має те, як процесор закінчує обмін в межах циклу, в який момент він знімає свій строб обміну. Можливі два шляхи вирішення (рис. 2.2):

· При синхронному обміні процесор закінчує обмін даними самостійно, через раз і назавжди встановлений часовий інтервал витримки (tвид), тобто без урахування інтересів пристрої-виконавця;

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

Мал. 2.2. Синхронний обмін і асинхронний обмін.

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

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

Який тип обміну швидше, синхронний або асинхронний? Відповідь на це питання неоднозначна. З одного боку, при асинхронному обміні потрібен якийсь час на вироблення, передачу додаткового сігпала і на його обробку процесором. З іншого боку, при синхронному обміні доводиться штучно збільшувати тривалість строба обміну для відповідності вимогам більшого числа виконавців, щоб ВОНИ встигали обмінюватися інформацією в темпі процесора. Тому іноді в магістралі передбачають можливість як синхронного, так і асинхронного обміну, причому синхронний обмін є основним і досить швидким, а асинхронний застосовується тільки для повільних виконавців.

По використовуваному типу обміну магістралі мікропроцесорних систем також діляться на синхронні і асинхронні.