Patents Examined by Pierre-Michel Bataille
  • Patent number: 9542342
    Abstract: A multiple access mechanism allows sources to simultaneously access different target registers at the same time without using a semaphore. The multiple access mechanism is implemented using N holding registers and source identifiers. The N holding registers are located in each slave engine. Each of the N holding registers is associated with a source and is configured to receive partial updates from the source before pushing the full update to a target register. After the source is finished updating the holding register and the holding register is ready to commit to the target register, a source identifier is added to a register bus. The source identifier identifies the holding register as the originator of the transaction on the register bus. The N holding registers are able to simultaneously handle N register transactions. The max value of N is 2n, where n is the number of bits in the source identifier.
    Type: Grant
    Filed: October 22, 2014
    Date of Patent: January 10, 2017
    Assignee: Cavium, Inc.
    Inventors: Vishal Anand, Harish Krishnamoorthy, Guy Townsend Hutchison
  • Patent number: 9529541
    Abstract: A nonvolatile storage device in accordance with the inventive concepts includes a nonvolatile memory device comprising a first memory area, a second memory area, and a memory controller. The memory controller includes a first register configured to store reliable mode information, and a second register configured to store operating system (OS) image information. The memory controller is configured to receive a command from a host based on the reliable mode information; determine whether the command is a write request for an OS image and whether OS image information accompanying the command matches the OS image information stored in the second register; write the OS image to the first memory area if the OS image information accompanying the command matches the OS image information stored in the second register, and block data migration of the OS image from the first memory area to the second memory area.
    Type: Grant
    Filed: February 10, 2016
    Date of Patent: December 27, 2016
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Sung-Hyun Cho, Dongin Kim, Junseok Park, Taemin Lee, Chaesuk Lim
  • Patent number: 9532096
    Abstract: A device is provided for use with a content provider that is operable to provide content, which includes a plurality of content components. The device includes a communication portion, a memory portion, a parsing portion, a counting portion and a processing portion. The communication portion can receive the content from the content provider. The parsing portion can parse the content into the plurality of content components and can store the parsed plurality of content components within the memory portion. The counting portion can provide a counter for each of the parsed plurality of content components within the memory portion, respectively. The processing portion can retrieve and process one of the parsed plurality of content components within the memory portion. The counting portion can further increment the counter associated with the retrieved one of the parsed plurality of content components within the memory portion.
    Type: Grant
    Filed: October 21, 2015
    Date of Patent: December 27, 2016
    Assignee: Google Technology Holdings LLC
    Inventor: Krishna Prasad Panje
  • Patent number: 9524101
    Abstract: Provided are a computer program product, system, and method for modeling workload information for a primary storage and a secondary storage. A determination is made of: a first type and second type of Input/Output (I/O) operations with respect to extents configured in the primary storage; a cumulative I/O workload for the primary storage based on a first type and a second type of I/O operations at different cumulative storage amounts of the primary storage indicating a concentration of the I/O workload on the primary storage; and cumulative I/O workload for the secondary storage based on the first type and the second type of I/O operations at different storage amounts indicating a concentration of the I/O workload of the first type of I/O operations on the secondary storage. A performance gap is determined based on the cumulative I/O workloads for the primary and secondary storages at one of the storage amounts.
    Type: Grant
    Filed: February 26, 2016
    Date of Patent: December 20, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Yong Guo, Jun Tao Li, Yan Xu
  • Patent number: 9524124
    Abstract: A semiconductor device may include a first memory cell array configured to store data according to a first address on a first basis, a second memory cell array configured to store data according to a second address on a second basis that is relatively smaller than the first basis, a memory selector configured to select one of the first memory cell array and the second memory cell array to store data during a write request, and an address map table configured to store mapping information between the first and second addresses for data stored in the second memory cell array.
    Type: Grant
    Filed: October 24, 2014
    Date of Patent: December 20, 2016
    Assignee: SK HYNIX INC.
    Inventors: Dong-Gun Kim, Yong-Kee Kwon, Hong-Sik Kim
  • Patent number: 9519578
    Abstract: This disclosure provides for improvements in managing multi-drive, multi-die or multi-plane NAND flash memory. In one embodiment, the host directly assigns physical addresses and performs logical-to-physical address translation in a manner that reduces or eliminates the need for a memory controller to handle these functions, and initiates functions such as wear leveling in a manner that avoids competition with host data accesses. A memory controller optionally educates the host on array composition, capabilities and addressing restrictions. Host software can therefore interleave write and read requests across dies in a manner unencumbered by memory controller address translation. For multi-plane designs, the host writes related data in a manner consistent with multi-plane device addressing limitations. The host is therefore able to “plan ahead” in a manner supporting host issuance of true multi-plane read commands.
    Type: Grant
    Filed: November 25, 2015
    Date of Patent: December 13, 2016
    Assignee: Radian Memory Systems, Inc.
    Inventors: Andrey V. Kuzmin, James G. Wayda
  • Patent number: 9514050
    Abstract: A multicore processor comprises a plurality of cache memories, and a plurality of processor cores, each associated with one of the cache memories. Each of at least some of the cache memories is configured to maintain at least a portion of the cache memory in which each cache line is dynamically managed as either local to the associated processor core or shared among multiple processor cores.
    Type: Grant
    Filed: October 7, 2013
    Date of Patent: December 6, 2016
    Assignee: Tilera Corporation
    Inventors: Anant Agarwal, Ian Rudolf Bratt, Matthew Mattina
  • Patent number: 9513815
    Abstract: A method is provided for managing a memory device including a plurality of physical memory segments. A logical memory space is classified into a plurality of classifications based on usage specifications. The plurality of physical memory segments is allocated to corresponding logical addresses based on the plurality of classifications, and on usage statistics of the physical memory segments. A data structure is maintained recording translation between logical addresses in the logical memory space and physical addresses of the physical memory segments. The plurality of classifications includes a first classification and a second classification having different usage statistic requirements than the first classification. Logical addresses having the second classification can be redirected to physical segments allocated to logical addresses having the first classification, and the data structure can be updated to record redirected logical addresses.
    Type: Grant
    Filed: October 24, 2014
    Date of Patent: December 6, 2016
    Assignee: Macronix International Co., Ltd.
    Inventors: Ping-Chun Chang, Yuan-Hao Chang, Hung-Sheng Chang, Tei-Wei Kuo, Hsiang-Pang Li
  • Patent number: 9507714
    Abstract: Systems and methods may provide for identifying an object in a managed runtime environment and determining an age of the object at a software level of the managed runtime environment. Additionally, the object may be selectively allocated in one of a dynamic random access memory (DRAM) or a non-volatile random access memory (NVRAM) based at least in part on the age of the object. In one example, the data type of the object is also determined, wherein the object is selectively allocated further based on the data type.
    Type: Grant
    Filed: March 27, 2014
    Date of Patent: November 29, 2016
    Assignee: Intel Corporation
    Inventors: Stephan A. Herhut, Richard L. Hudson, Tatiana Shpeisman
  • Patent number: 9507715
    Abstract: A processor includes a set of processing modules, each of the processing modules including a cache and a coherency manager that keeps track of the memory addresses of data stored at the caches of other processing modules. In response to its local cache requesting access to a particular memory address or other triggering event, the coherency manager generates a coherency probe. In the event that the generated coherency probe is targeted to multiple processing modules, the coherency manager includes a set of multicast bits indicating the processing modules whose caches include copies of the data targeted by the multicast probe. A transport switch that connects the processing module to the fabric communicates the coherency probe only to subset of processing modules indicated by the multicast bits.
    Type: Grant
    Filed: October 24, 2014
    Date of Patent: November 29, 2016
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Eric Morton, Patrick Conway, Elizabeth Morrow Cooper, Vydhyanathan Kalyanasundharam
  • Patent number: 9501420
    Abstract: A system and method for recognizing data access patterns in large data sets and for preloading a cache based on the recognized patterns is provided. In some embodiments, the method includes receiving a data transaction directed to an address space and recording the data transaction in a first set of counters and in a second set of counters. The first set of counters divides the address space into address ranges of a first size, whereas the second set of counters divides the address space into address ranges of a second size that is different from the first size. One of a storage device or a cache thereof is selected to service the data transaction based on the first set of counters, and data is preloaded into the cache based on the second set of counters.
    Type: Grant
    Filed: October 22, 2014
    Date of Patent: November 22, 2016
    Assignee: NETAPP, INC.
    Inventors: Sai Rama Krishna Susarla, Sandeep Kumar Reddy Ummadi, William Patrick Delaney
  • Patent number: 9501402
    Abstract: A method and system to allow power fail-safe write-back or write-through caching of data in a persistent storage device into one or more cache lines of a caching device. No metadata associated with any of the cache lines is written atomically into the caching device when the data in the storage device is cached. As such, specialized cache hardware to allow atomic writing of metadata during the caching of data is not required.
    Type: Grant
    Filed: February 19, 2014
    Date of Patent: November 22, 2016
    Assignee: INTEL CORPORATION
    Inventor: Sanjeev N. Trika
  • Patent number: 9501416
    Abstract: A computer system processor of a multi-processor computer system having a cache subsystem, the computer system having exclusive ownership of a cache line, executes a demote instruction to cause its own exclusively owned cache line to become shared or read-only in the computer processor cache.
    Type: Grant
    Filed: February 11, 2016
    Date of Patent: November 22, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Chung-Lung Kevin Shum, Kathryn Marie Jackson, Charles Franklin Webb
  • Patent number: 9483413
    Abstract: At least one example embodiment discloses a method of controlling a nonvolatile memory device including a plurality of blocks, each block including a plurality of physical pages. The method includes receiving a plurality of logical pages associated with a first plurality of logical addresses, respectively, and writing the first plurality of logical pages to the plurality physical addresses according to an ascending order of the logical addresses of the first plurality of logical pages.
    Type: Grant
    Filed: October 24, 2014
    Date of Patent: November 1, 2016
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Avner Dor, Elona Erez, Shay Landis, Jun Jin Kong
  • Patent number: 9477508
    Abstract: Disclosed herein are various systems and methods for sharing a storage device with multiple virtual machines are disclosed. One such method involves creating a pseudo-identity for a storage device and assigning a portion of an address space of the storage device to a virtual machine using the pseudo-identity. The storage device is coupled to a computing device and the pseudo-identity is created by a hypervisor associated with the computing device. The pseudo-identity facilitates access to the storage device by the virtual machine associated with the hypervisor and also facilitates presentation of one or more physical characteristics of the storage device to the virtual machine. The method also assigns a portion of an address space of the storage device to the virtual machine using the pseudo-identity.
    Type: Grant
    Filed: March 27, 2014
    Date of Patent: October 25, 2016
    Assignee: Veritas Technologies LLC
    Inventor: Hari Krishna Vemuri
  • Patent number: 9477282
    Abstract: A power supply method includes providing a plurality of output powers to a plurality of power devices (PDs); acquiring a plurality of power statuses of the PDs (power devices); calculating a summation of the output powers provided to the PDs (power devices); determining whether the summation of the output powers exceeds a predetermined threshold; and under a condition that the summation of the output powers exceeds the predetermined threshold, adjusting the output powers provided to the PDs (power devices) based upon the power statuses of the PDs (power devices).
    Type: Grant
    Filed: March 5, 2015
    Date of Patent: October 25, 2016
    Assignee: ACCTON TECHNOLOGY CORPORATION
    Inventor: Wei-Hsiang Huang
  • Patent number: 9477516
    Abstract: A method includes allocating a first memory location in a non-transitory data store in communication with a computing device and writing data to the first memory location when a first write transaction executes on the non-transitory data store. The method further includes executing one or more read transactions on the first memory location after completion of the first write transaction and incrementing a first pointer counter upon completion of the first write transaction and for each read transaction executing on the first memory location. The method allocates a second memory location in the non-transitory data store and writes updated data to the second memory location when a second write transaction executes on the non-transitory data store to update the data. The first pointer counter decrements and the second pointer counter increments upon completion of the second write transaction. The first memory location de-allocates when the first pointer counter is zero.
    Type: Grant
    Filed: March 19, 2015
    Date of Patent: October 25, 2016
    Assignee: Google Inc.
    Inventors: Timothe Hockin, Jakub Onufry Wojtaszczyk, Jaroslaw Przybylowicz, Erik Christian Haugen, Xiaohui Chen
  • Patent number: 9471509
    Abstract: At least one CPU is configured to run a hypervisor at a first access level and at least one guest operating system at a second access level. At the second access level, translating uses mappings in a first page table; and, at the second access level, class information is determined for a memory page mapped by the first page table based on a classification of virtual addresses. At the first access level, translating uses mappings in a second page table; and, at the first access level, class information is determined for the memory page mapped by the second page table based on a classification of intermediate physical addresses. The class information determined at either access level is independent from certain bits used to indicate addresses. Class information determined at different access levels is processed to determine processed class information for the memory page using a dynamic processing rule.
    Type: Grant
    Filed: March 19, 2015
    Date of Patent: October 18, 2016
    Assignee: Cavium, Inc.
    Inventor: Shubhendu Sekhar Mukherjee
  • Patent number: 9471503
    Abstract: A computer system processor of a multi-processor computer system having a cache subsystem, the computer system having exclusive ownership of a cache line, executes a demote instruction to cause its own exclusively owned cache line to become shared or read-only in the computer processor cache.
    Type: Grant
    Filed: February 11, 2016
    Date of Patent: October 18, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Chung-Lung Kevin Shum, Kathryn Marie Jackson, Charles Franklin Webb
  • Patent number: 9466346
    Abstract: A semiconductor device has a plurality of units, each of which includes a first memory cell that stores a value indicating a state of one node of an interaction model, a second memory cell that stores an interaction coefficient indicating an interaction from a node connected to the one node, and a third memory cell that stores a bias coefficient of the one node. Furthermore, the semiconductor device has a computing circuit that determines a value indicating a next state of the one node based on a value indicating a state of the connected node, the interaction coefficient and the bias coefficient. Also, each of the second memory cell and the third memory cell in the plurality of units includes multi-valued memory cells.
    Type: Grant
    Filed: March 5, 2015
    Date of Patent: October 11, 2016
    Assignee: Hitachi, Ltd.
    Inventors: Masanao Yamaoka, Chihiro Yoshimura