1. Trang chủ
  2. » Công Nghệ Thông Tin

PC Werkstatt Ausgabe 2000- P45 doc

15 106 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Speicherbausteine und -Module
Trường học Standard University
Chuyên ngành Computer Science
Thể loại Bài tập tốt nghiệp
Năm xuất bản 2000
Thành phố Berlin
Định dạng
Số trang 15
Dung lượng 398,38 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Es gibt noch einen weiteren Cache, der als Second-Level-Cache L2-Cache bezeich-net wird und entweder extern auf dem Mainboard Sockel-7-Typen realisiert wird oder aber ebenfalls in der C

Trang 1

Bild 8.34: Das Speicherprinzip mit Cache; die langsamste Einheit ist die Festplatte, die über die

größte Kapazität verfügt, die schnellste der 1-Level-Cache, der demgegenüber die klein-ste Speicherkapazität besitzt

Der Cache-Speicher ist, wie in den vorigen Kapiteln bereits angesprochen, für die Leistung eines PC von großer Bedeutung Hierfür sei ein praktisches Beispiel ge-nannt: Wird der Cache-Speicher bei einer 100-MHz-Pentium-CPU abgeschaltet und

dann ein Benchmark-Programm wie Sysinfo (Norton Commander, Symantec)

ange-wendet, kann man feststellen, dass die Ergebnisse etwa gleichauf liegen mit dem dort angegebenen Referenztyp Compaq 386/33 MHz Leider bieten weder die meis-ten PC-Testprogramme noch die Systeminformationen der Betriebssysteme (Win-dows 95) einen genauen Aufschluss über die Cache-Speicher-Konfiguration, so dass

es nötig ist, sich auch mit dieser Materie etwas näher zu beschäftigen

Ab einem 80486DX-Prozessor sind ein 8 Kbyte großer Cache-Speicher und der dafür notwendige Controller gleich mit eingebaut Dieser interne Cache-Speicher wird als

First-Level-Cache (1-Level, L1-Cache) bezeichnet und besitzt, je nach CPU-Typ, eine

unterschiedliche Kapazität, wie es in den Kapiteln zu den einzelnen CPUs beschrie-ben ist

Der Cyrix-Typ 6x86MX bietet beispielsweise einen 1-Level-Cache mit einer Kapazi-tät von 64 Kbyte Bei den Cyrix-CPUs ist der 1-Level-Cache nicht wie bei den ande-ren Prozessoande-ren in einen für Daten und einen für Befehle aufgeteilt, sondern wird

für beide Typen gleichermaßen verwendet, was als unified bezeichnet wird Dies

ist bei Cyrix-CPUs etwas problematisch, da das BIOS speziell diese Art der Cache-Auslegung unterstützen muss, damit der Speicher korrekt eingesetzt werden kann Cyrix (jetzt VIA) stellt daher für Systeme, die den Cache (noch) nicht in der vor-gesehenen Art und Weise initialisieren können, ein spezielles Treiberprogramm zur Verfügung, das diese Funktion übernimmt Es befindet sich neben einigen anderen CPU-Tools auf der diesem Buch beiliegenden CD

Es gibt noch einen weiteren Cache, der als Second-Level-Cache (L2-Cache)

bezeich-net wird und entweder extern auf dem Mainboard (Sockel-7-Typen) realisiert wird oder aber ebenfalls in der CPU (AMD-K6-3) bzw im CPU-Modul (Pentium II) inte-griert ist Der PentiumPro verfügte als erster PC-Mikroprozessor auch über einen

Trang 2

integrierten Second-Level-Cache (Pipelined Burst) mit einer Kapazität von 256 oder

512 Kbyte, der mit dem vollen CPU-Takt arbeitet, was die Performance gegenüber einem Pentium-Prozessor maßgeblich steigert Der Pentium II besitzt ebenfalls ei-nen integrierten Second-Level-Cache, der allerdings nur den halben CPU-Takt ver-wenden kann, während bei Athlon, Celeron und Pentium III-Coppermine der L2-Cache auch mit dem vollen CPU-Takt arbeitet

