CDC Customizable Display Controllers - Overview
CDC is a fully Customizable Display Controller IP supporting the OpenWF display API specification. A number of features can be configured at synthesis time and programmed at run time. The display controller can be applied to e.g. FPGA systems with a resource optimized, application specific feature configuration or to ASIC projects applying a more generic feature set and thus more flexibility
The main functionality of CDC is reading images (layers) from memory, combining them on-the-fly e.g. by blending, cropping and windowing and generating a video output stream of the combined image.
On the output the controller provides a digital RGB signal with video data and signals for horizontal/vertical blank and synchronization. Optionally a digital component (YCBCR) output signal can be configured at synthesis time. The CDC’s output typically is then connected with the physical display output block like an HDMI our LVDS IP block or a Video DAC.
Application Example
In this example, images from two video cameras are transferred to frame buffers in memory using two CVIs (Configurable Video Input controller, another TES IP), while the internal CPU/GPU generates GUI elements to be used in the displayed image in a 3rd framebuffer. The CDC clips and scales the image stored in layer 2 and blends it with the main image on layer 1, using windowing to display it in the upper left corner, while adding some transparency to keep the occupied part of the main image visible. The GUI element is blended into the lower left corner, again using the transparency feature of the CDC.
The resulting image is transferred as RGB888 pixel stream to a Video PHY block, which provides a standard video display interface (e.g. MIPI, DVI, HDMI, ...) suitable for the attached monitor.
CDC Configurability
Based on a highly modular architecture the CDC-Family offers a wide range of features from CDC-200 providing basic functionality with each family member offering additional configurable feature extensions up to the flag-ship CDC-500 which supports output image rotation. The features are configurable at design-time and can be controlled at run-time via an simple basic driver for register agnostic control or a Khronos standard OpenWF Display API driver.
The following table outlines the set of configurable features for all CDC-Family members:
Feature | CDC-200 | CDC-300 | CDC-400 | CDC-500 |
---|---|---|---|---|
Layer Blending | x | x | x | x |
Windowing | x | x | x | x |
Gamma Correction | x | x | x | x |
Color Keying | x | x | x | x |
Dithering | x | x | x | x |
Layer CLUT | x | x | x | x |
RGB/Greyscale Input Formats | x | x | x | x |
RGB888 Output | x | x | x | x |
Mirroring (H & V) | x | x | x | x |
Dual View | x | x | x | |
Scaling | x | x | x | |
YCBCR Input Formats | x | x | x | |
YCBCR Output Formats | x | x | ||
Programmable Layer Blending Order | x | x | ||
Missed-Pixel Handling | x | x | ||
Single Frame Mode | x | x | ||
Dual CPU Support | x | x | ||
Frame CRC | x | x | ||
Rotation | x |
More information
For more information, evaluation kits and commercial quotations please contact graphics@ tes-dst.com