• Keine Ergebnisse gefunden

Speichern eines Bits versus viele MB

N/A
N/A
Protected

Academic year: 2022

Aktie "Speichern eines Bits versus viele MB"

Copied!
15
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Ergänzung: RAM und ROM

(2)

Speichern eines Bits versus viele MB

Wir wissen wie wir einzelne Bits  speichern können (Erinnerung: 

Latches, Flip‐Flops)

CK

D Q

Mehrere solcher Bausteine können zu  Register zusammengebaut werden

Wie baut man daraus aber komplexe  RAM‐Bausteine?

Bildquelle: Andrew S. Tanenbaum, „Structured Computer Organization“, Fifth Edition, 2006

(3)

Beispiel: Speicherbaustein mit Adressierung

Dateneingänge (3 Bit): I0, I1, I2 Datenausgänge (3 Bit): O1, O2, O3 Adressleitungen (4 „Wörter“): A0, A1 Kontrollleitungen:

CS = Chip‐Select

RD = Read (=1) / Write (=0)

OE = Output Enable

Lesen und Schreiben am Beispiel…

Wenn man entweder liest oder schreibt 

können I0, I1, I2und O1, O2, O3auch dieselben  Leitungen sein (das spart Pins und 

Busleitungen). Dies erfordert aber, dass beim  Schreiben die Ausgabe getrennt wird.

Baustein hierfür: noninverting und inverting Buffer:

(sog. Tri‐State‐Device: Ausgabe 0/1 oder 

„none“ (d.h. open circuit))

Bildquelle: Andrew S. Tanenbaum, „Structured Computer Organization“, Fifth Edition, 2006

(4)

Erweiterung von Adressraum und Bit‐Tiefe

Erweiterung des vorigen Beispiels ist  offensichtlich:

• Vergrößerung des Adressraums (in der  Größenordnung 2n): Füge eine 

Adressleitung hinzu und verdoppele die  Anzahl Zeilen

• Vergrößerung der Bit‐Tiefe (beliebig): 

Füge in jede Zeile eine/mehrere  Spalte/n hinzu

Zwei‐dimensionales sich wiederholendes  Muster:

• lässt sich gut mit dem Konzept von  integrierten Schaltung vereinen (z.B. kein Anwachsen von 

Leitungsüberkreuzungen)

• Speicherkapazität ist nur direkt an Chip‐

Integrationsdichte gekoppelt

Bildquelle: Andrew S. Tanenbaum, „Structured Computer Organization“, Fifth Edition, 2006

Verschiedene Chip‐Organisationsformen  möglich. Beispiel für zwei 4Mbit‐Chip‐

Varianten:

Variante (a): wie eben nur größer Variante (b):

• 2048x2048 Matrix mit 1‐Bit‐Zellen

• Adressierung ist zweistufig (z.B. erst Row Address Strobe (RAS) und dann Column Address Strobe (CAS))

(5)

Organisation als Matrix

n x n‐Matrix‐Konzept des vorigen Beispiels allgemein:

• Geeignet für große Speicher‐Chips

• Reduziert die Anzahl Pins

• Adressierung dauert aber doppelt so lang

• Mögliche Optimierung: 

• Teile zuerst die Row‐Adresse mit

• Anschließend können innerhalb dieser Row mit einer Sequenz von Column‐

Adressen Speichereinträge erreicht werden

Mehrere n x n ‐ 1‐Bit‐Bausteine lassen sich auch parallel zu größerer Bit‐Tiefe  zusammenbringen, z.B. Tiefe 8‐Bit

Matrix‐Organisation eines Einzelbausteins nicht auf Bit‐Einträge begrenzt

Beispielsweise: 4‐, 8‐, oder 16‐Bit‐Breiten möglich; daraus lassen sich mit weniger Einzel‐

Chips größere RAM‐Bausteine zusammenbauen (z.B. Anstatt 32‐Bit‐Tiefe mit vier 8‐Bit‐

Bausteinen anstatt mit 32 1‐Bit‐Bausteinen)

Bildquelle: Andrew S. Tanenbaum, „Structured Computer Organization“, Fifth Edition, 2006

(6)

Weitere Aspekte

Matrix muss nicht Quadratisch sein (z.B. 13 Rows und 10 Columns)

Zusätzlich kann Speicher noch in Bänken organisiert sein (z.B. 4 Bänke mit je 128Mbit  ergibt 512 Mbit)