Die Steigerung der Prozessorleistung von einer Generation zur nächsten ist viel-fach nur einem vergrößerten (internen) Cache zu verdanken und eher weniger anderen neuen Features, die bei der Programmierung entsprechend eingesetzt wer-den müssen, damit sie »Früchte tragen«, was aber oftmals unterbleibt, wie es bei-spielsweise bei der mangelhaften MMX-Unterstützung bei aktuellen Programmen der Fall ist

8.5.1 Cache-Betriebsarten

Prinzipiell 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 Wahrscheinlich-keit bis zu 95% betragen kann, erfolgt ein schneller Lesezugriff aus dem Cache-RAM, andernfalls werden die Daten aus dem langsameren DRAM gelesen (Cache Miss)

Mit Hilfe des Cache-Tag-RAMs, das in der Speicherkapazität meist kleiner ausfällt als die eigentlichen Cache-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

Die zweite Cache-Arbeitsweise wird als Write Back bezeichnet, bei der eine Lese-operation im Prinzip wie beim Write Through Cache absolviert wird Bei einer

Schreib-operation hingegen werden zuerst die Daten im Cache aktualisiert, nicht aber

au-tomatisch 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 Haupt-speichers übereinstimmt

Dirty bedeutet demnach, dass keine datentechnische Übereinstimmung zwischen

DRAM und Cache gegeben ist, und nur in diesem Fall werden dann nachfolgend

auch die Daten für den Hauptspeicher aktualisiert Ein Write Back Cache ist dem-nach in puncto Performance einem Write Through überlegen, da die Zeit für

Schreib-zugriffe minimiert wird und nur dann Daten aktualisiert werden, wenn sie sich

auch verändert haben Im BIOS-Setup eines PC sollte daher – wenn möglich – Write Back eingestellt werden.

Ob ein PC ausschließlich im Write-Through- oder ebenfalls im Write-Back-Modus

arbeiten kann, hängt von mehreren Faktoren ab: Von der verwendeten CPU, vom Aufbau des externen Caches, vom Chipsatz des Mainboards und vom BIOS des PC

Standardmäßig kann erst eine Pentium-CPU im leistungsfähigeren Write-Back-Mo-dus arbeiten Bei 486DX-PCs hängt es davon ab, wie der externe Cache vom

Main-boardhersteller implementiert wurde, und nur mit dem L2-Cache ist dann diese Betriebsart möglich Aus diesem Grunde gibt es einige PCs, bei denen eine Um-schaltung im BIOS-Setup möglich ist, und andere, bei denen es unmöglich ist

Trang 3

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

Wenn es möglich ist und im BIOS-Setup hierfür ein entsprechender Menüpunkt vor-handen ist, sollte die Write-Back-Betriebsart für den Cache eingeschaltet werden Ab

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

Pentium-CPUs wird standardmäßig der (bessere) Write-Back-Modus verwendet.

Es existieren aber auch bereits 486-Prozessoren wie der 486DX-66 der Firma Cyrix und einige 486-CPUs der Firma Intel (erkennbar am Kürzel WB in der

Beschrif-tung), die von Haus aus Write Back unterstützen 386-PCs können meist

ausschließ-lich nur die Write-Trough-Betriebsart verwenden

8.5.2 Second Level Cache – L2-Cache

Der externe Cache-Speicher (L2-Cache) verfügt in der Regel über eine Kapazität von

256 Kbyte bis hin zu 1 Mbyte Die Kapazität ist also wesentlich geringer als die der üblichen DRAM-Speicherauslegung Das Prinzip des Cache-Speichers ist bereits aus den 60-iger Jahren bekannt Man macht sich dabei die Tatsache zunutze, dass in einem Programm viele Aktionen sequentiell oder in Schleifen durchlaufen werden, und da bestimmte Programmteile oder Datenvariablen, die vielfach nicht sehr speicher-intensiv sind, immer wieder benötigt werden, sind ganz beachtliche Steigerungen der Verarbeitungsgeschwindigkeit die Folge, wenn sie aus dem schnellen Cache zur Verfügung stehen

