Halbleiterspeicher

0. Einordnung

 

 

Mechanische Speicher

  Magnetische Speicher   Optische Speicher   Halbleiterspeicher
  Lochkarte   Festplatte   CD   ROM
              DVD   SRAM
              Blue Ray   DRAM

 

1. Einteilung der Halbleiterspeicher

 

1.1. ROM

Die ersten ROM-Speicher waren reine Nur-Lese-Speicher, d.h. Read Only Memory. Die Daten wurden industriell eingeschrieben und danach war keine Veränderung mehr möglich.

In der weiteren Entwicklung der ROM-Technik trat der Nutzer mehr in den Vordergrund. Durch die Entwicklung der PROM-Speicher konnte der Nutzer seine Festwertspeicher erstmalig selbst programmieren.

Die ersten PROM-Speicher konnten zwar nur einmalig beschrieben werden, doch die Weiterentwicklung der PROM-Speicher in Richtung der EPROM, EEPROM und Flash-EEPROM Speicher machte ein wiederholtes Programmieren der Speicherbausteine möglich.

Das gemeinsame Merkmal aller ROM-Speicher besteht in der Dauerhaftigkeit der gespeicherten Daten, d.h. die Daten gehen beim Kappen der Versorgungsspannung nicht verloren.

 
  MROM Masked ROM
  • nach Herstellung nicht mehr veränderbar
  PROM Programmable ROM
  • Speichermatrix aus Dioden, kann vom Nutzer einmalig programmiert werden, indem die Dioden zerstört werden
  EPROM Erasable Programmable ROM
  • kann mehrmalig von Nutzer mit hoher Spannung (12,5 V oder 21 V) programmiert werden
  • mit UV Licht löschbar
  EEPROM Electrical Erasable Programmable ROM
  • elektrisch programmierbar und löschbar (byteweise)
  Flash-EEPROM Flash Electrical Erasable Programmable ROM
  • elektrisch programmierbar und löschbar (blockweise, d.h. mehrere Bytes gleichzeitig)
  • heute befindet sich das BIOS auf Flash-EEPROMS, daher spricht man beim Aktualisieren des BIOS auch von "Flashen des BIOS"

 

 

1.2. RAM

Ein RAM-Speicher (englisch: Random Access Memory) zeichnet sich vor allem dadurch aus, das man einzelne Speicherzellen problemlos beschreiben oder auslesen kann. Man hat also die Wahl, wie man auf die einzelnen Speicherzellen zugreift. Daher ist die korrekte Übersetzung auch Speicher mit wahlfreiem Zugriff.

In der Regel verlieren RAM-Speicher ihre Daten sobald die Versorgungsspannung gekappt wird. Daher werden RAM-Speicher auch flüchtige Speicher genannt.

Neueste Entwicklungstrends gehen jedoch in Richtung nichtflüchtiger RAM-Speicher, wie z.B. magnetoresistive RAM-Speicher (MRAM). Es ist möglich, dass nichtflüchtige RAM-Speicher in einigen Jahren die Festplatten ablösen.

 

1.2.1. Vergleich von Statischem RAM und Dynamischem RAM

 

   SRAM    DRAM
 
  • Statischer RAM (Static RAM)

  • Speicherzelle besteht aus Flip Flops

  • geringe Speicherdichte, weil pro Bit vier Transistoren notwendig

  • kein Refresh nötig

  • schnell

  • Einsatz im Cache

  • hoher Preis

 

 
  • Dynamischer RAM

  • Speicherzelle besteht aus Kondensator, der über Transistor aufgeladen wird

  • hohe Speicherdichte, weil pro Bit nur zwei Komponenten notwendig

  • Refresh nötig, da Ladung verloren geht

  • durch Laden und Entladen der Kondensatoren entstehen Verzögerungen, daher langsamer

  • Einsatz im Hauptspeicher

  • geringer Preis

 