Zwei Beispiele eines 512Mbit‐Chips:

• Vier interne Bänke a 128MBit (d.h. zwei Bank‐Select‐Leitungen)

• Variante (a): 32M x 16 Design mit 13‐Bit‐RAS und 10‐Bit‐CAS => 213+10+2 = 225 interne 16‐Bit‐Zellen

• Variante (b): 128M x 4 Design mit13‐Bit‐RAS und 12‐Bit‐CAS => 213+12+2 = 227 interne 4‐Bit‐Zellen

Bildquelle: Andrew S. Tanenbaum, „Structured Computer Organization“, Fifth Edition, 2006

(7)

SRAM und DRAM

Zwei RAM‐Varianten: SRAM und DRAM Static RAM (SRAM)

Aufgebaut mit Schaltungen wie die diskutierten Flip‐Flops

Zustand bleibt erhalten solange Strom anliegt

Sehr schneller Speicher (Zugriffszeit wenige nsec) Dynamic RAM (DRAM)

Nutzt keine Flip‐Flops sondern Array von Zellen mit je einem Transistor und  einem winzigen Kondensator pro Bit

Ladezustand des Kondensator (aufgeladen/entladen) stellt 1‐Bit‐Information  dar

Kondensator entladen sich => damit periodischer „Refresh“ notwendig (alle  paar Millisekunden)

Vorteil: hohe Dichte bzgl. Bit pro Chip (Transistor+Kondensator anstatt 6  Transistoren für den Flip‐Flop) => große RAM‐Speicher damit realisierbar

Nachteil: wesentlich langsamer (mehrere 10 nsec)

Guter Kompromiss: DRAM‐Baustein mit SRAM‐Cache

(8)

FPM, EDO, SDRAM und DDR

DRAM‐Varianten: z.B. FPM und EDO Fast Page Mode (FPM) DRAM

Matrix zur Adressierung von Bit

Eine Row‐Adresse und anschließend aufeinander folgende Column‐Adressen

RAM läuft unabhängig (asynchron) vom Haupt‐Systemtakt Extended Data Putput (EDO) DRAM

Nächste Speicherreferenz ist möglich bevor die vorige beendet wurde (vgl. Pipelining‐Prinzip)

Erhöht nicht die individuelle Speicherzugriffzeit aber den Speicherdurchsatz Synchronous DRAM (SDRAM)

Hybrid aus dynamischem und statischem DRAM durch den Haupt‐Systemtakt getriggert

Keine Kontrollnachrichten zwischen Prozessor und RAM wie bei asynchronem RAM erforderlich

Wesentlich schneller

Double Data Rate (DDR) SDRAM

Output bei fallender und steigender Clock‐Flanke => verdoppelt die Datenrate

(9)

ROM

Read Only Memory (ROM) – Zum Chipherstellungsprozess wird das Bitmuster festgelegt; 

besonders billiger Speicher

Programmable ROM (PROM) – kann einmalig Programmiert werden; Meist ein Feld von  Column‐Row‐Adressierbaren Knotenpunkten die über einen Eingangs‐Pin einmalig auf  einen Bit‐Wert gesetzt werden können

Erasable PROM (EPROM) – Belichtung des Quartz‐Fenster mit starkem UV‐Licht für 15  Minuten setzt alle Bit‐Werte zurück auf 1. Erneutes Setzen der Bits damit möglich

EEPROM – Löschen mittels elektrischer Impulse; Re‐Programmierung direkt am Chip  möglich (anstatt wie bei EPROM in spezieller Apparatur)

Diskussion:

EEPROMS typischerweise wesentlich kleiner als EPROMS und nur halb so schnell EEPROMS wesentlich langsamer kleiner und teurer als DRAM und SRAM

Nur dann sinnvoll, wenn Werte einmalig festgelegt sein sollen Aktueller als EEPROMs sind Flash‐Speicher (auf NAND‐Basis)

Unterschied: Block‐Erasable/Rewritable anstatt Byte‐Erasable/Rewritable

(10)

Flash‐Speicher

Flash‐Speicher: nichtvolatiler Halbleiterspeicher.

Vorteile gegenüber Disks:

• Latenz ist 100 bis 1000 fach schneller

• Kleiner

• Größere Leistungseffizienz