Bei relativ kleinen Cache-Speichergrößen (32 Kbyte) ist es in den meisten Fällen möglich, den Cache mit entsprechenden Bausteinen auf dem Mainboard aufzurü-sten, was sich für eine möglichst gute PC-Performance durchaus empfiehlt In der folgenden Tabelle ist angegeben, wie die Cache-Bausteine für die üblichen Speicher-größen organisiert sein müssen und wie viele man davon jeweils benötigt

Tabelle 8.16: Übliche Bestückungsmöglichkeiten von Cache-Speichern

Einige Hersteller haben aus Kostengründen den Write-Back-Cache-Speicher leider

so realisiert, dass das Dirty-Bit nicht verarbeitet werden kann Dadurch wird ein Baustein eingespart (TAG-RAM) und der Controller kann nicht erkennen, ob Daten

im Hauptspeicher aktualisiert werden müssen oder nicht Daher müssen, wie beim Write-Through-Cache, immer sowohl Daten in den Cache als auch in den Hauptspei-cher geschrieben werden, wodurch sich dann kein merkliHauptspei-cher Vorteil gegenüber Write-Through ergibt Eine Nachrüstung dieses Bausteins ist immer dann sinnvoll, wenn hierfür eine leere Fassung auf dem Mainboard vorhanden und im BIOS-Setup eine Umschaltung auf Write-Back-Cache möglich ist

Trang 4

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

Bei Systemen, die nicht mindestens über einen L2-Cache von 256 Kbyte verfügen, ist eine entsprechende Erweiterung sinnvoll Eine Cache-Aufrüstung von 256 auf 512

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

Kbyte bringt erst ab einer RAM-Größe von 32 Mbyte einen Performance-Gewinn.

Bild 8.35: Bei diesem 486-Mainboard wurde beim Aufbau des Cache-Speichers gespart und das

TAG/DIRTY-RAM nicht bestückt, welches hier aber im freien Sockel problemlos nachgerü-stet werden kann

Die Größe des Cache-Speichers orientiert sich an der installierten Größe des DRAMs, damit ein entsprechend großer DRAM-Bereich zu »cachen« ist Wie es im Kapitel bei den Chipsets zu lesen ist, hängt die Cacheable-Area vom Chipsatz selbst und auch vom eingebauten TAG-RAM ab

Der Intel-430HX-Chipsatz kann 512 Mbyte »cachen«, der (neuere) Intel 430TX hinge-gen nur 64 Mbyte Wird auf einen Speicherbereich zugegriffen, der sich außerhalb der Cacheable-Area befindet, bedeutet dies, dass die Daten direkt aus dem (langsa-meren) DRAM zu verarbeiten sind Dies hat aber zur Folge, dass der PC langsamer arbeitet, als wenn er über entsprechend weniger DRAM verfügen würde, da die Cache/ DRAM-Verarbeitung (die Daten liegen teilweise im Cache, teilweise aber im DRAM) unnötigerweise Verarbeitungszeit beansprucht Es hat demnach absolut keinen Sinn, einen PC mit 430TX-Chipsatz mit mehr als 64 Mbyte auszustatten

Tabelle 8.17: Die Cacheable-Area wird von der Breite des TAG-RAMs bestimmt

Trang 5

Aber selbst wenn der Chipsatz den maximal zu installierenden DRAM-Bereich zu

»cachen« vermag, bedeutet dies noch nicht, dass dies auch in der Praxis möglich

ist, denn das TAG-RAM muss über eine bestimmte Datenbreite verfügen Die

Main-board-Hersteller sparen dabei gern ein paar Mark ein und verwenden ein TAG-RAM, welches wieder eine Limitierung der Cacheable-Area zur Folge hat Welchen Einfluss die Breite des TAG-RAMs auf die Cacheable-Area hat, zeigt die folgende Tabelle

Bild 8.36: Die Cache-Größe, wobei hier unterschiedliche Cache-RAM-Bausteine zum Einsatz

kom-men können, wird bei diesem Mainboard mit Jumpern festgelegt

Trang 6

