219

Architektur und Organisation von Rechnersystemen (Fach) / Sommersemester 12 (Lektion)

Prof. Schaarschmidt, FHD

Diese Lektion wurde von Jasbaer erstellt.

Lektion lernen

Anzeige
  • Die Caches des Pentium werden in zwei Sets aufgeteilt. Warum ist dies notwendig? Die Aufteilung ist für die 2-Wege assoziative Organisation notwendig, d.h. jeder Bereich im Hauptspeicher kann in einer Zeile jedes Sets abgelegt werden.
  • Die Adresse in einem Cache besteht aus 3 Bits. Was beschreiben sie? Aufteilung in Tag und Index. Der Tag bezeichnet einen Bereich im RAM, der Index die Position innerhalb dieses Bereiches.
  • Warum ist Verwendung von Tag und Index sinvoll? Es muss nicht die ganze Adresse des Hauptseicherbereiches abgelegt werden, sonder nur ein kleiner Teil. Das beschleunigt die Verarbeitung.
  • was ist eine Branch Prediction? Der Prozessor schaut im Programm nach Sprüungen, Verzweigungen und Gruppen von Befehlen und versucht abzuschätzen, welche als nächstes ausgeführt werden könnten. Diese kommen in den Pufferspeicher. Wenn seine Schätzung überwiegend richtig sind, ist die CPU gut ausgelastet.
  • Was ist eine Data Flow Analysis? Der Prozessor untersucht die gegenseitige Abhängigkeit der Befehle von Daten und Ergebnissen anderer Befehele und optimiert den Ablauf gegenüber dem Originalprogramm, so dass er am besten ausgelastet ist.
  • Was sind Speculative Exceptions? Ist eine Kombination aus Branch-Prediction und Data-Flow-Analysis. Die CPU führt spekulativ schon Berechnungen aus und puffert die Ergebnisse für den Fall, dass sie tatsächlich (sehr wahrscheinlich) benötigt werden. Auch dieses, damit die Ausführungseinheit des Prozessors so gut wie möglich ausgelastet ist.
  • Wie wird 1234h im Little-Endian-Format (Intel-Notation) dargestellt? 1234h -> 3412h
  • Wie wird 1234h im Big-Endian-Format dargestellt? 1234h -> 1234h
  • Wie wurde die Rechenleistung bis 2005 überwiegend erhöht? Erhöhung der Taktrate.
  • Wo liegt die Grenze eines sinnvollen Verhältnisses zwischen Geschwindigkeit und TDP? Die Grenze liegt bei ca. 4 GHz.
  • Anzeige
  • Was heißt TDP? Thermal Design Power - Maximalwert der Leistung, den der Prozessor bei Vollauslastung aufnimmt.
  • Wie verändern sich die Ansprüche an einen Prozessor bezüglich der Anforderungen seit 2003? Mehrere Recheneinheiten auf einer CPU, mehrere Programmzähler, mehrere Registersets, mehrere logische Kerne der Multi-Threating-CPUs im Betriebsystem
  • Wie verändern sich die Ansprüche an einen Prozessor bezüglich der Kerne seit 2005? Mehrere unabhängige CPU-Kerne auf einer physikalischen CPU, getrennte Recheneinheiten und teilweise gemeinsam genutzter Speicher.
  • Wo befindet sich der Cache heute und wo früher? heute: auf der CPU früher: auf dem Mainboard
  • Was sind Northbridge und Soutbridge? Northbridge: Chip nahe der CPU um Daten schnell transferieren zu können (z.B. Speicher und Grafikkarte). Heute gibt es auch integrierte Grafik (Chipsatzgrafik). Desweitere besitzt AMD den Memory Controller in der CPU. Southbridge: Chip befindet sich nahe den Schnittstellen und sorgt dort für den Datentransfer zwischen peripheren Geräten. Sie ist mit der Northbridge verbunden.
  • Was ist ein RISC? Ein Rechner mit reduziertem Befehlssatz (Reduced Instruction Set Computer).
  • Warum können 1-Wort-Befehle beim RISC schneller verarbeitet werden als mikrocodierte Befehle?   Sie sind hardwaremäßig verdrahtet und können deshalb wesentlich schneller abgearbeitet werden
  • Ist die Anzahl der Transistoren heute noch ein Kriterium?   Nein, RISC-Prozessoren haben heute ähnlich viele Befehle wie die CISC-Prozessoren wenn nicht mehr
  • Was für eine Architektur wird sinnvollerweise bei RISC-Prozessoren verwendet um effektiv arbeiten zu können?   Es wird eine Registerarchitektur benutzt, d.h. so viele Register wie möglich um mit den 1-Wort-Befehlen (ein Taktzyklus lang) effektiv arbeiten zu können.
  • Kann der Programmier über die Register frei verfügen? Ja
  • Wie werden die Multiuser- und Multitasking-Fähigkeiten erreicht?   Durch Zusammenfassen von Registern zu Registerbänken
  • Einige Register bleiben für Systemaufgaben reserviert. Die anderen Registerbänke werden bei Kontextwechsel „einfach“ umgeschaltet. Ein Basisregister beinhaltet die Kennzeichnung der momentan aktiven Registerbank. Wie kann nun ein Taskwechsel gelingen   Durch Wechsel des Basisregisterinhaltes
  • Wie wird der benötigte Nachschub an Daten und Befehlen gewährleistet?   Durch intelligente Pipeline-Strukturen
  • Ab wie viel Registern ist eine RISC-CPU erst sinnvoll?   Ab 32 Registern
  • In wie fern haben sich RISC- und CISC- Prozessoren sich angenähert?   RISC hat mehr Befehle als früher und CISC verarbeitet seine Befehle größtenteils in einem Taktzyklus
  • Die Bezeichnungen RISC und CISC im ursprünglichen Sinne sind heute kaum mehr anwendbar. Warum?   Die sonstigen Beschleunigungsmechanismen wie z.B. L1-Cache für Code und Daten, Befehlspipelining, Verzweigungsvorhersage und Superscalar-Design gibt es in beiden Familiengruppierungen.
  • Was bedeutet EPIC und was zeichnet es aus?   EPIC – Explicitly Parallel Instruction Set Computing   Mehr Komplexität an den Compiler, wegen der Parallelverarbeitung; mehr Register; Berechnung aller möglichen Verzweigungen eines Rechenvorganges im Voraus, damit die CPU nicht auf Daten warten muss; Fließkomma-Operationen
  • Der Prozessor kommuniziert mit den an ihm angeschlossenen Einheiten über sogenannte Bussysteme. Nenne einige von ihnen.   Datenbus, Befehlsbus, Adressbus, Systembus bzw. Steuerbus
  • Nenne 7 Konzepte, bei denen ein solches Bussystem umgesetzt wird   - Interner Bus: Bussystem innerhalb der CPU - System- oder Memorybus: Bus, der als schnelle Verbindung zum Hauptspeicher dient - Grafik-Bus (AGP): Bus für schnelle Verbindung zur Grafikarte - High-Speed-Bus (PCI) :Bus für die schnellen externen Baugruppen eines Mikrorechnersystems - Low-Speed-Bus (ISA): Bus für die langsameren externen Baugruppen eines Mikrorechnersystems Gerätebus: Verbindung zu mehreren Geräten über ein einheitliches Leitungssystem (Festplatten, CD- ROM, USB) Geräteschnittstelle: Einzelne Verbindung zu speziellem Gerät (Monitor, Tastatur, Drucker, Maus)
  • Ordnen Sie MCA, VLB2, PCI, EISA, ISA, VLB und PCI2 nach ihrer Datenrate.   ISA, EISA, MCA, VLB, PCI, VLB2, PCI2
  • Anzeige
  • Zu den Primär-Speichern im Rechner gehören SRAM, DRAM, ROM, PROM, EPROM, EEPROM und Flash-Speicher. Nehmen Sie jeweils Bezug zu ihrer Kategorie, Löschung, Veränderbarkeit der Byte und nennen Sie ein Beispiel für die übliche Verwendung   Siehe Tabelle Seite 8.
  • Was ist ein Macro-Assembler?   Objektorientiertes Programmieren auf unterster Ebene. Wiederverwendung vom schon einmal geschriebenen Code.
  • Wie unterscheiden sich Macros von Unterprogrammen?   Ein Makro wird in ein Programm eingeschoben (langer Quellcode), ein Unterprogramm hingegen wird aufgerufen in dem ein Sprung stattfindet (kürzerer Quellcode).
  • Zahlen werden im Rechner anders dargestellt. Wie werden sie codiert? ASCII-codiert.
  • In welcher Darstellung wird mit Zahlen im Rechner gerechnet? Dualdarstellung
  • Wie lassen sich zwei Zahlen in ASCII-Codierung leicht addieren? (z.B. 3235h und 3334h) Und wo liegt das Problem?   Jeweils die unteren Nibbles der Bytes addieren und die oberen Nibbles stehen lassen. 3235h + 3334h = 3539h. Der Rechner kann jedoch nicht nur einzelne Nibbles addieren.
  • Was bedeutet BCD?   BCD = Binary Coded Decimal
  • In BCD werden die Zahlen 1-9 in einem Nibble dargestellt. Welches ist dann die größte Zahl, die mit einem Byte dargestellt werden kann? 99
  • Was sind Pseudotetraden?   In der BCD-Darstellung werden nur 10 (0 – 9)von 16 Bitkombinationen genutzt. Die übrigen 6 Bitkombinationen werden als Pseudotetraden bezeichnet.
  • Wozu könnten diese Pseudotetraden genutzt werden? Als Vorzeichen
  • Welches Problem kann bei dem Rechnen mit BCD-Zahlen auftreten?   Das Ergebnis lässt sich nicht immer wieder in BCD darstellen, da es Pseudotetraden enthalten kann und beim Überlauf Fehler entstehen
  • Wie kann der Fehler korrigiert werden?     In jedem Nibble bei dem ein Überlauf oder bei dem eine Pseudotetrade entsteht muss der binäre Wert 6 hinzuaddiert werden.
  • Woraus entstand die Idee der BCD-Darstellung?   Aus den Anforderungen an die Computerrechengenauigkeit der Finanzmathematik
  • Die meisten Prozessoren haben zum Zweck der BCD- bzw. ASCII- Korrektur extra Befehle. Nenne 4 dieser Befehle, die bei Pentium verwendet werden.   AAA, AAD, AAM, AAs
  • Welches sind die Nachteile einer eventuell erforderlichen Korrektur?   Die Korrektur wird nur im Akkumulator und nur bei einem Byte angewendet
  • Wie funktioniert AAA (Adjust for Addition)?   Enthält das niederwertige Halbbyte von AL eine Pseudotetrade, so wird 6 zu AL und 1 zu AH addiert. Zum Schluss wird noch die höherwertige Tetrade von AL auf null gesetzt.
  • Wie funktioniert AAD (Adjust for Division)?   AH wird mit 10 multipliziert und zu AL addiert. In AL steht nun das binäre Äquivalent der ursprünglichen BCD-Zahl
  • Wie funktioniert AAM (Adjust for Multiplication)? (Umwandlung von Dezimal nach BCD)   AL wird durch 10 geteilt. Das ganzzahlige Ergebnis erscheint in AH, der Rest in AL.
  • Wie funktioniert AAS (Adjust for Subtraction)?   Enthält das niederwertige Halbbyte von AL eine Pseudotetrade, so wird von AL 6 und von AH 1 subtrahiert. Die höherwertige Tetrade von AL wird anschließend null gesetzt.
  • Nenne 8 Flags   O=Overflow, D=Direction down, I=Enable Interrupt, T=Trap,S=Negativ, Z=Zero, A=Auxiliary, P=Parity, C=Carry