Claims
- 1. A block memory transfer module comprising:a start address for a block of memory to be transferred, maintained in memory of a first device; and a length of said block of memory to be transferred, maintained in memory of a second device separate from said first device; wherein said length of said block of memory to be transferred is variable without requiring intervention by said first device.
- 2. The block memory transfer module according to claim 1, wherein:said first device is a host.
- 3. The block memory transfer module according to claim 2, wherein:said second device is a peripheral device including said block of memory.
- 4. The block memory transfer module according to claim 1, wherein:said second device is a peripheral device including said block of memory.
- 5. The block memory transfer module according to claim 1, further comprising:a burst type data transfer bus between said first device and said second device.
- 6. The block memory transfer module according to claim 5, wherein:said burst type data transfer bus is a Peripheral Components Interface bus.
- 7. The block memory transfer module according to claim 6, wherein:said first device is a host processor of a personal computer; and said second device is a peripheral in said personal computer.
- 8. A method of transferring a large plurality of blocks of data over separate data transfer channels, said method comprising:distributing a plurality of data transfer engines among respective devices connected to a data bus, each data transfer engine including a length of a respective at least one of said plurality of blocks of data; maintaining a centralized data buffer in a host relating to one of a source and destination of each of said plurality of blocks of data to be transferred; transferring each of said plurality of blocks of data over a separate one of said plurality of data transfer channels based on said length of said plurality of blocks of data established by each of said distributed plurality of data transfer engines; and changing said length of said respective at least one of said plurality of blocks of data without requiring intervention by said host.
- 9. The method of transferring a large plurality of blocks of data over separate data transfer channels according to claim 8, said method further comprising:maintaining a centralized start address relating to a starting address of a source of each of said plurality of blocks of data to be transferred separate from a storage device for storing said lengths of said plurality of blocks of data.
- 10. The method of transferring a large plurality of blocks of data over separate data transfer channels according to claim 8, wherein:said data buffer is cyclic.
- 11. The method of transferring a large plurality of blocks of data over separate data transfer channels according to claim 8, wherein:said data bus is a burst type data transfer bus.
- 12. The method of transferring a large plurality of blocks of data over separate data transfer channels according to claim 11, wherein:said burst type data transfer bus is a PCI bus.
- 13. The method of transferring a large plurality of blocks of data over separate data transfer channels according to claim 8, wherein :said large plurality is more than seven.
- 14. Apparatus for transferring a large plurality of blocks of data over separate data transfer channels, said method comprising:a plurality of data transfer means for transferring at least one block of data, said plurality of data transfer means being distributed among a respective plurality of devices connected to a data bus, each data transfer means including a length of a respective at least one of said plurality of blocks of data; centralized data buffer means maintained in a host for containing one of a source and destination of each of said plurality of blocks of data to be transferred; means for transferring each of said plurality of blocks of data over a separate one of said plurality of data transfer channels based on said length of said plurality of blocks of data established by each of said distributed plurality of data transfer engines; means for changing said length of said respective at least one of said plurality of blocks of data without requiring intervention by said host.
- 15. The apparatus for transferring a large plurality of blocks of data over separate data transfer channels according to claim 14, further comprising:means for maintaining a centralized start address relating to a starting address of a source of each of said plurality of blocks of data to be transferred separate from a storage device for storing said lengths of said plurality of blocks of data.
- 16. The apparatus for transferring a large plurality of blocks of data over separate data transfer channels according to claim 14, wherein:said centralized data buffer means is cyclic.
- 17. The apparatus for transferring a large plurality of blocks of data over separate data transfer channels according to claim 14, wherein:said data bus is a burst type data transfer bus.
- 18. The apparatus for transferring a large plurality of blocks of data over separate data transfer channels according to claim 17, wherein:said burst type data transfer bus is a PCI bus.
- 19. The apparatus for transferring a large plurality of blocks of data over separate data transfer channels according to claim 14, wherein:said large plurality is more than seven.
- 20. A system adapted for transferring a large plurality of blocks of data over separate data transfer channels, said system comprising:a plurality of computer devices each comprising a respective data transfer engine, each of said plurality of computer devices interconnected via a data bus, each data transfer engine including storage for a length of a respective at least one of said plurality of blocks of data; and a host computer device including a centralized data buffer relating to one of a source and destination of each of said plurality of blocks of data to be transferred, said host computer device including a starting address of each of said plurality of blocks of data; wherein said length of said respective at least one of said plurality of blocks of data is variable without requiring intervention by said host computer device.
- 21. The system adapted for transferring a large plurality of blocks of data over separate data transfer channels according to claim 20, wherein:said data bus is a PCI bus.
- 22. The system adapted for transferring a large plurality of blocks of data over separate data transfer channels according to claim 20, wherein:said data bus is a burst type data bus.
Parent Case Info
This application claims priority from U.S. Provisional Application Ser. No. 60/065,855 entitled “Multipurpose Digital Signal Processing System” filed on Nov. 14, 1997, the specification of which is hereby expressly incorporated herein by reference.
US Referenced Citations (3)
Number |
Name |
Date |
Kind |
5555390 |
Judd et al. |
Sep 1996 |
|
5594927 |
Lee et al. |
Jan 1997 |
|
5794069 |
Chisholm et al. |
Aug 1998 |
|
Provisional Applications (1)
|
Number |
Date |
Country |
|
60/065855 |
Nov 1997 |
US |