CN108153689B - Method and apparatus for polling arbitration - Google Patents

Method and apparatus for polling arbitration Download PDF

Info

Publication number
CN108153689B
CN108153689B CN201611108766.7A CN201611108766A CN108153689B CN 108153689 B CN108153689 B CN 108153689B CN 201611108766 A CN201611108766 A CN 201611108766A CN 108153689 B CN108153689 B CN 108153689B
Authority
CN
China
Prior art keywords
data source
data
current channel
arbitration
processing state
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.)
Active
Application number
CN201611108766.7A
Other languages
Chinese (zh)
Other versions
CN108153689A (en
Inventor
不公告发明人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BYD Co Ltd
Original Assignee
BYD Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by BYD Co Ltd filed Critical BYD Co Ltd
Priority to CN201611108766.7A priority Critical patent/CN108153689B/en
Publication of CN108153689A publication Critical patent/CN108153689A/en
Application granted granted Critical
Publication of CN108153689B publication Critical patent/CN108153689B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/3625Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using a time dependent access

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Bus Control (AREA)

Abstract

The invention discloses a method and a device for polling arbitration, wherein the method comprises the following steps: in the process of polling each channel, when the current channel is polled, judging whether a data source in the current channel provides an arbitration application or not; and if the data source is judged to provide the arbitration application, acquiring the data processing state of the current channel, and determining whether to authorize the data source according to the data processing state. The polling arbitration method of the embodiment of the invention determines whether to authorize the data source according to the arbitration application and the processing state, thereby effectively avoiding the data source authorization of the channel with the problem in the processing state, improving the scheduling efficiency of the channel and further improving the processing efficiency of the data.

Description

Method and apparatus for polling arbitration
Technical Field
The present invention relates to the field of data technologies, and in particular, to a method and an apparatus for polling arbitration.
Background
In the field of data transmission, data to be processed often comes from a plurality of different data sources, these different data sources are usually in different channels, and when data is exchanged in a large batch in the data sources of the different channels, an external Memory (e.g., a Static Random Access Memory) is generally used to cache the data.
Currently, there are two arbitration methods for external memory, one is fixed optimization level arbitration and the other is round robin arbitration. The fixed optimization arbitration rules define different priorities of data sources in advance, and the high priority responds in advance. The polling arbitration rule is that a plurality of data sources have the same priority, the first data source has the highest priority during initialization, the next data source has the highest priority after response, and so on.
A general polling arbitration method generally adopts a processing method of applying for, i.e. granting, that is, when polling to a current channel, if a data source in the current channel makes an arbitration request, the data source in the current channel is granted. However, in some cases, when accessing the data source in the current channel, since the data source in the current channel makes an arbitration request, the data source in the current channel must be scheduled before accessing other channels, but if there is a problem in the processing state of the data source in the current channel, such a data source does not need to be granted, the data source with a problem in the processing state is granted, and the data source with a problem occupies arbitration resources, which easily affects the processing process, resulting in low processing efficiency.
Disclosure of Invention
The object of the present invention is to solve at least to some extent one of the above mentioned technical problems.
Therefore, a first objective of the present invention is to provide a polling arbitration method, which determines whether to authorize a data source according to an arbitration application and a processing state, thereby effectively avoiding data source authorization with a problem in the processing state, releasing arbitration resources in time, and further improving the processing efficiency of data.
A second object of the present invention is to provide a polling arbitration device.
In order to achieve the above object, a polling arbitration method in an embodiment of the first aspect of the present invention includes: in the process of polling each channel, when the current channel is polled, judging whether a data source in the current channel provides an arbitration application or not; and if the data source is judged to provide the arbitration application, acquiring the data processing state of the current channel, and determining whether to authorize the data source according to the data processing state.
In the polling arbitration method of the embodiment of the invention, in the process of polling each channel, when the current channel is polled, whether the data source in the current channel provides an arbitration application or not is judged, and when the data source provides the arbitration application, the data processing state of the current channel is obtained, and whether the data source is authorized or not is determined according to the data processing state. Therefore, whether the data source is authorized or not is determined according to the arbitration application and the processing state, so that the data source authorization of the channel with the problem in the processing state is effectively avoided, arbitration resources are released in time, and the data processing efficiency can be improved.
In an embodiment of the present invention, the determining whether to authorize the data source according to the data processing state includes:
judging whether the data caching amount exceeds a data caching threshold of the current channel;
and if not, authorizing the data source so that the data source can access the external memory.
In one embodiment of the invention, the processing state comprises a data check state;
the determining whether to authorize the data source according to the data processing state includes:
determining whether the data source is accurate according to the data verification state;
and if so, authorizing the data source so that the data source can access the external memory.
In one embodiment of the invention, after the authorizing the data source, the method further comprises:
starting timing, and judging whether the data source finishes the transmission of the current data frame when the timing time reaches a first preset time;
if not, the authorization of the data source is forcibly cancelled when the timing time reaches a second preset time, wherein the time interval between the second preset time and the first preset time is greater than the time required for transmitting a data frame.
In one embodiment of the invention, after the enforcing cancellation of the authorization of the data source, the method further comprises:
and determining the next access channel according to the current channel.
In order to achieve the above object, an apparatus for polling arbitration according to an embodiment of a second aspect of the present invention includes: the judging module is used for judging whether a data source in the current channel provides an arbitration application or not when the current channel is polled in the process of polling each channel; and the first processing module is used for acquiring the data processing state of the current channel when judging that the data source provides an arbitration application, and determining whether to authorize the data source according to the data processing state.
In the polling arbitration device of the embodiment of the invention, in the process of polling each channel, when the current channel is polled, whether the data source in the current channel provides an arbitration application or not is judged, and when the data source provides the arbitration application, the data processing state of the current channel is obtained, and whether the data source is authorized or not is determined according to the data processing state. Therefore, whether the data source is authorized or not is determined according to the arbitration application and the processing state, so that the data source authorization of the channel with the problem in the processing state is effectively avoided, arbitration resources are released in time, and the data processing efficiency can be improved.
In an embodiment of the present invention, the first processing module is specifically configured to:
judging whether the data caching amount exceeds a data caching threshold of the current channel;
and if not, authorizing the data source so that the data source can access the external memory.
In one embodiment of the invention, the processing state comprises a data check state;
the first processing module is specifically configured to:
determining whether the data source is accurate according to the data verification state;
and if so, authorizing the data source so that the data source can access the external memory.
In one embodiment of the invention, the apparatus further comprises:
the second processing module is used for starting timing and judging whether the data source finishes the transmission of the current data frame when the timing time reaches a first preset time;
and the cancelling module is used for controlling to forcibly cancel the authorization of the data source when the timing time reaches a second preset time when the data source is judged to transmit the current data frame, wherein the time interval between the second preset time and the first preset time is greater than the time required for transmitting one data frame.
In one embodiment of the invention, the apparatus further comprises:
and the determining module is used for determining a next access channel according to the current channel.
Additional aspects and advantages of the invention will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the invention.
Drawings
The above and/or additional aspects and advantages of the present invention will become apparent and readily appreciated from the following description of the embodiments, taken in conjunction with the accompanying drawings of which,
FIG. 1 is a flow diagram of a method of polling arbitration according to one embodiment of the present invention;
FIG. 2 is a flow diagram of a method of polling arbitration according to another embodiment of the present invention;
FIG. 3 is a flow diagram of a method of polling arbitration according to yet another embodiment of the present invention;
FIG. 4 is a block diagram of an apparatus for round robin arbitration according to an embodiment of the present invention;
FIG. 5 is a schematic diagram of an apparatus for polling arbitration according to another embodiment of the present invention;
fig. 6 is a schematic structural diagram of a polling arbitration device according to another embodiment of the present invention.
Detailed Description
Reference will now be made in detail to embodiments of the present invention, examples of which are illustrated in the accompanying drawings, wherein like or similar reference numerals refer to the same or similar elements or elements having the same or similar function throughout. The embodiments described below with reference to the drawings are illustrative and intended to be illustrative of the invention and are not to be construed as limiting the invention.
A method and apparatus for round robin arbitration according to an embodiment of the present invention is described below with reference to the accompanying drawings.
FIG. 1 is a flow diagram of a method of polling arbitration according to one embodiment of the present invention.
As shown in fig. 1, the polling arbitration method includes:
s11, in the process of polling each channel, when polling the current channel, judging whether the data source in the current channel provides arbitration application.
And S12, if the data source is judged to provide the arbitration application, acquiring the data processing state of the current channel, and determining whether to authorize the data source according to the data processing state.
In one embodiment of the invention, the processing state may include a data buffer amount.
Specifically, after the data source is obtained and an arbitration application is made, whether the data caching amount of the current channel exceeds the data caching threshold of the current channel or not can be judged according to the data processing state, if not, the data source is authorized to access the external memory, namely, the data source obtains the access authority of the external memory.
In addition, if the data caching quantity of the current channel exceeds the data caching threshold of the current channel, the authorization of the data source is cancelled.
In one embodiment of the invention, after the authorization of the data source is cancelled, the next channel to be accessed can be determined according to the current channel so as to process the data source in the next channel.
In another embodiment of the present invention, when the processing state includes a data verification state, it is determined whether the data source is accurate based on the data verification state. If so, the data source is authorized to access the external memory. That is, after determining that the data source is accurate according to the data verification status, the data source obtains the access right of the external storage.
Specifically, after the arbitration application of the data source is determined, whether the data verification state is correct or not is judged, if yes, the data source is determined to be accurate, and the data source is authorized, so that the data source can access the external memory.
In addition, if the data source is determined to be inaccurate based on the data verification status, authorization of the data source is revoked. That is, when the data verification status of the current channel is determined to be wrong, it is determined that the data source in the current channel has a mistake, and authorization for the data source is given up, that is, the data source cannot obtain the access right of the external memory. Therefore, the data source with problems can be prevented from being authorized, arbitration resources are released in time, and the data flow control effect is achieved.
In addition, after the authorization of the data source is cancelled, the next channel to be accessed can be determined according to the current channel so as to process the data source in the next channel to be accessed. Therefore, the arbitration resource can be released in time, so that the next data source can access the external memory in time.
In an embodiment of the present invention, when the processing state includes a data buffering amount and a data checking state, it may be determined whether the data buffering amount exceeds a data buffering threshold of the current channel, and whether the data calibration state of the current channel is accurate, and if one of the two states meets a condition, it is determined that a data source in the current channel has a problem, and authorization for the data source is cancelled, that is, the data source cannot obtain an access right of the external memory. Therefore, the data source with problems is prevented from being authorized, and arbitration resources are released in time, so that the next data source can access the external memory in time.
In addition, if both satisfy the condition, the data source is determined to be correct, and the data source in the current channel is authorized. That is, the data source issues an arbitration request, and if there is no error, the data source is granted, that is, the data source in the current channel obtains the access right to access the external memory.
In the polling arbitration method of the embodiment of the invention, in the process of polling each channel, when the current channel is polled, whether the data source in the current channel provides an arbitration application or not is judged, and when the data source provides the arbitration application, the data processing state of the current channel is obtained, and whether the data source is authorized or not is determined according to the data processing state. Therefore, whether the data source is authorized or not is determined according to the arbitration application and the processing state, so that the data source authorization of the channel with the problem in the processing state is effectively avoided, arbitration resources are released in time, and the data processing efficiency can be improved.
In one embodiment of the present invention, after authorizing the data source in the current channel, in order to ensure the integrity of the data frame, as shown in fig. 2, the method of polling arbitration further comprises:
and S21, starting timing, and judging whether the data source finishes the transmission of the current data frame when the timing time reaches a first preset time.
And S22, if not, controlling to forcibly cancel the authorization of the data source when the timing time reaches a second preset time.
The time interval between the second preset time and the first preset time is greater than the time required for transmitting one data frame.
Wherein, it should be understood that the second preset time is greater than the first preset time.
Wherein the second preset time is preset according to the first preset time and the time required for transmitting a maximum data frame.
In addition, it should be understood that, when the timing time reaches the first preset time, if the data source is judged to end the transmission of the current data frame, the authorization of the data source is cancelled.
In one embodiment of the invention, after the authorization of the data source is forcibly cancelled, the next channel to be accessed is determined according to the current channel, so that the data sources of other channels can access the external memory.
In summary, in this embodiment, when the data source is monitored to reach the first preset time, if it is determined that the data source has the data frame being transmitted, in order to ensure the integrity of the data frame, a period of buffer time is provided before the arbitration grant of the data source is cancelled, so that the data source can complete the transmission of the data frame in the buffer time, and the integrity of the data frame being transmitted is ensured.
The polling arbitration method of the embodiment of the invention starts timing after authorizing the data source in the current channel, continues timing if judging that the transmission of the current data frame of the data source is not finished when the timing time reaches the first preset time, and forcibly cancels the authorization of the data source when the timing time reaches the second preset time, thereby ensuring that the data source can continue transmitting the current data frame when the timing time does not reach the second preset time, thereby ensuring the integrity of the data frame.
Fig. 3 is a flow diagram of a method of polling arbitration according to yet another embodiment of the present invention.
As shown in fig. 3, the polling arbitration method includes:
s31, judging whether the data source in the current channel has made an arbitration request, if not, executing step S32, if yes, executing step S33.
And S32, determining the next accessed channel according to the current channel so as to process the data source of the accessed channel.
That is, when the channel of the next access is processed, the channel of the next access is the current channel.
Specifically, the next channel to be accessed is determined according to the polling mechanism and the current channel so as to process the data source in the next channel.
S33, obtaining the data processing state of the current channel, and determining whether to authorize the data source in the current channel according to the data processing state, if yes, executing step S34, if no, executing step S32.
In an embodiment of the present invention, when the processing state includes a data caching amount, it may be determined whether the data caching amount exceeds a data caching threshold of the current channel, and if not, the data source in the current channel is authorized.
In another embodiment of the present invention, when the processing state includes a data verification state, it is determined whether the data source is accurate based on the data verification state. If so, the data source is authorized.
Specifically, after determining the arbitration application of the data source in the current channel, judging whether the data verification state of the current channel is correct, if so, determining that the data source is accurate, and authorizing the data source so that the data source in the current channel can access the external memory.
In addition, if the data source is determined to be inaccurate based on the data verification status, authorization of the data source is revoked. That is, when the data verification status of the current channel is determined to be wrong, it is determined that the data source in the current channel has a mistake, and authorization for the data source is given up, that is, the data source cannot obtain the access right of the external memory. Therefore, the data source with problems can be prevented from being authorized, arbitration resources are released in time, and the data flow control effect is achieved.
In an embodiment of the present invention, when the processing state includes a data buffering amount and a data checking state, it may be determined whether the data buffering amount exceeds a data buffering threshold of a current channel, and whether a data calibration state of the data source is accurate, and if one of the two states meets a condition, it is determined that the data source has a problem, and authorization for the data source is cancelled, that is, the data source cannot obtain an access right of the external memory. Therefore, the data source with problems is prevented from being authorized, and arbitration resources are released in time, so that the next data source can access the external memory in time.
In addition, if both satisfy the condition, the data source is determined to be correct, and the data source is authorized. That is, the data source in the current channel makes an arbitration request, and if there is no error, the data source is granted, that is, the data source in the current channel obtains the access right to access the external memory.
S34, start timing, and when the timing time reaches a first preset time, determine whether the data source has finished transmitting the current data frame, if yes, execute step S32, otherwise execute step S35.
And S35, controlling to forcibly cancel the authorization of the data source in the current channel when the timing time reaches a second preset time.
The time interval between the second preset time and the first preset time is greater than the time required for transmitting one data frame.
Wherein, it should be understood that the second preset time is greater than the first preset time.
Wherein the second preset time is preset according to the first preset time and the time required for transmitting a maximum data frame.
In addition, it should be understood that, when the timing time reaches the first preset time, if the data source is judged to end the transmission of the current data frame, the authorization of the data source is cancelled.
In one embodiment of the invention, after the authorization of the data source is forcibly cancelled, the next channel to be accessed is determined according to the current channel, so that the data sources in other channels can access the external memory.
The polling arbitration method of the embodiment of the invention judges whether a data source in the current channel provides an arbitration application or not when polling to the current channel in the process of polling each channel, acquires the data processing state of the current channel when the data source provides the arbitration application, determines whether to authorize the data source or not according to the data processing state, starts timing after authorizing the data source, continues timing when the timing time reaches a first preset time and if the transmission of the current data frame of the data source is judged to be not finished, and forcibly cancels the authorization of the data source when the timing time reaches a second preset time. Therefore, whether the data source is authorized or not is determined according to the arbitration application and the processing state, so that the data source authorization of the channel with the problem in the processing state is effectively avoided, and the scheduling efficiency of the channel is improved. Meanwhile, the data source can continuously transmit the current data frame when the timing time does not reach the second preset time, so that the integrity of the data frame is ensured.
In order to implement the above embodiment, the present invention further provides a polling arbitration device.
Fig. 4 is a schematic structural diagram of an apparatus for polling arbitration according to an embodiment of the present invention.
As shown in fig. 4, the polling arbitration apparatus may further include a determining module 110 and a first processing module 120, wherein:
the determining module 110 is configured to determine whether a data source in a current channel provides an arbitration application when polling the current channel in the process of polling each channel.
The first processing module 120 is configured to, when it is determined that the data source provides an arbitration request, obtain a data processing state of the current channel, and determine whether to authorize the data source according to the data processing state.
In one embodiment of the invention, the processing state includes a data cache amount.
The first processing module 120 is specifically configured to: judging whether the data caching amount exceeds a data caching threshold of a current channel; if not, the data source is authorized so that the data source can access the external memory.
In one embodiment of the invention, the processing state comprises a data check state.
The first processing module 120 is specifically configured to: determining whether the data source is accurate according to the data verification state; if so, the data source is authorized to access the external memory.
In an embodiment of the present invention, after the first processing module 120 authorizes the data source, for the integrity of the data frame, on the basis of fig. 4, as shown in fig. 5, the apparatus may further include a second processing module 130 and a cancellation module 140, where:
the second processing module 130 is configured to start timing, and determine whether the data source finishes transmission of the current data frame when the timing time reaches a first preset time.
The canceling module 140 is configured to, when it is determined that the data source transmits the current data frame, control to forcibly cancel the authorization of the data source when the timing time reaches a second preset time.
The time interval between the second preset time and the first preset time is greater than the time required for transmitting one data frame.
In one implementation of the present invention, on the basis of fig. 5, as shown in fig. 6, the apparatus may further include a determining module 150, wherein:
the determining module 150 is configured to determine a next visited channel according to the current channel.
In particular, after de-authorizing the data source in the current channel, the determination module may determine the next channel to access based on the polling mechanism and the current channel.
It should be noted that the foregoing explanation of the polling arbitration method embodiment is also applicable to the polling arbitration device of this embodiment, and the implementation principle is similar, and is not described herein again.
In the polling arbitration device of the embodiment of the invention, in the process of polling each channel, when the current channel is polled, whether the data source in the current channel provides an arbitration application or not is judged, and when the data source provides the arbitration application, the data processing state of the current channel is obtained, and whether the data source is authorized or not is determined according to the data processing state. Therefore, whether the data source is authorized or not is determined according to the arbitration application and the processing state, so that the data source authorization of the channel with the problem in the processing state is effectively avoided, arbitration resources are released in time, and the data processing efficiency can be improved.
In the description herein, references to the description of the term "one embodiment," "some embodiments," "an example," "a specific example," or "some examples," etc., mean that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the invention. In this specification, the schematic representations of the terms used above are not necessarily intended to refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Furthermore, various embodiments or examples and features of different embodiments or examples described in this specification can be combined and combined by one skilled in the art without contradiction.
Furthermore, the terms "first", "second" and "first" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one such feature. In the description of the present invention, "a plurality" means at least two, e.g., two, three, etc., unless specifically limited otherwise.
Any process or method descriptions in flow charts or otherwise described herein may be understood as representing modules, segments, or portions of code which include one or more executable instructions for implementing specific logical functions or steps of the process, and alternate implementations are included within the scope of the preferred embodiment of the present invention in which functions may be executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved, as would be understood by those reasonably skilled in the art of the present invention.
The logic and/or steps represented in the flowcharts or otherwise described herein, e.g., an ordered listing of executable instructions that can be considered to implement logical functions, can be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions. For the purposes of this description, a "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of the computer-readable medium would include the following: an electrical connection (electronic device) having one or more wires, a portable computer diskette (magnetic device), a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber device, and a portable compact disc read-only memory (CDROM). Additionally, the computer-readable medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via for instance optical scanning of the paper or other medium, then compiled, interpreted or otherwise processed in a suitable manner if necessary, and then stored in a computer memory.
It should be understood that portions of the present invention may be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, the various steps or methods may be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, any one or combination of the following techniques, which are known in the art, may be used: a discrete logic circuit having a logic gate circuit for implementing a logic function on a data signal, an application specific integrated circuit having an appropriate combinational logic gate circuit, a Programmable Gate Array (PGA), a Field Programmable Gate Array (FPGA), or the like.
It will be understood by those skilled in the art that all or part of the steps carried by the method for implementing the above embodiments may be implemented by hardware related to instructions of a program, which may be stored in a computer readable storage medium, and when the program is executed, the program includes one or a combination of the steps of the method embodiments.
In addition, functional units in the embodiments of the present invention may be integrated into one processing module, or each unit may exist alone physically, or two or more units are integrated into one module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode. The integrated module, if implemented in the form of a software functional module and sold or used as a stand-alone product, may also be stored in a computer readable storage medium.
The storage medium mentioned above may be a read-only memory, a magnetic or optical disk, etc. Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention, and that variations, modifications, substitutions and alterations can be made to the above embodiments by those of ordinary skill in the art within the scope of the present invention.

Claims (6)

1. A method of polling arbitration, comprising the steps of:
in the process of polling each channel, when the current channel is polled, judging whether a data source in the current channel provides an arbitration application or not;
if the data source is judged to provide arbitration application, acquiring the data processing state of the current channel, and determining whether to authorize the data source according to the data processing state;
the processing state includes a data buffer amount,
the determining whether to authorize the data source according to the data processing state includes:
judging whether the data caching amount exceeds a data caching threshold of the current channel;
if not, authorizing the data source to enable the data source to access an external memory;
after the authorizing the data source, the method further comprises:
starting timing, and judging whether the data source finishes the transmission of the current data frame when the timing time reaches a first preset time;
if not, the authorization of the data source is forcibly cancelled when the timing time reaches a second preset time, wherein the time interval between the second preset time and the first preset time is greater than the time required for transmitting a data frame.
2. The method of claim 1, wherein the processing state comprises a data check state;
the determining whether to authorize the data source according to the data processing state includes:
determining whether the data source is accurate according to the data verification state;
and if so, authorizing the data source so that the data source can access the external memory.
3. The method of claim 2, wherein after the enforcing the revocation of the authorization of the data source, the method further comprises:
and determining the next access channel according to the current channel.
4. An apparatus for polling arbitration, comprising:
the judging module is used for judging whether a data source in the current channel provides an arbitration application or not when the current channel is polled in the process of polling each channel;
the first processing module is used for acquiring the data processing state of the current channel when judging that the data source provides an arbitration application, and determining whether to authorize the data source according to the data processing state;
the processing state includes a data buffer amount,
the first processing module is specifically configured to:
judging whether the data caching amount exceeds a data caching threshold of the current channel;
if not, authorizing the data source to enable the data source to access an external memory;
the device further comprises:
the second processing module is used for starting timing and judging whether the data source finishes the transmission of the current data frame when the timing time reaches a first preset time;
and the cancelling module is used for controlling to forcibly cancel the authorization of the data source when the timing time reaches a second preset time when the data source is judged to transmit the current data frame, wherein the time interval between the second preset time and the first preset time is greater than the time required for transmitting one data frame.
5. The apparatus of claim 4, wherein the processing state comprises a data check state;
the first processing module is specifically configured to:
determining whether the data source is accurate according to the data verification state;
and if so, authorizing the data source so that the data source can access the external memory.
6. The apparatus of claim 5, wherein the apparatus further comprises:
and the determining module is used for determining a next access channel according to the current channel.
CN201611108766.7A 2016-12-06 2016-12-06 Method and apparatus for polling arbitration Active CN108153689B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611108766.7A CN108153689B (en) 2016-12-06 2016-12-06 Method and apparatus for polling arbitration

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611108766.7A CN108153689B (en) 2016-12-06 2016-12-06 Method and apparatus for polling arbitration

Publications (2)

Publication Number Publication Date
CN108153689A CN108153689A (en) 2018-06-12
CN108153689B true CN108153689B (en) 2020-04-24

Family

ID=62471021

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611108766.7A Active CN108153689B (en) 2016-12-06 2016-12-06 Method and apparatus for polling arbitration

Country Status (1)

Country Link
CN (1) CN108153689B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111783378B (en) * 2020-06-30 2022-05-17 迈普通信技术股份有限公司 Data processing method and FPGA
CN113722069B (en) * 2021-09-06 2024-02-27 北京左江科技股份有限公司 Novel bus polling scheduling method and system based on FPGA

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1104785A (en) * 1993-05-17 1995-07-05 美国电话电报公司 Dynamically programmable bus arbiter with provisions for historical feedback and error detection and correction
CN101984594A (en) * 2010-10-25 2011-03-09 华为技术有限公司 Switching network flow control method and device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7522622B2 (en) * 2005-02-18 2009-04-21 Broadcom Corporation Dynamic color threshold in a queue

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1104785A (en) * 1993-05-17 1995-07-05 美国电话电报公司 Dynamically programmable bus arbiter with provisions for historical feedback and error detection and correction
CN101984594A (en) * 2010-10-25 2011-03-09 华为技术有限公司 Switching network flow control method and device

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MCBF:A High-Performance Scheduling Algorithm for Buffered Crossbar Switches;Lotfi Mhamdi and Mounir Hamdi;《IEEE COMMUNICATIONS LETTERS》;20030930;全文 *
基于片上***的仲裁算法和接口电路研究;张丽;《中国优秀硕士学位论文全文数据库 信息科技辑》;20141015;正文第3.1章 *

Also Published As

Publication number Publication date
CN108153689A (en) 2018-06-12

Similar Documents

Publication Publication Date Title
US7577780B2 (en) Fine-grained bandwidth control arbiter and the method thereof
CN105981336B (en) Abnormality detection electronic control unit, vehicle-mounted network system, and abnormality detection method
JP5310138B2 (en) Vehicle control system
US20150142664A1 (en) Planning Assignment of Software Licenses
CN108153689B (en) Method and apparatus for polling arbitration
CN110008078B (en) Multi-core processor error monitoring system and method
US9610906B2 (en) Vehicle control device
CN104536834A (en) Method for authorizing lock permission and distributed lock manager
TWI490697B (en) Busbar controller, busbar communication system and busbar control method
US20160372923A1 (en) Device control apparatus and demand response method
KR20160047484A (en) Method to minimize the number of irq lines from peripherals to one wire
US20200372164A1 (en) System and method for providing limited utilization run time application control as a service in microcontrollers
JP2019012498A (en) Electronic controller
US11695590B2 (en) Communication device, communication system and message arbitration method
KR102243627B1 (en) METHOD AND APPARATUS FOR MANAGING RIGHTS OF IoT DEVICE
US9306894B1 (en) Automatic detection and notification of backlogs and delays
US20150331466A1 (en) Method and apparatus for managing a thermal budget of at least a part of a processing system
US8046457B2 (en) Apparatus, methods, and computer program products for managing network elements and associated network element resources by multiple management systems
US20090292885A1 (en) Method and apparatus for providing atomic access to memory
US20140032804A1 (en) Scheduled peripheral component interconnect arbiter
JP6992694B2 (en) Communication device and communication method
JP2020102771A (en) Electronic control device, control method of electronic control device, and program
JP2007102509A (en) Arbitration device
US20230179682A1 (en) Intellegent queuing of rules based command invocations
KR100694086B1 (en) Priority Arbitrating Method in a Multi-Master Bus System and a Arbitrator having priority arbitration function

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