Hallo, hat einer Erfshrung mit LVDS-Übertragung mittel eines Spartan 3 ? Es geht darum, Videosignale mittels LVDS direkt auf einen Spartan 3 zu geben. Angeblich hat der FPGA bestimmte Pin-Kombinationen, die für LVDS geeignet sind. Hat jmd. Erfahrungen damit und kann mir mehr Informationen darüber geben (z.B. welche Pins dazu geeignet sind, ob es generell geeignet ist, störende Effekte etc.) ? Wie lese ich die LVDS-Signale dann aus (RGB-Werte) ? Danke und Gruß
Schau mal unter ibuf_selectio.pdf in deinem ISE Verzeichniss nach, dort sind dann die verschiedenen IO Buffer aufgelistet, die du je nach dem welches IO Format du benutzt in dein Design einbinden musst. component IBUF_selectIO port (O : out STD_ULOGIC; I : in STD_ULOGIC); end component; Das Auslesen geht so vonstatten wie du es gewöhnt bist. Der Spartan hat eine Reihe von Bänken, je nach größe des FPGA unterschiedlich viele. Du darfst nur ein bestimmtes IO Format auf einer Bank benutzen, sonst meckert die ISE beim place and route. Ich weiss allerdings nicht, ob nur bestimmte Pins einer Bank für LVDS geeignet sind. Am besten machst du mal ein Probedesign mit fast leerer Architectur. Du solltest allerding input pins lesen und Output pins mit einem Signal beaufschlagen. Die gelesenen Pins irgendwie auswerten , sonst werden die IO Buffer herrausoptimiert und am besten wieder auf die Ausgangsbuffer legen, sonst (Fehler bei Bitfile generation wenn ich mich nicht irre). Allerdings habe ich leider noch keine Erfahrung mit LVDS machen können. Deine Erkenntnisse diesbezüglich würden mich aber schon interessieren. G. Tobias
Moin... Es gibt vordefinierte Paare die als p und n des jeweiligen LVDS Buffers funktionieren. Wenn du die PACE Software von Xilinx benutzt kannst du irgendwo die Option "shof diff. pairs" anwählen. Im Pinout werden dann kleine Striche eingeblendet, das sind die Paare. Die Einschränkung der IO Stds bezieht sich meistens nur auf Versorgung und Termination. Also eine Spannung und eine Termination (oder keine) pro Pin. Die Components die du brauchst sind IBUFDS und OBUFDS => siehe Doku. Du solltest dich aber auf jeden Fall auch um Terminierung, Treiberanpassung und Leitungsimpedanz kümmern, sonst kannst du deine Signale schätzen, nicht einlesen! -- Sven Johannes
Hi FPGA-User, wenn Du LVDS mit dem FPGA benutzen willst, mußt Du auch dran denken, die speziellen VCCIO-Pins des FPGA's mit 1,8V zu versorgen (siehe PDF von Xilinx). Ich kann Dir aus eigener Erfahrung aber davon abzuraten die LVDS-Option des FPGAs zu nutzen, benutze lieber 'normale'-IOs und schalte dahinter LVDS-Treiber. Und wie von Sven schon angesprochen, vergiss nicht die LVDS-Signale abschliessen (meist um die 100Ohm)
Vieln Dank für die Beiträge, aber mir ist so einiges noch nicht klar: - benötige ich wirklich die 1,8V zur Versorgung ? Wozu dient diese Spannung ? Wo steht es, dass man diese Spannung braucht ? - gibt es irgendwelche application notes von Xilinx, in denen die Benutzung genauer beschrieben ist ? - wie lese ich die LVDS-Kanäle aus. Ich will RGB-Daten direkt an das FPGA übertragen(6Bit je Farbe über einen LVDS-Kanal und einmal Clock - also insgesamt benötige ich 4 LVDS-Kanäle) - wie und wo muss ich die Inputs definieren ? Schon mal vielen Dank
Moin... In dieser Reihenfolge: - Spartan 3 Platform FPGA Handbook Seite 21. Allerdings unterstützt ein S3 nur LVDS_25, also 2,5V an den Vcco, nur für Out. Wenn du nur lesen willst brauchst du die Sapnnungen wohl nicht. - Ja. Bei Xilinx lvds und ggf. spartan3 in die Suche klopfen und Feuer. - Siehe Protokoll deines Senders. Die Bits werden ja wohl in definierter Reihenfolgen auflaufen. CLK lieferst du mit, also hopp in die Register. - Instanziiere vier IBUFDS und ab dafür. Musst nur aufpassen das du die Eingänge des Buffers an passende Pins hängst. (Constraints) -- Sven Johannes
@FPGA-User: Du willst wahrscheinlich ein digitales Videosignal (DVI oder LVDS-Schnittstelle zum Notebook-TFT) einlesen. Vielleicht helfen dir die Datei im Anhang und www.mikrocontroller.net/attachment.php/215456/tft_xga_lvds.pdf
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.