Bei einigen Mainboards – beispielsweise der Firma Gigabyte – ist es möglich, das standardmäßig vorhandene 8-Bit-TAG-RAM gegen ein 11-Bit-TAG-RAM zu ersetzen, damit der maximale Bereich von 512 Mbyte zu »cachen« ist

○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

Es kommt leider immer wieder vor, dass beim Aufbau des 2-Level-Cache-Speichers gespart wird und das TAG-RAM aus Kostengründen nicht bestückt wird In den meis-ten Fällen ist hierfür aber noch freier Sockel vorhanden, so dass man diesen Bau-stein auch selbst nachrüsten kann.

Bei Mainboards wird nicht immer das TAG-RAM in der erforderlichen Bit-Breite einbaut, welches – je nach Mainboardtyp und Chipsatz – möglicherweise durch ein

ge-○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○

eigneteres zu ersetzen ist.

Bild 8.37: Auf einigen aktuellen Mainboards ist der 2-Level-Cache-Speicher direkt aufgelötet und

kann weder um- noch aufgerüstet werden; die Zugriffszeit des Speichers beträgt hier

6 ns (erkennbar an der -6-Bezeichung, nicht zu verwechseln mit der Bezeichnung wie sie bei DRAMs üblich ist und dann für 60 ns stehen würde)

Auf älteren Mainboards findet man für die Festlegung der L2-Cache-Größe oftmals einige Jumper, die der Mainboard-Elektronik die jeweilige Konfiguration signali-sieren Das folgende Bild zeigt die Bestückungsvarianten und Jumperstellungen für ein 486-Mainboard von der Firma Asus

Trang 7

8.5.3 Cache-Speicher-Implementierungen

Prinzipiell kann der L2-Cache-Speicher auf üblichen PC-Mainboards in vier Varian-ten realisiert sein:

> Asynchroner Cache

> Synchroner Cache

> Cache mit Burst SRAMs

> Cache mit Pipelined Burst SRAMs

Die Cache-RAMs sind wie die DRAMs und SIMMs in Bänken organisiert und arbeiten asynchron zum Prozessortakt mit Enable-Signalen Diese Cache-Konfiguration

be-zeichnet man daher als asynchronen Cache (A-Cache).

Synchrone statische RAMs (Synchronous SRAMs) können demgegenüber mit schnel-leren Zugriffszeiten (< 20 ns) aufwarten und sind bei einigen Mainboards optional – statt der A-Cache-Bausteine – zu bestücken Sie arbeiten mit einem zur CPU synchronen Takt, was gegenüber den asynchronen SRAMs zu einer Einsparung von Verzögerungszeiten führt

Burst-SRAMs sind, wie es die Bezeichnung Burst signalisiert, in der Lage, nach der

Übermittlung der Startadresse die darauffolgenden Adressen selbst zu generieren Sie benötigen also nicht für jede Datenübertragung zuvor eine »neue« Adresse von der CPU, was grundsätzlich eine schnellere Datenübertragung gegenüber den asyn-chronen SRAMs erlaubt

In (fast) allen neueren PCs sind die Pipelined-Burst-SRAMs zu finden, die gegenüber

den Burst-SRAMs mit dem Vorteil aufwarten können, dass sie bei mehreren aufein-ander folgenden Burst-Zugriffen eine quasi überlappende Übertragung der Start-adresse und der ersten Daten ermöglichen, wodurch ein Zyklus eingespart wird Die Besonderheit der Pipelined-Burst-SRAMs ist im Prinzip nichts anderes als ein zusätzliches Datenausgangsregister, welches das Memory-Array von den Ausgangs-treibern entkoppelt

Die SRAMs für den L2-Cache sind nur bei den älteren Mainboards im DIP-Gehäuse realisiert, während alle neueren SRAMs (Pipelined Burst) im PLCC- oder auch TQFP-Gehäuse gefertigt und direkt auf das Mainboard gelötet werden, was einen erfor-derlichen Austausch oder eine Erweiterung erschwert oder auch unmöglich macht Gewissermaßen eine Ausnahme ist im Bild 7.32 gezeigt Hier kann der asynchrone Cache (rechts oben im Bild) gegen synchrone SRAMs, für die vier Sockel (über der Pentium-CPU) vorgesehen sind, ausgetauscht werden

