Hvad er en asynkron kredsløb?
Et asynkron kredsløb er et netværk af stort set uafhængige komponenter, der videresender data, når deres operationer er afsluttet. Dette er i modsætning til et synkront kredsløb, hvor elementerne er pollet for data som svar på et globalt tidssignal. I et asynkron kredsløb bestemmer dataoverførselsprotokoller, hvornår og hvordan data udveksles. I stedet for regelmæssigt polling af hver komponent, overføres data, når komponenten selv signaliserer, at den er klar.
Størstedelen af elektroniske kredsløbsimplementeringer bruger synkron design. Dette er en enklere model, hvor alle komponenter fungerer inden for samme tidsramme. I et asynkron kredsløb fungerer komponenterne uafhængigt af enhver tidsramme. I stedet for en diskret tid, der pålægges globalt, bruger komponenterne håndtrykk og overførselsprotokoller. Disse udfører den nødvendige synkronisering, dataoverførsel og operationssekvensering.
Der er flere overførselsprotokoller, der bruges i asynkrone kredsløb. Alt inkluderer håndtryk, som sikrer, at når en komponent er klar til at videregive data til en nabo, er naboen frit at modtage dem og videregive dem. Da komponenterne fungerer uden henvisning til en fælles tidsramme, kan operationerne muligvis udføres i rækkefølge. Overførselsprotokollen koder de producerede data på en sådan måde, at de kan samles i den rigtige rækkefølge.
Nogle tidlige computere beskæftigede sig med asynkron design. Illinois Integrator and Automatic Computer, eller ILLIAC I, udviklet af University of Illinois i 1951, var sådan et design. Hurtig udvikling i integreret kredsløbsteknologi krævede et mere grundlæggende design, der imidlertid var kompatibelt med de tilgængelige ressourcer. Synkron design med et systemur blev den foretrukne tilgang.
Design af asynkron kredsløb har flere potentielle fordele. Strømforbruget ville være langt mindre med eliminering af timingkredsløbet, og der er ikke behov for at strømtransistorer ikke er i brug. Driftshastighed bestemmes af faktiske forsinkelser mellem komponenter. I synkron design indføres hastigheden for at imødekomme det svageste element. Et kredsløb designet til at fungere under asynkron logik vil typisk være mindre påvirket af de små variationer i komponentdele på grund af fremstillingsprocessen.
Ulemper ved design af asynkron kredsløb stammer hovedsageligt fra dets kompleksitet. Antallet af nødvendige elementer kan være meget større end det, der kræves for et synkront kredsløb. Der er få CAD-værktøjer (Computer Assisted Design), der er lavet til design af asynkron kredsløb. Disse kredsløb er også langt sværere at fejlsøge og fejlfinde end konventionelle design. Den ekstra hardware-overhead og vanskeligheder ved implementering kan udligne gevinster i strømforbrug og effektivitet.