Forum: FPGA, VHDL & Co. ISE 8.1i: Codebestandteil wird wegoptimiert


von J. B. (scout)


Lesenswert?

Ich versuche derzeit einen Controller für ein DDR_SDRAM Interface mit 
einem Virtex-II FPGA zu entwickeln. Dabei habe ich die von Xilinx in der 
Application Note XAPP688C vorgeschlagene Schaltung zur Verzögerung der 
Strobe-Signale DQS in mein Design eingebunden.
Die Verzögerung wird durch die Hintereinanderschaltung von aus LUT 
gebildeten Multiplexern erreicht. Dummerweise wird gerade dieser 
Codebestandteil beim Mappen wegoptimimiert.
Kann man explizit angeben, dass diese Schaltung nicht optimiert wird, 
oder gibt es andere Möglichkeiten um eine Verzögerung einzubauen?

von T.M. (Gast)


Lesenswert?

Sicher, dass es erst beim Mapper passiert und nicht schon bei der 
Synthese? Im Development User Guide von Xilinx sind alle möglichen 
Kommandooptionen vom Mapper angegeben, da solltest du mal nachschauen. 
Vielleicht hilft die Option:

"...The –u option was specified on the MAP command line. If this option 
is specified, all unused logic is kept in the design..."

Sonst gibt es für das Synthesetool auch nen User Guide.

T.M.

von J. B. (scout)


Lesenswert?

Vielen Dank für die Antwort.
Bei der Synthese ist der Codebestandteil noch vorhanden, erst beim 
Mappen wird er entfernt. Dabei erscheint folgende Fehlermeldung im Map 
Report:

WARNING:MapLib:701 - Signal delay_in<4> connected to top level port 
delay_in<4> has been removed.


Die Option -u habe ich ausprobiert, hatte aber keinen Einfluss.

von Xenu (Gast)


Lesenswert?

Schau mal im Constraints Guide nach, KEEP glaub ich heisst das 
Constraint, das Du brauchst.

von T.M. (Gast)


Lesenswert?

Jap, dann wohl am besten die Dinger als Component einbinden und in der 
UCF-Datei festmachen. So wie Xena sagt, scheint es da ja was zu geben.

T.M.

von Sven J. (svenj)


Lesenswert?

Moin...

Willkommen im Club der Doofen.... als allererstes schmeiss die XApp weg. 
Hat mich auch einiges an Zeit gekostet, meine Diplomarbeit war auch ein 
DDRRam am V2. Sobald du dsa ganze Ding im Chip hast, stellst du fest das 
es nicht funktioniert.... gilt für eigentlich alle XApps zum Thema, 
keine kann funktionieren.

Besorg dir den Interface Generator, der spuckt fertige Cores nach deinen 
Vorgaben aus und die brauchst du dann nur noch einbinden.

--
 SJ

von J. B. (scout)


Lesenswert?

Sven Johannes wrote:
> Besorg dir den Interface Generator, der spuckt fertige Cores nach deinen
> Vorgaben aus und die brauchst du dann nur noch einbinden.

Ist ja alles recht und schön, aber der Interface Generator unterstützt 
mein FPGA nicht und in der hinsicht lässt sich auch nichts mehr machen. 
Das entsprechende Board ist schon entwickelt.

Aber die Sache mit dem KEEP hat funktioniert. Danke!


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.