PREVIEW
RAM

RAM

Advanced signal_cellular_alt Advanced schedule 35 min

Interactive Circuit

RAM (Random Access Memory)

Übersicht

  • Zweck: RAM (Random Access Memory, Direktzugriffsspeicher) ist eine flüchtige digitale Speicherkomponente, die das Lesen und Schreiben von Daten an jeder Speicherstelle mit gleicher Zugriffszeit ermöglicht. Es speichert temporär Daten und Befehle, die von digitalen Systemen aktiv verwendet werden.
  • Symbol: RAM wird durch einen rechteckigen Block mit Adresseingängen, Dateneingängen und Steuersignalen (CS, WE, CLK, OE) sowie Datenausgängen auf der rechten Seite dargestellt.
  • DigiSim.io-Rolle: Bietet wesentliche Speicherfunktionen für digitale Systementwürfe und ermöglicht Datenspeicherung, Lookup-Tabellen und temporäre Variablen in simulierten Schaltungen.

RAM-Komponente

Funktionsbeschreibung

Logikverhalten

RAM speichert und liest Daten von angegebenen Speicheradressen. Sein Betrieb wird durch Adresseingänge, Datenleitungen und Steuersignale gesteuert.

Betriebsmodi:

  1. Leseoperation: Bei CS=1, WE=0 und OE=1 erscheinen die an der angegebenen Adresse gespeicherten Daten an den Ausgangspins (kombinatorisch).
  2. Schreiboperation: An einer steigenden CLK-Flanke werden bei CS=1 und WE=1 die an den Dateneingangspins anliegenden Daten an der angegebenen Adresse gespeichert (synchroner/taktgesteuerter Schreibvorgang).
  3. Inaktiver Zustand: Bei CS=0 sind die Ausgangspins hochohmig und es erfolgen keine Operationen.

Wahrheitstabelle der Steuersignale:

CS WE CLK OE Operation
0 X X X Inaktiv (Ausgänge hochohmig)
1 0 X 0 Inaktiver Ausgang (hochohmig)
1 0 X 1 Leseoperation (kombinatorisch)
1 1 X Schreiboperation (an steigender Flanke)

Hinweis: X bedeutet „don't care", ↑ bezeichnet die steigende Taktflanke

Eingänge und Ausgänge

  • Eingänge (20 insgesamt):

    • A0-A7: Pins 0-7. 8-Bit-Adresseingang, der die Speicherstelle angibt (bis zu 256 Speicherorte).
    • D0-D7: Pins 8-15. 8-Bit-Dateneingang (Bus-Eingänge) zum Schreiben von Daten.
    • CS (Chip Select): Pin 16. Aktiviert das RAM bei HIGH.
    • WE (Write Enable): Pin 17. Aktiviert den Schreibvorgang bei HIGH (in Verbindung mit der steigenden CLK-Flanke).
    • CLK (Clock): Pin 18. Schreibvorgänge erfolgen an der steigenden Flanke von CLK.
    • OE (Output Enable): Pin 19. Aktiviert den Datenausgang bei HIGH während Leseoperationen.
  • Ausgänge (8 insgesamt):

    • Q0-Q7: 8-Bit-Datenausgang. Bei Leseoperationen (CS=1, WE=0, OE=1) wird der an der angegebenen Adresse gespeicherte Wert ausgegeben. Andernfalls geben die Ausgänge hochohmig (Hi-Z) aus.

Konfigurierbare Parameter

  • Speichergröße: Die RAM-Kapazität in DigiSim.io, standardmäßig 256×8 (256 Adressen, 8 Bit pro Adresse).
  • Anfänglicher Speicherinhalt: Optional vorab geladene Werte für Simulationszwecke.
  • Signallaufzeit: Die Verzögerung zwischen Adress-/Steuersignaländerungen und der Datenausgabe.

Visuelle Darstellung in DigiSim.io

Das RAM wird als rechteckiger Block mit deutlich beschrifteten Eingängen und Ausgängen dargestellt. Adresseingänge befinden sich typischerweise auf der linken Seite, Datenleitungen und Steuersignale sind übersichtlich angeordnet. In einer Schaltung visualisiert die Komponente aktive Operationen und Datenflüsse durch Farbänderungen auf den verbundenen Leitungen. Einige Implementierungen können zu Lehrzwecken eine Anzeige des Speicherinhalts enthalten.

Pädagogischer Wert

Schlüsselkonzepte

  • Speichersysteme: Zeigt, wie Computer Daten speichern und abrufen.
  • Adressdecodierung: Veranschaulicht die Beziehung zwischen Binäradressen und konkreten Speicherstellen.
  • Datenspeicherung: Zeigt, wie binäre Informationen im Computerspeicher organisiert werden.
  • Lese-/Schreib-Timing: Erläutert die Koordination der Steuersignale für Speicheroperationen.
  • Speicherhierarchie: Vermittelt das Konzept verschiedener Speichertypen in Computersystemen.

Lernziele

  • Die grundlegenden Prinzipien des Direktzugriffsspeichers verstehen.
  • Lernen, wie Lese- und Schreiboperationen mithilfe von Steuersignalen durchgeführt werden.
  • Die Bedeutung des Speichers in digitalen Computersystemen erkennen.
  • RAM-Komponenten zum Aufbau von Datenspeicherlösungen in digitalen Designs anwenden.
  • Die Beziehung zwischen Speicheradressen und gespeicherten Daten verstehen.

