Ich bin kein Spezialist für Elektronik. Ich bin nur ein Programmierer. Ich stelle diese Frage nur zum Spaß.
Meine Frage: Wie wird die Frequenz für den Entwurf einer digitalen Schaltung gewählt?
Wird die Frequenz "vor der Hand" vor dem eigentlichen Entwurf gewählt, "als letzte Wahl", nachdem die Schaltung bereits entworfen wurde, oder "in der Mitte", um sie während des Entwurfs mehrmals anzupassen?
Was ist, wenn sich herausstellt, dass verschiedene Teile einer großen Schaltung unterschiedliche optimale Frequenzen erfordern? Ist es nicht ein Grund für die Neugestaltung einiger Teile der Schaltung?
Können Sie die Phasen der Frequenzauswahl während des Entwurfs beschreiben?
Wie kam es, dass viele CPUs der "Core" -Serie eine geringere Frequenz hatten als Pentium-4 mit tatsächlich höherer Geschwindigkeit?
Ich habe auch gehört, dass eine geringere Frequenz zu einem geringeren Stromverbrauch führt. Aber hat die Core-CPU nicht eine geringere Frequenz und dennoch nicht weniger logische Gatter, die ihren Status pro Sekunde ändern? Ist nicht die Anzahl der Gates, die ihren Zustand ändern, nicht die Frequenz der Faktor, der den Stromverbrauch definiert?
quelle
Antworten:
I. Meistens verwendet der Chip unterschiedliche Frequenzen für unterschiedliche Teile des Chips. Heutzutage haben selbst die meisten einfachen 0,5 $ -Mikrocontroller ein ziemlich kompliziertes Taktschema (das zumindest ein separates Kapitel im Datenblatt verdient). Die Taktfrequenz wird also blockweise für Blockbasen gewählt.
II. In welcher Phase der Entwurfsfrequenz wird gewählt:
a) Ich würde behaupten, dass es die meiste Zeit im Frühstadium ist. Man würde Anforderungen bekommen (Beispiel: HD-Video dekodieren müssen). Basierend darauf würde man Architektur unter Berücksichtigung von Kompromissen zwischen Leistung, Technologie und Kosten (Fläche) wählen. Eine Ausgabe der Architekturentscheidung ist die Taktfrequenz.
b) Aber manchmal ist die frühe Entscheidung nicht optimal / falsch. Es werden also Änderungen vorgenommen. Dies kann jedoch kostspielig sein, da normalerweise verschiedene Teile des Chips parallel ausgelegt sind. Das Ändern eines Takts kann eine Neugestaltung eines anderen Blocks auslösen (aufgrund der Schnittstelle und der Taktquelle selbst). Ich würde sagen, dass dies aus diesem Grund vermieden wird. Natürlich ist es für einige Blöcke einfacher, die Taktfrequenz zu ändern als für andere, so dass "Ihre Millage variieren kann".
c) In der letzten Phase des Ortes und der Route (dies ist eine der letzten Phasen vor dem Senden des Chips an die Fabrik) kann es manchmal zu Problemen beim Schließen des Zeit- / Leistungsbudgets kommen (dh das Design funktioniert mit der gewünschten Frequenz / Leistung), sodass die Entscheidung getroffen wird gemacht, um die Taktfrequenz zu senken. Dies wird definitiv vermieden, da dies bedeutet, dass einige der Marketingspezifikationen nicht eingehalten werden. Manchmal ist es jedoch klüger, schneller auf dem Markt zu sein als eine Neugestaltung, die in dieser Phase sehr kostspielig und zeitaufwändig ist.
Aber es gibt noch mehr:
d) Manchmal wird die Taktfrequenzentscheidung nach der Herstellung getroffen (wenn vorher bestimmte Vorkehrungen in der Konstruktion getroffen wurden). Aufgrund der Variabilität der Herstellung fallen einige Chips besser aus als andere. Dann kann man Binning durchführen - sortiere die Chips nach der maximalen Frequenz, mit der diese zuverlässig arbeiten können, und verkaufe sie schneller gegen Premium. Ich würde sagen, dass dies hauptsächlich von Anbietern von PC-Prozessoren verwendet wird.
e) Manchmal sind fertige Chips in der Endausrüstung untertaktet, um Strom zu sparen (im uC beliebt), wenn die erforderliche Verarbeitungsleistung niedriger ist als die maximal zulässige Leistung des Chips.
f) In einigen modernen Designs kann die Uhr dynamisch eingestellt werden. Dann wird die Uhr im Feld basierend auf der Last geändert, um Energie zu sparen.
III. Wie also die Frequenz gewählt wird und warum es manchmal so ist, dass das Design mit niedrigerem Takt arbeitet, hat eine größere Verarbeitungskapazität:
Oh Mann, es gibt so viele Variablen, dass dies eine technische Disziplin für sich ist. Sie haben Marketinganforderungen, Technologie, Kosten, EMI, Leistung, unterstützten Standard, E / A-Anforderungen usw. usw. berücksichtigt.
Aber im Grunde kann man dies auf Folgendes reduzieren - um eine gegebene Leistung zu erzielen, kann man einen schnelleren Takt haben (Dinge nacheinander in Reihe ausführen) oder Dinge parallel zu einem niedrigeren Takt ausführen, auf Kosten der Verwendung von mehr Transistoren. Aufgrund einiger Faktoren - hauptsächlich Pipeline-Stall / Speicherlatenz - ist es manchmal besser, mehr Transistoren als schnellere Takte zu verwenden.
quelle
In der eingebetteten Arena wird häufig eine bestimmte Frequenz aufgrund von Einschränkungen mit den Peripheriegeräten des Mikrocontrollers gewählt. Beispielsweise könnte ein 1,8432-MHz-Kristall (oder ein Vielfaches dieser Frequenz wie 18,432 MHz) verwendet werden, da diese durch 16 geteilte Grundfrequenz zu einer 115.200-Baudrate für einen UART führt. 32768 Hz werden häufig für Mikrocontroller-Anwendungen mit geringem Stromverbrauch verwendet, da sie zur Zeitmessung leicht auf 1 Hz heruntergeteilt werden können.
Hier ist eine Liste verschiedener Kristallfrequenzen und deren Grund. Die unter "UART-Uhr" aufgeführten werden häufig aus dem zuvor angegebenen Grund für Mikrocontroller ausgewählt. Die spezifische Auswahl hängt von der Schaltung des BRG (Baudratengenerator) und den gewünschten Baudraten ab.
quelle
Tatsächlich ist die von einer CMOS-Schaltung verbrauchte Leistung eine Summe aus statischem Stromverbrauch (verursacht durch Leckströme) und dynamischem Stromverbrauch (nur verbraucht, wenn die Transistoren den logischen Zustand ändern). Letzteres ist eine Funktion der Schaltfrequenz.
Hier ist ein ausgezeichneter Anwendungshinweis von TI, der ihn ausführlicher beschreibt: http://focus.ti.com/lit/an/scaa035b/scaa035b.pdf
Das heißt, es ist normalerweise die beste Idee, eine niedrigere Taktfrequenz zu wählen. Manchmal ist es jedoch sinnvoller, eine höhere Taktfrequenz zu verwenden, damit der Interrupt-Handler seine Aufgabe schneller erledigen und die CPU zwischen den Interrupts in den Energiesparmodus schalten kann.
quelle
Wie oben erwähnt, machen die Leute Kompromisse zwischen Geschwindigkeit und Leistung.
Am Hochleistungsende des Marktes ist es komplexer - im Fall von Intel gibt es konkurrierende Probleme - wie schnell kann ich das Silizium zum Laufen bringen? hängt davon ab - um einen Befehl auszuführen, sind mehrere Takte erforderlich - Als (sehr) einfaches Beispiel kann ich möglicherweise eine 4-Takt- / Befehlspipeline erstellen, die mit 1 GHz taktet, und eine 6-Takt- / Befehlspipeline, die mit 1,25 GHz taktet. Ich werde mich trotzdem zurückziehen 1 Befehl auf jeder Uhr und die 6 Uhr / Befehlspipe sind schneller
In der realen Welt, obwohl Dinge wie Pipeline-Blasen auftreten, verschwenden Sie umso mehr Uhren, wenn Sie die Pipeline nachfüllen müssen, je mehr Pipeline-Stufen Sie haben - das 4-Takt-Rohr füllt sich schneller als das 6-Takt-Rohr und im Durchschnitt (über einen großen Haufen) von Benchmarks) Die 6-Takt-Pipe benötigt möglicherweise 2 Takte, um jeden Befehl auszuschalten, verglichen mit den 1,5-Takten für das 4-Pipe-Stufendesign - das 4-Stufen-Design übertrifft das 6-Stufen-Design (1 GHz / 1,5> 1,25 GHz / 2).
Natürlich ist es für die Marketing-Leute schwierig, solche Dinge zu verkaufen - die Leute sind es gewohnt, "mehr GHz bedeutet schneller".
quelle
Eine weitere Überlegung ist EMV / EMI - elektromagnetische Verträglichkeit / elektromagnetische Interferenz.
Beispielsweise können digitale Hochgeschwindigkeitssignale unbeabsichtigte HF-Strahlung (Hochfrequenz - von langwellig bis Mikrowelle) erzeugen, die eine Störquelle für die lizenzierte HF-Nutzung sein kann. Dies umfasst die Übertragung von AM (MW) -Radio, Fernsehsendung, Mobiltelefonen an GPS-Empfänger und andere elektronische Schaltkreise.
Tatsächlich können bei hohen Geschwindigkeiten lange (Kupfer-) Spuren auf einer Leiterplatte (PCB) als Antennen sowohl zum Senden als auch zum Empfangen dienen. Beispielsweise kann eine schlecht ausgelegte Schaltung leicht genug Interferenzen empfangen, wenn sich ein Mobiltelefon zu nahe an der Leiterplatte befindet, um ein System zum Absturz zu bringen.
Satelliten müssen auch ionisierende Strahlung (dh Gammapartikel) berücksichtigen. Eine Lösung erfordert die Verwendung strahlungsgehärteter ICs, die aufgrund des Herstellungsprozesses möglicherweise nur mit begrenzten Geschwindigkeiten arbeiten.
Aus diesem Grund müssen kommerzielle Produkte EMV / EMI-Tests unterzogen werden, bevor sie an den allgemeinen Markt verkauft werden dürfen.
quelle