Also letzte Woche sind wir angekommen beim Kapitel 3. Wir beschäftigen uns mit Architektur und dann
der Prozessoren und ich möchte Sie also da, wie ich gesagt habe, für eine kleine Zeitreise mitnehmen
bei der Entwicklung der Prozessor-Architektur-Geschichte. Angefangen haben wir letzte Woche mit Pipeline,
um da nochmal kurz drauf zu gehen, auf die Folien. Das ist die Speed-Up-Formel, die wir erreichen
können. Wenn wir also den Befehlszyklus, den wir vom Neumannrechner her kennen, als Pipeline
organisieren, k ist die Anzahl der Pipeline-Stufen, dann können wir also gegenüber ein Rechner,
der nicht mit einer Pipeline arbeitet, ein Faktor k an Beschleunigung erreichen. So,
das kann man hier also sehen, wenn n gegen n endlich geht, die Anzahl der Instruktionen,
dann je nachdem, wie viele Stufen das ich habe, hier auf der F-Line-Achse ist der Speed-Up eben
aufgetragen und man sieht das Ganze dann je nachdem, wie viele, wenn ich k Stufen habe,
beim Speed-Up von k, geht diese Kurve hinsichtlich der F-Line-Achse in Setup. So,
dann haben wir nochmal aufgehört. Damit können wir eigentlich annehmen. Ja, dann ist doch prima,
wenn wir einen Rechner bauen, der hinsichtlich der Pipeline möglichst viele Stufen hat. Also k
sollte doch gleich gegen unendlich gehen, wenn k der Speed-Up-Faktor ist. Dem sind natürlich
Grenzen gesetzt und wenn solche viele Pipeline-Stufen da sind, kostet das natürlich
ansprechend Zeit und aber man könnte auch noch Folgendes machen, man kann zum Beispiel mit diesen
vielen Pipeline-Stufen auch den Chip-Takt erhöhen. Das ist auch etwas, was man in der Vergangenheit
gerne immer gemacht hat, nämlich dadurch, dass man die Anzahl der Pipeline-Stufen reduziert hat.
Gut, jetzt möchte ich hier nochmal ein bisschen illustrieren an dieser Folie-Achse. So, also
angenommen, ich hatte schon gesagt, es gibt also diese verschiedenen Phasen, Befehl holen, Befehl
dekodieren und so weiter und all diese Phasen sind untereinander getrennt mit Pipeline-Stufen. Das ist
also notwendig, um Synchronisation im System aufrecht zu erhalten, die Information immer wieder mal
zu fangen. Dann fangen wir mal mit so einer Pipeline-Stufe hier an. Das wären also solche
Flip-Flops, auch der kleine Flip-Flops. Also eine Flip-Flop-Stufe, FF steht für Flip-Flop.
Und da dazwischen stellen Sie sich jetzt irgendwelche Gatter vor. Ich will das gar nicht genau verörtern,
was, das geht von den Flip-Flops hier raus und hier in diese Gatter da rein. Dann haben wir vielleicht noch
ein Gatter oder Gatter, greifen wir hier was ab. Da befindet sich also die Logik dieser Pipeline-Stufe.
So und die führen wir also fort, hier mit vielen Punkt-Punkt-Punkt-Punkt bis zur nächsten
Pipeline-Stufe und zwar wie wiederum aus lauter Flip-Flops besteht.
So und da befinden sich also auch noch irgendwelche Gatter, mal mal dann noch in der Mitte eins rein,
soll also ungefähr in der Mitte sein. Und da kommen dann auch noch ein paar Gatter hier an.
Da machen wir wieder ein und. Da können wir zum Beispiel auch ein Land machen, irgendwas,
was das geht dann da hier in diese Flip-Flops da rein. So und das heißt, wir haben jetzt hier
gegeben ein Schaltnetz, das heißt keine Flip-Flops sind da enthalten.
Und ich trage jetzt hier unten mal den Takt auf. Ja und das soll hier mal hoch gehen, das heißt,
da kommt die Information, die von links hier in diese Flip-Flops-Stufe ankommt, da wird übernommen.
So und jetzt muss der Takt so lange laufen, das hier aber ja ist ungefähr die Mitte.
So dass er hier wieder durchgeht, hier wieder nach oben geht und mit dieser steigenden Flanke
hier ist die Information der Zwischenzeit hier durchgelaufen durch dieses Schaltnetz,
liegt hier stabil an, an der nächsten Flip-Flops-Stufe und wird dort übernommen.
Was man viele Jahre gemacht hat, um den Takt zu erhöhen,
um den Takt zu erhöhen ist schlicht und einfach. Man hat in der Mitte dieses Schaltnetz bildlich
gesprochen reingehauen, man hat das also da unterteilt und baut dort eine neue Flip-Flops-Stufe rein.
Ja und hat jetzt einfach abgekürzt. Und was habe ich damit erreicht?
Damit habe ich die Laufzeit erledigt und kann damit in einem neuen Takt
den Prozessor betreiben, der halb zu schnell ist, der halb zu langsam ist,
der nur die halbe Taktphasen braucht und damit doppelt zu schnell.
Wie Sie sehen, das ist eine reine Architekturmaßnahme. Da sind die Schaltkreise, die Strukturen
auf den Chips, nicht kleiner geworden, dass dadurch der Chip beschleunigt wurde.
Das passiert nämlich auch bei sieben Jahren und zunehmenden Generationen kann ich die
Presenters
Zugänglich über
Offener Zugang
Dauer
01:21:36 Min
Aufnahmedatum
2012-06-18
Hochgeladen am
2019-04-12 14:49:02
Sprache
de-DE
Ziel der Vorlesung ist, die Grundlagen beim Aufbau eines Rechners zu vermitteln. Dies beinhaltet die Grundkomponenten, wie das Leitwerk, das Rechenwerk, das Speicherwerk und das Ein-/Ausgabewerk. Ausgehend vom klassischen von Neumann-Rechner wird der Bogen bis zu den Architekturen moderner Rechner und Prozessoren geschlagen.
Grundprinzipien der Ablaufstuerung bei der Berarbeitung von Befehlen werden ebenso behandelt wie Aufbau und Funktionsweise eines Caches und die Architektur von Speichern im Allgemeinen. Das Konzept der Mikroprogrammierung wird erläutert. Ferner wird der Einstieg in die hardwarenahe Programmierung moderner CPUs mittels Assembler vorgestellt und erprobt. Aufbau und Funktionsweise peripherer Einheiten und Bussysteme werden ebenfalls behandelt.
Die Studierenden sollen am Ende der Vorlesung den Aufbau und die Funktionsweise der Architektur eines Rechners, z.B. eines PCs, und des darin enthaltenen Prozessors nicht nur kennen, sondern auch die Gründe für deren Zustandekommen verstanden haben.