CIRCUITRY AND METHODS FOR INFORMING INDIRECT PREFETCHES USING CAPABILITIES

    公开(公告)号:US20230315465A1

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

    申请号:US17712073

    申请日:2022-04-02

    CPC classification number: G06F9/3802 G06F12/0875 G06F2212/452

    Abstract: Systems, methods, and apparatuses for implementing capability-based indirect prefetching are described. In certain examples, a hardware processor comprises an execution circuit to execute an instruction that generates a memory access request for an element in memory via a first capability; a capability management circuit to check the first capability for the memory access request, the first capability comprising an address field of the element in the memory, a validity field, and a bounds field that is to indicate a lower bound and an upper bound of a first object to which the first capability authorizes access; a cache; and a prefetch circuit to: prefetch an additional element of the first object from the memory based on the first capability, determine if the additional element is a second capability comprising an address field of a second element in the memory, a validity field, and a bounds field that is to indicate a lower bound and an upper bound of a second object to which the second capability authorizes access, and prefetch the second element from the memory to the cache based on the additional element being the second capability.

    CIRCUITRY AND METHODS FOR IMPLEMENTING ONE OR MORE PREDICATED CAPABILITY INSTRUCTIONS

    公开(公告)号:US20240329995A1

    公开(公告)日:2024-10-03

    申请号:US18194010

    申请日:2023-03-31

    CPC classification number: G06F9/3016 G06F11/1004 G06F12/1425 G06F2212/1052

    Abstract: Circuitry and methods for implementing one or more predicated capability instructions are described. In certain examples, a hardware processor (e.g., core) includes a capability management circuit to check a capability for a memory access request for a memory, the capability comprising an address field for an address to be accessed by the memory access request and a bounds field that is to indicate a lower bound and an upper bound of an address space to which the capability authorizes access; a decoder circuit to decode a single instruction into a decoded single instruction, the single instruction comprising a field to indicate the capability, and an opcode to indicate: an operation to be performed for the address, that an execution circuit is to perform a first check that a condition code, that indicates a status from a previous execution of the execution circuit, is a certain value, that the capability management circuit is to perform a second check that the capability authorizes access to the address, and in response to the first check and the second check both passing, cause the execution circuit to perform the operation for the address; and the execution circuit to execute the decoded single instruction according to the opcode.

    CIRCUITRY AND METHODS FOR IMPLEMENTING CAPABILITY-DIRECTED PREFETCHING

    公开(公告)号:US20230315640A1

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

    申请号:US17712072

    申请日:2022-04-02

    CPC classification number: G06F12/0862 G06F12/0875 G06F2212/602 G06F2212/452

    Abstract: Systems, methods, and apparatuses for implementing capability-directed array prefetching are described. In certain examples, a hardware processor comprises an execution circuit to execute an instruction that generates a memory access request for an element in memory; a capability management circuit to check a capability for the memory access request, the capability comprising an address field of the element in the memory, a validity field, and a bounds field that is to indicate a lower bound and an upper bound of an object to which the capability authorizes access; a cache; and a prefetch circuit to prefetch an additional element of the object from the memory to the cache based on the capability checked by the capability management circuit.

    CIRCUITRY AND METHODS FOR IMPLEMENTING FORWARD-EDGE CONTROL-FLOW INTEGRITY (FECFI) USING ONE OR MORE CAPABILITY-BASED INSTRUCTIONS

    公开(公告)号:US20240330000A1

    公开(公告)日:2024-10-03

    申请号:US18194086

    申请日:2023-03-31

    CPC classification number: G06F9/3861 G06F9/30145

    Abstract: Techniques for implementing forward-edge control-flow integrity (FECFI) using capability instructions in a hardware processor are described. In certain examples, a hardware processor (e.g., core) includes a capability management circuit to check a capability for a memory access request for a memory, the capability comprising an address field and a bounds field that is to indicate a lower bound and an upper bound of an address space to which the capability authorizes access; a decoder circuit to decode a single instruction into a decoded single instruction, the single instruction comprising: a first capability to indicate a first call table comprising a respective entry for each of a plurality of functions of a first type, a field to indicate a first offset of a first entry for a first function requested for execution, and an opcode to indicate the capability management circuit is to perform a first check that the first offset is within a lower bound and an upper bound of the first capability and a second check that the first offset is a permitted offset for the entries in the first call table, and in response to the first check and the second check both passing, cause an execution circuit to execute the first function; and the execution circuit to execute the decoded single instruction according to the opcode.

    CIRCUITRY AND METHODS FOR CAPABILITY INFORMED PREFETCHES

    公开(公告)号:US20230315452A1

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

    申请号:US17712075

    申请日:2022-04-02

    CPC classification number: G06F9/30047 G06F9/30145 G06F12/1458 G06F12/0862

    Abstract: Systems, methods, and apparatuses for implementing capability informed prefetches are described. In certain examples, a hardware processor comprises an execution circuit to execute an instruction that generates a memory access request for an element in memory via a first capability; a capability management circuit to check the first capability for the memory access request, the first capability comprising an address field of the element in the memory, a validity field, and a bounds field that is to indicate a lower bound and an upper bound of a first object to which the first capability authorizes access; a cache; and a prefetch circuit to: prefetch an additional element from the memory to the cache, determine if the additional element is a second capability comprising an address field of a second element in the memory, a validity field, and a bounds field that is to indicate a lower bound and an upper bound of a second object to which the second capability authorizes access, and prefetch the second element from the memory to the cache based on the additional element being the second capability.

Patent Agency Ranking