fbpx
Wikipedia

Video display controller

A video display controller or VDC (also called a display engine or display interface) is an integrated circuit which is the main component in a video-signal generator, a device responsible for the production of a TV video signal in a computing or game system. Some VDCs also generate an audio signal, but that is not their main function.

Block diagram of a NEC µPD7220 graphics display controller

VDCs were used in the home computers of the 1980s and also in some early video picture systems.

The VDC is the main component of the video signal generator logic, responsible for generating the timing of video signals such as the horizontal and vertical synchronization signals and the blanking interval signal. Sometimes other supporting chips were necessary to build a complete system, such as RAM to hold pixel data, ROM to hold character fonts, or some discrete logic such as shift registers.

Most often the VDC chip is completely integrated in the logic of the main computer system, (its video RAM appears in the memory map of the main CPU), but sometimes it functions as a coprocessor that can manipulate the video RAM contents independently.

Video display controller vs. graphics processing unit

The difference between a display controller, a graphics accelerator, and a video compression/decompression IC is huge, but, since all of this logic is usually found on the chip of a graphics processing unit and is usually not available separately to the end-customer, there is often much confusion about these very different functional blocks.

GPUs with hardware acceleration started appearing during the 1990s.[citation needed] VDCs often had special hardware for the creation of "sprites", a function that in more modern VDP chips is done with the "Bit Blitter" using the "Bit blit" function.

One example of a typical video display processor is the "VDP2 32-bit background and scroll plane video display processor" of the Sega Saturn. Another example is the Lisa (AGA) chip that was used for the improved graphics of the later generation Amiga computers.

That said, it is not completely clear when a "video chip" is a "video display controller" and when it is a "video display processor". For example, the TMS9918 is sometimes called a "video display controller" and sometimes a "video display processor". In general however a "video display processor" has some power to "process" the contents of the video RAM (filling an area of RAM for example), while a "video display controller" only controls the timing of the video synchronization signals and the access to the video RAM.

The graphics processing unit (GPU) goes one step further than the VDP and normally also supports 3D functionality. This is the kind of chip that is used in modern personal computers.

Types

Video display controllers can be divided in several different types, listed here from simplest to most complex;

  • Video shifters, or "video shift register based systems" (there is no generally agreed upon name for these type of devices), are the most simple type of video controllers. They are directly or indirectly responsible for the video timing signals, but they normally do not access the video RAM directly. They get the video data from the main CPU, a byte at a time, and convert it to a serial bitstream, hence the technical name "video shifter". This serial data stream is then used together with the synchronization signals to output a video signal. The main CPU needs to do the bulk of the work. Normally these chips only support a very low resolution raster graphics mode.
  • A CRTC, or cathode-ray tube controller, generates the video timings and reads video data from RAM attached to the CRTC to output it via an external character generator ROM (for text modes) or directly to the video output shift register (for high resolution graphics modes).[1] Because the actual capabilities of the video generator depend to a large degree on the external logic, video generator based on a CRTC chip can have a wide range of capabilities, from simple text-mode only systems to high-resolution systems supporting a wide range of colours. Sprites, however, are normally not supported by these systems.
  • Video interface controllers are much more complex than CRT controllers, and the external circuitry that is needed with a CRTC is embedded in the video controller chip. Sprites are often supported, as are (RAM based) character generators and video RAM dedicated to colour attributes and pallette registers (colour lookup tables) for the high-resolution or text modes.
  • Video coprocessors have their own internal CPU dedicated to reading (and writing) their own video RAM (which may be shared with the CPU), and converting the contents of this video RAM to a video signal. The main CPU can give commands to the coprocessor, for example to change the video modes or to manipulate the video RAM contents. The video coprocessor also controls the (most often RAM-based) character generator, the colour attribute RAM, palette registers, and the sprite logic (as long as these exist of course).

List of example VDCs

Examples of video display controllers are:

