Method and apparatus for facilitating real-time and asynchronous loading and temporally-overlapping of modular multimedia software tasks in a multimedia data processing system
First Claim
1. A data processing system for executing multimedia applications which interface with multimedia end devices that consume or produce at least one of (a) real-time and (b) asynchronous streamed data, comprising:
- a central processing unit for data processing operations including execution of said multimedia application;
a digital signal processor for processing data including said streamed data;
a plurality of modular multimedia software task means which are executable by said digital signal processor and which are available to said multimedia application for execution in said digital signal processor;
a plurality of data communication module means for;
(a) linking selected ones of said plurality of modular multimedia software tasks with selected others of said plurality of modular multimedia software task means, and(b) linking selected multimedia end devices with selected ones of said plurality of modular multimedia software task means;
each of said plurality of data communication module means allowing continuous, real-time, and unidirectional communication of said streamed data;
a digital signal processor manager program means which is resident in said central processing unit and which dynamically monitors data processing system resource allocation to allow at least one of said plurality of modular multimedia software task means to be loaded and executed while at least one other of said plurality of modular multimedia software task means is being executed by said digital signal processor, without interfering with execution of any of said plurality of modular multimedia software tasks.
1 Assignment
0 Petitions
Accused Products
Abstract
A data processing system for executing multimedia applications which interface with multimedia devices that consume or produce at least one of real-time and asynchronous streamed data includes a CPU for execution of one or more multimedia applications and a DSP for processing data including streamed data. A plurality of modular multimedia software tasks may be called by the multimedia application for execution in the DSP. A plurality of data communication modules are provided for linking selected ones of the software tasks with selected others of the software tasks, and linking selected multimedia devices with selected ones of the software tasks. Each of the communications modules allows continuous, real-time and unidirectional communication of streamed data. The modularity of the processing system defines an open architecture for real-time processing which allows additional modular multimedia tasks to be added to the software tasks and selectively linked to at least one of (a) selected ones of the software tasks, and (b) selected ones of the multimedia devices. A DSP manager is resident in the CPU which dynamically monitors resource allocation to allow at least one software task to be loaded and executed while at least one other software task is being executed by the DSP without interference with execution.
52 Citations
27 Claims
-
1. A data processing system for executing multimedia applications which interface with multimedia end devices that consume or produce at least one of (a) real-time and (b) asynchronous streamed data, comprising:
-
a central processing unit for data processing operations including execution of said multimedia application; a digital signal processor for processing data including said streamed data; a plurality of modular multimedia software task means which are executable by said digital signal processor and which are available to said multimedia application for execution in said digital signal processor; a plurality of data communication module means for; (a) linking selected ones of said plurality of modular multimedia software tasks with selected others of said plurality of modular multimedia software task means, and (b) linking selected multimedia end devices with selected ones of said plurality of modular multimedia software task means; each of said plurality of data communication module means allowing continuous, real-time, and unidirectional communication of said streamed data; a digital signal processor manager program means which is resident in said central processing unit and which dynamically monitors data processing system resource allocation to allow at least one of said plurality of modular multimedia software task means to be loaded and executed while at least one other of said plurality of modular multimedia software task means is being executed by said digital signal processor, without interfering with execution of any of said plurality of modular multimedia software tasks. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. In a multimedia data processing system including:
-
(a) a central processing unit for data processing operations; (b) a digital signal processor for processing real-time and asynchronous streamed data; (c) multimedia end devices that consume or produce at least one of (a) real-time and (b) asynchronous streamed data; and (d) multimedia applications which are executable by said central processing unit; an improved means for loading modular multimedia software tasks, comprising; a plurality of modular multimedia software task means which are executable by said digital signal processor and which may be called by said multimedia application for execution in said digital signal processor; a plurality of data communication module means for; (a) linking selected ones of said plurality of modular multimedia software tasks with selected others of said plurality of modular multimedia software task means, and (b) linking selected multimedia end devices with selected ones of said plurality of modular multimedia software task means; each of said plurality of data communication module means, allowing continuous, real time, and unidirectional communication of said streamed data; a digital signal processor manager program means which allows for real-time and asynchronous loading of selected ones of said plurality of modular multimedia software task means for at least partially temporally overlapping execution, to the extent that processing resources are available as dynamically determined by said digital signal processor manager program means. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. In a multimedia data processing system including:
-
(a) a central processing unit for data processing operations; (b) a digital signal processor for processing real-time and asynchronous streamed data; (c) multimedia end devices that consume or produce at least one of (a) real-time and (b) asynchronous streamed data; and (d) multimedia applications which are executable by said central processing unit; a method of loading to said digital signal processor, comprising the method steps of; creating a plurality of modular multimedia software tasks which may be selectively loaded to said digital signal processor for execution; selecting a particular modular multimedia software task for loading to and execution by said digital signal processor; determining the digital signal processor resource requirement of said particular modular multimedia software task; determining the digital signal processor resource availability; and comparing said resource requirement with said resource availability to determine if loading is possible. - View Dependent Claims (27)
-
Specification