Forum: FPGA, VHDL & Co. Probleme mit dem Routing von negiertem Takt


von TG (Gast)


Lesenswert?

Für einen ODDR2 buffer brauche ich bekanntlich einen Takt und dessen 
Negation. Bislang führte ich immer den Takt an den C0 und ein weiteres 
mal über ein "not" an den C1, mitsamt der klassischen Belegung.

Problem: ISE bemängelt, dass diesen ODDR2 kein Buffer instnaziert sei 
und man dies per constraint tun solle.

Frage: Wo ist das Problem? Laut Xilinx Guide ist der Anschluss so i.O. 
Liegt es wieder an einer neuen Version?

Wenn ich es richtig sehe, muss der C1 über not ebenfalls einen BUFG 
bekommen. Muss ich den jetzt per Hand instanziieren?

Wie mache ich das per "constraint"?

von Duke Scarring (Gast)


Lesenswert?

Welche ISE Version hast Du?
Und wie lautet die genaue Fehlermeldung?
Ist es eine Warnung oder ein Fehler?
Wo wird Dein Takt C0 generiert?

Ich hab das die Tage erst verwendet: ISE 13.3 und Spartan6. Da ging da 
lokale negieren problemlos.

Duke

von TG (Gast)


Lesenswert?

13.4 und er meckert (als warning) in dem Synthesis Report, dass nicht 
alle Takte mit Buffern versehen sind und man das als constraint 
einstellen müsse.

Ferner kommt "not locally static Expression für den Anschluss des C1" da 
dort ja der Takt als "not clockx" anliegt.

von Mr. Zulu (Gast)


Lesenswert?

TG schrieb:
> Ferner kommt "not locally static Expression für den Anschluss des C1" da
>
> dort ja der Takt als "not clockx" anliegt.

Einige Xilinx Versionen haben scheinens eine andere Umgehensweise mit 
solchen Themen, bei einigen ist es ein error, bei einderen eine warning. 
Frage : Funktioniert das design?

von TG (Gast)


Lesenswert?

Also ist der HDL-Advisor, der das bemängelt. Ignorieren?

von Christian R. (supachris)


Lesenswert?

Hast du das not direkt in der Port Map stehen? Oder einfach ein Signal, 
was not Takt ist? Zweiteres sollte problemlos gehen, steht auch im User 
Guide. Ich verwende fast immer einen DCM, da kommt schon der 180° Takt 
raus.

von J. S. (engineer) Benutzerseite


Lesenswert?

Würde ich auch meinen, nimm eine PLL und generiere einen 180 Grad Takt, 
den Du an den C1 Eingang heranführst.

Im Grunde kann er eigentlich gar nichts anderes bauen. Seltsamer weise 
spuken die Xilinx-Tools da manchmal rum. In den 14er Versionen scheint 
einiges restriktiver zu sein, da hatte ich auch schon mal den Fall, dass 
er was nicht bauen wollte.

von daniel__m (Gast)


Lesenswert?

Christian R. schrieb:
> Hast du das not direkt in der Port Map stehen?

Ich denke auch, dass dort der Hund begraben liegt.
Wenn der Takt vorher per Signalzuweisung invertiert wird, erkennt der 
Mapper das und nutzt die IOB-internen Clock-Inverter (zumindest bei 
14.4).

Jürgen S. schrieb:
> nimm eine PLL und generiere einen 180 Grad Takt

Finde ich "mit Kanonen auf Spatzen geschossen". Hier nicht notwendig und 
PLLs gibt es nicht wie Sand am Meer.


gruß

von J. S. (engineer) Benutzerseite


Lesenswert?

daniel__m schrieb:
> Finde ich "mit Kanonen auf Spatzen geschossen". Hier nicht notwendig und
> PLLs gibt es nicht wie Sand am Meer.
Der 180 Grad-Ausgang ist bei (fast) jeder PLL kostenlos dabei :-) und 
irgend eine PLL muss er verwendet haben, und den pos-Takt zu generieren.

daniel__m schrieb:
> nutzt die IOB-internen Clock-Inverter
Das ist Chip-abhängig, wie ich unlängst nochmal ausdrücklich erfahren 
durfte. Einige (möglicherweise ältere) Chips ziehen in der Tat einen 
180Grad Takt an das DDR und neuere SW-Versionen packen es irgendwie 
nicht. Ich hatte da auch schon den Fall, dass er das partout nicht 
machen wollte.

Bei den letzten Designs kommt aber nur ein Info, jedenfalls bei ISE 14.

Von welchem Chip reden wird konkret?

von T.G. (Gast)


Lesenswert?

Also ich lasse das nun auf igno, da es ja von der Funktion her geht. 
Allerdings würde mich auch interessieren, wie er das nun genau baut. 
Gibt es diesbezüglich von Xilinx Unterlagen?

von Duke Scarring (Gast)


Angehängte Dateien:

Lesenswert?

T.G. schrieb:
> Allerdings würde mich auch interessieren, wie er das nun genau baut.
Dann öffne Dein Design mal mit dem FPGA Editor, der mit der ISE dabei 
ist. Das Programm sieht zwar altbacken aus, aber Du kannst in jede LUT 
reinschauen.

Duke

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.