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

Принцип самосинхронності Термін «самосинхронна» «аперіодична» схемотехніка підкреслює відміну від двох традиційних схемотехнічних підходів: синхронного та асинхронного. Перший, що є основним в обчислювальній техніці, пов'язаний з використанням механізму тактування, який задається синхронізуючим пристроєм (таймером, годинником) і застосовуваного для узгодження роботи пристроїв у часі. Другий підхід знайшов застосування лише в тих системах дискретної автоматики, де синхронізація не використовується. Синхронні схеми мають ряд переваг, головним з яких є відносна простота у порівнянні з асинхронними, в яких відсутність тактового генератора пов'язана з необхідністю введення надмірності для боротьби з аномаліями їх динамічної поведінки (змаганнями, ризиком). Використання асинхронного підходу не дає збільшення швидкодії, оскільки відсутність відліків часу трансформується у вимогу дотримання часових інтервалів між подачею сусідніх вхідних впливів. Альтернативою традиційним підходам є самосинхронна схемотехніка. При реалізації самосинхронного підходу годинник в схемі замінюється механізмом індикації, який не відраховує абсолютне час, а фіксує ті моменти часу, коли в схемі закінчилися перехідні процеси, викликані зміною вхідного впливу. Моменти видачі сигналів індикації визначаються величинами реальних затримок, які залежать від умов функціонування елементів схеми і можуть змінюватись від нуля до будь-якої кінцевої величини, що робить самосинхронні схеми стійкими до часової нестабільності елементів. У синхронних і асинхронних схемах величина такту повинна вибиратися виходячи з максимальних величин затримок елементів, і в разі перевищення розрахункового такту в реальній схемі правильність функціонування схеми порушується. Таким чином, традиційні концепції стають безглуздими, якщо граничні значення величини затримок апріорі невідомі. Для самосинхронних схем знання величин відхилень в життєвому циклі схеми не потрібно: схема гарантовано правильно функціонує інваріантно до часових параметрів елементів. При цьому вимога фізичної наявності індикатора в самосинхронній схемі не обов'язкова. Роль індикатора можуть виконувати спеціальні самосинхронні коди, наявність або відсутність яких на виході схеми несе для з'єднаних з нею пристроїв інформацію про завершення в ній перехідних процесів. Самосинхронні схеми нагадують синхронні тим, що вони можуть мати виділену в явному вигляді пару керуючих сигналів: запит (аналог тактового сигналу, який видається після установки інформаційних входів) і відповідь, який квитує (підтверджує) отримання запиту. При такому поданні перехідний процес в схемі щодо пари керуючих сигналів моделюється елементом затримки. Самосинхронні схеми мають переваги і недоліки в порівнянні з традиційними схемами. Синоніми У літературі зустрічаються наступні синонімічні поняття «самосинхронної схеми»: самосинхронні (self-timed) схеми; схеми, які не залежать від швидкості (speed-independent circuits); схеми, які не залежать від затримок елементів, схеми, нечутливі до затримок (delay-insensitive circuits); аперіодичні (dead-beat) схеми ; напівмодулярні (semimodular) схеми ; схеми Маллера (Muller's circuits).

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

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

Коротка історія Теоретичною базою схемотехніки, як і обчислювальної техніки, є теорія автоматів, де як структурна модель асинхронного автомата панівне місце займає модель Хаффмена [Huffman, 1954; Варшавський, 1976]. Двома роками пізніше Д. Є. Маллер, американський фахівець з теорії автоматів з Іллінойського університету, разом зі своїм колегою У. С. Бартків опублікував звіт, в якому вперше було намічено новий напрямок, пов'язаний з розробкою схем, поведінка яких не залежить від швидкості елементів. Ця основоположна робота, на жаль, майже не зустріла відповідної реакції фахівців. Багато пізніше Р. Є. Міллер [Міллер, 1971] намагався звернути увагу читачів своєї книги на маллеровський підхід, але успіху не досяг, оскільки надмірне захоплення теоретичними аспектами моделі відштовхнуло практиків, які не побачили ніяких образотворчих схемних рішень. Самого Маллера між тим хвилювали не тільки фундаментальні питання: він намагався втілити свої думки в рамках створення обчислювальної системи ILLIAC II, для чого потрібна розробка програмного забезпечення аналізу асинхронних схем на напівмодулярність (що рівносильно перевірці їх на приналежність класу аперіодичних) і відповідної елементної бази. Однак ця спроба закінчилася невдачею через недостатній рівень технологічної бази того часу (навісні елементи), слабким опрацюванням схемотехніки базових вузлів комп'ютера. Мала ефективність запропонованих в той час схемних рішень звела нанівець очікуване збільшення швидкодії самосинхронних схем, що випливає з організації їх роботи за реальних затримок елементів. Правда, деякі теоретики [Ангер, 1977; Фрідман та ін, 1978] звернули увагу на специфічний запит-відповідь режим функціонування схем Маллера.

У 60-ті роки спостерігалося становлення нової наукової дисципліни - теорії мереж Петрі, що отримала назву по імені німецького вченого Карла Адама Петрі, який запропонував у 1962 р. нову модель інформаційних потоків в системах. Висунута ним ідея була розвинена в США та інших країнах [Пітерсон, 1984; Котов, 1984; Розенблюм, 1983]. Такі достоїнства нової моделі, як можливість відображення асинхронності та паралелізму, недетермінованості процесів, динаміки їх функціонування, простий синтаксис і наочність моделі в поєднанні з досить широкими функціональними можливостями, з'явилися причиною її популярності. Теорія мереж Петрі розвивалася самостійно, але тим не менше вона може розглядатися не тільки як автономна область науки, але і як гілка теорії автоматів в її широкому розумінні, що займає раніше не досліджену нішу між кінцевими автоматами і машинами Тьюрінга. Переважна частина робіт по мережах Петрі «обслуговує» проблематику загальної теорії систем та паралельного програмування, але частина питань теорії мереж Петрі, пов'язаних з виділенням підкласу живих і безпечних мереж і їх дослідженнями, близька до концепції самосинхронізації, причому безсумнівною перевагою мережевого підходу є можливість переходу від мережі із зазначеного підкласу до самосинхронної схемою в обхід процедури кодування.

Розробки Дж. Денніса [Dennis, 1970] і його колег по проекту МАС в частині створення машин, керованих потоками даних, також концептуально близькі до проблематики самосинхронних схем, але особливих успіхів в схемотехнічній частині, наскільки з'ясувалося, досягнуто не було.

У 1972 р. вивчення асинхронних тригерних схем наштовхнуло проф. В. І. Варшавського на думку про примусове розщеплення перехідного процесу в таких схемах на дві фази з метою фіксації закінчення перехідних процесів в кожній фазі. Роботу [Варшавський, 1976] слід вважати першою в світі монографією з проблеми самосинхронізації. Основний наголос в ній робився на створенні аперіодичної схемотехніки, що принципово відрізняло підхід авторів книги від підходу попередників, наприклад, описаного в [Cavarroc et al., 1974]. Фізичне моделювання на рівні макетів обчислювальних пристроїв на елементах малого ступеня інтеграції підтвердило наявність позитивних ефектів самосинхронної реалізації - підвищення швидкодії за рахунок роботи з реальними затримками елементів у 1,5-2 рази в порівнянні з синхронним варіантом, а також додатковий ефект - збільшення стабільності схем при варіації напруги живлення і зміни умов їх функціонування.

Найважливішим результатом, отриманим в наступному десятилітті [Варшавський, 1986], було встановлення властивості повної самоперевірки самосинхронних схем щодо константних несправностей елементів. Цей результат суттєвий з трьох точок зору: самосинхронні схеми «безпечні» в тому сенсі, що їх функціонування припиняється при виникненні несправності і виключається можливість виникнення помилкових подій; несправності самосинхронних схем можуть бути просто локалізовані при зіставленні значення вихідного сигналу із зразком; сигнал несправності може бути використаний для організації саморемонту; самоперевірність використовується як засіб функціонального діагностування.

Інтегральні схеми Наприкінці 70-х років з'явилися великомасштабні програми по створенню великих, надвеликих і ваферних інтегральних схем - ВІС, НВІС. Професора Ч. Сейц [Seitz, 1980] і Дж. Денніс [Bryant, 1980] висунули тезу про те, що синхронний підхід не в змозі гарантувати отримання працездатних НВІС в умовах субмікронної технології. Справа в тому, що в міру зменшення розмірів вентилів, підвищення швидкодії, збільшення площі та «насиченості» мікросхем більш гостро проявляють себе технологічні проблеми, пов'язані із забезпеченням прийнятного відсотка виходу придатних, розсіюванням потужності і істотним підвищенням величини затримок проводів щодо затримок вентилів. Ці проблеми нерозривно пов'язані з труднощами, обумовленими складністю проектування і тестування НВІС, особливо замовних, а також з організацією міжмодульних зв'язків і синхронізації. Самосинхронний підхід дозволяє полегшити проектування топології схем і уникнути необхідності генерації вичерпних тестів.

Проблема організації зв'язків і взаємодії модулів включає в себе як структурний, так і часовий аспекти. Перший пов'язаний з тим, що в процесорних структурах з високим ступенем інтеграції та паралелізму обмін сигналами неефективний з точки зору витрат площі, часу і потужності. Тому обмін намагаються звести до локальних взаємодій (систолічний та хвилефронтовий масиви) між сусідніми модулями. Другий аспект пов'язаний з синхронізацією і відображає тенденцію до зміни ролей між затримками проводів і вентилів (особливо при провідникових з'єднаннях в дифузійному та полікремнієвому шарах). Підвищення відносної затримки провідників уповільнює роботу синхронізатора, що розподіляє синхросигнали по всій системі, так як частота такту повинна бути знижена для компенсації перекосу локальних синхросигналів. Існує спроба паліативного вирішення цієї проблеми шляхом розбиття площі НВІС на так звані зони [Seitz, 1980], в межах яких є локальні тактові генератори. Однак така спроба наштовхується на проблему усунення арбітражних аномалій і синхронізаційних збоїв [Варшавський, 1986], що виникають при незалежному тактуванню зон.