Hallo, ich habe ein paar Verständnisfragen zu DCM unter Xilinx. Ich habe in meinerm Projekt eine DCM Modul generiert mit dem ich aus einem Referenztakt verschieden andere Takte ableiten kann. Soweit alles klar. An die IOs des DCM Bausteins kommen allerdings noch Buffer. Welche Aufgabe haben die genau? Des Weiteren ist mir der Unterschied zwischen diesem DCM Modul und einer PLL nicht ganz klar. Machen die nicht beide das gleich? Gruß Stefan
Stefan M. schrieb: > An die IOs des DCM Bausteins kommen allerdings noch Buffer. Welche > Aufgabe haben die genau? Innerhalb eines FPGAs werden Taktsignale über spezielle, schnelle Leitungen (Netze) verteilt. Taktsignale gehen meist an viele FFs, sind also stark belastet und werden deshalb hardwaremäßig anders realisiert als normale Verbindungsleitungen. Diese Buffer sind die Schnittstelle zwischen DCM und so einem Taktnetz. > > Des Weiteren ist mir der Unterschied zwischen diesem DCM Modul und einer > PLL nicht ganz klar. Machen die nicht beide das gleich? Eine PLL funktioniert analog, eine DCM digital.
Ist das DCM Modul denn speziell nur von Xilinx oder gibts das auch von anderen Herstellern?
Unter dem Namen DCM gibt es dies meines Wissens nach nur bei Xilinx. Jeder Hersteller fährt wahrscheinlich aus patentrechlichen Gründen mit einem eigenem Namen. Obwohl alle Hersteller so etwas ähliches haben, so ist genau dies einer der Punkte, die eine Design nichtportabel machen. Bei jedem Hersteller ist die Instanzierung unterschiedlich, man benötigt unterschiedliche Bausteine, Parameter, hat unterschiedliche Ausgänge usw.
Bei DCMs muss man aufpassen: Die kann man teilweise auf krumme Mul/Div hin parametrieren und der CoreGen gibt einem die gewünschte Frequenz auch an, aber das verkrüppelte Xilinx baut nicht das, was es vorgibt.
>aber das verkrüppelte Xilinx baut nicht das, was es vorgibt. Klar, es baut das, was DU vorgibst :-) >Diese Buffer sind die Schnittstelle zwischen DCM und so einem Taktnetz. Was benutzt er eigentlich, wenn man keine Buffer instanziiert? Er MUSS doch an die FF-Eingänge und die sind hw-mäßig von Clock-Netzen her verdrahtet. Bei Xilinx ist das sowieo lustig: Ich habe es mal erlebt, daß er komplett wirre Taktnetze gebaut hat, nur weil man es sich er laubt hat, mit einem "Nebentakt" ohne DDR auf einen Pin zu gehen.
J. S. schrieb: >>Diese Buffer sind die Schnittstelle zwischen DCM und so einem Taktnetz. > Was benutzt er eigentlich, wenn man keine Buffer instanziiert? Er MUSS > doch an die FF-Eingänge und die sind hw-mäßig von Clock-Netzen her > verdrahtet. Nö, die FF-CLK Eingänge können "zur Not" auch vom normalen Routing-Netzwerk versorgt werden. Allerdings hat das dann gravierende Seiteneffekte, wie du ja selbst schreibst: > Bei Xilinx ist das sowieo lustig: Ich habe es mal erlebt, daß er > komplett wirre Taktnetze gebaut hat, nur weil man es sich er laubt hat, > mit einem "Nebentakt" ohne DDR auf einen Pin zu gehen. Wenn man sich den Aufbau des IOB anschaut, wird das auch klar. Gibt man den CLK direkt aus, dann muss er durch den kombinatorischen Pfad. Daher die DDR-FF am CLK-Ausgang.
>dann muss er durch den kombinatorischen Pfad
Geht bei Designs < 30MHz prima.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.