Electrical computers and digital data processing systems: input/ – Intrasystem connection – Protocol
Reexamination Certificate
1999-09-21
2001-05-01
Wiley, David A. (Department: 2155)
Electrical computers and digital data processing systems: input/
Intrasystem connection
Protocol
C710S033000
Reexamination Certificate
active
06226701
ABSTRACT:
TECHNICAL FIELD
The present invention relate s to the field of computer systems that implement a Universal Serial Bus (USB). More specifically, the present invention relates to accurately determining the specific time of an occurrence of a real-time event that is monitored by a peripheral device coupled to a Universal Serial Bus.
BACKGROUND ART
Within the field of computer systems, computer peripheral devices (e.g., keyboard, display screen, lightpen, mouse, printer, speakers, scanner, etc.) are coupled to a computer system to enable the host processor to control and communicate with these peripheral devices. The Universal Serial Bus architecture is one type of mechanism used within the computer industry to couple peripheral devices to a computer system. The Universal Serial Bus architecture was developed to be a simple and cost-effective and standardized alternative to previously used peripheral buses or interfaces.
The Universal Serial Bus (USB) architecture is different from other types of peripheral buses (e.g., peripheral component interconnect or PCI bus). One of the main differences between the Universal Serial Bus architecture and other types of peripheral bus architectures is that the USB architecture does not allow all the peripheral devices to be coupled to the same peripheral bus lines. Instead, the USB architecture is a point to point interface so that only one device, the USB host controller, is actually coupled to the Universal Serial Bus. Peripherals then communicate with the USB host controller. The USB architecture utilizes a hierarchical structure which involves the use of hubs or ports to provide a separate USB interface for each peripheral device. A hub is an intermediate routing center of multiple USB ports to which peripheral devices can be coupled.
The Universal Serial Bus architecture is a low cost interface that is likely to become ubiquitous and is suitable for connecting low-cost, low transfer rate peripheral devices to a computer system, but it has a major disadvantage associated with it. The main disadvantage associated with the USB architecture is that it does not have any real-time capability, which is defined as the ability to accurately determine the actual time of an event's occurrence relative to the computer system clock. One of the main reasons that the USB architecture does not have any real-time capability is that it polls the peripheral devices coupled to it instead of allowing the peripheral devices to directly interrupt the host processor of the computer system. Another reason the USB architecture does not have any real-time capability is that no precise timing information is communicated across the USB interface. Furthermore, the lack of any real-time capability within the USB architecture is also attributed to the fact that the 1 ms USB frames are asynchronous and completely indeterminate to the host processor of the computer system. So the USB architecture precludes the accurate determination of the specific instant in time that an event occurred within a peripheral device.
The inability for USB architecture to provide real-time capability precludes the use of certain types of peripheral devices with computer systems that utilizes USB architecture. For example, a lightpen device used in conjunction with a computer-aided design (CAD) program requires real-time capability to operate properly. Therefore, a lightpen cannot operate properly coupled to a prior art computer system that employs the USB architecture.
Another type of device, that is closely related to a lightpen, that cannot operate properly coupled to USB architecture is an aiming device used in conjunction with a software game in which the game player aims and shoots at targets on the display screen and the game responds in some suitable manner.
Therefore, it would be advantageous to provide a method and system that allows the USB architecture to have real-time capability in determining the actual time of an event's occurrence within a peripheral device that communicates with the host processor via the USB architecture. The present invention provides this advantage.
DISCLOSURE OF THE INVENTION
The present invention includes a method and system that enables real-time peripheral devices to be connected to a computer system utilizing Universal Serial Bus (USB) architecture. The present invention provides this capability by empowering the computer system to perform an accurate determination of the moment in time, within a given accuracy, that a predetermined event occurred within a real-time peripheral device. A lightpen or aiming device is an example of the type of real-time peripheral devices that the present invention enables to be connected to a computer system utilizing USB architecture.
Specifically, the present invention method and system utilizes the start of frame pulse that is transmitted from a USB host controller to all the peripheral devices connected to it to allow a host processor to determine the specific moment in time that a specific event occurred within a real-time peripheral device. When a predetermined event occurs within a real-time peripheral device, it performs a predetermined response. Once this predetermined response occurs, a first timer located within the real-time peripheral device starts incrementing to determine the amount of time that elapses until the next start of frame pulse occurs. Once the next start of frame pulse occurs, the first timer within the real-time peripheral device stops incrementing and stores that time value. The time value stored within the first timer, referred to as the time before start of frame value, represents the time that elapsed between the occurrence of the event within the real-time peripheral device and the occurrence of the “next start of frame pulse.”
The occurrence of the “next start of frame pulse” also causes a second timer located within a USB host controller to start incrementing. At some time after the “next start of frame pulse” the USB host controller interrogates the real-time peripheral device which transfers data to the host controller indicating that (1) an event occurred and (2) the time before start of frame value of the first timer. The USB host controller interrupts the host processor of the computer system and transfers it the data related to the peripheral device. The host processor reads the current time value of the second timer located within the USB host controller. The second timer value, referred to as the time after start of frame, represents the time that has elapsed between the occurrence of the last start of frame pulse (e.g., “next start of frame pulse”) and when the processor read the second timer. The host processor then sums the time before start of frame value with the time after next start of frame value which results in the time after event value. The time after event value (X) is the specific amount of time that has elapsed since the predetermined event occurred within the real-time peripheral device, within a given accuracy, and the time when the host processor sampled the second timer. The host processor knows the actual time (Y) when the second timer was sampled, so the event happened X time units since Y.
REFERENCES:
patent: 6061411 (2000-05-01), Wooten
Chambers Peter
Evoy David R.
Goff Lonnie
Hidson Mark
VLSI Technology Inc.
Wagner , Murabito & Hao LLP
Wiley David A.
LandOfFree
Method and system for accurate temporal determination of... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and system for accurate temporal determination of..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system for accurate temporal determination of... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2493098