Gast
#3835861
Ausgangslage: Verwendeter FPGA: VIRTEX 5 Verwendete Software: ISE Ziel: Ein Datensignal mit einer Breite von 7 Bit (LVDS) liegt am FPGA an. Synchron zu diesem Datensignal liegt ein Clocksignal an einem Global Clock Pin des FPGA an. Es werden sowohl bei der steigenden als auch der fallenden Flanke des Clk-Signals Daten übernommen. Bei der steigenden Flanke werden die Even-Bits und bei der fallenden Flanke die Odd-Bits eingelesen und zu einem 14-Bit Wert zusammengesetzt. Ich mache das über zwei Prozesse. Ein Prozess für die steigende und einer für die fallende Flanke. Geschwindigkeit: Das Clocksignal hat eine Frequenz von 100 MHz (das heißt es werden alle 5ns jeweils 7 Bits eingelesen) Mein Vorgehen: Das Clocksignal wird über einen IBUFGDS eingespeist und das Datensignal über 7X IBUFDS. Jetzt ist meine Frage wie ich die Constraints setzen muss, damit das Timing passt. Ich habe mir hierzu das Timing Constraints User Guide hergenommen und entsprechend dem Beispiel von Seite 12 Constraints formuliert: NET "SysCLk" TNM_NET = "SysClk"; TIMESPEC "TS_SysClk" = PERIOD "SysClk" 10 ns HIGH 50%; OFFSET = IN 2.5 ns VALID 5 ns BEFORE "SysClk" RISING; OFFSET = IN 2.5 ns VALID 5 ns BEFORE "SysClk" FALLING; Ist das so korrekt? Muss ich die Dateneingangssignale nicht irgendwo noch angeben? Ich bin für Hinweise bezüglich der Richtigkeit meiner Gedankengänge dankbar. Habe ich etwas übersehen? Bin ich irgendwo auf dem Holzweg? Hier das Manual http://www.xilinx.com/support/documentation/sw_manuals/xilinx13_1/ug612.pdf
