Patents by Inventor Luca NASSI
Luca NASSI has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 12260218Abstract: There is provided an apparatus, method for data processing. The apparatus comprises post decode cracking circuitry responsive to receipt of decoded instructions from decode circuitry of a processing pipeline, to crack the decoded instructions into micro-operations to be processed by processing circuitry of the processing pipeline. The post decode cracking circuitry is responsive to receipt of a decoded instruction suitable for cracking into a plurality of micro-operations including at least one pair of micro-operations having a producer-consumer data dependency, to generate the plurality of micro-operations including a producer micro-operation and a consumer micro-operation, and to assign a transfer register to transfer data between the producer micro-operation and the consumer micro-operation.Type: GrantFiled: June 28, 2023Date of Patent: March 25, 2025Assignee: Arm LimitedInventors: Quentin Éric Nouvel, Luca Nassi, Nicola Piano, Albin Pierrick Tonnerre, Geoffray Matthieu Lacourba
-
Publication number: 20250053421Abstract: An apparatus comprises at least one register rename table structure comprising rename entries for indicating register mappings between architectural registers and corresponding physical registers, and register rename circuitry to update the register mappings indicated by the rename entries. Rename entries corresponding to at least one set of architectural registers support a cleared-register encoding. In response to an operation specifying a source architectural register for which a corresponding rename entry is set to the cleared-register encoding, the register rename circuitry controls the processing circuitry to process that operation with a source operand corresponding to the source architectural register being treated as having a predetermined value.Type: ApplicationFiled: August 11, 2023Publication date: February 13, 2025Inventors: Quentin Éric NOUVEL, Luca NASSI, Albin Pierrick TONNERRE, Geoffray Matthieu LACOURBA
-
Publication number: 20250004769Abstract: There is provided an apparatus, method for data processing. The apparatus comprises post decode cracking circuitry responsive to receipt of decoded instructions from decode circuitry of a processing pipeline, to crack the decoded instructions into micro-operations to be processed by processing circuitry of the processing pipeline. The post decode cracking circuitry is responsive to receipt of a decoded instruction suitable for cracking into a plurality of micro-operations including at least one pair of micro-operations having a producer-consumer data dependency, to generate the plurality of micro-operations including a producer micro-operation and a consumer micro-operation, and to assign a transfer register to transfer data between the producer micro-operation and the consumer micro-operation.Type: ApplicationFiled: June 28, 2023Publication date: January 2, 2025Inventors: Quentin Éric NOUVEL, Luca NASSI, Nicola PIANO, Albin Pierrick TONNERRE, Geoffray Matthieu LACOURBA
-
Publication number: 20250004767Abstract: Mode change detection circuitry detects a mode change when processing circuitry switches between first and second modes of processing in which a first set of architectural registers are designated as having different register lengths. Register mapping circuitry maps architectural registers to corresponding physical registers.Type: ApplicationFiled: June 30, 2023Publication date: January 2, 2025Inventors: Quentin Éric NOUVEL, Luca NASSI, Albin Pierrick TONNERRE, Geoffray Matthieu LACOURBA
-
Patent number: 12182427Abstract: An apparatus is provided for controlling the operating mode of control circuitry, such that the control circuitry may change between two operating modes. In an allocation mode, data that is loaded in response to an instruction is allocated into storage circuitry from an intermediate buffer, and the data is read from the storage circuitry. In a non-allocation mode, the data is not allocated to the storage circuitry, and is read directly from intermediate buffer. The control of the operating mode may be performed by mode control circuitry, and the mode may be changed in dependence on the type of instruction that calls the data, and whether the data may be used again in the near future, or whether it is expected to be used only once.Type: GrantFiled: October 14, 2022Date of Patent: December 31, 2024Assignee: Arm LimitedInventors: Stefano Ghiggini, Natalya Bondarenko, Luca Nassi, Geoffray Matthieu Lacourba, Huzefa Moiz Sanjeliwala, Miles Robert Dooley, Abhishek Raja
-
Patent number: 12112169Abstract: A data processing apparatus is provided. Instruction send circuitry sends an instruction to an external processor to be executed by the external processor. Allocation circuitry allocates a specified one of several registers for a result of the instruction having been executed on the external processor and data receive circuitry receives the result of the instruction having been executed on the external processor and stores the result in the specified one of the several registers. In response to a condition being met: the specified one of the several registers is dereserved prior to the result being received by the data receive circuitry, and the result is discarded by the data receive circuitry when the result is received by the data receive circuitry.Type: GrantFiled: January 12, 2023Date of Patent: October 8, 2024Assignee: Arm LimitedInventors: Luca Nassi, Geoffray Matthieu Lacourba, Cédric Denis Robert Airaud, Albin Pierrick Tonnerre
-
Patent number: 12099847Abstract: A data processing apparatus comprises: execution circuitry to execute instructions in order to perform data processing operations specified by those instructions; a plurality of registers to store data values for access by the execution circuitry when performing the data processing operations, each register having an associated physical register identifier; register rename circuitry to select physical register identifiers to associate with architectural register identifiers specified by the instructions; and rename storage having a plurality of entries, each entry being associated with one of the architectural register identifiers and used by the register rename circuitry to indicate a physical register identifier selected for association with that one of the architectural register identifiers; the register rename circuitry comprising an execute unit, and being responsive to detection of an early execute condition for a given instruction, the early execute condition requiring at least detection that each sourType: GrantFiled: January 26, 2023Date of Patent: September 24, 2024Assignee: Arm LimitedInventors: Quentin Éric Nouvel, Luca Nassi, Adrien Pesle
-
Publication number: 20240256281Abstract: A data processing apparatus comprises: execution circuitry to execute instructions in order to perform data processing operations specified by those instructions; a plurality of registers to store data values for access by the execution circuitry when performing the data processing operations, each register having an associated physical register identifier; register rename circuitry to select physical register identifiers to associate with architectural register identifiers specified by the instructions; and rename storage having a plurality of entries, each entry being associated with one of the architectural register identifiers and used by the register rename circuitry to indicate a physical register identifier selected for association with that one of the architectural register identifiers; the register rename circuitry comprising an execute unit, and being responsive to detection of an early execute condition for a given instruction, the early execute condition requiring at least detection that each sourType: ApplicationFiled: January 26, 2023Publication date: August 1, 2024Inventors: Quentin Éric NOUVEL, Luca NASSI, Adrien PESLE
-
Publication number: 20240241723Abstract: A data processing apparatus is provided. Instruction send circuitry sends an instruction to an external processor to be executed by the external processor. Allocation circuitry allocates a specified one of several registers for a result of the instruction having been executed on the external processor and data receive circuitry receives the result of the instruction having been executed on the external processor and stores the result in the specified one of the several registers. In response to a condition being met: the specified one of the several registers is dereserved prior to the result being received by the data receive circuitry, and the result is discarded by the data receive circuitry when the result is received by the data receive circuitry.Type: ApplicationFiled: January 12, 2023Publication date: July 18, 2024Inventors: Luca NASSI, Geoffray Matthieu LACOURBA, Cédric Denis Robert AIRAUD, Albin Pierrick TONNERRE
-
Patent number: 11972264Abstract: Processing circuitry performs processing operations in response to micro-operations. Front end circuitry supplies the micro-operations to be processed by the processing circuitry. Prediction circuitry generates a prediction of a number of loop iterations for which one or more micro-operations per loop iteration are to be supplied by the front end circuitry, where an actual number of loop iterations to be processed by the processing circuitry is resolvable by the processing circuitry based on at least one operand corresponding to a first loop iteration to be processed by the processing circuitry. The front end circuitry varies, based on a level of confidence in the prediction of the number of loop iterations, a supply rate with which the one or more micro-operations for at least a subset of the loop iterations are supplied to the processing circuitry.Type: GrantFiled: June 13, 2022Date of Patent: April 30, 2024Inventors: Guillaume Bolbenes, Thibaut Elie Lanois, Houdhaifa Bouzguarrou, Luca Nassi
-
Publication number: 20240126458Abstract: An apparatus is provided for controlling the operating mode of control circuitry, such that the control circuitry may change between two operating modes. In an allocation mode, data that is loaded in response to an instruction is allocated into storage circuitry from an intermediate buffer, and the data is read from the storage circuitry. In a non-allocation mode, the data is not allocated to the storage circuitry, and is read directly from intermediate buffer. The control of the operating mode may be performed by mode control circuitry, and the mode may be changed in dependence on the type of instruction that calls the data, and whether the data may be used again in the near future, or whether it is expected to be used only once.Type: ApplicationFiled: October 14, 2022Publication date: April 18, 2024Inventors: Stefano GHIGGINI, Natalya Bondarenko, Luca NASSI, Geoffray Matthieu LACOURBA, Huzefa Moiz SANJELIWALA, Miles Robert DOOLEY, . ABHISHEK RAJA
-
Publication number: 20230409325Abstract: Processing circuitry performs processing operations in response to micro-operations. Front end circuitry supplies the micro-operations to be processed by the processing circuitry. Prediction circuitry generates a prediction of a number of loop iterations for which one or more micro-operations per loop iteration are to be supplied by the front end circuitry, where an actual number of loop iterations to be processed by the processing circuitry is resolvable by the processing circuitry based on at least one operand corresponding to a first loop iteration to be processed by the processing circuitry. The front end circuitry varies, based on a level of confidence in the prediction of the number of loop iterations, a supply rate with which the one or more micro-operations for at least a subset of the loop iterations are supplied to the processing circuitry.Type: ApplicationFiled: June 13, 2022Publication date: December 21, 2023Inventors: Guillaume BOLBENES, Thibaut Elie LANOIS, Houdhaifa BOUZGUARROU, Luca NASSI
-
Patent number: 11847056Abstract: An apparatus comprises prefetch circuitry, and a cache having a plurality of entries to store data for access by processing circuitry and blocks of metadata for reference by the prefetch circuitry. The prefetch circuitry can detect one or more access sequences in dependence on training inputs derived from demand accesses processed by the cache in response to memory access operations performed by the processing circuitry. On detecting a given access sequence, this causes an associated given block of metadata providing information indicative of the given access sequence to be stored in a selected entry of the cache. Eviction control circuitry, responsive to a victimisation event, performs an operation to select a victim entry in the cache, the victim entry being selected from one or more candidate victim entries.Type: GrantFiled: May 25, 2022Date of Patent: December 19, 2023Assignee: Arm LimitedInventors: Damien Matthieu Valentin Cathrine, Ugo Castorina, Luca Nassi
-
Publication number: 20230385199Abstract: An apparatus comprises prefetch circuitry, and a cache having a plurality of entries to store data for access by processing circuitry and blocks of metadata for reference by the prefetch circuitry. The prefetch circuitry can detect one or more access sequences in dependence on training inputs derived from demand accesses processed by the cache in response to memory access operations performed by the processing circuitry. On detecting a given access sequence, this causes an associated given block of metadata providing information indicative of the given access sequence to be stored in a selected entry of the cache. Eviction control circuitry, responsive to a victimisation event, performs an operation to select a victim entry in the cache, the victim entry being selected from one or more candidate victim entries.Type: ApplicationFiled: May 25, 2022Publication date: November 30, 2023Inventors: Damien Matthieu Valentin CATHRINE, Ugo CASTORINA, Luca NASSI
-
Patent number: 11720494Abstract: Apparatuses and methods relating to controlling cache evictions are disclosed. Processing circuitry which execute instructions out-of-order is provided with a private cache into which blocks of data are copied from a shared storage location to which the processing circuitry shares access. The processing circuitry also has a read-after-read buffer, into which an entry is allocated when out-of-order execution of a load instruction occurs comprising an address accessed by the load instruction. The address remains as a valid entry in the read-after-read buffer until the load instruction is committed. Eviction of an eviction candidate block of data from the private cache to the shared storage location is controlled in dependence on whether the eviction candidate block of data has a corresponding valid entry in the read-after-read buffer.Type: GrantFiled: March 11, 2022Date of Patent: August 8, 2023Assignee: Arm LimitedInventors: Yohan Fernand Fargeix, Lucas Garcia, Luca Nassi, Albin Pierrick Tonnerre
-
Publication number: 20230244606Abstract: Circuitry comprises a memory system to store data items; cache memory storage to store a copy of one or more data items, the cache memory storage comprising a hierarchy of two or more cache levels; detector circuitry to detect at least a property of data items for storage by the cache memory storage; and control circuitry to control eviction, from a given cache level, of a data item stored by the given cache level, the control circuitry being configured to select a destination to store a data item evicted from the given cache level in response to a detection by the detector circuitry.Type: ApplicationFiled: February 3, 2022Publication date: August 3, 2023Inventors: Geoffray LACOURBA, Luca NASSI, Damien CATHRINE, Stefano GHIGGINI, Albin Pierrick TONNERRE
-
Patent number: 11531547Abstract: Data processing circuitry comprises out-of-order instruction execution circuitry; register mapping circuitry to map zero or more architectural processor registers relating to execution of that program instruction to respective ones of a set of physical processor registers; commit circuitry to commit, in a program code order, the results of executed program instructions, the commit circuitry being configured to access a data store which stores register tag data to indicate which physical registers mapped by the register mapping circuitry relate to a given program instruction; fault detection circuitry to detect a memory access fault in respect of a vector memory access operation and to generate fault indication data indicative of an element earliest in the element order for which a memory access fault was detected; a fault indication register to store the fault indication data, in which the register mapping circuitry is configured to generate a register mapping for a program instruction for any architectural pType: GrantFiled: May 21, 2021Date of Patent: December 20, 2022Assignee: Arm LimitedInventors: Damian Maiorano, Luca Nassi, Cédric Denis Robert Airaud, Christophe Laurent Carbonne, Jocelyn François Orion Jaubert, Pasquale Ranone
-
Publication number: 20220374240Abstract: Data processing circuitry comprises out-of-order instruction execution circuitry; register mapping circuitry to map zero or more architectural processor registers relating to execution of that program instruction to respective ones of a set of physical processor registers; commit circuitry to commit, in a program code order, the results of executed program instructions, the commit circuitry being configured to access a data store which stores register tag data to indicate which physical registers mapped by the register mapping circuitry relate to a given program instruction; fault detection circuitry to detect a memory access fault in respect of a vector memory access operation and to generate fault indication data indicative of an element earliest in the element order for which a memory access fault was detected; a fault indication register to store the fault indication data, in which the register mapping circuitry is configured to generate a register mapping for a program instruction for any architectural pType: ApplicationFiled: May 21, 2021Publication date: November 24, 2022Inventors: Damian MAIORANO, Luca NASSI, Cédric Denis Robert AIRAUD, Christophe Laurent CARBONNE, Jocelyn François Orion JAUBERT, Pasquale RANONE
-
Patent number: 11157277Abstract: Data processing apparatus comprises a processing element configured to access an architectural register representing a given system register; mapping circuitry to map the architectural register representing the given system register to a physical register selected from a set of physical registers; a register bank having a set of two or more respective banked versions of the given system register, in which a respective one of the banked versions of the system register is associated with each of a plurality of current operating states of the processing element; in which, when the processing element changes operating state from a first operating state associated with a first one of the banked versions of the system register to a second operating state associated with a second, different, one of the banked versions of the system register, the processing element is configured to store the current contents of the architectural register representing the given system register to the first one of the banked versions oType: GrantFiled: September 5, 2019Date of Patent: October 26, 2021Assignee: Arm LimitedInventors: Cedric Denis Robert Airaud, Albin Pierrick Tonnerre, Luca Nassi, Remi Marius Teyssier
-
Patent number: 11132202Abstract: An apparatus comprises execution circuitry to perform operations on source data values and to generate result data values; issue circuitry comprising one or more issue queues identifying pending operations awaiting performance by the execution circuitry, and selection circuitry to select pending operations to issue to the execution circuitry; data value cache storage comprising first and second cache regions; and cache control circuitry to control the storing to the first cache region of result data values generated by the execution circuitry and the eviction of stored result data values from the first cache region in response to newly generated result data values being stored in the first cache region; the cache control circuitry being configured to store to the second cache region result data values required as source data values for one or more oldest pending operations identified by the one or more issue queues and to inhibit eviction of a given result data value stored in the second cache region until inType: GrantFiled: September 24, 2019Date of Patent: September 28, 2021Assignee: Arm LimitedInventors: Luca Nassi, Rémi Marius Teyssier, Cédric Denis Robert Airaud, Albin Pierrick Tonnerre, Francois Donati, Christophe Carbonne, Damian Maiorano