Patents by Inventor Prakash S. RAMRAKHYANI

Prakash S. RAMRAKHYANI has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 10423510
    Abstract: An apparatus comprises a plurality of memory units organized as a hierarchical memory system, wherein each of at least some of the memory units is associated with a processor element; predictor circuitry to perform a prediction process to determine a predicted redundancy period of result data of a data processing operation to be performed, indicating a predicted point when said result data will be next accessed; and an operation controller to cause a selected processor element to perform said data processing operation, wherein said selected processor element is selected based on said predicted redundancy period.
    Type: Grant
    Filed: October 4, 2017
    Date of Patent: September 24, 2019
    Assignee: ARM Limited
    Inventors: Prakash S. Ramrakhyani, Jonathan Curtis Beard
  • Publication number: 20190251275
    Abstract: A counter integrity tree for memory security includes at least one split-counter node specifying at least two counters each defined as a combination of a major count value shared between the at least two counters and a respective minor count value specified separately for each of the at least two counters. This increases the number of child nodes which can be provided per parent node of the tree, and hence reduces the number of tree levels that have to be traversed in a tree covering a given size of memory region. The minor counter size can be varied dynamically by allocating nodes in a mirror counter integrity tree for accommodating larger minor counters which do not fit in the corresponding node of the main counter integrity tree.
    Type: Application
    Filed: February 9, 2018
    Publication date: August 15, 2019
    Applicant: Arm Limited
    Inventors: Prakash S. Ramrakhyani, Roberto Avanzi, Wendy Arnott Elsasser
  • Publication number: 20190243778
    Abstract: Memory address translation apparatus comprises page table access circuitry to access a page table to retrieve translation data defining an address translation between an initial memory address in an initial memory address space, and a corresponding output memory address in an output address space; a translation data buffer to store, for a subset of the initial address space, one or more instances of the translation data; the translation data buffer comprising: an array of storage locations arranged in rows and columns; a row buffer comprising a plurality of entries each to store information from a respective portion of a row of the array; and comparison circuitry responsive to a key value dependent upon at least the initial memory address, to compare the key value with information stored in each of at least one key entry of the row buffer, each key entry having an associated value entry for storing at least a representation of a corresponding output memory address, and to identify which of the at least one ke
    Type: Application
    Filed: November 29, 2017
    Publication date: August 8, 2019
    Inventors: Nikos NIKOLERIS, Andreas Lars SANDBERG, Prakash S. RAMRAKHYANI, Stephan DIESTELHORST
  • Publication number: 20190155747
    Abstract: There is provided an apparatus that includes an input port to receive, from a requester, any one of: a lookup operation comprising an input address, and a maintenance operation. Maintenance queue circuitry stores a maintenance queue of at least one maintenance operation and address storage stores a translation between the input address and an output address in an output address space. In response to receiving the input address, the output address is provided in dependence on the maintenance queue. In response to storing the maintenance operation, the maintenance queue circuitry causes an acknowledgement to be sent to the requester. By providing a separate maintenance queue for performing the maintenance operation, there is no need for a requester to be blocked while maintenance is performed.
    Type: Application
    Filed: October 24, 2018
    Publication date: May 23, 2019
    Inventors: Andreas Lars SANDBERG, Nikos NIKOLERIS, Prakash S. RAMRAKHYANI, Stephan DIESTELHORST
  • Publication number: 20190155748
    Abstract: Memory address translation apparatus comprises page table access circuitry to access page table data to retrieve translation data defining an address translation between an initial memory address in an initial memory address space, and a corresponding output memory address in an output address space; a translation data buffer to store, for a subset of the virtual address space, one or more instances of the translation data; and control circuitry, responsive to an input initial memory address to be translated, to request retrieval of translation data for the input initial memory address from the translation data buffer and, before completion of processing of the request for retrieval from the translation data buffer, to initiate retrieval of translation data for the input initial memory address by the page table access circuitry.
    Type: Application
    Filed: November 6, 2018
    Publication date: May 23, 2019
    Inventors: Andreas Lars SANDBERG, Nikos NIKOLERIS, Prakash S. RAMRAKHYANI
  • Publication number: 20190155742
    Abstract: There is provided an apparatus that includes an input address port to receive an input address from processor circuitry. Address storage stores a translation between the input address and an output address in an output address space. An output address port outputs the output address. An input data port receives data. Data storage stores the data. An output data port outputs the data stored in the data storage and control circuitry causes the data storage to store the translation between the input address and the output address. The control circuitry issues a signal to cause a page walk to occur in response to the input address being absent from the address storage and the data storage.
    Type: Application
    Filed: October 24, 2018
    Publication date: May 23, 2019
    Inventors: Prakash S. RAMRAKHYANI, Andreas Lars SANDBERG, Nikos NIKOLERIS, Stephan DIESTELHORST
  • Publication number: 20190155750
    Abstract: Storage of data in a cache system is controlled by a cache monitor. A cache line is filled in response to a memory instruction from a cache client. The cache monitor includes a predictor table and update logic. An entry in the predictor table comprises an instruction identifier that associates the entry with a memory instruction and, for each cache in the system, a reuse counter. The update logic is configured to update a reuse counter table dependent upon cache behavior in response to memory instructions. Storage of data a first data address in cache in response to a memory instruction having a first instruction identifier, is dependent upon reuse counter values in an entry of the predictor table associated with first instruction identifier. Reuse counters are updated dependent upon cache behavior. A Bloom filter or other data structure may be used to associate data addresses with a memory instruction.
    Type: Application
    Filed: November 21, 2017
    Publication date: May 23, 2019
    Applicant: Arm Limited
    Inventors: Jiajun Wang, Prakash S. Ramrakhyani, Wei Wang, Wendy Arnott Elsasser
  • Publication number: 20190102272
    Abstract: An apparatus comprises a plurality of memory units organised as a hierarchical memory system, wherein each of at least some of the memory units is associated with a processor element; predictor circuitry to perform a prediction process to determine a predicted redundancy period of result data of a data processing operation to be performed, indicating a predicted point when said result data will be next accessed; and an operation controller to cause a selected processor element to perform said data processing operation, wherein said selected processor element is selected based on said predicted redundancy period.
    Type: Application
    Filed: October 4, 2017
    Publication date: April 4, 2019
    Inventors: Prakash S. RAMRAKHYANI, Jonathan Curtis BEARD
  • Publication number: 20190102310
    Abstract: A method and apparatus for controlling data organization in a tiered memory system, where the system comprises a lower and higher bandwidth memories. Accesses to the tiered memory system by an action of a computing device in a first time interval are monitored to determine a first measure of bandwidth utilization, from which it is determined if the action is in a high bandwidth phase for which a first measure of bandwidth utilization is greater than an upper value. It is further determined, from confidence counters, if a monitored access is consistent with respect to the first instructions or with respect to a memory address of the access. Data associated with the access is moved from the lower bandwidth memory to the higher bandwidth memory when the action is in a high bandwidth phase, the access is consistent, and bandwidth utilization of the higher bandwidth memory is below a threshold.
    Type: Application
    Filed: October 2, 2017
    Publication date: April 4, 2019
    Applicant: ARM LTD
    Inventors: Prakash S. Ramrakhyani, Joshua Randall, Wendy Arnott Elsasser
  • Publication number: 20190043600
    Abstract: A method and apparatus for retrieving data from a memory in which data, an associated message authentication code (MAC) and an associated error correction code (ECC) are stored in a memory such that the data, MAC and ECC can be retrieved together in a single read transaction and written in a single write transaction. Additional read transactions may be used to retrieve counters values that enable the retrieved MAC to be compared with a computed MAC. Still further, node value values of an integrity tree may also be retrieved to enable hash values of the integrity tree to be verified. The MAC and ECC may be stored in a metadata region of a memory module, for example.
    Type: Application
    Filed: August 3, 2017
    Publication date: February 7, 2019
    Applicant: ARM LTD
    Inventors: Gururaj SAILESHWAR, Prakash S. RAMRAKHYANI, Wendy Arnott ELSASSER
  • Publication number: 20170024327
    Abstract: A cache memory and method of operating a cache memory are provided. The cache memory comprises cache storage that stores cache lines for a plurality of requesters and cache control circuitry that controls insertion of a cache line into the cache storage when a memory access request from one of the plurality of requesters misses in the cache memory. The cache memory further has cache occupancy estimation circuitry that holds a count of insertions of cache lines into the cache storage for each of the plurality of requesters over a defined period. The count of cache line insertions for each requester thus provides an estimation of the cache occupancy associated with each requester.
    Type: Application
    Filed: July 13, 2016
    Publication date: January 26, 2017
    Applicant: ARM Limited
    Inventors: Ali SAIDI, Prakash S. RAMRAKHYANI