System and method for accelerating retry associated queue in CHI bus protocol

By introducing request queues, status queues, and credit card queues into the CHI bus protocol, the retry mechanism was optimized, resolving performance loss and latency issues caused by improper credit card management in the protocol, and achieving efficient resource utilization and sequence management.

CN118138546BActive Publication Date: 2026-03-20JINDIE SPACE (HANGZHOU) TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-12-22
Publication Date
2026-03-20

AI Technical Summary

Technical Problem

In the CHI bus protocol, the existing retry mechanism leads to performance loss and increased query latency, especially in multi-chip modules. Improper management of protocol credit cards causes transaction queue query latency and performance loss, making it difficult to scale.

Method used

By employing a combined structure of request queue, request status queue, and protocol credit card queue, and by recording the status information of requests and credit cards, the wake-up and resend order is optimized to ensure efficient utilization of protocol credit card resources.

Benefits of technology

It achieves efficient utilization of protocol credit card resources in the transaction queue, ensures that the wake-up order conforms to program characteristics, reduces latency and performance loss, and supports system expansion.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118138546B_ABST
    Figure CN118138546B_ABST
Patent Text Reader

Abstract

The application discloses a system and method for accelerating retry associated queue in CHI bus protocol, which comprises a bus, a request queue, a request state queue and a protocol credit card queue. The bus is used for sending completion, retry confirmation and protocol credit card permission; the request state queue comprises an age vector and entries; the entries in the request state queue record basic information of the request, including a request valid signal, a request ID, a retry valid signal and a retry protocol credit card; and the age vector records the sending sequence between the corresponding entry and other entries; the protocol credit card queue records the protocol credit card returned by the bus each time, including a protocol credit card valid signal and a protocol credit card type. The entry in the transaction queue which needs to be retried sees the protocol credit card resource required by itself for the first time, and then is woken up for retransmission; in addition, the entries which need the same protocol credit card type are woken up in the first initiation sequence, so that the delay conforms to the program characteristics.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The application belongs to the technical field of chips, and particularly relates to tracking and acceleration of a retry process based on a CHI bus protocol. BACKGROUND

[0002] Multi-chip multi-die (Multi-Chip Module, MCM) interconnection technology refers to a technology of packaging multiple chips (dies) in a single module and communicating between them through high-speed interconnection. Such a design can provide more computing cores in a single package and improve the performance and efficiency of the overall system.

[0003] The CHI bus plays a crucial role in multi-chip multi-die interconnection, and there are various transaction-level transmission processes and specifications in it. In order to better manage the resources of the master node and not cause congestion of the channel, the CHI adopts a retry mechanism, as shown in the following formula: Figure 1

[0004] If a request is not accepted by the full consistency master node due to limited resources, a retry confirmation and the type of resource to be waited for will be returned. Once the full consistency master node has resources to accept the request, it will reissue a protocol credit card to notify the full consistency request node, and because the two messages may take different paths on the bus, the return order is reversed. In extreme cases, you may see that the protocol credit card is always being returned. Therefore, it is necessary to effectively manage the protocol credit card to wake up the retransmission of the subsequent retry confirmation transaction.

[0005] The current understanding is to store the returned protocol credit card in a FIFO structure, and then the protocol credit card at the head of the queue will go to each transaction queue according to the type to check whether there is an entry that needs the type of protocol credit card and has received a retry confirmation. If there is a wake-up entry, reissue it, and then clear the head. It can be imagined that if the protocol credit card at the head of the queue does not wait for the corresponding retry confirmation, it will always block the protocol credit card behind it from waking up the entry that has received the retry confirmation, causing performance loss. At the same time, if the transaction queue is very large, the number of entries to be queried will also be large, and the delay of the query may also increase, which is not conducive to expansion. SUMMARY

[0006] The application aims to solve the above technical problems in the prior art and provide a system and method for accelerating the retry associated queue in the CHI bus protocol, so that the entries in the transaction queue that need to be retried can see the protocol credit card resources they need at the first time, and then wake up and reissue. In addition, the entries that need the same type of protocol credit card are woken up in the order as close to the first time as possible to make the delay conform to the program characteristics.

[0007] ​To solve the above technical problems, the application adopts the following technical solutions:

