Forum: FPGA, VHDL & Co. BlockRAM, Anzahl Speicherstellen keine 2er-Potenz


von Matthias D. (Gast)


Lesenswert?

Hallo Community,

für ein Design benötige ich einen 10 bit breiten Speicher.

Mit VHDL inference kann ich einen Speicher von 1024 x 10 bit 
(Adressbreite log2(1024)= 10 bit) erzeugen. Die Synthese bildet ihn 
korrekt auf einen 18k Block ab.

Nun meine Frage: Gibt es eine Möglichkeit den 18k Block voll 
auszunutzen? Für 1800 x 10 bit werden schon zwei 18k Blöcke benutzt. 
Adressbreite für diesen Fall wäre 11bit, wo die oberen Adressen 
1800-2047 nicht gültig sein sollten.

Baustein: Virtex-5 Familie

Grüße Matthias

von Jan M. (mueschel)


Lesenswert?

Wirf einfach mal einen Blick ins Datenblatt - der BRAM kann nur 
bestimmte Konfigurationen annehmen, z.b. 9x2048 oder 18x1024.
10 Bit Breite sind nicht mit einem BlockRAM moeglich.

von Matthias D. (Gast)


Lesenswert?

Danke für den Hinweis. Die Angaben im Datenblatt habe ich nur als 
gängige Beispielkonfigurationen verstanden. Es wird ja immer 'highly 
flexible' wiederholt.

Dann wird im Fall 1024 x 10 bit intern 1024 x 18 bit verwendet mit 8 bit 
Verschnitt. Da kann man wohl nichts machen.

von Falk B. (falk)


Lesenswert?

@  Matthias D. (Gast)

>Dann wird im Fall 1024 x 10 bit intern 1024 x 18 bit verwendet mit 8 bit
>Verschnitt. Da kann man wohl nichts machen.

Wenn es die Anwendung erlaubt. Mittel vorgeschalteter Logik jeweils drei 
10 Bit Datenpakete zu einem 30 Bit Datum zusammenfassen und den BRAM als 
32x512 betreiben. Sind nur noch 2 Bits "Verschnitt".

MFG
Falk

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.