Claims
- 1. A method of controlling DMA data transfers in a multi-media task computer system having a digital host processor, DP, for executing user task programs and a digital signal processor, DSP for executing digital signal processor programs in support of execution requirements of said user task programs, an interprocessor for direct memory access input and output, DMA/IO, for controlling the movement of DMA data transfer packets between said DP and said DSP, and data and address buses interconnecting said DMA/IO with said DP and with said DSP, the method executing in said DMA/IO comprising the steps of:
- writing pacing markers into a queue in memory of DMA data transfer requests at precise intervals as a means of stopping and starting processing of lists of DMA data transfer requests;
- sending, at the moment a pacing marker is read by said DSP, a start pacing signal to said DMA/IO as a signal to proceed with the next DMA data transfer to be processed;
- receiving said start pacing signal sent by an operating system for said DSP, said start pacing signal sent in response to said pacing markers inserted at regularly occurring time intervals in said queue of said DMA data transfer requests;
- accessing, in response to said start pacing signal from said operating system for said DSP, a plurality of said data transfer packets to be transferred between said DP and said DSP in accordance with said DMA data transfer requests;
- moving said plurality of data transfer packets to a buffer memory within said DMA/IO;
- accessing a memory where said plurality of data transfer packets are to be written; and
- transferring said plurality of data transfer packets to said memory before another start pacing signal from said operating system for said DSP is received and without intervention by said DP.
- 2. A method as described in claim 1 further comprising for each said plurality of data transfer packets at said DMA/IO the steps of:
- arbitrating for a grant of bus access to the data bus necessary to access said data transfer packet to be transferred and receiving a bus grant therefore from the appropriate digital processor;
- transferring said data transfer packet to said buffer memory of said DMA/IO;
- arbitrating for a grant of bus access to an appropriate bus necessary to deliver said data transfer packet to be transferred to the desired destination therefore and receiving said bus grant from the appropriate digital processor; and
- transferring said data transfer packet from said buffer memory to its desired destination.
- 3. Apparatus for controlling DMA data transfers in a multi-media task computer system having a digital host processor, DP, for executing user task programs and a digital signal processor, DSP for executing digital signal processor programs in support of execution requirements of said user task programs, and data and address buses interconnecting said apparatus with said DP and with said DSP, the apparatus comprising:
- buffer memory means;
- means for connection to said data and address buses;
- means for writing pacing markers into a queue in memory of DMA data transfer requests at precise intervals as a means of stopping and starting processing of lists of DMA data transfer requests;
- means for sending, at the moment a pacing marker is read by said DSP, a start pacing signal to said DMA/IO as a signal to proceed with the next DMA data transfer to be processed;
- means for receiving said start pacing signal sent by an operating system for said DSP, said start pacing signal sent in response to said pacing markers inserted at regularly occurring time intervals in said queue of said DMA data transfer requests;
- means for accessing, in response to said start pacing signal from said operating system for said DSP, a plurality of said data transfer packets to be transferred between said DP and said DSP in accordance with said DMA data transfer requests;
- means for accessing a memory where said data transfer packets are to be written; and
- means for transferring said plurality of data transfer packets to said memory before another start pacing signal from said operating system for said DSP is received and without intervention by said DP.
- 4. Apparatus as described in claim 3 further comprising:
- means for arbitrating for a grant of bus access to the data bus necessary to access each of said plurality of data transfer packets to be transferred and receiving a bus grant therefore from the appropriate digital processor;
- means for transferring each data transfer packet to said buffer memory means;
- means for arbitrating for a grant of bus access to an appropriate bus necessary to deliver said data transfer packet to be transferred to the desired destination therefore and receiving said bus grant from the appropriate digital processor; and
- means for transferring said data transfer packet from said buffer memory means to its desired destination.
CROSS REFERENCE TO RELATED APPLICATION
This application is a continuation of application Ser. No. 08/143,199, filed Oct. 26, 1993, now abandoned, which in turn is a division of application Ser. No. 07/761,534, filed Sep. 18, 1991 now abandoned.
US Referenced Citations (7)
Foreign Referenced Citations (1)
Number |
Date |
Country |
0317481 |
May 1989 |
EPX |
Divisions (2)
|
Number |
Date |
Country |
Parent |
143199 |
Oct 1993 |
|
Parent |
761534 |
Sep 1991 |
|