Ich habe einen AD-Wandler, der serielle LVDS-Signale abgibt. (16 Bit + Takt). In Quartus wollte ich einen LVDS Transceiver instanziieren, finde aber keinen für 16 Bit. Muss ich da zwei 8-Bitter nehmen ? Wie speise ich den Takt ein? Der Wandler hat eine interne PLL, mit der er exakt wandelt, den würde ich gerne benutzen. Der kommt aber auch über LVDS - wie schließe ich den an? Wie ich es sehe, muss der an den Takteingang des SERDES, aber wie bekomme ich aus dem LVDS-Paar einen einzigen Takt ?
>Ich habe einen AD-Wandler, der serielle LVDS-Signale abgibt. >wollte ich einen LVDS Transceiver instanziieren, Du kannst entweder einen Sender oder einen Empfänger einsetzen. Willst Du beides, musst Du zwei Komponenten benutzen. > finde aber keinen für 16 Bit. Muss ich da zwei 8-Bitter nehmen ? Sieht so aus. Ich nehme an, daß das die Zellen nicht können. Allerdings habe ich das ausprobiert und sehe, daß auch bei Verwendung von Logikzellen vom MegaWiz aus nicht mehr als 10 Bits auf einen Schlag umzuwandeln sind, was ich nun nicht kapiere. Mit 2 x 8 Bit müsste es aber gehen. Hast eben die doppelte Taktrate, zumindest auf einer Zwischenstufe. >Wie speise ich den Takt ein? Der Wandler hat eine interne PLL, Das haben viele, weil die besser sind, als FPGA-PLLs. >Der kommt aber auch über LVDS - wie schließe ich den an? Du nimmst einen der beiden Pins. >aber wie bekomme ich aus dem LVDS-Paar einen einzigen Takt ? siehe oben
>Mit 2 x 8 Bit müsste es aber gehen. Hast eben die doppelte Taktrate, >zumindest auf einer Zwischenstufe. ok , soweit geht mir das ein. Mir ist aber noch nicht klar, wie ich dann zu einem Takt komme? Muss ich die LVDS-Pins selber abfragen oder gibt es da eine Instanz dafür? Oder route ich einfach den p auf ein Clocknetz ?
Ich habe das immer noch nicht raus, wie ich mit den beiden LVDS Pins umgehe- was muss man da instanzieren, um sein Einzelsignal zu erhalten?
Im VHDL Design hast Du nur den einen Pin. Die Zuweisung erfolgt über die Bufferdeklaration als LDVS. Die Synthese sagt Dir dann schon, wenn Du den n nicht oder falsch angeschlossen hast. Was mich mal interessieren würde: Kann ich die LVDS-Pins auch "per Hand" verarbeiten? MAcht das überhaupt Sinn?
Arbeite dich mal in dieses XAPP ein: http://www.xilinx.com/support/documentation/application_notes/xapp866.pdf (den link zur zip findeste im Dokument) funktioniert super, 16Bit mit sogar 4 Kanälen. allerdings ist im Schieberegister ein Fehler enthalten, da fehlt ein (n-1). Bei mir läufts mit nem 4x12Bit ADC und 20MS der in LVDS sendet wunderbar. Deine Daten haste dann parallel vorliegen. gruß
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.