[0008] A system for accelerating retry associated queue in CHI bus protocol, characterized in that it comprises a bus, a request queue, a request state queue and a protocol credit card queue.

[0009] The bus is used to send completion, retry confirmation and protocol credit card permission; the request queue is used to send requests; the request state queue comprises an age vector and a plurality of table entries, and when a request is sent from the request queue for the first time, a corresponding table entry in the request state queue records basic information of the request, including a request valid signal, a request ID, a retry valid signal and a retry protocol credit card, and the age vector records the sending sequence between the corresponding table entry and other table entries; the protocol credit card queue records protocol credit cards returned by the bus each time, and a protocol credit card table entry records information including a protocol credit card valid signal and a protocol credit card type.

[0010] Further, when the request is normally accepted by the bus node, the bus sends completion corresponding to the request.

[0011] Further, the corresponding table entry in the request state queue is cleared.

[0012] Further, when the request is not normally accepted by the bus node, the bus sends retry confirmation and protocol credit card permission corresponding to the request.

[0013] Further, if the request state queue receives the retry confirmation of the bus first, the retry information of the corresponding table entry in the request state queue is updated according to the returned request ID, including setting the retry valid signal, indicating that the protocol credit card needs to be waited for, and recording the type of the protocol credit card that needs to be waited for.

[0014] Further, if the protocol credit card queue receives the protocol credit card permission of the bus first, the protocol credit card permission is compared with the table entry in the request state queue, there is no candidate to be woken up, a table entry of the protocol credit card queue is assigned to the protocol credit card, and the protocol credit card valid signal and the protocol credit card type are recorded.

[0015] Further, if all the protocol credit card permissions are returned in advance of the retry confirmation, that is, the protocol credit card queue receives all the protocol credit card permissions of the bus first, the depth of the protocol credit card queue is equal to the depth of the request state queue, that is, equal to the maximum number of requests that can be sent by the request queue.

[0016] A method for accelerating retry associated queue in CHI bus protocol, comprising:

[0017] S1: The request queue sends a request to the bus.

[0018] S2: whether the request is accepted by the bus node normally to complete the access.

[0019] S2.1: when the request is accepted by the bus node normally, the bus corresponds to the request to issue completion, and the corresponding table item in the request state queue is cleared.

[0020] S2.2: when the request is not accepted by the bus node normally, the bus corresponds to the request to issue retry confirmation and protocol credit card permission.

[0021] S2.2.1: if the request state queue first receives the retry confirmation of the bus, update the retry information of the corresponding table item in the request state queue; when the subsequent bus node has resources to accept the request, return the bus protocol credit card permission carrying the protocol credit card type, first compare the protocol credit card type with each table item in the request state queue, if the corresponding table item retry valid signal is set and the waiting protocol credit card type is consistent, it is considered to be a candidate for awakening, then select the first sent table item from all the candidates for awakening according to the information recorded in the age vector, then clear the first sent table item, and send the request awakening signal corresponding to the request queue to notify the retransmission request.

[0022] S2.2.2: if the protocol credit card queue first receives the protocol credit card permission of the bus, allocate a table item of the protocol credit card queue to this protocol credit card; after the subsequent request state queue receives the retry confirmation of the bus, first compare the required protocol credit card type with each table item in the protocol credit card queue, if the corresponding table item protocol credit card valid signal is set and the waiting protocol credit card type is consistent, it is considered to be a candidate for awakening, then clear the table item of the protocol credit card in the protocol credit card queue and the table item of the corresponding request in the request state queue, and send the request awakening signal corresponding to the request queue to notify the retransmission request.

[0023] The application has the following beneficial effects due to the adoption of the above technical solutions:

[0024] The application allows the transaction requiring retransmission to see the available protocol credit card resources for awakening and retransmission in the first time, allows multiple retransmission transactions to compete for the same protocol credit card, and allows the awakening order to follow the order of the first sending. BRIEF DESCRIPTION OF DRAWINGS

[0025] The application will be further described below in combination with the drawings:

[0026] Figure 1 The overall framework diagram of the retry mechanism of CHI in the prior art;

[0027] Figure 2 The overall framework diagram of the application. DETAILED DESCRIPTION

