Display Parallel Interface (DPI) and RGB are two names for the same thing: parallel output to a display.  This is not so much a standard as a simple way of doing things. One pixel is transferred per clock cycle, up to 24 bits wide. Also clock, control signals, HSync, VSync, and often Blank, are transmitted at the same time. Hackaday article [21].

Flat Panel Display Link (FPD-Link), confusingly also called LVDS, was released by National Semiconductor in 1996 for sending images from laptops to flat panel displays. It sends each RGB color on a separate differential wire pair at a higher frequency.

Transition-minimized Differential Signaling (TMDS) is the physical layer used by DVI and HDMI.  TMDS uses current-mode logic with open-collector drivers. GateMate LVDS can drive TMDS for low DVI resolution output, but the TMDS and LVDS protocols are not really compatible. For higher frequencies a bridge is needed.

DVI runs on top of the TMDS physical layer. DVI is a free standard for transmitting video. DVI allocates one pair to each color, and one pair to the clock. DVI has horizontal and vertical sync signals, and an empty frame around the image (the porch). DVI encodes 8 bits of color in 10 bits. DVI can run at speeds from 24.5Mhz (640*480 @60Hz) (easy to debug) up to 161+ Mhz (1600 × 1200 @ 60 Hz). Dual Channel DVI supports twice as much data, and can run at higher frequencies.

There are many DVI output solutions for FPGAs, but a shortage of DVI input solutions for FPGAs. SiPeed has an undocumented LVDS driven DVI in/out board [13] for their Tang Primer 25K. It includes a DVI output demo, but no DVI input demo. There is a closed source Xilinx DVI input solution, and a low bandwidth DVI input solution for the ECP5 ULX3M boards.

HDMI is a proprietary superset of DVI and includes audio inserted into that empty frame (front and back porch). Neither DVI nor HDMI are compressed signals. Hackaday article [19].

DisplayPort uses Low Voltage Differential Signaling, It has at least 4 unidirectional data channels, and a half duplex bidirectional auxiliary channel for command and control. DisplayPort is packet based and more complex than DVI. There are 4 displayPort repositories on github. The Parreto/DisplayPort repository appears mature, and is free for internal use.

Embedded DisplayPort (eDP) is a display panel interface standard for portable and embedded devices. It can have fewer wires than DisplayPort, making it an even more complex protocol. Hackaday article [21].

MIPI Display Serial Interface (MIPI-DSI) drives displays and is simpler than MIPI-CSI.  DSI requires fewer wires, does not include camera control and can be uni-directional.   FPGAs which do not support MIPI-CSI may be able to support MIPI DSI, at least the parallel version.  While the official MIPI-DSI spec is also not freely available, the protocol is well described here [15 ] and here [6]. Hackaday article [20].




Built with the Forest WIki.
User contributed content is licensed under a Creative Commons CC By 4.0 License.