Forum: FPGA, VHDL & Co. Slices im MachXO reduzieren


von stofferl (Gast)


Lesenswert?

Hallo,

ich habe folgendes Problem, das ich alle Slices in meinem Lattice MachXO 
belege.


Number of SLICEs:             646 out of   640 (101%)
      SLICEs as Logic/ROM:    646 out of   640 (101%)
      SLICEs as RAM:            0 out of   480 (0%)
      SLICEs as Carry:         70 out of   640 (11%)


Wie könnte ich Slices als RAM benutzen, die bei mir gänzlich unbenutzt 
sind. Ich habe folgendes gefunden:

http://www.latticesemi.com/en/Support/AnswerDatabase/3/0/1/3014.aspx

Dort wird empfohlen RAM based shift registers zu verwenden um Logik 
einzusparen.
Gibt es ggf. Attribute (ramstyle/romstyle/bram_utilization) die dies 
ebenfalls ermöglichen?

Danke

von Duke Scarring (Gast)


Lesenswert?

stofferl schrieb:
> Wie könnte ich Slices als RAM benutzen, die bei mir gänzlich unbenutzt
> sind.
Indem Du (distributed) RAM beschriebst. Dein Design verwendet 
offensichtlich keinen distributed RAM bzw. nur BlockRAM.

Die sechs Slices wirst Du wohl anders einsparen müssen, damit Dein 
Design passt. Stell Dich schonmal drauf ein, noch etwas mehr Slices 
einsparen zu müssen, da sich 100% Auslastung üblicherweise nicht routen 
lassen.

Duke

von stofferl (Gast)


Lesenswert?

Hallo Duke,

vielen Dank für deine Antwort. Ich habe auch schon folgende Attribute 
gesetzt:

ramstyle = distributed
resource_sharing = 1
remove_duplicate_regs = 1

Hilft jedoch nicht wirklich viel. Ich versuche doch mal fertige RAM 
based shift registers (IPExpress) zuverwenden, anstatt Logik basierte. 
Diese RBSRs werden als RAM Slice verwendet.

Gruß

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

stofferl schrieb:
> Ich habe auch schon folgende Attribute gesetzt:
Man muss nicht nur ein RAM wollen, sondern man muss das Handbuch des 
Synthesizers lesen und die Beschreibung so ausführen, dass der auch ein 
RAM verwenden kann. Lass doch mal deine Beschreibung "deines" RAM 
sehen...

stofferl schrieb:
> ich habe folgendes Problem, das ich alle Slices in meinem Lattice MachXO
> belege.
Packen Wir es doch mal andersrum an: warum braucht deine Beschreibung 
diese Anzahl Slices? Könnte man die ein wenig optimieren und so Slice 
sparen? Dazu müsste man aber auch deinen Code sehen...

: Bearbeitet durch Moderator
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.