Replicate elements instruction
    1.
    发明授权

    公开(公告)号:US11977884B2

    公开(公告)日:2024-05-07

    申请号:US16468108

    申请日:2017-11-10

    Applicant: ARM LIMITED

    CPC classification number: G06F9/30032 G06F9/30018 G06F9/30036 G06F9/30109

    Abstract: A replicate elements instruction defining a plurality of variable length segments in a result vector controls processing circuitry (80) to generate a result vector in which, in each respective segment, a repeating value is repeated throughout that segment of the result vector, the repeating value comprising a data value or element index of a selected data element of a source vector. This instructions is useful for accelerating processing of data structures smaller than the vector length.

    Transaction nesting depth testing instruction

    公开(公告)号:US11775297B2

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

    申请号:US16651045

    申请日:2018-08-21

    Applicant: Arm Limited

    Abstract: In a system providing transactional memory support, a transaction nesting depth testing instruction is provided for triggering processing circuitry 4 to set at least one status value to one of a plurality of states depending on a transaction nesting depth indicative of a number of executed transaction start instructions of a given thread for which the corresponding transaction remains unaborted and uncommitted, the plurality of states including a first state selected when the transaction nesting depth is 1 and at least one further state selected when the transaction nesting depth is greater than or less than 1. The supported ISA enables the setting of the at least one status value and a conditional branch conditional on the at least one status value being in the first state to be performed in response to a single transaction nesting depth testing instruction and a single conditional branch instruction.

    Element by vector operations in a data processing apparatus

    公开(公告)号:US11327752B2

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

    申请号:US16487256

    申请日:2018-02-02

    Applicant: ARM LIMITED

    Abstract: A data processing apparatus, a method of operating a data processing apparatus, a non-transitory computer readable storage medium, and an instruction are provided. The instruction specifies a first source register, a second source register, and an index. In response to the instruction control signals are generated, causing processing circuitry to perform a data processing operation with respect to each data group in the first source register and the second source register to generate respective result data groups forming a result of the data processing operation. Each of the first source register and the second source register has a size which is an integer multiple at least twice a predefined size of the data group, and each data group comprises a plurality of data elements. The operands of the data processing operation for each data group are a selected data element identified in the data group of the first source register by the index and each data element in the data group of the second source register. A technique for element-by-vector operation which is readily scalable as the register width grows.

    Replicate partition instruction
    4.
    发明授权

    公开(公告)号:US11947962B2

    公开(公告)日:2024-04-02

    申请号:US16468098

    申请日:2017-11-10

    Applicant: ARM LIMITED

    CPC classification number: G06F9/30032 G06F9/30018 G06F9/30036 G06F9/30109

    Abstract: In response to a replicate partition instruction specifying partition information defining positions of a plurality of variable size partitions within a result vector, an instruction decoder (20) controls the processing circuitry (80) to generate a result vector in which each partition having more than one data element comprises data values or element indices of a sequence of data elements of a source vector starting or ending at a selected data element position. This instruction can be useful for accelerating processing of data structures smaller than the vector length.

    Transactional compare-and-discard instruction

    公开(公告)号:US11422808B2

    公开(公告)日:2022-08-23

    申请号:US17258287

    申请日:2019-05-09

    Applicant: Arm Limited

    Abstract: An apparatus comprising: processing circuitry to process threads of data processing; and transactional memory support circuitry to support execution of a transaction within a thread processed by the processing circuitry. In response to a transactional compare-and-discard instruction executed within a given transaction, specifying a target address and a compare value, the processing circuitry loads a target data value from a memory location corresponding to the target address; sets at least one condition status indication depending on a result of comparing the target data value and the compare value; and discards the target data value without adding the target address to a working set of addresses tracked for the given transaction. This is useful for enabling thread level speculation to be implemented on a transactional memory architecture.

    Address translation data invalidation

    公开(公告)号:US11615032B2

    公开(公告)日:2023-03-28

    申请号:US16625102

    申请日:2018-06-01

    Applicant: ARM LIMITED

    Abstract: A data processing system (2) including one or more transaction buffers (16, 18, 20) storing address translation data executes translation buffer invalidation instructions TLBI within respective address translation contexts VMID, ASID, X. Translation buffer invalidation signals generated as a consequence of execution of the translation buffer invalidation instructions are broadcast to respective translation buffers and include signals which specify the address translation context of the translation buffer invalidation instruction that was executed. This address translation context specified within the translation buffer invalidation signals is used to gate whether or not those translation buffer invalidation signals when received by translation buffers which are potential targets for the invalidation are or are not flushed. The address translation context data provided within the translation buffer invalidation signals may also be used to control whether or not local memory transactions for a local transactional memory access are or are not aborted upon receipt of the translation buffer invalidation signals.

    Handling load-exclusive instructions in apparatus having support for transactional memory

    公开(公告)号:US11579873B2

    公开(公告)日:2023-02-14

    申请号:US17255001

    申请日:2019-05-09

    Applicant: Arm Limited

    Abstract: An apparatus is described with support for transactional memory and load/store-exclusive instructions using an exclusive monitor indication to track exclusive access to a given address. In response to a predetermined type of load instruction specifying a load target address, which is executed within a given transaction, any exclusive monitor indication previously set for the load target address is cleared. In response to a load-exclusive instruction, an abort is triggered for a transaction for which the given address is specified as one of its working set of addresses. This helps to maintain mutual exclusion between transactional and non-transactional threads even if there is load speculation in the non-transactional thread.

    Multiply-accumulation in a data processing apparatus

    公开(公告)号:US11513796B2

    公开(公告)日:2022-11-29

    申请号:US16487258

    申请日:2018-01-26

    Applicant: ARM LIMITED

    Abstract: A data processing apparatus, a method of operating a data processing apparatus, a non-transitory computer readable storage medium, and an instruction are provided. The instruction specifies a first source register, a second source register, and a set of N accumulation registers. In response to the instruction control signals are generated, causing processing circuitry to extract N data elements from content of the first source register, perform a multiplication of each of the N data elements by content of the second source register, and apply a result of each multiplication to content of a respective target register of the set of N accumulation registers. As a result plural (N) multiplications are performed in a manner that effectively provides a multiplier N times the register width, but without requiring the register file to be made N times larger.

    Vector length querying instruction
    10.
    发明授权

    公开(公告)号:US11314514B2

    公开(公告)日:2022-04-26

    申请号:US15741303

    申请日:2016-06-23

    Applicant: ARM Limited

    Abstract: A data processing system 2 supporting vector processing operations uses scaling vector length querying instructions. The scaling vector length querying instructions return a result which is dependent upon a number of elements in a vector for a variable vector element size specified by the instruction and multiplied by a scaling value specified by the instruction. The scaling vector length querying instructions may be in the form of count instructions, increment instructions or decrement instructions. The instructions may include a pattern constraint applying a constraint, such as modulo(M) or power of 2 to the partial result value representing the number of vector elements provided for the register element size specified for the instruction.

Patent Agency Ranking