Search Images Maps Play YouTube News Gmail Drive More »
Advanced Patent Search | Web History | Sign in

Patents

A data transmission system having a real-time data engine for processing isochronous streams of data includes an interface device that provides a physical and logical connection of a computer to any one or more of a variety of different types of data networks. Data received at this device is presented to a serial driver, which disassembles different streams of data for presentation to appropriate data managers. A device handler associated with the interface device sets up data flow paths, and also presents data and commands from the data managers to a real-time data processing engine. Flexibility to handle any type of data, such as voice, facsimile, video and the like, that is transmitted over any type of communication network with any type of real-time engine is made possible by abstracting the functions of each of the elements of the system from one another. This abstraction is provided through suitable interfaces that isolate the transmission medium, the data manager and the...

InventorsJames B. Nichols, John Lynch
Original AssigneeApple Computer, Inc.
Primary Examiner: Patrick Assouad
Attorney: Burns, Doane, Swecker & Mathis, L.L.P.
Current U.S. Classification702/189; 719/328
International Classification: G06F 1300

View patent at USPTO
Search USPTO Assignment Database

Citations

Cited PatentFiling dateIssue dateOriginal AssigneeTitle
US5327558Apr 30, 1992Jul 5, 1994Motorola, Inc.Method for asynchronous application communication
US5363315Jun 30, 1992Nov 8, 1994Motorola, Inc.Method of communications between and within virtual radio interface standard layers
US5381346Jun 30, 1992Jan 10, 1995Motorola, Inc.Virtual data source for a radio transceiver
US5406643Feb 11, 1993Apr 11, 1995Motorola, Inc.Method and apparatus for selecting between a plurality of communication paths
US5438614May 25, 1994Aug 1, 1995U.S. Robotics, Inc.Modem management techniques
US5440619Aug 11, 1993Aug 8, 1995Zoom Telephonics, Inc.Voice, data and facsimile modem with modified ringback answering
US5440740Oct 13, 1992Aug 8, 1995System and method for managing devices on multiple digital signal processors
US5442789Mar 31, 1994Aug 15, 1995International Business Machines CorporationSystem and method for efficiently loading and removing selected functions on digital signal processors without interrupting execution of other functions on the digital signal processors
US5487167Aug 9, 1994Jan 23, 1996International Business Machines CorporationPersonal computer with generalized data streaming apparatus for multimedia devices

Referenced by

Citing PatentFiling dateIssue dateOriginal AssigneeTitle
US6530028Sep 15, 1999Mar 4, 2003Ricoh Company, Ltd.Image forming apparatus having an efficient localization system, and a method thereof
US6535975Oct 13, 1999Mar 18, 2003Agilent Technologies, Inc.SYSTEM CONFIGURATION FOR MULTIPLE COMPONENT APPLICATION BY ASSERTING REPEATEDLY PREDETERMINED STATE FROM INITIATOR WITHOUT ANY CONTROL, AND CONFIGURATION ENGINE CAUSES COMPONENT TO MOVE TO PREDETERMINED STATE
US6804820Mar 31, 2000Oct 12, 2004CanalSociete AnonymeModem control
US6985853Feb 28, 2002Jan 10, 2006Broadcom CorporationCompressed audio stream data decoder memory sharing techniques
US7162416Sep 12, 2005Jan 9, 2007Broadcom CorporationCompressed audio stream data decoder memory sharing techniques
US7420697Jun 24, 2003Sep 2, 2008Sharp Kabushiki KaishaCommunication apparatus
US7971207Apr 5, 2005Jun 28, 2011Microsoft CorporationMethod, system, and computer program product for representing and connection-oriented device in a known format
US8041848Aug 4, 2008Oct 18, 2011Apple Inc.Media processing method and device
US8174503May 17, 2008May 8, 2012David H. CainTouch-based authentication of a mobile device through user generated pattern creation

Claims

1. A signal processing system for providing a plurality of realtime services to and from a number of independent client applications and devices, said system comprising:

a subsystem comprising a host central processing unit (CPU) operating in accordance with at least one application program and a device handler program, said subsystem further comprising an adapter subsystem interoperating with said host CPU and said device;
a realtime signal processing subsystem for performing a plurality of data transforms comprising a plurality of realtime signal processing operations; and
at least one realtime application program interface (API) coupled between the subsystem and the realtime signal processing subsystem to allow the subsystem to interoperate with said realtime services.

