SDRAM Cycle Length CAS-Latenzzeit, bis die Daten am Speicheraus-gang zur Verfügung ste-hen möglichst niedrig SDRAM ECC Setting Fehlerkorrekturmecha-nismus bestimmen Enabled ECC SDRAM Idl
Trang 1SDRAM Cycle Length CAS-Latenzzeit, bis die
Daten am Speicheraus-gang zur Verfügung ste-hen
möglichst niedrig
SDRAM ECC Setting
Fehlerkorrekturmecha-nismus bestimmen
Enabled ECC
SDRAM Idle (Cycle) Limit
Angabe, nach wie vielen Takten eine angewählte Page geschlossen werden soll
8–32, je nach Speicher-größe
SDRAM MA Wait State zusätzlichen
Wartezy-klus festlegen
0 Clock oder Fast
SDRAM PH Limit Pause zur Auffrischung
der Zeilenadresse
64 Cycles
SDRAM RAS Precharge Time
Zeit für das Umschalten auf eine neue Zeile
möglichst niedrig
SDRAM RAS to CAS Delay
Zeit, bis die Zeile im Speicherchip komplett eingelesen worden ist
möglichst niedrig
SDRAM RAS# Timing Angabe der drei Werte
für CL, trcd undtrp
möglichst niedrig
SDRAM Tras Timing Anzahl der Takte für das
automatische Schließen einer Speicherbank
7 (schnell), 2 (langsam)
SDRAM Trcd Timing Zeit, bis die Zeile im
Speicherchip komplett eingelesen worden ist
Möglichst niedrig
SDRAM TRP SRAS Precharge
RAS Precharge Time für das Umschalten auf eine neue Zeile
Möglichst niedrig
SDRAM Trp Timing RAS Precharge Time für
das Umschalten auf eine neue Zeile
Möglichst niedrig
BIOS-Setup-Eintrag Bedeutung/Funktion bevorzugte
Einstellung
Tab 6.6: Die typischen Optionen für SDRAMs in den BIOS-Setups (Forts.)
Trang 2Insbesondere bei einigen Systemen mit VIA-Chipset gibt es noch eine
Option wie Bank x/y DRAM Timing Sie erlaubt die Einstellung eines
unterschiedlichen Timings für die verschiedenen Speicherbänke (DIMM-Steckplätze), und in der Regel sollte hier die Auto-Funktion optimal
grei-fen Alternative Einstellungen sind Normal, Turbo sowie SDRAM 8ns und SDRAM 10ns, wobei eigentlich nur die beiden letzteren, die sich
nach dem jeweils eingesetzten Modul richten, einen eindeutigen Bezug
haben, während bei Normal und Turbo nicht zweifelsfrei vorhergesagt werden kann, was dies für das Timing zur Folge hat, außer dass Turbo wohl eine Beschleunigung gegenüber Normal hat (siehe Bild 6.13)
TRAS Timing Anzahl der Takte für das
automatische Schließen einer Speicherbank
7 (schnell), 2 (langsam)
TRCD Timing Zeit, bis die Zeile im
Speicherchip komplett eingelesen worden ist
Möglichst niedrig
BIOS-Setup-Eintrag Bedeutung/Funktion bevorzugte
Einstellung
Tab 6.6: Die typischen Optionen für SDRAMs in den BIOS-Setups (Forts.)
Bild 6.14: In den BIOS-Setups von Athlon-Mainboards findet sich mitunter eine
Viel-zahl an Optionen für die Speicherkonfigurierung
Trang 3Die Option PH-Limit, die eigentlich nur bei Athlon-Mainboards exis-tiert, nennt sich Page Hit Limit und sorgt nach einer festgelegten Anzahl
von Page-Hit-Zugriffen – also wenn sich die benötigten Daten in einer einzigen Page befinden – für eine Pause zur Auffrischung der Zeilen-adresse Demnach ist der Speicherzugriff (theoretisch) umso schneller, je
größer dieser Wert gewählt wird, und falls hier SDRAM PH Limit: 1
Cycle festgelegt wird, findet bereits nach jedem Zyklus ein Refresh statt
Üblicherweise sollten die PC100-DIMMs mit einem Wert von 64 Cycles zurechtkommen Bei einem Speicherproblem setzt man ihn im schlimms-ten Fall auf 32 Cycles, und falls dies immer noch nicht richtig funktio-niert, kann es eigentlich nur an den Speichermodulen liegen
Das BIOS in Bild 6.14 überrascht geradezu mit einer Vielzahl an Spei-cheroptionen, wie es bei den ersten Athlon-Mainboards häufig der Fall ist, wo sich das Timing von Chipset und den Speichermodulen generell als etwas problematisch erwiesen hat, sodass die BIOS-Hersteller – gewissermaßen sicherheitshalber – alle möglichen Parameter für den Anwender als einstellbar »freigelegt« haben Mittlerweile sind derartig ausführliche SDRAM-Einstellungen aber eher selten zu finden, da das Zusammenspiel von CPU-Chipset-BIOS und Speicher auch bei Athlon-Systemen einen hohen Reifungsgrad erreicht hat, sodass klar ist, welche Optionen man als sicher annehmen kann und nicht mehr im BIOS zur
Konfigurierung anbieten muss Die Einträge mit dem Kürzel Drv (Drive)
in Bild 6.14 erlauben sogar eine Manipulierung der Signalstärke für die
Leitungstreiber, wofür man am besten SDRAM Drive
AutoConfig:Enab-led wählt, denn eine Leistungsoptimierung lässt sich hiermit nicht
errei-chen, sondern nur ein stabiler oder ein instabiler Betrieb
6.2.7 DDR-SDRAM-Optionen
Bei Mainboards, die mit DDR-SDRAM arbeiten, können im Prinzip die gleichen Optionen im BIOS-Setup wie bei den gebräuchlichen SDRAMs auftauchen, sodass hierfür ebenfalls die vorhergehenden Erläuterungen zutreffen Die leistungshemmenden Latenzzeiten unterscheiden sich zwi-schen beiden Typen nur unwesentlich voneinander Tabelle 6.7 zeigt die festzulegenden Werte, für den Fall, dass man hier eine manuelle Einstel-lung vornehmen möchte, weil die AUTO-EinstelEinstel-lung kein befriedigendes Ergebnis liefert
Trang 4Ein (theoretisches) Maximum für die Speichertransferleistung ist dann gegeben, wenn der Speichertakt dem Systemtakt (FSB) entspricht, was für ein PC3200-Modul (DDR400) bei einem Pentium 4 mit 3 GHz einem FSB800 und bei einem Athlon XP3200+ einem FSB400 gleichkommt Beides bedeutet »echte« 200 MHz, was laut QDR-Definition (x4) zur Angabe von FSB800 und laut DDR-Definition zu FSB400 führt Ein schnelleres Modul sollte auch mit einem demgegenüber langsamer arbei-tenden Takt umgehen können, wobei natürlich Leistung verschenkt wird, umgekehrt (z.B DDR333 mit 200 MHz Takt) funktioniert dies natürlich nicht Auch eine Mischbestückung ist nicht unproblematisch, weil die Speichereinstellungen sich dann am langsamsten Modul orientie-ren müssen, was ganz allgemein gilt, wenn der BIOS-Setup keine separa-ten Einstellungsoptionen für einzelne Module bietet Außerdem ist es fraglich, ob nicht durch ein unterschiedliches Modul- bzw Bank-Timing derartige »Reibungsverluste« beim Speicherzugriff entstehen, dass sich demgegenüber eine langsamere – aber für alle Module identische Einstel-lung – als stabiler und letztendlich auch optimaler erweist Die Verwen-dung identischer Module ist nach wie vor die beste Lösung, was im ver-stärkten Maße für Dual-Channel-DDR-Speicherlösungen gilt, wofür die Speicherhersteller (z.B Corsair) auch speziell gestestete Module im
»Doppelpack« anbieten
6.2.8 RAMBus-Optionen
Im Gegensatz zu Mainboards mit SDRAM-Speicher, bei denen das BIOS mit einer Vielzahl an Optionen für die Speichereinstellung aufwarten kann, geht es bei der Verwendung des RAMBus-Speichers vergleichs-weise übersichtlich in den BIOS-Setups zu RAS-, CAS- sowie Timing-Optionen gibt es hier nicht, und im Grunde genommen ist der jeweils eingesetzte Typ das entscheidende Kriterium, was die Speicherkonfigu-rierung einfach hält
Modul-typ
Speed-Klasse
CAS Latency
RAS to CAS Delay
RAS Precharge Time
DDR200 100 MHz PC1600 2 Takte 2 Takte 2 Takte DDR266A 100 MHz PC2100 2 Takte 2 Takte 2 Takte DDR266A 133 MHz PC2100 2 Takte 3 Takte 3 Takte DDR266B 100 MHz PC2100 2 Takte 2 Takte 2 Takte DDR266B 133 MHz PC2100 2,5 Takte 3 Takte 3 Takte DDR333 166 MHz PC2700 2,5 Takte 3 Takte 3 Takte DDR400 200 MHz PC3200 2,5 Takte 3 Takte 3 Takte Tab 6.7: Die für DDR-SDRAMs spezifizierten Werte, wie sie sich in den BIOS-Setups
einstellen lassen sollten
Trang 5Der typischerweise im Advanced Chipset Features zu findende Eintrag
RIMM Module Used ist zunächst der wichtigste, denn hier kann
mögli-cherweise manuell einer der vier Typen PC600, PC700, PC800, PC1066 angegeben werden, wobei diese Einstellung mit Bedacht gewählt werden sollte, wie es in Tabelle 6.2 auch angegeben ist, denn es gibt hier eine direkte Kopplung zwischen dem System- und dem Speichertakt Eine AUTO-Einstellung sollte an dieser Stelle die korrekten Werte zur Folge haben, und es ist ziemlich aussichtslos, manuell ein PC1066-Modul statt eines PC800-Moduls anzugeben, denn es wird mit ziemlicher Sicherheit nicht stabil funktionieren Ob tatsächlich manuelle Einstellungsmöglich-keiten und auch alle vier RIMM-Typen im BIOS-Setup auftauchen, hängt (wie immer) vom Mainboard- bzw BIOS-Hersteller ab, und natür-lich werden ältere Pentium 4-Boards nicht mit einem 1066-RIMM umge-hen können und neuere Mainboards möglicherweise aber auch nicht mit älteren RIMMs (PC600, PC700)
Für RIMMs stehen prinzipiell die Fehlererkennungs- und -korrekturme-chanismen zur Verfügung wie bei den SDRAMs (siehe Kapitel 6.2.5), und daher werden sie in einem Setup auch für die Konfigurierung
ange-boten Üblicherweise wird man hier H/W-ECC (Hardware Error
Correc-tion Codes) wählen, damit 1-Bit-Fehler automatisch korrigiert werden
können Es sei erwähnt, dass es RIMMs mit und ohne ECC gibt, und das Handbuch zum Mainboard sollte hier Auskunft geben, welche Typen jeweils benötigt werden
Die einzig neue Option für RAMBus-Speicher befindet sich unter einem
Eintrag wie RDRAM pool B state oder auch RDRAM Device Napdown
Hiermit wird die Möglichkeit angeboten, zwei verschiedene Betriebsar-ten einstellen zu können: Standby oder NAP Der Standby-Modus ist dabei die übliche Betriebsart, während im NAP-Modus die zurzeit nicht
angesprochenen RAMBus-Chips in einem so genannten B-Pool
zusam-mengefasst und dann in einen energiesparenden Modus geschaltet wer-den Dies ist weniger aus Energiespargründen interessant, sondern weil die RAMBus-Chips während des Betriebs recht heiß werden können, was letztendlich zu Temperaturproblemen und damit Instabilitäten führen
BIOS-Setup-Eintrag Bedeutung/Funktion bevorzugte Einstellung
RIMM Module Used Angabe des Modultyps Auto RDRAM Device Napdown zurzeit nicht verwendete Chips
in Energiesparmodus schalten
Nap oder Standby in Abhän-gigkeit von der Chipanzahl RDRAM pool B state zurzeit nicht verwendete Chips
in Energiesparmodus schalten
Nap oder Standby in Abhän-gigkeit von der Chipanzahl DRAM Integrity Mode Fehlererkennungsmechanismus
bestimmen
H/W-ECC
Direct RAMBus Clock Takt für den RAMBus Auto Tab 6.8: Gebräuchliche Optionen für RAMBus-Speicher
Trang 6kann Aus diesem Grunde sind die RAMBus-Module meist auch mit einem Blech als Kühlkörper oder sogar mit einem Lüfter versehen Es hängt von der Anzahl der Chips ab, ob man einige in den NAP-Modus schicken sollte oder nicht Welche dies dann jeweils sein werden, wird –
je nach Systemauslastung – automatisch durchgeführt Bei einem einzi-gen RIM-Modul kann man jedoch beim Standby-Modus bleiben, zumal der Zugriff dann auch schneller ausgeführt wird
6.2.9 Allgemeine Speicheroptionen
Neben den modulspezifischen Optionen gibt es noch einige weitere, die quasi bei jedem Speichertyp auftauchen (können) und daher auch in recht vielen BIOS-Setups zur Verfügung stehen Teilweise scheinen sie mittlerweile auch nicht mehr ganz zeitgemäß zu sein und sind vielfach als überflüssig anzusehen Dennoch ist es gut zu wissen, was sie eigentlich bedeuten
Memory Hole At 15M-16M – Speicherloch?
Dieser Punkt bleibt in den meisten Fällen auf Disabled stehen, da
andernfalls im Speicherbereich von 15–16 MByte ein »Loch« festgelegt wird, wodurch der Hauptspeicher über 15 MByte nicht verwendet wer-den kann Es gibt auch nur wenige (ISA-)Karten (spezielle Controller, Videokarten, ältere ATI-Grafikkarten), die diese Funktion überhaupt benötigen
OS Select for DRAM > 64 MB – mehr als 64 MByte-Speicher?
Bei der Verwendung von mehr als 64 MByte-DRAM mit dem Operating System OS/2 bis zur Version 3.0 (Warp, Fix Level 3) ist diese Option, die
auch als OS/2 Onboard Memory > 64 M bezeichnet wird, einzuschalten,
da dieses OS/2 andernfalls keinen installierten Speicher oberhalb 64 MByte verwenden kann Für Windows ist diese Einstellung nicht von
Bedeutung und sollte daher auf Non-OS2 bzw Disabled geschaltet
wer-den
Bild 6.15: Einige BIOS-Setup-Optionen für den Speicher scheinen nicht mehr ganz
zeitgemäß zu sein
Trang 7Report No FDD For Win 95 – Option für Windows 9x
Eine eigentlich überflüssige Einstellungsmöglichkeit, die nur dann auf
Yes zu stellen ist, falls kein Diskettenlaufwerk (FDD = Floppy Disc
Drive) vorhanden ist und Windows 9x zum Einsatz kommt
Shadow-RAM – BIOS-Kopie im RAM
Sowohl für das BIOS der Grafikkarte (Video BIOS) als auch für andere
Bereiche im Adaptersegment kann Shadow-RAM festgelegt werden Ist
der jeweilige Bereich, in dem sich das BIOS einer Erweiterungskarte oder
auch das des Systems (System-BIOS-Shadow) befindet, auf Enabled
geschaltet, werden die Routinen vom lediglich 8-Bit breiten BIOS-ROM in den entsprechenden RAM-Bereich kopiert
Dieser sorgt aufgrund seiner 32-Bit-Architektur (ab 386-CPU) und den kürzeren Zugriffszeiten der DRAMs gegenüber den EEPROMs- oder auch Flash-PROMs für einen schnelleren Zugriff Wichtig ist dabei, dass der als Shadow-RAM festgelegte Bereich schreibgeschützt ist und nicht als üblicher RAM-Bereich verwendet werden kann Lediglich bei älteren PCs ist hierfür zusätzlich ein Menüpunkt vorgesehen, alle anderen erledi-gen dies bei Aktivierung von Shadow-RAM automatisch
Der Bereich für das Grafik-BIOS ist in den meisten Fällen ab C0000h und/oder auch C4000h festgelegt, und das System-BIOS befindet sich ab der Adresse F0000h SCSI-Adapter (typisch ab DC000h) und auch Netz-werkkarten (typisch D8000h) können prinzipiell ebenfalls Shadow-RAM verwenden, was jedoch nicht auf jeden Kartentyp zutrifft, da bei-spielsweise einige Adapter generell nicht mit Shadow-RAM funktionie-ren In den meisten Fällen wird daher lediglich für das Grafik-BIOS (Video-BIOS) zusätzlich Shadow-RAM aktiviert, und alle anderen
Berei-che bleiben auf Disabled
Die Shadow-RAM-Funktion ist spätestens seit Windows 95 generell performancetechnisch nicht mehr von Belang, da hier eigene Gerätetrei-ber statt der BIOS-Routinen zum Einsatz kommen Außerdem verwen-den PCI-Karten »variable« Adressen, die automatisch vom Plug&Play-BIOS vergeben werden Diese liegen somit nicht fest und können auch nicht manuell in einen Shadow-RAM-Bereich verlagert werden
Bild 6.16: Auch wenn hier die beiden Bereiche für das System- und das Video-BIOS
als »Cacheable« bezeichnet werden, bedeutet es die Festlegung von Shadow-RAM
Trang 86.3 Der Cache-Speicher
Bereits ab 386DX-PCs mit einer Taktfrequenz von 25 MHz ist zusätzlich zum Hauptspeicher ein Cache-RAM (Zwischenspeicher) zu finden, weil die »normalen« DRAMs im Verhältnis zur CPU-Taktfrequenz zu lang-sam sind und die CPU in zusätzlichen Wartezyklen verharren müsste, um auf die Daten aus dem DRAM zu warten Aus diesem Grunde wird quasi zwischen dem DRAM und der CPU ein schneller statischer Speicher (SRAM) realisiert Die Steigerung der Prozessorleistung von einer Gene-ration zur nächsten ist – neben einer stetigen Erhöhung des CPU-Taktes – vielfach nur einem vergrößerten Cache-Speicher zu verdanken und eher weniger anderen neuen Features (MMX, ISSE2, Hyperthreading), die bei der Programmierung entsprechend eingesetzt werden müssen, damit sie überhaupt irgendetwas zur Performance-Steigerung beitragen können
6.3.1 Cache-Realisierungen und -Einstellungen
In einem 80486DX-Prozessor sind ein 8-kByte großer Cache-Speicher und der dafür notwendige Controller gleich mit in der CPU eingebaut Dieser interne Cache-Speicher arbeitet mit dem CPU-Takt und wird als
First-Level-Cache (1-Level, L1-Cache) bezeichnet Er verfügt je nach
CPU-Typ über eine unterschiedliche Kapazität Ab einer Intel-Pentium-CPU mit MMX-Unterstützung besitzt der L1-Cache eine Kapazität von insgesamt 32 kByte, wobei jeweils 16 kByte für Daten und 16 kByte für Befehle zur Verfügung stehen, was auch beim Pentium III der Fall ist
Es gibt noch einen weiteren Cache-Speicher, der als Second Level Cache
(L2-Cache) bezeichnet und bei Sockel 7-Systemen extern auf dem Main-board realisiert wird Der PentiumPro verfügt als erster CPU-Typ auch
über einen integrierten Second Level Cache (Pipelined Burst) mit einer
Kapazität von 256 oder auch 512 kByte, der mit dem vollen CPU-Takt arbeitet, was die Performance gegenüber einem Pentium-Prozessor maß-geblich steigert
Der L2-Cache befindet sich beim PentiumPro mit auf dem gleichen Chip (On Die) wie die eigentliche CPU, was fertigungstechnisch einige Pro-bleme aufwarf, sodass beim Nachfolger Pentium II der L2-Cache mit ein-zelnen Chips realisiert und daher das Slot-1-Design notwendig wurde Davon konnte man sich erst wieder trennen und zu einem Sockel-Design zurückkehren, als es technologisch und dabei kostengünstig möglich war, den L2-Cache wieder On-Die zu realisieren, wie es heute allgemei-ner Standard bei Intel und AMD ist
Trang 9Prinzipiell sind zwei verschiedene Cache-Betriebsarten möglich: Write
Through und Write Back In der ersten Betriebsart werden die Daten
vom Mikroprozessor sowohl in das DRAM als auch gleichzeitig in den Cache geschrieben (durchschreiben = write through)
Beim Lesen der Daten überprüft der Cache-Controller dann anhand eines Vergleichs der im DRAM abgelegten Adressen mit denen im Cache-Tag-RAM, ob sich die Daten bereits im Cache befinden Ist dies der Fall (Cache Hit) – wobei die Wahrscheinlichkeit bis zu 95 % betragen kann –, erfolgt ein schneller Lesezugriff aus dem Cache-RAM, andernfalls wer-den die Daten aus dem langsameren DRAM gelesen (Cache Miss) Mit-hilfe des Cache-Tag-RAMs bestimmt der Cache-Controller generell, ob
ein Cache Hit oder ein Cache Miss vorliegt Das TAG-RAM enthält
gewissermaßen das Inhaltsverzeichnis der Cache-Belegung
(typisch bzw
maximal)
L2-Cache-Takt
486DX 8 kByte extern, 128 kByte externer CPU-Takt, max 50 MHz Pentium 16 kByte extern, 256 kByte externer CPU-Takt, max 66 MHz Pentium MMX 32 kByte extern, 256 kByte externer CPU-Takt, max 66 MHz Pentium Pro 16 kByte 256 oder 512
kByte
CPU-Takt
Pentium II 32 kByte 512 kByte halber CPU-Takt AMD-K6-II 64 kByte extern, 256 kByte externer CPU-Takt, max 100
MHz AMD-K6-III 64 kByte 256 kByte CPU-Takt, L3-Cache möglich Celeron 266, 300 MHz 32 kByte keiner keiner
Pentium III 32 kByte 512 kByte halber CPU-Takt Pentium III 32 kByte 256 kByte CPU-Takt Pentium 4 32 kByte 256 kByte CPU-Takt Athlon, Modell 1 128 kByte 512 kByte je nach CPU-Takt (:2, :2,5, :3) Athlon,
ab Thunderbird
128 kByte 256 kByte CPU-Takt
Tab 6.9: Die Cache-Speicherdaten bei den verschiedenen CPUs
Trang 10Bei der zweiten Cache-Arbeitsweise Write Back wird die Leseoperation
im Prinzip wie beim Write Through Cache absolviert Bei einer
Schreib-operation hingegen werden zuerst die Daten im Cache aktualisiert, nicht aber automatisch die im Hauptspeicher Der Cache-Controller merkt sich in einem Dirty-Bit, dass der Cache-Inhalt verändert wurde und nicht
mehr mit dem Inhalt der Hauptspeichers übereinstimmt Dirty bedeutet
demnach, dass keine Übereinstimmung zwischen DRAM und Cache gegeben ist, und nur in diesem Fall werden nachfolgend auch die Daten
für den Hauptspeicher aktualisiert Ein Write Back Cache ist demnach einem Write Through Cache überlegen, da die Zeit für Schreibzugriffe
minimiert wird und nur dann Daten aktualisiert werden, wenn sie sich auch verändert haben
Ob ein PC ausschließlich im Write-Through- oder auch im Write Back-Modus arbeiten kann, hängt von mehreren Faktoren ab: von der verwen-deten CPU, vom Aufbau des externen Caches, vom Chipsatz des Main-boards und vom BIOS des PC Standardmäßig kann bereits eine Pen-tium-CPU (Sockel 7) im leistungsfähigeren Write-Back-Modus arbeiten,
und im BIOS-Setup sollte dann – wenn möglich – auch Write Back
einge-stellt werden
Die Größe des L2-Cache-Speichers orientiert sich an der installierten Größe des DRAMs, damit ein entsprechend großer DRAM-Bereich zu
»cachen« ist Probleme mit unzureichend ausgelegten Cacheable Areas
und unterschiedlichen Typen gibt es glücklicherweise nicht mehr, seit-dem sich auch der L2-Cache in der CPU selbst befindet Die Chipsets
Bild 6.17: Write Back ist die bevorzugt zu wählende Cache-Einstellung