Buffer for replayed loads in parallel with reservation station for rapid rescheduling

    公开(公告)号:US11175917B1

    公开(公告)日:2021-11-16

    申请号:US17018875

    申请日:2020-09-11

    Applicant: Apple Inc.

    Abstract: In an embodiment, a processor comprises a reservation station that issues a first load operation for execution, a store queue, and a replayed load buffer coupled in parallel with the reservation station. During execution of the first load operation, the store queue detects that the first load operation hits on a first store operation in the store queue that lacks store data and causes a replay of the first load operation. The replayed load buffer captures an identifier of the first load operation and the first store operation based on the replay of the first load operation, wherein the replayed load buffer monitors the reservation station for issuance of a first store data operation corresponding to the first store operation and issues the first load operation for reexecution based on the issuance of the first store data operation.

    Load/Store Ordering Violation Management

    公开(公告)号:US20210072997A1

    公开(公告)日:2021-03-11

    申请号:US16562675

    申请日:2019-09-06

    Applicant: Apple Inc.

    Abstract: A processor includes a load/store unit that includes one or more load pipelines and one or more store pipelines. Load operations may be issued into the load pipelines out of order with respect to older store operations. If a load operation is executed out or order with an older store operation that writes one or more bytes read by the load operation, and if the store operation is issued shortly after the load operation, such that the load operation is still in the load pipeline when the store operation is issued, some cases of flushing may be converted to replays by detecting the ordering violation while the load operation is still in the load pipeline.

    EARLY LOAD EXECUTION VIA CONSTANT ADDRESS AND STRIDE PREDICTION

    公开(公告)号:US20210049015A1

    公开(公告)日:2021-02-18

    申请号:US16539684

    申请日:2019-08-13

    Applicant: Apple Inc.

    Abstract: A system and method for efficiently reducing the latency of load operations. In various embodiments, logic of a processor accesses a prediction table after fetching instructions. For a prediction table hit, the logic executes a load instruction with a retrieved predicted address from the prediction table. For a prediction table miss, when the logic determines the address of the load instruction and hits in a learning table, the logic updates a level of confidence indication to indicate a higher level of confidence when a stored address matches the determined address. When the logic determines the level of confidence indication stored in a given table entry of the learning table meets a threshold, the logic allocates, in the prediction table, information stored in the given entry. Therefore, the predicted address is available during the next lookup of the prediction table.

    Scalable interrupts
    24.
    发明授权

    公开(公告)号:US12007920B2

    公开(公告)日:2024-06-11

    申请号:US18301837

    申请日:2023-04-17

    Applicant: Apple Inc.

    CPC classification number: G06F13/24 G06F1/26

    Abstract: An interrupt delivery mechanism for a system includes and interrupt controller and a plurality of cluster interrupt controllers coupled to respective pluralities of processors in an embodiment. The interrupt controller may serially transmit an interrupt request to respective cluster interrupt controllers, which may acknowledge (Ack) or non-acknowledge (Nack) the interrupt based on attempting to deliver the interrupt to processors to which the cluster interrupt controller is coupled. In a soft iteration, the cluster interrupt controller may attempt to deliver the interrupt to processors that are powered on, without attempting to power on processors that are powered off. If the soft iteration does not result in an Ack response from one of the plurality of cluster interrupt controllers, a hard iteration may be performed in which the powered-off processors may be powered on.

    Scalable Interrupts
    27.
    发明公开
    Scalable Interrupts 审中-公开

    公开(公告)号:US20230251985A1

    公开(公告)日:2023-08-10

    申请号:US18301837

    申请日:2023-04-17

    Applicant: Apple Inc.

    CPC classification number: G06F13/24 G06F1/26

    Abstract: An interrupt delivery mechanism for a system includes and interrupt controller and a plurality of cluster interrupt controllers coupled to respective pluralities of processors in an embodiment. The interrupt controller may serially transmit an interrupt request to respective cluster interrupt controllers, which may acknowledge (Ack) or non-acknowledge (Nack) the interrupt based on attempting to deliver the interrupt to processors to which the cluster interrupt controller is coupled. In a soft iteration, the cluster interrupt controller may attempt to deliver the interrupt to processors that are powered on, without attempting to power on processors that are powered off. If the soft iteration does not result in an Ack response from one of the plurality of cluster interrupt controllers, a hard iteration may be performed in which the powered-off processors may be powered on.

    Scalable interrupts
    29.
    发明授权

    公开(公告)号:US11630789B2

    公开(公告)日:2023-04-18

    申请号:US17246311

    申请日:2021-04-30

    Applicant: Apple Inc.

    Abstract: An interrupt delivery mechanism for a system includes and interrupt controller and a plurality of cluster interrupt controllers coupled to respective pluralities of processors in an embodiment. The interrupt controller may serially transmit an interrupt request to respective cluster interrupt controllers, which may acknowledge (Ack) or non-acknowledge (Nack) the interrupt based on attempting to deliver the interrupt to processors to which the cluster interrupt controller is coupled. In a soft iteration, the cluster interrupt controller may attempt to deliver the interrupt to processors that are powered on, without attempting to power on processors that are powered off. If the soft iteration does not result in an Ack response from one of the plurality of cluster interrupt controllers, a hard iteration may be performed in which the powered-off processors may be powered on.

    Decoupling Atomicity from Operation Size

    公开(公告)号:US20210397555A1

    公开(公告)日:2021-12-23

    申请号:US16907740

    申请日:2020-06-22

    Applicant: Apple Inc.

    Abstract: In an embodiment, a processor implements a different atomicity size (for memory consistency order) than the operation size. More particularly, the processor may implement a smaller atomicity size than the operation size. For example, for multiple register loads, the atomicity size may be the register size. In another example, the vector element size may be the atomicity size for vector load instructions. In yet another example, multiple contiguous vector elements, but fewer than all the vector elements in a vector register, may be the atomicity size for vector load instructions.

Patent Agency Ranking