Patents Examined by Eric S Cardwell
  • Patent number: 9329957
    Abstract: To facilitate the management of a storage system that uses a flash memory as a storage area. A controller of the storage system provided with a flash memory chip manages a surplus capacity value of the flash memory chip, and transmits a value based on the surplus capacity value to a management server, on the basis of at least one of a definition of a parity group, a definition of an internal LU, and a definition of a logical unit. The management server displays a state of the storage system by using the received value based on the surplus capacity value.
    Type: Grant
    Filed: June 15, 2015
    Date of Patent: May 3, 2016
    Assignee: Hitachi, Ltd.
    Inventors: Shotaro Ohno, Manabu Obana
  • Patent number: 9318198
    Abstract: A method of operating a memory system according to an aspect of the present disclosure includes storing first data in a memory controller; storing second data in the memory controller, wherein the second data is read from a selected page of a first memory block of a memory device; and performing a program operation for storing third data, that include the first data and the second data, in a selected page of a second memory block of the memory device.
    Type: Grant
    Filed: October 25, 2011
    Date of Patent: April 19, 2016
    Assignee: Hynix Semiconductor Inc.
    Inventors: Min Joong Jung, Jung Mi Shin, Wan Seob Lee
  • Patent number: 9318199
    Abstract: Apparatuses may include a memory block with strings of memory cells formed in a plurality of tiers. The apparatus may further comprise access lines and data lines shared by the strings, with the access lines coupled to the memory cells corresponding to a respective tier of the plurality of tiers. The memory cells corresponding to at least a portion of the respective tier may comprise a respective page of a plurality of pages. Subsets of the data lines may be mapped into a respective partial page of a plurality of partial pages of the respective page. Each partial page may be independently selectable from other partial pages. Additional apparatuses and methods are disclosed.
    Type: Grant
    Filed: October 26, 2012
    Date of Patent: April 19, 2016
    Assignee: Micron Technology, Inc.
    Inventors: Michael Abraham, Tomoharu Tanaka, Koichi Kawai, Yuichi Einaga
  • Patent number: 9318213
    Abstract: An overclocking process for a data storage device using a flash memory. A controller for the flash memory tests the flash memory using test clocks with various frequencies to determine at least one clock signal suitable to the flash memory. The clock candidates suitable to the flash memory are selected from the test clocks. The flash memory is operated in a variable-frequency manner by which the flash memory is switched between the clock candidates, such that electromagnetic interference is spread over different bands.
    Type: Grant
    Filed: June 27, 2014
    Date of Patent: April 19, 2016
    Assignee: VIA TECHNOLOGIES, INC.
    Inventors: Chin-Yin Tsai, Yi-Lin Lai
  • Patent number: 9305112
    Abstract: Provided are a computer program product, system, and method for selecting pages implementing leaf nodes and internal nodes of a data set index for reuse in memory. Pages in the memory are allocated to internal nodes and leaf nodes of a tree data structure representing all or a portion of a data set index for the data set, wherein the leaf nodes include information on members of the data set. The internal nodes include one or more keys used to traverse the tree data structure to reach the leaf nodes to access the members of the data set. At least one page allocated to the leaf nodes and the internal nodes is selected based on durations during which the allocated pages have not been used. Pages allocated to the leaf nodes are selected for reuse at a higher rate than the pages allocated to the internal nodes.
    Type: Grant
    Filed: September 14, 2012
    Date of Patent: April 5, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Derek L. Erdmann, David C. Reed, Thomas C. Reed, Max D. Smith
  • Patent number: 9298392
    Abstract: Techniques for virtual machine full backup are described herein. According to one embodiment, in response to a request to back up a virtual machine (VM) of a client, a request of VM backup is sent out. A consistent state of the VM is then identified via a VM application program interface (VM API). Subsequently a request is sent to a storage system associated with the client to ask for VM disk image associated with the consistent state of the VM to a target backup storage system.
    Type: Grant
    Filed: July 10, 2015
    Date of Patent: March 29, 2016
    Assignee: EMC Corporation
    Inventors: Windsor W. Hsu, Jian Xing
  • Patent number: 9268503
    Abstract: A method for handling input/output (I/O) in a data storage system comprising a RAID subsystem storing data according to a RAID level utilizing a parity scheme, where RAID stripes have been configured across a plurality of data storage devices. The method may include monitoring write requests to the RAID subsystem, identifying write requests destined for the same RAID stripe, and bundling the identified write requests for substantially simultaneous execution at the corresponding RAID stripe. Monitoring write requests to the RAID subsystem may include delaying at least some of the write requests to the RAID subsystem so as to build-up a queue of write requests. In some embodiments, identifying write requests and bundling the identified write requests may include identifying and bundling a number of write requests as required to perform a full stripe write to the corresponding RAID stripe.
    Type: Grant
    Filed: January 14, 2014
    Date of Patent: February 23, 2016
    Assignee: Compellent Technologies
    Inventors: Michael J. Klemm, Anthony J. Floeder
  • Patent number: 9268691
    Abstract: A mechanism implemented by a controller enables efficient access to an interleaved memory system that includes M modules, M being (2n+1) or (2n?1), n being a positive integer number. Upon receiving an address N, the controller performs shift and add/subtract operations to obtain a quotient of N divided by M based on a binomial series expansion of N over M. The controller computes a remainder of N divided by M based on the quotient. The controller then accesses one of the modules in the memory based on the remainder.
    Type: Grant
    Filed: June 11, 2012
    Date of Patent: February 23, 2016
    Assignee: Intel Corporation
    Inventors: Saurabh Sharma, Altug Koker, Aditya Navale
  • Patent number: 9268703
    Abstract: A technique for performing cache injection in a processor system includes monitoring, by a cache, addresses on a bus. Input/output data associated with an address of a data block stored in the cache is then requested from a remote node, via a network controller. Ownership of the input/output data is acquired by the cache when an address on the bus that is associated with the input/output data corresponds to the address of the data block stored in the cache.
    Type: Grant
    Filed: April 15, 2009
    Date of Patent: February 23, 2016
    Assignee: International Business Machines Corporation
    Inventors: Lakshminarayana Baba Arimilli, Ravi K. Arimilli, Jody B. Joyner, William J. Starke
  • Patent number: 9268684
    Abstract: A high performance computing (HPC) system includes computing blades having a first region that includes processors for performing a computation, and a second region that includes non-volatile memory for use in performing the computation and another computing processor for performing data movement and storage. Because data movement and storage are offloaded to the secondary processor, the processors for performing the computation are not interrupted to perform these tasks. A method for use in the HPC system receives instructions in the computing processors and first data in the memory. The method includes receiving second data into the memory while continuing to execute the instructions in the computing processors, without interruption. A computer program product implementing the method is also disclosed.
    Type: Grant
    Filed: June 29, 2013
    Date of Patent: February 23, 2016
    Assignee: Silicon Graphics International Corp.
    Inventors: Steven Dean, David R. Collins, Paul Kinyon
  • Patent number: 9262174
    Abstract: One embodiment sets forth a technique for dynamically mapping addresses to banks of a multi-bank memory based on a bank mode. Application programs may be configured to perform read and write a memory accessing different numbers of bits per bank, e.g., 32-bits per bank, 64-bits per bank, or 128-bits per bank. On each clock cycle an access request may be received from one of the application programs and per processing thread addresses of the access request are dynamically mapped based on the bank mode to produce a set of bank addresses. The bank addresses are then used to access the multi-bank memory. Allowing different bank mappings enables each application program to avoid bank conflicts when the memory is accesses compared with using a single bank mapping for all accesses.
    Type: Grant
    Filed: April 5, 2012
    Date of Patent: February 16, 2016
    Assignee: NVIDIA Corporation
    Inventors: Michael Fetterman, Stewart Glenn Carlton, Douglas J. Hahn, Rajeshwaran Selvanesan, Shirish Gadre, Steven James Heinrich
  • Patent number: 9251087
    Abstract: An apparatus, system, and method for virtual memory management. The method includes detecting a memory access to a virtual memory address within a monitored page of data not loaded in main memory of a computing device. The method includes determining a first address for a loaded page of data in the main memory. The first address is defined in a sparse virtual address space exposed by a persistent storage device. The first address is associated in an index with a first deterministic storage location. The method includes storing the loaded page on a persistent storage device at the first deterministic storage location. The method includes moving the monitored page from a second deterministic storage location to the main memory. The second deterministic storage location is associated with a second address in the index.
    Type: Grant
    Filed: February 13, 2012
    Date of Patent: February 2, 2016
    Assignee: SanDisk Technologies, Inc.
    Inventors: David Nellans, Robert Wipfel
  • Patent number: 9245626
    Abstract: An example method includes partitioning a memory element of a router into a plurality of segments having one or more rows, where at least a portion of the one or more rows is encoded with a value mask (VM) list having a plurality of values and masks. The VM list is identified by a label, and the label is mapped to a base row number and a specific number of bits corresponding to the portion encoding the VM list. Another example method includes partitioning a prefix into a plurality of blocks, indexing to a hash table using a value of a specific block, where a bucket of the hash table corresponds to a segment of a ternary content addressable memory of a router, and storing the prefix in a row of the segment.
    Type: Grant
    Filed: October 26, 2012
    Date of Patent: January 26, 2016
    Assignee: CISCO TECHNOLOGY, INC.
    Inventors: John Andrew Fingerhut, Balamurugan Ramaraj
  • Patent number: 9223507
    Abstract: An apparatus, computer program product, and associated method/processing unit are provided for utilizing a memory subsystem including a first memory of a first memory class, and a second memory of a second memory class communicatively coupled to the first memory. In operation, data is fetched using a time between an execution of a plurality of threads.
    Type: Grant
    Filed: January 5, 2015
    Date of Patent: December 29, 2015
    Assignee: P4TENTS1, LLC
    Inventor: Michael S Smith
  • Patent number: 9214207
    Abstract: A data decoding apparatus is provided, which includes at least one processor block, at least one hardware block, and a memory processing unit to control the at least one processor block or the at least one hardware block to access a memory and to read or write data with minimum delay.
    Type: Grant
    Filed: October 26, 2012
    Date of Patent: December 15, 2015
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventor: Won Chang Lee
  • Patent number: 9208093
    Abstract: Techniques are generally described for a multi-core processor with a plurality of processor cores. At least one cache is accessible to at least two of the plurality of processor cores. The multi-core processor can be configured for separately allocating a memory space within the cache to the individual processor cores accessing the cache.
    Type: Grant
    Filed: April 21, 2009
    Date of Patent: December 8, 2015
    Assignee: Empire Technology Development LLC
    Inventors: Thomas Martin Conte, Andrew Wolfe
  • Patent number: 9201655
    Abstract: Eliminating or reducing an operand line crossing penalty by performing an initial fetch for an operand from a data cache of a processor. The initial fetch is performed by allowing or permitting the initial fetch to occur unaligned with reference to a quadword boundary. A plurality of subsequent fetches for a corresponding plurality of operands from the data cache are performed wherein each of the plurality of subsequent fetches is aligned to any of a plurality of quadword boundaries to prevent each of a plurality of individual fetch requests from spanning a plurality of lines in the data cache. A steady stream of data is maintained by placing an operand buffer at an output of the data cache to store and merge data from the initial fetch and the plurality of subsequent fetches, and to return the stored and merged data to the processor.
    Type: Grant
    Filed: March 19, 2008
    Date of Patent: December 1, 2015
    Assignee: International Business Machines Corporation
    Inventors: Vimal M. Kapadia, Fadi Y. Busaba, Edward T. Malley, John G. Rell, Jr., Chung-Lung Kevin Shum
  • Patent number: 9195593
    Abstract: Systems and methods for utilizing memory version instructions and techniques in conjunction with garbage collection in a processor. A hardware-assisted garbage collection algorithm may be executed by a computing system to move live objects between memory regions. Special store instructions may be utilized to mark the live objects of each memory region that is about to be migrated. Mutators performing useful work may be configured to trap on a memory region which is marked for migration.
    Type: Grant
    Filed: January 15, 2015
    Date of Patent: November 24, 2015
    Assignee: Oracle International Corporation
    Inventor: Zoran Radovic
  • Patent number: 9195395
    Abstract: An apparatus, computer program product, and associated method/processing unit are provided for utilizing a memory subsystem including NAND flash memory and dynamic random access memory. Further included is a first circuit for receiving DDR signals and converting the DDR signals to SATA signals. The first circuit includes embedded dynamic random access memory. Also provided is a second circuit for receiving the SATA signals and converting the SATA signals to NAND flash signals. The second circuit is communicatively coupled to the first circuit via a first memory bus associated with a SATA protocol, the NAND flash memory via a second memory bus associated with a NAND flash protocol, and the dynamic random access memory.
    Type: Grant
    Filed: January 5, 2015
    Date of Patent: November 24, 2015
    Assignee: P4TENTS1, LLC
    Inventor: Michael S Smith
  • Patent number: 9189442
    Abstract: An apparatus and associated method/processing unit are provided for utilizing a memory subsystem including NAND flash memory and dynamic random access memory. Further included is a first circuit for receiving DDR signals and converting the DDR signals to SATA signals. The first circuit includes embedded dynamic random access memory. Also provided is a second circuit for receiving the SATA signals and converting the SATA signals to NAND flash signals. The second circuit is communicatively coupled to the first circuit via a first memory bus associated with a SATA protocol, the NAND flash memory via a second memory bus associated with a NAND flash protocol, and the dynamic random access memory. In operation, data is fetched using a time between an execution of a plurality of threads.
    Type: Grant
    Filed: January 5, 2015
    Date of Patent: November 17, 2015
    Assignee: P4TENTS1, LLC
    Inventor: Michael S Smith