Request arbitration response distribution method and device based on AXI multiple hosts and single slave
By requesting mapping processing of the reference ID information of the host request information in the AXI architecture, mapping ID information is generated, and mapping ID information is used for arbitration processing, the delay and bandwidth waste caused by request arbitration in the prior art are solved, and efficient response distribution and logical resource optimization are achieved.
Patent Information
- Application Number
- CN202411888198.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-20
- Publication Date
- 2025-04-18
AI Technical Summary
Requesting arbitration methods in existing AXI architectures may lead to delay and bandwidth waste, and are complex in implementation and occupy a lot of logical resources.
By performing a request mapping process on the reference ID information of the host request information, the mapping ID information is generated, and the host mapping request information is generated based on the mapping ID information. The mapping ID information is used to perform arbitration processing, determine the order of request execution, and associate the mapping ID information with the order of request execution, so as to realize request arbitration and response distribution.
Reduces the latency and bandwidth waste of requested arbitration, improves the efficiency of response distribution, and simplifies the use of logical resources.
Smart Images

Figure CN119847784A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a method and a device, in particular to a request arbitration response distribution method and a device based on AXI multi-master single slave. Background Art
[0002] In high-performance integrated circuit design, the AXI (Advanced eXtensible Interface) protocol is a widely used high-performance, low-latency bus interface standard suitable for multi-core processors and complex systems.
[0003] In an AXI-based architecture, multiple hosts may simultaneously initiate access requests to the same slave, so how to efficiently perform request arbitration and response distribution becomes the key. At present, when requesting arbitration, by classifying the situations of AXI requests, different situations are handled in different states. For example, a host sends an AXI write request first and then sends the write data: after receiving the write request, it is in a waiting state, waiting for the write data corresponding to the write request to arrive. After the write data arrives, it switches to the arbitration application state. After obtaining arbitration, the write request and write data are sent to the slave. According to the data length information in the write request, the corresponding amount of write data is sent. After the sending is completed, it enters the next write request waiting state. If the write data arrives first, it is also in a waiting state, waiting for the write request to arrive, and then switches to the arbitration application state again.
[0004] It can be seen from the request arbitration description in the above AXI architecture that the existing arbitration method may cause delay and bandwidth waste, and is complex to implement and easily occupies more logic resources. Summary of the invention
[0005] The purpose of the present invention is to overcome the deficiencies in the prior art and provide a method and device for request arbitration response distribution based on AXI multi-master single slave, which can reduce the delay of request arbitration and bandwidth waste and improve the efficiency of response distribution.
[0006] According to the technical solution provided by the present invention, a request arbitration response distribution method based on AXI multi-master single slave, the request arbitration response distribution method comprises:
[0007] receiving host request information sent by one or more hosts;
[0008] Performing request mapping processing on at least the reference ID information in each host request information to generate corresponding mapping ID information after the request mapping processing, and generating host mapping request information based on the mapping ID information, wherein the mapping ID information is used to identify the requesting host source of the host requesting the mapping information;
[0009] Based on the request type of each host request information, different host mapping request information belonging to the same request type is arbitrated to determine the request execution order of each host mapping request information after the arbitration process, and the mapping ID information in each host mapping request information is associated with the request execution order determined by the arbitration process;
[0010] Based on the request execution order and the mapping ID information associated with the request execution order, at least the host mapping request information corresponding to the request execution order is sent to the target slave;
[0011] The target slave responds to the received host mapping request information and generates slave response information, and sends the slave response information to the corresponding host according to the mapping ID information in the received host mapping request information.
[0012] When performing request mapping processing on host request information, it includes:
[0013] Get the base ID information of each host request information;
[0014] Based on the acquired reference ID information, adding request source identification information in the reference ID information to expand the bit width of the reference ID information by using the added request identification information, and generating corresponding mapping ID information, wherein the added request source identification information is different for host request information belonging to different hosts;
[0015] After replacing the reference ID information in the host request information with the mapping ID information, the corresponding host mapping request information is generated.
[0016] For the request source identification information added to the base ID information, there are:
[0017] The bit width of the added request source identification information is log2 (the number of hosts).
[0018] When the request type of the host request information is a write request, after determining the request execution order of each host request information, the corresponding mapping ID information is sequentially written into the ID FIFO unit according to the request execution order to associate the mapping ID information with the request execution order determined by the arbitration process.
[0019] After determining the request execution order of each host mapping request information through arbitration processing, the host mapping request information is directly sent to the target slave according to the request execution order;
[0020] For the host request write data corresponding to each host mapping request information, the corresponding host request write data is sent to the target slave in sequence using the mapping ID information in the ID FIFO unit, wherein,
[0021] For any mapping ID information, a host request to write data corresponding to the mapping ID information is received, and thereafter, the received host request to write data is sent to the target slave.
[0022] Only when the host request write data corresponding to the current mapping ID information is sent, can it switch to the next sequential mapping ID information in the ID FIFO unit;
[0023] When the storage state of the ID FIFO unit for the mapping ID information is a storage full state, and no host request to write data corresponding to the first mapping ID information in the request execution sequence is detected, at least the host request information of the write request type is stopped;
[0024] Only after receiving the host request write data corresponding to the first mapping ID information in the request execution order, the host request information of a new write request type is received and arbitrated.
[0025] When the request type of the host request information is a read request, after determining the request execution order of each host request information, the mapping ID information is associated with the request execution order determined by the arbitration process, and the host mapping request information of the read request type is directly sent to the target slave.
[0026] When the slave response information is sent to the corresponding master according to the mapping ID information, the mapping ID information is first subjected to response remapping processing, so as to generate reference ID information corresponding to the master request information after the response remapping processing;
[0027] Based on the generated reference ID information, the slave response information is sent to the corresponding master.
[0028] A request arbitration response distribution device based on AXI multi-master single slave, used to execute the request arbitration response distribution method described above, wherein the request arbitration response distribution device comprises:
[0029] A write request channel unit, used to receive host request information of a write request type sent by one or more hosts, and perform request mapping processing on each host request information to generate corresponding mapping ID information after the request mapping processing, and generate host mapping request information based on the mapping ID information;
[0030] performing arbitration processing on all received host mapping request information to determine a request execution order of each host mapping request information after the arbitration processing, and thereafter sending the host mapping request information to the target slave according to the request execution order, and associating the mapping ID information in each host mapping request information with the request execution order determined by the arbitration processing;
[0031] A write data channel unit, which obtains the host request write data of the corresponding host based on the mapping ID information, and sends the corresponding host request write data to the target slave according to the order of the mapping ID information;
[0032] A write response channel unit, which obtains slave write response information, generates corresponding reference ID information by request remapping processing based on mapping ID information in the slave write response information, and replaces the mapping ID information in the slave write response information with the reference ID information to generate slave write response remapping information after replacement, and then sends the slave write response remapping information to the corresponding host based on the reference ID information in the slave write response remapping information;
[0033] A read request channel unit, used to receive host request information of a read request type sent by one or more hosts, and perform request mapping processing on each host request information to generate corresponding mapping ID information after the request mapping processing, and generate host mapping request information based on the mapping ID information;
[0034] Performing arbitration processing on all received host mapping request information to determine a request execution order of each host mapping request information after the arbitration processing, and thereafter sending the host mapping request information to the target slave according to the request execution order;
[0035] A read response channel unit obtains the slave read response information, and generates corresponding reference ID information by requesting remapping processing on the mapping ID information in the slave read response information, and replaces the mapping ID information in the slave read response information with the reference ID information to generate slave read response remapping information after the replacement, and thereafter, sends the slave read response remapping information to the corresponding host based on the reference ID information in the slave read response remapping information.
[0036] In the write request channel unit, when arbitrating a plurality of host mapping request information, the arbitration processing method used includes priority arbitration or polling arbitration.
[0037] The advantages of the present invention are as follows: request mapping processing is performed on each host request information, and mapping ID information and corresponding host mapping request information are generated after the request mapping processing; when the request type of the host request information is a write request, the host mapping write request can be directly sent to the target slave, and then the corresponding host request write data is sent to the target slave using the ID FIFO unit and the stored mapping ID information, that is, the write request channel is decoupled from the write data channel, the delay of request arbitration and the bandwidth waste are reduced, and the efficiency of response distribution is improved. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] Figure 1 A flow chart of an embodiment of request arbitration response distribution of the present invention.
[0039] Figure 2 The present invention is a schematic diagram of an embodiment of a method for distributing a request arbitration response when the host request information is a write request.
[0040] Figure 3 The present invention is a schematic diagram of an embodiment of a method for distributing a request arbitration response when the host request information is a read request.
[0041] Figure 4 This is a structural block diagram of an embodiment of a request arbitration response distribution device of the present invention. DETAILED DESCRIPTION
[0042] The present invention will be further described below in conjunction with specific drawings and embodiments.
[0043] In order to reduce the delay of request arbitration and bandwidth waste and improve the efficiency of response distribution, the present invention provides a request arbitration response distribution method based on AXI multi-master single slave, the request arbitration response distribution method comprising:
[0044] receiving host request information sent by one or more hosts;
[0045] Performing request mapping processing on at least the reference ID information in each host request information to generate corresponding mapping ID information after the request mapping processing, and generating host mapping request information based on the mapping ID information, wherein the mapping ID information is used to identify the requesting host source of the host requesting the mapping information;
[0046] Based on the request type of each host request information, different host mapping request information belonging to the same request type is arbitrated to determine the request execution order of each host mapping request information after the arbitration process, and the mapping ID information in each host mapping request information is associated with the request execution order determined by the arbitration process;
[0047] Based on the request execution order and the mapping ID information associated with the request execution order, at least the host mapping request information corresponding to the request execution order is sent to the target slave;
[0048] The target slave responds to the received host mapping request information and generates slave response information, and sends the slave response information to the corresponding host according to the mapping ID information in the received host mapping request information.
[0049] It can be understood that since the present invention is aimed at request arbitration and response distribution of multiple hosts and a single slave, when working, there will be a host request information sent by one or more hosts. Generally, a host request information is sent by a host. It can be seen that request arbitration specifically refers to arbitration of one or more received host request information, and response distribution specifically refers to sending the response information generated by the target slave in response to the host request information to the corresponding host. The target slave is the slave in the multiple hosts and a single slave. The target slave can be selected according to actual working requirements. The situation of multiple hosts and a single slave can be consistent with the prior art and will not be repeated here.
[0050] Figure 1 A flow chart of an embodiment of the present invention for request arbitration and response distribution for host request information sent by one or more hosts is shown. It can be seen from the figure that request arbitration should be performed on the host request information, and then response distribution should be performed. When requesting arbitration, at least the reference ID information in each host request information should be requested to be mapped. After the reference ID information is mapped, mapping ID information can be generated. Thereafter, host mapping request information can be generated based on the mapping ID information.
[0051] It should be noted that the host request information can be consistent with the request used in the prior art based on AXI bus communication. Generally, the host request information at least includes a request information body and a reference ID information. The request type and other contents can be determined through the request information body. The reference ID information is the ID information in the existing request. The situation of the reference information is consistent with the existing one. For example, the reference ID information can be awid=3'b110. It can be understood that the corresponding status between the host request information where the reference ID information is located and the host cannot be determined through the reference ID information, that is, the source of the host request information cannot be determined.
[0052] As can be seen from the background technology, this method of requesting information will cause delay and bandwidth waste. After the present invention performs request mapping processing on the reference ID information, mapping ID information can be obtained, and the source of the host request information can be identified through the mapping ID information, wherein the request host source refers to the host that sends the host request information. The following specifically describes the method and process of performing request mapping processing on the reference ID information and the method of generating the host mapping request information.
[0053] In one embodiment of the present invention, when performing request mapping processing on host request information, it includes:
[0054] Get the base ID information of each host request information;
[0055] Based on the acquired reference ID information, adding request source identification information in the reference ID information to expand the bit width of the reference ID information by using the added request identification information, and generating corresponding mapping ID information, wherein the added request source identification information is different for host request information belonging to different hosts;
[0056] After replacing the reference ID information in the host request information with the mapping ID information, the corresponding host mapping request information is generated.
[0057] Specifically, for each host request information, the reference ID information in each host request information can be obtained by the technical means in the technical field according to the content of the host request information, such as the above-mentioned awid=3'b110, where awid is the reference ID information and "3'b110" is the content of a reference ID information. After obtaining the reference ID information, the request source representation information can be added to the reference ID information, and after adding the request source identification information, the mapping ID information can be obtained. It can be understood that after adding the request identification information, the data bit width of the reference ID information can be expanded. Therefore, it can be seen that the data bit width of the mapping ID information should be greater than the data bit width of the reference ID information. Of course, the data bit width of the mapping ID information should not affect the response of the target slave to the request information.
[0058] As can be seen from the above description, by adding the request source identification information, the source of the host request information can be identified. Therefore, for the host request information belonging to different hosts, the added request source identification information should be different. The following example illustrates the added request source identification information. Specifically, for example, if the reference ID information in the host request information sent by host 1 is awid=3'b110, then the reference ID information is widened by one bit, and the resulting mapping ID information can be awid=4'b0110; at the same time, if the reference ID information in the host request information sent by host 2 is awid=3'b011, then the reference ID information is widened by one bit, and the resulting mapping ID information can be awid=4'b1011. At this time, the source of the host request information can be distinguished according to the widened fourth bit. If the highest bit of awid in the mapping ID information is 1, it means that the current host request information comes from host 2. If the highest bit of awid in the mapping ID information is 0, it means that the current host request information comes from host 1.
[0059] In the above-mentioned embodiments, only one embodiment of adding request source identification information to the host request information of two hosts is shown. It can be understood that when the number of hosts exceeds 2, the above-mentioned example method cannot satisfy the addition of corresponding request source identification information to the request information of multiple hosts. For example, when the number of hosts is 3, the bit width of the added request source identification information should be at least 3 bits. In order to adapt to the number of different hosts, for the request source identification information added to the reference ID information, in one embodiment of the present invention, it should be: the bit width of the added request source identification information is log2 (the number of hosts).
[0060] In addition, after replacing the reference ID information in the host request information with the mapping ID information, the corresponding host mapping request information is generated. It can be understood that in the host mapping request information, the request information body is consistent with the request information body in the main request information, that is, only the reference ID information is replaced with the mapping ID information.
[0061] In one embodiment of the present invention, after request mapping processing is performed on the host request information to generate mapping ID information and corresponding host mapping request information, the host mapping request information needs to be arbitrated. The arbitration processing of the host mapping request information mainly determines whether the host mapping request information can be sent to the target slave. When the host mapping request information can be sent to the target slave, it is necessary to determine the order in which each host mapping request information is sent to the target slave. Therefore, the request execution order of each host mapping request information is determined, at least refers to the order in which each host mapping request information is sent to the target slave. In addition, the request execution order is also related to the request type of the host request information, which will be specifically explained below in conjunction with the type of host request information.
[0062] In order to reduce delay and bandwidth waste, after determining the request execution order of the host mapping request information, the mapping ID information in each host mapping request information can also be associated with the request execution order determined by the arbitration process. For example, after the arbitration process, a certain host mapping request information is determined to be the first request execution order. After associating the mapping ID information with the request execution order, the current mapping ID information can represent the request execution order of the corresponding host mapping request information. After associating the mapping ID information with the request execution order, the sending that needs to wait in the prior art can be avoided, and the delay and bandwidth waste can be reduced.
[0063] In specific implementation, when arbitrating multiple host mapping request information, the arbitration processing method used includes priority arbitration or polling arbitration, among which priority arbitration specifically refers to assigning different arbitration priorities according to different hosts. After the source of the host request information is identified by the mapping ID information, the request execution order of the host mapping request information can be configured during the arbitration processing; it can be understood that the arbitration priority of different hosts can be selected and set as needed; polling arbitration is specifically a polling arbitration method commonly used in the prior art. Polling arbitration is an arbitration method that pursues fairness. The method and process of polling arbitration can be consistent with the prior art and will not be repeated here.
[0064] In specific implementation, after the request execution order is determined through arbitration processing, at least the host mapping request information corresponding to the request execution order can be sent to the target slave, and then the target slave parses the request information body in each host mapping request information, and performs corresponding operations according to the parsed content, that is, responds to each host mapping request information, and generates corresponding slave response information. The parsing and response method of each host mapping request information by the target slave can be consistent with the prior art, and will not be repeated here.
[0065] It should be noted that when the target slave generates a slave response message, the slave response message should contain mapping ID information. Of course, the mapping ID information in the slave response message should be the same as the mapping ID information in the mapped host mapping request message. Thereafter, the slave response message can be sent to the corresponding host according to the mapping ID information in the received host mapping request message. It can be understood that the host mapping request message is formed by replacing the reference ID information with the mapping ID information, and the mapping ID information in the slave response message is also a replacement for the corresponding reference ID information, so that the generated slave response message will not change the form of the slave response message in the prior art. After the slave response message is restored to the reference ID information through response remapping and sent to the corresponding host, the response distribution is completed. For the situation of response remapping, refer to the corresponding description below.
[0066] In one embodiment of the present invention, when the request type of the host request information is a write request, after determining the request execution order of each host request information, the corresponding mapping ID information is written into the ID FIFO unit in sequence according to the request execution order to associate the mapping ID information with the request execution order determined by the arbitration processing.
[0067] Specifically, the ID FIFO unit is implemented by using the existing FIFO (First In First Out). By using the characteristics of the IDFIFO unit, the mapping ID information can be associated with the request execution order. For example, for the request execution order with the highest priority, the corresponding mapping ID information can be written into the ID FIFO unit first, and then the corresponding mapping ID information can be written into the ID FIFO unit in sequence according to the other request execution orders. Of course, other methods can also be used to associate the mapping ID information with the request execution order, which will not be explained one by one here.
[0068] In addition, when the request type of the host request information is a read request, the mapping ID information and the request execution order can be associated without the aid of the above-mentioned ID FIFO unit, and the corresponding relationship between the two can be directly determined.
[0069] In one embodiment of the present invention, after determining the request execution order of each host mapping request information through arbitration processing, the host mapping request information is directly sent to the target slave according to the request execution order;
[0070] For the host request write data corresponding to each host mapping request information, the corresponding host request write data is sent to the target slave in sequence using the mapping ID information in the ID FIFO unit, wherein,
[0071] For any mapping ID information, a host request to write data corresponding to the mapping ID information is received, and thereafter, the received host request to write data is sent to the target slave.
[0072] It should be understood that when the request type of the host request information is a write request, in addition to sending the host mapping request information to the target slave, the corresponding host request write data should also be sent to the target slave. In the prior art, after the host request information is arbitrated, the corresponding host request write data should also be waited for, otherwise, the host request write data that does not correspond to the host request information may be sent, thereby causing errors and the like. Specifically, after waiting for the host request write data to be sent and sending it, the next host request information of the write request type and the corresponding host request write data can be sent, thereby causing delays and bandwidth waste.
[0073] In one embodiment of the present invention, since the mapping ID information is stored in the ID FIFO unit and is associated with the request execution order, the corresponding relationship with the host request information / host request mapping information can be determined through the mapping ID information. At this time, the host mapping request information can be directly sent to the target slave according to the request execution order. The mapping ID information stored in the ID FIFO unit can be used to control the sending of the corresponding host request write data to the target slave. Since the mapping ID information and the host mapping request information are in a positive correspondence, the host request write data can be positively corresponded to the host mapping request information, thereby not affecting the sending of the host request write data.
[0074] In specific implementation, when the host request information is a write request, the host request information is sent to the write request channel, and the host mapping request information is sent to the target slave through the write request channel; and the host request to write data is generally sent to the target slave through the write data channel. At this time, the write request channel and the write data channel can be decoupled. After the host mapping request information is arbitrated, there is no need to wait for the corresponding host request to write data, thereby avoiding the extension and bandwidth waste caused by waiting for the host request to write data in the prior art.
[0075] In one embodiment of the present invention, only when the host request write data corresponding to the current mapping ID information is sent, can the next sequential mapping ID information in the ID FIFO unit be switched;
[0076] When the storage state of the ID FIFO unit for the mapping ID information is a storage full state, and no host request to write data corresponding to the first mapping ID information in the request execution sequence is detected, at least the host request information of the write request type is stopped;
[0077] Only after receiving the host request write data corresponding to the first mapping ID information in the request execution order, the host request information of a new write request type is received and arbitrated.
[0078] It can be understood that the data length of the host request write data corresponding to different host request information may be different, but the data length of the corresponding host request write data can be determined based on the request information body within the host request information. Therefore, after determining the data length of the corresponding host request write data, the commonly used method in the field of this technology can be used to determine whether the host request write data corresponding to the current mapping ID information has been sent.
[0079] When there are multiple mapping ID information in the ID FIFO unit, only after the current host request write data corresponding to the current mapping ID information is sent, can it switch to the next sequential mapping ID information in the ID FIFO unit. After that, based on the next mapping ID information switched, the sending of the corresponding host request write data is controlled, and the mapping ID information-host request write data sending process here is repeated until all host request write data are sent to the target slave.
[0080] Since the storage capacity of the ID FIFO unit is limited, when the size of the mapped ID information exceeds the storage capacity of the ID FIFO unit, the ID FIFO unit is in a full storage state. In order to improve the reliability of the data, when the host request corresponding to the first mapped ID information in the request execution order is not detected to write data, at least the host request information of the write request type is stopped from being received. It can be understood that the first mapped ID information in the request execution order specifically refers to the earliest written mapping ID information among all the mapped ID information in the ID FIFO unit; the corresponding host request to write data is not detected, specifically refers to the fact that no corresponding host request to write data is sent to the write data channel. At this time, the reception of the host request information in the write request channel is stopped to avoid the ID FIFO unit being unable to store the mapped ID information, while the corresponding host mapping request information has been sent to the target slave.
[0081] It is understandable that after stopping receiving the host request information in the write request channel, when the host request write data corresponding to the first mapping ID information in the request execution order is received, the mapping ID information first in the request execution order will be cleared from the ID FIFO unit, and the ID FIFO unit will change from a full storage state to having storage space. At this time, the reception of the host request information in the write request channel can be allowed. It can be seen from the above description that after receiving the host request information, the above request mapping process and arbitration process can be repeated. The request mapping process, arbitration process, etc. can refer to the above description and will not be repeated here.
[0082] In one embodiment of the present invention, when the request type of the host request information is a read request, after determining the request execution order of each host request information, the mapping ID information is associated with the request execution order determined by the arbitration processing, and the host mapping request information of the read request type is directly sent to the target slave.
[0083] Specifically, when the request type of the host request information is a read request, it is different from the host request information of a write request in that it does not need to wait for the data to be sent to the target slave. Therefore, after determining the request execution order of each host request information, the mapping ID information is associated with the request execution order determined by the arbitration process, and the host mapping request information of the read request type is directly sent to the target slave. It can be seen from the above description that when associating the mapping ID information with the request execution order determined by the arbitration process, it is not necessary to use the above-mentioned ID FIFO unit, and it is only necessary to record and determine the corresponding association relationship.
[0084] In one embodiment of the present invention, when the slave response information is sent to the corresponding host according to the mapping ID information, the mapping ID information is first subjected to response remapping processing, so as to generate reference ID information corresponding to the host request information after the response remapping processing;
[0085] Based on the generated reference ID information, the slave response information is sent to the corresponding master.
[0086] From the above description, it can be seen that each slave response information includes corresponding mapping ID information. When the slave response information is sent, the mapping ID information in the slave response information will first be subjected to response remapping processing, and the corresponding reference ID information will be generated after the response remapping processing. It can be seen that the request remapping processing is the inverse process of the above request mapping processing. According to the instructions of the request mapping processing, the mapping ID information can be restored to the corresponding reference ID information after response remapping.
[0087] After obtaining the reference ID information, the slave response information can be sent to the corresponding host according to the reference ID information. It can be understood that the manner and process of sending the slave response to the host based on the reference ID information can be consistent with the prior art. It should be noted that after generating the reference ID information, the mapping ID information in the slave response information should be replaced with the reference ID information.
[0088] It should be understood that when the request type of the host request information is a write request, the slave response information should be a slave write response, and when the request type of the host request information is a read request, the slave response information should be a slave read response. In specific implementation, both the slave write response and the slave read response are processed by response remapping in the above manner and sent to the corresponding host. It should be noted that the host request information of the write request and the host request information of the read request can exist at the same time, that is, the host request information of the write request and the host request information of the read request are independent of each other. For details, please refer to Figure 4 and the corresponding instructions below.
[0089] From the above description, a request arbitration response distribution device based on AXI multi-master single slave can be obtained, specifically, used to execute the request arbitration response distribution method described above, wherein the request arbitration response distribution device includes:
[0090] A write request channel unit, used to receive host request information of a write request type sent by one or more hosts, and perform request mapping processing on each host request information to generate corresponding mapping ID information after the request mapping processing, and generate host mapping request information based on the mapping ID information;
[0091] performing arbitration processing on all received host mapping request information to determine a request execution order of each host mapping request information after the arbitration processing, and thereafter sending the host mapping request information to the target slave according to the request execution order, and associating the mapping ID information in each host mapping request information with the request execution order determined by the arbitration processing;
[0092] A write data channel unit, which obtains the host request write data of the corresponding host based on the mapping ID information, and sends the corresponding host request write data to the target slave according to the order of the mapping ID information;
[0093] A write response channel unit, which obtains slave write response information, generates corresponding reference ID information by request remapping processing based on mapping ID information in the slave write response information, and replaces the mapping ID information in the slave write response information with the reference ID information to generate slave write response remapping information after replacement, and then sends the slave write response remapping information to the corresponding host based on the reference ID information in the slave write response remapping information;
[0094] A read request channel unit, used to receive host request information of a read request type sent by one or more hosts, and perform request mapping processing on each host request information to generate corresponding mapping ID information after the request mapping processing, and generate host mapping request information based on the mapping ID information;
[0095] Performing arbitration processing on all received host mapping request information to determine a request execution order of each host mapping request information after the arbitration processing, and thereafter sending the host mapping request information to the target slave according to the request execution order;
[0096] A read response channel unit obtains the slave read response information, and generates corresponding reference ID information by requesting remapping processing on the mapping ID information in the slave read response information, and replaces the mapping ID information in the slave read response information with the reference ID information to generate slave read response remapping information after the replacement, and thereafter, sends the slave read response remapping information to the corresponding host based on the reference ID information in the slave read response remapping information.
[0097] Figure 4 An embodiment of the request arbitration response distribution device based on AXI multi-master single slave of the present invention is shown in FIG. Figure 4 An embodiment of a write request channel unit is shown in the figure. In the figure, the write request channel unit may include a write request channel ID mapping module, a write request channel arbitrator and an ID FIFO unit, wherein the request mapping processing of the host request information of the above-mentioned write request type can be implemented through the write request channel ID mapping module, the blanking processing can be implemented through the write request channel arbitrator, and the storage of the mapping ID information can be implemented through the ID FIFO unit.
[0098] Figure 4 In the figure, an embodiment of a write data channel unit is also shown. In the figure, the write data channel unit includes a data sending control module, wherein the data sending control module should be connected to the ID FIFO unit so as to send the corresponding host request write data to the target slave according to the mapping ID information in the ID FIFO unit. Figure 4 In the above, the slave write request is the host mapping request information sent to the target slave, and the slave write data is the host request write data sent to the target slave.
[0099] Figure 4 In the embodiment, the write response channel unit includes a write response ID remapping module, and the above-mentioned request remapping process can be implemented through the write response remapping module. In addition, Figure 2 The flowchart of an embodiment of the above-mentioned request arbitration response distribution is shown in the figure when the host requests a new request type of a write request, through the write request channel unit, the write data channel unit, and the write response channel unit. The specific implementation process can refer to the above description and will not be repeated here.
[0100] Figure 4 In the read request channel unit shown in, the read request channel unit may include a read request channel ID mapping module and a read request channel arbiter, wherein the request mapping processing of the host request information of the above-mentioned read request type can be implemented through the read request channel ID mapping module, and the blanking processing can be implemented through the read request channel arbiter.
[0101] Figure 4 In the embodiment, the read response channel unit includes a read response ID remapping module, and the above-mentioned request remapping process can be implemented through the read response remapping module. In addition, Figure 3 The flowchart of an embodiment of the above-mentioned request arbitration response distribution is shown in the figure when the host requests a new request type of a read request, through the read request channel unit and the read response channel unit. The specific implementation process can refer to the above description and will not be repeated here.
[0102] It should be noted that Figure 3The read request ID mapping module in is Figure 4 The read request channel ID mapping module in the read request arbitrator is Figure 4 Read request channel arbiter in.
Claims
1. A request arbitration response distribution method based on AXI multi-master single slave, characterized in that: The request arbitration response distribution method comprises: receiving host request information sent by one or more hosts; Performing request mapping processing on at least the reference ID information in each host request information to generate corresponding mapping ID information after the request mapping processing, and generating host mapping request information based on the mapping ID information, wherein the mapping ID information is used to identify the requesting host source of the host requesting the mapping information; Based on the request type of each host request information, different host mapping request information belonging to the same request type is arbitrated to determine the request execution order of each host mapping request information after the arbitration process, and the mapping ID information in each host mapping request information is associated with the request execution order determined by the arbitration process; Based on the request execution order and the mapping ID information associated with the request execution order, at least the host mapping request information corresponding to the request execution order is sent to the target slave; The target slave responds to the received host mapping request information and generates slave response information, and sends the slave response information to the corresponding host according to the mapping ID information in the received host mapping request information.
2. The request arbitration response distribution method based on AXI multi-master single slave according to claim 1 is characterized in that: When performing request mapping processing on host request information, it includes: Get the base ID information of each host request information; Based on the acquired reference ID information, adding request source identification information in the reference ID information to expand the bit width of the reference ID information by using the added request identification information, and generating corresponding mapping ID information, wherein the added request source identification information is different for host request information belonging to different hosts; After replacing the reference ID information in the host request information with the mapping ID information, the corresponding host mapping request information is generated.
3. The request arbitration response distribution method based on AXI multi-master single slave according to claim 2 is characterized in that: For the request source identification information added to the base ID information, there are: The bit width of the added request source identification information is log2 (the number of hosts).
4. The request arbitration response distribution method based on AXI multi-master single slave according to claim 1 is characterized in that: When the request type of the host request information is a write request, after determining the request execution order of each host request information, the corresponding mapping ID information is sequentially written into the ID FIFO unit according to the request execution order to associate the mapping ID information with the request execution order determined by the arbitration process.
5. The request arbitration response distribution method based on AXI multi-master single slave according to claim 4 is characterized in that: After determining the request execution order of each host mapping request information through arbitration processing, the host mapping request information is directly sent to the target slave according to the request execution order; For the host request write data corresponding to each host mapping request information, the corresponding host request write data is sent to the target slave in sequence using the mapping ID information in the ID FIFO unit, wherein, For any mapping ID information, a host request to write data corresponding to the mapping ID information is received, and thereafter, the received host request to write data is sent to the target slave.
6. The request arbitration response distribution method based on AXI multi-master single slave according to claim 5 is characterized in that: Only when the host request write data corresponding to the current mapping ID information is sent, can it switch to the next sequential mapping ID information in the ID FIFO unit; When the storage state of the ID FIFO unit for the mapping ID information is a storage full state, and no host request to write data corresponding to the first mapping ID information in the request execution sequence is detected, at least the host request information of the write request type is stopped; Only after receiving the host request write data corresponding to the first mapping ID information in the request execution order, the host request information of a new write request type is received and arbitrated.
7. The request arbitration response distribution method based on AXI multi-master single slave according to claim 1 is characterized in that: When the request type of the host request information is a read request, after determining the request execution order of each host request information, the mapping ID information is associated with the request execution order determined by the arbitration process, and the host mapping request information of the read request type is directly sent to the target slave.
8. The request arbitration response distribution method based on AXI multi-master single slave according to any one of claims 1 to 7, characterized in that: When the slave response information is sent to the corresponding master according to the mapping ID information, the mapping ID information is first subjected to response remapping processing, so as to generate reference ID information corresponding to the master request information after the response remapping processing; Based on the generated reference ID information, the slave response information is sent to the corresponding master.
9. A request arbitration response distribution device based on AXI multi-master single slave, characterized in that: The method for distributing a request for arbitration response according to any one of claims 1 to 8, wherein the device for distributing a request for arbitration response comprises: A write request channel unit, used to receive host request information of a write request type sent by one or more hosts, and perform request mapping processing on each host request information to generate corresponding mapping ID information after the request mapping processing, and generate host mapping request information based on the mapping ID information; performing arbitration processing on all received host mapping request information to determine a request execution order of each host mapping request information after the arbitration processing, and thereafter sending the host mapping request information to the target slave according to the request execution order, and associating the mapping ID information in each host mapping request information with the request execution order determined by the arbitration processing; A write data channel unit, which obtains the host request write data of the corresponding host based on the mapping ID information, and sends the corresponding host request write data to the target slave according to the order of the mapping ID information; A write response channel unit, which obtains slave write response information, generates corresponding reference ID information by request remapping processing based on mapping ID information in the slave write response information, and replaces the mapping ID information in the slave write response information with the reference ID information to generate slave write response remapping information after replacement, and then sends the slave write response remapping information to the corresponding host based on the reference ID information in the slave write response remapping information; A read request channel unit, used to receive host request information of a read request type sent by one or more hosts, and perform request mapping processing on each host request information to generate corresponding mapping ID information after the request mapping processing, and generate host mapping request information based on the mapping ID information; Performing arbitration processing on all received host mapping request information to determine a request execution order of each host mapping request information after the arbitration processing, and thereafter sending the host mapping request information to the target slave according to the request execution order; A read response channel unit obtains the slave read response information, and generates corresponding reference ID information by requesting remapping processing on the mapping ID information in the slave read response information, and replaces the mapping ID information in the slave read response information with the reference ID information to generate slave read response remapping information after the replacement, and thereafter, sends the slave read response remapping information to the corresponding host based on the reference ID information in the slave read response remapping information.
10. The request arbitration response distribution device based on AXI multi-master and single slave according to claim 9, characterized in that: In the write request channel unit, when arbitrating a plurality of host mapping request information, the arbitration processing method used includes priority arbitration or polling arbitration.