Processing Control For Data Transfer Patents (Class 712/225)
  • Patent number: 12242749
    Abstract: Embodiments of the present disclosure relate to a memory controller and operating method thereof. According to embodiments of the present disclosure, the memory controller may generate a fused linked list which includes information of a plurality of write commands received from a host and a plurality of synchronization commands requesting a synchronization operation, and control the synchronization operation for one or more of the plurality of write commands based on the fused linked list.
    Type: Grant
    Filed: May 10, 2024
    Date of Patent: March 4, 2025
    Assignee: SK hynix Inc.
    Inventor: Eu Joon Byun
  • Patent number: 12242852
    Abstract: A digital data processor includes an instruction memory storing instructions specifying a data processing operation and a data operand field, an instruction decoder coupled to the instruction memory for recalling instructions from the instruction memory and determining the operation and the data operand, and an operational unit coupled to a data register file and to an instruction decoder to perform a data processing operation upon an operand corresponding to an instruction decoded by the instruction decoder and storing results of the data processing operation. The operational unit is configured to perform a table write in response to a look up table initialization instruction by duplicating at least one data element from a source data register to create duplicated data elements, and writing the duplicated data elements to a specified location in a specified number of at least one table and a corresponding location in at least one other table.
    Type: Grant
    Filed: July 17, 2023
    Date of Patent: March 4, 2025
    Assignee: Texas Instruments Incorporated
    Inventors: Naveen Bhoria, Dheera Balasubramanian Samudrala, Duc Bui, Rama Venkatasubramanian
  • Patent number: 12236241
    Abstract: A data processing apparatus comprises operand routing circuitry configured to prepare operands for processing, and a plurality of processing elements. Each processing element comprises receiving circuitry, processing circuitry, and transmitting circuitry. A group of coupled processing elements comprises a first processing element configured to receive operands from the operand routing circuitry and one or more further processing elements for which the receiving circuitry is coupled to the transmitting circuitry of another processing element in the group. The apparatus also comprises timing circuitry, configured to selectively delay transmission of operands within the group of coupled processing elements to cause operations performed by the group of coupled processing elements to be staggered.
    Type: Grant
    Filed: February 24, 2023
    Date of Patent: February 25, 2025
    Assignee: Arm Limited
    Inventors: Xiaoyang Shen, Zichao Xie, Cédric Denis Robert Airaud, Grégorie Martin
  • Patent number: 12229557
    Abstract: In an embodiment, a processor comprises an atomic predictor circuit to predict whether or not an atomic operation will complete successfully. The prediction may be used when a subsequent load operation to the same memory location as the atomic operation is executed, to determine whether or not to forward store data from the atomic operation to the subsequent load operation. If the prediction is successful, the store data may be forwarded. If the prediction is unsuccessful, the store data may not be forwarded. In cases where an atomic operation has been failing (not successfully performing the store operation), the prediction may prevent the forwarding of the store data and thus may prevent a subsequent flush of the load.
    Type: Grant
    Filed: March 11, 2024
    Date of Patent: February 18, 2025
    Assignee: Apple Inc.
    Inventors: Brian R. Mestan, Gideon N. Levinsky, Michael L. Karm
  • Patent number: 12204639
    Abstract: In some examples, a system executes a monitor separate from an operating system (OS) that uses mapping information in accessing data in a physical memory. The monitor identifies, using the mapping information, invariant information, that comprises program code, of the OS without suspending execution of the OS, the identifying comprising the monitor accessing the physical memory independently of the OS. The monitor determines, based on monitoring the invariant information of the OS, whether a security issue is present.
    Type: Grant
    Filed: July 26, 2019
    Date of Patent: January 21, 2025
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Geoffrey Ndu, Nigel Edwards
  • Patent number: 12197617
    Abstract: An apparatus is described that includes an execution unit to execute a first instruction and a second instruction. The execution unit includes input register space to store a first data structure to be replicated when executing the first instruction and to store a second data structure to be replicated when executing the second instruction. The first and second data structures are both packed data structures. Data values of the first packed data structure are twice as large as data values of the second packed data structure. The execution unit also includes replication logic circuitry to replicate the first data structure when executing the first instruction to create a first replication data structure, and, to replicate the second data structure when executing the second data instruction to create a second replication data structure.
    Type: Grant
    Filed: July 21, 2023
    Date of Patent: January 14, 2025
    Assignee: Intel Corporation
    Inventors: Elmoustapha Ould-Ahmed-Vall, Robert Valentine, Jesus Corbal, Bret L Toll, Mark J. Charney
  • Patent number: 12175243
    Abstract: Aspects disclosed include hardware micro-fused memory (e.g., load and store) operations. In one aspect, a hardware micro-fused memory operation is a single atomic memory operation performed using a plurality of data register operands, for example a load pair or store pair operation. The load pair or store pair operation is treated as two separate operations for purposes of renaming, but is scheduled as a single micro-operation having two data register operands. The load or store pair operation is then performed atomically.
    Type: Grant
    Filed: December 20, 2019
    Date of Patent: December 24, 2024
    Assignee: Ampere Computing LLC
    Inventors: Jonathan Christopher Perry, Jason Anthony Bessette, Sean Philip Mirkes, Jacob Daniel Morgan, John Saint Tran
  • Patent number: 12175283
    Abstract: In a hardware-accelerated computing systems, calls are made from a processor to an accelerator core. The hardware-accelerated computing system includes a processor core having a stack, an accelerator, and an accelerator scheduler. The computing system is configured to process an accelerator command by the processor core issuing an accelerator command to the accelerator scheduler during execution of a task the accelerator scheduler receiving the accelerator command and requesting data from the stack, the processor sending the requested data from the stack to the accelerator scheduler, the accelerator scheduler sending the requested data to the accelerator and sending a write response to the processor, the accelerator processing the accelerator command, and the processor continuing execution of the task. The processor pauses execution of the task upon issuing the accelerator command and resumes execution of the task upon receiving the write response from the accelerator scheduler.
    Type: Grant
    Filed: May 20, 2021
    Date of Patent: December 24, 2024
    Assignee: NXP USA, Inc.
    Inventors: Sourav Roy, Arvind Kaushik, Sneha Mishra, Joseph Gergen
  • Patent number: 12164801
    Abstract: In an embodiment, before modifying a persistent ORL (ORL), a database management system (DBMS) persists redo for a transaction and acknowledges that the transaction is committed. Later, the redo is appended onto the ORL. The DBMS stores first redo for a first transaction into a first PRB and second redo for a second transaction into a second PRB. Later, both redo are appended onto an ORL. The DBMS stores redo of first transactions in volatile SRBs (SLBs) respectively of database sessions. That redo is stored in a volatile shared buffer that is shared by the database sessions. Redo of second transactions is stored in the volatile shared buffer, but not in the SLBs. During re-silvering and recovery, the DBMS retrieves redo from fast persistent storage and then appends the redo onto an ORL in slow persistent storage. After re-silvering, during recovery, the redo from the ORL is applied to a persistent database block.
    Type: Grant
    Filed: August 3, 2022
    Date of Patent: December 10, 2024
    Assignee: Oracle International Corporation
    Inventors: Yunrui Li, Graham Ivey, Shampa Chakravarty, Vsevolod Panteleenko
  • Patent number: 12118356
    Abstract: A multi-threading processor is provided, which includes a cache including a memory and a controller, and a core electrically connected to the cache and configured to simultaneously execute and manage a plurality of threads, in which the core is configured to determine an occurrence of a data hazard for the plurality of threads and stall operations of the plurality of threads, receive, from the cache, hint information instructing a first thread of the plurality of threads to operate, and initiate an operation of the first thread based on the hint information while the data hazard for the plurality of threads is maintained.
    Type: Grant
    Filed: April 23, 2024
    Date of Patent: October 15, 2024
    Assignee: MetisX CO., Ltd.
    Inventors: Kwang Sun Lee, Do Hun Kim, Kee Bum Shin
  • Patent number: 12112205
    Abstract: Data format conversion processing of an accelerator accessed by a processor of a computing environment is reduced. The processor and accelerator use different data formats, and the accelerator is configured to perform an input conversion to convert data from a processor data format to an accelerator data format prior to performing an operation using the data, and an output conversion to convert resultant data from accelerator data format back to processor data format after performing the operation. The reducing includes determining that adjoining operations of a process to run on the processor and accelerator are to be performed by the accelerator, where the adjoining operations include a source operation and destination operation. Further, the reducing includes blocking an output data format conversion of the source operation and an input data format conversion of the input data for the destination operation.
    Type: Grant
    Filed: July 11, 2023
    Date of Patent: October 8, 2024
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Qi Liang, Yi Xuan Zhang, Gui Yu Jiang
  • Patent number: 12112196
    Abstract: A heterogeneous multi-core system that executes a real-time system for an automobile includes a plurality of system-on chips in electronic communication with one another. Each system-on-chip includes a plurality of central processing units (CPUs) arranged into a plurality of logical domains. The heterogeneous multi-core system also includes a plurality of scheduled tasks that are executed based on an execution pipeline and each execute a specific set of tasks for one of the logical domains. The plurality of scheduled tasks includes at least one offset scheduled task that is executed at an offset time and a reference scheduled task located at an execution stage upstream in the execution pipeline relative to the offset scheduled task. The reference scheduled task communicates data to the offset scheduled task and the offset time represents a period of time measured relative to the reference scheduled task.
    Type: Grant
    Filed: April 26, 2021
    Date of Patent: October 8, 2024
    Assignee: GM GLOBAL TECHNOLOGY OPERATIONS LLC
    Inventors: Guy Drory, Gilboa Shveki
  • Patent number: 12093355
    Abstract: A system for secure data transfer in a virtual environment receives a request to initiate a virtual interaction session between an avatar and an entity within the virtual environment. The avatar is operated by a user using a user device. The system presents a virtual data reader to the avatar. The virtual data reader comprises a screen to display data. The system receives user input from the user device. The user input includes user information and data object to be transferred to the entity. The user input is transferred from the user input to the virtual data reader. The system receives a security token from the avatar. The system verifies that the user input belongs to the user. The system also determines that the security token is valid. In response, the system transfers the data object to the entity and concludes the virtual interaction session.
    Type: Grant
    Filed: September 7, 2022
    Date of Patent: September 17, 2024
    Assignee: Bank of America Corporation
    Inventors: Sheetal Bhatia, Sandeep Kumar Chauhan
  • Patent number: 12093213
    Abstract: An apparatus to facilitate computing efficient cross channel operations in parallel computing machines using systolic arrays is disclosed. The apparatus includes a plurality of registers and one or more processing elements communicably coupled to the plurality of registers. The one or more processing elements include a systolic array circuit to perform cross-channel operations on source data received from a single source register of the plurality of registers, wherein the systolic array circuit is modified to: receive inputs from the single source register at different stages of the systolic array circuit; perform cross-channel operations at channels of the systolic array circuit; bypass disabled channels of the systolic array circuit, the disabled channels not used to compute the cross-channel operations; and broadcast a final result of a final stage of the systolic array circuit to all channels of a destination register.
    Type: Grant
    Filed: May 1, 2023
    Date of Patent: September 17, 2024
    Assignee: INTEL CORPORATION
    Inventors: Subramaniam Maiyuran, Jorge Parra, Supratim Pal, Chandra Gurram
  • Patent number: 12072913
    Abstract: Systems and methods are described for implementing programmatic input/output (I/O) routing to datasets with user-defined partitions while providing unhandled data protection. As disclosed herein, a user may define a dataset as including one or more partitions, each partition including criteria for storing data objects written to the partitioned dataset in the individual partitions. Data objects written to the dataset can then be evaluated according to the criteria, and routed to an appropriate partition. To provide unhandled data protection, a dataset definition can include a default partition to which data objects are routed when the data object fails to satisfy the criteria of any of the set of user-defined partitions identified in the specification. Processing I/O operations according to a user-defined partitioning schema can enable data objects to be arranged according to any partitioning schema without tethering the partitioning to a particular underlying storage system.
    Type: Grant
    Filed: January 31, 2023
    Date of Patent: August 27, 2024
    Inventors: Alexander D. James, Vinayak Bhakta, Venkatasubramanian Jayaraman, Ganesh Jothikumar, Andrew John Peters, Amy Sutedja
  • Patent number: 12061910
    Abstract: A processor unit for multiply and accumulate (“MAC”) operations is provided. The present invention may include the processor unit having a plurality of MAC units for performing a set of MAC operations. The present invention may include each MAC unit having an execution unit and a one-write one-read (“1W/1R”) register file, where the 1W/1R register file may have at least one accumulator. The present invention may include the execution unit of each MAC unit being configured to perform a subset of MAC operations by computing a product of a set of values received from another register file of the processor unit and adding the computed product to the at least one accumulator. The present invention may include each MAC unit being configured to perform the respective subset of MAC operations in a single clock cycle.
    Type: Grant
    Filed: December 5, 2019
    Date of Patent: August 13, 2024
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jentje Leenstra, Andreas Wagner, Jose E. Moreira, Brian W. Thompto
  • Patent number: 12056129
    Abstract: The processing load for joining a plurality of tables by hash join is reduced for a computer system in which the CPU of a node creates a partial bloom filter that manages a first table hash value of a joining key of a row corresponding to a query in an assigned row of a build table. An integrated bloom filter is created from a plurality of partial bloom filters, and a second table hash value of the joining key of the row corresponding to the condition of the query among the rows of a probe table is calculated. The row of the probe table is transmitted to the node containing a row of the build table of the join hash value for that row when the integrated bloom filter includes an identical first table hash value, and an integrated joined table is created and returned to the query request source.
    Type: Grant
    Filed: February 23, 2023
    Date of Patent: August 6, 2024
    Assignee: HITACHI, LTD.
    Inventors: Mayuko Ozawa, Satoru Watanabe, Norifumi Nishikawa, Kazuhiko Mogi
  • Patent number: 12014203
    Abstract: Systems and methods are described for communications across privilege domains within a central processing unit (“CPU”) core. The CPU core can store a kernel context associated with an operating system within the CPU. An application can request access to the CPU, and the CPU can load a user context associated with the application into the CPU. The CPU can execute instructions from the application while both the kernel context and the user context persist in the CPU. Because both contexts are stored on the CPU, the CPU can switch contexts without loading or unloading context data from memory.
    Type: Grant
    Filed: November 23, 2021
    Date of Patent: June 18, 2024
    Assignee: VMware LLC
    Inventors: Jayneel Gandhi, Sujay Yadalam Sudarshan
  • Patent number: 12014360
    Abstract: Systems and methods for gain and loss computation for cryptocurrency transactions.
    Type: Grant
    Filed: August 19, 2019
    Date of Patent: June 18, 2024
    Assignee: Lukka, Inc.
    Inventors: Vadim Shteynberg, Alexander Zakharov
  • Patent number: 11994851
    Abstract: Apparatus for implementing a data processing pipeline for machine condition monitoring and other applications is provided. The apparatus comprises data processing modules communicatively coupled in series, including plug-in modules configured to receive input data, and produce output data, at least some of which is used by at least one downstream improvement system to carry out remedial actions. The apparatus also comprises a data access layer configured to receive data and make it available in a unified data format to downstream data processing modules and the at least one downstream improvement system. The data access layer comprises an enterprise service bus, and a data unification processor to convert the input data to unified data objects and make these accessible to the plug-in modules and the at least one downstream improvement system via the bus.
    Type: Grant
    Filed: November 22, 2019
    Date of Patent: May 28, 2024
    Assignee: Finning International Inc.
    Inventors: Anthony Vincent Blake, Benjamin Rolando Ospino Costa, Claudio Antonio Valenzuela Rodriguez
  • Patent number: 11983141
    Abstract: A system for executing an application on a pool of reconfigurable processors with first and second reconfigurable processors having first and second architectures that are different from each other is presented. The system comprises an archive of configuration files with first and second configuration files for executing the application on the first and second reconfigurable processors, respectively, and a host system that is operatively coupled to the first and second reconfigurable processors. The host system comprises a runtime processor that allocates reconfigurable processors for executing the application and an auto-discovery module that is configured to perform discovery of whether the reconfigurable processors include at least one of the first reconfigurable processors and whether the reconfigurable processors include at least one of the second reconfigurable processors.
    Type: Grant
    Filed: September 9, 2022
    Date of Patent: May 14, 2024
    Assignee: SambaNova Systems, Inc.
    Inventors: Greg Dykema, Maran Wilson, Guoyao Feng, Kuan Zhou, Tianyu Sun, Taylor Lee, Kin Hing Leung, Arnav Goel, Conrad Turlik, Milad Sharif
  • Patent number: 11960946
    Abstract: A message based processor system (1) with a plurality of message based processor system cores (100) is proposed. Cores therein comprise a processor element controller that is configured to receive a message with an indication of a subset processor elements in the core to which it is directed as well as an indication of a target pattern, and to update the state value of the processor elements (Ei) in the subset in accordance with a specification of the target pattern. The processor element controller (PEC) is configurable in an address computation mode selected from a cyclic set of address computation modes, and configured to maintain its computation mode or assume a next address computation mode selected from the cyclic set dependent on a control value of a currently applied pattern element. Therewith a target pattern can efficiently specified.
    Type: Grant
    Filed: December 18, 2020
    Date of Patent: April 16, 2024
    Assignee: Snap Inc.
    Inventors: Amirreza Yousefzadeh, Arash Pourtaherian, Peng Qiao, Orlando Miguel Pires Dos Reis Moreira, Luc Johannes Wilhelmus Waeijen
  • Patent number: 11954539
    Abstract: Disclosed embodiments are directed at systems, methods, and architecture for configuring event hooks in a microservice architecture-based system. The control plane links a plurality of APIs for a microservice architecture application. Each API includes a data plane proxy that serves traffic for the API from the control plane. The control plane receives an event hook including an event, a source, and a handler. The control plane configures a component of the microservice-architecture-based system to run the handler when the event occurs at the source. When the event occurred at the source, the component runs the handler.
    Type: Grant
    Filed: May 11, 2023
    Date of Patent: April 9, 2024
    Assignee: KONG INC.
    Inventors: Lluís Esquerda Gras, Rob Serafini, Shane Connelly
  • Patent number: 11914998
    Abstract: A processor circuit includes an instruction decode unit, an instruction detector, an address generator and a data buffer. The instruction decode unit is configured to decode a first load instruction included in a plurality of load instructions to generate a first decoding result. The instruction detector, coupled to the instruction decode unit, is configured to detect if the load instructions use a same register. The address generator, coupled to the instruction decode unit, is configured to generate a first address requested by the first load instruction according to the first decoding result. The data buffer is coupled to the instruction detector and the address generator. When the instruction detector detects that the load instructions use the same register, the data buffer is configured to store the first address generated from the address generator, and store data requested by the first load instruction according to the first address.
    Type: Grant
    Filed: April 27, 2022
    Date of Patent: February 27, 2024
    Assignee: REALTEK SEMICONDUCTOR CORPORATION
    Inventor: Chia-I Chen
  • Patent number: 11900156
    Abstract: A processor includes a compute fabric and a controller. The compute fabric includes an array of compute nodes and interconnects that configurably connect the compute nodes. The controller is configured to configure at least some of the compute nodes and interconnects in the compute fabric to execute specified code instructions, and to send to the compute fabric multiple threads that each executes the specified code instructions. A compute node among the compute nodes is configured to execute a code instruction for a first thread, and to transfer a result of the code instruction within the fabric, for use as an operand by a second thread, different from the first thread.
    Type: Grant
    Filed: September 9, 2020
    Date of Patent: February 13, 2024
    Assignee: SPEEDATA LTD.
    Inventors: Yoav Etsion, Dani Voitsechov
  • Patent number: 11900113
    Abstract: The present disclosure relates to data flow processing methods and devices. One example method includes obtaining a dependency relationship and an execution sequence of operating a data flow by a plurality of processing units, generating synchronization logic based on the dependency relationship and the execution sequence, and inserting the synchronization logic into an operation pipeline of each of the plurality of processing unit to generate executable code.
    Type: Grant
    Filed: April 12, 2021
    Date of Patent: February 13, 2024
    Assignee: Huawei Technologies Co., Ltd.
    Inventors: Lijuan Hai, Chen Cheng, Christopher Rodrigues, Peng Wu
  • Patent number: 11902136
    Abstract: An example network device includes memory, a communication unit, and processing circuitry coupled to the memory and the communication unit. The processing circuitry is configured to receive first samples of flows from an interface of another network device sampled at a first sampling rate and determine a first parameter based on the first samples. The processing circuitry is configured to receive second samples of flows from the interface sampled at a second sampling rate, wherein the second sampling rate is different than the first sampling rate and determine a second parameter based on the second samples. The processing circuitry is configured to determine a third sampling rate based on the first parameter and the second parameter, control the communication unit to transmit a signal indicative of the third sampling rate to the another network device; and receive third samples of flows from the interface sampled at the third sampling rate.
    Type: Grant
    Filed: May 19, 2022
    Date of Patent: February 13, 2024
    Assignee: Juniper Networks, Inc.
    Inventors: Prasad Miriyala, Suresh Palguna Krishnan, SelvaKumar Sivaraj
  • Patent number: 11868287
    Abstract: The memory sub-systems of the present disclosure discloses a just-in-time (JIT) scheduling system and method. In one embodiment, a system receives a request to perform a memory operation using a hardware resource associated with a memory device. The system identifies a traffic class corresponding to the memory operation. The system determines a number of available quality of service (QoS) credits for the traffic class during a current scheduling time frame. The system determines a number of QoS credits associated with a type of the memory operation. Responsive to determining the number of QoS credits associated with the type of the memory operation is less than the number of available QoS credits, the system submits the memory operation to be processed at a memory device.
    Type: Grant
    Filed: August 20, 2021
    Date of Patent: January 9, 2024
    Assignee: Micron Technology, Inc.
    Inventors: Johnny A Lam, Alex J. Wesenberg, Guanying Wu, Sanjay Subbarao, Chandra Guda
  • Patent number: 11861367
    Abstract: A method and apparatus for controlling pre-fetching in a processor. A processor includes an execution pipeline and an instruction pre-fetch unit. The execution pipeline is configured to execute instructions. The instruction pre-fetch unit is coupled to the execution pipeline. The instruction pre-fetch unit includes instruction storage to store pre-fetched instructions, and pre-fetch control logic. The pre-fetch control logic is configured to fetch instructions from memory and store the fetched instructions in the instruction storage. The pre-fetch control logic is also configured to provide instructions stored in the instruction storage to the execution pipeline for execution. The pre-fetch control logic is further configured set a maximum number of instruction words to be pre-fetched for execution subsequent to execution of an instruction currently being executed in the execution pipeline.
    Type: Grant
    Filed: December 14, 2021
    Date of Patent: January 2, 2024
    Assignee: TEXAS INSTRUMENTS INCORPORATED
    Inventors: Christian Wiencke, Johann Zipperer
  • Patent number: 11818050
    Abstract: A traffic shaping circuit regulates packets transferred by a transmission resource into a network (e.g., a network on a chip) on behalf of a client. The packet transfers are selectively enabled or disabled based on a current budget value. The budget value is modified based on a packet-transfer cost in response to transferring a packet into the network. The rate of packet transfers into the network is monitored. A cost-adjustment signal is generated based on the rate of packet transfers. The packet-transfer cost is modified in response to the cost-adjustment signal for accounting for a subsequent-packet transfer into the network. The cost-adjustment signal may indicate an increase or decrease of the packet-transfer cost and/or a budget limit, both of which are read from a cost table comprising records ordered based on respective packet-transfer cost values. The packet-transfer cost and/or a budget limit are configurable.
    Type: Grant
    Filed: May 28, 2021
    Date of Patent: November 14, 2023
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Thomas Frederick Detwiler, Thomas Abner Basnight, Suraj Balasubramanian
  • Patent number: 11816486
    Abstract: A hardware multithreaded processor including a register file, a thread controller, and aliasing circuitry. The thread controller is configured to assign each of multiple hardware processing threads to a corresponding one of multiple register block sets in which each register block set includes at least two of multiple register blocks and in which each register block includes at least two registers. The aliasing circuitry is programmable to redirect a reference provided by a first hardware processing thread to a register of a register block assigned to a second hardware processing thread. The reference may be a register number in an instruction issued by the first hardware processing thread. The register number is converted by the aliasing circuitry to a register file address locating a register of the register block assigned to the second hardware processing thread. The aliasing circuitry may include a programmable register for one or more threads.
    Type: Grant
    Filed: January 18, 2022
    Date of Patent: November 14, 2023
    Assignee: NXP B.V.
    Inventor: Michael Andrew Fischer
  • Patent number: 11809872
    Abstract: Representative apparatus, method, and system embodiments are disclosed for a self-scheduling processor which also provides additional functionality. Representative embodiments include a self-scheduling processor, comprising: a processor core adapted to execute a received instruction; and a core control circuit adapted to automatically schedule an instruction for execution by the processor core in response to a received work descriptor data packet. In another embodiment, the core control circuit is also adapted to schedule a fiber create instruction for execution by the processor core, to reserve a predetermined amount of memory space in a thread control memory to store return arguments, and to generate one or more work descriptor data packets to another processor or hybrid threading fabric circuit for execution of a corresponding plurality of execution threads. Event processing, data path management, system calls, memory requests, and other new instructions are also disclosed.
    Type: Grant
    Filed: July 25, 2021
    Date of Patent: November 7, 2023
    Assignee: Micron Technology, Inc.
    Inventor: Tony M. Brewer
  • Patent number: 11809369
    Abstract: Representative apparatus, method, and system embodiments are disclosed for a self-scheduling processor which also provides additional functionality. Representative embodiments include a self-scheduling processor, comprising: a processor core adapted to execute a received instruction; and a core control circuit adapted to automatically schedule an instruction for execution by the processor core in response to a received work descriptor data packet. In another embodiment, the core control circuit is also adapted to schedule a fiber create instruction for execution by the processor core, to reserve a predetermined amount of memory space in a thread control memory to store return arguments, and to generate one or more work descriptor data packets to another processor or hybrid threading fabric circuit for execution of a corresponding plurality of execution threads. Event processing, data path management, system calls, memory requests, and other new instructions are also disclosed.
    Type: Grant
    Filed: August 3, 2021
    Date of Patent: November 7, 2023
    Assignee: Micron Technology, Inc.
    Inventor: Tony M. Brewer
  • Patent number: 11809368
    Abstract: Representative apparatus, method, and system embodiments are disclosed for a self-scheduling processor which also provides additional functionality. Representative embodiments include a self-scheduling processor, comprising: a processor core adapted to execute a received instruction; and a core control circuit adapted to automatically schedule an instruction for execution by the processor core in response to a received work descriptor data packet. In another embodiment, the core control circuit is also adapted to schedule a fiber create instruction for execution by the processor core, to reserve a predetermined amount of memory space in a thread control memory to store return arguments, and to generate one or more work descriptor data packets to another processor or hybrid threading fabric circuit for execution of a corresponding plurality of execution threads. Event processing, data path management, system calls, memory requests, and other new instructions are also disclosed.
    Type: Grant
    Filed: July 31, 2021
    Date of Patent: November 7, 2023
    Assignee: Micron Technology, Inc.
    Inventor: Tony M. Brewer
  • Patent number: 11803638
    Abstract: In order to mitigate side channel attacks that exploit speculative store-to-load forwarding, a store dependence predictor is used to prevent store-to-load forwarding if the load and store instructions do not have a matching translation context (TC). In one design, a store queue (SQ) stores the TC—a function of the privilege mode (PM), address space identifier (ASID), and/or virtual machine identifier (VMID)—of each store and conditions store-to-load forwarding on matching store and load TCs. In another design, a memory dependence predictor (MDP) disambiguates predictions of store-to-load forwarding based on the load instruction's TC. In each design, the MDP or SQ does not predict or allow store-to-load forwarding for loads whose addresses, but not their TCs, match an MDP entry.
    Type: Grant
    Filed: February 25, 2021
    Date of Patent: October 31, 2023
    Assignee: Ventana Micro Systems Inc.
    Inventor: John G. Favor
  • Patent number: 11789657
    Abstract: An intercept engine is installed on a computer and includes an intercept filter adapted to intercept selected commands transmitted between a file system and a storage device. The intercept engine also includes an intercept manager adapted to transmit to the intercept filter one or more primitives, wherein each primitive includes device information specifying a device, wherein a command directed to the specified device is to be intercepted, command type information specifying a type of command to be intercepted, and follow-up action information specifying an action to be performed after the command has been intercepted. A primitive may also include default action information specifying an action to be performed with respect to the command if a communication between the intercept filter and the intercept manager is interrupted. The intercept engine intercepts commands transmitted between the file system and the storage device in accordance with the one or more primitives.
    Type: Grant
    Filed: October 22, 2021
    Date of Patent: October 17, 2023
    Assignee: CIRRUS DATA SOLUTIONS INC.
    Inventors: Wai T. Lam, Sammy Tam, Li-Hsiang Cheng, Tomasz Jaworski
  • Patent number: 11775440
    Abstract: Indirect prefetch circuitry initiates a producer prefetch requesting return of producer data having a producer address and at least one consumer prefetch to request prefetching of consumer data having a consumer address derived from the producer data. A producer prefetch filter table stores producer filter entries indicative of previous producer addresses of previous producer prefetches. Initiation of a requested producer prefetch for producer data having a requested producer address is suppressed when a lookup of the producer prefetch filter table determines that the requested producer address hits against a producer filter entry of the table. The lookup of the producer prefetch filter table for the requested producer address depends on a subset of bits of the requested producer address including at least one bit which distinguishes different chunks of data within a same cache line.
    Type: Grant
    Filed: January 20, 2022
    Date of Patent: October 3, 2023
    Assignee: Arm Limited
    Inventors: Alexander Cole Shulyak, Balaji Vijayan, Karthik Sundaram, Yasuo Ishii, Joseph Michael Pusdesris
  • Patent number: 11775446
    Abstract: Methods, apparatus, systems and articles of manufacture to facilitate atomic compare and swap in cache for a coherent level 1 data cache system are disclosed. An example system includes a cache storage; a cache controller coupled to the cache storage wherein the cache controller is operable to: receive a memory operation that specifies a key, a memory address, and a first set of data; retrieve a second set of data corresponding to the memory address; compare the second set of data to the key; based on the second set of data corresponding to the key, cause the first set of data to be stored at the memory address; and based on the second set of data not corresponding to the key, complete the memory operation without causing the first set of data to be stored at the memory address.
    Type: Grant
    Filed: September 13, 2021
    Date of Patent: October 3, 2023
    Assignee: Texas Instruments Incorporated
    Inventors: Naveen Bhoria, Timothy David Anderson, Pete Michael Hippleheuser
  • Patent number: 11755327
    Abstract: Delivering immediate values by using program counter (PC)-relative load instructions to fetch literal data in processor-based devices is disclosed. In this regard, a processing element (PE) of a processor-based device provides an execution pipeline circuit that comprises an instruction processing portion and a data access portion. Using a literal data access logic circuit, the PE detects a PC-relative load instruction within a fetch window that includes multiple fetched instructions. The PE determines that the PC-relative load instruction can be serviced using literal data that is available to the instruction processing portion of the execution pipeline circuit (e.g., located within the fetch window containing the PC-relative load instruction, or stored in a literal pool buffer), The PE then retrieves the literal data within the instruction processing portion of the execution pipeline circuit, and executes the PC-relative load instruction using the literal data.
    Type: Grant
    Filed: March 2, 2020
    Date of Patent: September 12, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Melinda Joyce Brown, Michael Scott Mcilvaine
  • Patent number: 11748101
    Abstract: In response to a single-copy-atomic load/store instruction for requesting an atomic transfer of a target block of data between the memory system and the registers, where the target block has a given size greater than a maximum data size supported for a single load/store micro-operation by a load/store data path, instruction decoding circuitry maps the single-copy-atomic load/store instruction to two or more mapped load/store micro-operations each for requesting transfer of a respective portion of the target block of data. In response to the mapped load/store micro-operations, load/store circuitry triggers issuing of a shared memory access request to the memory system to request the atomic transfer of the target block of data of said given size to or from the memory system, and triggers separate transfers of respective portions of the target block of data over the load/store data path.
    Type: Grant
    Filed: July 13, 2021
    Date of Patent: September 5, 2023
    Assignee: Arm Limited
    Inventors: Abhishek Raja, Albin Pierrick Tonnerre
  • Patent number: 11741010
    Abstract: A method of programming data to a storage device including a nonvolatile memory device includes receiving first to third barrier commands from a host, receiving first to third data corresponding to the first to third barrier commands from the host, merging the first and second barrier commands and programming the first and second data to the nonvolatile memory device sequentially based on an order of the first and second barrier commands, verifying program completion of both the first and second data, mapping in mapping information of the first and second data when the programming of the first and second data is completed, and mapping out the information of both the first and second data when the programming of at least one of the first and second data is not complete, and programming the third data to the nonvolatile memory device after the mapping in or the mapping out.
    Type: Grant
    Filed: January 2, 2019
    Date of Patent: August 29, 2023
    Inventor: JooYoung Hwang
  • Patent number: 11741020
    Abstract: Methods, apparatus, systems and articles of manufacture are disclosed to facilitate fully pipelined read-modify-write support in level 1 data cache using store queue and data forwarding. An example apparatus includes a first storage, a second storage, a store queue coupled to the first storage and the second storage, the store queue operable to receive a first memory operation specifying a first set of data, process the first memory operation for storing the first set of data in at least one of the first storage and the second storage, receive a second memory operation, and prior to storing the first set of data in the at least one of the first storage and the second storage, feedback the first set of data for use in the second memory operation.
    Type: Grant
    Filed: May 22, 2020
    Date of Patent: August 29, 2023
    Assignee: Texas Instruments Incorporated
    Inventors: Naveen Bhoria, Timothy David Anderson, Pete Michael Hippleheuser
  • Patent number: 11726791
    Abstract: Examples of the present disclosure provide apparatuses and methods related to generating and executing a control flow. An example apparatus can include a first device configured to generate control flow instructions, and a second device including an array of memory cells, an execution unit to execute the control flow instructions, and a controller configured to control an execution of the control flow instructions on data stored in the array.
    Type: Grant
    Filed: May 12, 2022
    Date of Patent: August 15, 2023
    Assignee: Micron Technology, Inc.
    Inventors: Kyle B. Wheeler, Richard C. Murphy, Troy A. Manning, Dean A. Klein
  • Patent number: 11714644
    Abstract: A predicated vector load micro-operation specifies a load target address, a destination vector register for which active vector elements of the destination vector register are to be loaded with data associated with addresses identified based on the load target address, and a predicate operand indicative of whether each vector element of the destination vector register is active or inactive.
    Type: Grant
    Filed: August 27, 2021
    Date of Patent: August 1, 2023
    Assignee: Arm Limited
    Inventor: Abhishek Raja
  • Patent number: 11704041
    Abstract: An integrated circuit for allowing a band of an external memory to be effectively used in processing a layer algorithm is disclosed. One aspect of the present disclosure relates to an integrated circuit including a first arithmetic part including a first arithmetic unit and a first memory, wherein the first arithmetic unit performs an operation and the first memory stores data for use in the first arithmetic unit and a first data transfer control unit that controls transfer of data between the first memory and a second memory of a second arithmetic part including a second arithmetic unit, wherein the second arithmetic part communicates with an external memory via the first arithmetic part.
    Type: Grant
    Filed: April 1, 2020
    Date of Patent: July 18, 2023
    Assignee: Preferred Networks, Inc.
    Inventors: Tatsuya Kato, Ken Namura
  • Patent number: 11693665
    Abstract: A data processing apparatus and method of operating such is disclosed. Issue circuitry buffers operations prior to execution until operands are available in a set of registers. A first and a second load operation are identified in the issue circuitry, when both are dependent on a common operand, and when the common operand is available in the set of registers. Load circuitry has a first address generation unit to generate a first address for the first load operation and a second address generation unit to generate a second address for the second load operation. An address comparison unit compares the first address and the second address. The load circuitry is arranged to cause a merged lookup to be performed in local temporary storage, when the address comparison unit determines that the first and the second address differ by less than a predetermined address range characteristic of the local temporary storage.
    Type: Grant
    Filed: September 28, 2020
    Date of Patent: July 4, 2023
    Assignee: Arm Limited
    Inventors: Mbou Eyole, Michiel Willem Van Tol
  • Patent number: 11663014
    Abstract: A data processing apparatus is provided that comprises fetch circuitry to fetch an instruction stream comprising a plurality of instructions, including a status updating instruction, from storage circuitry. Status storage circuitry stores a status value. Execution circuitry executes the instructions, wherein at least some of the instructions are executed in an order other than in the instruction stream. For the status updating instruction, the execution circuitry is adapted to update the status value based on execution of the status updating instruction. Flush circuitry flushes, when the status storage circuitry is updated, following instructions that appear after the status updating instruction in the instruction stream.
    Type: Grant
    Filed: August 26, 2019
    Date of Patent: May 30, 2023
    Assignee: ARM LIMITED
    Inventors: Abhishek Raja, Rakesh Shaji Lal, Michael Filippo, Glen Andrew Harris, Vasu Kudaravalli, Huzefa Moiz Sanjeliwala, Jason Setter
  • Patent number: 11636544
    Abstract: Orders received by an electronic trading system are processed in batches based on the instrument to which an order relates. An incoming order is assigned to a queue of a queue set that makes up the batch according to a random process. Where orders are received from related trading parties, they are assigned to the same queue set according to their time of receipt. The batch has a random duration within defined minimum and maximum durations and at the end of the batch, the orders held in the queues are transferred to a matching thread of the trading system sequentially with one order being removed from each queue and a number of passes of the queues completed until orders have been removed.
    Type: Grant
    Filed: February 28, 2022
    Date of Patent: April 25, 2023
    Assignee: NEX Services North America LLC
    Inventors: Michael Merold, John E. Schoen
  • Patent number: 11630607
    Abstract: Memory devices and a memory controller that controls such memory devices. Multiple memory devices receive commands and addresses on a command/address (C/A) bus that is relayed point-to-point by each memory device. Data is received and sent from these devices to/from a memory controller in a point-to-point configuration by adjusting the width of each individual data bus coupled between the individual memory devices and the memory controller. Along with the C/A bus are clock signals that are regenerated by each memory device and relayed. The memory controller and memory devices may be packaged on a single substrate using package-on-package technology. Using package-on-package technology allows the relayed C/A signals to connect from memory device to memory device using wire bonding. Wirebond connections provide a short, high-performance signaling environment for the chip-to-chip relaying of the C/A signals and clocks from one memory device to the next in the daisy-chain.
    Type: Grant
    Filed: November 8, 2021
    Date of Patent: April 18, 2023
    Assignee: Rambus Inc.
    Inventor: Frederick Ware
  • Patent number: 11573726
    Abstract: A device may include a plurality of data processing engines. Each of the data processing engines may include a memory pool having a plurality of memory banks, a plurality of cores each coupled to the memory pool and configured to access the plurality of memory banks, a memory mapped switch coupled to the memory pool and a memory mapped switch of at least one neighboring data processing engine, and a stream switch coupled to each of the plurality of cores and to a stream switch of the at least one neighboring data processing engine.
    Type: Grant
    Filed: November 13, 2020
    Date of Patent: February 7, 2023
    Assignee: Xilinx, Inc.
    Inventors: Juan J. Noguera Serra, Goran H K Bilski, Jan Langer, Baris Ozgul, Richard L. Walke, Ralph D. Wittig, Kornelis A. Vissers, Christopher H. Dick, Philip B. James-Roxby