Forum: FPGA, VHDL & Co. Korrekte Beschaltung bei Taktausgabe


von MicroController-Ingenieur (Gast)


Lesenswert?

Ich baue ein PICOBLAZE Design mit einem Spartan FPGA von Xilinx und muss 
hierbei einen Takt ausgeben. Richtig ist, es mit einem doubled data rate 
Register zu machen, soweit ist mir das bekannt. Wenn ich das 
DDR-Zellen-Makro beschalten möchte, habe ich die Möglichkeit, den Takt 
mit 0/1 zu erzeugen, wobei ich einen negierten und einen nicht-negierten 
Takt einspeisen muss.

Nun die Frage: Brauchen diese beiden internen FPGA-Takte (66/133 MHz) 
einen BUFG? Ich erzeuge sie mit einer programmierbaren PLL aus dem 
Systemtakt von 50 MHz. Sie werden sonst nicht benutzt und haben einmal 0 
Grad Phase und einmal 180 Grad Phase.

Ich baue alles derzeit völlig ohne Buffer, weil mir die BUGs ausgehen 
und erhalte lediglich eine Warnung wegen Clock Skew Problemen. Auch 
erzeugte ich den negierten Takt schon aus einem Inverter, was hier 
offenbar akzeptiert wird, vereinzelt aber auch schon angemeckert wurde. 
Im Xilinx User Forum wird sowohl die eine, als auch die andere Art als 
machbar erwähnt.

von Christian R. (supachris)


Lesenswert?

Die internen Takte brauchen nach der PLL natürlich einen BUFG, sonst 
können die lustigsten Timing Probleme herauskommen, die sich auch noch 
bei jedem Durchlauf ändern. Für den inv. Clock Eingang des ODDR reicht 
in der Regel der Inverter auf dem IOB, kannst du also lokal invertieren, 
aber dann wirklich nur für das ODDR.

von MicroController-Ingenieur (Gast)


Lesenswert?

Dass heisst die IO-Zelle hat einen clock intervert mit drin? Das war mir 
nicht klar, erklärt aber warum es klaglos geht. Allerding hat er genau 
da ja auch schon gemeckert, dass die Verwendung eines Inverters in der 
clock line nicht i.O sei.

von Christian R. (supachris)


Lesenswert?

Das kommt sicher auf die Architektur an. Welchen Spartan nimmst du denn? 
Beim S3 stehts so im User Guide, beim kranken S6 kann´s durchaus sein, 
dass es auch an der Ecke wieder eine Beschränkung gibt.

von MicroController-Ingenieur (Gast)


Lesenswert?

Spartan S3(E) ist in Gebrauch, der wird es auch erst mal bleiben.

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.