Altera_Forum
Honored Contributor
15 years agocyc3 LVDS_RX for camera link
I want to instantiate an ALTLVDS_RX megafunction and an external PLL in my design for the purpose of deserializing camera link video.
The camera I am using runs at 65MHz for a pixel clock. I have attached a pic of the standard camera link settings. When I try to configure the ALTLVDS_RX megafunction for this purpose using the megawizard, I see this text in the info bar: Warning: Selecting to not register the outputs of the receiver Warning: will require that they be registered in the logic fed by the receiver. Info: Using the external PLL mode requires that Info: - The fast clock (running at data rate / 2) from the PLL feeds tx_inclock Info: - The slow clock (fast clock / DESERIALIZATION_FACTOR) from the PLL feeds tx_syncclock Info: - The inputs be pre-registered in the logic feeding the transmitter by a clock (running at data rate / DESERIALIZATION_FACTOR) Info: Using the external PLL mode requires that Info: - The fast clock (running at data rate / 2) from the PLL feeds rx_inclock Info: - The slow clock (fast clock / DESERIALIZATION_FACTOR) from the PLL feeds rx_syncclock Info: - The read clock (2 * fast clock / DESERIALIZATION_FACTOR) from the PLL feeds rx_readclock Info: - The outputs be registered in the logic fed by the receiver by the read clock. Info: The receiver starts capturing the LVDS stream at the fast clock edge. Can anyone tell me what each of the three clock rates should be for fast clock, slow clock, and read clock? It sounds like they should be: fast clock = data rate / 2, data rate = 7 * 65MHz fast clock = 227.5MHz?? slow clock = 65MHz?? read clock = 2 * fast clock / DESERIALIZATION_FACTOR = 65MHz read clock = 2 * 227.5 MHz / 7 = 65MHz?? Why the need for two 65MHz clocks here? Are they phase shifted from each other? By what amount? See the camera link serialization pattern attached. Thanks!