Co je to asynchronní obvod?
Asynchronní obvod je síť převážně nezávislých komponent, které předávají data po dokončení jejich operací. To je na rozdíl od synchronního obvodu, kde jsou prvky dotazovány pro data v reakci na globální časovací signál. V asynchronním obvodu protokoly pro přenos dat určují, kdy a jak jsou data vyměňována. Namísto pravidelného dotazování každé komponenty se data přenášejí, když samotná komponenta signalizuje, že je připravena.
Většina implementací elektronických obvodů používá synchronní design. Jedná se o jednodušší model, kde všechny komponenty pracují ve stejném časovém rámci. V asynchronním obvodu pracují komponenty nezávisle na jakémkoli časovém rámci. Namísto diskrétního času uloženého globálně používají komponenty protokoly handshake a přenosu. Ty provádějí nezbytnou synchronizaci, přenos dat a sekvenování provozu.
V asynchronních obvodech se používá několik přenosových protokolů. Všechny zahrnují handshakinG, který zajišťuje, že když je komponenta připravena předat data sousedovi, je soused volně přijímán a předat je. Protože komponenty fungují bez odkazu na běžný časový rámec, mohou být operace dokončeny mimo sekvenci. Protokol přenosu kóduje data vytvořená tak, že lze je sestavit ve správném pořadí.
Některé rané počítače používaly asynchronní design. Illinois integrátor a automatický počítač, neboli Illiac I, vyvinutý University of Illinois v roce 1951, byl takový design. Rychlý pokrok v technologii integrovaných obvodů však vyžadoval základní design, který byl kompatibilní s dostupnými zdroji. Preferovaným přístupem se stal synchronní design se systémovými hodinami.
Návrh asynchronního obvodu má několik potenciálních výhod. Spotřeba energie by byla mnohem menší s odstraněním časovacího obvodu a tam budeG není třeba napájet tranzistory, které se nepoužívají. Provozní rychlost by byla určena skutečnými latencemi mezi komponenty. V synchronním designu je rychlost uložena tak, aby vyhovovala nejslabšímu prvku. Obvod určený k provozu v asynchronní logice by byl obvykle méně ovlivněn mírnými změnami částí komponent v důsledku výrobního procesu.
Nevýhody návrhu asynchronního obvodu pramení hlavně ze složitosti. Počet potřebných prvků může být mnohem větší než počet potřebný pro synchronní obvod. Pro design asynchronního obvodu existuje jen málo nástrojů pro design s počítačem (CAD). Tyto obvody jsou také mnohem těžší ladit a řešit problémy než konvenční návrhy. Další režijní náklady na hardware a potíže s implementací mohou kompenzovat zisky ve spotřebě a účinnosti energie.