Wie bestimmt der Hardware-Designer die geeignete Taktfrequenz für sein Gerät? Danach erstellte er das Timing-Diagramm, das dann für die Schnittstellen weiter verwendet wird.
Alles, was ich wissen muss, ist der Mechanismus, um die geeignete Uhr zu bestimmen und dann die Zeitdiagramme zu erstellen. Meine eigene Logik ist, dass der Designer zuerst das Gerät wie einen Mikroprozessor erstellt, ihm dann unterschiedliche Anweisungen gibt und dann die Ergebnisse mit unterschiedlichen Taktraten überprüft, aber dies ist eine Hit-and-Trial-Methode. Gibt es dafür einen bestimmten Algorithmus?
Die Frequenz, mit der Logikchips arbeiten, wird durch die verwendete Technologie bestimmt – ausgehend von sehr alten Logikfamilien wie RTL (Widerstands-Transistor-Logik), DTL (Dioden-Transistor-Logik), ECL (Emitter-gekoppelte Logik), TTL (Transistor-Transistor Logik), die mehrere Untertypen wie S (Hochgeschwindigkeits-Schottky), LS (Low-Power-High-Speed), F (schnell), AS (fortgeschrittenes Schottky) hat, bis hin zu CMOS mit Untertypen wie HC (Hochgeschwindigkeits-CMOS ) und HCT (TTL-kompatibles Hochgeschwindigkeits-CMOS).
Jeder von ihnen hat eine charakteristische maximale Taktrate, die von 4 MHz für RTL, 25 MHz für TTL, 50 MHz für HC/HCT CMOS, 100 MHz für TTL S und F, 500 MHz für ECL und bis zu mehreren GHz für Zustand reicht modernste CMOS-Designs in heutigen Mehrkern-Mikroprozessoren.
Daher muss der Logikdesigner in jedem Fall zunächst eine Logikfamilie auswählen, die mit seinen Anforderungen kompatibel ist, sowohl in Bezug auf Leistung, Versorgungsspannungen und Logikschwellenwerte als auch auf Geschwindigkeit. Obwohl es sich beispielsweise um eine sehr alte Familie handelt und eine langsamere Schaltgeschwindigkeit hat, sind ICs der Serie 74LS00 immer noch weit verbreitet und werden in neuen Designs verwendet. LS TTL ist gut für 40 MHz und HCT CMOS kann mit 50 MHz betrieben werden, und viele Logikschaltungen benötigen nicht mehr als das. Werfen Sie einen Blick auf die verschiedenen Schaltungen auf dieser Seite und Sie werden viele verwendete LS- und HCT-Chips sehen, mit Taktraten von nur wenigen MHz. Das ist ungefähr die Grenze, die Sie auf einem drahtlosen Steckbrett zuverlässig prototypieren können.
Sie entwerfen also zuerst eine Schaltung, bestimmen, mit welcher Geschwindigkeit sie laufen muss, und wählen dann die zu verwendende Technologie aus. Manchmal wird die Geschwindigkeit der Schaltung durch die Notwendigkeit bestimmt, externe Daten abzutasten – zum Beispiel analoge Daten mit einem ADC mit einer bestimmten Rate abzutasten, sagen wir 1000 Mal pro Sekunde. Und dann müssen Sie möglicherweise Daten mit einer bestimmten Geschwindigkeit in einem Speicher speichern. Sie sehen sich also an, was die schnellsten Anforderungen sind, und gehen von dort aus. Dazu gehört häufig die Auswahl eines Mikrocontrollers, der alles ausführt. Mikrocontroller können überall von 32,768 kHz (Uhrquarz) oder darunter getaktet werden, um mit sehr geringer Leistung zu laufen, bis hin zu Hunderten von MHz für 32-Bit-Chips. Obwohl die meisten kleineren 8-Bit-Mikrocontroller Takte im zweistelligen MHz-Bereich oder weniger verwenden.
Die Geschwindigkeit jedes Gattertyps wird im Datenblatt angezeigt, entweder als Schaltfrequenz (wie zuvor aufgeführt) oder als Laufzeitverzögerung, typischerweise in ns (Nanosekunden) oder ps (Pikosekunden). Für einen neuen IC, der intern entwickelt wird, wie z. B. ein Mikrocontroller oder ein Speicher, verfügt das Unternehmen, das das Design durchführt, über Informationen für seine Logikdesigner bezüglich dieser Parameter, basierend auf den verwendeten Transistortypen und dem verwendeten Prozess.
Das folgende Diagramm zeigt die Ausbreitungsverzögerung von der ansteigenden Flanke des Eingangs zur entsprechenden ansteigenden Flanke des Ausgangs und umgekehrt für ein Gatter der Serie 74HCT00. T wird als typisch 10 ns und maximal 27 ns für dieses Gate angegeben.
Ausbreitungsverzögerungen sind beim Entwerfen zu berücksichtigen, denn wenn Sie mehrere Signale haben, die gleichzeitig gelesen werden müssen, müssen Sie sicherstellen, dass sie alle stabil geworden sind. Beim Schreiben auf einen RAM-Chip ist es beispielsweise wichtig, dass sowohl die Adressleitungen als auch die Datenleitungen stabil sind, bevor ein Signal namens Write Strobe (-WR im Diagramm unten) verwendet wird, um die Daten in den zu takten Speicher. Diese Verzögerung ab der ersten Bereitstellung stabiler Daten im RAM und der Taktung wird als "Dateneinrichtungszeit" bezeichnet und ist im folgenden Diagramm dargestellt:
Sie können die Ausbreitungsverzögerung in einem Gatter mit einem Mehrkanal-Oszilloskop beobachten und einen oder mehrere Kanäle für die Eingänge und einen oder mehrere für die Ausgänge verwenden. Mit einem Vierkanal-Oszilloskop könnte man beispielsweise das dynamische Verhalten eines Halbaddierers mit zwei Eingängen plus den Summen- und Übertragsausgängen beobachten.
Die Designer, die den Chip verwenden werden, verwenden einfach die im Datenblatt angegebenen Laufzeitverzögerungswerte. Aber woher kommen diese Zahlen?
Zunächst einmal werden die Designer des Chips Modelle gebaut haben , mit denen sich das Innenleben des Chips vollständig simulieren lässt, bevor er „ausgeklebt“ wird. Ein Fehler in diesem Stadium kann dazu führen, dass der Chip einen "Spin" durchlaufen muss, der möglicherweise Millionen von Dollar kostet. Beim Bau des Modells müssen sie nicht jedes Mal bei Null anfangen, sondern können mit Modellen aus früheren Entwürfen beginnen, die auf derselben Technologie basieren. Wenn das erste Silizium eintrifft, wird der Chip sowohl verifiziert als auch charakterisiert, wobei die verschiedenen Eigenschaften der Parameter des Chips gemessen und mit dem Modell verglichen werden. Alle diese Daten werden dann verwendet, um die Werte für das Datenblatt zu generieren. Es ist also eine Kombination aus Theorie und realen Messungen.
Im Allgemeinen nimmt die Geschwindigkeit zu, wenn die Dichte der Transistoren auf ICs zunimmt ( Mooresches Gesetz ). IC-Fertigungsprozesse haben sich von 10 µm im Jahr 1971 auf 1 µm im Jahr 1985, 90 nm im Jahr 2004 und 14 nm im Jahr 2014 weiterentwickelt.
Der 8-Bit- 6502- Mikroprozessor, der im Apple ][ (1977) verwendet wurde, hatte 3510 Transistoren und verwendete einen 8-µm-Prozess und wurde mit etwas mehr als 1 MHz getaktet. Der im iPhone 6 verwendete 64-Bit Apple A8X Tri-Core ARM-Mikroprozessor verfügt über 3 Milliarden Transistoren (fast eine Million Mal mehr als der 6502), verwendet einen 20-nm-Prozess und wird mit 1,5 GHz getaktet (fast 1,5 Millionen Mal schneller ) . als 6502).
mkeith