[0028] As shown in the figure, the system for accelerating retry associated queue in CHI bus protocol of the application mainly comprises four modules: request queue, bus, request status queue and pcrd queue. Figure 2

[0029] The bus is used for sending complete, retry ack and pcrd grant; the request queue is used for sending request; the request status queue comprises age vec and a plurality of table entries, when a request is sent from the request queue for the first time, the corresponding table entry in the request status queue records basic information of the request, including request valid, request id, retry valid and retry pcrd, and the age vec records the sending sequence between the corresponding table entry and other table entries; the pcrd queue records the pcrd returned by the bus each time, and the pcrd table entry records pcrd valid and pcrd type.

[0030] The request queue and the bus are inherent modules, and the access of the bus is completed; the request status queue, the pcrd queue and the peripheral comparison logic are used for completing the fast wake-up retransmission of the request which is retried.

[0031] A method for accelerating retry associated queue in CHI bus protocol, comprising the following steps:

[0032] S1: when a request is sent from the request queue to the bus for the first time, a table entry is allocated to record the request id, and the age vec records the sending sequence between the corresponding table entry and other table entries.

[0033] S2: whether the request is accepted by the bus node normally to complete the access:

[0034] S2.1: when the request is accepted by the bus node normally, the bus sends complete corresponding to the request, and it can be considered that the request has no chance to be retried by the bus, and the corresponding table entry in the request status queue is cleared.

[0035] S2.2: when the request is not accepted by the bus node normally, the bus sends retry ack and pcrd grant corresponding to the request:

[0036] ​S2.2.1: If the request state queue receives the retry acknowledgement of the bus first, the retry information of the corresponding table in the request state queue is updated according to the returned request ID, including setting the retry valid signal to indicate that the protocol credit card is needed and recording the type of the protocol credit card.

[0037] When the subsequent bus node has resources to accept the request, the bus protocol credit card permission is returned, carrying the type of the protocol credit card. First, the type of the protocol credit card is compared with each table in the request state queue. If the corresponding table has the retry valid signal set and the type of the protocol credit card to be waited for is consistent, it is considered to be a candidate for awakening. Then, the table with the oldest age vector record is selected from all the candidates for awakening, the table is cleared, and the request awakening signal corresponding to the request queue is sent to notify the retransmission. At this time, the protocol credit card permission does not need to be pushed to the protocol credit card queue because it is immediately consumed.

[0038] S2.2.2: For special cases, the retry acknowledgement reply and the protocol credit card permission corresponding to a request may be returned by the bus due to the transmission efficiency of the node. If the protocol credit card queue receives the protocol credit card permission of the bus first, the process becomes that the protocol credit card permission is compared with the table in the request state queue, and there is no candidate for awakening. Then, a table in the protocol credit card queue is assigned to the protocol credit card, and the protocol credit card valid signal and the type of the protocol credit card are recorded for the use of the subsequent retry.

[0039] After the subsequent request state queue receives the retry acknowledgement of the bus, the type of the protocol credit card needed is compared with each table in the protocol credit card queue. If the corresponding table has the protocol credit card valid signal set and the type of the protocol credit card to be waited for is consistent, it is considered to be a candidate for awakening. Then, the table of the protocol credit card in the protocol credit card queue (any one of the multiple tables of the same type can be selected) and the table of the corresponding request in the request state queue are cleared, and the request awakening signal corresponding to the request queue is sent to notify the retransmission of the request.

[0040] In an extremely special case, if all the protocol credit card permissions are returned in advance of the retry acknowledgement, that is, the protocol credit card queue receives all the protocol credit card permissions of the bus first, the depth of the protocol credit card queue is equal to the depth of the request state queue, that is, equal to the maximum number of requests that can be sent by the request queue.

[0041] The above is only a specific embodiment of the present application, but the technical features of the present application are not limited thereto. Any simple change, equivalent replacement or modification made on the basis of the present application to solve the basically same technical problem and achieve the basically same technical effect is covered by the protection scope of the present application.

Claims

