Forum: FPGA, VHDL & Co. UCF FIle Angabe von Konstanten


von René D. (Firma: www.dossmatik.de) (dose)


Lesenswert?

Ich habe zwei Boards mit unterschiedlichen Bestückungen.
Das Design läuft auf beiden. Zum Wechseln muss ich das UCF-File 
austauschen das ist aufgrund der anderen Pinbelegung Pflicht.
Ich habe auch unterschiedlichen Taktfrequenzen, die ich automatisch im 
Design berechne. Dafür habe ich im

entity   top is
   generic (board_clk_freq:= integer:=27E6;


Kann man eine Konstante für das VHDL-File oder so ein generic im UCF 
auch setzten?

Dann müsste ich nicht immer an zwei Files was ändern. Ich habe es auch 
schon mal vergessen und dann sucht man sich einfach blöde.

von daniel__m (Gast)


Lesenswert?

hi,

eine Möglichkeit wäre, während der Synthese per file_open und write 
ein UCF-File zu erzeugen/updaten, welches später dann verwendet wird.

von Christian R. (supachris)


Lesenswert?

Da das UCF File erst bei ngdbuild, also nach der Synthese eingelesen 
wird, gehts es zumindest nicht direkt. Wieso machst du nicht einfach 2 
Projekte und legst in den Synthese-Einstellungen die Generics fest? Das 
kann man in den Process Properties einstellen. Übersetzen musst du das 
Projekt ja sowieso komplett getrennt für die beiden Boards.

von FPGA-Progger (Gast)


Lesenswert?

2 boards, 2 designs, 2 Projekte - alles andere ist unnötiges 
Gewurschtel. Trennung bringt mehr Arbeitstempo, als das gemeinsame 
Bearbeiten.

von Christian R. (supachris)


Lesenswert?

Die Quellcodes können und sollten deswegen ja trotzdem in einem 
gemeinsam genutzten Ordner liegen....mit Generics ist das ja bis ins 
Top-Level hindurch machbar.

von René D. (Firma: www.dossmatik.de) (dose)


Lesenswert?

Christian R. schrieb:
> Die Quellcodes können und sollten deswegen ja trotzdem in einem
> gemeinsam genutzten Ordner liegen....mit Generics ist das ja bis ins
> Top-Level hindurch machbar.

Genau so habe ich es. Da ich noch hart code und auch bei der Entwicklung 
Fehler passieren und man anschließend den Fehler suchen muss, ist es 
schon angenehm die möglichen Fehler zu reduzieren.

UCF heisst ja "user constrain file". Da sollte doch ein constrain auch 
in den User Code beambar sein.

von Christian R. (supachris)


Lesenswert?

Ich lass mir solche Generics immer mit einem assert false durch die 
Sythese ausgeben, da kann man schnell mal schauen, was denn nun 
eigentlich wirklich synthetisiert wurde. Ansonsten gibts ja noch 
Synthesis Constrints File, aber ob man da Generics angeben kann, weiß 
ich nicht.

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.