mikrocontroller.net

Forum: FPGA, VHDL & Co. BRAM - Disributed RAM


Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

kann mir eventuell jemand sagen, was der unterschied zwischen Block Ram 
und Distributed Ram ist?

Danke

Autor: Uwe Bonnes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
UG331?

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
d.h.

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Blockram ist ein Bauteil, das je nach FPGA-Größe z.B. im Spartan3 4 bis 
104 mal vorhanden ist. Das RAM ist synchron, d.h. die Adresse wird 
getaktet, die Ausgangsdaten haben also 1 Takt Latency. Siehe dazu z.B. 
http://www.xilinx.com/support/documentation/ip_doc... 
und die XAPP463

Für Distributed RAM werden LUTs in einen bestimmten Modus umgeschaltet. 
Jede LUT wird also zu einem 16x1 Speicherelement. Weil das idR. zu wenig 
ist, müssen für eine annehmbare Speichergröße viele LUTs 
zusammengescheltet werden. Das kostet wertvolle Logik-Ressourcen. Ein 
Distributed RAM verhält sich wie ein "normales" SRAM: nach dem Anlegen 
der Adresse stehen am Ausgang die Daten bereit.

Etwas ausführlicher dort:
http://www.lothar-miller.de/s9y/archives/20-RAM.ht...

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
vielen Dank

Autor: Morin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zusätzlich kann man ein Distributed RAM zur selben Zeit (IIRC) nur lesen 
oder schreiben. Ein BRAM kann man von zwei Ports aus gleichzeitig 
jeweils lesen oder schreiben.

Distributed RAM ist granular in Blöcken von 16x1, 32x1 oder 64x1 je nach 
Architektur. Block-RAM ist granular in Blöcken von insgesamt (9*2048) 
Bits, ansteuerbar in verschiedenen Breiten (z.B. 2Kx8, 4Kx4, 2Kx9, usw.)

Wie Uwe Bonnes schon sagt: Genauer steht es im Datenblatt bzw. User 
Guide.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  Morin (Gast)

>Zusätzlich kann man ein Distributed RAM zur selben Zeit (IIRC) nur lesen
>oder schreiben.

Nein. Distributed RAM kann auf einem Port lesen und schreiben, der 
zweite kann nur lesen. Für ein FIFO ausreichend.

MFgG
Falk

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Nein. Distributed RAM kann auf einem Port lesen und schreiben, der
> zweite kann nur lesen. Für ein FIFO ausreichend.
Stichwort dazu: XAPP464

Autor: Morin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für den Hinweis!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.