IP Library Granted Patent US 8,195,442
Granted Patent B2
US 8,195,442 · App. 12/946,721 · Granted Jun 5, 2012

Use of hardware peripheral devices with software simulations

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,195,442
App. No.
12/946,721
Granted
Jun 5, 2012
Kind
B2
Abstract

A system and method is described for connecting a logic circuit simulation to a hardware peripheral that includes a computer running software for communicating data to and from the hardware peripheral. The software transmits the data received from the hardware peripheral to the device being simulated by the logic circuit simulation. The computer also transmits the data received from the device being simulated by the electronic circuit simulation to the hardware peripheral. This allows the user to test the device being simulated using real hardware for input and output instead of simulated hardware.

Claims (31)

1. A method, comprising:

receiving data at a program running on a host computer, wherein the data is received from a hardware peripheral device via a device driver of an operating system that is also running on the host computer, wherein the hardware peripheral device is not a hardware emulator configurable to emulate functionality identical to that of another hardware peripheral device, and wherein the data is received by the host computer at a first rate;

the program buffering the data; and

the program transmitting the data to a software simulation running on the host computer, wherein the software simulation is of an electronic device designed to interact with the hardware peripheral device, and wherein said transmitting is at a second rate slower than the first rate.

2. The method of claim 1 , wherein a first thread of the program performs said receiving data from the hardware peripheral device, the method further comprising:

responsive to the program transmitting data to the software simulation, a second thread of the program receiving data from the software simulation; and

responsive to the second thread receiving data from the software simulation, the second thread transmitting data to the hardware peripheral device.

3. The method of claim 1 , wherein the software simulation running on the host computer is unable to receive and process data sent at the first rate.

4. The method of claim 3 , wherein the electronic device is designed to receive and process data at the first rate.

5. The method of claim 1 , wherein the data is received at the program in a first format, the method further comprising:

the program repackaging the data into a second format prior to said transmitting the data to the software simulation.

6. The method of claim 1 , wherein the device driver is received from a manufacturer of the hardware peripheral device.

7. An apparatus, comprising:

a host computer configured to receive data from a hardware peripheral device, wherein the host computer includes a processor and a memory, and wherein the hardware peripheral device is not a hardware emulator configurable to emulate functionality identical to that of another hardware peripheral device;

wherein the memory includes computer instructions executable by the host computer to cause the apparatus to perform operations, the computer instructions including:

instructions to receive data at a program running on the host computer from the hardware peripheral device via a device driver of an operating system also for execution on the host computer, and wherein the data is received by the host computer at a first rate;

instructions to buffer the data; and

instructions to originate a transmission of the data from the program to a software simulation at a second rate slower than the first rate, wherein the software simulation is running on the host computer, and wherein the software simulation is of an electronic device designed to interact with the hardware peripheral device.

8. The apparatus of claim 7 , wherein the computer instructions include instructions to reformat the data prior to originating the transmission of the data to the software simulation, wherein said reformatting renders the data usable by the software simulation.

9. The apparatus of claim 7 , wherein the host computer includes a non-network interface configured to connect to the hardware peripheral device.

10. The apparatus of claim 9 , wherein the non-network interface is configured to transmit data for a display device.

11. The apparatus of claim 9 , wherein the non-network interface is configured to transmit data for a USB device.

12. A computer-readable storage medium having stored thereon instructions executable by a processor to cause a computing device to perform operations, the instructions comprising:

instructions to receive data sent from a hardware peripheral device at a first rate, wherein the hardware peripheral device is not a hardware emulator configurable to emulate functionality identical to that of another hardware peripheral device, and wherein the data is received at a program running on the computing device via a device driver of an operating system for execution on the computing device; and

instructions to transmit the data at a second rate from the program running on the computing device to a software simulation running on the computing device, wherein the second rate is slower than the first rate, and wherein the software simulation is of an electronic device designed to interact with the hardware peripheral device.

13. The computer-readable storage medium of claim 12 , wherein the software simulation is not configured to receive and process data that is sent in an output format of the hardware peripheral device.

14. The computer-readable storage medium of claim 12 , wherein the device driver implements one or more application program interfaces (APIs) configured to interact with the hardware peripheral.

15. The computer-readable storage medium of claim 12 , wherein the data received by the program from the hardware peripheral device is in a first format; and

wherein the instructions comprise instructions to cause the program to transmit the data to the software simulation in a second format compatible with the software simulation.

16. The computer-readable storage medium of claim 12 , wherein the device driver is provided by a manufacturer of the hardware peripheral device.

17. The computer-readable storage medium of claim 12 , wherein the electronic device is a storage device.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE NATURE OF CONVEYANCE PREVIOUSLY RECORDED AT REEL: 056981 FRAME: 0631. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 16, 2022
From: COMMWORKS SOLUTIONS, LLC
To: UNWIRED BROADBAND, INC.
Reel/Frame 059907/0563 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE NAME PREVIOUSLY RECORDED AT REEL: 054443 FRAME: 0958. ASSIGNOR(S) HEREBY CONFIRMS THE LICENSE. Recorded Feb 4, 2021
From: COMMWORKS SOLUTIONS, LLC
To: UNWIRED BROADBAND, INC.
Reel/Frame 056981/0631 →
LICENSE Recorded Nov 5, 2020
From: COMMWORKS SOLUTIONS, LLC
To: UNWIRED SOLUTIONS, INC.
Reel/Frame 054443/0958 →