Was ist eine asynchrone Schaltung?
Eine asynchrone Schaltung ist ein Netzwerk von weitgehend unabhängigen Komponenten, die Daten weiterleiten, wenn ihre Operationen abgeschlossen sind. Dies steht im Gegensatz zu einer Synchronschaltung, bei der die Elemente als Reaktion auf ein globales Zeitgabesignal auf Daten abgefragt werden. In einer asynchronen Schaltung bestimmen Datenübertragungsprotokolle, wann und wie Daten ausgetauscht werden. Anstatt regelmäßig jede Komponente abzufragen, werden Daten übertragen, wenn die Komponente selbst signalisiert, dass sie bereit ist.
Die Mehrzahl der Implementierungen elektronischer Schaltungen verwendet ein synchrones Design. Dies ist ein einfacheres Modell, bei dem alle Komponenten innerhalb desselben Zeitrahmens arbeiten. In einer asynchronen Schaltung arbeiten die Komponenten unabhängig von einem Zeitrahmen. Anstelle einer global festgelegten diskreten Zeit verwenden die Komponenten Handshake- und Übertragungsprotokolle. Diese führen die notwendige Synchronisation, Datenübertragung und Ablaufsteuerung durch.
In asynchronen Schaltungen werden mehrere Übertragungsprotokolle verwendet. Alle umfassen Handshaking, wodurch sichergestellt wird, dass der Nachbar Daten empfangen und weitergeben kann, wenn eine Komponente bereit ist, Daten an einen Nachbarn weiterzugeben. Da die Komponenten ohne Bezugnahme auf einen gemeinsamen Zeitrahmen funktionieren, können Operationen außerhalb der Reihenfolge abgeschlossen werden. Das Übertragungsprotokoll codiert die erzeugten Daten so, dass sie in der richtigen Reihenfolge zusammengestellt werden können.
Einige frühe Computer verwendeten asynchrones Design. Der Illinois Integrator and Automatic Computer oder ILLIAC I, der 1951 von der University of Illinois entwickelt wurde, war ein solcher Entwurf. Der rasche Fortschritt in der Technologie integrierter Schaltkreise erforderte jedoch ein grundlegenderes Design, das mit den verfügbaren Ressourcen kompatibel war. Das synchrone Design mit einer Systemuhr wurde zum bevorzugten Ansatz.
Das asynchrone Schaltungsdesign bietet mehrere potenzielle Vorteile. Der Stromverbrauch wäre bei Wegfall der Zeitgeberschaltung weitaus geringer, und es besteht keine Notwendigkeit, nicht verwendete Transistoren mit Strom zu versorgen. Die Betriebsgeschwindigkeit wird durch die tatsächlichen Latenzen zwischen den Komponenten bestimmt. Bei der synchronen Konstruktion wird die Geschwindigkeit festgelegt, um das schwächste Element aufzunehmen. Eine Schaltung, die für den Betrieb unter asynchroner Logik ausgelegt ist, würde typischerweise weniger durch die geringfügigen Schwankungen der Komponententeile aufgrund des Herstellungsprozesses beeinträchtigt.
Die Nachteile des asynchronen Schaltungsdesigns resultieren hauptsächlich aus seiner Komplexität. Die Anzahl der erforderlichen Elemente kann viel größer sein als die für eine Synchronschaltung erforderliche. Es gibt nur wenige CAD-Tools (Computer Assisted Design) für den Entwurf asynchroner Schaltungen. Diese Schaltungen sind auch viel schwieriger zu debuggen und zu beheben als herkömmliche Konstruktionen. Der zusätzliche Hardware-Aufwand und die Schwierigkeiten bei der Implementierung können den Anstieg des Stromverbrauchs und der Effizienz ausgleichen.