Video shifters

  • The RCA CDP1861 was a very simple chip, built in CMOS technology (which was unusual for the mid-1970s) to complement the RCA 1802 microprocessor, it was mainly used in the COSMAC VIP. It could only support a very low resolution monochrome graphic mode.
  • The Television Interface Adaptor (TIA) is the custom video chip that is the heart of the Atari 2600 games console, a very primitive chip that relied on the 6502 microprocessor to do most of the work, also was used to generate the audio.

CRT Controllers

  • The Intel 8275 CRT controller was used in the Convergent Technologies AWS / Burroughs B20, along with some S-100 bus systems.
  • The Motorola 6845 (MC6845) is a video address generator first introduced by Motorola and used for the Amstrad CPC, and the BBC Micro. It was also used for almost all the early video adapters for the PC, such as the MDA, CGA and EGA adapters. The MDA and CGA use an actual Motorola chip, while the EGA has a custom IBM chipset of five LSI chips; one of those chips includes IBM's reimplementation of the CRTC, which operates like an MC6845 but differs in a few register addresses and functions so it is not 100% compatible. In all later VGA compatible adapters the function of the 6845 is still reproduced inside the video chip, so in a sense all current IBM PC compatible PCs still incorporate the logic of the 6845 CRTC.

Video interface controllers

Video coprocessors

  • The ANTIC (Alpha-Numeric Television Interface Circuit) was an early video system chip used in the Atari 8-bit family of microcomputers. It could read a "Display list" with its own built in CPU and use this data to generate a complex video signal.
  • The TMS9918 is known as the Video Display Processor (VDP) and was first designed for the Texas Instruments TI-99/4, but was later also used in systems like the MSX (MSX-1), ColecoVision, Memotech MTX series, and for the Sega SG-1000 and SC-3000. The Master System uses an enhanced VDP based on the TMS9918, and the Sega 315-5313 (Yamaha YM7101) VDP used in the Sega Genesis and some arcade machines is a further advancement of the Master System VDP with the original (inferior) TMS9918 modes removed.
  • The NEC μPD7220. Used in some high-end graphics boards for the IBM PC in the mid 80s, notably in products from Number 9 Computer Company.
  • The Picture Processing Unit was a video coprocessor designed by Ricoh for Nintendo's use in the Famicom and Nintendo Entertainment System. It was connected to 2048 bytes of dedicated video RAM, and had a dedicated address bus that allowed additional RAM or ROM to be accessed from the game cartridge. A scrollable playfield of 256×240 pixels was supported, along with a display list of 64 OBJs (sprites), of which 8 could be displayed per scanline.
  • The Yamaha V9938 is an improved version of the TMS9918, and was mainly used in the MSX2.
  • The Yamaha V9958 is the Video Display Processor (VDP) mainly used in the MSX2+ and MSX turboR computers.
  • The VLSI VS21S010D-L is a 128kB SPI/parallel SRAM with an integrated video display controller with variable-bit-depth pixels and a block-move blitter.
  • The Thomson EF936x series of Graphic Display Processor (GDP), which offers a draw rate of 1 million pixels per second and resolutions up to 1024×512.

Alternatives to a VDC chip

Note that many early home computers did not use a VDP chip, but built the whole video display controller from a lot of discrete logic chips, (examples are the Apple II, PET, and TRS-80). Because these methods are very flexible, video display generators could be very capable (or extremely primitive, depending on the quality of the design), but also needed a lot of components.

Many early systems used some form of an early programmable logic array to create a video system; examples include the ZX Spectrum and ZX81 systems and Elektronika BK-0010, but there were many others. Early implementations were often very primitive, but later implementations sometimes resulted in fairly advanced video systems, like the one in the SAM Coupé. On the lower end, as in the ZX81, the hardware would only perform electrical functions and the timing and level of the video stream was provided by the microprocessor. As the video data rate was high relative to the processor speed, the computer could only perform actual non-display computations during the retrace period between display frames. This limited performance to at most 25% of overall available CPU cycles.

These systems could thus build a very capable system with relatively few components, but the low transistor count of early programmable logic meant that the capabilities of early PLA-based systems were often less impressive than those using the video interface controllers or video coprocessors that were available at the same time. Later PLA solutions, such as those using CPLDs or FPGAs, could result in much more advanced video systems, surpassing those built using off-the-shelf components.

