Apparatus for pacing cycle steals from a data processor and...

Electrical computers and digital data processing systems: input/ – Input/output data processing – Direct memory accessing

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C710S112000, C710S022000, C709S241000

Reexamination Certificate

active

06470400

ABSTRACT:

TECHNICAL FIELD
The present invention relates in general to data processor systems, and more particularly, to a method and apparatus for managing cycle steals in a data processor system.
BACKGROUND INFORMATION
In data processor systems having multiple processors, devices must be employed to allocate cycle resources between processors. A resource manager performing this function by allocating cycle resources to a data processor can easily track some of these cycle resources. Cycles used for code execution, data direct memory access (DMA) cycle steals (cycles unavailable to the data processor because of competition for a common resource), and other hardware services are easily tracked and accounted for because they are either periodic or predictable. However, cycles stolen because of asynchronous accesses to cycle resources by a second processor (such as a host personal computer) are not as easily tracked or managed.
Traditionally, the cycles stolen by the second processor have been limited by having the second processor pace itself through software timing loops in which it is assumed that each access to the data processor “steals” a constant number of cycles. This approach provides a crude method of estimating the worst case cycle steal threshold. As a consequence, reduced data throughput, and unused cycle resources result. Moreover, because the software timing loops are usually based on the second processor's system clock, typically a host processor's system clock which is different from the data processor system clock, the host's software is often required to perform a calibration step in order to adjust the timing loop counts.
Therefore, there is a need in the art for circuitry and methods that allow the second processor to precisely and deterministically limit and track all cycles stolen from the data processor core. Such circuitry and methods would provide a device for obtaining the maximum data throughput for a given cycle resource allocation. The same circuitry and methods would also eliminate the necessity for the software running on the second processor to perform a calibration to adjust the software timing loop counts.
SUMMARY OF THE INVENTION
The previously mentioned needs are fulfilled by the present invention. The invention tracks and deterministically limits all cycles stolen from the data processor over periods of time in which data processor resources are accessed by other processors. The invention accomplishes this by employing a cycle steal pacing counter which accumulates clock cycles during time intervals in which the data processor is being held, that is, instruction execution by the data processor stopped, because of system memory access by another processor. All such clock cycles are accumulated by the cycle steal pacing counter during a time interval corresponding to the period of an interrupt clock which is the basis for scheduling data processor tasks.
Access to data processor cycle resources is controlled by the value of the number of stolen clock cycles contained in the cycle steal pacing counter. In the time interval determined by the period of the interrupt clock, the processor seeking access to data processor cycle resources can access the cycle count value contained in the cycle steal pacing counter. This value is then used by the software controlling the access-seeking processor to limit the access to data processor cycle resources. Access limitation using software running on the accessing processor is a feature of the present invention.
The use of software in managing cycle resource accesses adds to the versatility of the invention. The algorithm controlling access to data processor cycle resources, a pacing algorithm, can be defined to best meet the needs of the data system design. During a period of time in which cycle steals by the accessing processor are inhibited because its allocation has been reached, the software can perform other activities. In contrast, a “hardware only” solution would stall the accessing processor, not allowing any background processing in the accessing processor. Thus, the present invention is advantageous over the use of hardware alone to do the access pacing.
The foregoing has outlined rather broadly the features and technical advantages of the present invention in order that the detailed description of the invention that follows may be better understood. Additional features and advantages of the invention will be described hereinafter which form the subject of the claims of the invention.


REFERENCES:
patent: 4038642 (1977-07-01), Bouknecht et al.
patent: 4181938 (1980-01-01), Suzuki et al.
patent: 4246637 (1981-01-01), Brown et al.
patent: 4275440 (1981-06-01), Adams, Jr. et al.
patent: 4339793 (1982-07-01), Marenin
patent: 4417304 (1983-11-01), Dinwiddie, Jr.
patent: 4514823 (1985-04-01), Mendelson et al.
patent: 4975832 (1990-12-01), Saito et al.
patent: 5384906 (1995-01-01), Horst
patent: 5485613 (1996-01-01), Engelstad et al.
patent: 5493664 (1996-02-01), Doi
patent: 5539916 (1996-07-01), Yamasaki et al.
patent: 5978867 (1999-11-01), Carmon et al.
patent: 5982814 (1999-11-01), Yeh et al.
patent: 6085218 (2000-07-01), Carmon

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Apparatus for pacing cycle steals from a data processor and... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Apparatus for pacing cycle steals from a data processor and..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Apparatus for pacing cycle steals from a data processor and... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2992576

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.