FPGA differential clock Verwendung

Gast #3113281
Lesenswert?

Hallo,

ich habe gerade recherchiert, dass ich mit einer IBUFDS-Primitive den 
differentiellen Takt eines FPGA-Boards als single-ended Takt benutzen 
kann.
Geht das wirklich so ohne Weiteres, oder gibt es irgendwelche 
Einschränkungen?

Konkret geht es um das Spartan-6 Board SP601, das mit einem 200 MHz 
Differenzial-Oszillator bestückt ist, aber dagegen "nur" einen 27 MHz 
Single-ended-Oszillator bietet.... und ich hätte gerne einen System-Takt 
von 100 MHz.

Im SP601 User Guide kann ich bis auf die Angabe eines Frequenz-Jitters 
von +- 50 ppm (genau die Obergrenze für meine Anwendung) keinen Nachteil 
der Lösung mit dem differentiellen Oszillator. Wäre genau dieser Jitter, 
falls zu groß, der ausschlaggebende Grund dafür stattdessen den 
single-ended Sockel mit einem 100 MHz Oszillator zu bestücken?

MfG
#3113342
Lesenswert?

Du musst sogar den IBUFGDS (IBUFDS ist füre Daten, IFUFGDS für Takt) 
verwenden, denn im FPGA gibts keine differenziellen Signale. Du kannst 
natürlich genauso gut auch einen 100MHz Oszillator auf den Sockel 
stecken. Aber 100MHz auf dem IC-Sockel. Naja, nimm lieber den fest 
verlöteten 200MHz Oszillator und teile den Takt mit einem DCM auf 100MHz 
runter.
Gast #3113378
Lesenswert?

Danke für deine Antwort!

Das heißt wenn ich einen 50 MHz und einen 100 MHz Takt haben will, die 
miteinander synchronisiert sind, brauch ich nur den differenziellen 200 
MHz - Takt in einen IFUFGDS geben, den so generierten single-ended Takt 
in einen DCM mit CLKDV_DIVIDE = 4 und CLKFX_MULTIPLY = 2 geben und dann:

CLKDV des DCM ---> clk_50
CLKFX des DCM ---> clk_100

Kann das jemand bestätigen? :)
#3113419
Lesenswert?

Nicht ganz. Die Frequenz des CLKFX ergibt sich aus Eingang * 
CLKFX_MULTIPLY / CLKFX_DIVIDE. Also z.B. CLKFX_MULTIPLY = 1 und 
CLKFX_DIVIDE = 2 ergeben 100MHz am CLKFX Ausgang bei 200MHz Eingang. Der 
CLKDV Ausgang ist unabhängig davon und wird mit dem CLKDV_DIVIDE Generic 
aus der Eingangsfrequenz herunter geteilt.
Gast #3113475
Lesenswert?

Aja, danke! Also CLKDV_DIVIDE = 4, CLKFX_DIVIDE = 2 und CLKFX_MULTIPLY = 
1

Und um meiner Anforderung an die Phasengleichheit gerecht zu werden, 
habe ich noch die Vorgabe der Feedback-Schleife auf den CLK0-Ausgang 
entdeckt.

Vielen Dank!
Gast #3113625
Lesenswert?

Gibt es ansonsten noch irgendwelche Nachteile dieser Lösung zu einem 
single-ended 100MHz-Oszillator? Denn der "langsame" single-ended 
Oszillator wäre der einzige Punkt, bei dem Bedenken gegen das 
SP601-Board aufgekommen sind....
#3113725
Lesenswert?

Wieso Nachteile? Und wieso Bedenken? Der 27MHz oszillator ist 
austauschbar, auch da gehen notfalls 100MHz einzuspeisen. Auf EMI kommts 
ja bei einem derartigen Demoboard eh nicht an. Der kleine 16er Spartan 
ist aber sehr knapp, weiß ja nicht, was du vorhast, aber da geht nicht 
allzu viel mit. Hast du nicht das Geld für das SP605 Board?
Gast #3113779
Lesenswert?

In der Dokumentation einer ähnlichen Anwendung wurden die Fitter Results 
mit max. 6000 FFs bzw. 7000 LUTs angegeben, also sollte da noch genug 
Spielraum sein! Und ich benötige ausser GPIOs nur ein Ethernet-PHY.
#3113997
Lesenswert?

