Controllerless modem with general purpose computer executing modem controller code and virtualized dart communicating data to/from modem controller code
First Claim
1. A general purpose computer system for use with a modem that lacks a microcontroller for executing a modem controller code, where the general purpose computer system executes the modem controller code, comprising:
- a processor for executing instructions;
a virtualized UART interface for execution by said processor, said virtualized UART interface communicating data to and from the modem controller code;
an input/output bus coupled to said processor, said input/output bus adapted to communicate with a controllerless hardware modem having a digital signal processor; and
wherein said processor executes both general computer system code and the modem controller code and communicates data and commands between the executed modem controller code and the digital signal processor.
3 Assignments
0 Petitions
Accused Products
Abstract
A computer system implements a standard modem without the use of a microcontroller. Instead, a digital signal processor is provided on an expansion card, but with direct links to the computer system itself. The code usually implemented in the microcontroller is instead implemented as a virtual modem controller to be called by the operating system of the computer itself. Further, this virtual modem controller includes a virtualized UART, that appears to the operating system software as a hardware UART, with entry points for calls to replace input/output instructions. In this way, standard device driver code written to execute input/output operations is easily converted to operate with the “virtualized” UART.
45 Citations
15 Claims
-
1. A general purpose computer system for use with a modem that lacks a microcontroller for executing a modem controller code, where the general purpose computer system executes the modem controller code, comprising:
-
a processor for executing instructions;
a virtualized UART interface for execution by said processor, said virtualized UART interface communicating data to and from the modem controller code;
an input/output bus coupled to said processor, said input/output bus adapted to communicate with a controllerless hardware modem having a digital signal processor; and
wherein said processor executes both general computer system code and the modem controller code and communicates data and commands between the executed modem controller code and the digital signal processor. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
an operating system for execution by said processor;
a device driver for a hardware UART device, said device driver called by said operating system to perform serial operations with the hardware UART device; and
wherein said virtualized UART interface provides entry points corresponding to reads from and writes to the hardware UART;
wherein said device driver is modified to call said entry points to perform reads from and writes to said virtualized UART interface in place of the hardware UART.
-
-
3. The computer system of claim 2, wherein said virtualized UART interface emulates a 16450 UART.
-
4. The computer system of claim 2, wherein said device driver is a Windows®
- 3.1 virtual device driver.
-
5. The computer system of claim 2, wherein said device driver is a Windows®
- 95 virtual device driver.
-
6. The computer system of claim 2, wherein said processor is an x86 series processor, and wherein the virtual device driver is modified by replacing “
- IN AL,DX” and
“
OUT DX,AL”
instructions with calls to the entry points.
- IN AL,DX” and
-
7. The computer system of claim 2, wherein said virtualized UART interface provides a compartmentalized interface to said device driver such that said operating system can be changed to a second operating system with a second device driver without significant modification to said virtualized UART interface.
-
8. The computer system of claim 2, wherein said virtualized UART interface provides a compartmentalized interface to said device driver such that said controllerless hardware modem can be changed to a second controllerless hardware modem without significant modification to said device driver.
-
9. A computer system for use with a modem with a digital signal processor but lacking a microcontroller for executing modem controller code, comprising:
-
a processor for executing instructions, said processor executing the modem controller code;
a virtualized version of a physical hardware interface, said virtualized version providing a virtualized interface to the executing modem controller code; and
a device driver written to communicate with a physical hardware interface, wherein said device driver is modified by replacing instructions directed to the physical hardware interface with calls to said virtualized interface. - View Dependent Claims (10, 11, 12)
-
-
13. In a general purpose computer system, a method of providing modem communication without a hardware modem controller, the method comprising the steps of:
-
providing a digital signal processor for communicating over telecommunications link;
executing on the general purpose computer system modem controller code for communication with the digital signal processor;
providing a hardware interface for communication from the modem controller code to the digital signal processor; and
providing a virtualized version of a hardware interface between operating system device driver software on the general purpose computer system and the modem controller code executing on the general purpose computer system, whereby modem commands and data are transmittedbetween the operating system device driver software and the modem controller code.
-
-
14. A general purpose computer system for use with a modem that lacks a microcontroller for executing a modem controller code, where the general purpose computer system executes the modem controller code, the system comprising:
-
a processor for executing instructions;
a virtualized UART interface for execution by said processor, said virtualized UART interface communicating data to and from the modem controller code;
a disk drive coupled to said processor for storing the modem controller code;
main memory for storing the modem controller code;
an input/output bus coupled to said processor, said input/output bus adapted to communicate with a controllerless hardware modem with a digital signal processor; and
wherein said processor executes both general computer system code and the modem controller code and communicates data and commands between said executed modem controller code and the digital signal processor. - View Dependent Claims (15)
an operating system for execution by said processor, said operating system stored on said disk drive and in said memory;
a device driver for a hardware UART device, said device driver called by said operating system to perform serial operations with the hardware UART device, said device driver stored on said disk drive and in said main memory; and
wherein said virtualized UART interface provides entry points corresponding to reads from and writes to the hardware UART, said virtualized UART interface stored on said disk drive and in said main memory;
wherein said device driver is modified to call said entry points to perform reads from and writes to said virtualized UART interface in place of the hardware UART.
-
Specification