An often-used hybrid solution was to use a video interface controller (often the Motorola 6845) as a basis and expand its capabilities with programmable logic or an ASIC. An example of such a hybrid solution is the original VGA card, that used a 6845 in combination with an ASIC. That is why all current VGA based video systems still use the hardware registers that were provided by the 6845.

Modern solutions

 
ATi R300 chip block diagram. The display controller is labelled "display interface".

With the advancements made in semiconductor device fabrication, more and more functionality is implemented as integrated circuits, often licensable as semiconductor intellectual property core (SIP core). Display controller System In Package (SiP) blocks can be found on the die of GPUs, APUs and SoCs.[citation needed]

They support a variety of interfaces: VGA, DVI, HDMI, DisplayPort, VHDCI, DMS-59 and more. The PHY includes LVDS, TMDS and Flat Panel Display Link, OpenLDI and CML.[citation needed]

For example, a VGA-signal, which is created by GPU is being transported over a VGA-cable to the display controller. Both ends of the cable end in a VGA connector. Laptops and other mobile computers use different interfaces between the display controller and the display. A display controller usually supports multiple computer display standards.

KMS driver is an example of a device driver for display controllers and AMD Eyefinity is a special brand of display controller with multi-monitor support.

RandR (resize and rotate) is a method to configure screen resolution and refresh rate on each individual outputs separately and at the same time configure the settings of the windowing system accordingly.

An example for this dichotomy is offered by ARM Holdings: they offer SIP core for 3D rendering acceleration and for display controller independently. The former has marketing names such as Mali-200 or Mali-T880 while the latter is available as Mali-DP500, Mali-DP550 and Mali-DP650.[2]

History

In 1982, NEC released the NEC μPD7220, one of the most widely used video display controllers in 1980s personal computers. It was used in the NEC PC-9801, APC III, IBM PC compatibles, DEC Rainbow, Tulip System-1, and Epson QX-10.[3] Intel licensed the design and called it the 82720 graphics display controller.[4]

Previously, graphic cards were also called graphic adapters, and the chips used on these ISA/EISA cards consisted solely of a display controller, as this was the only functionality required to connect a computer to a display. Later cards included ICs to perform calculations related to 2D rendering in parallel with the CPU; these cards were referred to as graphics accelerator cards. Similarly, ICs for 3D rendering eventually followed. Such cards were available with VLB, PCI, and AGP interfaces; modern cards typically use the PCI Express bus, as they require much greater bandwidth then the ISA bus can deliver.

See also

References

  1. ^ M. Rasch, B. Bertelsons (1995). Scott Slaughter (ed.). PC Underground: Unconventional Programming Topics. US: Abacus Software Inc. p. 58-68. ISBN 978-1557552754. "Cathode Ray Tube Controller (CRTC) is responsible for generating the video signal and is programmable. CRTC-Registers bit meaning tables for VGA, EGA, CGA, Hercules, SVGA, Mode X."
  2. ^ "Initial support for ARM Mali Display Controller". Linux kernel mailing list. 2016-04-01.
  3. ^ Dampf, Guido (1986). "Graphics with the NEC 7220: Direct access with Turbo Pascal". Retrieved 27 July 2013. (Translation of "Grafik mit dem 7220 von NEC", mc, 1986, H11, pp. 54-65)
  4. ^ Changon Tsay (January 1, 1986). A graphics system design based on the INTEL 82720 graphics display controller. Dissertation. University of Texas at El Paso. pp. 1–152.

External links

  • Embedded Linux Conference 2013 – Anatomy of an Embedded KMS driver on YouTube KMS driver is a device driver for display controllers

