82815 GMCH
R
144
Datasheet
4.8.
Internal Graphics Device
4.8.1.
3D/2D Instruction Processing
The GMCH contains an extensive set of instructions that control various functions including 3D
rendering, BLT and STRBLT operations, display, motion compensation, and overlay. The 3D
instructions set 3D pipeline states and control the processing functions. The 2D instructions provide an
efficient method for invoking BLT and STRBLT operations.
The graphics controller executes instructions from one of two instruction buffers located in system
memory: Interrupt Ring or Low Priority Ring. Instead of writing instructions directly to the GMCH’s
graphics controller, software sets up instruction packets in these memory buffers and then instructs the
GMCH to process the buffers. The GMCH uses DMAs to put the instructions into its FIFO and executes
them. Instruction flow in the ring buffer instruction stream can make calls to other buffers, much like a
software program makes subroutine calls. Flexibility has been built into the ring operation permitting
software to efficiently maintain a steady flow of instructions.
Batching instructions in memory ahead of time and then instructing the graphics controller to process the
instructions provides significant performance advantages over writing directly to FIFOs including: 1)
Reduced software overhead, 2) Efficient DMA instruction fetches from graphics memory, and 3)
Software can more efficiently set up instruction packets in buffers in graphics memory (faster than
writing to FIFOs).
Figure 8. 3D/2D Pipeline Preprocessor
DMA
FIFO
Instr
Parser
3D Instructions (3D state,
3D Primitives, STRBLT,
Motion Compensation)
2D Instructions
cmd_str.vsd
3D
Engine
BLT
Engine
Instruction access and decoding
Low Priority Ring
(Graphics Memory)
Instruction
Batch Buff Instr
Instruction
Batch Buffers
Display
Engine
Overlay
Engine
Interrupt Ring
(Graphics Memory)
Instruction
Batch Buff Instr
Instruction
Batch Buffers
DMA
DMA