CN114925004A - Polling arbitrator and its polling arbitrating method and chip - Google Patents
Polling arbitrator and its polling arbitrating method and chip Download PDFInfo
- Publication number
- CN114925004A CN114925004A CN202210844780.2A CN202210844780A CN114925004A CN 114925004 A CN114925004 A CN 114925004A CN 202210844780 A CN202210844780 A CN 202210844780A CN 114925004 A CN114925004 A CN 114925004A
- Authority
- CN
- China
- Prior art keywords
- circuit
- arbitration
- request
- gate
- priority control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 18
- 238000010586 diagram Methods 0.000 description 10
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
- G06F13/366—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using a centralised polling arbiter
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Abstract
The invention provides a polling arbiter, a polling arbitration method and a chip thereof. Wherein the polling arbiter comprises: at least two arbitration circuits, a priority control circuit and an output circuit; each arbitration circuit is connected with a request source; each arbitration circuit is sequentially connected into a ring and is respectively connected with the output circuit and the priority control circuit; the output circuit is connected with a target device; each arbitration circuit responds to the highest priority control signal sent by the priority control circuit or an enabling control signal sent by the previous arbitration circuit based on the no request of the connected request source, transmits the request sent by the connected request source to the output circuit and sends the request to the target equipment through the output circuit, or sends the enabling control signal to the next arbitration circuit based on the no request of the connected request source; the priority control circuit is also connected to each request source and adjusts the highest priority control signal based on the request of the request source. The invention can make a plurality of request sources obtain arbitration more uniformly.
Description
Technical Field
The invention relates to the technical field of integrated circuits, in particular to a polling arbiter, a polling arbitration method and a chip thereof.
Background
In a computer structure, when a plurality of request sources request the same resource simultaneously, if the resource can only accept one request, an arbitration structure is needed, if the plurality of request sources need to obtain the resource uniformly, polling arbitration is needed, otherwise, a certain request source always occupies the resource, so that other request sources cannot obtain the resource, and the performance of a computing function is influenced.
Disclosure of Invention
The invention provides a polling arbiter, an arbitration method and a chip thereof, which can enable a plurality of request sources to obtain arbitration more uniformly.
In a first aspect, the present invention provides a polling arbiter, comprising: at least two arbitration circuits, a priority control circuit and an output circuit; wherein,
each arbitration circuit is connected with a request source; the arbitration circuits are sequentially connected to form a ring and are respectively connected with the output circuit and the priority control circuit; the output circuit is connected with a target device;
each arbitration circuit responds to the highest priority control signal sent by the priority control circuit or an enable control signal sent by the previous arbitration circuit based on no request of the connected request source, transmits the request sent by the connected request source to the output circuit and sends the request to the target equipment through the output circuit, or sends the enable control signal to the next arbitration circuit based on no request of the connected request source;
the priority control circuit is also respectively connected with the corresponding request source of each arbitration circuit, and adjusts the highest priority control signal based on the request of the request source.
According to the polling arbiter provided by the invention, each arbitration circuit comprises a first OR gate, a NOT gate, a first AND gate and a second AND gate;
the first input end of the first OR gate is connected with one output end of the priority control circuit, the second input end of the first OR gate is connected with the previous arbitration circuit, and the output end of the first OR gate is respectively connected with the first input ends of the first AND gate and the second AND gate;
the second input end of the first AND gate is connected with a corresponding request source, and the output end of the first AND gate is connected with one input end of the output circuit;
and the second input end of the second AND gate is connected with the output end of the NOT gate, the input end of the NOT gate is connected with the corresponding request source, and the output end of the second AND gate is connected with the next arbitration circuit.
According to the polling arbiter provided by the invention, each arbitration circuit is also connected with the target device respectively;
each of the arbitration circuits transmits a request issued by the connected request source to the output circuit based on the target device being in a ready state.
According to the polling arbiter provided by the invention, each arbitration circuit further comprises a third and gate; and the first input end of the third AND gate is connected with the output end of the first AND gate, the second input end of the third AND gate is connected with the target equipment, and the output end of the third AND gate is connected with the corresponding request source.
According to the polling arbiter provided by the invention, the priority control circuit is also connected with the target device;
the priority control circuit issues the highest priority control signal based on the target device being in a ready state.
According to the polling arbiter provided by the present invention, the priority control circuit determines the one of the arbitration circuits having a request with the highest priority in the current clock cycle;
determining the priority sequence of each arbitration circuit in the next clock cycle based on the determined priority sequence of the arbitration circuit with the highest priority and the preset arbitration circuit;
adjusting the highest priority control signal based on the determined priority order of each of the arbitration circuits for a next clock cycle.
According to the polling arbiter provided by the present invention, the priority control circuit keeps the highest priority control signal unchanged based on that each request source has no request.
According to the polling arbiter provided by the invention, the output circuit comprises a second or gate, an input end of the second or gate is connected with each arbitration circuit, and an output end of the second or gate is connected with the target device.
In a second aspect, the present invention further provides a polling arbitration method applied to the polling arbiter in the first aspect, where the method includes:
in response to a highest priority control signal from said priority control circuit, determining a current of said arbitration circuit having a highest priority;
transmitting a request sent by the connected request source to the output circuit, and sending the request to the target equipment through the output circuit, or sending an enabling control signal to the next arbitration circuit based on no request of the connected request source;
and in response to the enabling control signal issued by the former arbitration circuit based on no request of the connected request source, the latter arbitration circuit is taken as the arbitration circuit with the highest priority currently.
In a third aspect, the present invention further provides a chip, including the polling arbiter in the first aspect.
The invention provides a polling arbitrator and its polling arbitrating method and chip, through each arbitrating circuit connecting with a request source, more than two arbitrating circuits connecting in sequence to form a ring, and respectively connecting with priority control circuit and output circuit, and connecting with a target device through output circuit, making each arbitrating circuit responding to the highest priority control signal sent by the priority control circuit, or the former arbitrating circuit transmitting the request sent by the connected request source to the output circuit and sending to the target device through the output circuit, or sending the enable control signal to the latter arbitrating circuit based on the connected request source, wherein the priority control circuit also connecting with the corresponding request source of each arbitrating circuit respectively, to adjust the highest priority control signal based on the request of the request source, the system can ensure that a plurality of request sources are arbitrated more uniformly, ensure the load balance of the system on chip using the polling arbiter, maintain higher data throughput, have higher efficiency and stability and ensure higher performance.
Drawings
In order to more clearly illustrate the technical solutions of the present invention or the prior art, the drawings needed for the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and those skilled in the art can also obtain other drawings according to the drawings without creative efforts.
FIG. 1 is a block diagram of a polling arbiter according to an embodiment of the present invention;
FIG. 2 is a flow chart of a polling arbitration method according to the present invention;
FIG. 3 is a block diagram of another embodiment of a polling arbiter provided by the present invention;
FIG. 4 is a schematic flow chart of the priority control circuit adjusting the highest priority control signal according to the present invention;
FIG. 5 is a block diagram of a polling arbiter according to another embodiment of the present invention;
FIG. 6 is a schematic diagram of the structure of the arbitration circuit shown in FIG. 5;
fig. 7 is a schematic diagram of the input and output ports of the priority control circuit of fig. 5.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention clearer, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings, and it is obvious that the described embodiments are some, but not all embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Referring to fig. 1, fig. 1 is a schematic diagram illustrating a configuration of a polling arbiter according to an embodiment of the present invention. The polling arbiter provided by the present invention comprises: at least two arbitration circuits, a priority control circuit and an output circuit. Each arbitration circuit is connected with a request source, the arbitration circuits are sequentially connected to form a ring and are respectively connected with an output circuit and a priority control circuit, and the output circuit is connected with a target device. As shown in fig. 1, S00, S01, S02 are request sources, S4 is a polling arbiter, S5 is a target device where the requested resource is located, and the request sources S00, S01, S02 are connected to the target device S5 through the polling arbiter S4. The polling arbiter S4 includes: three arbitration circuits S10, S11, S12, one priority control circuit S2, and one output circuit S3. The arbitration circuit S10 is connected to the request source connection S00, processes the request from the request source S00, the arbitration circuit S11 is connected to the request source connection S01, processes the request from the request source S01, the arbitration circuit S12 is connected to the request source connection S02, processes the request from the request source S02, and the arbitration circuits S10, S11, and S12 are sequentially connected to form a ring. The priority control circuit S2 is connected to the arbitration circuits S10, S11, and S12, respectively, and adjusts the priorities of the arbitration circuits S10, S11, and S12. The output circuit S3 is connected to the arbitration circuits S10, S11, S12, respectively, and summarizes the requests of the arbitration circuits S10, S11, S12 to the target device S5.
Each arbitration circuit transmits a request from the connected request source to the output circuit and transmits the request to the target device through the output circuit in response to the highest priority control signal from the priority control circuit or an enable control signal from the previous arbitration circuit based on no request from the connected request source, or transmits an enable control signal to the next arbitration circuit based on no request from the connected request source. As shown in fig. 1, the arbitration circuit S10 transmits a request issued by the connected request source S00 to the output circuit S3 and transmits it to the target device S5 through the output circuit S3 in response to the highest priority control signal issued by the priority control circuit S2 or an enable control signal issued by the previous arbitration circuit S12 based on no request issued by the connected request source S02, or issues an enable control signal to the next arbitration circuit S11 based on no request issued by the connected request source S00. The arbitration circuit S11 transmits the request issued by the connected request source S01 to the output circuit S3 and sends it to the target device S5 through the output circuit S3 in response to the highest priority control signal issued by the priority control circuit S2 or the enable control signal issued by the previous arbitration circuit S10 based on no request issued by the connected request source S00, or issues the enable control signal to the next arbitration circuit S12 based on no request issued by the connected request source S01. The arbitration circuit S12 transmits a request issued by the connected request source S02 to the output circuit S3 and transmits it to the target device S5 through the output circuit S3 in response to the highest priority control signal issued by the priority control circuit S2 or an enable control signal issued by the previous arbitration circuit S11 based on no request issued by the connected request source S01, or issues an enable control signal to the next arbitration circuit S10 based on no request issued by the connected request source S02.
The priority control circuit is also respectively connected with the corresponding request source of each arbitration circuit, and adjusts the highest priority control signal based on the request of the request source. As shown in fig. 1, the priority control circuit S2 is also connected to the request source S00 corresponding to the arbitration circuit S10, the request source S01 corresponding to the arbitration circuit S11, and the request source S02 corresponding to the arbitration circuit S12, respectively, and adjusts the highest priority control signal based on the requests of the request sources S00, S01, and S02.
FIG. 1 illustrates three arbitration circuits S10, S11, and S12, but the number of arbitration circuits in the polling arbiter is not limited in the embodiment of the present invention, the number of arbitration circuits in the polling arbiter can be determined according to the actual application requirements, and the number of arbitration circuits in the polling arbiter can be denoted as N, where N is an integer and N ≧ 2.
Referring to fig. 2, fig. 2 is a flowchart illustrating a polling arbitration method according to the present invention. The polling arbitration method provided by the present invention is applied to the polling arbiter shown in fig. 1, and as shown in fig. 2, the polling arbitration method at least comprises the following steps:
an arbitration circuit currently having the highest priority is determined 201 in response to the highest priority control signal from the priority control circuit.
202, transmitting the request from the connected request source to the output circuit and sending it to the target device through the output circuit, or sending an enable control signal to the next arbitration circuit based on no request from the connected request source.
And 203, in response to the enabling control signal which is issued by the former arbitration circuit based on no request of the connected request source, the latter arbitration circuit is taken as the arbitration circuit with the highest priority currently.
The polling arbitrator and its arbitrating method provided by the embodiment of the invention, through each arbitrator circuit is connected with a request source, more than two arbitrator circuits are connected in sequence to form a ring, and are respectively connected with the priority control circuit and the output circuit, and are connected with a target device through the output circuit, so that each arbitrator circuit can respond to the highest priority control signal sent by the priority control circuit, or the previous arbitrator circuit transmits the request sent by the connected request source to the output circuit based on the enable control signal sent by the connected request source without request, and sends the enable control signal to the target device through the output circuit, or sends the enable control signal to the next arbitrator circuit based on the connected request source without request, wherein the priority control circuit is also connected with the request source corresponding to each arbitrator circuit respectively, so as to adjust the highest priority control signal based on the request of the request source, the system can ensure that a plurality of request sources are arbitrated more uniformly, ensure the load balance of the system on chip using the polling arbiter, maintain higher data throughput, have higher efficiency and stability and ensure higher performance.
Referring to fig. 3, fig. 3 is a schematic diagram illustrating a structure of a polling arbiter according to another embodiment of the present invention. The polling arbiter of fig. 3 differs from the polling arbiter of fig. 1 in that the respective arbitration circuits of the polling arbiter of fig. 3 are also respectively connected to the target device, and each arbitration circuit transmits a request from the connected request source to the output circuit based on the target device being in a ready state. As shown in fig. 3, the three arbitration circuits S10, S11, S12 of the polling arbiter S4 are also connected to the target device S5, respectively, the arbitration circuit S10 transmits the request issued by the connected request source S00 to the output circuit S3 based on the target device S5 being in the ready state, the arbitration circuit S11 transmits the request issued by the connected request source S01 to the output circuit S3 based on the target device S5 being in the ready state, and the arbitration circuit S12 transmits the request issued by the connected request source S02 to the output circuit S3 based on the target device S5 being in the ready state.
Optionally, the priority control circuit is further connected to the target device, and the priority control circuit issues the highest priority control signal based on the target device being in a ready state. As shown in fig. 3, the priority control circuit S2 is also connected to the target device S5, and the priority control circuit S2 issues the highest priority control signal based on the target device S5 being in the ready state.
Referring to fig. 4, fig. 4 is a schematic flow chart illustrating a priority control circuit adjusting a highest priority control signal according to the present invention. As shown in fig. 4, the priority control circuit adjusting the highest priority control signal based on the request of the request source includes at least:
401, the one arbitration circuit having the highest priority for the current clock cycle is determined to have the request.
And 402, determining the priority sequence of each arbitration circuit in the next clock cycle based on the determined priority sequence of the arbitration circuit with the highest priority and the preset arbitration circuit.
The highest priority control signal is adjusted 403 based on the determined priority order of the arbitration circuits for the next clock cycle.
Optionally, the priority control circuit keeps the priority control signal unchanged based on no request from each request source.
In the above embodiments, the arbitration circuit in the polling arbiter may be implemented by a logic circuit. Referring to fig. 5, fig. 6 and fig. 7, fig. 5 is a schematic diagram of a polling arbiter according to another embodiment of the present invention, fig. 6 is a schematic diagram of an arbitration circuit in fig. 5, and fig. 7 is a schematic diagram of an input/output port of a priority control circuit in fig. 5. The polling arbiter of fig. 5 differs from the polling arbiter of fig. 1 in that each of the arbitration circuits of the polling arbiter of fig. 5 comprises an or gate S100, a not gate S110 and two and gates S120, S130.
As shown in fig. 6, each arbitration circuit includes three inputs i1, i3, i4 and two outputs o1, o 3. The input terminal i1 is connected to a request source corresponding to the arbitration circuit, and receives a request from the request source, the input terminal i3 is connected to a previous arbitration circuit of the arbitration circuit, and receives an enable control signal from the previous arbitration circuit, the input terminal i4 is connected to an output terminal of the priority control circuit S2, and receives a priority control signal from the priority control circuit S2. The output terminal o1 is connected to one input terminal of the output circuit S3 to transmit a request to the output circuit S3, and the output terminal o3 is connected to the subsequent arbitration circuit of the arbitration circuits to issue an enable control signal to the subsequent arbitration circuit.
As shown in fig. 6, the first input terminal of the or gate S100 is the input terminal i4 of the arbitration circuit, the second input terminal of the or gate S100 is the input terminal i3 of the arbitration circuit, and the output terminal of the or gate S100 is connected to the first input terminals of the and gate S120 and the and gate S130, respectively. The second input of the AND gate S120 is the input i1 of the arbitration circuit, and the output of the AND gate S120 is the output o1 of the arbitration circuit. The output end of the nand gate S110 is connected to the second input end of the and gate S130, the input end of the not gate S110 is the input end i1 of the arbitration circuit, and the output end of the and gate S130 is the output end o3 of the arbitration circuit.
Optionally, as shown in fig. 5, each arbitration circuit may further include an and gate S140. As shown in FIG. 6, each arbitration circuit may also include an input i2 and an output o 2. The input terminal i2 is connected to the target device S5, receives the status signal of the target device S5, and the output terminal o2 is connected to the request source corresponding to the arbitration circuit, and transmits the status of the target device S5 to the request source. The first input of the AND gate S140 is the output o1 of the arbitration circuit, the second input of the AND gate S140 is the input i2 of the arbitration circuit, and the output of the AND gate S140 is the output o2 of the arbitration circuit.
The truth table of the input terminals i1, i2, i3, i4 and the output terminals o1, o2, o3 of the arbitration circuit in fig. 6 is shown in table 1.
TABLE 1
Wherein x can be 1 or 0; i4 being 1 indicates that the priority control circuit S2 issued the highest priority control signal, i4 being 0 indicates that the priority control circuit S2 did not issue the highest priority control signal; i3 is 1 to indicate that the previous arbitration circuit sends out the enable control signal, i3 is 0 to indicate that the previous arbitration circuit does not send out the enable control signal; i2 being 0 indicates that the target device S5 is in the ready state; an i1 value of 1 indicates that the request source sends out the request, an i1 value of 0 indicates that the request source does not send out the request; o3 being 1 indicates that the enable control signal is issued to the next arbitration circuit, o3 being 0 indicates that the enable control signal is not issued to the next arbitration circuit; o2 being 0 indicates that the target device S5 is in the ready state; o1 of 1 indicates that a request is transmitted to the output circuit S3, and o1 of 0 indicates that a request is not transmitted to the output circuit S3.
As shown in fig. 7, the priority control circuit S2, alternatively called a priority control module, includes three input terminals i1, i2, i3 and two output terminals o1, o2, o 3. The input terminal i1 is connected to the request source S00 corresponding to the arbitration circuit S10, and receives the request from the request source S00, the input terminal i2 is connected to the request source S01 corresponding to the arbitration circuit S11, and receives the request from the request source S01, and the input terminal i3 is connected to the request source S02 corresponding to the arbitration circuit S12, and receives the request from the request source S02. The output o1 is connected to the arbitration circuit S12, and transmits a priority control signal to the arbitration circuit S12, the output o2 is connected to the arbitration circuit S11, and transmits a priority control signal to the arbitration circuit S11, and the output o3 is connected to the arbitration circuit S10, and transmits a priority control signal to the arbitration circuit S10.
Alternatively, as shown in fig. 5, the priority control circuit S2 may also be connected to the target device S5. As shown in fig. 7, the priority control circuit S2 may further include an input terminal i4, the input terminal i4 being connected to the target device S5 for receiving a status signal of the target device S5.
The truth table of the inputs i1, i2, i3, i4 and the outputs o1, o2, o3 of the priority control circuit S2 in fig. 7 is shown in table 2.
TABLE 2
Wherein x can be 1 or 0; an i4 value of 1 indicates that the target device S5 is in the ready state, an i4 value of 0 indicates that the target device S5 is not in the ready state; an i3 value of 1 indicates that the request source S02 issued a request, an i3 value of 0 indicates that the request source S02 issued no request; an i2 value of 1 indicates that the request source S01 issued a request, an i2 value of 0 indicates that the request source S01 issued no request; an i1 value of 1 indicates that the request source S00 issued a request, an i1 value of 0 indicates that the request source S00 issued no request; o3 being 1 means the highest priority control signal is sent to the arbitration circuit S10, o3 being 0 means the highest priority control signal is not sent to the arbitration circuit S10; o2 being 1 means that the highest priority control signal is sent to the arbitration circuit S11, o2 being 0 means that the highest priority control signal is not sent to the arbitration circuit S11; o1 being 1 means the highest priority control signal is sent to the arbitration circuit S12, o1 being 0 means the highest priority control signal is not sent to the arbitration circuit S12; o3 n 、o2 n And o1 n Indicating the current clock cycle, o3 n+1 、o2 n+1 And o1 n+1 Indicating the next clock cycle; of the outputs o1, o2, o3 of the priority control circuit S2, 1 is output at the same time and only 1 output, giving the arbitration circuit the highest priority, for example, the priority control circuit S2 outputs o3=0, o2=0, o1=1 in the initial state, and the arbitration circuit S10 has the highest priority.
As shown in fig. 5, the priority control circuit S2 controls the arbitration circuits S10, S11 and S12 via S102, S112 and S122 to have a priority order of S10> S11> S12, when the arbitration circuit S10 has the highest priority, if the request source S00 sends a request to the arbitration circuit S10, the request from the request source S00 will reach the target device S5 via the arbitration circuit S10 and the output circuit S3, and the priority control circuit S2 will adjust the priority order of the arbitration circuits S10, S11 and S12 via S102, S112 and S122 to have a priority order of S11> S12> S10.
If the request source S01 has a request to the arbitration circuit S11, since the arbitration circuit S11 is the port with the highest priority, the request from the request source S01 will reach the target device S5 via the arbitration circuit S11 and the output circuit S3, and the priority control circuit S2 will adjust the priority order of the arbitration circuits S10, S11, S12 to S12> S10> S11 via S102, S112, S122.
If the request source S01 does not send any request to the arbitration circuit S11, the arbitration circuit S11 will enable the arbitration circuit S12, and if the request source S02 has a request to the arbitration circuit S12, since the arbitration circuit S12 is the port with the highest priority, the request from the request source S02 will reach the target device S5 through the arbitration circuit S12 and the output circuit S3, and the priority control circuit S2 will adjust the priority order of the arbitration circuits S10, S11, S12 to S10> S11> S12 through S102, S112, S122.
If the request source S01 does not send any request to the arbitration circuit S11, the arbitration circuit S11 will enable the arbitration circuit S12, if the request source S02 does not send any request to the arbitration circuit S12, the arbitration circuit S12 will enable the arbitration circuit S10, if the request source S00 sends any request to the arbitration circuit S10, since the arbitration circuit S10 is the port with the highest priority, the request sent by the request source S00 will reach the target device S5 via the arbitration circuit S10 and the output circuit S3, and the priority control circuit S2 will adjust the priority order of the arbitration circuits S10, S11, S12 to S11> S12> S10 via S102, S112, S122.
If there is no request from any of the three request sources S00, S01, S02, the priority control circuit S2 will keep the priority unchanged, wait for the request sources S00, S01, S02 to send requests, and then adjust the priority order of the arbitration circuits S10, S11, S12 through S102, S112, S122.
Alternatively, the output circuit in the polling arbiter may also be implemented using a logic circuit. As shown in fig. 5, the output circuit S3 may include an or gate S150, with an input of the or gate S150 connected to each of the arbitration circuits S10, S11, S12, and an output of the or gate S150 connected to the target device S5.
The polling arbiter provided by the embodiment of the invention realizes the arbitration circuit and the output circuit through the logic circuit, can shorten a critical path, improves the working frequency, and enables the circuit scale to be smaller and the power consumption to be lower.
The present invention also provides a chip that may include the polling arbiter of fig. 1, 3, or 5.
Finally, it should be noted that: the above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.
Claims (10)
1. A polling arbiter, comprising: at least two arbitration circuits, a priority control circuit and an output circuit; wherein,
each arbitration circuit is connected with a request source; the arbitration circuits are sequentially connected to form a ring and are respectively connected with the output circuit and the priority control circuit; the output circuit is connected with a target device;
each arbitration circuit responds to the highest priority control signal sent by the priority control circuit or an enable control signal sent by the previous arbitration circuit based on no request of the connected request source, transmits the request sent by the connected request source to the output circuit and sends the request to the target equipment through the output circuit, or sends the enable control signal to the next arbitration circuit based on no request of the connected request source;
the priority control circuit is also respectively connected with the corresponding request source of each arbitration circuit, and adjusts the highest priority control signal based on the request of the request source.
2. The polling arbiter of claim 1, wherein each of the arbitration circuits comprises a first OR gate, a NOT gate, a first AND gate, and a second AND gate;
the first input end of the first OR gate is connected with one output end of the priority control circuit, the second input end of the first OR gate is connected with the previous arbitration circuit, and the output end of the first OR gate is respectively connected with the first input ends of the first AND gate and the second AND gate;
the second input end of the first AND gate is connected with a corresponding request source, and the output end of the first AND gate is connected with one input end of the output circuit;
and the second input end of the second AND gate is connected with the output end of the NOT gate, the input end of the NOT gate is connected with the corresponding request source, and the output end of the second AND gate is connected with the next arbitration circuit.
3. The polling arbiter of claim 2 wherein each of the arbitration circuits is further coupled to the target device;
each of the arbitration circuits transmits a request issued by the connected request source to the output circuit based on the target device being in a ready state.
4. The polling arbiter of claim 3, wherein each of the arbitration circuits further comprises a third AND gate; and the first input end of the third AND gate is connected with the output end of the first AND gate, the second input end of the third AND gate is connected with the target equipment, and the output end of the third AND gate is connected with the corresponding request source.
5. The polling arbiter of claim 3, wherein the priority control circuit is further connected to the target device;
the priority control circuit issues the highest priority control signal based on the target device being in a ready state.
6. The polling arbiter of any one of claims 1-5 wherein the priority control circuit determines the one of the arbitration circuits having a request with the highest priority for the current clock cycle;
determining the priority sequence of each arbitration circuit in the next clock cycle based on the determined priority sequence of the arbitration circuit with the highest priority and the preset arbitration circuit;
adjusting the highest priority control signal based on the determined priority order of each of the arbitration circuits for the next clock cycle.
7. The polling arbiter of claim 6, wherein the priority control circuit maintains the highest priority control signal unchanged based on no request from each of the request sources.
8. The polling arbiter of any one of claims 1-5 wherein the output circuit comprises a second OR gate having an input connected to each of the arbitration circuits and an output connected to the target device.
9. A polling arbitration method applied to the polling arbiter of any one of claims 1 to 8, the method comprising:
in response to a highest priority control signal from said priority control circuit, determining a current of said arbitration circuit having a highest priority;
transmitting a request sent by the connected request source to the output circuit, and sending the request to the target equipment through the output circuit, or sending an enabling control signal to the next arbitration circuit based on no request of the connected request source;
and in response to the enabling control signal issued by the former arbitration circuit based on no request of the connected request source, the latter arbitration circuit is taken as the arbitration circuit with the highest priority currently.
10. A chip comprising the polling arbiter of any one of claims 1-8.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210844780.2A CN114925004B (en) | 2022-07-19 | 2022-07-19 | Polling arbitrator and its polling arbitrating method and chip |
PCT/CN2023/076171 WO2024016646A1 (en) | 2022-07-19 | 2023-02-15 | Polling arbiter and polling arbitration method therefor, and chip |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210844780.2A CN114925004B (en) | 2022-07-19 | 2022-07-19 | Polling arbitrator and its polling arbitrating method and chip |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114925004A true CN114925004A (en) | 2022-08-19 |
CN114925004B CN114925004B (en) | 2022-10-21 |
Family
ID=82815813
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210844780.2A Active CN114925004B (en) | 2022-07-19 | 2022-07-19 | Polling arbitrator and its polling arbitrating method and chip |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114925004B (en) |
WO (1) | WO2024016646A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115905088A (en) * | 2022-12-27 | 2023-04-04 | 声龙(新加坡)私人有限公司 | Data collection structure, method, chip and system |
WO2024016646A1 (en) * | 2022-07-19 | 2024-01-25 | 声龙(新加坡)私人有限公司 | Polling arbiter and polling arbitration method therefor, and chip |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1643481A (en) * | 2002-03-08 | 2005-07-20 | 飞思卡尔半导体公司 | Low power system and method for a data processing system |
CN101038573A (en) * | 2006-03-17 | 2007-09-19 | 上海奇码数字信息有限公司 | Bus arbitration method |
CN101038574A (en) * | 2006-03-17 | 2007-09-19 | 上海奇码数字信息有限公司 | Bus arbitration device |
CN101887382A (en) * | 2010-06-28 | 2010-11-17 | 中兴通讯股份有限公司 | Method and device for arbitrating dynamic priority |
US20200225986A1 (en) * | 2019-01-16 | 2020-07-16 | Stmicroelectronics Sa | Arbitration device |
CN113641605A (en) * | 2021-07-16 | 2021-11-12 | 南京大学 | Polling arbiter suitable for asynchronous circuit and method thereof |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019113917A (en) * | 2017-12-21 | 2019-07-11 | ルネサスエレクトロニクス株式会社 | Data processing device, and control method of data processing device |
US10838892B1 (en) * | 2019-07-29 | 2020-11-17 | Xilinx, Inc. | Multistage round robin arbitration |
CN114925004B (en) * | 2022-07-19 | 2022-10-21 | 中科声龙科技发展(北京)有限公司 | Polling arbitrator and its polling arbitrating method and chip |
-
2022
- 2022-07-19 CN CN202210844780.2A patent/CN114925004B/en active Active
-
2023
- 2023-02-15 WO PCT/CN2023/076171 patent/WO2024016646A1/en unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1643481A (en) * | 2002-03-08 | 2005-07-20 | 飞思卡尔半导体公司 | Low power system and method for a data processing system |
CN101038573A (en) * | 2006-03-17 | 2007-09-19 | 上海奇码数字信息有限公司 | Bus arbitration method |
CN101038574A (en) * | 2006-03-17 | 2007-09-19 | 上海奇码数字信息有限公司 | Bus arbitration device |
CN101887382A (en) * | 2010-06-28 | 2010-11-17 | 中兴通讯股份有限公司 | Method and device for arbitrating dynamic priority |
US20200225986A1 (en) * | 2019-01-16 | 2020-07-16 | Stmicroelectronics Sa | Arbitration device |
CN113641605A (en) * | 2021-07-16 | 2021-11-12 | 南京大学 | Polling arbiter suitable for asynchronous circuit and method thereof |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024016646A1 (en) * | 2022-07-19 | 2024-01-25 | 声龙(新加坡)私人有限公司 | Polling arbiter and polling arbitration method therefor, and chip |
CN115905088A (en) * | 2022-12-27 | 2023-04-04 | 声龙(新加坡)私人有限公司 | Data collection structure, method, chip and system |
Also Published As
Publication number | Publication date |
---|---|
CN114925004B (en) | 2022-10-21 |
WO2024016646A1 (en) | 2024-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114925004B (en) | Polling arbitrator and its polling arbitrating method and chip | |
US10509455B2 (en) | Method and apparatus to control a link power state | |
US20070070904A1 (en) | Feedback mechanism for flexible load balancing in a flow-based processor affinity scheme | |
US20070016709A1 (en) | Bus control system and a method thereof | |
US7328295B2 (en) | Interrupt controller and interrupt controlling method for prioritizing interrupt requests generated by a plurality of interrupt sources | |
KR19980043590A (en) | Multiple interrupt controller with intelligent prioritization method and control method | |
WO2022227565A1 (en) | Interrupt controller, interrupt control method, chip, computer device, and medium | |
US20140281099A1 (en) | METHOD, SYSTEM, AND COMPUTER PROGRAM PRODUCT FOR CONTROLLING FLOW OF PCIe TRANSPORT LAYER PACKETS | |
US10872051B2 (en) | Bus control circuit | |
CN110875867B (en) | Bus access arbitration device and method | |
CN114742000B (en) | SoC chip verification system, method and device based on FPGA cluster | |
CN117453596B (en) | Protocol controller, protocol control method, core particle, system on chip and electronic equipment | |
CN115080474B (en) | Weighted polling arbitrator and polling arbitrating method and chip thereof | |
JP2001014243A (en) | Reception interrupt processor | |
CN117389766A (en) | Message sending method and device, storage medium and electronic device | |
CN112995058B (en) | Token adjusting method and device | |
CN116185938A (en) | Multi-core heterogeneous system and interaction method thereof | |
CN113867802B (en) | Interrupt distribution device, chip and electronic equipment | |
CN115495399A (en) | Distributed arbitration system, method, device, storage medium and electronic equipment | |
US20030031197A1 (en) | Multiple arbitration circuit | |
US10585833B1 (en) | Flexible PCIe topology | |
US20190227841A1 (en) | Arbitration of multiple requests | |
US11847089B2 (en) | Electronic device and method for sharing data lanes of a network interface device between two or more computing devices | |
US20220334630A1 (en) | Techniques For Power Management In Compute Circuits | |
US20230229612A1 (en) | Dynamic equality of service in a switch network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230413 Address after: 10 Jialeng Road, Singapore # 09-11 339510 Patentee after: Shenglong (Singapore) Pte. Ltd. Address before: 1605, floor 16, No. 9, North Fourth Ring West Road, Haidian District, Beijing 100080 Patentee before: SUNLUNE TECHNOLOGY DEVELOPMENT (BEIJING) Co.,Ltd. |
|
TR01 | Transfer of patent right |