2. The signal processing system as set forth in claim 1, wherein said signal processing system receives and transmits a plurality of datatypes over a plurality of different wide area networks (WANs).

3. A signal processing system for providing a plurality of realtime services over a wide area network (WAN), said system comprising:

a telecommunications subsystem comprising a host central processing unit (CPU) and a wide area network interface, where said wide area network interface is comprised of a hardware interface to the network and driver software which executes on the host
a telecommunications subsystem comprising a host central processing unit (CPU) operating in accordance with at least one application program and a datastream handler program, said telecommunications subsystem further comprising a telecommunications adapter subsystem interoperating with said host CPU and said WAN;
a realtime signal processing subsystem for performing a plurality of transforms comprising a plurality of realtime signal processing operations; and
at least one realtime application program interface (API) coupled between the telecommunications subsystem and the realtime signal processing subsystem to allow the telecommunications subsystem to interoperate with said realtime services.

4. The signal processing system as set forth in claim 3, wherein the realtime signal processing subsystem comprises:

at least one realtime communications module coupled to receive a plurality of communications commands from said applications programs via said datastream handler program and said realtime APIs, said realtime communications module in response to said communications commands issuing a plurality of requests for realtime services to at least one realtime service provider;
a translation interface program coupled to receive said requests for realtime services from said communications modules; and
a realtime processor including a realtime operating system interoperating with said translation program for executing a plurality of realtime operations comprising realtime functions in response to said requests.

5. The realtime data processing system as set forth in claim 4, wherein the translation interface comprises a plurality of realtime features to access a modem unit for communicating over said WAN.

6. The signal processing system as set forth in claim 3 further comprising a direct memory access (DMA) unit coupled between said realtime signal processing subsystem and a hardware abstraction portion of said telecommunications subsystem, said DMA unit providing for transfer of datablocks from said telecommunications adapter module to said realtime signal processing subsystem.

7. A signal processing system for providing a plurality of realtime services over a wide area network (WAN), said system comprising:

a telecommunications subsystem comprising a host central processing unit (CPU) operating in accordance with at least one applications program and a datastream handler program, said telecommunications subsystem further comprising a telecommunications adapter subsystem interoperating with said host CPU and said WAN;
a virtual realtime device enabling a plurality of realtime signal processing operations in accordance with at least one realtime service request issued by said applications program; and
at least one realtime application program interface (API) interoperating with the telecommunications subsystem and the virtual realtime device to enable the telecommunications subsystem to interoperate with said realtime signal processing operations.

8. The signal processing system as set forth in claim 7, wherein the virtual realtime device comprises a realtime translation interface program and virtual realtime engine, said virtual realtime engine enabling said realtime services by performing a number of data translation operations in accordance with said realtime service request and said realtime translation interface program.

9. The signal processing system as set forth in claim 8, wherein the virtual realtime engine comprises:

a realtime processor including a realtime operating system, and
a plurality of realtime function libraries interoperatively coupled with said realtime processor for providing a plurality of processing steps comprising said realtime signal processing operations,
whereby said virtual realtime engine responds to communications commands initiated by said applications programs.

10. The signal processing system as set forth in claim 7 further comprising a direct memory access (DMA) unit coupled between said virtual realtime signal processing subsystem and a hardware abstraction portion of said telecommunications subsystem, said DMA unit providing for transfer of data from said telecommunications adapter module to said virtual realtime signal processing subsystem.

11. The signal processing system as set forth in claim 7, wherein the virtual realtime translation interface comprises a plurality of realtime features to access a modem unit for communicating over said WAN.

12. The signal processing system as set forth in claim 11, wherein the modem unit comprises at least a serial communications controller, a programmable timer, and a plurality of input/output (I/O) lines.

13. The signal processing system as set forth in claim 7, wherein realtime service requests are selected from the group of realtime service request devices consisting of telephone answering machines, automatic telephone dialing machines, and remote control systems.

14. The signal processing system as claimed in claim 6, wherein the realtime signal processing operations are selected from the group of telecommunications transactions consisting of fax (send/receive) and data transmission transactions.

15. The signal processing system as claimed in claim 14, wherein the data transmission transaction comprises at least one data framing format and at least one data protocol.

16. The virtual realtime data processing system as set forth in claim 9, wherein the realtime processor comprises a programmable processing unit which is controlled by said realtime communications applications and said realtime communications interface.