Bei neueren Mainboards wird die vorhandene Cache-Speichergröße und der einge-setzte Typ automatisch erkannt Im BIOS-Setup ist der L2-Cache – wie meist auch der L1-Cache – an- oder abzuschalten und bei einigen Versionen lassen sich auch noch einige Timing-Parameter konfigurieren

Trang 8

Bild 8.38: Einstellungen für die beiden Cache-Speicher, die wie hier bei einer Athlon-CPU –

entge-gen der Bezeichnung External Cache – beide im Prozessor integriert sind, finden sich im

»Advanced BIOS Features Setup«

Bild 8.39: Dieses Mainboard ist mit Pipelined-Burst-SRAMs (UMC 3232AF-7) bestückt und daher

fehlt hier der asynchrone Cache (Lötpunkte unter den UMC-Chips) Rechts ist das TAG-RAM für den Cache von 256 Kbyte zu erkennen

Auch bei neueren Mainboards ist immer darauf zu achten, ob ein TAG-RAM vorhan-den ist und über welche Kapazität bzw Bit-Breite es verfügt Bei einem in der CPU integrierten L2-Cache (ab Pentium II) muss man sich darüber – außer der Einschal-tung im BIOS-Setup –, keine weiteren Gedanken machen und die Cacheable-Area beträgt bei aktuellen CPUs (Pentium III, Athlon) auch (mindestens) der maximal

zu bestückenden DRAM-Speichergröße

Trang 9

8.5.4 SRAMs und allgemeine Speicheridentifizierung

Als RAM-Bausteine werden für den Cache-Speicher grundsätzlich statische RAMs (SRAMs) verwendet Ihre Zugriffszeiten liegen typischerweise bei 6-25 ns Wie die DRAMs sind auch die SRAMs bei einer Matrix aus Zeilen und Spalten aufgebaut Die Zeilen- und Spaltenadressen werden jedoch nicht nacheinander, sondern gleichzei-tig als eine einzige Adresse gesendet Die Aufteilung erfolgt innerhalb des Bau-steins, wodurch sich die Peripherie zu ihrer Ansteuerung vereinfacht

Die statischen RAMs bestehen aus einer Vielzahl einzelner Flip-Flops, wobei sich eine Speicherzelle typischerweise aus vier bis sechs Transistoren zusammensetzt Bei einem High ist das Flip-Flop gesetzt, bei einem Low zurückgesetzt Die

folgen-de Tabelle enthält eine kurze Beschreibung folgen-der einzelnen SRAM-Signale

A0-Ax Die Anschlüsse für die Adressleitungen

/CE Chip Enable, Selektierung des Bausteins

DQx, I/Ox Datenbus für Dateneingang/Datenausgang

NC No Connection Diese Pins sind nicht angeschlossen

/OE Output Enable schaltet die Daten beim Lesen auf die Ausgänge

des Bausteins

Vcc oder Vdd Versorgungsspannung (5 V)

Vss oder GND Masseanschluss, Ground

/WE Write Enable, Eingang für den Schreibzugriff

Tabelle 8.18: Die Signalbedeutung bei SRAMs

Trang 10

Bild 8.40: Der interne Aufbau eines SRAMs vom Typ 32 Kbit x 8 Bit

Für die Adressierung eines 43258-SRAMs (32768 x 8 Bit) werden 15 Adressleitungen benötigt (A0-A14) Der SRAM-Baustein wird durch ein Low am /CS-Eingang (Chip Select) aktiviert Die bidirektionalen Datenleitungen sind wie bei den 4 Bit breiten DRAMs mit I/Ox oder auch DQx bezeichnet Mit einem aktiven (Low) /WE-Signal (Write Enable) werden Daten zum SRAM geschrieben Die 8 Bit breiten SRAMs besitzen für die Freigabe des Ausgangstreibers das Eingangssignal /OE (Output Enable)

Ngày đăng: 03/07/2014, 14:20