1 Video Color Space Converter
Video color space converters are mixed signal circuits that convert video signals from one color space such as RGB to another color space such as YCrCb utilizing high speed digital logic, ADCs, and DACs.
This application note provides a brief overview of color space conversion and the development of a single chip mixed signal ASIC color space converter implemented on a Triad Semiconductor VCA-6160 platform.
2 Color Space Introduction
Many video applications require converting video and image content from one color space to another. Images and motion images (video) have utilized a wide variety of color spaces including: RGB, YCrCb, HSI, and other formats to represent the colors within the image. Each of these color space representations has its own set of advantages and disadvantages. For example, RGB is often used for the most demanding applications where ultimate color fidelity must be maintained. Any given color that the human eye can see may be represented by a combination of the primary colors (Red -R, Blue -B, and Green -G). The human eye doesn’t actually see equally well in the different color bands with our human-vision system optimized for the red, green bands but not quite as sensitive to changes in blues. Scientist and engineers looking for was to reduce the bandwidth and/or bit rate of a video system have created other color spaces (and sampling spaces) that reduce the amount of blue information in a system while maintaining a subjectively high picture quality. Furthermore, human vision is more highly tuned to changes in brightness (black and white or gray-scale changes) than it is to changes in hue (changes from one color or another with the same brightness). Therefore, many video systems sub-sample the color information (chrominance) while transmitting the black and white (luminance) in full resolution. This sub-sampling is often applied to luminance-chrominance color space systems such as YCrCb where Y represents the luminance information and Cr and Cb are color difference signals that represent the chrominance information. In these systems all of the Y samples are used but every other color sample is dropped. These systems are referred to as 4:2:2 sampling. The 4:2:2 nomenclature signifies that for every 4 Y samples only 2 Cr and 2 Cb samples are saved. Owing to the bandwidth saving benefits of these different image formats different video equipment will adopt different color space encodings. Interoperability between such equipment often requires a device to convert the output of one video device in a given color space to the color space needed as input for the down stream device. Some examples of color space conversion are the converting of the RGB video output from a computer VGA card to YCrCb input on a TV monitor. The opposite conversion path is also common where a video device such as a DVD player outputs YCrCb and the video needs to be converted to RGB to drive a monitor.
3 Color Space Conversion Math
Color space conversion is a matrix operation which is uniquely defined for conversion from one color space to another. For example, YCrCb data may be derived from RGB data by the following transformation:
[ Y ] [ 0.299 0.587 0.114 ] [ R ] [ Cr ] = [ 0.596 -0.275 -0.321 ] [ G ] [ Cb ] [ 0.212 -0.523 0.311 ] [ B ]
These conversions are performed as digital multiplication and addition utilizing fixed-point multipliers and summation circuits as shown below:

Figure 1 - RGB to YCrCb Digital Matrix Math
Depending on the technology used to implement the digital matrix math, different clock rates may be supported and differing amounts of pipelining may be required to obtain the desired sample rate through the matrix operation.
While this matrix math function is relatively straight-forward a real color space conversion system requires an analog interface to accept the incoming analog signals in RGB-space and to output the analog YCrCb signals. Based-band video signals have analog bandwidths from a few megahertz for low resolution imaging systems upwards of 80 MHz for HDTV resolution systems. High fidelity video systems require from 6 to 10 bits of resolution per baseband analog channel. Therefore, an RGB system needs digital to analog (DAC) and analog to digital (ADC) components with 6 to 10-bits of resolution and sampling rates in the tens of MHz.
A complete color space converter system needs not only high-speed digital logic to perform the matrix math operation but high-speed ADC and high-speed DAC functions to accept analog RGB and output analog YCrCb. A complete mixed signal color space converter system on a chip (SOC) might look as follows:

Figure 2 - RGB to YCrCb Mixed Signal ASIC on a Triad VCA Platform
This application specific integrated circuit (ASIC) implementation of the color space converter requires digital logic, 3 10-bit, 30 MSPS ADCs, and 3 10-bit, 30 MSPS DACs, plus a PLL and clock driver circuitry. While the digital portion of the color space converter can be implemented in an FPGA without a major engineering expense, such a solution will require discrete ADCs and DACs driving up the system parts count, bill-of-materials (BOM) cost, manufacturing cost, power consumption, and will lower overall reliability of the system. Implementing the color space converter as a mixed signal full-custom ASIC is an option but this option is viable for only the highest volume products and requires significant engineering and fabrication expenditures. Full custom ASIC design is expensive and time consuming and often requires multiple re-spins at the foundry to correct problems associated with the integration of analog and digital elements.
Modification and enhancements to the above design might include the addition of more pipeline stages for higher speed operation, the ability to change the coefficients on in the matrix section to support conversions to other color spaces. Allow for YCrCb to RGB conversion and RGB to YUV conversion. A further enhancement that is possible with the mixed signal resources within a Triad VCA is the inclusion of an NTSC or PAL encoder that would allow for RGB to NTSC or YCrCb to NTSC/PAL conversion.
4 Low-Cost, Low-Risk Mixed Signal ASIC Development
An alternative implementation to the FPGA / discrete and full-custom ASIC options is the use of a mixed signal via configurable array (VCA). The VCA combines the positive attributes of both the FPGA and full-custom devices. A VCA is a mixed signal structured ASIC device that combines silicon-proven analog and digital resources onto a single semiconductor die. These mixed signal resources are then overlaid with a global routing fabric. The VCA platform is then partially processed at the foundry up through some of the metal routing layers. Wafers containing partially processed VCA die are then staged at the foundry awaiting customization. VCA platforms are configured by a single mask layer that defines vias between the globally defined routing fabric. Vias make connections between different metal routing layers thereby interconnecting and configuring the various digital and analog resources within a platform.
VCA platforms contain a wide range of useful mixed signal resources including:
- High Speed Analog to Digital Converters
- High Speed Digital to Analog Converters
- PLLs
- Analog Tiles Containing
- Op-Amps (Low Power, Low Noise, Wide Band, Fully Differential)
- Capacitor Arrays
- Resistor Arrays
- Switch Arrays (pass gates, SPST, SPDT)
- Transistor Arrays
- Temperature Sensors, Band-Gaps, Voltage References
- Logic Tiles containing from 4,000 to 200K ASIC gates
- Distributed RAM (single port and dual port)
- Non-Volatile Memory
- ROM
- Configurable Digital I/O
- Configurable Analog I/O
- Isolated Analog and Digital Power
- Shielded analog and digital routing
The complete RGB to YCrCb mixed signal color space converter circuitry can be implemented on a single Triad VCA-6160 platform. The VCA-6160 platform is shown below and contains:
Digital Resources
- 160K ASIC Gates
- 216Kb Dual-Port RAM (216 1Kbit RAMs)
- 4 200 MHz PLL
- 160 Configurable Digital I/O
- 3.3V Digital Operating Voltage
Analog Resources
- 10-bit, 30-MSPS Current Steering DACs
- 3 10-bit, 30-MSPS Pipelined ADCs
- 24 Fully Differential (FD) Op-Amp Tiles (48 FD Op-Amps)
- 12 General Purpose (GP) Op-Amp Tiles (24 GP OTAs)
- 4 10-bit, 1-MSPS R2R DACs
- 2 8-bit, 1-MSPS ADC
- Temperature Sensor
- Band-Gap, Voltage Reference Network

Figure 3 - Triad VCA-6160 Platform
5 Design Approach
The digital portion of the color space converter algorithm is created using Verilog to describe the RGB to YCrCb matrix math operations. This portion of the design is then simulated using Mentor Modelsim to verify the correct functionality of the digital portion of the design. The analog portion of the design is captures in Mentor Design Architect using analog primitives from Triad’s mixed signal design kit (MDK). The resultant analog design of ADCs and DACs is simulated using a Spice simulator coupled with Triad Spice macro-models that are also provided in the MDK. The next step in creating the design database is to synthesize the digital portion of the design using any of a number of industry-standard synthesis programs. This process maps the HDL RTL description of the design into Triad digital primitives contained within a structural Verilog netlist. The analog portion of the design which is represented by a Spice netlist is processed using Triad software to convert the Spice netlist into a structural Verilog netlist representing the analog portion of the design. The analog and digital Verilog netlists are then merged into a single mixed signal structural Verilog netlist. This netlist represents the instantiation and interconnection of all of the digital and analog resources used within the design. The mixed signal netlist is then provided as input to ViaPath(TM) a via only place and route program which automatically places and routes both the digital and analog portions of the design. The output of the ViaPath(TM) router is a single via layer describing the vias needed to configure and interconnect the entire VCA-6160 platform. This single mask layer is then sent to the foundry to be processed against staged VCA-6160 wafers to create a mixed signal ASIC color space converter IC.

Figure 4 - Triad VCA Design Flow
6 Summary
Video and imaging applications are by nature composed of high speed analog and digital circuits. Many such applications have been prototyped and even taken into low volume production using FPGAs and discrete analog devices. As cost, power, and performance pressures come to bare on such products converting the design to a single-chip, low cost, low power, high performance mixed signal ASIC is an obvious choice. An obvious choice except for the large development schedule, high NRE, and major risk associated with a typical full-custom mixed signal ASIC development. Using Triad’s VCA-6160 platform a designer can quickly, easily, with low risk, and low development cost create optimized.