17. The virtual realtime data processing system as set forth in claim 9, wherein the realtime processor comprises said host CPU.

18. The signal processing system as set forth in claim 9, wherein the realtime processor comprises a hard digital signal processor in which the realtime operating system and the realtime function libraries are fixedly embodied in a hardware element.

19. The realtime data processing system of claim 4 comprising a plurality of realtime communications modules which are respectively associated with different realtime services.

20. The realtime data processing system of claim 19 wherein at least some of said realtime communications modules provide a service which implements a virtual realtime device.

21. The realtime data processing system of claim 19 wherein one of said realtime services comprises a video processing service.

22. The realtime data processing system of claim 19 wherein one of said realtime services comprises a sound processing service.

23. The realtime data processing system of claim 19 wherein one of said realtime services comprises a telephone service.

24. The signal processing system of claim 1, wherein said realtime signal processing subsystem comprises:

a realtime processor including an operating system for executing a plurality of realtime functions;
a realtime communications module which is independent of said realtime processor and is coupled to receive a plurality of communications commands from said application programs via said device handler program and said realtime API, said realtime communications module operating in response to said communications commands to issue a plurality of requests for realtime services to said realtime processor; and
a translation interface program which is specific to said realtime processor and is coupled to receive said requests for realtime services from said communications module and provide said requests to said realtime processor.

25. The signal processing system of claim 24 comprising a plurality of realtime communications modules which are respectively associated with different realtime services.

26. The signal processing system of claim 25 wherein at least some of said realtime communications modules provide a service which implements a virtual realtime device.

27. The signal processing system as set forth in claim 24, wherein the realtime processor comprises a hard digital signal processor in which said operating system and realtime function libraries are fixedly embodied in a hardware element.

28. The signal processing system as set forth in claim 24, wherein the realtime processor comprises said host CPU.

29. The signal processing system of claim 24, wherein said realtime processor is embodied in a hardware device and includes realtime function libraries that are embodied in programmable software.

30. The signal processing system of claim 29 wherein said operating system is also embodied in programmable software.

31. A signal processing system, comprising:

an input/output device for sending and/or receiving isochronous streams of data transmitted over a communications path;
a realtime engine for performing data transformations on the isochronous streams of data, said realtime engine being independent of said input/output device;
a device handler program associated with said input/output device, for generating requests to the realtime engine to perform data transformations on the isochronous streams of data; and
at least one application programming interface for receiving the requests generated by said device handler program and issuing commands to said realtime engine to perform the requested data transformations.

32. The signal processing system of claim 31 comprising a plurality of said application programming interfaces which are respectively associated with different types of services to be provided by said realtime engine with respect to isochronous streams of data.

33. The signal processing system of claim 32 wherein one of said application programming services relates to the operation of the realtime engine as a virtual telephone device.

34. The signal processing system of claim 32 wherein one of said application programming services relates to the operation of the realtime engine as a virtual sound device.

35. The signal processing system of claim 32 wherein one of said application programming services relates to the operation of the realtime engine as a virtual video device.

36. The signal processing system of claim 31 wherein said application programming interface includes command/control registers that are shared between said realtime engine and said device handler program for transferring said requests and responding thereto, and a buffer for transferring isochronous streams of data between said device handler program and said realtime engine.

37. The signal processing system of claim 31, wherein said realtime engine comprises:

a realtime processor including an operating system for executing a plurality of realtime functions;
a communications module which is independent of said realtime processor and is coupled to receive said commands from said application programming interface, said communications module operating in response to said commands to issue a plurality of requests for realtime services to said realtime processor; and
a translation interface program which is specific to said realtime processor and is coupled to receive said requests for realtime services from said communications module and provide said requests to said realtime processor.

38. The signal processing system as set forth in claim 37, wherein the realtime processor comprises a hard digital signal processor in which said operating system and realtime function libraries are fixedly embodied in a hardware element.

39. The signal processing system as set forth in claim 37, wherein said processing system is incorporated in a data processing system having a host central processing unit (CPU), and wherein the realtime processor comprises said host CPU operating in accordance with software instructions relating to said realtime functions.

40. The signal processing system of claim 37, wherein said realtime processor is embodied in a hardware device and includes realtime function libraries that are embodied in programmable software.

41. The signal processing system of claim 40 wherein said operating system is also embodied in programmable software.