RAMDAC

A Brooktree RAMDAC

A RAMDAC (random-access memory digital-to-analog converter) is a combination of three fast digital-to-analog converters (DACs) with a small static random-access memory (SRAM) used in computer graphics display controllers or video cards to store the color palette and to generate the analog signals (usually a voltage amplitude) to drive a color monitor.[1] The logical color number from the display memory is fed into the address inputs of the SRAM to select a palette entry to appear on the data output of the SRAM. This entry is composed of three separate values corresponding to the three components (red, green, and blue) of the desired physical color. Each component value is fed to a separate DAC, whose analog output goes to the monitor, and ultimately to one of its three electron guns (or equivalent in non-CRT displays).[2]

RAMDACs became obsolete as DVI, HDMI, DisplayPort and other digital interface technology became mainstream, which transfer video data digitally (via transition-minimized differential signaling or low-voltage differential signaling) and defer digital-to-analog conversion until the monitor's pixels are actuated.

History

[edit]
IMS G171 RAMDAC on the VGA board

The term RAMDAC did not enter into common PC-terminology until IBM introduced the IBM VGA display adapter in 1987. The IBM VGA adapter used the INMOS G171 RAMDAC. The INMOS VGA RAMDAC was a separate chip, featured a 256-color (8-bit CLUT) display from a palette of 262,144 possible values, and supported pixel-rates up to approximately 30 Mpix/s.[3]

As clone manufacturers copied IBM VGA hardware, they also copied the INMOS VGA RAMDAC. Advances in semiconductor manufacturing and PC processing power allowed RAMDACs to add direct-color operation, which is a mode of operation that allows the SVGA-controller to pass a pixel's color value directly to the DAC-inputs, thereby bypassing the RAM lookup-table. Another innovation was Edsun's CEGDAC, which featured hardware-assisted spatial anti-aliasing for line/vector draw operations.

By the early 1990s, the PC chip industry had advanced to the point where RAMDACs were integrated into the display controller chip, thus reducing the number of discrete chips and the cost of video cards. Consequently, the market for standalone RAMDACs disappeared. The display controller chip itself may be mounted on an add-in-board or integrated into the motherboard core-logic chipset.

The original purpose of the RAMDAC, to provide a CLUT-based display mode, was supplanted by True Color display modes. Eventually, as digital display interfaces became mainstream, the RAMDAC became obsolete.

Design

[edit]

The size of each DAC of the RAMDAC is 6 to 10 bits. The SRAM's word length must be at least three times as large as the size of each DAC. The SRAM holds a color lookup table (CLUT). It usually has 256 entries (and thus an 8-bit address). If the DAC's word length is also 8 bits, we have a 256 × 24-bit SRAM which allows a selection of 256 out of 16,777,216 (16.7 million) possible colors for the display.[2] The contents of this SRAM can be altered when no pixel needs to be generated for transmission to the display, which occurs during the vertical blanking interval between every frame.

The SRAM can usually be bypassed and the DACs can be fed color directly by display data, for true color modes. This became the normal mode of operation since the mid-1990s, so the programmable palette was mostly retained only as a legacy feature to ensure compatibility with older software. Many later graphics cards could clock the RAMDAC much faster in true color modes, when only the DAC part without the SRAM is used.

Clock rate

[edit]

The pixel clock rate for a given output can be estimated with:[4]

[Pixels, horizontally, per line] × [lines, vertically, per display] × [1.4 factor for blanking] × [refresh rate].

The ability to drive transitions for sharp edges usually incurs, for the RAMDAC, a significant requirement in excess of the pixel clock.

As of 2006, the DAC of a graphics card ran at a clock rate of 400 MHz. The XGI Volari XP10 from 2006 ran at 420 MHz DAC. The highest documented DAC frequency ever achieved on a production video card for the PC platform is 550 MHz, set by BarcoMed 5MP2 Aura 76Hz by Barco.[5]

References

[edit]
  1. ^ Shen, John Paul; H. Lipasti, Mikko (2013). "3". Modern processor design : fundamentals of superscalar processors. Long Grove: Waveland Press. p. 154. ISBN 978-1478607830. OCLC 883168030.
  2. ^ a b This article is based on material taken from Random+Access+Memory+Digital-to-Analog+Converter at the Free On-line Dictionary of Computing prior to 1 November 2008 and incorporated under the "relicensing" terms of the GFDL, version 1.3 or later.
  3. ^ "Famous Graphics Chips: IBM's VGA". Retrieved 2024-04-13.
  4. ^ VESA's GTF calculation sheet
  5. ^ https://web.archive.org/web/20070527140116/http://www.barco.com/corporate/en/products/product_specs.asp?element=2600
[edit]