Browse Prior Art Database

Method for a multitasking DMA controller

IP.com Disclosure Number: IPCOM000011435D
Publication Date: 2003-Feb-19
Document File: 3 page(s) / 221K

Publishing Venue

The IP.com Prior Art Database

Abstract

Disclosed is a method for a multitasking direct memory access (DMA) controller. Benefits include improved performance and improved power performance.

This text was extracted from a Microsoft Word document.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 50% of the total text.

Method for a multitasking DMA controller

Disclosed is a method for a multitasking direct memory access (DMA) controller. Benefits include improved performance and improved power performance.

Background

        � � � � � DMA channels consume power and use register space.

        � � � � � In some conventional application spaces, such as embedded and communications chipsets, a very large number of DMA channels and application/driver control of the channel (rather than the operating system) are advantageous.

        � � � � � For a single threaded DMA linked list, command blocks are fetched and executed in a sequential fashion (see Figure 1). The DMA channel is idle during command fetch and while a command block is awaiting execution.

General description

        � � � � � The disclosed method is a DMA controller that can process multiple independent linked lists using a single hardware channel (see Figure 2). The controller arbitrates the multiple independent linked lists (virtual channels).

        � � � � � The disclosed method reduces the overall number of hardware channels, saving gate count and power.

        � � � � � By supporting multiple linked lists, the operating system (OS) can allocate virtual channels to an application/driver while maintaining control over the arbitration time between virtual channels. This technique enables each driver to control/manage its own DMA channel, which appears to the application as a dedicated DMA resource. This technique can also be leveraged within virtual machine environments.

        � � � � � The disclosed method supports practical and affordable DMA implementations for the...