12-20-2018 05:57 AM
I have a project that I need to get camera data with lvds protocol and display the input on an oled screen. Problem is, I cannot find any evaluation board with lvds port support. Yet, I have found that I might use gtx tranceiver pins to read lvds signals.
1- Is there any specific board that let's me to get lvds signals with only its dedicated lvds port?
2- If I can use gtx tranceiver pins, how it should be done? Is there an ac/dc coupling board that specificly designed for this job and which evaluation board that I can use with this coupling board?
I would appreciate if I could get an quick answer.
Thanks in advance,
12-20-2018 04:56 PM
Almost all of our Evaluation Boards have FPGAs with several LVDS pins available.
I would advice towards a board that already has a certain connector or useful designs available.
What camera are you using?
12-20-2018 05:56 PM
How fast is the LVDS?
For most cameras that I've seen, it's under about 1Gbps per lane, which means that you can use SelectIO pins - most devices have 100+ of these. The normal connector for these is FMC, which gives you a massive number of pins and is LVDS-friendly (ie it will handle the high-speed LVDS signals). This is definitely the cheapest and easiest way to go - you have a lot of freedom in which chip you use and which pins you connect to.
For very fast cameras, you may need to use the GTs. On most evaluation kits those are also available on the FMC ports, but there aren't very many on each chip and they're pretty power-hungry.
12-21-2018 01:27 AM
What do you mean with several lvds pins? Are you referring to Xadc?
If yes, I have a 30 pin lvds with 8 differential tx pairs, so I don't think these pins would be enough for the camera I will use.
If no, could you please show me an example of pins on any evaluation board that I can physically connect(via jumpers or some kind) LVDS?
I don't have the knowledge about how many bits do pixels contains, but I'm guessing that 1 pixel will contain 24 bits. From 1080p resolution and 60 fps it should make 373ish Mbps per lane. Hope my calculation is okay.
So, I'm guessing I can use SelectIO pins with FMC connector. But this raises more questions for me.
Firstly, bit number of a pixel would affect the type of FMC I should use, wouldn't it? From what I see in fmc cards list there isn't any FMC which supports 24 bit resolution. If that's correct, can I not use FMC to link my LVDS? Or does ''bit resolution'' part indicate to bits per lane, and with 8 pairs, I have 3 bit resolution?
Secondly, I have no idea which FMC is the right one for me given that I have 30 pins. I'm intending to use AC701 board.
Sorry about beginner level questions, I'm fairly new to the LVDS. I would appreciate if you correct my wrongs.
12-21-2018 06:51 PM
I believe the AC701 board would be a good fit. I'll answer your questions with that board in mind.
The AC701 uses an Artix-7 FPGA. These FPGAs have both high-performance (HP) and high-range (HR) I/O banks, and both HP and HR support LVDS. You can read more about the IO Resources in Chapter 1 of the SelectIO User Guide:
Of the many pins that are LVDS compliant in the Artix-7 FPGA used on AC701, 58 pairs are routed to the FMC connector. You can read more about that in page 57 of the AC701 User Guide:
Just as an example, take a look at this Application Note, which uses a VITA-2000 camera, with LVDS interface, to connect to a different Xilinx board through an FMC adapter:
12-24-2018 05:04 AM
Might be easiest if you just tell us what the camera sensor is.
Most cameras would be 10-bit or 12-bit per pixel. You get 24-bit colour out at the end (3x 8-bit values for R, G, and B) but since each pixel on the camera can only measure a single colour you only get a single value from that. To take an easy example, consider the Sony IMX291 (because I can find a full datasheet for that). This has eight LVDS lanes, plus an LVDS clock - so nine LVDS pairs, or 18 pins in total. From the datasheet, I can see that in 8-channel LVDS mode, at 60Hz, the data rate will be 222.75Mbps per LVDS pair. This is well within the capability of any Xilinx FPGA from the last ten years.
Pretty much any of the FMC-supporting development kits can handle this, but my pick would be the ZCU104 - the cheapest of the Zynq UltraScale+ boards. You will have to develop your own FMC card to connect the camera sensor to the board (and also to provide an appropriate power supply, voltage level translation, etc). LVDS is not something that you can do with a couple of jumper wires to a breadboard; if you want to do that then stick to a sensor that can provide a low-speed parallel CMOS output. The IMX291 can do that too, but only at 30fps.
The ZCU104 FMC port provides 34 LVDS pairs, which is easily enough for this project.