Search the FAQ Archives

3 - A - B - C - D - E - F - G - H - I - J - K - L - M
N - O - P - Q - R - S - T - U - V - W - X - Y - Z
faqs.org - Internet FAQ Archives

<2005-01-08> CPU+Mainboard FAQ - Kapitel 8/14 - RAM

( Part0 - Part1 - Part2 - Part3 - Part4 - Part5 - Part6 - Part7 - Part8 - Part9 - Part10 - Part11 - Part12 - Part13 )
[ Usenet FAQs | Web FAQs | Documents | RFC Index | Neighborhoods ]
Archive-name: de/comp/hardware/cpu+mainboard/kapitel_8
Posting-frequency: monthly
Last-modified: 2005-01-08
URL: http://dch-faq.de/kap08.html
Disclaimer: Approval for *.answers is based on form, not content.

See reader questions & answers on this topic! - Help others by sharing your knowledge
8. Arbeitsspeicher/Hauptspeicher - RAM
======================================

 8.1 RAM-Grundlagen
 ==================

  8.1.1 Was ist RAM?
  ==================

  RAM = Random Access Memory ist "Speicher mit wahlfreiem Zugriff",
  sprich es kann sowohl daraus gelesen als auch hineingeschrieben
  werden. Der Begriff wird auch synonym f�r den Arbeitsspeicher eines
  PCs verwendet. RAM ist fl�chtig, d.h. alle in ihm abgelegten Daten
  gehen nach dem Abschalten des Stromes verloren. Im RAM (hier im
  Sinne von "Arbeitsspeicher") werden Programme und Daten abgelegt, um
  sie zu verarbeiten. Da RAM um Gr�ssenordnungen schneller als
  Massenspeicher (z.B. Festplatten) ist, wird die Ausf�hrung eines
  Programmes sehr stark beschleunigt. (In den Pionierjahren des
  Computers wurden die Programme tlw. noch direkt von Massenspeichern
  - damals: Lochkarten - verarbeitet, was sehr langsam war. Heute wird
  RAM zwingend vorausgesetzt, um Programme zu verarbeiten. (Ohne RAM
  startet der PC nicht einmal, sondern beschwert sich lauthals per
  Systemlautsprecher, da das BIOS heutzutage gepackt ist und erst
  entpackt werden muss, was ohne RAM nicht geht.)

  RAM kann durch viele Technologien hergestellt werden und existiert
  in sehr vielen unterschiedlichen Varianten. Eines ist aber allen
  Arten gemeinsam: Es gibt einen Adresseingang (eine Art Hausnummer
  f�r die Daten), einen Daten-Ein/Ausgang und einen "Umschalter", der
  anzeigt, ob Daten auf die angelegte Adresse geschrieben oder von
  dieser Adresse gelesen werden sollen. Genaueres siehe Kap. 8.4.

  Je nach verwendeter Technologie ist RAM unterschiedlich schnell und
  teuer. Der schnellste heute gebr�uchliche RAM-Typ ist SRAM (Static
  RAM), welcher aber auch sehr kostspielig herzustellen ist. Daher
  wird er dort verwendet, wo h�chste Geschwindigkeit gefordert wird,
  z.B. als Cache (schneller Zwischenspeicher, siehe auch 3.3.3)
  innerhalb der CPU. Aber nicht allein der Preis ist bei SRAM das
  Problem. SRAM braucht auch sehr viel Platz auf dem Silizium (6
  Transistoren f�r eine Zelle), welcher nicht unbegrenzt zur
  Verf�gung steht.

  Ein relativ gutes Preis-/Leistungsverh�ltnis hat DRAM (Dynamic RAM),
  weshalb dieser RAM-Typ haupts�chlich als Hauptspeicher in Computern
  eingesetzt wird. Eine DRAM-Zelle besteht nur aus einem Transistor
  und einem Kondensator.

  F�r einige Spezialanwendungen, wie Grafikkarten existieren auch
  Typen wie WRAM oder VRAM, welche aber nicht so verbreitet sind.

  Eine Ausnahme bildet z.B. FlashRAM, das seine Daten beim
  Abschalten der Stromversorgung nicht verliert. Es ist aber sehr
  langsam und wird deshalb z.B. in PDAs (Organizern) eingesetzt.


  8.1.2 Aufbau von RAM
  ====================

  Die Erkl�rung des Aufbaus h�lt sich eng an einen Artikel der
  Zeitschrift c't (siehe c't 17/00, Seite 166ff und auch
  http://www.heise.de/ct/Redaktion/ciw/speicher.html).

  Auf jedem heute erh�ltlichen Speichermodul gibt es einzelne
  Speicherchips (ICs), welche die eigentlichen DRAM-Zellen (siehe
  Kap. 8.1.4) und die Schreib- und Leseverst�rker (Sense Amps)
  enthalten. Letztere sind f�r die regelm�ssige Auffrischung
  (Refresh) des Zelleninhalts verantwortlich. Grunds�tzlich k�nnen
  nur gleiche Chipsorten auf einem Modul kombiniert werden: FPM-ICs
  nur mit FPM-ICs, EDO-ICs nur mit EDO-ICs etc.

  Bei Speicherchips wird die Gr�sse grunds�tzlich in MegaBit (kurz
  MBit) angegeben (um diesen Wert auf die bekanntere Gr�sse MegaByte
  umzurechnen, muss man den MBit-Wert nur durch 8 teilen). Ein
  64MBit-IC hat also 64*1024*1024 = 67.108.864 Zellen. Trotz gleicher
  Gr�sse k�nnen die ICs intern aber unterschiedliche Strukturen
  aufweisen, z.B. spricht man hier von der Aufteilung in
  Speicherb�nke, welche �ber eine eigene "Bank Select"-Leitung direkt
  angew�hlt werden k�nnen. Auch in den einzelnen B�nken kann die
  Unterteilung unterschiedlich sein. So gibt es 64MBit-Chips mit:
  - 4 B�nken mit je 16 1-MBit-Speicherfeldern (16 Datenleitungen,
    4M x 16-Organisation)
  - 4 B�nken mit je 8 2-MBit-Speicherfeldern (8 Datenleitungen,
    8M x 8-Organisation)
  - 4 B�nken mit je 4 4-MBit-Speicherfeldern (4 Datenleitungen,
    16M x 4-Organisation)

  Diese verschiedenen Organisationen werden ben�tigt, um
  unterschiedlich grosse Module aus denselben Chips aufbauen zu
  k�nnen. Aus 64MBit-ICs kann man z.B. bauen:
  - 4 Chips in 4M x 16 ergeben ein 32-MByte-Modul
  - 8 Chips in 8M x 8 ergeben ein 64-MByte-Modul
  - 16 Chips in 16M x 4 ergeben ein 128-MByte-Modul (meist nur auf
    Registered DIMMs anzutreffen)
  - 32 Chips in 16M x 4, wovon jeweils zwei parallel geschaltet
    werden, ergeben ein 256-MByte-Modul. Wird aber heute nicht mehr
    verwendet, da es ja schon gr�ssere Speicher-ICs bis 512MBit gibt.

  Das f�hrt auch dazu, dass ein Modul mit gleicher Kapazit�t aus
  unterschiedlich grossen Chips aufgebaut werden kann. Ein 64MByte-
  Modul l�sst sich folgendermassen aufbauen:
  - 2 Chips zu je 256 MBit, jeder 8M x 32-Chip hat dabei 32
    Datenleitungen
  - 4 Chips zu je 128 MBit, jeder 8M x 16-Chip hat dabei 16
    Datenleitungen
  - 8 Chips zu je 64 MBit, jeder 8M x 8-Chip hat dabei 8
    Datenleitungen
  - 32 Chips zu je 16 MBit, jeder 8M x 4-Chip hat dabei 4
    Datenleitungen, je zwei Chips sind an den Datenleitungen parallel
    geschaltet

  Die interne Organisation der einzelnen Chips bestimmt letztendlich
  den Aufbau den Speichermoduls. Da die Speicherfelder in Zeilen
  (Rows) und Spalten aufgebaut sind, ist auch das Verh�ltnis von
  Zeilen zu Spalten unterschiedlich. F�r den bereits bekannten Fall
  des 64-MBit-SDRAMs sieht das so aus:
  - 4M x 16-Organisation: 4 B�nke mit je 16 Feldern mit je 4096 Zeilen
    und 256 Spalten - 12 Zeilenbits (2^12=4096) und 8 Spaltenbits
    (2^8=256)
  - 8M x 8-Organisation: 4 B�nke mit je 8 Feldern mit je 4096 Zeilen
    und 512 Spalten - 12 Zeilenbits (2^12=4096) und 9 Spaltenbits
    (2^9=512)
  - 16M x 4-Organisation: 4 B�nke mit je 4 Feldern mit je 4096
    Zeilen und 1024 Spalten - 12 Zeilenbits (2^12=4096) und 10
    Spaltenbits (2^10=1024)
  Bei diesem Vergleich f�llt auf, dass die Zeilenanzahl immer gleich
  bleibt. Das ist durchaus Absicht, denn beim Refresh m�ssen alle
  Zeilen der Reihe nach aufgefrischt werden, und das in einer fest
  vorgegebenen Zeit (meist 64ms). Ein sogenannter "4K-Refresh" sagt
  damit aus, dass 4096 Zeilen innerhalb der 64ms aufgefrischt sein
  m�ssen, die Takt-Periode betr�gt dabei 15.6�s. Beim 8K-Refresh
  werden demnach innerhalb von 64ms 8192 Zeilen aufgefrischt, die
  Takt-Periode ist dann nur halb so lang wie beim 4K-Refresh, also
  7.8�s.


  8.1.3 Chipkombinationen g�ngiger SDRAM-Chips
  ============================================

  Chip-Aufbau (Eigenschaften der SDRAMs)
  ======================================

  Kapazit�t |  Organisation    | B�nke |  Adressbits | Page Length
   [MBit]   |    [Tiefe x      |       +------+------+    [Bit]
            |  Datenleitungen] |       |  Row |Column|
  ==========+==================+=======+======+======+=============
    16      |    4 M x 4       |   2   |  12  |   9  |     512
  ----------+------------------+-------+------+------+-------------
    64      |    4 M x 16      |   4   |  12  |   8  |     256
  ----------+------------------+-------+------+------+-------------
    64      |    8 M x 8       |   4   |  12  |   9  |     512
  ----------+------------------+-------+------+------+-------------
    64      |   16 M x 4       |   4   |  12  |  10  |    1024
  ----------+------------------+-------+------+------+-------------
   128      |    8 M x 16      |   4   |  12  |   9  |     512
  ----------+------------------+-------+------+------+-------------
   128      |   16 M x 8       |   4   |  12  |  10  |    1024
  ----------+------------------+-------+------+------+-------------
   128      |   32 M x 4       |   4   |  12  |  11  |    2048
  ----------+------------------+-------+------+------+-------------
   256 (4)  |   16 M x 16      |   4   |  13  |   9  |     512
  ----------+------------------+-------+------+------+-------------
   256 (4)  |   32 M x 8       |   4   |  13  |  10  |    1024
  ----------+------------------+-------+------+------+-------------
   256 (4)  |   64 M x 4       |   4   |  13  |  11  |    2048
  ----------+------------------+-------+------+------+-------------
   512 (4,5)|   32 M x 16      |   4   |  13  |  10  |    1024
  ----------+------------------+-------+------+------+-------------
   512 (4,5)|   64 M x 8       |   4   |  13  |  11  |    2048
  ----------+------------------+-------+------+------+-------------
   512 (4,5)|  128 M x 4       |   4   |  13  |  12  |    4096
  ----------+------------------+-------+------+------+-------------
   1024(4,5)|   64 M x 16      |   4   |  14  |  10  |    1024
  ----------+------------------+-------+------+------+-------------
   1024(4,5)|  128 M x 8       |   4   |  14  |  11  |    2048
  ----------+------------------+-------+------+------+-------------
   1024(4,5)|  256 M x 4       |   4   |  14  |  12  |    4096
  ----------+------------------+-------+------+------+-------------

   (4) 256MBit-, 512MBit- und 1GBit-Chips brauchen einen 8K-Refresh (7.8 �s).
   (5) 512MBit- und 1GBit-Chips werden noch selten in grosser Serie hergestellt,
       es stehen deshalb evtl. noch nicht alle Daten zur Verf�gung.

  DIMM-Aufbau (Moduleigenschaften)
  ================================

Kapazit�t |Organisation| 32MByte| 64MByte|128MByte|256MByte|512MByte| 1GByte | 2GByte | 4GByte
 [MBit]   |  [Tiefe x  |/ 4Mx64 |/ 8Mx64 |/16Mx64 |/ 32Mx64|/64Mx64 |/128Mx64|/256Mx64|/512Mx64
          |  Datenlei- +--------+--------+--------+--------+--------+--------+--------+--------
          |   tung]    |Anzahl der SDRAM-Chips pro Modul / Anzahl der Rows / Page Size pro Row
==========+============+========+========+========+========+========+========+========+========
  16      |  4 M x 4   |16(2)/1 |   -    |   -    |   -    |   -    |   -    |   -    |   -
          |            |  /4K   |        |        |        |        |        |        |
----------+------------+--------+--------+--------+--------+--------+--------+--------+--------
  64      |  4 M x 16  | 4/1/2K |   -    |   -    |   -    |   -    |   -    |   -    |   -
----------+------------+--------+--------+--------+--------+--------+--------+--------+--------
  64      |  8 M x 8   |   -    | 8/1/4K |16(1)/2 |   -    |   -    |   -    |   -    |   -
          |            |        |        |  /4K   |        |        |        |        |
----------+------------+--------+--------+--------+--------+--------+--------+--------+--------
  64      | 16 M x 4   |   -    |   -    |16(2)/1 |32(3)/2 |   -    |   -    |   -    |   -
          |            |        |        |  /8K   |  /8K   |        |        |        |
----------+------------+--------+--------+--------+--------+--------+--------+--------+--------
 128      |  8 M x 16  |   -    | 4/1/4K |   -    |   -    |   -    |   -    |   -    |   -
----------+------------+--------+--------+--------+--------+--------+--------+--------+--------
 128      | 16 M x 8   |   -    |   -    | 8/1/8K |16(1)/2 |   -    |   -    |   -    |   -
          |            |        |        |        |  /8K   |        |        |        |
----------+------------+--------+--------+--------+--------+--------+--------+--------+--------
 128      | 32 M x 4   |   -    |   -    |   -    |16(2)/1 |32(3)/2 |   -    |   -    |   -
          |            |        |        |        |  /16K  |  /16K  |        |        |
----------+------------+--------+--------+--------+--------+--------+--------+--------+--------
 256 (4)  | 16 M x 16  |   -    |   -    | 4/1/4K |   -    |   -    |   -    |   -    |   -
----------+------------+--------+--------+--------+--------+--------+--------+--------+--------
 256 (4)  | 32 M x 8   |   -    |   -    |   -    | 8/1/8K |16(1)/2 |   -    |   -    |   -
          |            |        |        |        |        |  /8K   |        |        |
----------+------------+--------+--------+--------+--------+--------+--------+--------+--------
 256 (4)  | 64 M x 4   |   -    |   -    |   -    |   -    |16(2)/1 |32(3)/2 |   -    |   -
          |            |        |        |        |        |  /16K  |  /16K  |        |
----------+------------+--------+--------+--------+--------+--------+--------+--------+--------
 512 (4)  | 32 M x 16  |   -    |   -    |   -    | 4/1/8K |   -    |   -    |   -    |   -
----------+------------+--------+--------+--------+--------+--------+--------+--------+--------
 512 (4)  | 64 M x 8   |   -    |   -    |   -    |   -    | 8/1/16K|16(1)/2 |   -    |   -
          |            |        |        |        |        |        |  /16K  |        |
----------+------------+--------+--------+--------+--------+--------+--------+--------+--------
 512 (4)  |128 M x 4   |   -    |   -    |   -    |   -    |   -    |16(2)/1 |32(3)/2 |   -
          |            |        |        |        |        |        |  /32K  |  /32K  |   
----------+------------+--------+--------+--------+--------+--------+--------+--------+--------
 1024(4,5)| 64 M x 16  |   -    |   -    |   -    |   -    | 4/1/8K |   -    |   -    |   -
----------+------------+--------+--------+--------+--------+--------+--------+--------+--------
 1024(4,5)|128 M x 8   |   -    |   -    |   -    |   -    |   -    | 8/1/16K|16(1)/2 |   -
          |            |        |        |        |        |        |        |  /16K  |  
----------+------------+--------+--------+--------+--------+--------+--------+--------+--------
 1024(4,5)|256 M x 4   |   -    |   -    |   -    |   -    |   -    |   -    |16(2)/1 |32(3)/2
          |            |        |        |        |        |        |        |  /32K  |  /32
----------+------------+--------+--------+--------+--------+--------+--------+--------+--------

  Anmerkungen:
  Die Modulbezeichnung 8 M x 64 steht f�r ein als "Non-Parity" oder
  auch "Non-ECC" bezeichnetes 64-MByte-Modul. F�r EC- oder
  ECC-Fehlerkorrektur ben�tigt man Module mit zus�tzlichen Chips und
  8 weiteren Datenleitungen, weshalb man ein 64-MByte-ECC-DIMM auch
  unter der Bezeichnung "8 M x 72" findet. Das gilt sinngem�ss auch
  f�r die anderen Kapazit�ten.

  (1) Auf solchen doppelseitig best�ckten ("zweireihigen" oder
      "dual-row" oder "double-sided") DIMMs (DS-DIMM) sind die
      Datenleitungen von je zwei Chips parallel geschaltet.
  (2) Bei solchen doppelseitig best�ckten DIMMs sind keine
      Datenleitungen parallel geschaltet, es handelt sich also
      elektrisch um Single-Sided-Module (SS-DIMMs, "single-row",
      "einreihig"). Diese sind laut PC133-Spezifikation als
      ungepufferte DIMMs (unbuffered DIMMs) nicht vorgesehen, sondern
      nur als Registered DIMMs.
  (3) 32-Chip-Module doppelter Bauh�he ("double stack") entsprechen
      nicht der PC100-/PC133-Spezifikation; es sind hier nur
      Registered DIMMs mit �bereinander angebrachten Chips (teilweise
      in einem Geh�use) zul�ssig (Stacked DIMMs).
  (4) 256MBit-, 512MBit- und 1GBit-Chips brauchen einen 8K-Refresh (7.8 �s).
  (5) 1GBit-Chips werden noch selten in grosser Serie hergestellt, es stehen deshalb
      evtl. noch nicht alle Daten zur Verf�gung.


  8.1.4 DRAM
  ==========

  Seit es Heimcomputer gibt, wird DRAM in CMOS-Technologie gefertigt.
  Doch auch diese Technologie wird immer weiter entwickelt, so dass
  h�here Packungsdichten, geringere Strukturgr�ssen und niedrigere
  Versorgungsspannungen erreicht werden, die alle ein Ziel haben:
  Vergr�sserung der wirtschaftlich herstellbaren RAM-Gr�sse und Erh�hung
  der Geschwindigkeit. Aus diesem Grund sind mit der Zeit immer neue
  Bauformen (siehe 8.3) f�r RAM entwickelt worden.


  8.1.5 Mehr Lesestoff
  ====================

  Ein recht verst�ndlich geschriebener Artikel zu den Grundlagen von
  RAM (allerdings in englischer Sprache) findet sich hier:
    http://arstechnica.com/paedia/r/ram_guide/ram_guide.part1-1.html
    http://www.corsairmemory.com/memory_basics/153707/index.html
  c't 17/00 Seite 166ff:
    http://www.heise.de/ct/Redaktion/ciw/speicher.html
  c't 06/02 Seite 262ff,
  c't 08/02 seite 282ff.   
  Ein ausf�hrlicher, recht aktueller RAM-Leitfaden findet sich in
  c't 23/03 Seite 202ff.


 8.2 Terminologie
 ================

 Einige Betriffe tauchen in diesem Kapitel immer wieder auf.

 * IC: Integrated Circuit, integrierter Schaltkreis. Bauteil, das
   mehrere "klassische" Bauteile (Kondensatoren, Transistoren, ...)
   zusammenfasst. Ohne ICs w�ren heutige PCs gar nicht denkbar. Hier in
   Kapitel 8 sind damit die Speicherchips gemeint.

 * ROM: Read Only Memory, Speicher, der im Gegensatz zu RAM nur gelesen
   werden kann. Wird z.B. f�r das BIOS des PCs (siehe Kapitel 7)
   benutzt.

 * DRAM: Dynamic RAM: Speicher, der seinen Inhalt nur beh�lt, wenn er
   regelm�ssig "aufgefrischt" wird (Refresh), da er aus Kondensatoren
   aufgebaut ist und seine Ladungen ohne Refresh relativ schnell
   verlieren w�rde. Eine DRAM-Zelle besteht nur aus einem Transistor 
   (Transfergate zur Auswahl des Kondensators) und einem Kondensator.

 * SRAM: Static RAM: Speicher, der keinen Refresh braucht; wesentlich
   schneller als DRAM, in verschiedenen Variationen typischerweise f�r
   Cache (siehe Kapitel 2.2.3 und 3.3.3) auf 386er-, 486er- und 
   Sockel-5/7-Motherboards eingesetzt. 
   Auch heute noch wird so ziemlich jeder (Prozessor-) Cache damit 
   aufgebaut, nur dass der eben nicht mehr OnBoard verl�tet, per 
   Slot-Karte steckbar (COAST-Module = Cache On A Stick) oder auf
   einem Prozessormodul aufgel�tet ist, sondern in der CPU drin sitzt.
   Warum kommt SRAM ohne Refresh aus? SRAM besteht aus Flip-Flops.
   Diese FFs fallen in einen definierten Zustand und verweilen dort so
   lange, bis der Zustand "mit Gewalt" ge�ndert wird (oder der Strom
   abgeschaltet wird). SRAM besteht somit aus 6 Transistoren 
   (gegen�ber 2 bei DRAM): 2 gegengekoppelte Inverter (1 nMOS, 1 pMOS)
   und 2 Transfergates f�r die Bitleitung und invertierte Bitleitung
   zum Setzen und Auslesen.

 * Parity: Aus 8 Datenbits wird die Quersumme gebildet und diese in
   einem 9. Bit abgespeichert. Stimmt sie nicht, wird das dem
   Betriebssystem mitgeteilt, das dann entweder eine Fehlermeldung
   ausgibt - oder gar nichts tut. Speichermodule mit Parity, die man
   typischerweise an ihrer Datenbusbreite erkennt (Vielfache von 9
   statt 8 Bits, also 9 Bits, 36 Bit, 72 Bits) waren fr�her
   (386er/486er-Zeiten) g�ngig, kamen dann aber aus der Mode; heute
   findet man sie v.a. in Rechnern, bei denen es auf hohe
   Datensicherheit ankommt, zusammen mit dem nachfolgend beschriebenen
   ECC. Im �brigen gibt es auch den mittlerweile recht betagten
   Parity-Boot-Virus, der beim Start des Rechners "Parity Error"
   ausgibt - ein Relikt aus einer anderen �ra ;).

 * ECC: Dies ist eine verbesserte Variante von Parity-Erkennung; bei
   ECC ist die Korrektur eines 1-Bit-Fehlers und die Erkennung eines
   2-Bit-Fehlers m�glich. ECC muss durch den Chipsatz des Motherboards
   unterst�tzt werden (heutige Chips�tze unterst�tzen entweder ECC oder
   gar keine Fehlererkennung, Parity allein kommt nicht mehr vor), und
   es m�ssen logischerweise geeignete Speichermodule zum Einsatz kommen
   (wieder 36 bzw. 72 Bit statt 32 bzw. 64 Bit breit). Siehe auch
   Kapitel 8.4.4.

 * Interleaving: Dies ist ein Verfahren zur Erh�hung des
   Speicherdurchsatzes. Hierbei werden die Datenworte (z.B. 32 Bit
   breit) nicht sequentiell in den Speicher geschrieben, sondern
   alternierend auf verschiedene Speicherb�nke. Dies hat seinen Grund
   darin, dass DRAMs nach dem Schreiben f�r eine gewisse Zeit nicht
   ansprechbar sind; diese Zeit muss bei Einsatz von Interleaving nicht
   vertr�delt werden, sondern es wird in der n�chsten Speicherbank
   weitergeschrieben. Theoretisch ist damit (bei 2X-Interleaving) eine
   Verdoppelung des Speicherdurchsatzes m�glich; die
   32-Bit-Grafikkarten mit Chips wie Tseng ET4000/W32i/p bzw. S3 805i
   kamen an dieses Ideal schon recht nahe heran. Beim Hauptspeicher des
   PCs bringt Interleaving aber nicht ganz soviel. Erw�hnenswert ist
   vielleicht noch, dass heutzutage einzelne Speichermodule logisch
   mehrere Speicherb�nke darstellen, so dass sogar 4X-Interleaving
   innerhalb eines Moduls m�glich ist. 2-Way-Interleaving geht ab 16MBit
   ICs, 4-Way-Interleaving ab 64MBit ICs auf den Modulen. Siehe auch
   Kapitel 8.4.6.

 * Fastpage-DRAM, EDO-DRAM: Verschiedene Typen von DRAMs auf
   Speicherbausteinen, bei denen weniger Zeit f�r Refreshzyklen
   draufgeht als bei der Urform der DRAMs. EDO-DRAMs sind schneller als
   Fastpage-DRAMs, unterst�tzen aber kein Interleaving.

 * SDRAM: SDRAM l�uft synchron zum externen Takt des Prozessors
   (Synchronous DRAM), ist wieder ein bisschen schneller als EDO-DRAM
   und unterst�tzt auch Interleaving.

 * DDR/QDR: Bei DDR (Double Data Rate, hat nichts mit der
   deutsch-deutschen Vergangenheit zu tun) werden pro Datentakt zweimal
   Daten �bertragen, bei QDR (Quad Data Rate) gar viermal. Das
   Verfahren tauchte bei PCs erstmals beim EISA-Bus anno 1993 auf (war
   dort allerdings kaum in "freier Wildbahn" anzutreffen) und wird u.a.
   auch beim AGP eingesetzt.
 
 * Doublesided, singlesided: Siehe 8.1.3 Tabelle 2 Anmerkung (1)

 * Bandbreite: Umgangssprachlich (eigtl. falsch) f�r die Menge an Daten,
   die pro Sekunde von und zum Speicher geschaufelt werden k�nnen,
   damit �quivalent zum Datendurchsatz. Siehe auch Kapitel 8.4.10.

 Hier nicht relevante, aber auch interessante RAM-Typen:

 * VRAM: Ein Speichertyp, der vor etwa 5 Jahren auf hochwertigeren
   Grafikkarten zu finden war. VRAM besteht aus einem "Kern" auf
   Fastpage- oder EDO-DRAM und einem Schieberegister aus SRAM namens
   SAM (Serial Access Memory), das einen gr�sseren Teil einer
   Bildschirmzeile aufnimmt, eine Art Cache, wenn man so will. Dadurch
   m�ssen nicht die Daten jedes Pixels einzeln aus dem RAM gelesen
   werden, was die durch den RAMDAC f�r den Bildaufbau in Anspruch
   genommene Bandbreite um Gr�ssenordnungen reduziert (somit bleibt mehr
   f�r den Grafikchip �brig, was sich gerade in hohen Aufl�sungen bei
   hoher Farbtiefe auswirkt) und h�here Bildwiederholraten erm�glicht
   als bei "normalem" DRAM.

 * WRAM (Windows RAM): �hnlich VRAM, nur billiger und schneller. Wurde
   nur auf den Millennium- und Millennium-II-Grafikkarten von Matrox
   verbaut.

 * SGRAM: Synchronous Graphics RAM. SDRAM mit einigen Zusatzfunktionen
   f�r Grafikkarten.


 8.3 Bauformen
 =============

 Seit den Anfangszeiten der PCs haben sich die RAM-Bauformen mehrmals
 ver�ndert, um der h�heren Kapazit�t der RAM-Chips, aber auch der sich
 �ndernden Speicherbusbreite Rechnung zu tragen.

  8.3.1 DIPs
  ==========

  Zu XT-Zeiten (bis Ende der 80er Jahre) waren Speicherchips oft
  einzeln auf dem Mainboard untergebracht - die DIPs (Dual Inline
  Package) waren zuerst eingel�tet, sp�ter auch gesockelt. Die
  Speicheraufr�stung war somit kein Zuckerschlecken. Zudem waren die
  Signalwege lang, was aber aufgrund der damals noch hohen
  Zugriffszeiten (120 ns und mehr, beim IBM-XT z.B. 200 ns, sp�ter aber
  auch 80, z.T. gar - sehr teuer - 70 ns) nicht weiter ins Gewicht
  fiel.


  8.3.2 SIMMs 30-polig
  ====================

  Sp�ter wurden Steckmodule eingef�hrt. Die 30-poligen SIMMs (Single
  Inline Memory Module, diese Module haben eine Kontaktleiste unten)
  mit jeweils 8 bzw. mit Parity 9 Bit breitem Speicherbus gab es in
  Kapazit�ten von 256 KB, 1 MB, sp�ter 4 MB und sehr selten 16 MB. Sie
  m�ssen in Systemen mit 16-Bit-Speicherbus (286, 386SX) immer
  paarweise, in Systemen mit 32-Bit-Speicherbus (386DX, 486) gar
  jeweils zu viert verbaut werden. Auf 30-poligen SIMMs findet man
  zumeist Fastpage-DRAM, die Versorgungsspannung liegt bei 5 V.
  Elektrisch gleich, aber mit Stiften statt einer Kontaktleiste, kamen
  SIPPs daher - diese passten in billige Stecksockel. SIPPs gab es mit
  Kapazit�ten von bis zu 1 MB; sie waren v.a. in 286- und
  386SX-Systemen �blich. Sie waren im �brigen beliebte "Opfer" von
  Uml�taktionen zwecks Weiterverwendung in Rechnern mit 30-Pin-Sockeln.


  8.3.3 PS/2-SIMMs 72-polig
  =========================

  PS/2-SIMMs, die, wie der Name schon sagt, ihre Wurzeln bei den
  PS/2-Rechnern von IBM haben, sind 32 Bit breit (mit Parity 36 Bit; es
  gab auch Module mit "halber" Parit�t, diese waren jedoch im PC-Bereich
  nicht �blich) und haben 72 Anschl�sse an der Kontaktleiste an der
  Unterkante. Es gab sie in Kapazit�ten von 1 MB bis zu 128 MB
  (allerdings sind schon 64er nicht mehr sonderlich g�ngig, 128er sind
  i.allg. sehr selten anzutreffen), mit Fastpage-DRAM und EDO-DRAM. In
  486ern sind sie einzeln einsetzbar (es sei denn, der Chipsatz
  verwendet nicht abschaltbares Interleaving, wie der Intel Saturn
  [82420]), in Systemen mit 64-Bit-Speicherbus (Pentium etc.) m�ssen sie
  paarweise eingesetzt werden, manches Pentium-Pro-Board verlangte wegen
  Interleaving gar nach je 4 gleichen Modulen. Fastpage-Module lassen
  sich bis einem Speichertakt von ca. 66 MHz betreiben, EDO-Module bis
  83 MHz (jeweils bei einer Zugriffszeit von 60 ns). Die �bliche
  Versorgungsspannung betr�gt 5V.
  Damals[tm] gab es �brigens Adapter, die die Verwendung von 4
  30-poligen SIMMs in einem PS/2-Slot erlaubten - kein Wunder, kosteten
  doch 16 MB RAM noch 500 Mark oder mehr.


  8.3.4 SDR-SDRAM (DIMMs 168-polig)
  =================================

  DIMMs (Dual Inline Memory Module) unterscheiden sich von SIMMs
  dadurch, dass die Kontakte auf beiden Seiten nicht durchverbunden,
  sondern selbst�ndig sind. Sie sind 64 Bit (bzw. mit Parity/ECC 72
  Bit) breit und haben 168 Anschl�sse an ihrer Kontaktleiste. Die
  verf�gbaren Kapazit�ten reichen von 8 bis 1024 MB, dabei kommt im
  PC-Bereich fast ausschliesslich SDRAM zum Einsatz, w�hrend bei �lteren
  Apple-Rechnern auch EDO-DIMMs (die aber zumindest bei 66 MHz
  Speichertakt auch von etlichen PC-Chips�tzen unterst�tzt werden) oder
  gar Fastpage-DIMMs verwendet wurden. Bei DIMMs unterscheidet man
  ausserdem noch nach dem zul�ssigen Takt - PC100-Module sind f�r 100
  MHz ausgelegt, PC133-Module f�r 133 MHz. PC66-Module wurden nur
  nachtr�glich so genannt - sie unterscheiden sich von ihren neueren
  Verwandten durch l�ngere Zugriffszeiten (10/12 ns) und das Fehlen
  eines sogenannten SPD-EEPROMs, das Informationen �ber den Hersteller
  und zul�ssige Timings enth�lt. Im �brigen lassen sich gute
  PC100-Module oft auch bei 133 MHz betreiben, allerdings meist nur mit
  konservativeren Timings.
  Bei SDRAM-Modulen unterscheidet man weiterhin zwischen "registered"
  und "unbuffered". "Registered"-Module haben zus�tzliche
  Pufferchips, um die elektrische Belastung f�r den Mainboard-Chipsatz
  zu reduzieren; die jeweils gr�ssten verf�gbaren Module sind wegen der
  hohen Chipanzahl nur als Registered-Module verf�gbar.
  SDRAM-DIMMs ben�tigen eine Versorgungsspannung von 3.3 V. Verwendet
  werden sie haupts�chlich in Pentium-2/3- und Athlon-Systemen, daneben
  auch in einigen (Super-)Sockel-7-Systemen und neuerdings auch in
  Pentium-4-Systemen.
  Auf einigen Sockel-7-Boards kann man sowohl PS/2-SIMMs als auch
  SDRAM-DIMMs betreiben, allerdings gibt es dabei ein paar T�cken -
  siehe 8.6.1.

  Vor allem in Notebooks werden SO-DIMM-Module verwendet. Diese haben
  eine kleinere Bauform, um Platz zu sparen und sind damit nicht
  pinkompatibel zu anderen DIMMs. Ansonsten gelten f�r sie die selben
  Standards wie f�r normale DIMMs.


  8.3.5 DDR-SDRAM (DIMMs 184-polig)
  =================================

  DDR-SDRAM unterscheidet sich von normalem SDRAM dadurch, dass sowohl
  an der steigenden als auch an der fallenden Flanke des Taktsignals
  Daten �bertragen werden k�nnen. Dar�ber hinaus wird es auch mit 2.5V 
  statt 3.3V betrieben. Die Bezeichnungen f�r DDR-SDRAM sind indes
  verwirrend - DDR200 entspricht PC1600 und wird mit 100 MHz getaktet,
  DDR266 wird auch als PC2100 bezeichnet und ist f�r 133 MHz
  vorgesehen.


  8.3.6 16Bit Rambus-DRAM (RIMMs 184-polig)
  =========================================

  Rambus-Speicher der erten Generation (bis PC1200) arbeitet mit einem
  nur 16 Bit breiten Datenbus, wird daf�r aber mit bis zu 600 MHz 
  getaktet und arbeitet genau wie DDR-SRDRAM im DDR-Verfahren, ist zu
  den DDR-SDRAM DIMMs aber inkompatibel. Dies f�hrt zu hoher
  Speicherbandbreite, aber auch zu hohen Latenzzeiten. Rambus-DRAM wird
  derzeit in einigen Pentium-3-System und in vielen Pentium-4-Systemen
  verwendet. 184-polige RIMMs (RDRAM-DIMMs) gibt es momentan in
  verschiedenen Organisationen. Zun�chst wurden RIMMs mit 2 mal 16
  Speicherfeldern hergestellt (2x16d-Organisation). Um Kosten zu sparen
  wurde dann die sog. 4i-Organisation vorgestellt, bei der die RIMMs
  nur noch 4 Speicherfelder haben. Laut Rambus hat dies keinen Einfluss
  auf die Performance, hilft aber beim Kostensparen. Rambus Inc. stellt 
  im �brigen selbst keine Speicherchips her, sondern lizenziert nur die
  Technologie.


  8.3.7 32Bit Rambus-DRAM (RIMMs 232-polig)
  =========================================

  Die Chips�tze i850E,  SiS-R658 und SiS-R659 sind momentan die Einzigen,
  die �berhaupt 32Bit-RIMMs ansprechen k�nnen. Diese "RIMM 3200" bzw.
  "RIMM 4200" haben die gleiche Modulbreite wie PC800-RIMMs, jedoch haben
  sie 232 Pins statt nur 184 Pins und lassen sich daher nicht in die
  16Bit RIMM-Slots einsetzen. Durch die Verdopplung der Datenbusbreite
  bereits im RIMM verdoppelt sich auch die Bandbreite, so dass man nicht
  mehr 2 Module braucht, um auf die f�r den Pentium 4 n�tige Bandbreite
  zu kommen. 32Bit-RIMMs sind noch selten anzutreffen und werden deshalb
  teilweise den Mainboards bereits beigelegt. 


  8.3.8 DDR-II SDRAM (DIMMs 240-polig)
  ====================================

  Seit Einf�hrung der Intel-Chips�tze i9xx kann DDR-II SDRAM auf den
  Mainboards verwendet werden. Die neue Technologie bietet nicht nur eine
  neue Bauform (240-Pins) sondern auch andere Neuerungen: So laufen die
  DIMMs nunmehr mit nur noch 1.8V, was auch f�r mobile Eins�tze 
  interessant sein sollte. Die ICs auf den 240-poligen DIMMs m�ssen nun 
  zwingend in FBGA-Bauform vorliegen, die alte TSOP-Technik hat
  entg�ltig ausgedient. Damit bleiben die DIMMs von den Abmessungen aber 
  genauso breit wie DDR-SDRAM DIMMs. Interne Verbesserungen sorgen f�r
  kurze Latenzzeiten und hohe Taktraten; bei DDR-II sind bis zu 333MHz 
  geplant, was eine Bandbreite von immerhin 5.3GB/s (daher auch PC2-5300 
  genannt) bringt. Auch bei DDR-II soll es Registered DIMMs geben, dazu
  kommen noch sogenannte "Fully buffered DIMMs", die den Einsatz von mehr 
  als 8 DIMMs nebeneinander erm�glichen sollen. Bei PC2-3200 gibt es 
  jedoch eine Besonderheit: die Latenzen sind im Vergleich zu PC3200 
  DDR-SDRAM relativ hoch, so da� man keinen besonderen Geschwindikeits-
  vorteil erwarten sollte. Erst mit h�herem Takt (ab 266MHz) sollte dann
  DDR-II seine vollen Vorteile ausspielen k�nnen.
 

 8.4 Kennzahlen von RAM
 ======================

  8.4.1 Refresh
  =============

  DRAM muss zum Erhalt des Speicherinhalts immer wieder ausgelesen
  und neu geschrieben werden. Diesen Auffrischungsvorgang nennt man
  "Refresh". Standard SDRAM-Speicher braucht alle 64ms eine solche
  Auffrischung. Der Refresh besteht darin, dass der Lese-/Schreib-
  verst�rker ("Sense Amp") die Speicherzeilen ausliest und wieder neu
  schreibt. Ein Taktsignal mit einer Takt-Periode von 15.6�s sorgt
  daf�r, dass nach 64ms exakt 4096 Zeilen neu geschrieben wurde.
  Dieser Vorgang wird als "4K-Refresh" bezeichnet und wird bei allen
  16-, 64- und 128MBit-SDRAM verwendet. Erst ab 256MBit SDRAMs legt
  man einen Zahn zu und f�llt in 64ms 8192 Zeilen neu auf
  ("8K-Refresh"). Dies geschieht mit einer Takt-Periode von 7.8�s.
  Der Chipsatz muss den Refresh nicht regelm�ssig alle 15.6�s senden.
  Es reicht aus, wenn kurz vor Ablauf der 64ms 4096 Refresh-Befehle
  hintereinander gegeben werden. Dieser Vorgang wird auch
  "Burst-Refresh" genannt.


  8.4.2 Zugriff auf den Speicher
  ==============================

  Soll der Inhalt einer bestimmten Zelle gelesen oder dort etwas
  geschrieben werden, so muss die genaue Adresse angegeben werden,
  an der sich diese Daten befinden. Zuerst muss (bei mehreren Modulen)
  die richtige Chip-Reihe ausgew�hlt werden. Dort wird vom Chipsatz
  dann vor dem Zugriff die Chip-Select-Leitung (CS) eingeschaltet.
  Erst dann wird per Bank-Select (BS) die gew�nschte Speicherbank
  aktiviert. Nun muss der Chipsatz noch Zeile (Row) und Spalte
  (Column) angeben. Dies geschieht aber auf denselben Datenleitungen
  hintereinander; bei den 168-poligen DIMMs sind das 13 Leitungen.
  Somit betr�gt die maximale Anzahl an Zeilen oder Spalten
  2^13 = 8192. Mehr geht nicht bei diesem DIMM-Typ.


  8.4.3 RAS - CAS - was?
  ======================

  Die Kennzahlen "RAS" und "CAS" oder �hnliches h�rt man immer wieder.
  Was diese zu bedeuten haben soll hier kurz erkl�rt werden. Auch in
  den folgenden Abschnitten befinden sich h�ppchenweise weitere
  Parameter - das Weiterlesen lohnt sich also ;).

  Damit ein SDRAM-Chip bei der Adress�bergabe �berhaupt weiss, um
  welchen Adressteil es sich grade handelt, gibt es die Signalleitungen
  "RAS" (Row Adress Strobe) und CAS (Column Adress Strobe). Werden also
  grade die Zeilenbits �bertragen, ist RAS aktiv, bei den Spaltenbits
  eben CAS. Diese Art der �bertragung spart nicht nur zus�tzliche
  Leitungen, sondern sorgt auch noch f�r einen anderen Effekt. Der
  Bank-Select-Befehl kann gleichzeitig mit der ersten Zeilenadresse
  gesendet werden. Liegt genau diese Signalkombination ("Aktive-
  Kommando") an, lesen die Sense Amps die entsprechenden Zeilen komplett
  aus und puffern den Inhalt. Dieser Vorgang geht aber nicht beliebig
  schnell, weshalb die Daten erst nach einer gewissen Wartezeit in den
  Sense Amps bereitliegen. Diese Zeitverz�gerung heisst
  "RAS-to-CAS-Delay", kurz "t_RCD" ("_" bedeutet tiefgestellte Zeichen).
  Erst nach der Zeit t_RCD kann die Spaltenadresse vom Chipsatz an die
  ensprechenden Sense Amps geschickt werden. Die Zeit vom Befehl bis
  zum Anliegen des entsprechenden Spaltenbits im Ausgangsregister
  ("Latch") f�r die jeweilige Datenleitung heisst "CAS Latency" (CL,
  auch t_CL). Von diesen Datenleitungen liest der Chipsatz schliesslich
  die angeforderten Daten.


  8.4.4 Puffer, Register und Fehlerkorrektur
  ==========================================

  Vor allen in Servern m�ssen Speichermodule zwei besondere
  Anforderungen erf�llen:
  - Es soll m�glichst viel Speicher eingebaut werden k�nnen.
  - Weil Daten oft lange im Speicher stehen, soll der Speicherinhalt
    fehlertolerant gespeichert sein.

  Jedes RAM-Modul stellt eine (haupts�chlich kapazitive) Last f�r den
  Daten- und Adressbus zum RAM dar. Das Umladen von Kapazit�ten
  "verschleift" die Signale: Signale (Spannungen) steigen langsamer an
  bzw. fallen langsamer ab, je gr��er die Last ist. Umso mehr RAM-Module
  eingesetzt werden, desto st�rker wird dieser Effekt. Prinzipiell
  m�ssen RAM-Module auch bei Mehrfachbest�ckung fehlerfrei arbeiten,
  aber "Wackelkandidaten" k�nnen erst bei Mehrfachbest�ckung Fehler
  zeigen. (Vergleiche dazu Kapitel 8.5 "Test von RAM".)

  Beim Einsatz von sehr vielen Modulen empfiehlt es sich, auf gepufferte
  Speicherriegel zur�ck zu greifen, wenn das Mainboard dies zul�sst.
  Diese werden auch als "Registered DIMMs" bezeichnet, da auf den
  Modulen spezielle Register-Chips verbaut werden. Bei den sonst
  �blichen "unbuffered" DIMMs sind sowohl die Datenleitungen, als auch
  die Adressleitungen parallel geschaltet. Registered DIMMs entlasten
  die Adress-Treiberleitungen, damit der Chipsatz stabiler arbeiten
  kann. Zus�tzlich befindet sich auf den Registered DIMMs h�ufig neben
  den Pufferbausteinen noch ein PLL-Baustein, um das Taktsignal
  aufzubereiten. Damit wird der Taktsignaltreiber des Mainboards
  entlastet. Da die Pufferbausteine etwas Zeit schlucken, verschieben
  sich die Eingangssignale an den Ausg�ngen der Pufferbausteine aber ab
  100 MHz Taktfrequenz um einen Taktzyklus. Daher sind Registered DIMMs
  bei der Adressierung genau einen Takt langsamer als Unbuffered DIMMs.
  Bei EDO- und PC66-Speicher spricht man nicht von Registered RAM,
  sondern von Buffered DIMMs.
  Werden sowohl Adress- als auch Datenbus gepuffert, spricht man von
  fully-buffered RAM.

  "ECC" steht f�r "Error Correction Code". Per ECC lassen sich
  1-Bit-Fehler erkennen und korrigieren und 2-Bit-Fehler noch
  erkennen. Bei PCxxx-SDRAM nutzt man bei 64 Bit Datenpfadbreite 8
  zus�tzliche Leitungen und pro 64 Bit gespeicherte Daten 8
  zus�tzliche Bits; daher haben Module mit ECC immer mehr
  Speicherchips als "Non-Parity"-Module.

  W�hrend des Bootvorgangs muss das BIOS eines PCs mit
  ECC-Hauptspeicher das RAM zun�chst mit bekannten Werten
  initialisieren, damit auch die Pr�fbits in den ECC-Zusatzbausteinen
  abgelegt werden k�nnen. Schreibzugriffe mit aktiviertem ECC dauern
  manchmal etwas l�nger, wenn nicht ein Datensatz mit voller
  Datenbusbreite anliegt. Der Chipsatz muss dann n�mlich die zur
  vollst�ndigen "Zeile" fehlenden Bits erst aus dem RAM lesen, um
  die neue Pr�fsumme bilden zu k�nnen. Erst dann schreibt er die neuen
  Daten. Wie stark genau der Leistungsverlust durch ECC ist, h�ngt vom
  Chipsatz, dem Betriebssystem und der laufenden Software ab -
  Erfahrungswerte gibt es keine.

  In Desktop-Systemen macht ECC nur sehr begrenzt Sinn, da die 
  Fehlerraten bei heutigen Speichermodulen sehr klein sind. Sinn macht
  der Einsatz von ECC vor allem in Servern, wo Daten Tage oder Wochen
  im RAM stehen und damit die Wahrscheinlichkeit von kippenden Bits  
  erh�ht ist. In solchen Servern wird aber h�ufig in regelm�ssigen
  Abst�nden der Speicherinhalt komplett ausgelesen und neu geschrieben
  ("Memory Scrubbing"), um eben diese Fehler gar nicht erst zuzulassen.

  Es gibt Chips�tze, die zwingend Registered- und/oder ECC-SDRAM 
  ben�tigen (z.B. ServerSet III von Server Works). Andererseits gibt 
  es auch Chip�tze und Mainboards, die mit ECC und/oder Registered
  SDRAM nichts anfangen k�nnen (z.B. Intels i815 "Solano"; obwohl es
  einige BIOSse von Mainboards gibt, die Registered DIMMs trotzdem
  erkennen). Hier sollte man sich unbedingt vor dem RAM-Kauf 
  erkundigen, welcher RAM f�r die eigenen Anspr�che am ehesten
  vern�nftig erscheint. 


  8.4.5 Speicher-Burst
  ====================

  Nach dem Lesezugriff auf ein Speicherfeld ist der Inhalt der
  kompletten Speicherzelle immer noch in den Sense Amps gepuffert. Das
  gilt aber auch f�r alle anderen Speicherbausteine der aktiven Reihe
  eines Speichermoduls, da ja alle diese Chips dieselben Befehle und
  Adressen erhalten. Daher ist die Anzahl der Sense Amps eine wichtige
  Gr�sse f�r Speichermodule, und wird als "Page Size" bezeichnet. Je
  nach Speicherorganisation betr�gt die Gr�sse des Puffers durch die
  Sense Amps 2, 4, 8 oder 16KByte.
  Dieser Puffer wird im sog. Burst-Modus ausgenutzt: Werden aus der
  gleichen Zeile des Speicherfeldes Daten angefordert, kann der
  Speicher ohne erneute Adressierung mit nur einem Taktschritt
  ausgegeben werden. Die Burst-L�nge entspricht dabei maximal der
  Anzahl der Spalten des Speicherfeldes. Die PC-SDRAM-Spezifikation
  verlangt als m�gliche Burst-L�ngen jedoch nur 1, 2 oder 4 Daten.

  Die Breite der Cache-Line des L2-Caches von Pentium-Prozessoren
  betr�gt 32 Bytes. Das entspricht dem Vierfachen der
  Speicherbusbreite von 64Bit. Intel Chips�tze arbeiten daher mit einer
  Burst Length von 4. Weil der AMD Athlon aber mit doppelt so langen
  Cache-Lines arbeitet wie der Pentium, fordert z.B. der AMD
  Irongate-Chipsatz (AMD 750) immer die Daten aus 8 Spalten einer Zeile
  gleichzeitig an, was eine Burst-Length von 8 erm�glicht.

  Das ist aber noch nicht notwendigerweise das Ende des optimierten
  Zugriffs. M�chte man beim n�chsten Lesezugriff Daten aus einer bereits
  adressierten Speicherzeile haben ("Page Hit"), so f�llt nur noch die
  CAS-Latency an Wartezeit an, da keine Zeilen-Adress�bergabe mehr
  n�tig ist, es f�llt also keine RAS-to-CAS-Delay an.
  Wenn rechtzeitig vor dem Ende eines Bursts eine neue Spaltenadress
  empfangen wird, kann sich der n�chste Burst l�ckenlos anschliessen.

  Werden jedoch Daten aus einer anderen Speicherzeile angefordert
  ("Page Miss"), so m�ssen die Sense Amps den aktuell gepufferten
  Inhalt zur�ckschreiben, da der Inhalt bei Lesevorgang gel�scht wird.
  Die f�r den R�ckschreibvorgang ben�tigte Zeit wird auch "RAS
  Precharge Time" ("t_RP") genannt.

  Nur w�rend des Bursts erreicht SDRAM seine maximale �bertragungsrate.
  Denn nur wenn wirklich bei jedem Taktschritt ein Datenwort �bertragen
  wird, stimmt die Rechnung von 8Byte x 100MHz = 800MB/s. f�r z.B.
  PC100-SDRAM. Fallen Latenzzeiten an, sinkt logischerweise auch die
  maximale Transferrate. Es gibt aber Tricks der Chips�tze, mit denen
  diese Latenzzeiten umgangen oder m�glichst vermieden werden k�nnen.


  8.4.6 Tricks der Chips�tze: Interleaving & Co.
  ==============================================

  Wie ja jetzt bekannt ist, sind Speicherfelder in B�nke aufgeteilt.
  Jedes Speicherfeld verf�gt �ber eigene Sense Amps (zur Erinnerung:
  Das waren die Lese- und Schreibverst�rker). Der Chipsatz kann nun
  beim Abspeichern der Daten nicht nur zeilenweise in einer Bank
  vorgehen, sondern er kann die Bits auch zeilenweise auf die B�nke
  verschachtelt verteilen. Beim Umschalten zwischen zwei B�nken muss
  zwar die Row-Active-to-Row-Active-Delay (t_RRD) eingehalten werden,
  aber dadurch kommt es beim Burst-Zugriff nicht mehr zu Verz�gerungen:
  Es ist jetzt m�glich, eine Bank zu adressieren, w�hrend eine andere
  grade Daten liefert oder eben beschrieben wird. Grade beim Transport
  von grossen Datenbl�cken (sequenzieller Datenzugriff) l�sst sich so
  geschickt eine grosse Anzahl von Adressiervorg�ngen "verstecken".
  Diese Verschachtelung von Zugriffen auf Speicherb�nke bezeichnet man
  als "Bank Interleaving". 16MBit-Chips haben nur 2 interne B�nke und
  k�nnen deshalb (innerhalb eines Moduls) nur 2-Way-Interleaving
  durchf�hren. Neuere Module mit 64MBit oder mehr pro Chip haben vier
  interne B�nke und beherrschen 4-Way-Interleaving.

  Bank Interleaving bringt vor allem bei grossen Datenpaketen enorme
  Vorteile. F�r zuf�llige Zugriffe auf kleine Speicherbl�cke wird ein
  anderer Trick verwendet, um h�here Durchs�tze zu erziehlen: Die sog.
  "Page Open Policy".
  Als "Page" werden alle Zeilen mit gleicher Adresse in einer
  bestimmten Bank aller Chips eines Moduls bezeichnet. Eine "ge�ffnete"
  Page ist also nichts weiteres als eine Zeilenadresse, deren Inhalt
  grade in den entsprechenden Sense Amps gepuffert wird. Wird nach
  einem Zugriff auf diese bestimmte Page eine andere Bank angesprochen,
  so kann der Chipsatz die erstgenannte Page offen halten, oder
  schliessen. Das Schliessen erfolgt entweder durch Anlegen einer
  anderen Adresse, oder durch das Verschicken des Precharge-Kommandos.
  Im Auto-Precharge-Modus (AP-Modus) schliesst der Chipsatz
  automatisch eine noch ge�ffnete Page. H�lt jedoch der Chipsatz die
  entsprechende Page offen, so kann bei einem entsprechenden sp�teren
  Zugriff ein Teil der notwendigen Adressierung eingespart werden. Es
  stellt sich also ein "Page Hit" ein, der schneller als ein "Page Miss"
  abgearbeitet werden kann.

  Leider kann man eine Page nicht beliebig lang offen halten.
  Sp�testens nach Ablauf des n�chsten Refresh-Intervalls m�ssen die
  Sense Amps freigegeben werden. Aber meist lange davor l�uft schon
  die "Row Active Time" (t_RAS) ab, die �blicherweise um die 100�s
  betr�gt, was immerhin 10.000 Takten bei 100MHz entspricht! Der
  Parameter t_RAS hat auch einen Minimalwert, der dann besagt, wie
  lange eine Page mindestens ge�ffnet sein muss, bevor sie der Chipsatz
  via Precharge schliessen darf.

  Die Summe aus t_RAS und t_RP, umgerechnet in Taktperioden, ergibt
  die sog. "RAS Cycle Time" (t_RC).

  Es l�sst sich nur sehr schwer absch�tzen, welches Ausmass an
  Beschleunigung eine "Open Page Policy" gegen�ber einer "Closed Page
  Policy" gibt. Die gute Daten�bertragung des Intel 440BX bei
  zuf�lligen Speicherzugriffen wird jedoch der ausgekl�gelten Page
  Policy zugeschrieben.


  8.4.7 Zugriffe und ihre Zeiten / CL2 - CL2.5 - CL3?
  ===================================================

  Der Wert "t_AC" wird in den Spezifikationen als "Output Valid From
  Clock" bezeichnet; die Buchstaben "AC" deuten auf die unscharfe und
  deshalb missverst�ndliche Bezeichnung "Data Access Time", also auf
  die Zugriffszeit hin.

  Signale auf den Datenleitungen sind letztlich nichts anderes als
  Spannungspegel. Da diese Pegel eine gewisse Einschwingzeit
  ben�tigen, braucht es einige Zeit, bis der Signalwert dem erw�nschten
  Datenwert entspricht. Genau diese Einschwingzeit meint "t_AC". Bei
  den �lteren Typen (EDO, FPM) hingegen bezeichnet der Wert "t_RAC"
  die Dauer zwischen Anlegen der Zeilenadresse und dem Bereitstellen
  g�ltiger Datenwerte. Bei FPM- und EDO-RAM ist die Zugriffszeit neben
  maximalen Taktfrequenz das wesentlich entscheidende Kriterium f�r den
  maximal erreichbaren Datendurchsatz.
  Bei SDRAM hingegen beeinflussen neben der Taktfrequenz auch noch
  die Latenzzeiten CL, t_RCD und t_RP noch die "Zugriffszeit". Trotzdem
  bleibt t_AC eine wichtige Kenngr�sse: H�lt ein Speicherchip den f�r
  eine Frequenzklasse spezifizierten Wert nicht ein, so entstehen daraus
  beim Zugriff auf den SDRAM Datenfehler.

  Die "Zugriffszeiten" von z.B. EDO- und SDRAM weichen damit stark
  voneinander ab, was eben durch den Unterschied von t_AC zu t_RAC
  bedingt ist; SDRAMs sind also nicht notwendigerweise durch die
  kleineren Zahlen bei der Zugrffszeit schneller.
  Fr�her galt: Je geringer die Zugriffszeit der RAM-Module, desto
  h�heren Takt machen sie mit bzw. desto aggressiver kann das
  RAM-Timing eingestellt werden. Dies ist auch heute noch so, nur ist
  dies zugunsten anderer Bezeichnungen aus dem Bewusstsein verschwunden.
  Typische Zugriffszeiten liegen bei Fastpage-DRAM bei 100 (alte
  30-Pin-SIMMs) bis zu 60 ns (sp�te 30-Pin- und PS/2-SIMMs), Zu
  486er-Zeiten hatten PS/2-SIMMs oft Zugriffszeiten von 70 ns.
  EDO-DRAM wurde in PC �blicherweise mit 60 ns Zugriffszeit verbaut;
  gleichwohl fanden sich auf Grafikkarten auch Chips mit 35 ns.

  Hier eine Tabelle der Kennwerte f�r SDR-SDRAM DIMMs:

         Parameter         |Symbol|Einheit| PC66 | PC100| PC133
  =========================+======+=======+======+======+=======
  Taktperiode, Zykluszeit  |t_CK  | [ns]  |  15  |  10  |  7.5
  -------------------------+------+-------+------+------+-------
  CAS Latency = 2          | CL   | [ns]  |  30  |  20  | 15
  -------------------------+------+-------+------+------+-------
  CAS Latency = 3          | CL   | [ns]  |  45  |  30  | 22.5
  -------------------------+------+-------+------+------+-------
  RAS-to-CAS-Delay = 2     |t_RCD | [ns]  |  30  |  20  | 15
  -------------------------+------+-------+------+------+-------
  RAS-to-CAS-Delay = 3     |t_RCD | [ns]  |  45  |  30  | 22.5
  -------------------------+------+-------+------+------+-------
  RAS Precharge Time = 2   |t_RP  | [ns]  |  30  |  20  | 15
  -------------------------+------+-------+------+------+-------
  RAS Precharge Time = 3   |t_RP  | [ns]  |  45  |  30  | 22.5
  -------------------------+------+-------+------+------+-------
  Output Valid from Clock  |t_AC  | [ns]  |   9  |   6  |  5.4
  -------------------------+------+-------+------+------+-------
  Sonderfall (1):          |t_AC  | [ns]  |  10  |   7  |  7.0
  Output Valid from Clock  |      |       |      |      |
  -------------------------+------+-------+------+------+-------
  RAS Cycle Time bei t_RP=3|t_RC  |[Takte]|   8  |   8  |  9
  -------------------------+------+-------+------+------+-------
  RAS Cycle Time bei t_RP=2|t_RC  |[Takte]|   8  |   7  |  8
  -------------------------+------+-------+------+------+-------
  RAS Active Time          |t_RAS |[Takte]|   5  |   5  |  6
  -------------------------+------+-------+------+------+-------

   (1) Bei nur 2 verwendeten SDRAM-Reihen im System (2 einseitige oder
       ein doppelseitiges DIMM)

  Immer wieder taucht die Frage auf, welcher RAM denn schneller ist,
  und f�r welche Latenzzeiten dies gilt. In der Regel sieht diese
  Reihenfolge so aus (">" steht f�r "schneller als"):
  PC133-222 > PC133-333 > PC100-222 > PC100-333. Es gibt aber bei
  Speicherzugriffen durchaus einige Ausnahmef�lle, wo das so nicht
  mehr ganz zutrifft. Ausserdem ist der Geschwindigkeitsgewinn von
  z.B. PC133-222 gegen�ber PC133-333 �usserst gering (2-5% maximal).

  �hnliche Zahlen lassen sich selbstverst�ndlich auch f�r DDR-SDRAM 
  angeben. Der �berrsichtlichkeit halber und ob der etwas anderen
  Nomenklatur bei DDR-SDRAM ist die Tabelle etwas anders aufgestellt.
  Zykluszeiten, CAS-Latency, Delay-Zeiten, Precharge Time und RAS Cycle  
  Zeiten sind alle in Nanosekunden [ns] angegeben.

  Modulbe- |Chiptyp|Timing |Frequenz|Zyklus- |  CAS- |t_RCD|t_RP|t_RAS
  zeichnung|       |       | [MHz]  |zeit    |Latency|     |    |
  ---------+-------+-------+--------+--------+-------+-----+----+-----
   PC1600  |DDR200 |2,0-2-2|  100   |   10   |  20   | 20  | 20 | 50
  ---------+-------+-------+--------+--------+-------+-----+----+-----
   PC2100  |DDR266B|2,5-3-3|  133   |  7.5   | 18.75 | 22.5|22.5| 45
  ---------+-------+-------+--------+--------+-------+-----+----+-----
   PC2100  |DDR266A|2,0-3-3|  133   |  7.5   |  15   | 22.5|22.5| 45
  ---------+-------+-------+--------+--------+-------+-----+----+-----
   PC2100  |DDR266 |2,0-2-2|  133   |  7.5   |  15   | 15  | 15 | 45
           |(Intel)|       |        |        |       |     |    |
  ---------+-------+-------+--------+--------+-------+-----+----+-----
   PC2700  |DDR333B|2,5-3-3|  166   |   6    |  15   | 18  | 18 | 42
  ---------+-------+-------+--------+--------+-------+-----+----+-----
   PC2700  |DDR333A|2,0-3-3|  166   |   6    |  12   | 18  | 18 | 42
  ---------+-------+-------+--------+--------+-------+-----+----+-----
   PC3200  |DDR400C|3,0-4-4|  200   |   5    |  15   | 20  | 20 | 40
  ---------+-------+-------+--------+--------+-------+-----+----+-----
   PC3200  |DDR400B|3,0-3-3|  200   |   5    |  15   | 15  | 15 | 40
  ---------+-------+-------+--------+--------+-------+-----+----+-----
   PC3200  |DDR400A|2,5-3-3|  200   |   5    | 12.5  | 15  | 15 | 40

  Auch hier stellt sich die Frage, welche Timings wann welchen
  Geschwindigkeitsvorteil bringen. Aber auch hier h�ngen diese Vorteile
  sehr vom Chipsatz bzw. Mainboard und nat�rlich von den Anwendungen ab.
  Wer nur die Wahl z.B. zwischen PC2700 2,0-3-3 und 2,5-3-3 zu treffen
  hat, der muss sich diese Frage normalerweise gar nicht erst stellen:
  der zu erwartende Performancevorteil macht sich in der Praxis kaum 
  bemerkbar - ausser vielleicht im Geldbeutel. Hier gilt: oft ist die
  schnellere CPU eine deutlich bessere Investition als ein s�ndhaft 
  teures Modul nach PC2700 CL2 oder gar PC3200 CL2.

  Als neuester Vertreter hat sich DDR-II SDRAM hinzu gesellt. Auch hier
  l�sst sich der Vergleich aufstellen:

 Modulbe- |Chiptyp |Timing |Frequenz|Zyklus-|  CAS- |t_RCD|t_RP |t_RAS
 zeichnung|        |       | [MHz]  | zeit  |Latency|     |     |
 ---------+--------+-------+--------+-------+-------+-----+-----+------ 
 PC2-3200 |DDR2-400| 4-4-4 |  200   |   5   |  20   | 20  | 20  | 45
 ---------+--------+-------+--------+-------+-------+-----+-----+------ 
 PC2-3200 |DDR2-400| 3-3-3 |  200   |   5   |  15   | 15  | 15  | 45                
 ---------+--------+-------+--------+-------+-------+-----+-----+------ 
 PC2-4300 |DDR2-533| 5-5-5 |  266   |  3.75 | 18.75 |18.75|18.75| 45
 ---------+--------+-------+--------+-------+-------+-----+-----+------ 
 PC2-4300 |DDR2-533| 4-4-4 |  266   |  3.75 |  15   | 15  | 15  | 45            
 ---------+--------+-------+--------+-------+-------+-----+-----+------ 
 PC2-4300 |DDR2-533| 3-3-3 |  266   |  3.75 | 11.25 |11.25|11.25| 45
 ---------+--------+-------+--------+-------+-------+-----+-----+------  
 PC2-5300 |DDR2-667| 4-4-4 |  333   |   3   |  12   | 12  | 12  | 45
 ---------+--------+-------+--------+-------+-------+-----+-----+------ 

  8.4.8 Auf dem Modul
  ===================

  Damit der User mit einem DIMM nicht allzu ungewiss da steht, sollten
  sich auf den Modulen Aufkleber befinden, die genauen Aufschluss
  dar�ber geben, was man da nun wirklich in der Hand h�lt. Leider gibt
  es hier voneinander abweichende Spezifikationen.

  Intel�s PC133-Spezifikation Rev. 1.7 (siehe dazu auch
  ftp://download.intel.com/technology/memory/pc133sdram/spec/sdram133.pdf)
  definiert die Parameter folgendermassen:
  "PCxxx-abc-defG", mit:
  - xxx = Modulbezeichnung nach Taktfrequenz, siehe 8.4.10
  - a   = CAS Latency, kurz CL [Takte]
  - b   = RAS-to-CAS-Delay, kurz t_RCD [Takte]
  - c   = RAS Precharge Time, kurz t_RP [Takte]
  - d   = t_AC, Output Valid From Clock [ns]
  - e   = SPD-EEPROM-Version
  - f   = (Reserviert)
  - G   = kein Buchstabe oder "R" f�r Registered DIMM (gepufferte
          Ausf�hrung)

  Die langsamsten DIMMs f�r PC100 tragen also die Bezeichnung
  "PC100-333-620". Das schnellste DIMM f�r PC133 m�sste als
  "PC133-222-520" ausgezeichnet sein.

  Leider definiert VIAs PC133-Spezifikation Rev. 0.4 (siehe dazu auch
  http://www.via.com.tw/pdf/validation/PC133Urev040.pdf) die Angabe
  der Parameter etwas anders:
  "PC133m-abc-dde", mit:
  - m  = U f�r Unbuffered (die VIA-Spec gibts nur f�r Unbuffered DIMMs)
  - a  = CAS Latency, kurz CL [Takte]
  - b  = RAS-to-CAS-Delay, kurz t_RCD [Takte]
  - c  = RAS Precharge Time, kurz t_RP [Takte]
  - dd = t_AC, Output Valid From Clock [ns], ohne Komma: "54" steht f�r
         die f�r PC133-DIMMs geforderten 5.4 ns
  - e  = SPD-EEPROM-Version nach JEDEC, meist die Ziffer "2"

  F�r DDR-SDRAM sollten ebenfalls solche Aufkleber auf den Modulen zu
  finden sein:
  PCxxxxG-aabc
  - xxxx = Modulbezeichnung nach Taktfrequenz, siehe 8.4.10
  - aa   = CAS Latency, kurz CL [Takte] 
  - b    = RAS-to-CAS-Delay, kurz t_RCD [Takte]
  - c    = RAS Precharge Time, kurz t_RP [Takte] 
  - G    = kein Buchstabe oder "R" f�r Registered DIMM (gepufferte 
           Ausf�hrung)

  Dummerweise findet man diese Angaben aber selten vollst�ndig vor.
  Oft findet man K�rzel wie "PC133-3" oder �hnliches. Hier wird h�ufig
  nur die CAS Latency (CL) angegeben, und nimmt danach an, dass die
  anderen beiden Werte t_RCD und t_RP den gleichen Wert annehmen.


  8.4.9 Serial Presence Detect - SPD
  ==================================

  Das waren noch Zeiten: Bei der Verwendung von EDO- und FPM-RAM war
  es noch die Aufgabe des Users, �ber das BIOS die "richtigen"
  Speichertimings im BIOS einzutragen. Dabei war die Anzahl der
  Parameter aber noch �berschaubar.
  Das ist seit den SDRAMs nicht mehr der Fall, hier m�ssen �usserst
  viele Parameter eingestellt werden. Damit das nicht Aufgabe des
  Users wird, sollte alle DIMMs mit sogenannten
  "SPD(Serial-Presence-Detect)-EEPROMS" ausgestatten sein. In diesen
  kleinen Chips sind alle Infos enthalten, die der Chipsatz braucht,
  um beim Bootvorgang den Speicher richtig zu initialisieren. Dabei
  k�nnen die einzelne Werte auch w�hrend dem Bootvorgang vom Chipsatz
  �berschrieben werden, etwa um die CAS Latency manuell zu �ndern etc.
  Die Daten im SPD-EEPROM (2KBit gross) k�nnen vom System via "System
  Management Bus" (SMB) ausgelesen werden (der Bus ist eine Variante
  des I�C-Bus). Nach aktueller Spezifikation 1.2B (zu finden unter
  http://developer.intel.com/technology/memory/pcsdram/spec/index.htm;
  baut auf der alten JEDEC-Spec. vom Juli 1996 auf, die sich unter
  http://www.jedec.org/download/pub21/default.cfm befindet) sind
  jedoch nur nur 128KB Nutzdaten vorgesehen.

  Nicht nur Speicherzellen k�nnen defekt sein, auch das SPD-EEPROM
  kann durchaus defekt oder schlecht (bzw. falsch) programmiert sein.
  Um dies zu testen, gibt es das Testprogramm "ctSPD" unter
  http://www.heise.de/ct/ftp/ctspd.shtml, welches man sich unbedingt
  downloaden sollte, da grade das SPD h�ufig eine Fehlerursache ist.


  8.4.10 Speicher-Bandbreite
  ==========================

  Unterschiedlicher RAM hat auch unterschiedlich hohe Bandbreiten. Um
  hier den �berblick nicht zu verlieren, gibt es hier eine Tabelle,
  in der die maximalen Bandbreiten angegeben sind. Nicht vergessen
  sollte man jedoch dabei, dass die tats�chliche Bandbreite enorm von
  der Angegebenen abweichen kann. Angef�hrt sind hier auch noch nicht
  fertig spezifizierte und daher nicht erh�ltliche RAM-Arten.

  Theoretische Bandbreite derzeitiger RAM-Module
  ==============================================

 DRAM-Typ |    Name   | RAM-  | DDR/ | Bus-   |  1 Kanal   |  2 Kanal
          |           | Speed | QDR  | Breite | Bandbreite | Bandbreite
          |           | [MHz] |      | [Bit]  | [MByte/s]  | [MByte/s]
==========+===========+=======+======+========+============+===========
 SDRAM    | PC66      |   66  |  -   |  64    |    533     |   1066
          |-----------+-------+------+--------+------------+-----------
          | PC100     |  100  |  -   |  64    |    800     |   1600
          |-----------+-------+------+--------+------------+-----------
          | PC133     |  133  |  -   |  64    |   1066     |   2133
          |-----------+-------+------+--------+------------+-----------
          | PC150(1)  |  150  |  -   |  64    |   1200     |   2400
----------+-----------+-------+------+--------+------------+-----------
 DDR-     | PC1600    |  100  | DDR  |  64    |   1600     |   3200
 SDRAM    | DDR-200   |       |      |        |            |
          |-----------+-------+------+--------+------------+-----------
          | PC2100    |  133  | DDR  |  64    |   2133     |   4266
          | DDR-266   |       |      |        |            |
          |-----------+-------+------+--------+------------+-----------
          | PC2400(1) |  150  | DDR  |  64    |   2400     |   4800
          |-----------+-------+------+--------+------------+-----------
          | PC2700    |  166  | DDR  |  64    |   2666     |   5333
          | DDR-333   |       |      |        |            |
          |-----------+-------+------+--------+------------+-----------
          | PC3200    |  200  | DDR  |  64    |   3200     |   6400
          | DDR-400   |       |      |        |            |
          |-----------+-------+------+--------+------------+-----------
          | PC3500(1) |  217  | DDR  |  64    |   3466     |   6933
          | DDR-433(1)|       |      |        |            |
----------+-----------+-------+------+--------+------------+-----------
 QDR-     | PC1600    |  100  | QDR  |  64    |   3200     |   6400
 SDRAM    | QDR-400   |       |      |        |            |
          |-----------+-------+------+--------+------------+-----------
          | PC2100    |  133  | QDR  |  64    |   4266     |   8533
          | QDR-533   |       |      |        |            |
          |-----------+-------+------+--------+------------+-----------
          | PC 2700   |  166  | QDR  |  64    |   5333     |  10666
          | QDR-666   |       |      |        |            |
----------+-----------+-------+------+--------+------------+-----------
 DDR-II   | PC2-3200  |  200  | DDR  |  64    |   3200     |   6400
 SDRAM    | DDR2-400  |       |      |        |            |
          |-----------+-------+------+--------+------------+-----------
          | PC2-4300  |  266  | DDR  |  64    |   4266     |   8533
          | DDR2-533  |       |      |        |            |
          |-----------+-------+------+--------+------------+-----------
          | PC2-5300  |  333  | DDR  |  64    |   5333     |  10666
          | DDR2-667  |       |      |        |            | 
----------+-----------+-------+------+--------+------------+-----------
 Rambus   | PC600(2)  |  266  | DDR  |  16    |   1066     |   2133
          |-----------+-------+------+--------+------------+----------- 
 (2x16d-  | PC600     |  300  | DDR  |  16    |   1200     |   2400
  RDRAM)  |-----------+-------+------+--------+------------+-----------
          | PC700(3)  |  300  | DDR  |  16    |   1200     |   2400
          |-----------+-------+------+--------+------------+-----------
          | PC700(4)  |  354  | DDR  |  16    |   1424     |   2848
          |-----------+-------+------+--------+------------+-----------
          | PC800(5)  |  400  | DDR  |  16    |   1600     |   3200
----------+-----------+-------+------+--------+------------+-----------
 Rambus   | PC1066    |  533  | DDR  |  16    |   2133     |   4266
 Hastings |-----------+-------+------+--------+------------+-----------
 4i-RDRAM | PC1200    |  600  | DDR  |  16    |   2400     |   4800
----------+-----------+-------+------+--------+------------+-----------
 Rambus   | PC3200    |  400  | DDR  |  32    |   3200     |    - (6)
          | RIMM 3200 |       |      |        |            |       
          |-----------+-------+------+--------+------------+-----------       
          | PC4266    |  533  | DDR  |  32    |   4266     |    - (6) 
          | RIMM 4200 |       |      |        |            |
 32 Bit   |-----------+-------+------+--------+------------+-----------
 Module   | PC4800    |  600  | DDR  |  32    |   4800     |    - (6)
          | RIMM 4800 |       |      |        |            |
----------+-----------+-------+------+--------+------------+-----------
 Rambus   | PC8533    |  533  | DDR  |  64    |   8533     |    - (6)
 64 Bit   |-----------+-------+------+--------+------------+-----------
 Module   | PC9600    |  600  | DDR  |  64    |   9600     |    - (6)
----------+-----------+-------+------+--------+------------+-----------         

  (1) PC 150, PC 2400 und PC 3500 sind keine Spezifikationen im echten 
      Sinne; es sind lediglich Bezeichnungen von �bertakteten Modulen
      nach PC133-, PC2100- und PC3200-Standard
  (2) Wird der Prozessor mit 133 MHz FSB betrieben, l�uft Rambus PC600
      nur mit 266 MHz statt mit 300 MHz
  (3) Wird der Prozessor mit 100 MHz FSB betrieben, l�uft Rambus PC700
      nur mit 300 MHz statt mit 354 MHz
  (4) Rambus PC 700 l�uft nur auf dem Chipsatz Intel i820
  (5) Rambus PC 800 l�uft immer mit 400 MHz, egal wie der FSB betrieben
      wird
  (6) 32Bit- und 64Bit-RIMMs werden (noch) nicht in Dual-Channel-
      Konfiguration verwendet, da dies bereits im Modul geschieht


 8.5 Test von RAM
 ================

 Mit gen�gender Sicherheit kann man defekte RAM-Module nur im Labor
 ermitteln. Somit kann man mit Programmen zum Speichertest eigentlich
 nur Fehler nachweisen, nicht aber die Fehlerfreiheit. Eine Aussage auf
 die Fehlerfreiheit auf dem betrefffenden Board ist jedoch
 nichtsdestotrotz m�glich.

  8.5.1 Wann sollte man einen Speichertest durchf�hren?
  =====================================================

  Verdachtsmomente sind:
  * Instabilit�t des Systems
  * H�ufung von Bluescreens (Windows)
  * Windows l�sst sich nicht installieren


  8.5.2 Programme zum Speichertest
  ================================

  * ctramtst 5.1, deutsch: http://www.heise.de/ct/ftp/
    Achtung, inkompatibel mit Voodoo-Grafikkarten!
  * Memtest86, englisch: http://www.memtest86.com/
  * AleGr Memtest, englisch:
    http://www.aha.ru/~alegr/download/memtest_en.htm
    Sehr gr�ndlicher, aber leider nicht mehr weiterentwickelter
    Speichertester. Ist nicht kompatibel mit neueren Chips�tzen.


 8.6 Was man bei der Speicheraufr�stung beachten muss
 ===================================================

  8.6.1 Bauform und Best�ckung
  ============================

  Man sollte nat�rlich vorher nachsehen, was f�r Speichermodule der
  Rechenknecht denn haben will. Bei �lteren Rechnern sind dies meist
  PS/2-SIMMs (weisse Sockel, meistens EDO-RAM), bei neueren DIMMs
  (l�ngere braune Sockel, zumeist SDRAM [168-polig] oder DDR-SDRAM
  [184-polig]) oder seltener RIMMs (Rambus-DRAM, 184-polig). Bei sehr
  alten Rechnern findet man 30-Pin-SIMMs (ausnahmlos Fastpage; leider
  geh�ren dazu wie zu PS/2-SIMMs weisse Sockel, aber meistens sind
  hier 8 St�ck oder mehr vorhanden, w�hrend Sockel f�r PS/2-SIMMs
  meistens zu viert auftauchen). In Rechnern mit 64-Bit-Speicherbus
  (also Pentium oder h�her) m�ssen PS/2-SIMMs immer paarweise
  eingesetzt werden; dies trifft auch f�r einige 486er-Boards zu
  (n�mlich solche mit dem i420 "Saturn", in denen man gleichzeitig 
  auch nur Fastpage-Module einsetzen kann, keine EDOs). 30-Pin-SIMMs
  (bei PCs meistens mit Parit�t, gelegentlich auch mit Dummy-Parit�t)
  m�ssen bei 286- und 386SX-Systemen paarweise, bei 386DX- und
  486-Systemen gleich im Viererpack eingesetzt werden. Bei bestimmten
  Chips�tzen (i840, i850/E, i860) m�ssen Rambus-Module paarweise
  verbaut werden, bei anderen Chips�tzen (nVidia nForce 1 und 2,
  i7205, i865, i875 etc.) ist das Einsetzen von 2 DIMMs zur
  Verdopplung der Speicherbandbreite optional.
  Auf einigen Sockel-7-Boards kann man sowohl PS/2-SIMMs als auch
  SDRAM-DIMMs betreiben, allerdings selten zusammen - tut man dies
  trotz der Warnung im Handbuch (es gab aber einen Fall, in dem dies
  auch f�lschlicherweise zugelassen wurde), kann es passieren, dass
  man die DIMMs mit 5V grillt.
  Alle Modultypen sind zum Gl�ck verpolungssicher. (Wobei es mancher
  schon geschafft hat, 3.5"-Disketten verkehrtherum einzuliegen,
  obwohl das eigentlich auch nicht geht - also: Keine Gewalt gegen
  Speichermodule! ;) Einzig PS/2-Module mit Fastpage- oder EDO-RAM
  kommen in gleicher Bauform daher - alle anderen Module passen nicht
  in fremde Slots.

  Es gibt im �brigen Adapter, um je vier 30-Pin-SIMM-Module in
  PS/2-Slots zu betreiben. Das macht aber meist keinen Sinn, da diese
  Adapter oft teuer sind und 30-Pin-SIMMs meist nur eine recht geringe
  Kapazit�t haben. Weiterhin sind 30-Pin-SIMMs �blicherweise langsamer
  als PS/2-Module. Diese Adapter waren interessant, als 16 MB RAM noch
  1000 Mark und mehr kosteten.


  8.6.2 Achtung, Chipsatzbeschr�nkungen!
  ======================================

  Das blo�e Vorhandensein entsprechender Speichersockel bedeutet noch
  lange nicht, dass man dort beliebig grosse oder beliebig
  organisierte Module des jeweiligen Speichertyps einsetzen kann!

  �ltere 386er- und 486er-Boards mit 30-Pin-Sockeln schlucken des
  �fteren keine 4-MiB-Module mit 3 statt 9 Chips. Noch �ltere 286er- 
  und 386er-Boards (1990/91 und fr�her) kommen oft nur mit 
  1-MB-Modulen zurecht.
  Bei 486ern mit PS/2-Sockeln muss man insofern aufpassen, als da�
  einerseits viele VLB-486er bzw. deren Chips�tze gar nichts mit
  EDO-DRAM anzufangen wissen, andererseits selbst bei prinzipieller
  Funktion noch manche T�cken lauern k�nnen; so kann man z.B. mit dem
  i420 EDO-Module nicht paarweise betreiben - offenbar kann der
  Speichercontroller bei der Nutzung von Interleaving EDOs nicht
  korrekt ansteuern. Eine g�ngige maximale Chipkapazit�t bei 486ern
  ist 16 MBit mit 4Mx4-Chips (4Mx1 funktionieren dann auch), "breite"
  Chips (x8 etc.) m�gen sie i.d.R. nicht.

  Auf Boards mit Intels 430VX-Chipsatz finden sich oft sowohl Sockel
  f�r PS/2-SIMMs als auch f�r SDRAM-DIMMs. Letztere verlocken dazu,
  schnell mal ein billiges neues SDRAM-Modul einzubauen, was aber
  entweder dazu f�hrt, dass das Modul nicht passt (weil es leider
  doch ein Sockel f�r EDO- und nicht f�r SDRAM-DIMMs war), gar nichts
  geht (die PS/2-SIMMs m�ssen vorher �brigens raus und die Spannung
  f�r den Speicher will auf 3.3 V statt 5 V eingestellt sein, sonst
  gibt's SDRAM-Toast!) oder nur ein Bruchteil des Moduls erkannt wird. 
  Wenn gar nichts geht, liegt das daran, dass heutige DIMMs 
  4-clock-Module sind (4 unabh�ngige Taktsignale), w�hrend v.a. fr�he
  SDRAM-Boards noch auf 2-clock-Module ausgelegt sind. Wenn nur ein 
  Bruchteil des Speichers erkannt wird, ist der Chipsatz schuld: Der
  i430VX unterst�tzt Speicherchips von maximal 16 MBit, macht bei
  einem Module mit 16 St�ck davon 32 MByte. Solche alten PC66-Module
  sind nicht besonders leicht zu finden.

  Nicht ganz so schlimm sieht es bei dem beliebten 440BX-Chipsatz (und
  dessen "kleinem Bruder", dem i440ZX) von Intel aus: Dieser
  unterst�tzt ohne weiteres Speicherchips von bis zu 64 MBit, wird bei
  128-MBit-Chips aber w�hlerisch: 16Mx8 soll es sein, nicht 32Mx4,
  sonst wird nur das halbe Modul erkannt. Ein mit den richtig
  organisierten Chips best�cktes 256-MiB-SDRAM-Modul hat folglich 16
  St�ck davon (Beispiel: Infineon HYS64V32220GU-7/7.5), oder 18 St�ck
  bei einem Modul mit ECC. 512 MiB oder gr��eres kann man ganz
  vergessen. 256-MBit-Chips mag der BX nicht besonders - 256-MiB-Module
  mit 8 Chips singlesided werden nur halb erkannt, 128-MiB-Module mit 4
  Chips funktionieren gar nicht. Bei Einsatz von drei oder mehr
  Speichermodulen wird die Verwendung von Registered-DIMMs empfohlen,
  nur dummerweise schlucken einige BX-Boards lediglich
  Unbuffered-Module, zudem ist die ben�tigte Sorte von Registered-
  Modulen mit 32 bzw. 36 16Mx4-Chips alles andere als h�ufig
  anzutreffen, auch der gleichzeitige Betrieb von Registered- und
  Unbuffered-DIMMs ist grunds�tzlich nicht m�glich. Damit bleibt also
  zumeist nur der Betrieb ausschlie�lich mit Unbuffered-DIMMs, wobei
  sich gezeigt hat, da� bei 100 MHz Systemtakt durchaus auch vier
  Doublesided-Module, bei 133 MHz noch drei stabil laufen (allerdings:
  YMMV). 
  Quasi identische Beschr�nkungen bez�glich der Chiporganisation hat
  AMDs 750er-Chipsatz, der allerdings von vornherein nur 768 MiB RAM
  unterst�tzt. 
  Der auf Xeon- und manchen Slot-1-Dualboards verbaute i440GX sollte
  sich �hnlich verhalten wie der BX, nur "eine Etage h�her" - bei
  512-MB-Riegeln sollten 32Mx8-Chips (unbuffered) bzw. 32Mx4-Chips
  (registered) verbaut sein.

  Noch etwas: Ebenso wie der i440BX unterst�tzen offenbar auch der
  i440LX und evtl. der i430TX 16Mx8-Chips, obwohl laut Datenblatt
  maximal 64 MBit gro�e Chips vorgesehen waren. (Dies ist insofern
  erkl�rlich, als da� z.B. der i440LX genausoviele Adre�leitungen hat
  wie der i440BX.) Verifiziert werden konnte die Funktion mit einem
  128-MiB-DIMM von Infineon mit 8x 16Mx8 auf einem Asus P2L97-DS mit
  i440LX, die Erkennung eines 256-MiB-Exemplars mit 16Mx8-Chips
  scheiterte zun�chst am zu alten Board-BIOS von Anfang '99, w�hrend es
  mit dem letzten von 2001 dann ohne weiteres lief. Eine
  Funktionsgarantie in jedem Fall kann aber nicht gegeben werden
  (schlie�lich spielen auch Boarddesign und BIOS eine Rolle). Beim
  i430TX kommt erschwerend hinzu, da� dessen L2-Cache maximal 64 MiB
  des Speichers abdeckt, sofern man keinen AMD K6-3, K6-2+ oder K6-3+
  einsetzt. 
  Support f�r 16Mx8-Chips scheint auch in einigen anderen Chips�tzen
  vorhanden zu sein, die offiziell nur 64-MBit-Chips schlucken - da
  w�re z.B. der VIA MVP3 zu nennen.

  Eine Beschr�nkung noch etwas anderer Art als beim BX lauert bei
  Intels 810- und 815-Chips�tzen: Diese unterst�tzen insgesamt maximal
  512 MB RAM. Zudem lassen sich bei 133 MHz Speichertakt (falls
  verf�gbar) nur noch 2 statt 3 doppelseitige Module einsetzen. Der
  i810 hat sonst die gleichen Beschr�nkungen wie der i440BX. x4
  organisierte Module werden von neueren Intel-Chips�tzen f�r SDRAM
  nicht unterst�tzt; diese verf�ttert man besser an VIA-best�ckte
  Boards. 512-MB-SDRAM-Module mit 64Mx4-Chips, wie sie vor einer Weile
  billig als "nur f�r VIA geeignet" angeboten wurden, sind eigentlich
  nur in Registered-Ausf�hrung zul�ssig, unbuffered hingegen nicht -
  so wundert es kaum, da� der Betrieb dieses Schrotts selbst auf
  Boards mit VIA-Chips�tzen einem Gl�cksspiel gleichkam.

  Welcher Chipsatz wie gro�e Speicherchips unterst�tzt, kann man
  nachlesen...
  a) in 2.2.1 und 2.2.3 oder
  b) http://users.erols.com/chare/chipsets.htm 


  8.6.3 Markenspeicher oder nicht?
  ================================

  Grunds�tzlich empfiehlt es sich, Marken-Speichermodule etwa von 
  Infineon, Samsung, Kingston, Micron, Corsair und anderen namhaften 
  Firmen einzusetzen. Dies ist zwar keine Garantie daf�r, da� man nicht 
  doch einmal ein fehlerhaftes Modul bekommen k�nnte, zudem sind auch 
  Marken-Module nicht immer perfekt (so machen z.B. DDR-SDRAM-Module von 
  Infineon zuweilen Probleme, w�hrend deren SDRAM-Module ja schon quasi 
  Referenzstatus hatten). Genauso k�nnen auch Nonames einwandfrei
  funktionieren und mit (zumindest fast) fehlerfreiem SPD-EEPROM (siehe
  8.4.9) daherkommen, allerdings kann es bei Nonames eher mal passieren,
  da� man ein fehlerhaftes Modul bekommt. Weiterhin bereiten sie
  h�ufiger Probleme, wenn mehrere RAM-Module zusammenarbeiten m�ssen,
  wobei die Last am Datenbus sich mit jedem Modul erh�ht und die
  Datensignale immer mehr verschleifen. Module mit von sich aus
  "saubereren" Signalen (aus leicht einsichtigen Gr�nden wird man diese
  bei billigen Produkten zweifelhafter Herkunft und Best�ckung weniger
  oft antreffen als bei hochwertigeren Modulen) sind in solchen F�llen
  im Vorteil. Hier daher die Links zu wichtigen Speicherherstellern:

   Apacer                http://www.apacer.com
   Buffalo               http://www.buffalo-technology.com
   Corsair               http://www.corsairmemory.com 
   Crucial               http://www.crucial.com 
   Dataram               http://www.dataram.com 
   Elpida                http://www.elpida.com
   Geil (Golden Emperor) http://www.geil.com.tw 
   Hynix                 http://www.hynix.com
   Infineon              http://www.infineon.com 
   Kingmax               http://www.kingmax.com.tw 
   Kingston              http://www.kingston.com
   Kingston ValueRAM     http://www.valueram.com
                         http://www.legacyelectronics.com
   Memory Solution       http://www.memorysolution.de
   MDT/MCI               http://www.mci.de 
   Micron                http://www.micron.com 
   Mosel Vitelic         http://www.moselvitelic.com
   MSC                   http://www.msc-ge.com
   Mushkin               http://www.mushkin.com 
   Nanya                 http://www.nanya.com
   NEC                   http://www.necel.com
   PNY Technologies      http://www.pny-europe.com
   ProMOS                http://www.promos.com.tw   
   Samsung               http://www.samsungsemi.com  
   Simple                http://www.simpletech.com
   Swissbit              http://www.swissbit.ch
   Texas Instruments     http://www.ti.com
   Transcend             http://www.transcendusa.com 
   TwinMOS               http://www.twinmos.com 
   Viking Interworks     http://www.vikingcomponents.com
   Winbond               http://www.winbond-usa.com

  Eine noch gr�ssere Auswahl auch von unbekannteren Herstellern findet
  sich unter http://www.heise.de/ct/Redaktion/ciw/speicherlinks.html

User Contributions:

1
Jack Hicks
Aug 9, 2025 @ 7:07 am
This is a valuable resource for anyone working with legacy hardware! While modern systems focus on NVMe and SATA III, there's still a strong need for compatibility with older chipsets and motherboards.

For those maintaining or repairing older systems (especially pre-2010 motherboards from these manufacturers), pairing them with a 160GB SATA 3Gbps HDD (2.5-inch, 7.2K RPM) https://serverorbit.com/hard-disk-drives/sata-3gbps/160gb-7-2k-rpm-2-5inch can be a practical solution when:

Budget constraints prevent SSD upgrades

Legacy OS support (e.g., Windows XP) requires older storage interfaces

Secondary storage is needed for archival purposes

These HDDs remain compatible with even early SATA I/II chipsets (VIA, SiS, nVidia nForce, etc.) listed in your collection.
2
siyerin976
Feb 2, 2026 @ 8:08 am
Ich finde die Sammlung der Speicherhersteller im Artikel besonders hilfreich. In meiner Arbeit mit Control Processor Expansion Modules https://serverorbit.com/network-devices/control-processor/expansion-module-en
ist es oft entscheidend zu wissen, welche Speicherchips auf den Boards verbaut sind, um Kompatibilität und Stabilität sicherzustellen. Besonders interessant ist für mich Micron, da ihre Module in vielen meiner Tests zuverlässig hohe Datenraten liefern und gleichzeitig eine gute Energieeffizienz bieten.

Auch die Hinweise auf die speziellen Mainboards, die sich durch bestimmte Features oder Benutzererfahrungen auszeichnen, finde ich spannend. Ich habe festgestellt, dass man gerade bei komplexen Modul-Setups oft auf diese inoffiziellen Ressourcen zurückgreifen muss, um wirklich alle Details zu verstehen, sei es zu BIOS-Versionen oder zu unterstützten Speichertypen.

Mich würde interessieren, ob andere hier ähnliche Erfahrungen gemacht haben: Nutzt ihr eher die offiziellen Herstellerangaben oder diese Community-Seiten, um die optimale Kombination aus Prozessor-, Speicher- und Erweiterungsmodulen zu wählen?

Comment about this article, ask questions, or add new information about this topic:




Part0 - Part1 - Part2 - Part3 - Part4 - Part5 - Part6 - Part7 - Part8 - Part9 - Part10 - Part11 - Part12 - Part13

[ Usenet FAQs | Web FAQs | Documents | RFC Index ]

Send corrections/additions to the FAQ Maintainer:
CPU und Mainboard FAQ Team <dchcm@dch-faq.de>





Last Update March 27 2014 @ 02:11 PM