Vorbetrachtungen für RAS & CAS
Was bedeuten RAS, CAS; CL usw.
Um die Begriffe RAS und CAS und deren
Beeinflussung der Speicher Geschwindigkeit besser erklären zu können, muss vorher
etwas über die interne Funktionsweise von RAM Modulen gesagt werden.
Ein Speicherchip besteht aus einer Vielzahl von Speicherzellen welche in einer
Matrix (Gitter) angeordnet sind. Eine Matrix ist genau wie eine Tabelle in Zeilen
(rows)
sowie Spalten (columns) eingeteilt. So ergibt sich zum Beispiel für ein 16MB
Speicherchip folgende Anzahl von Spalten und Zeilen (16MB = 224 = 16.777.216 =
4096 x 4096). Um all diese Speicherzellen direkt adressieren zu können, wären
etliche Datenleitungen nötig, welche jedoch aus Kostengründen verringert werden
müssen. Daher macht man sich das Adress-Multiplexings zu Nutze. Das bedeutet,
dass über eine Leitung nacheinander beide Adressen (Zeile, Spalte) geschickt
werden. Hierbei wird zuerst immer die Zeilenadresse (Row Adress Strobe = RAS)
übertragen, gefolgt von der Spaltenadresse (Column Adress Strobe = CAS). Dabei
wird zunächst das RAS-Signal aktiviert, um auf die Zeilenadresse zuzugreifen.
Sobald ein Zugriff möglich ist, wird das CAS-Signal aktiviert. Bis jedoch ein
Zugriff auf die Spaltadresse erfolgen kann, vergehen wiederum einige
Taktzyklen. Somit ergibt
sich ein drittes wichtiges Timing neben RAS und CAS und zwar das RAS-to-CAS
Delay, das
durch das Adress-Multiplexing nötig wird. Latency bedeutet dabei Latenzzeit und
beschreibt eine Wartezeit. Diese Wartezeit ist die Anzahl der
Taktzyklen, die benötigt werden um auf die Speicheradresse tatsächlich zugreifen zu können,
nachdem das CAS-Signal gesetzt wurde. Es gibt eine Vielzahl von
Einstellungen, die man zur Speicheroptimierung vornehmen kann, jedoch würde der
Versuch alle zu erklären den Umfang dieses Artikels sprengen, deshalb wurden
die wichtigsten davon in einer Tabelle aufgelistet.
Die Wichtigsten Abkürzungen
Row Active Time |
(tRAS) |
Gibt an wie lange die Zeile aktiv sein soll bevor auf die nächste
gesprungen werden kann. |
Row Precharge Time |
(tRP) |
Hierbei handelt es sich um die Zeit die das Zeilensignal angelegt sein
muss bis es für gültig erklärt wird. (Ladezeit) |
Row Cycle Time
oder:
Bank Cycle Timing |
(tRC) |
Diese Option spezifiziert die Mindestdauer um die gleiche Bank zu
aktivieren. |
RAS-to-CAS-Delay |
(tRCD) |
Diese Zeitspanne gibt an wie lange das Zeilensignal (RAS) auf der Leitung
gültig bleibt bis auf das Spaltensignal (CAS) umgeschaltet wird. |
CAS Latency |
(CL) |
Hiermit wird die Taktzyklen bestimmt die nötig sind um Daten aus der
Speicherzelle zu Lesen nachdem das CAS -Signal erfolgreich gesetzt und für
gültig erklärt wurde. Erst dann kann die adressierte Speicherzelle (bzw. der adressierte
Block) ausgelesen werden. |
Write Recovery Time |
(tWR) |
Bestimmt die Anzahl der Taktzyklen zwischen der letzten gültigen
Schreibaktion und dem frühesten Zeitpunkt an dem derselben Bank ein neuer Befehl
zum Vorladen zugewiesen werden kann. |
R/W Turn Around oder: Turn
Around Insertion |
(tRW) |
Bei dieser Option legt die Hardware zwischen aufeinanderfolgenden Schreib-
und Lesezugriffen einen Wartezyklus von einem Takt ein und bremst das
System. |
Was bedeutet es nun wenn das Speichermodul die Timings 2-2-2-5, 2-3-3-6 oder 3-3-3-8
besitzt? Der erste Wert steht hier für die CAS Latency, die angibt nach wie vielen
Takten die Spalte gelesen werden kann. Der zweite Wert ist die RAS Precharge
Time, welche die Takte angibt, die gebraucht werden um die Zeile vorzuladen, und
der dritte Wert ist das RAS-to-CAS Delay welches ebenfalls in Takten angegeben
ist. Der vierte Wert ist die Row Active Time und gibt an wie lange die Zeile
aktiv sein soll bevor auf die nächste gesprungen werden kann. Dies soll
verhindern, dass der Sprung vorzeitig durchgeführt wird und die Daten nicht
komplett gelesen bzw. geschrieben werden. Je nach Geschwindigkeit des Speichers dauert dies
alles also unterschiedlich
lange.
Bedeutung der Timing angaben bei
Speichermodulen
2 |
- |
2
|
- |
2 |
- |
5 |
CAS Latency |
|
RAS Precharge Time |
|
RAS-to-CAS Delay |
|
Row Active Time |
(CL) |
|
(tRP) |
|
(tRCD) |
|
(tRAS) |
Hiermit lässt sich an einem schönen Rechenbeispiel zeigen, dass höherer
Takt aber nicht alles ist! Ein Speicher der z.B. bei 200MHz mit 2-2-2 und bei 233MHz
bei 3-3-3 läuft, sollte aus folgendem Grund lieber mit den 200MHz laufen. Allein
wenn nur die Spalte gewechselt werden muss, also nur das CAS Signal geändert
wird, ist ein Speicher mit 200MHz bei 2 Takten ( 2 x (1/200MHz) = 10ns)
Wartezeit schon schneller als ein mit
233MHz getakteter welcher 3 Takte ( 3 x (1/200Mhz) = 12,8ns) Wartezeit benötigt. Kommt dann noch RAS und RAS-to-CAS dazu,
wird die Zeitersparnis noch größer.
Nächste Seite:
CL2 ist nicht gleich CL2.
|