Patent Number: 7,089,336

Title: Arbitrating and servicing polychronous data requests in Direct Memory Access

Abstract: Systems for servicing the data and memory requirements of system devices. A DMA engine that includes a data reservoir is provided that manages and arbitrates the data requests from the system devices. An arbitration unit is provided that only allows eligible devices to make a data request in any given cycle to ensure that all devices will be serviced within a programmable time period. The data reservoir contains the data buffers for each channel of each device. A memory interface ensures that sufficient data for each channel is present in the data reservoir by making requests to a system's memory based on an analysis of each channel. Based on this analysis, a request is either made to the system's main memory, or the channel waits until it is evaluated again in the future. Each channel is thereby guaranteed a response time.

Inventors: Gray, III; Donald M. (San Francisco, CA), Ahsan; Agha Zaigham (Palo Alto, CA)

Assignee: Microsoft Corporation

International Classification: G06F 13/28 (20060101); G06F 3/00 (20060101)

Expiration Date: 8/08/02018