Forum: FPGA, VHDL & Co. Wie kann man das Einfuegen von clock buffern unterbinden?


von Tom (Gast)


Lesenswert?

Hallo,

ich nutze das Webpack und sobald ein Signal als clock erkannt wird 
bekommt es einen clock buffer zugewiesen.

Wenn ich jetzt aber keinen clock buffer fuer diesen Eingang haben 
moechte, wie kann ich das dann unterbinden?

Kann man dies mit einem constraint im ucf file erreichen? Oder 
vielleicht direkt mit code im design (ich nutze VHDL)?

Vielen Dank schon mal fuer die Hilfe.
Tom

von Falk B. (falk)


Lesenswert?

@ Tom (Gast)

>ich nutze das Webpack und sobald ein Signal als clock erkannt wird
>bekommt es einen clock buffer zugewiesen.

Was recht sinnvoll ist.

>Wenn ich jetzt aber keinen clock buffer fuer diesen Eingang haben
>moechte,

Warum?

> wie kann ich das dann unterbinden?

>Kann man dies mit einem constraint im ucf file erreichen? Oder
>vielleicht direkt mit code im design (ich nutze VHDL)?

attribute clock_buffer: string;
attribute clock buffer of my_clock_input: signal is "ibuf";

Damit wird eine Normale Eingangspuffer an den Takt angeschlossen. Ist 
aber nicht empfehlenswert.

MFG
Falk

von me (Gast)


Lesenswert?

Falk du alte Socke, du hat ja Durchblick.
Wie lange arbeitest du schon mit den FPGA's? Für was setzt du die ein? 
Rein aus Interesse, bin auch ein FPGA LIebhaber :)

von Haarespalter (Gast)


Lesenswert?

Für welches synthese tool ist dieses attribut?

Andere realisierung: das Pad direkt instanziieren, dann mit
keep signal ode dont touch (attribute by synthese mit mentor) die 
automat. takterkennung in den Käfig sperren.

ucf könnte zu spät sein, wenn die synthese schon den den BUFG in die 
netzliste einfügt.

von Fred (Gast)


Lesenswert?

>Wenn ich jetzt aber keinen clock buffer fuer diesen Eingang haben
>moechte, wie kann ich das dann unterbinden?

Wozu? ISE nimmt ohnehin nur noch was verblieben ist.

von Falk B. (falk)


Lesenswert?

@ me (Gast)

>Falk du alte Socke, du hat ja Durchblick.

Wie durch Milchglas . . . ;-)

>Wie lange arbeitest du schon mit den FPGA's? Für was setzt du die ein?

Seit Anfang 2000. Hab bisher meist Sachen im Bereich Telekommunikation 
gemacht. Aber auch schon Bilderfassung per Laser.

@ Haarespalter (Gast)

>Für welches synthese tool ist dieses attribut?

XST, das Xilinxinterne in ISE.

MFG
Falk

von Tom (Gast)


Lesenswert?

Warum ich das moechte:

Ich arbeite gerade mit einem FPGA mit gewissen Restriktionen bezueglich 
der clock-Eingaenge. Das Ganze ist aufgespalten in Global clocks und 
right hand clocks und left hand clocks. Dort haengen (fast) auch 
ueberall clocks dran. Wenn XST jetzt ueberall versucht bufgmux zu 
instanziieren, weil es ja clocks sind gibt es Konflikte (Sowas wie: Wenn 
an dem LHCLK 3 schon genutzt wird kann GCLKx nicht auch gleichzeitig 
beutzt werden). Das ganze haengt damit zusammen wie die clockleitungen 
verteilt werden (da gibt es eine Stelle da kommen 16 clocks in einen mux 
aber in jede Seite des FPGAs gehen nur 8 raus und da muss man sich eben 
entscheiden welche man nutzt). Jetzt will ich also einfach das inbinden 
von bufgmux's bei den signalen wo es nicht wirklich drauf ankommt 
(langsame spi clocks und sowas) unterbinden damit der rest fuer die 
wichtigen frei bleibt.

Achso es ist ein Spartan 3 A DSP von XILINX

Danke fuer eure Antworten! :)

von Rick Dangerus (Gast)


Lesenswert?

Schau mal ob Du das im .xcf-File mit angeben kannst. Die .xcf's werden 
schon bei der Synthese mit beachtet.

Rick

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.