1.2.2. DRAM

 

  SD-RAM Synchronous Dynamic RAM

 

 

  • Ein- und Ausgänge arbeiten synchron mit CPU-Takt
  • daher Wegfall von Wartezyklen
  • BURST-Modus möglich
  • Taktfrequenzen von 66 MHz, 100 MHz und 133 MHz
  • 168polig

  DDR-RAM Double Data Rate SD-RAM

 

 

  • Weiterentwicklung des SD-RAM
  • arbeitet mit ansteigender und abfallender Taktrate
  • daher doppelte Datenrate möglich
  • da zwei Bit pro Takt ausgelesen werden, heißt das Verfahren Zweifach-Prefetch
  • DDR - 184polig

     

 

 

  • bei DDR-II-RAM  wird intern der Speichertakt von 133 MHz auf 266 MHz verdoppelt, so dass eine Vervierfachung der Datenrate gegenüber SD-RAM erreicht wird. Dort spricht man von einem Vierfach-Prefetch.
  • bei DDR-III-RAM ist Taktfrequenz bis 333 MHz möglich
  • DDR-II - 240polig

  QDR-RAM Quad Data Rate RAM
  • Weiterentwicklung des DDR-RAM
  • Ein- und Ausgänge arbeiten gleichzeitig und unabhängig voneinander
  • daher doppelte Datenrate des DDR-RAM möglich
  RD-RAM Rambus Dynamic RAM
  • spezielle Bus-Übertragungstechnik (paketorientierte parallele Datenübertragung)
  • Taktfrequenzen bis 800 MHz
  ED-RAM Enhanced RAM
  • Chip enthält zusätzlich einen Cache-Speicher und wird dadurch schneller

 

 

Refresh Methoden

 

Da die Kondensatoren ihre Ladung über Leckströme verlieren, müssen die Inhalte dynamischer Speicherzellen ständig aufgefrischt werden.

Bei jedem Lese- und Schreibvorgang geschieht dies zwar automatisch, aber die nicht aufgerufenen Speicherzellen würden ohne systematische Auffrischung ihre Information verlieren.

Aktuelle SDRAM-Bausteinen mit Speicherkapazitäten ab 256MByte benötigen eine mittlere Auffrischzeit pro Zelle von 7,8µs.

 

  Burst Refresh Blockierung der Speicherzugriffe bis alle Speicherzellen aufgefrischt sind
  Cycle Stealing kurzzeitiges Blockieren der Speicherzugriffe bis einige Speicherzellen aufgefrischt sind
  Hidden Refresh Auffrischen der Speicherzellen nur dann, wenn der Prozessor nicht auf Speicher zugreift
  Self Refresh im Speicherchip integrierte Technologie, die das Auffrischen der Speicherzellen auch während der Zugriffe des Prozessors erledigt


 

2. Entwicklungstendenzen - Nichtflüchtige RAM-Speicher

 

  NV-RAM Non Volatile RAM
  • gleichgroßer DRAM und EEPROM auf einem Chip
  • bei Unterbrechung der Versorgungsspannung werden Daten des flüchtigen DRAM noch schnell auf EEPROM geschrieben
  MRAM Magnetoresistive RAM
  • magnetoelektronischer Arbeitsspeicher
  • speichert Daten auch in stromlosen Zustand
  • verbraucht nur beim Lesen und Schreiben Strom
  • kein Refresh notwendig
  FRAM Ferroelectric RAM
  • Speicherung durch Polarisation eines ferroelektrischen Materials

 

 

3. Speichermodell

 

Da jedes Anschlusspin eines Schaltkreises seinen Preis hat, versucht man, ihre Zahl möglichst gering zu halten.

Aus diesem Grunde werden die Adressen der Zeilen und Spalten nacheinander über den gleichen Adressbus gesendet. Das bedeutet, es muss dem Speicherchip mitgeteilt werden, welche Adressen gerade am Adressbus anliegen. Diese Mitteilung übernimmt der Zeilenadress-Impuls (RAS = Row Address Strobe) für die Zeilen und der Spaltenadress-Impuls (CAS = Column Address Strobe) für die Spalten.

 

Wenn nun eine Zeilenadresse am Adressbus anliegt, wird der Zeilenadress-Impuls (RAS) ausgesendet und die Zeilenadresse wird im Zeilenregister zwischengespeichert.

Anschließend wird die Spaltenadresse an den Adressbus angelegt und der Spaltenadress-Impuls (CAS) gesendet. Nach der Zwischenspeicherung der Spaltenadresse im Spaltenregister, können der Zeilendecoder und der Spaltendecoder auf die gewünschte Speicherzelle zugreifen.

 

