Instruction Prefetch, E.g., Instruction Buffer (epo) Patents (Class 712/E9.055)
-
Patent number: 12260220Abstract: Accelerating fetch target queue (FTQ) processing is disclosed herein. In some aspects, a processor comprises an FTQ and an FTQ acceleration cache (FAC), and is configured to generate a FAC entry corresponding to an FTQ entry of a plurality of FTQ entries of the FTQ, wherein the FTQ entry comprises a fetch address bundle comprising a plurality of sequential virtual addresses (VAs), and the FAC entry comprises metadata for the FTQ entry. The processor is further configured to receive, using the FTQ, a request to access the FTQ entry. The processor is also configured to, responsive to receiving the request to access the FTQ entry, locate, using the FAC, the FAC entry corresponding to the FTQ entry among a plurality of FAC entries of the FAC. The processor is additionally configured to perform accelerated processing of the request to access the FTQ entry using the metadata of the FAC entry.Type: GrantFiled: December 16, 2022Date of Patent: March 25, 2025Assignee: Microsoft Technology Licensing, LLCInventors: Saransh Jain, Rami Mohammad Al Sheikh, Daren Eugene Streett, Michael Scott McIlvaine, Somasundaram Arunachalam
-
Patent number: 12248700Abstract: A storage system includes a host and a storage device. The host includes a host processor and a host memory buffer, wherein the host processor includes a CPU core controlling operation of the host and a cache dedicated for use by the CPU core. The host memory buffer includes a submission queue and a completion queue. The storage device is connected to the host through a link and communicates with the host using a transaction layer packet (TLP). The storage device includes a nonvolatile memory device (NVM) and a storage controller, wherein the host writes a nonvolatile memory express (NVMe) command indicating a destination to the submission queue, and the storage controller reads data from the NVM, directly accesses the cache in response to destination information associated with the destination, and stores the read data in the cache.Type: GrantFiled: June 28, 2022Date of Patent: March 11, 2025Assignee: Samsung Electronics Co., Ltd.Inventors: Hyeokjun Choe, Jeongho Lee, Younggeon Yoo, Wonseb Jeong
-
Patent number: 12248399Abstract: Techniques are disclosed relating to multi-block fetches for cache misses. In some embodiments, cache tag circuitry maintains a tag value that is shared by multiple cache blocks. In response to a miss, the cache may initiate a fetch request to a next level cache or memory. Aggregation circuitry may aggregate multiple fetch requests for cache blocks that share the tag value and fetch circuitry may initiate a single multi-block fetch operation to the next level cache or memory that returns cache blocks for the aggregated multiple fetch requests. In various embodiments, disclosed techniques may improve performance (e.g., by reducing fetch bus transactions), reduce power consumption, or both, relative to traditional techniques.Type: GrantFiled: May 19, 2021Date of Patent: March 11, 2025Assignee: Apple Inc.Inventors: Winnie W. Yeung, Cheng Li
-
Patent number: 12235765Abstract: Various embodiments include techniques for storing data in a repurposed cache memory in a computing system. The disclosed techniques include a system level cache controller that processes a memory operation for a processing unit. The controller and the processing unit communicate over a network-on-chip. To process the memory operation, the controller selects a repurposed cache memory from a pool of active cache memories associated with processing units that are inoperable and/or are in a low-power state. To select the repurposed cache memory, the controller generates a candidate vector that identifies the position of the requesting processing unit relative to the controller. The candidate vector enables the controller in selecting a repurposed cache memory that is, for example, on the shortest path between the processing unit and the controller. These techniques result in a lower latency, and improved memory performance, relative to prior conventional techniques.Type: GrantFiled: May 23, 2023Date of Patent: February 25, 2025Assignee: NVIDIA CORPORATIONInventors: Ariel Szapiro, Anurag Chaudhary, Mark Rosenbluth, Mayank Baunthiyal
-
Patent number: 12223100Abstract: A real time, on-the-fly data encryption system is operable to encrypt and decrypt data flow between a secure processor and an unsecure external memory system. Multiple memory segments are supported, each with its own separate encryption capability, or no encryption at all. Data integrity is ensured by hardware protection from code attempting to access data across memory segment boundaries. Protection is also provided against dictionary attacks by monitoring multiple access attempts to the same memory location.Type: GrantFiled: October 4, 2023Date of Patent: February 11, 2025Assignee: TEXAS INSTRUMENTS INCORPORATEDInventors: Amritpal S. Mundra, William C. Wallace
-
Patent number: 12217060Abstract: Techniques are disclosed that relate to executing pairs of instructions. A processor may include fusion detector circuitry configured to detect a pair of fetched instructions and fuse the pair of fetched instructions into a fused instruction operation, and execution circuitry coupled to the fusion detector circuitry and configured to execute the fused instruction operation. In some embodiments the pair of instructions is executable to generate a remainder of a division operation. In some embodiments the pair of instructions is executable to compare two operands and perform a write operation based on the comparison. In some embodiments the pair of instructions is executable to perform an operation and apply a mask bit sequence to the result. The fusion detector circuitry may also be configured to obtain first and second portions of a constant value from first and second instructions and store the first and second portions in a destination register.Type: GrantFiled: February 28, 2023Date of Patent: February 4, 2025Assignee: Apple Inc.Inventors: Francesco Spadini, Skanda K. Srinivasa, Reena Panda, Brian T. Mokrzycki, Haoyan Jia, Zhaoxiang Jin
-
Patent number: 12204898Abstract: A processor of an aspect includes a decode unit to decode a matrix multiplication instruction. The matrix multiplication instruction is to indicate a first memory location of a first source matrix, is to indicate a second memory location of a second source matrix, and is to indicate a third memory location where a result matrix is to be stored. The processor also includes an execution unit coupled with the decode unit. The execution unit, in response to the matrix multiplication instruction, is to multiply a portion of the first and second source matrices prior to an interruption, and store a completion progress indicator in response to the interruption. The completion progress indicator to indicate an amount of progress in multiplying the first and second source matrices, and storing corresponding result data to the third memory location, that is to have been completed prior to the interruption.Type: GrantFiled: August 30, 2023Date of Patent: January 21, 2025Assignee: Intel CorporationInventors: Edward T. Grochowski, Asit K. Mishra, Robert Valentine, Mark J. Charney, Simon C. Steely, Jr.
-
Patent number: 12206878Abstract: A system on a chip may include a codec module configured to receive an image including a plurality of first pixel data and output a plurality of second pixel data through a system bus. The codec module comprises at least one (M+N) bit logic circuit including M bit logic and N bit logic. The codec module is configured to operate in a first mode where the (M+N) bit logic circuit performs a dithering operation on the first pixel data of (M+N) bits and generates the second pixel data including at least M bits. The codec module is configured to operate in a second mode where the M-bit logic selectively operates and outputs the second pixel data of M bits.Type: GrantFiled: August 29, 2022Date of Patent: January 21, 2025Assignee: SAMSUNG ELECTRONICS CO., LTD.Inventors: Kyung-ah Jeong, Sun-young Shin, Jin-hong Oh
-
Patent number: 12204430Abstract: Embodiments are disclosed for monitoring processor performance, including cost of events. In an embodiment, a processor includes a first counter, a second counter, a handler circuit, and an enable circuit. The first counter is to count occurrences of an event in the processor and to overflow upon the count of occurrences reaching a specified value. The second counter to measure a performance cost of the event. The handler circuit to generate and an event sampling record. The record is to include at least one value reflecting the performance cost. The enable circuit is to enable the handler circuit to generate the record.Type: GrantFiled: September 26, 2020Date of Patent: January 21, 2025Assignee: Intel CorporationInventor: Ahmad Yasin
-
Patent number: 12182003Abstract: An apparatus includes a processor circuit that includes a memory circuit, one or more processor cores, and a debug circuit. The debug circuit may be configured, in response to activation of a trace mode to record information indicative of instructions executing on the one or more processor cores, to write a trace data stream to the memory circuit that includes trace data collected on the instructions executing on the one or more processor cores. In response to a particular instruction within one of the processor cores specifying a write of a data value to an architecturally visible trace register, the debug circuit may be further configured to output the data value to the trace data stream as part of executing the particular instruction.Type: GrantFiled: January 10, 2022Date of Patent: December 31, 2024Assignee: Apple Inc.Inventors: Jaidev P. Patwardhan, Matthias Knoth, Shekhar S. Srikantaiah, Prakhar Malhotra, Matthew C. Widmann, Dmitriy B. Solomonov, Constantin Pistol
-
Patent number: 12182016Abstract: A memory circuit may include both an array circuit and multiple register circuits, where the power to retrieve data from one of the register circuits may be less than the power to retrieve data from the array circuit. The array circuit may store multiple data words, and the multiple register circuits may be configured to store a subset of the multiple data words. During a first cycle, a read command and an address may be received. In response to a determination that the address corresponds to a given data word included in the subset of the multiple data words, the array circuit may be de-activated in a second cycle subsequent to the first cycle and an output signal may be generated by selecting data retrieved from a particular register circuit of the multiple register circuits in which the given data word may be stored.Type: GrantFiled: November 7, 2022Date of Patent: December 31, 2024Assignee: Cadence Design Systems, Inc.Inventors: Robert Golla, Matthew Smittle
-
Patent number: 12175116Abstract: In one implementation a vector processor gather/scatter apparatus comprises a plurality of vector ports, and a random access memory, where the plurality of vector ports are in communication with the random access memory, and where one or more of the plurality of vector ports uses one or more of an address register and one or more of a stride register in communication with the random access memory to allow the gather/scatter of random access memory contents.Type: GrantFiled: February 11, 2022Date of Patent: December 24, 2024Assignee: Microchip Technology Inc.Inventor: Christopher I. W. Norrie
-
Patent number: 12164407Abstract: A system is configured to track and store system and event data for various computing devices. The system is configured to associate the various computing devices with profiles based at least in part on characteristics of the computing devices. The system is further configured to compare performance data and/or performance metrics for particular computing devices having a particular profile against all other devices that share the particular profile. The system then displays this comparison to a user of the particular computing device, substantially automatically diagnoses an issue with the particular computing device based on the performance and system event data, and/or enables the user to diagnose the problem based on the performance and system event data.Type: GrantFiled: June 1, 2023Date of Patent: December 10, 2024Assignee: ASSURANT, INC.Inventors: Dustin Brewer, Stuart Saunders, Cameron Hurst
-
Patent number: 12141010Abstract: An information processing apparatus according to an embodiment of the present disclosure includes: a processor including a first data processor that is configured to perform a piece of first data processing on the basis of a piece of first data to thereby generate a piece of second data; a selector that selects one piece of data from among a plurality of pieces of data including the piece of first data and the piece of second data; an arithmetic processor that is configured to selectively perform one of a plurality of pieces of arithmetic processing, and performs a piece of arithmetic processing selected from among the plurality of pieces of arithmetic processing on the basis of the piece of data selected by the selector; and a supply section that controls supply of electric power to the first data processor in accordance with the piece of data selected by the selector from among the plurality of pieces of data.Type: GrantFiled: July 19, 2021Date of Patent: November 12, 2024Assignee: SONY SEMICONDUCTOR SOLUTIONS CORPORATIONInventor: Goshi Watanabe
-
Patent number: 12135680Abstract: A processor comprising a control unit and a plurality of processing units interacting according to an operating architecture imposed dynamically by the control unit from among at least two of the following architectures: a single instruction multiple data (SIMD) stream architecture, a multiple instruction single data (MISD) stream architecture, and a multiple instruction multiple data (MIMD) stream architecture. The operating architecture is imposed dynamically by the control unit according to: configuration functions included in a machine code, and/or data to be processed and current processing instructions received as input of the processor.Type: GrantFiled: November 27, 2018Date of Patent: November 5, 2024Assignee: VSORAInventors: Khaled Maalej, Trung Dung Nguyen, Julien Schmitt, Pierre-Emmanuel Bernard
-
Patent number: 12136029Abstract: An integrated circuit chip apparatus and a processing method performed by an integrated circuit chip apparatus are disclosed. The disclosed integrated circuit chip apparatus and processing method are used for executing a multiplication operation, a convolution operation, or a training operation of a neural network. The present technical solution has the advantages of a reduced computational cost and low power consumption.Type: GrantFiled: December 20, 2022Date of Patent: November 5, 2024Assignee: Cambricon Technologies Corporation LimitedInventors: Shaoli Liu, Xinkai Song, Bingrui Wang, Yao Zhang, Shuai Hu
-
Patent number: 12079634Abstract: A technique for processing qubits in a quantum computing device is provided. The technique includes determining that, in a first cycle, a first quantum processing region is to perform a first quantum operation that does not use a qubit that is stored in the first quantum processing region, identifying a second quantum processing region that is to perform a second quantum operation at a second cycle that is later than the first cycle, wherein the second quantum operation uses the qubit, determining that between the first cycle and the second cycle, no quantum operations are performed in the second quantum processing region, and moving the qubit from the first quantum processing region to the second quantum processing region.Type: GrantFiled: February 18, 2020Date of Patent: September 3, 2024Assignee: Advanced Micro Devices, Inc.Inventors: Onur Kayiran, Jieming Yin, Yasuko Eckert
-
Patent number: 12067284Abstract: A system and related method, including storage circuitry and a control circuitry, which while executing a storage device driver, is to receive at least one instruction of a stream of instructions for the storage device. The control circuitry determines that a hardware buffer of the storage device is storing less than two instructions. In response to the determination that the hardware buffer of the storage device is storing less than two instructions, the control circuitry accesses data associated with an address of the memory of the storage device, wherein the address is predicted based on analysis of the stream of instructions and causes to be stored the data in a buffer of a plurality of buffers. The control circuitry executes an instruction of the stream of instructions using at least the data stored in the buffer.Type: GrantFiled: December 29, 2022Date of Patent: August 20, 2024Assignee: SK Hynix NAND Product Solutions Corp.Inventors: Arun Athreya, Mariusz Dolny, Bartosz Kot, Michal Mamczyński, Shivashekar Muralishankar, Shankar Natarajan, Yihua Zhang
-
Patent number: 12050915Abstract: In an embodiment, a processor includes a fetch circuit to fetch instructions, the instructions including a code prefetch instruction; a decode circuit to decode the code prefetch instruction and provide the decoded code prefetch instruction to a memory circuit, the memory circuit to execute the decoded code prefetch instruction to prefetch a first set of code blocks into a first cache and to prefetch a second set of code blocks into a second cache. Other embodiments are described and claimed.Type: GrantFiled: December 22, 2020Date of Patent: July 30, 2024Assignee: Intel CorporationInventors: Wim Heirman, Stijn Eyerman, Ibrahim Hur
-
Patent number: 12050914Abstract: A stream of data is accessed from a memory system using a stream of addresses generated in a first mode of operating a streaming engine in response to executing a first stream instruction. A block cache management operation is performed on a cache in the memory using a block of addresses generated in a second mode of operating the streaming engine in response to executing a second stream instruction.Type: GrantFiled: September 13, 2021Date of Patent: July 30, 2024Assignee: Texas Instruments IncorporatedInventors: Joseph Raymond Michael Zbiciak, Timothy David Anderson, Jonathan (Son) Hung Tran, Kai Chirca, Daniel Wu, Abhijeet Ashok Chachad, David M. Thompson
-
Patent number: 12045194Abstract: A processor comprising a control unit and a plurality of processing units interacting according to an operating architecture imposed dynamically by the control unit from among at least two of the following architectures: a single instruction multiple data (SIMD) stream architecture, a multiple instruction single data (MISD) stream architecture, and a multiple instruction multiple data (MIMD) stream architecture. The operating architecture is imposed dynamically by the control unit according to: configuration functions included in a machine code, and/or data to be processed and current processing instructions received as input of the processor.Type: GrantFiled: November 27, 2018Date of Patent: July 23, 2024Assignee: VSORAInventors: Khaled Maalej, Trung Dung Nguyen, Julien Schmitt, Pierre-Emmanuel Bernard
-
Patent number: 12008371Abstract: Systems, apparatuses, and methods for implementing as part of a processor pipeline a reprogrammable execution unit capable of executing specialized instructions are disclosed. A processor includes one or more reprogrammable execution units which can be programmed to execute different types of customized instructions. When the processor loads a program for execution, the processor loads a bitfile associated with the program. The processor programs a reprogrammable execution unit with the bitfile so that the reprogrammable execution unit is capable of executing specialized instructions associated with the program. During execution, a dispatch unit dispatches the specialized instructions to the reprogrammable execution unit for execution.Type: GrantFiled: August 12, 2022Date of Patent: June 11, 2024Assignee: Advanced Micro Devices, Inc.Inventor: Andrew G. Kegel
-
Patent number: 11921643Abstract: A processor is provided that includes a first multiplication unit in a first data path of the processor, the first multiplication unit configured to perform single issue multiply instructions, and a second multiplication unit in the first data path, the second multiplication unit configured to perform single issue multiply instructions, wherein the first multiplication unit and the second multiplication unit are configured to execute respective single issue multiply instructions in parallel.Type: GrantFiled: March 9, 2022Date of Patent: March 5, 2024Assignee: Texas Instruments IncorporatedInventors: Mujibur Rahman, Timothy David Anderson, Soujanya Narnur
-
Patent number: 11900120Abstract: Systems and methods of selecting a collection of compatible issue-ready instructions for parallel execution by functional units in a superscalar processor in a single clock cycle. All possible instructions (opcodes) to be executed by the functional units are pre-arranged into several scenarios based on potential resource conflicts among the instructions. Each scenario includes multiple groups of predefined instructions. During operation, concurrently for all the groups, an issue-ready instruction is identified with reference to each group based on group-specific selection policies. Further, based on the identified instructions, predefined policies are applied to select one or more scenarios and select among the picks of the selected scenarios. As a result, the output instructions of the selected scenarios are issued for parallel execution by the functional units.Type: GrantFiled: March 24, 2022Date of Patent: February 13, 2024Assignee: Marvell Asia Pte, Ltd.Inventor: David Carlson
-
Patent number: 11868469Abstract: A microprocessor that mitigates side channel attacks includes a front end that processes instructions in program order and a back end that performs speculative execution of instructions out of program order in a superscalar fashion. Producing execution units produce architectural register results during execution of instructions. Consuming execution units consume the produced architectural register results during execution of instructions. The producing and consuming execution units may be the same or different execution units. Control logic detects that, during execution by a producing execution unit, an architectural register result producing instruction causes a need for an architectural exception and consequent flush of all instructions younger in program order than the producing instruction and prevents all instructions within the back end that are dependent upon the producing instruction from consuming the architectural register result produced by the producing instruction.Type: GrantFiled: March 17, 2021Date of Patent: January 9, 2024Assignee: Ventana Micro Systems Inc.Inventors: John G. Favor, Srivatsan Srinivasan
-
Patent number: 11861190Abstract: Memory blocks are allocated for a microcontroller having one memory subsystem storing instruction information, and a separate memory subsystem storing data information. At design time, an address map is created implementing configurations of different ways of allocating instruction information and data information between memory blocks. At runtime, a configuration signal is received, and a particular memory block configuration for storing instruction information and data information is determined. An incoming instruction signal received from a dedicated microcontroller port, is communicated according to the configuration signal and the address map to a connection point (e.g., pin, fuse, register). Via that connection point, the instruction signal is routed to a memory block designated exclusively for instructions.Type: GrantFiled: April 8, 2021Date of Patent: January 2, 2024Assignee: Marvell Asia Pte, Ltd.Inventors: Arash Farhoodfar, Whay Lee
-
Patent number: 11847457Abstract: A master processor is configured to execute a first thread and a second thread designated to run a program in sequence. A slave processor is configured to execute a third thread to run the program in sequence. An instruction fetch compare engine is provided. The first thread initiates a first thread instruction fetch for the program and stored in an instruction fetch storage. Retrieved data associated with the fetched first thread instruction is stored in a retrieved data storage. The second thread initiates a second thread instruction fetch for the program. The instruction fetch compare logic compares the second thread instruction fetch for the program with the first thread instruction fetch stored in the instruction fetch storage for a match. When there is a match, the retrieved data associated with the fetched first thread instruction is presented from the retrieved data storage, in response to the second thread instruction fetch.Type: GrantFiled: May 31, 2022Date of Patent: December 19, 2023Assignee: Ceremorphic, Inc.Inventors: Heonchul Park, Sri Hari Nemani, Patel Urvishkumar Jayrambhai, Dhruv Maheshkumar Patel
-
Patent number: 11809558Abstract: A method of packet attribute confirmation includes receiving, at a command processor of a parallel processor, a command packet including a received packet attribute, such as a packet size, of the command packet. The command processor compares the received packet attribute of the command packet relative to an expected packet attribute of the command packet. The command processor passes one or more commands to a prefetch parser such that a summed total size of the one or more commands is equal to the received packet size of the command packet. The command processor passes, based at least on determining a match between the received packet size and the expected packet size, the received command packet to the prefetch parser. Otherwise, the command processor passes, based at least on determining a mismatch between the received packet size and the expected packet size, one or more no-operation instructions to the prefetch parser.Type: GrantFiled: September 25, 2020Date of Patent: November 7, 2023Assignee: Advanced Micro Devices, Inc.Inventors: Harry J. Wise, Alexander Fuad Ashkar, Manu Rastogi
-
Patent number: 11789733Abstract: An instruction processing apparatus is disclosed. The instruction processing apparatus includes: a selector is configured to parse out a command type and a buffer identifier from a command, provide received data and the buffer identifier to a parser if the command type is configuration, and provide the received data and the buffer identifier to an operation circuit if the command type is execution; the parser is configured to parse out an instruction sequence from the data, store the instruction sequence into an instruction buffer corresponding to the buffer identifier, and store an operand of each instruction into a register file; and the operation circuit is configured to drive the instruction buffer to execute each instruction and generate a control signal, and trigger a plurality of execution units to perform operations based on received control signals and operands. The apparatus may be dedicated to processing various neural network applications.Type: GrantFiled: April 10, 2022Date of Patent: October 17, 2023Assignee: Alibaba (China) Co., Ltd.Inventors: Yijin Guan, Fei Sun, Ling Liang
-
Patent number: 11762776Abstract: The present application discloses a cache access method and an associated graph neural network system. The graph neural network processor is used for performing computation upon a graph neural network. The graph neural network is stored in the memory in compressed sparse row format. The method includes: receiving an address corresponding to a node of the graph neural network and a type of the address; in response to the type is one of a first type or a second type, performing lookup by comparing the address with a tag field of a degree lookup table to at least obtain a degree of the node; determining whether the degree is greater than a predetermined value to obtain a determination result; and determining whether to perform lookup on a region of the cache corresponding to the type according to the determination result.Type: GrantFiled: January 25, 2022Date of Patent: September 19, 2023Assignee: T-HEAD (SHANGHAI) SEMICONDUCTOR CO., LTD.Inventors: Zhe Zhang, Shuangchen Li, Hongzhong Zheng
-
Patent number: 11755333Abstract: A prefetcher for a coprocessor is disclosed. An apparatus includes a processor and a coprocessor that are configured to execute processor and coprocessor instructions, respectively. The processor and coprocessor instructions appear together in code sequences fetched by the processor, with the coprocessor instructions being provided to the coprocessor by the processor. The apparatus further includes a coprocessor prefetcher configured to monitor a code sequence fetched by the processor and, in response to identifying a presence of coprocessor instructions in the code sequence, capture the memory addresses, generated by the processor, of operand data for coprocessor instructions. The coprocessor is further configured to issue, for a cache memory accessible to the coprocessor, prefetches for data associated with the memory addresses prior to execution of the coprocessor instructions by the coprocessor.Type: GrantFiled: December 10, 2021Date of Patent: September 12, 2023Assignee: Apple Inc.Inventors: Brandon H. Dwiel, Andrew J. Beaumont-Smith, Eric J. Furbish, John D. Pape, Stephen G. Meier, Tyler J. Huberty
-
Patent number: 11748105Abstract: Aspects of the present disclosure relate an apparatus comprising fetch circuitry and instruction storage circuitry. The fetch circuitry is to fetch instructions for execution by execution circuitry. The instruction storage circuitry is to store temporary copies of fetched instructions. The fetch circuitry is configured to preferentially fetch instructions from the instruction storage circuitry. The instruction storage circuitry is configured to, responsive to a storage condition being met, begin storing copies of consecutive fetched instructions, the storage condition indicating a utility of a current fetched instruction; and to, responsive to determining that a number of said stored consecutive instructions has reached a storage threshold, cease storing copies of subsequent fetched instructions.Type: GrantFiled: April 27, 2021Date of Patent: September 5, 2023Assignee: Arm LimitedInventors: Michael Brian Schinzler, Muhammad Umar Farooq, Yasuo Ishii
-
Patent number: 11704221Abstract: A system is configured to track and store system and event data for various computing devices. The system is configured to associate the various computing devices with profiles based at least in part on characteristics of the computing devices. The system is further configured to compare performance data and/or performance metrics for particular computing devices having a particular profile against all other devices that share the particular profile. The system then displays this comparison to a user of the particular computing device, substantially automatically diagnoses an issue with the particular computing device based on the performance and system event data, and/or enables the user to diagnose the problem based on the performance and system event data.Type: GrantFiled: July 27, 2022Date of Patent: July 18, 2023Assignee: Assurant, Inc.Inventors: Dustin Brewer, Stuart Saunders, Cameron Hurst
-
Patent number: 11645053Abstract: Implementing an application within an integrated circuit (IC) having a data processing engine (DPE) array coupled to a Network-on-Chip (NoC) can include determining, using computer hardware, data transfer requirements for a software portion of the application intended to execute on the DPE array by simulating data traffic to the NoC as generated by the software portion, generating, using the computer hardware, a NoC routing solution for data paths of the application implemented by the NoC based, at least in part, on the data transfer requirements for the software portion. The software portion can be compiled for execution by different ones of a plurality of DPEs of the DPE array based, at least in part, on the NoC routing solution. Configuration data can be generated using the computer hardware. The configuration data, when loaded into the IC, configures the NoC to implement the NoC routing solution.Type: GrantFiled: October 13, 2021Date of Patent: May 9, 2023Assignee: Xilinx, Inc.Inventors: Akella Sastry, Vinod K. Kathail, L. James Hwang, Shail Aditya Gupta, Vidhumouli Hunsigida, Siddharth Rele
-
Patent number: 11605408Abstract: A memory device includes a command interface configured to receive a command from a host device via multiple command address bits. The memory device also includes a merged command decoder configured to receive the command and to determine whether the command matches a bit pattern corresponding to multiple command types. The merged command decoder is also configured to, in response to the command matching the bit pattern, asserting a latch signal. The memory device also includes a latch configured to capture the multiple command address bits based at least in part on assertion of the latch signal.Type: GrantFiled: November 3, 2021Date of Patent: March 14, 2023Assignee: Micron Technology, Inc.Inventors: Navya Sri Sreeram, Kallol Mazumder
-
Patent number: 11586440Abstract: A computer-implemented method of performing a link stack based prefetch augmentation using a sequential prefetching includes observing a call instruction in a program being executed, and pushing a return address onto a link stack for processing the next instruction. A stream of instructions is prefetched starting from a cached line address of the next instruction and is stored in an instruction cache.Type: GrantFiled: June 1, 2021Date of Patent: February 21, 2023Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Naga P. Gorti, Mohit Karve
-
Patent number: 11586944Abstract: An apparatus comprises: a prediction storage structure comprising a plurality of prediction state entries representing instances of predicted instruction behaviour; prediction training circuitry to perform a training operation to train the prediction state entries based on actual instruction behaviour; prediction circuitry to output at least one control signal for triggering a speculative operation based on the predicted instruction behaviour represented by a prediction state entry for which the training operation has provided sufficient confidence in the predicted instruction behaviour; an allocation filter comprising at least one allocation filter entry representing a failed predicted instruction behaviour for which the training operation failed to provide said sufficient confidence; and prediction allocation circuitry to prevent allocation of a new entry in the prediction storage structure for a failed predicted instruction behaviour represented by an allocation filter entry of the allocation filter.Type: GrantFiled: August 15, 2019Date of Patent: February 21, 2023Assignee: Arm LimitedInventors: Luc Orion, Houdhaifa Bouzguarrou, Guillaume Bolbenes, Eddy Lapeyre
-
Patent number: 11561796Abstract: A computer-implemented method to prefetch non-sequential instruction addresses (I/A) includes, determining, by a prefetch system, a first access attempt of a first I/A in a cache is a first miss, wherein the first I/A is included in a string of I/A's. The method further includes storing the first I/A in a linked miss-to-miss (LMTM) table. The method also includes determining a second access attempt of a second I/A in the cache is a second miss, wherein the second I/A is included in the string of I/A's. The method includes linking, in the LMTM table, the second miss to the first miss. The method also includes prefetching, in response to a third access attempt of the first I/A, the second I/A in the cache.Type: GrantFiled: July 15, 2020Date of Patent: January 24, 2023Assignee: International Business Machines CorporationInventors: Naga P. Gorti, Mohit Karve
-
Patent number: 11537517Abstract: A memory device comprises: a page buffer including a first and second latch, a control circuit configured to perform reading data of a word line and storing the data in the first latch, perform discharging the word line, perform moving the data of the first latch to the second latch, and perform outputting the data of the second latch to an exterior, and a control logic configured to control the control circuit such that an execution section of the discharge and moving for a first word line at least partially overlap each other when a second or third cache read command is inputted in a section in which the storage or discharge for the first word line is performed in response to a first cache read command for the first word line.Type: GrantFiled: October 4, 2021Date of Patent: December 27, 2022Assignee: SK hynix Inc.Inventors: Gwan Park, Jeong Gil Choi
-
Patent number: 11520497Abstract: A variety of applications can include a memory device having a memory die designed to control a power budget for a cache and a memory array of the memory die. A first flag received from a data path identifies a start of a cache operation on the data and a second flag from the data path identifies an end of the cache operation. A controller for peak power management can be implemented to control the power budget based on determination of usage of current associated with the cache from the first and second flags. In various embodiments, the controller can be operable to feedback a signal to a memory controller external to the memory die to adjust an operating speed of an interface from the memory controller to the memory die. Additional devices, systems, and methods are discussed.Type: GrantFiled: December 2, 2020Date of Patent: December 6, 2022Assignee: Micron Technology, Inc.Inventors: Liang Yu, Jonathan Scott Parry, Luigi Pilolli
-
Patent number: 11461098Abstract: Systems, methods, and apparatuses relating to an instruction for operating system transparent instruction state management of new instructions for application threads are described. In one embodiment, a hardware processor includes a decoder to decode a single instruction into a decoded single instruction, and an execution circuit to execute the decoded single instruction to cause a context switch from a current state to a state comprising additional state data that is not supported by an execution environment of an operating system that executes on the hardware processor.Type: GrantFiled: June 27, 2020Date of Patent: October 4, 2022Assignee: Intel CorporationInventors: Toby Opferman, Prashant Sethi, Abhimanyu K. Varde, Barry E. Huntley, Michael W. Chynoweth, Jason W. Brandt
-
Patent number: 11435484Abstract: A global navigation satellite system (GNSS) receiver is disclosed. In embodiments, the GNSS receiver includes a tracking engine running on a primary controller, the tracking engine configured to receive a plurality of signals from a plurality of satellites. The GNSS receiver further includes a space-time adaptive correlator (STAC) engine running on an application-specific controller. In embodiments, the STAC engine is configured to: receive initial position data and an initial receiver clock estimate from the tracking engine; construct a spatial hypercube based on the received initial position data; receive the plurality of signals from the tracking engine; interpolate signal strengths of the plurality of signals to generate a plurality of signal intensity curves; integrate the plurality of signal intensity curves within the spatial hypercube for the initial receiver clock estimate to generate a signal intensity hypercube plot; and determine a receiver position based on the signal intensity hypercube plot.Type: GrantFiled: June 7, 2019Date of Patent: September 6, 2022Assignee: Rockwell Collins, Inc.Inventor: John E. Acheson
-
Patent number: 10372112Abstract: A method includes translating at least one application source code file associated with a legacy controller in a distributed control system to instructions executable by a controller simulation computing device, wherein the legacy controller is associated with a legacy operating system and the controller simulation computing device is associated with a second operating system different from the legacy operating system. The method also includes simulating operation of the legacy controller using the instructions and an emulation of the legacy operating system in the controller simulation computing device. The method further includes determining configuration data for the legacy controller during the simulated operation of the legacy controller. In addition, the method includes saving the configuration data to a configuration data file.Type: GrantFiled: June 14, 2016Date of Patent: August 6, 2019Assignee: Honeywell International Inc.Inventors: Ananthapadmanabha Krishnamurthy, Shylaja Munihanumaiah, Elliott Rachlin, Paul F. McLaughlin
-
Patent number: 9043579Abstract: A prefetch optimizer tool for an information handling system (IHS) may improve effective memory access time by controlling both hardware prefetch operations and software prefetch operations. The prefetch optimizer tool selectively disables prefetch instructions in an instruction sequence of interest within an application. The tool measures execution times of the instruction sequence of interest when different prefetch instructions are disabled. The tool may hold hardware prefetch depth constant while cycling through disabling different prefetch instructions and taking corresponding execution time measurements. Alternatively, for each disabled prefetch instruction in the instruction sequence of interest, the tool may cycle through different hardware prefetch depths and take corresponding execution time measurements at each hardware prefetch depth.Type: GrantFiled: January 10, 2012Date of Patent: May 26, 2015Assignee: International Business Machines CorporationInventor: Randall Ray Heisch
-
Patent number: 8954714Abstract: An apparatus includes a processor. The processor includes two memories. The first memory stores one set of instructions. The second memory stores another set of instructions that are longer than the set of instructions in the first memory. An instruction in the set of instructions in the first memory is used as a pointer to a corresponding instruction in the set of instructions in the second memory.Type: GrantFiled: February 1, 2010Date of Patent: February 10, 2015Assignee: Altera CorporationInventor: Steven Perry
-
Patent number: 8683138Abstract: A prefetch data machine instruction having an M field performs a function on a cache line of data specifying an address of an operand. The operation comprises either prefetching a cache line of data from memory to a cache or reducing the access ownership of store and fetch or fetch only of the cache line in the cache or a combination thereof. The address of the operand is either based on a register value or the program counter value pointing to the prefetch data machine instruction.Type: GrantFiled: January 6, 2012Date of Patent: March 25, 2014Assignee: International Business Machines CorporationInventors: Dan F Greiner, Timothy J Slegel
-
Patent number: 8484421Abstract: Embodiments of the present disclosure provide a system on a chip (SOC) comprising a processing core, and a cache including a cache instruction port, a cache data port, and a port utilization circuitry configured to selectively fetch instructions through the cache instruction port and selectively pre-fetch instructions through the cache data port. Other embodiments are also described and claimed.Type: GrantFiled: November 23, 2009Date of Patent: July 9, 2013Assignee: Marvell Israel (M.I.S.L) Ltd.Inventors: Tarek Rohana, Adi Habusha, Gil Stoler
-
Patent number: 8250307Abstract: According to a method of data processing, a memory controller receives a prefetch load request from a processor core of a data processing system. The prefetch load request specifies a requested line of data. In response to receipt of the prefetch load request, the memory controller determines by reference to a stream of demand requests how much data is to be supplied to the processor core in response to the prefetch load request. In response to the memory controller determining to provide less than all of the requested line of data, the memory controller provides less than all of the requested line of data to the processor core.Type: GrantFiled: February 1, 2008Date of Patent: August 21, 2012Assignee: International Business Machines CorporationInventors: Ravi K. Arimilli, Gheorghe C. Cascaval, Balaram Sinharoy, William E. Speight, Lixin Zhang
-
Patent number: 8032713Abstract: A design structure embodied in a machine readable storage medium for designing, manufacturing, and/or testing a design is provided. The design structure generally includes a computer system that includes a CPU, a storage device, circuitry for providing a speculative access threshold corresponding to a selected percentage of the total number of accesses to the storage device that can be speculatively issued, and circuitry for intermixing demand accesses and speculative accesses in accordance with the speculative access threshold.Type: GrantFiled: May 5, 2008Date of Patent: October 4, 2011Assignee: International Business Machines CorporationInventors: James J. Allen, Jr., Steven K. Jenkins, James A. Mossman, Michael R. Trombley
-
Patent number: 7949830Abstract: A system and method for handling speculative read requests for a memory controller in a computer system are provided. In one example, a method includes the steps of providing a speculative read threshold corresponding to a selected percentage of the total number of reads that can be speculatively issued, and intermixing demand reads and speculative reads in accordance with the speculative read threshold. In another example, a computer system includes a CPU, a memory controller, memory, a bus connecting the CPU, memory controller and memory, circuitry for providing a speculative read threshold corresponding to a selected percentage of the total number of reads that can be speculatively issued, and circuitry for intermixing demand reads and speculative reads in accordance with the speculative read threshold.Type: GrantFiled: December 10, 2007Date of Patent: May 24, 2011Assignee: International Business Machines CorporationInventors: James Johnson Allen, Jr., Steven Kenneth Jenkins, James A. Mossman, Michael Raymond Trombley