• Größere Shock‐Resistenz Nachteile gegenüber Disks:

• Höherer Preis pro GB

• Flash‐Speicher‐Bits sind nach vielem Überschreiben nicht mehr  verwendbar (Wear‐Out).

Flash‐Speicher muss ein entsprechendes Wear‐Leveling

durchführen. 

(11)

NOR‐ und NAND‐Flash‐Speicher

Bildquelle: David A. Patterson und John L. Hennessy, „Computer Organization and Design“, Fourth Edition, 2012

(12)

Zusammengefasst

Typ Kategorie Löschen Volatil Typische Anwendung

SRAM R/W Elektr. Ja Level1/2 Cache

DRAM R/W Elektr. Ja Hauptspeicher (alt) SDRAM R/W Elektr. Ja Hauptspeicher (neuer)

ROM Read‐

Only

Nicht  möglich

Nein Produkte großer Stückzahl PROM Read‐

Only

Nicht  möglich

Nein Produkte kleinerer Stückzahl EPROM Read‐

Mostly

UV‐Licht Nein Prototyping EEPROM Read‐

Mostly

Elektr. Nein Prototyping

Flash R/W Elektr. Nein Sekundärer Speicher

(13)

Zusammenfassung und Literatur

(14)

Zusammenfassung

• Cache‐Ziel: Speicher so groß wie auf unterstem Level  aber annähernd so schnell wie auf höchstem Level.

• Warum funktionieren Caches überhaupt so gut? 

Lokalitätsprinzip.

• Virtueller Speicher ist prinzipiell das selbe wie ein  Cache. Auch hier gelten dieselben Cache‐Prinzipien  (z.B. Lokalität)

• Insgesamt ergibt sich eine Hierarchie von Caches.

• Caches sind prinzipiell vor der Software unsichtbar. 

Dennoch ist es sinnvoll diese in der Software zu  beachten (z.B. Speicherblöcke in Schleifen Cache‐

günstig durchlaufen, Prefetching) 

(15)

Literatur

[PattersonHennessy2012] David A. Patterson und John L. 

Hennessy, „Computer Organization and Design“, Fourth  Edition, 2012

5.1 Introduction

5.2 The Basics of Caches

5.3 Measuring and Improving Cache Performance 5.4 Virtual Memory

5.8 Parallelism and Memory Hierarchies: Cache Coherence 6.4 Flash‐Storage

[Tanenbaum2001] Andrew S. Tanenbaum, „Modern Operating  Systems“, Second Edition, 2001

4.8 Segmentation

[Tanenbaum2006] Andrew S. Tanenbaum, „Structured  Computer Organization“, Fifth Edition, 2006

3.3 Memory

Referenzen

ÄHNLICHE DOKUMENTE

l Liegt die letzte Diphtherie- Impfung länger als zehn Jahre zurück, empfiehlt die STIKO eine einmalige Auffrischimpfung (in der Regel Td- Impfstoff); die Grundimmunisierung muß

Für das Szenario des Bundesverbandes Erneuerbare Energien (BEE) sind lediglich Zahlen bis 2020 veröffentlicht, diese sehen jedoch bis 2020 einen so deutlich höheren Ausbau

Im Durchschnitt fanden sich auf 9 bis 25% der Mobiltele- fone eine Besiedelung mit potentiell pathogenen und zum Teil multiresisten- ten Keimen, unter anderem Acinetobacter

Das liefert eine Befehlsfolge, die den Wert der rechten Seite oben auf dem Stack ablegt.. • Speichere nun diesen Wert in der Zelle für die linke

Auch bei einem larvalen Melanerpeton gracile aus der Nie- derhäslich-Formation (Werneburg 2008) wurde schon ein Exemplar mit einer mineralisierten Chorda dorsalis nachgewiesen,

Ihnen werden rechts daneben die Daten ausgegeben, wenn Sie auf die Schaltfläche „>>>“ neben EEPROM lesen aktivieren.. the data will be shown at the right side if you press

Initialement conçu pour la carte myAVR, il peut être utilisé avec vos propres réalisations et fourni une EEPROM de type 24Cx.. Il peut être connecté à

Geht man davon aus, dass die Einflüsse der Farbveränderungen als sichtbar gedeutet werden können, sobald E*>1,5 (S EGHI et al. 1989) oder auch sobald ein einzelner Farbwert