Method and apparatus for controlling (N+I) I/O channels with (N) data managers in a homogenous software programmable environment
US5864712A · kind A · utility
Assignee
Inventors
Key dates
| Filing date | Dec 31, 1996 |
| Grant date | Jan 26, 1999 |
| Priority date | — |
| Expiry date | Dec 31, 2016 |
Classification
- Technology area (CPC G)Physics
- CPC primaryG06F13/28
- WIPO fieldComputer technology
- WIPO sectorElectrical engineering
Abstract
A method an corresponding apparatus for improving the input/output performance of a computer system under the control of a multi-tasking, multi-threaded operating system. In particular, the invention provides an apparatus and method to interleave contiguous DMA scatter/gather sub blocks of a PRD table corresponding to a first I/O channel with contiguous DMA scatter/gather sub blocks of a PRD table corresponding to a second I/O channel, using a single data manager, while maintaining maximum media bandwidth. DMA block transfers are scheduled by the single data manager based on the availability of data from the I/O devices' buffer memories, thus minimizing both media or network idle time as well as minimizing I/O bus idle time. Near maximum aggregate bandwidth of multiple I/O buses and their associated devices is obtained. The apparatus and method thus provides significant performance advantages over prior techniques having two I/O channel systems implemented with a single data manager. The apparatus and methods of the present invention are also extended to encompass a plurality "n" of data managers interleaving contiguous block transfers among a larger plurality "n+i" of I/O devices.
Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.