Electrical computers and digital data processing systems: input/ – Access arbitrating – Access prioritizing
Reexamination Certificate
2001-06-15
2003-10-14
Auve, Glenn A. (Department: 2181)
Electrical computers and digital data processing systems: input/
Access arbitrating
Access prioritizing
C710S116000
Reexamination Certificate
active
06633939
ABSTRACT:
FIELD OF THE INVENTION
The present invention relates to arbitration techniques implemented in the framework of information-processing systems.
BRIEF DESCRIPTION
The increasing complexity in terms of architecture of information-processing systems, and in particular of the so-called “embedded” systems, renders increasingly more important the optimization of the cycles of transfer of data flow from the so-called “initiators” to the so-called “targets” of a system.
In general, the definition of initiator applies to any unit that is able to initiate autonomously a transaction such as to involve the use of a resource (for instance, a dedicated or shared bus) in order to read or write data.
The definition of target applies to any unit starting from which or with which an initiator is able to read or write data.
A system such as an embedded system may have a large number of initiator units, as well as a large number of target units.
At the moment in which two or more initiators simultaneously endeavor to start a transaction aimed at an identical target, it is necessary to solve the conflict by means of an arbitration function. The implementation of such a function may often prove burdensome, in particular in terms of speed of execution.
FIG. 2
of the annexed drawings shows an arbitration procedure carried out according to a solution known in the art within the framework of a generic system (for example, of the embedded type), represented in
FIG. 1
, a figure which in itself applies both to the prior art and to the invention.
At the start of the respective transaction, each initiator I
1
, I
2
, I
3
, etc., presents a priority to the so-called system arbiter A, which solves the conflict by enabling start of the transactions by the initiators having the highest priority and proceeding progressively down to the ones with the lowest priority. Data transactions towards any target T are thus regulated by the arbiter A, which solves the possible conflicts by means of the priority information supplied by the initiators themselves. A transaction consists in the transfer of a data packet from the initiator involved to the target T or vice versa.
At the start of transaction, each initiator I
1
, I
2
, I
3
, etc., asserts a request signal to the arbiter A. The arbiter signals that the transaction has been accepted by means of a grant signal asserted to the initiator with the highest priority among the ones that wish to start the transaction simultaneously. Then it signals, in the subsequent cycles, acceptance of the transactions to the initiators having lower priorities when the transactions having higher priorities have been completed.
This procedure is shown schematically in
FIG. 2
with reference to a system comprising three initiators I
1
, I
2
, I
3
and a target T. The arbiter A, which operates according to the clock signal represented in the diagram at the top of
FIG. 2
, solves any conflicts on the basis of the priorities received with the timings shown in the FIG. All this is done by applying basically a mechanism of comparison of inequalities in sequential order, as represented in FIG.
2
. Here, it is assumed that initiator I
1
has a higher priority than initiator I
2
, which in turn has a higher priority than initiator I
3
, so that grants are granted in order first to initiator I
1
, then to initiator I
2
, and finally to initiator I
3
.
Albeit functional, the mechanism described above presents intrinsic limits related to the speed of execution of the arbitration algorithm, to the sensitivity of the speed of execution of arbitration according to the coding of the priority (typically on a generic number n of bits), and to a marked increase in the execution delay as the number of initiators increases.
SUMMARY OF THE INVENTION
An embodiment of the present invention provides a solution that is able to overcome the drawbacks referred to above.
The arbitration procedure according to an embodiment of the invention is basically a variable-priority arbitration mechanism that can be used advantageously in high-speed applications, such as in decoders for high-definition television signals. The corresponding interconnection subsystem, comprising three initiators or requesters (LMI, up-Interface, and GPx Interface units) and a target T (the SDRAM memory interface), is able to operate with a clock signal, for example, at 100 MHz. The solution makes it possible to differentiate processes having different priorities, which can access the external SDRAM through the same initiator.
In general, the solution may, however, be used in N×M systems (i.e., with N initiators and M targets) by introducing an arbiter for each destination. The time of execution of the procedure increases only as a result of the decoding of the destination address; hence—referring to current technologies (such as 0.25-micron technology)—with values of a few tenths of nanoseconds for each destination.
REFERENCES:
patent: 5381551 (1995-01-01), Maeda et al.
patent: 5862353 (1999-01-01), Revilla et al.
patent: 6519666 (2003-02-01), Azevedo et al.
patent: 0 552 507 (1993-07-01), None
patent: WO 94/08301 (1994-04-01), None
Butta' Pasquale
Marty Pierre
Auve Glenn A.
Iannucci Robert
Jorgenson Lisa K.
Seed IP Law Group PLLC
STMicroelectronics S.r.l.
LandOfFree
Variable-priority arbitration method and respective system does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Variable-priority arbitration method and respective system, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Variable-priority arbitration method and respective system will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3116049