Es muss der Schreib/Lese-Logik nur noch mitgeteilt werden, ob die Speicherzelle beschrieben oder ausgelesen werden soll und die Daten werden über den Datenpuffer auf den Datenbus gelegt, bzw. vom Datenbus ausgelesen.

Dieses Verfahren ermöglicht eine hohe Datenbreite, geht aber zu Lasten der Zugriffszeit.

 



 

4. Kenngrößen von Halbleiterspeichern

 

   Kapazität

 

  • Angabe über vorhandene Speicherzellen in Byte
  Zugriffszeit

 

  • Zeit zwischen dem Ansteuern einer Speicherzelle und dem Start der Informationsübertragung
  • hängt von drei Faktoren ab:
 

 

  RAS-to-CAS Delay
  • Verzögerung, die durch das zeitversetzte Anlegen von Zeilen- und Spaltenadressen an den Adressbus zu Stande kommt
  • ist der Zeitraum in dem zunächst die Zeilen- und dann die Spaltenadressen auf den Adressbus gelegt werden

CAS Latency

  • Verzögerung, bis der Inhalt der Speicherzelle am Datenbus anliegt

Precharge Delay

  • Verzögerung, bis die nächste Zeilen- bzw. Spaltenadresse eingelesen werden kann
   Datenrate

 

  • Geschwindigkeit, mir der die Daten in den Speicher geschrieben werden, bzw. ausgelesen werden
  • gemessen in Bytes pro Sekunde
  • nicht allein abhängig von Speicherbustakt, sondern auch vom Speichertyp und der Zugriffsmethode
  • Beispiel: DDR-SDRAM mit Bustakt von 133 MHz

 

 

 

5. Speicherorganisation zur Fehlererkennung und Korrektur

 

Speichermodule sind hinsichtlich ihrer Zuverlässigkeit unterschiedlich organisiert. Zuverlässige Speichermodule bieten die Möglichkeit der Fehlerkontrolle, z.B. durch die Paritätsprüfung.

RAM-Bausteine mit Paritätsprüfung speichern zusätzliche Informationen zu den eigentlichen Daten ab. An jedes Byte wird ein Paritätsbit angehängt, das darüber Auskunft erteilt, ob das Byte eine gerade oder ungerade Zahl von Einsen enthält.

Wenn nun beim Auslesen eines Bytes ein Bit fehlerhaft ist, erkennt die Paritätsprüfung sofort einen Fehler und kann den Prozess stoppen. Bei Windows kommt es dann zum berüchtigten Bluescreen.

Das Paritätsbit dient also nur der Fehlererkennung, nicht jedoch der Korrektur.

Die Paritätsprüfung kann aber nicht alle Fehler erkennen, da z.B. zwei fehlerhafte Bits innerhalb eines Bytes die gleiche Anzahl an Einsen erzeugt wie sie das fehlerfreie Byte enthält.

In der Praxis werden dennoch die meisten Fehler durch die Paritätsprüfung erkannt, da etwa 98% aller Speicherfehler nur 1-Bit-Fehler sind.

Eine Möglichkeit, 1-Bit-Fehler zu korrigieren bietet der Fehlerkorrekturcode (ECC = Error Correction Code).

Bei 2-Bit-Fehlern liefert dieser Code aber auch nur eine Fehlermeldung statt einer Korrektur.

RAM-Speicher mit ECC speichern zusätzlich zu den Daten eine größere Prüfsumme. Um diese Prüfsumme zu erzeugen und "versteckt" im Speicher abzulegen, müssen diese RAM-Speicher vom Chipsatz unterstützt werden. Wenn der Chipsatz keinen ECC-Betrieb vorsieht, können ECC-Module dennoch eingesetzt werden, nur die Fehlerkorrektur bleibt abgeschaltet. Wegen des hohen Preises werden RAM-Speicher mit ECC-Unterstüztung vor allem dort eingesetzt, wo Ausfallkosten bei einem Speicherfehler besonders teurer wiegen, z.B. in Servern.

 

 

6. Möglichkeiten der Leistungssteigerung