Anwendungsbeispiele/Szenarien

  • Datenspeicherung: Speichern von Variablen und Zwischenergebnissen in digitalen Systemen.
  • Lookup-Tabellen: Implementierung vordefinierter Datentabellen zur Funktionsapproximation oder Codewandlung.
  • Pufferspeicher: Erstellen temporärer Speicher zwischen digitalen Systemkomponenten unterschiedlicher Geschwindigkeit.
  • Programmspeicherung: Vorab geladen kann das RAM Befehle für die Ausführung durch einen Prozessor speichern.
  • Memory-Mapped I/O: Implementierung speicheradressierter Peripheriegeräte in Computersystemen.

Technische Hinweise

  • Das RAM in DigiSim.io simuliert die flüchtige Natur von physischem RAM, bei dem Daten verloren gehen, wenn die Stromzufuhr unterbrochen oder die Simulation zurückgesetzt wird.
  • Für den korrekten Betrieb müssen die Steuersignale gemäß der Wahrheitstabelle korrekt sequenziert werden.
  • Beim Speicherzugriff sind Timing-Parameter wie Adress-Setup-Zeit und Datenhalt-Zeit zu berücksichtigen.
  • Wenn nicht ausgewählt (CS=0) oder wenn der Ausgang deaktiviert ist (OE=0), gehen die Datenleitungen in einen hochohmigen Zustand, was die gemeinsame Nutzung des Busses mit anderen Geräten ermöglicht.

Schaltungsdetails

Struktur der Speicherzelle

SRAM-Zelle (6T):

Aufbau einer 6-Transistor-SRAM-Zelle:

  • T1, T2: Kreuzgekoppelte Inverter, die einen bistabilen Latch bilden
  • T3, T4: Zugriffstransistoren, gesteuert durch die Wortleitung (WL)
  • T5, T6: Pull-down-Transistoren
  • Bistabile Speicherung: Kreuzgekoppelte Inverter halten den Zustand ohne Refresh
  • Bitleitungen (BL, BL̅): Differenzielles Auslesen für Störfestigkeit

DRAM-Zelle (1T1C):

Aufbau einer DRAM-Zelle mit 1 Transistor und 1 Kondensator:

  • T: Zugriffstransistor, gesteuert durch die Wortleitung (WL)
  • C: Speicherkondensator hält die Ladung, die das Datenbit repräsentiert
  • Bitleitung (BL): Liest/schreibt Daten über den Zugriffstransistor
  • Erfordert Refresh: Die Kondensatorladung leckt und benötigt regelmäßige Refresh-Zyklen
  • Höhere Dichte: Die einfachere Struktur ermöglicht mehr Speicher pro Chipfläche

Adressdecodierung

Zeilen- und Spaltendecoder wandeln die Adresseingänge in Zeilen- und Spaltenauswahlsignale um:

graph LR
    A03[Address A0-A3] --> RDEC[Row Decoder]
    A47[Address A4-A7] --> CDEC[Column Decoder]
    
    RDEC --> RS[Row Select 0-15]
    CDEC --> CS[Column Select 0-15]
    
    RS --> ARRAY[Memory Cell Array]
    CS --> ARRAY

Datenpfad

graph LR
    subgraph Read Operation
        CELL1[Memory Cell] --> SA[Sense Amplifier]
        SA --> OBUF[Output Buffer]
        OBUF --> DOUT[Data Output]
    end
    
    subgraph Write Operation
        DIN[Data Input] --> IBUF[Input Buffer]
        IBUF --> WD[Write Driver]
        WD --> CELL2[Memory Cell]
    end

Verwandte Komponenten

  • ROM (Read-Only Memory): Nichtflüchtiger Speicher, der nur gelesen werden kann
  • PROM (Programmable ROM): Einmal programmierbarer Speicher
  • EPROM (Erasable PROM): Mit ultraviolettem Licht löschbar
  • EEPROM/Flash-Speicher: Elektrisch löschbarer nichtflüchtiger Speicher
  • Register: Kleiner, schneller Speicher zur temporären Datenspeicherung
  • Schieberegister: Sequenzieller Speicher mit Schiebefunktion
  • Speichercontroller: Schaltung, die Speicheroperationen verwaltet
  • Cache-Speicher: Schneller Pufferspeicher zwischen CPU und Hauptspeicher
  • Adressdecoder: Wandelt Binäradressen in einzelne Auswahlleitungen um
  • FIFO/LIFO-Puffer: Spezialspeicher mit First-In-First-Out- oder Last-In-First-Out-Zugriff

school Lernpfad

arrow_back Voraussetzungen

arrow_forward Nächste Schritte

help_outline Häufig gestellte Fragen

Was ist RAM?

RAM ist flüchtiger Speicher, der unter jeder Adresse gelesen und geschrieben werden kann. Er speichert sowohl Programme als auch Daten in Computern und verliert seinen Inhalt bei Stromausfall.

Wie funktioniert RAM-Adressierung?

Adressleitungen wählen aus, auf welche Speicherzelle zugegriffen wird. Mit n Adressleitungen kann RAM 2^n Speicherorte haben. Jeder Ort speichert ein Wort (8 Bits in DigiSim).

play_arrow Live-Schaltung ausführen

Weitere Komponenten ansehen