Was hat die Lizenz mit dem kleinen Board zu tun? Oder willst du diese 
verdongelte Lizenz nehmen, die da immer dabei ist und auf das 
entsprechende Board gelockt? Beim SP605 und 601 kannst du auch WebPack 
nehmen, aber da ist wie schon geschrieben nur ein abgespeckter MB drin. 
Ansonsten brauchst du die System oder Embedded Edition.
Gast #3114417
Lesenswert?

Ok danke für deine Infos!

Das würde dann sowohl das SP601 als auch das SP605 Board nicht 
betreffen, weil das WebPack alle Spartan6 von den 4ern bis zu den 75ern 
unterstützt.

Unter Berücksichtigung der bisherigen Erkenntnisse in diesem Thread 
scheine ich für meine Anwendung mit dem SP601 + einer EDK-Lizenz wohl 
noch am günstigsten wegzukommen.

Freue mich natürlich trotzdem über jede weitere Anregung!
Gast #3114735
Lesenswert?

Beides nein! Aber begrenzte Ressourcen vom Arbeitgeber für dieses 
Projekt.

Allerdings ist das Projekt auch zeitlich auf ein paar Monate 
begrenzt....
Das heißt mit der Eval-Version durchschnorren wäre durchaus eine Option!

Sind da die gleichen IP-Cores dabei als bei der kostenpflichtigen? Und 
lässt sich der License Manager einfach mit einem neuen Benutzerkonto 
abspeisen für eine neue Installation auf dem gleichen Rechner?
Gast #3114902
Lesenswert?

Prspct schrieb:
> Sind da die gleichen IP-Cores dabei als bei der kostenpflichtigen?
Ja, wobei einige IP-Cores noch extra Lizenzen brauchen.

> Und
> lässt sich der License Manager einfach mit einem neuen Benutzerkonto
> abspeisen für eine neue Installation auf dem gleichen Rechner?
Geht auch mehrfach mit dem selben Benutzerkonto...

Prspct schrieb:
> inklusive zwei Microblaze-Cores
Das klingt mir immer noch hochgradig nach Gebastel ohne ordentliches 
Systemkonzept. Was können zwei Microblaze, was einer nicht kann? Und 
wenn es am Geld hapert, wieso, nimmt man nicht einen externen 
Mikrocontroller?

Siehe die Diskussion nebenan: 
Beitrag "Re: teure FPGAs - welche Verwendung?"

Duke
Gast #3114920
Lesenswert?

Hallo Duke!

Ich benutze einen Microblaze, für den openPowerlink Protokoll-Stack.
Ich habe nur gesagt, dass es Fitter-Ergebnisse gibt, wo mit zwei 
Microblazes immer noch genug Ressourcen am FPGA frei sind, wegen den 
Bedenken von Christian bezüglich Platz am 16er Spartan.

Lg
Gast #3114924
Lesenswert?

Prspct schrieb:
> Ich benutze einen Microblaze, für den openPowerlink Protokoll-Stack.
> Ich habe nur gesagt, dass es Fitter-Ergebnisse gibt, wo mit zwei
> Microblazes immer noch genug Ressourcen am FPGA frei sind, wegen den
> Bedenken von Christian bezüglich Platz am 16er Spartan.
Ah. Ok. Und Du hast auch sichergestellt, daß die wichtigen Ausgänge auch 
verwendet werden?!
Nicht das Dir die Synthese alles wegoptimiert und Du das größte Design 
in den kleinsten FPGA bekommst, nur weil es keine Ausgangssignale hat...

Duke
Gast #3120978
Lesenswert?

Prspct schrieb:
> Hat vielleicht noch irgendjemand Erfahrungen zu berichten über die
> Verwendung von MicroBlaze nur mit der EVAL EDK-Lizenz? Irgendwelche
> Einschränkungen / Schwierigkeiten?
M.E. besteht die einzige Einschränkung der Eval-Version in der 
Laufzwitbegrenzung auf 30 Tage.

Schwierigkeiten? Ich hatte Schwierigkeiten meine eigene Logik elegant an 
den Microblaze zu koppeln...

Duke

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren