Claims
- 1. An audio/video processing system comprising:
an audio processing module disposed to process audio data and to provide first requests over a first data channel; a second processing module disposed to process data and to provide second requests over a second data channel; and a direct memory access (DMA) engine receiving the first and second requests over the first and second data channels, the DMA engine including a data reservoir maintaining a memory buffer for the audio processing module and the second processing module, and including an arbitration mechanism disposed to arbitrate the first and second data requests.
- 2. The invention as in claim 1, wherein the second processing module comprises a digital video processing module disposed to process video data and to provide video requests over the second data channel.
- 3. The invention as in claim 1, wherein the second processing module comprises a Universal Serial Bus.
- 4. The invention as in claim 1, wherein the second processing module comprises a device unit that interfaces with one or more external components.
- 5. The invention as in claim 1, wherein the second processing module comprises a graphics rendering engine.
- 6. The invention as recited in claim 1, wherein the second processing module comprises a video decoder.
- 7. The invention as recited in claim 6, wherein the video decoder comprises an MPEG decoder.
- 8. The invention as recited in claim 1, wherein the second processing module comprises a resampler.
- 9. The invention as recited in claim 1, wherein the second processing module comprises a transcoder.
- 10. The invention as recited in claim 1, wherein the second processing module comprises an error corrector.
- 11. The invention as recited in claim 1, wherein the second processing module comprises an encryption unit.
- 12. The invention as recited in claim 1, wherein the second processing module comprises a decryption unit.
- 13. The invention as in claim 1 wherein the arbitration mechanism comprises:
a devices interface coupled connected with the data reservoir disposed to arbitrate the first and second data requests generated by the audio processing module and the second processing module; and a memory interface operably connected with the DMA module disposed to arbitrate reservoir data requests generated by the DMA module for data from the main memory to replenish the data reservoir.
- 14. The invention as in claim 13, wherein the data reservoir comprises a plurality of device buffers.
- 15. The invention as in claim 14, wherein each of the plurality of device buffers comprises at least one channel buffer for each channel associated with a respective one of the audio processing module and the second processing module.
- 16. The invention as in claim 13, wherein the devices interface further comprises an arbitration mechanism used to select eligible devices from one of the audio processing module and the second processing module, wherein the eligible device makes the device data requests.
- 17. The invention as in claim 13, wherein the DMA engine guarantees that device data requests of the digital video processing module and the audio processing module is serviced within a programmable response time.
- 18. The invention as in claim 13, wherein the memory interface further comprises a circular list having a plurality of entries, each entry representing one of the channels of the audio processing module and the second processing module, wherein the channels are evaluated to determine if the channels are critical.
- 19. The invention as in claim 18, wherein the circular list is linked to one or more sub-lists, the one or more sub-lists having additional entries representing one of the channels of the audio processing module and the second processing module.
- 20. The invention as in claim 18, wherein the DMA engine makes the reservoir data request for the channels that are critical.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] The present application is a continuation-in-part from commonly-owned co-pending U.S. patent application Ser. No. 09/628,473, filed Jul. 31, 2000, and entitled “Arbitrating and Servicing Polychronous Data Requests In Direct Memory Access”, which application is incorporated herein by reference in its entirety.
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
09628473 |
Jul 2000 |
US |
Child |
09875512 |
Jun 2001 |
US |