Video Monitor

advertisement
Video Monitor
• Uses raster scanning to display images
– Beam of electrons illuminates phosphorus dots on the
screen called pixels. Starting at the top of the screen,
the gun fires electrons from the left side to the right in a
horizontal row, briefly shuts off, and returns to the left
side of the screen to begin a new row.
– Horizontal retrace – the time period when the gun is off
between rows.
– After the last row is drawn, the gun turns off and moves
to the upper left corner of the screen to start all over
again (vertical retrace)
• Interlaced monitor scans every other line until it
reaches the bottom, returns to the top and scans all
other lines. Non-interlaced – has less flicker
Cathode Ray Tubes
• Most common display type
Vertical Deflection
Cathode
Electron Beam
Horizontal Deflection
Grid
Phosper
Raster Scan
Beam directed in lines
(scan lines) across screen.
Dots are created by
turning the beam on &
off.
During retrace, the beam
is off.
Horizontal retrace is
when beam returns to
left edge
Vertical retrace is when
beam returns to upper
left corner.
Active lines
Retrace lines
• Raster line – horizontal line of video
information that is displayed on screen
• 640x480 display has 480 raster lines, 640
pixels per line. Pixel is smallest subdivision
on line.
Horizontal, Vertical Syncs
Horizontal
Sync
Horizontal
oscillator
15.75 Khz
Horizontal
amplifier
CRT
Vertical
Sync
Vertical oscillator
Vertical amplifier
60 hz
Video amplifier
Video
Input
Video Monitor
• Clarity determined by several factors:
– Dot pitch – distance between adjacent pixels
• .26 average – higher numbers >more distance
• Horizontal and vertical frequencies – the speed at
which horizontal lines are drawn and the time it
takes to draw all lines on the screen.
The horizontal sweep controls the number of lines on the
screen
Sweep across
screen (slow),
drives horizontal
deflector
Horizontal Retrace (fast), moves beam back to left edge of screen.
The vertical sweep controls how fast each screen is
displayed.
Sweep down the
screen, (drives
vertical deflector)
Vertical Retrace moves beam back to top left corner
Color Monitors (cont)
• Analog RGB Monitor
– Analog signals (0-0.7v)
– Infinite number of colors available (generally, finite #
are generated – 256K, 16M, 24M)
– Typically a DAC (digital-to-analog converter used) – 6bit DAC for each video signal to generate 64 different
voltage levels between 0V and 0.7V (64 red, 64 green,
64 blue = 256k different colors available)
– 15-pin connector (red,green,blue, red gnd, green gnd,
blue gnd, horizontal retrace, vertical retrace, pin 9
blocked,color detect, monochrome detect)
– Speed of DAC is critical – most displays require an
operating conversion time of 25ns to 40ns max.
• 7-bit converters can display 2M colors (128x128x128)
• 8-bit converters can display 16M colors (256x256x256)
How many lines on screen?
• Let Horizontal sweep = 15.75Khz
• Let Vertical sweep = 60 hz
– Num lines = horizontal/vertical = 15750/60 = 262.5
• These numbers are for standard North America
broadcast television
– Half line allows next field (next 262.5 lines) to be
offset by one half line (even & old fields). Two
fields make one frame
– Gives an interlaced display of 524 lines refreshed at
30 hz
• Human eye can detect flicker at 45 Hz - don’t notice
flicker on TV because of image types
How many Dots on screen?
• Video input controls whether beam on or
not
• How fast we can turn beam on/off during
horizontal trace time
• Monitors use internal clock to sample video
signal
– Monochrome - only one line for video signal
– Digital RGB - three digital lines (Red, Green, Blue)
• Gives 8 colors (a 4th line, an intensity signal, can be used to give
16 colors)
– Analog RGB - three analog lines, each driven by 8bit DAC - gives 256 * 256 * 256 = 2 24 colors
VGA Timing (640 dots x 480 lines)
Horizontal Sync = 31.5 Khz, Vertical Sync = 60 Hz
Internal Monitor clock (Dot Clock) for latching video signal is
25.175 Mhz
#max dots per line = Dot Clock Freq/ Horizontal Sync
= 25.175 Mhz / 31.5 Khz = 800 Dots
Only can use 640 dot times out of possible 800 for display because
we need black areas on left/right edges and time for horizontal
retrace.
#max lines per screen = Horizontal Sync/Vertical Sync
= 31.5 Khz / 60 hz = 525 lines
Only 480 lines usable, need blank areas on top/bottom, time for
vertical retrace
Horizontal Sync Timing
31.75 us (31.5 Khz)
756
659
Horizontal
retrace
799 0
639 640
755
659
Left
Border
Display
Right
Border
755
Next Line
800 dot times per line
Counter can be used to keep track of horizontal screen
position.
Vertical Sync Timing
16.67 ms ( 60 hz)
495
493
Vertical
retrace
524 0
479 480
494
493
Top
Border
Display
494
Bottom
Border
525 line times per screen
Counter can be used to keep track of vertical screen
position.
Next
Screen
Video Resolution
• Set by software
• Limited by the capacity of the video graphics
adapter and the amount of video memory.
• Expressed as the number of horizontal pixels,
followed by the number of vertical pixels.
–
–
–
–
–
640 x 480 (standard VGA)
800 x 600 (super VGA)
1024 x 768 (extended VGA)
1152 x 864
1280 x 1024
• # of simultaneous colors supported is between
256(28 ) and 16 million (224)
Other resolutions
• 800 x 600
– Dot clock 36 Mhz
– Horizontal Sync 35.15 Khz
– Vertical Sync 56 hz
• 1024 x 768
– Dot clock 64.142 Mhz
– Horizontal Sync 48.3 Khz
– Vertical Sync 60 hz
• Allow about 20% of horizontal trace time for
borders, retrace
• 6% to 8% of vertical trace time for borders,
retrace
Video Resolution
• Resolution determines amount of memory
required for the video interface card.
– 640 x 480 x256 colors(8-bits per pixel)
• 640x480 bytes or 307,200 bytes required
– 800 x 600 x 16M colors (SVGA) 24 bits/pixel
• 800x600x24bits/8 or 1.4MB (2MB video card)
– 1024 x 768 x 16M colors
• 1024x768x3 or 2.5MB (use 4MB video card)
What drives video signal?
• Every dot clock time for visible pixels, need to
determine value of video signal
– For monochrome, 1 bit per pixel (black or white,
on or off)
– For Digital RGB, 4 bits per pixel (R,G,B,
Intensity)
– For Analog RGB, N bits per R,G,B value where
each RGB value can have 2N distinct values
• The memory that defines the screen contents is
called the display memory or frame buffer.
Memory Calculations
• 800x 600 x 24 bit color – how much memory?
800 x 600 x 24 bits/pixel = 11520000 bits
= 1440000 bytes = 1406 Kbytes = 1.4
Mbytes
2 Mb video card fine for this resolution/color
1280 x 1024 x 24 bits = 3.75 Mbytes
Need 4 Mbyte Video card
Display Memory Characteristics
• Accessed at high data rates
• Will need to accessed by two sources
– CPU which will be doing read/writes to random
locations
– Video signal driver which will be reading memory
locations in a fixed pattern (the scan pattern)
• Can use either SRAM, DRAM, SDRAM or
specialty graphics memory to implement the
graphics memory.
• Graphics memory usually on same board as rest
of video logic
Memory Access
Video Card
CPU
Write Mostly,
Random
Access
Video Controller
Video
Memory
Read Only,
Sequential Access
CRT
Video controller must arbitrate between its accesses and CPU
accesses. CPU connection to card can either be via system
bus (I.e. PCI bus) or dedicated connection (Advanced
Graphics Port).
Video Memory
• The PC has a memory-mapped video display.
Each screen position occupies a separate memory
address. The video memory is special high speed
VRAM (video RAM).
• In color text mode, VRAM is at B8000
• In color graphics mode, VRAM is at A0000.
• DOS applications typically write text and graphics
directly to video display buffer – much faster than
using built-in DOS subroutines.
• Windows applications do not use direct video
memory access because it corrupts the built-in
redrawing of the screen by Windows directly.
What type of Memory for Video?
• Early cards used SRAM because of simple interface
(no refresh, no DRAM controller needed), and because
of low memory size requirements ( a few Kbytes)
• As colors/video memory size increased, began using
DRAM for density/cost reasons
– Some special DRAMs appeared (called Video DRAMs) that
had dual port access – parallel input/output for CPU, serial
output for CRT. Died out because of cost reasons.
• Memory choice today is Synchronous DRAM since 3D graphics cards need 16 Mbytes and up
– Some 3D cards performance is limited by speed of DRAM –
even DDR-DRAM not fast enough.
Video RAM
• VRAM – most video adapters (can be a
separate board plugged into an expansion
slot, or it may be integrated on the
motherboard)
– 4-8MB standard
– Optimized for storing color pixels
– Dual-ported
• One port can continuously refresh the display while
the other port writes data to the display. Results in
lower eye strain than with DRAM
2D Graphics
• 2D graphics operations are very simple
– 2D graphics operations required by ‘window’ type
Graphic User Interfaces
• Block moves – memory to memory copy of rectangular
areas on screen
– Implements window movement
• Block Fills (fill rectangular area on screen)
• Hardware support for cursor operation
– As cursor moves over screen pixels under cursor are not
damaged
• Hardware support for Sprite movement/collision
detection
– Sprite is rectangular group of pixels representing an object
– Used by 2-D games
Animation
• To produce animation on a screen, successive
‘frames’ are displayed in which screen objects are
in slightly different positions in each frame.
• The area of memory that the video controller is
currently displaying on screen is the active Frame
Buffer.
– Most cards support two frame buffers. The CPU
writes to the 2nd frame buffer to prepare the next
frame.
– When the next frame is ready, the 2nd frame buffer
becomes the active Frame buffer and the 1st frame
buffer is used to create the next frame.
• The rate at which new frames are produced is
called the Frame Rate (not the same as Video
Windows RAM
• Optimized for video graphics displays.
• Generally outperforms VRAM, allowing
screen to be refreshed more quickly.
Synchronous Graphics RAM
• Single ported RAM used on video
accelerator cards.
• Two video memory pages can be opened at
the same time.
• Able to clear memory quickly
• Well-suited to 3-D applications
Video Palettes
• Video generation circuit is used to generate VGA
video. Each color is generated with an 18-bit
digital code (6 bits red, 6 bits green,6 bits blue)
• 18 bit code is applied to the DAC. The address
input selects one of the 256 colors stored as 18-bit
binary codes. Thus 256 colors out of a possible
256K colors are allowed to be displayed at one
time.
• 18-bit code stored in video display RAM VRAM
is used to specify a color
Download