1. A system for accelerating retry association queues in the CHI bus protocol, characterized in that, include: The bus is used to issue completion, retry confirmations, and protocol credit card approvals. The request queue is used to send requests. The request status queue includes an age vector and several entries. When a request is first sent from the request queue, the corresponding entry in the request status queue records the basic information of the request, including the request validity signal, request ID, retry validity signal, and retry protocol credit card. The age vector records the order in which the corresponding entry is sent and the other entries are sent. The protocol credit card queue records the protocol credit cards returned each time by the bus. The protocol credit card entries record the protocol credit card validity signal and the protocol credit card type. When a request is not accepted normally by the bus node, the bus responds by issuing a retry confirmation and protocol credit card permission for the request. If the request status queue receives the retry confirmation from the bus first, then update the retry information of the corresponding entry in the request status queue according to the returned request ID, including setting the retry valid signal to indicate that the protocol credit card needs to be waited for, and recording the type of protocol credit card to be waited for. When a subsequent bus node has resources to accept the request, it will return a bus protocol credit card permission, carrying the protocol credit card type. First, it compares the protocol credit card type with each entry in the request status queue. If the retry valid signal of the corresponding entry is set and the waiting protocol credit card type is consistent, it is considered a candidate for wake-up. Then, it selects the first entry sent from all wakeable candidates based on the information recorded in the age vector, clears the first entry sent, and sends the corresponding wake-up request signal to the request queue to notify it to resend.

2. A system for accelerating retry association queues in the CHI bus protocol according to claim 1, characterized in that: When a request is accepted normally by a bus node, the bus indicates that the request has been completed.

3. A system for accelerating retry association queues in the CHI bus protocol according to claim 2, characterized in that: Clear the corresponding entry in the request status queue.

4. A system for accelerating retry association queues in the CHI bus protocol according to claim 1, characterized in that: If the protocol credit card queue receives the protocol credit card permission from the bus first, the protocol credit card permission is compared with the entry in the request status queue. If there is no wake-up candidate, an entry in the protocol credit card queue is allocated to this protocol credit card, recording the protocol credit card validity signal and protocol credit card type.

5. A system for accelerating retry association queues in the CHI bus protocol according to claim 4, characterized in that: If all protocol credit card grants precede the retry acknowledgment return, meaning the protocol credit card queue receives all protocol credit card grants from the bus first, then the depth of the protocol credit card queue is equal to the depth of the request status queue, which is equal to the maximum number of requests that the request queue can send.

6. A method for accelerating retry association queues in the CHI bus protocol, comprising: S1: The request queue sends a request to the bus; S2: Whether the request was accepted by the bus node to complete the access; S2.1: When a request is accepted normally by a bus node, the bus indicates that the request has been completed and clears the corresponding entry in the request status queue. S2.2: When a request is not accepted normally by the bus node, the bus will issue a retry confirmation and protocol credit card permission for the request. S2.2.1: If the request status queue receives the retry confirmation from the bus first, then update the retry information of the corresponding entry in the request status queue, including setting the retry valid signal to indicate that it needs to wait for the protocol credit card, and recording the protocol credit card type to be waited for; when the subsequent bus node has resources to accept the request, return the bus protocol credit card permission, carrying the protocol credit card type, first compare the protocol credit card type with each entry in the request status queue, if the retry valid signal of the corresponding entry is set and the waiting protocol credit card type is consistent, then it is considered a candidate for wake-up, then select the first sent entry from all wakeable candidates according to the information recorded by the age vector, then clear the first sent entry, and send the corresponding request wake-up signal to the request queue to notify to resend the request again; S2.2.2: If the protocol credit card queue receives the protocol credit card permission from the bus first, then an entry in the protocol credit card queue is allocated to this protocol credit card; after the request status queue receives the retry confirmation from the bus, it first compares the required protocol credit card type with each entry in the protocol credit card queue. If the corresponding entry's protocol credit card valid signal is set and the waiting protocol credit card type is consistent, it is considered a candidate for wake-up. Then, the entry of this protocol credit card in the protocol credit card queue and the corresponding request's entry in the request status queue are cleared, and the corresponding request wake-up signal is sent to the request queue to notify that the request be resent.

Citation Information

Patent Citations

  • CHI bus memory for chip prototype rapid function verification

    CN115794705A

  • Method for guaranteeing reliability of data transfer on a bus shared by a plurality of nodes and a device for said method

    KR102114582B1