Browse Prior Art Database

Optimization of Command Fetches From Memory for Multiple Rings

IP.com Disclosure Number: IPCOM000008219D
Publication Date: 2002-May-28
Document File: 2 page(s) / 61K

Publishing Venue

The IP.com Prior Art Database

Abstract

Disclosed is a method for sharing the storage structure used for the execution of graphics instructions in the high and low priority ring buffer. The command parser uses a DMA mechanism for fetching commands from memory. Benefits include memory fetches that are bunched together to improve memory access performance. Also, the pre-fetched commands from memory are stored in a single FIFO for both low and high priority buffers.

This text was extracted from a Microsoft Word document.
This is the abbreviated version, containing approximately 50% of the total text.

Optimization of Command Fetches From Memory for Multiple Rings

Disclosed is a method for sharing the storage structure used for the execution of graphics instructions in the high and low priority ring buffer. The command parser uses a DMA mechanism for fetching commands from memory. Benefits include memory fetches that are bunched together to improve memory access performance. Also, the pre-fetched commands from memory are stored in a single FIFO for both low and high priority buffers.

Background

The command streamer is a section of the hardware used to interpret graphic commands programmed by the software driver. The software driver loads commands into a memory location managed by the hardware. The command streamer uses a direct memory access mechanism to handle execution of commands from main memory. Graphics streams with low latency requirements need to interrupt the normal command execution mode for the drawing engines. Interruption of the command execution is very inefficient from a bandwidth perspective under these circumstances.

General Description

The distribution of commands to the graphics rendering engines happens through the programming of the command stream. The command stream has several independent streams for operation. Each stream of execution is organized like a ring buffer (i.e. the command stream has the ability to wrap around the command execution ring. In the regular stream, commands program functions for rendering engines. There are two copies of the regular stream to handle the dual display pipes. Four higher priority streams are implemented to support instructions for the display, overla...