Ich weiß nicht viel über CPU-Betrieb, aber ich lerne. Ich habe irgendwo gelesen, dass es so einfach ist, eine CPU schneller arbeiten zu lassen, wie die Taktrate zu erhöhen (eine Methode unter vielen), und dass der wirkliche Begrenzungsfaktor die Elektronenbewegungsgeschwindigkeit in den Schaltkreisen ist, die erst bei extrem hohen THz-Raten oder gut erreicht wird über PHZ.
Meine Frage ist, was mich daran hindern würde, eine CPU zu beschleunigen, wenn ich die Uhr durch eine ersetze, die mit 1+ THz tickt, anstatt mit den typischen wenigen GHz für moderne Prozessoren? Angenommen, ich schaffe es, einen Wärmestau vollständig zu verhindern, würde eine so einfache Änderung am Prozessor die Geschwindigkeit so steigern? Wenn nein, welche anderen Faktoren müssen berücksichtigt werden?
Ich habe irgendwo gelesen, [...] dass der wirkliche Begrenzungsfaktor die Elektronenbewegungsgeschwindigkeit in den Schaltkreisen ist, die erst bei extrem hohen THz-Raten oder weit über PHz erreicht wird.
Reine Fiktion. Die Elektronenbewegungsgeschwindigkeit selbst ist relativ niedrig. Die Ausbreitungsgeschwindigkeit elektromagnetischer Wellen – das ist das Interessante – liegt in der Größenordnung der Lichtgeschwindigkeit. Bei 1 THz – oder in 1 ps (Pikosekunde, 1e-12s) – würde Ihr Signal nur 0,3 mm zurücklegen.
was würde mich daran hindern, eine CPU zu beschleunigen, wenn ich die Uhr ersetze
Der kritische Pfad würde Sie daran hindern, eine bestimmte Frequenz zu überschreiten, die normalerweise nicht viel höher als angegeben ist. Kurz gesagt ist dies der Signalpfad, der am längsten dauert, aber in einem Taktzyklus abgeschlossen werden muss. Sobald Sie die Taktrate über diese Grenze erhöhen, funktioniert die CPU nicht mehr richtig.
Wirklich!? Es wäre Ihnen nie in den Sinn gekommen, dass, wenn Sie nur die Taktfrequenz erhöhen müssten, um einen Prozessor schneller laufen zu lassen, es jemand längst getan hätte. Glauben Sie wirklich, dass Intel und andere mit Tausenden von Ingenieuren, die sich mit diesem Problem beschäftigten, nicht erkannt haben, dass sie nur die Taktfrequenz erhöhen mussten, anstatt ein paar 100 G$ für eine neue Fabrik auszugeben? Duh!
Nein, so geht das offensichtlich nicht.
Erstens bewegen sich Elektronen in elektrischen Leitern tatsächlich bemerkenswert langsam. Das spielt jedoch keine Rolle. Entscheidend ist die Ausbreitungsgeschwindigkeit.
Zweitens ist die Signalausbreitungsgeschwindigkeit nicht der begrenzende Faktor in modernen Prozessoren. Stoppen Sie und denken Sie wirklich darüber nach. Was ist die Lichtgeschwindigkeit? Selbst wenn man annimmt, dass die Signalausbreitungsgeschwindigkeit aufgrund der Impedanz der Übertragungsleitung halb so hoch ist, wie lange würde es dauern, bis ein Signal den Chip durchquert? Nein, finde es wirklich heraus.
Die wirklichen Grenzen in der modernen digitalen Logik der Spitzenklasse ergeben sich aus dem Laden und Entladen der unvermeidlichen Kapazität auf jedem Leiter, dessen Spannung Sie umschalten möchten, und der Reaktionszeit der Halbleiter. Beide verursachen eine Verzögerung vom Beginn der Ansteuerung des Eingangs eines Gatters bis der Ausgang den Schwellenwert erreicht, an dem die nachgeschaltete Schaltung ihn zuverlässig als den beabsichtigten hohen oder niedrigen Pegel interpretiert. Jedes einzelne Gatter kann ziemlich schnell sein und weniger als eine ns verzögern. Um jedoch sinnvolle Dinge in einem Prozessor zu tun, können mehrere aufeinanderfolgende Stufen von Gattern verwendet werden.
Ein Großteil des Hochleistungsprozessordesigns reduziert die Gatterverzögerungen im Worst-Case-Pfad. Häufig kann eine kürzere Verzögerung durch Komplexität abgewägt werden.
Betrachten Sie zum Beispiel einen einfachen Addierer. Jede Stufe nimmt die zwei zu addierenden Bits auf, den Übertrag von der vorherigen Stufe, und erzeugt das Ausgangsbit und den Übertrag, der an die nächste Stufe weitergegeben wird. Bei einem einfachen Addierer wächst die Gate-Verzögerung daher mit der Anzahl der Bits. Höhere Bits können nicht hinzugefügt werden, bis der Übertrag von niedrigeren Bits verfügbar ist. Dieser einfache Addierer wird auch Ripple-Carry- Addierer genannt. Es gibt andere Arten von Addierern, die einen Lookahead-Carry haben . Diese benötigen mehr Gatter, können aber zwei breite Zahlen schneller hinzufügen. Mehr Gates bedeuten natürlich mehr Kosten und mehr Stromverbrauch, was bedeutet, dass mehr Kühlung erforderlich ist usw. Nichts ist kostenlos. Das gleiche Prinzip von mehr Toren, um die Dinge schneller zu machen, gilt vielerorts.
Dann gibt es andere Dinge, wie Speicher, die manchmal nach einem anderen Prinzip funktionieren als Gatter und auch ihre eigenen Verzögerungszeiten haben.
Zurück zur ursprünglichen Frage, der Punkt ist, dass diese Gatter alle mit einer minimalen Verzögerung funktionieren, wenn die Eingänge stabil sind, bis die Ausgänge garantiert korrekt sind. Eine Möglichkeit, dies zu gewährleisten, besteht darin, die Eingänge bei einer Taktflanke zwischenzuspeichern und die Ausgänge dann bis zu einer nachfolgenden Taktflanke nicht zu verwenden. Die Leute, die den Prozessor entwerfen, entscheiden sehr sorgfältig, wie schnell er über welchen Temperatur- und Spannungsbereich getaktet werden kann, damit alle Gatter die richtigen Antworten haben, wenn diese Antworten verwendet werden.
Ein weiterer limitierender Faktor ist die Fähigkeit, die Hitze loszuwerden. All diese kleinen parasitären Kapazitäten, die geladen und entladen werden, verursachen einen Strom, der proportional zur Lade- und Entladefrequenz ist. Das bedeutet, dass schnellere Takte einen höheren Strom verursachen, was mehr Wärme verursacht, die sicher abgeführt werden muss, damit der Chip noch funktioniert. Silizium hört bei etwa 150 °C auf, ein Halbleiter zu sein, und darunter braucht man natürlich etwas Spielraum. Wenn die Tore zu dicht gepackt sind, würde ein zu schnelles Takten dazu führen, dass sie zu heiß werden, um innerhalb Ihrer Fähigkeit zu funktionieren, die Wärme abzuleiten. Aus diesem Grund können Sie in einigen Fällen einige Prozessoren übertakten, indem Sie sie stärker als vorgesehen kühlen. Beachten Sie, dass dies nur einen der einschränkenden Faktoren anspricht, sodass Sie einen Prozessor nicht weiter übertakten können, egal wie stark Sie ihn kühlen können.
Wie auch immer, die maximale Taktrate eines jeden Prozessors ist ein komplexes Thema. Nein, Sie können es nicht einfach schneller takten, damit es schneller läuft und trotzdem funktioniert, und nein, der begrenzende Faktor hat wenig damit zu tun, wie schnell sich Elektronen bewegen.
Abgesehen von dem, was andere gesagt haben, spielt die Elektronenausbreitung eine Rolle, aber nicht für ganze Schaltkreise, sondern für die Transistoren selbst. Sobald die elektromagnetische Welle einen Transistor erreicht, MUSS sie Elektronen bewegen (das ist der springende Punkt eines Transistors) und diese können langsam sein. Aus diesem Grund war beispielsweise die NMOS-Technologie schneller als PMOS und CMOS der damaligen Zeit (um 1970/80), da Elektronen schneller als Löcher (Träger) sind, verlangsamte der p-Typ-Transistor (der in cmos verwendet wurde) die Signalausbreitung. Die Vorteile von CMOS waren so groß, dass sie trotzdem genutzt wurden, und die Lösung kam mit der Miniaturisierung der Transistoren selbst. Es besteht eine Beziehung zwischen den Kosten der Pfadverzögerung und der Transistorgröße, und das ist normalerweise der Grund, warum zwei Prozessoren, wenn sie auf unterschiedlichen Knotentechnologien ausgeführt werden, unterschiedliche Taktraten aufweisen. Kleinere Transistoren sind kürzere Wege für den Elektronenfluss.
Außerdem verwenden CMOS-Transistoren ein Metalloxid zwischen dem Gate und dem Kanal, was effektiv einen Kondensator ausgleicht (und die Eingangsimpedanz ziemlich hoch macht). Die Eigenkapazität zwischen dem Gate und dem Kanal verzögert die Geschwindigkeit, mit der der Transistor schaltet, und dies trägt ebenfalls zu den Pfadverzögerungen bei, die die maximale Taktgeschwindigkeit eines Prozessors oder digitalen Geräts festlegen.
David Richerby
Scott
David Richerby
Paul A. Clayton
Olin Lathrop
MarkU
MarkU