video, display, controller, this, article, needs, additional, citations, verification, please, help, improve, this, article, adding, citations, reliable, sources, unsourced, material, challenged, removed, find, sources, news, newspapers, books, scholar, jstor,. This article needs additional citations for verification Please help improve this article by adding citations to reliable sources Unsourced material may be challenged and removed Find sources Video display controller news newspapers books scholar JSTOR December 2015 Learn how and when to remove this template message A video display controller or VDC also called a display engine or display interface is an integrated circuit which is the main component in a video signal generator a device responsible for the production of a TV video signal in a computing or game system Some VDCs also generate an audio signal but that is not their main function Block diagram of a NEC µPD7220 graphics display controllerVDCs were used in the home computers of the 1980s and also in some early video picture systems The VDC is the main component of the video signal generator logic responsible for generating the timing of video signals such as the horizontal and vertical synchronization signals and the blanking interval signal Sometimes other supporting chips were necessary to build a complete system such as RAM to hold pixel data ROM to hold character fonts or some discrete logic such as shift registers Most often the VDC chip is completely integrated in the logic of the main computer system its video RAM appears in the memory map of the main CPU but sometimes it functions as a coprocessor that can manipulate the video RAM contents independently Contents 1 Video display controller vs graphics processing unit 2 Types 3 List of example VDCs 4 Alternatives to a VDC chip 5 Modern solutions 6 History 7 See also 8 References 9 External linksVideo display controller vs graphics processing unit EditThe difference between a display controller a graphics accelerator and a video compression decompression IC is huge but since all of this logic is usually found on the chip of a graphics processing unit and is usually not available separately to the end customer there is often much confusion about these very different functional blocks GPUs with hardware acceleration started appearing during the 1990s citation needed VDCs often had special hardware for the creation of sprites a function that in more modern VDP chips is done with the Bit Blitter using the Bit blit function One example of a typical video display processor is the VDP2 32 bit background and scroll plane video display processor of the Sega Saturn Another example is the Lisa AGA chip that was used for the improved graphics of the later generation Amiga computers That said it is not completely clear when a video chip is a video display controller and when it is a video display processor For example the TMS9918 is sometimes called a video display controller and sometimes a video display processor In general however a video display processor has some power to process the contents of the video RAM filling an area of RAM for example while a video display controller only controls the timing of the video synchronization signals and the access to the video RAM The graphics processing unit GPU goes one step further than the VDP and normally also supports 3D functionality This is the kind of chip that is used in modern personal computers Types EditVideo display controllers can be divided in several different types listed here from simplest to most complex Video shifters or video shift register based systems there is no generally agreed upon name for these type of devices are the most simple type of video controllers They are directly or indirectly responsible for the video timing signals but they normally do not access the video RAM directly They get the video data from the main CPU a byte at a time and convert it to a serial bitstream hence the technical name video shifter This serial data stream is then used together with the synchronization signals to output a video signal The main CPU needs to do the bulk of the work Normally these chips only support a very low resolution raster graphics mode A CRTC or cathode ray tube controller generates the video timings and reads video data from RAM attached to the CRTC to output it via an external character generator ROM for text modes or directly to the video output shift register for high resolution graphics modes 1 Because the actual capabilities of the video generator depend to a large degree on the external logic video generator based on a CRTC chip can have a wide range of capabilities from simple text mode only systems to high resolution systems supporting a wide range of colours Sprites however are normally not supported by these systems Video interface controllers are much more complex than CRT controllers and the external circuitry that is needed with a CRTC is embedded in the video controller chip Sprites are often supported as are RAM based character generators and video RAM dedicated to colour attributes and pallette registers colour lookup tables for the high resolution or text modes Video coprocessors have their own internal CPU dedicated to reading and writing their own video RAM which may be shared with the CPU and converting the contents of this video RAM to a video signal The main CPU can give commands to the coprocessor for example to change the video modes or to manipulate the video RAM contents The video coprocessor also controls the most often RAM based character generator the colour attribute RAM palette registers and the sprite logic as long as these exist of course List of example VDCs EditSee also List of home computers by video hardware and Sprite computer graphics Examples of video display controllers are Video shifters The RCA CDP1861 was a very simple chip built in CMOS technology which was unusual for the mid 1970s to complement the RCA 1802 microprocessor it was mainly used in the COSMAC VIP It could only support a very low resolution monochrome graphic mode The Television Interface Adaptor TIA is the custom video chip that is the heart of the Atari 2600 games console a very primitive chip that relied on the 6502 microprocessor to do most of the work also was used to generate the audio CRT Controllers The Intel 8275 CRT controller was used in the Convergent Technologies AWS Burroughs B20 along with some S 100 bus systems The Motorola 6845 MC6845 is a video address generator first introduced by Motorola and used for the Amstrad CPC and the BBC Micro It was also used for almost all the early video adapters for the PC such as the MDA CGA and EGA adapters The MDA and CGA use an actual Motorola chip while the EGA has a custom IBM chipset of five LSI chips one of those chips includes IBM s reimplementation of the CRTC which operates like an MC6845 but differs in a few register addresses and functions so it is not 100 compatible In all later VGA compatible adapters the function of the 6845 is still reproduced inside the video chip so in a sense all current IBM PC compatible PCs still incorporate the logic of the 6845 CRTC Video interface controllers The Signetics 2636 and 2637 are video controllers best known for their use in the Interton VC 4000 and Emerson Arcadia 2001 respectively The MC6847 is a video display generator VDG first introduced by Motorola and used in the TRS 80 Color Computer Dragon 32 64 Laser 200 and Acorn Atom among others The MOS Technology 6560 NTSC and 6561 PAL are known as the video interface controller VIC and used in the VIC 20 The MOS Technology 6567 8562 8564 NTSC versions and 6569 8565 8566 PAL were known as the VIC II and were used in the Commodore 64 The MOS Technology 8563 8568 was used in the Commodore 128 8563 and Commodore 128D 8568 to create an 80 column text display as well as several high resolution graphics modes The Commodore 128 models included a VIC II to support Commodore 64 compatible video modes The MOS Technology 7360 text editing device TED was used in the Commodore Plus 4 Commodore 16 and Commodore 116 computers and had an integrated audio capability The Philips semiconductors SCC66470 was a VSC Video and Systems Controller used in conjunction with their 68070 Microcontroller e g in CD i systems Video coprocessors The ANTIC Alpha Numeric Television Interface Circuit was an early video system chip used in the Atari 8 bit family of microcomputers It could read a Display list with its own built in CPU and use this data to generate a complex video signal The TMS9918 is known as the Video Display Processor VDP and was first designed for the Texas Instruments TI 99 4 but was later also used in systems like the MSX MSX 1 ColecoVision Memotech MTX series and for the Sega SG 1000 and SC 3000 The Master System uses an enhanced VDP based on the TMS9918 and the Sega 315 5313 Yamaha YM7101 VDP used in the Sega Genesis and some arcade machines is a further advancement of the Master System VDP with the original inferior TMS9918 modes removed The NEC mPD7220 Used in some high end graphics boards for the IBM PC in the mid 80s notably in products from Number 9 Computer Company The Picture Processing Unit was a video coprocessor designed by Ricoh for Nintendo s use in the Famicom and Nintendo Entertainment System It was connected to 2048 bytes of dedicated video RAM and had a dedicated address bus that allowed additional RAM or ROM to be accessed from the game cartridge A scrollable playfield of 256 240 pixels was supported along with a display list of 64 OBJs sprites of which 8 could be displayed per scanline The Yamaha V9938 is an improved version of the TMS9918 and was mainly used in the MSX2 The Yamaha V9958 is the Video Display Processor VDP mainly used in the MSX2 and MSX turboR computers The VLSI VS21S010D L is a 128kB SPI parallel SRAM with an integrated video display controller with variable bit depth pixels and a block move blitter The Thomson EF936x series of Graphic Display Processor GDP which offers a draw rate of 1 million pixels per second and resolutions up to 1024 512 Alternatives to a VDC chip EditNote that many early home computers did not use a VDP chip but built the whole video display controller from a lot of discrete logic chips examples are the Apple II PET and TRS 80 Because these methods are very flexible video display generators could be very capable or extremely primitive depending on the quality of the design but also needed a lot of components Many early systems used some form of an early programmable logic array to create a video system examples include the ZX Spectrum and ZX81 systems and Elektronika BK 0010 but there were many others Early implementations were often very primitive but later implementations sometimes resulted in fairly advanced video systems like the one in the SAM Coupe On the lower end as in the ZX81 the hardware would only perform electrical functions and the timing and level of the video stream was provided by the microprocessor As the video data rate was high relative to the processor speed the computer could only perform actual non display computations during the retrace period between display frames This limited performance to at most 25 of overall available CPU cycles These systems could thus build a very capable system with relatively few components but the low transistor count of early programmable logic meant that the capabilities of early PLA based systems were often less impressive than those using the video interface controllers or video coprocessors that were available at the same time Later PLA solutions such as those using CPLDs or FPGAs could result in much more advanced video systems surpassing those built using off the shelf components An often used hybrid solution was to use a video interface controller often the Motorola 6845 as a basis and expand its capabilities with programmable logic or an ASIC An example of such a hybrid solution is the original VGA card that used a 6845 in combination with an ASIC That is why all current VGA based video systems still use the hardware registers that were provided by the 6845 Modern solutions Edit ATi R300 chip block diagram The display controller is labelled display interface With the advancements made in semiconductor device fabrication more and more functionality is implemented as integrated circuits often licensable as semiconductor intellectual property core SIP core Display controller System In Package SiP blocks can be found on the die of GPUs APUs and SoCs citation needed They support a variety of interfaces VGA DVI HDMI DisplayPort VHDCI DMS 59 and more The PHY includes LVDS TMDS and Flat Panel Display Link OpenLDI and CML citation needed For example a VGA signal which is created by GPU is being transported over a VGA cable to the display controller Both ends of the cable end in a VGA connector Laptops and other mobile computers use different interfaces between the display controller and the display A display controller usually supports multiple computer display standards KMS driver is an example of a device driver for display controllers and AMD Eyefinity is a special brand of display controller with multi monitor support RandR resize and rotate is a method to configure screen resolution and refresh rate on each individual outputs separately and at the same time configure the settings of the windowing system accordingly An example for this dichotomy is offered by ARM Holdings they offer SIP core for 3D rendering acceleration and for display controller independently The former has marketing names such as Mali 200 or Mali T880 while the latter is available as Mali DP500 Mali DP550 and Mali DP650 2 History EditIn 1982 NEC released the NEC mPD7220 one of the most widely used video display controllers in 1980s personal computers It was used in the NEC PC 9801 APC III IBM PC compatibles DEC Rainbow Tulip System 1 and Epson QX 10 3 Intel licensed the design and called it the 82720 graphics display controller 4 Previously graphic cards were also called graphic adapters and the chips used on these ISA EISA cards consisted solely of a display controller as this was the only functionality required to connect a computer to a display Later cards included ICs to perform calculations related to 2D rendering in parallel with the CPU these cards were referred to as graphics accelerator cards Similarly ICs for 3D rendering eventually followed Such cards were available with VLB PCI and AGP interfaces modern cards typically use the PCI Express bus as they require much greater bandwidth then the ISA bus can deliver See also EditList of home computers by video hardware List of color palettesReferences Edit M Rasch B Bertelsons 1995 Scott Slaughter ed PC Underground Unconventional Programming Topics US Abacus Software Inc p 58 68 ISBN 978 1557552754 Cathode Ray Tube Controller CRTC is responsible for generating the video signal and is programmable CRTC Registers bit meaning tables for VGA EGA CGA Hercules SVGA Mode X Initial support for ARM Mali Display Controller Linux kernel mailing list 2016 04 01 Dampf Guido 1986 Graphics with the NEC 7220 Direct access with Turbo Pascal Retrieved 27 July 2013 Translation of Grafik mit dem 7220 von NEC mc 1986 H11 pp 54 65 Changon Tsay January 1 1986 A graphics system design based on the INTEL 82720 graphics display controller Dissertation University of Texas at El Paso pp 1 152 External links EditEmbedded Linux Conference 2013 Anatomy of an Embedded KMS driver on YouTube KMS driver is a device driver for display controllers Retrieved from https en wikipedia org w index php title Video display controller amp oldid 1151592111, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.