Основним призначенням модульно-магістральних інтерфейсів (ММІ) є комплексна автоматизація засобів вимірювання і організація їх взаємодії.
Магістраллю (спільною шиною) називається система електричних ліній передачі, однаковим чином з’єднуючих різні блоки (модулі) автоматизованої системи(АС). Зміст уніфікованої магістралі полягає в тому, що її можна використовувати багаторазово, створюючи з окремих
модулів варіанти АС, при цьому для АС потрібен лише один інтерфейс, що називається інтерфейсом каналу обміну. Канали вимірювань поєднуються с шиною через прості, але такі ж уніфіковані інтерфейси. Для забезпечення такої структури АС необхідний стандарт на спільну шину, її інтерфейс та конструкцію блоків.
Існують різні інтерфейси : HPIB ( HP – interface bus) , GPIB (General Purpose Interface Bus).
Історично першим (створений у 1972 році) ММІ була система КАМАК. Вона передбачає уніфікування на трьох рівнях: механічному, логічному та електричному.
Її механічний стандарт являє собою корпус (CRATE) у якому можуть бути розташовані 25 роз’ємів (роз’єми ножевого типу) : 1-23 - нормальні позиції - плати з пристроями користувача, і 24-25 – службова позиція - плати контролера CRATЕ.
Контроллер CRATE – аналог процесора, він керує взаємодією плат, що знаходяться в корпусі. Відмінності від ЕОМ: передача даних снхронізована (між модулями 1 і 2 передачі даних бути не може – це була плата за швидкість), має місце виключно одноадресна адресація даних. Хоча сучасні ММІ відходять від механічного стандарту.
Основою логічного стандарту камаку є поділ операцій на адресні та безадресні.
Адресні - NAF. Це розшифровується так: N – номер станції; А – номер вузла організованого в межах адресного простору станції (цей простір містить 16 адрес); F – код операції.
Для роботи з модулями КАМАК передбачено 32 операції, які розділені на групи: читання (F(0)-F(7)), запису (F(16)-F(23)), керування (F(8)-F(15), F(24)-F(31)). В межах груп є також операції за змістом: жорстко зафіксовані і не можуть змінюватись виробником (0-7, 16-23); резервні, які можуть змінюватись виробником, але це має бути зазначено в описі.
N також 0÷31, причому 1-23 – робочі, а 0 і 24-31 =- службові адреси (використовуються для адресування дорегістрів крейту).
Усі регістри, які може містити модуль поділяються на дві групи:
І. для обміну власне інформацією, даними
ІІ. для регістра стану – про стан модуля і крейта
Адресні операції включають читання/запис регістрів першої/другої групи з можливістю доступу до окремих бітів, скидання регістрів:
0 і 1 – операції читання без зміни вмісту регістру,
2 – читання, але при цьому скидається вміст
3 – читання – код обернений до коду вмісту регістру
16 – запис в регістр І групи, 17 – в ІІ, 18,19 – селективне читання
Є два сигнали, що передбачені для інформування про той чи інший стан модуля, який адресується: Х і Q. Х – генерується модулем тоді, коли команда, що була адресована модулем сприйнята і він може її виконати. Q – генерується модулем на певні операції, які були на нього адресовані.
Команда на виконання операції передається у наступному форматі: назва (N, A, F, Q, ), наприклад (15,8,0, Q) .
Існують також безадресні операції – скидання всіх регістрів та заборона переривань.
Безадресні операції - їх 3: ZCI. Вони виконуються всіма модулями: контролером крейту генеруються: Z,С – встановлення модулю у початковий стан і скидання його у початковий стан, Z – скидання всіх модулів в початкових стан; І – заборона окремих дій модулів (може породжуватись ззовні).
По відношенню до користувача, модуль – сукупність регістрів. 2 групи регістрів:
регістри передачі даних, регістри передачі та тимчасового зберігання інф. про статус модуля. Для регістрів різних груп різні коди операцій, тому за однією адресою може бути 2 окремих регістра.
Лінія N для кожного модулю окрема. Шина даних демультиплексована (запис і читання окремо); 24-розрядне слово даних; 48 ліній даних. Лінії зв’язку КАМАК можна поділити на індивідуальні і наскрізні. За призначенням виділяють 7 груп ліній : 1)адресації, 2) операцій, 3)стану, 4)лінії керування, 5)лінії даних, 6)живлення, 7)резервні лінії. Всього їх 96 .
Лінії 1), 2), 5), 6) є наскрізними. Лінія L – запит на обслуговування. Інші лінії: А – 4 розряди; F – 5; Z, C, I, X, Q, B – по 1 (наскрізні лінії).
Запити субмодулів надходять у спеціальні регістри, потім адреса з якої було зроблено запит порівнюється з маскою (чи повинна обслуговуватися дана адреса). Далі при адресації повинен з’явитись сигнал на лінії Q (що свідчить про готовність модуля до виконання операції), активізується необхідна операція і з регістра скидається інформація про запит.
Для влаштування додаткових магістралей створювались багатоконтроллерні CRATЕ-и . – Дозволяють проводити первинну обробку і систематизацію даних на віддалі від PC. Також тут є можливість прямого доступу до пам’яті. Багатоконтроллерність реалізується за допомогою додаткової магістралі. (додаткового роз’єму на модулях).
При використанні кількох крейтів можливо декілька видів з’єднань. BHW – branch highway –паралельне з’єднання (7 крейтів), SHW – serial highway – послідовне (62 крейти).КГ – контролер гілки, К1 – крейт 1.