Patents Examined by Andrew Russell
  • Patent number: 9092150
    Abstract: A method includes determining, based on an indication from a host device operatively coupled to a data storage device that includes a controller, a non-volatile memory including a hibernate area, a volatile memory, a non-volatile memory interface, and a volatile memory interface, that the data storage device is to enter a low-power state. The method includes, in response to determining that the data storage device is to enter a low-power state, performing a data save operation. The data save operation bypasses the non-volatile memory interface and the volatile memory interface and copies data from the volatile memory of the data storage device to the hibernate area of the non-volatile memory of the data storage device.
    Type: Grant
    Filed: December 22, 2011
    Date of Patent: July 28, 2015
    Assignee: SANDISK TECHNOLOGIES INC.
    Inventors: Daniel Zvi Yerushalmi, Yaniv Iarovici
  • Patent number: 9086920
    Abstract: In a device for managing data buffers in a memory space distributed over a plurality of memory elements, the memory space is allocatable by memory pages, each buffer including one or more memory pages. The buffers are usable by at least one processing unit for the execution of an application, the application being executed by a plurality of processing units executing tasks in parallel. The memory elements are accessible in parallel by the processing units. The device includes means for allocating buffers to the tasks during the execution of the application and means for managing access rights to the buffers. The means for managing the access rights to the buffers include means for managing access rights to the pages in a given buffer, to verify that writing to a given page does not modify data currently being read from the page or that reading from a given page does not access data currently being written to the page, in such a way as to share the buffer between unsynchronized tasks.
    Type: Grant
    Filed: October 20, 2009
    Date of Patent: July 21, 2015
    Assignee: Commissariat A L'Energie Atomique et aux Energies Alternatives
    Inventors: Raphael David, Nicolas Ventroux
  • Patent number: 9086977
    Abstract: Cache storage may be partitioned in a manner that dedicates a first portion of the cache to lockstep mode execution, while providing a second (or remaining) portion for non-lockstep execution mode(s). For example, in embodiments that employ cache storage organized as a set associative cache, partition may be achieved by reserving a subset of the ways in the cache for use when operating in lockstep mode. Some or all of the remaining ways are available for use when operating in non-lockstep execution mode(s). In some embodiments, a subset of the cache sets, rather than cache ways, may be reserved in a like manner, though for concreteness, much of the description that follows emphasizes way-partitioned embodiments.
    Type: Grant
    Filed: April 19, 2011
    Date of Patent: July 21, 2015
    Assignee: Freescale Semiconductor, Inc.
    Inventor: William C. Moyer
  • Patent number: 9081628
    Abstract: In one embodiment, a method includes maintaining thread analysis metadata for a multi-threaded application. The metadata may include a thread vector clock for threads of the application and a synchronization vector clock for synchronization objects of the application. In addition, an initialization log and an access log can be generated and maintained for memory accesses occurring during execution of the application. From this metadata, it may be determined if an access to a memory element by a thread is a potential invalid access for a different scheduling of the application. Other embodiments are described and claimed.
    Type: Grant
    Filed: May 27, 2011
    Date of Patent: July 14, 2015
    Assignee: Intel Corporation
    Inventor: Zhiqiang Ma
  • Patent number: 9058883
    Abstract: To record data in a flash memory, upon detecting that a current destination memory block is full, a control apparatus records data in a destination memory block one block by one block, with “in-advance” data erasure of the next memory block and by determining if data erasure of the next memory block is successful. When data erasure of the next memory block fails, such memory block is designated as broken, and such memory block is excluded from a group of blocks to be used as recording destination. After determining the data erasure result of a yet-next memory block is successful, the required data is copied to the yet-next memory block. Therefore, even when one of the blocks is broken, a sequential data recording in the flash memory is performed without increasing the number of data copy operations between blocks.
    Type: Grant
    Filed: February 21, 2012
    Date of Patent: June 16, 2015
    Assignee: DENSO CORPORATION
    Inventors: Nobuya Uematsu, Tsuneo Yamamoto
  • Patent number: 9058280
    Abstract: A hybrid drive is disclosed comprising a head actuated over a disk comprising a plurality of data tracks, and a non-volatile semiconductor memory (NVSM). An access command is received from a host, the access command identifying at least one target logical block address (LBA). When the target LBA is mapped to a target data track on the disk, the head is positioned over the target data track and an accumulated access time is updated for the target LBA. The accumulated access time is compared to a first threshold, and the target LBA is migrated to the NVSM in response to the comparison.
    Type: Grant
    Filed: May 11, 2011
    Date of Patent: June 16, 2015
    Assignee: Western Digital Technologies, Inc.
    Inventors: William B. Boyle, Mei-Man L. Syu, Virgil V. Wilkins
  • Patent number: 9055114
    Abstract: A system may include receiving a packet, of a packet stream, including control tags in a header portion of the packet and classifying each of the control tags into a category selected from a set of possible categories. The set of possible categories may include an unambiguous interposable (UI) category that is assigned to a control tag that corresponds to an unambiguous parsing interpretation and that is interposable within a sequence of the control tags, and an ambiguous interposable (AI) category that is assigned to a control tag in which the control tag has an ambiguous parsing interpretation and in which the control tag is interposable within the sequence of the control tags. The method may further include determining parsing operations to perform for the packet based on the classified categories of the control tags and based on the packet stream of the packet.
    Type: Grant
    Filed: December 22, 2011
    Date of Patent: June 9, 2015
    Assignee: Juniper Networks, Inc.
    Inventors: David Talaski, Avanindra Godbole, Jean Marc Frailong, Fanyun Kong
  • Patent number: 9032183
    Abstract: Apparatus and method for placing data based on the content of the data in random access memory such that indexing operations are not required. A strong (e.g., cryptographic) hash is applied to a data element resulting in a signature. A weaker hash function is then applied to the signature to generate a storage location in memory for the data element. The weaker hash function assigns multiple data elements to the same storage location while the signature comprises a unique identifier for locating a particular data element at this location. In one embodiment a plurality of weak hash functions are applied successively to increase storage space utilization. In other embodiments, the assigned storage location can be determined by one or more attributes of the data element and/or the storage technology, e.g, long-lived versus short-lived data and/or different regions of the memory having different performance (e.g., access latency memory lifetime) characteristics.
    Type: Grant
    Filed: February 24, 2012
    Date of Patent: May 12, 2015
    Assignee: SimpliVity Corp.
    Inventors: John Michael Czerkowicz, Arthur J. Beaverson, Steven Bagby, Sowmya Manjanatha
  • Patent number: 9003100
    Abstract: A reference frequency setting method of a flash memory storage apparatus is provided. The flash memory storage apparatus includes a flash memory module, a storage unit, and an oscillator circuit without a crystal. The reference frequency setting method includes following steps. Whether a setting code is stored in the flash memory module or the storage unit is determined, wherein the setting code includes information of a reference frequency. If the setting code is stored in the flash memory module, the setting code is read to allow the oscillator circuit to generate the reference frequency according to the setting code. A memory controller and a flash memory storage apparatus using the reference frequency setting method are also provided.
    Type: Grant
    Filed: May 9, 2011
    Date of Patent: April 7, 2015
    Assignee: Phison Electronics Corp.
    Inventors: Chih-Ming Chen, An-Chung Chen, Wen-Lung Cheng
  • Patent number: 8959290
    Abstract: Methods and apparatus are provided for reusing snoop responses and data phase results in a cache controller. A cache controller receives a broadcast combined snoop response from a bus controller, wherein the broadcast combined snoop response corresponds to an incoming bus transaction BTR1 corresponding to a cache transaction CTR1 for an entry in at least one cache and wherein the combined snoop response is a combination of at least one snoop response from a plurality of cache controllers; receives broadcast cache line data from a source cache as instructed by the bus controller for the entry during a data phase; and processes a subsequent cache transaction CTR2 for the entry based on one or more of the broadcast combined snoop response and the broadcast cache line data.
    Type: Grant
    Filed: February 21, 2012
    Date of Patent: February 17, 2015
    Assignee: LSI Corporation
    Inventors: Vidyalakshmi Rajagopalan, Archna Rai, Sharath Kashyap, Anuj Soni
  • Patent number: 8949512
    Abstract: Systems and methods are disclosed for trim token journaling. A device can monitor the order in which trim commands and write commands are applied to an indirection system stored in a volatile memory of the device. In some embodiments, the device can directly write to a page of an NVM with a trim token that indicates that a LBA range stored in the page has been trimmed. In other embodiments, a device can add pending trim commands to a trim buffer stored in the volatile memory. Then, when the trim buffer reaches a pre-determined threshold or a particular trigger is detected, trim tokens associated with all of the trim commands stored in the trim buffer can be written to the NVM. Using these approaches, the same sequence of events that was applied to the indirection system during run-time can be applied during device boot-up.
    Type: Grant
    Filed: February 17, 2012
    Date of Patent: February 3, 2015
    Assignee: Apple Inc.
    Inventors: Andrew W. Vogan, Matthew J. Byom, Daniel J. Post
  • Patent number: 8904137
    Abstract: A system and method for improving performance within a storage system employing deduplication techniques using address manipulation are disclosed. A data segment within a storage object is identified from among a number of data segments within a storage object. The data segment represents data stored in a storage device. Some or all of the data represented by the data segment is stored in a data block that is associated with the data segment. The storage object is then compacted. Compaction includes reordering data segments, including the identified data segment, by performing address manipulation on a data block address of the data block (e.g., an address of the data block within the storage device). The reordering of the data segments changes the order of the data segments within the storage object.
    Type: Grant
    Filed: May 12, 2011
    Date of Patent: December 2, 2014
    Assignee: Symantec Corporation
    Inventors: Xianbo Zhang, Wenxin Wang
  • Patent number: 8892830
    Abstract: Exemplary method, system, and computer program product embodiments for changing ownership of cartridges, such as virtual cartridges between remotely located virtual tape libraries, are provided. In one embodiment, by way of example only, processes and protocols for the changing ownership of the cartridges are controlled from a primary location to a secondary location. The production site is moved for the cartridges. The ownership of the cartridges is waived. Access is allowed to the cartridges. Additional data is written and replicated using resources of the cartridges.
    Type: Grant
    Filed: February 27, 2013
    Date of Patent: November 18, 2014
    Assignee: International Business Machines Corporation
    Inventors: Shay H. Akirav, Aviv Caro, Ofer Leneman, Itay Maoz, Uri Shmueli, Tzafrir Z. Taub
  • Patent number: 8880831
    Abstract: A method and apparatus for training read latency of a memory are disclosed. A memory controller includes a command FIFO configured to convey commands to a memory, a data queue coupled to receive data from the memory, and a register configured to provide a value indicative of a number of cycles of a first clock signal after which data is valid. During a startup routine, the memory controller is configured to compare data received by the data queue to a known data pattern after a specified number of cycles of the first clock signal have elapsed. The memory controller is further to configured to decrement the first value and repeat conveying and comparing if the data received matches the data pattern. If the received data does not match the data pattern for any attempted read of the memory, the memory controller is configured to program a second value into the register.
    Type: Grant
    Filed: May 12, 2011
    Date of Patent: November 4, 2014
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Guhan Krishnan, Jonathan M. Owen, Brian Amick, Hanwoo Cho
  • Patent number: 8874869
    Abstract: In a semiconductor memory device, an update data control circuit is provided, which selectively couples a physical address input data line or an effective address input data line to a common input data line coupled to a physical address cell that stores a physical address page number. A control terminal of an update circuit of the physical address cell is coupled to a page size cell that stores page size information via an update control circuit, to control a write port of the physical address cell with the page size cell.
    Type: Grant
    Filed: February 1, 2012
    Date of Patent: October 28, 2014
    Assignee: Panasonic Corporation
    Inventor: Tsuyoshi Koike
  • Patent number: 8850139
    Abstract: Exemplary system, and computer program product embodiments for changing ownership of cartridges, such as virtual cartridges between remotely located virtual tape libraries, are provided. In one embodiment, by way of example only, processes and protocols for the changing ownership of the cartridges are controlled from a primary location to a secondary location. The production site is moved for the cartridges. The ownership of the cartridges is waived. Access is allowed to the cartridges. Additional data is written and replicated using resources of the cartridges.
    Type: Grant
    Filed: May 11, 2011
    Date of Patent: September 30, 2014
    Assignee: International Business Machines Corporation
    Inventors: Shay H. Akirav, Aviv Caro, Ofer Leneman, Itay Maoz, Uri Shmueli, Tzafrir Z. Taub
  • Patent number: 8843709
    Abstract: A method for performing dynamic configuration includes: freezing a bus between a dynamic configurable cache and a plurality of cores/processors by rejecting a request from any of the cores/processors during a bus freeze period, wherein the dynamic configurable cache is implemented with an on-chip memory; and adjusting a size of a portion of the dynamic configurable cache, wherein the portion of the dynamic configurable cache is capable of caching/storing information for one of the cores/processors. An associated apparatus is also provided. In particular, the apparatus includes the plurality of cores/processors, the dynamic configurable cache, and a dynamic configurable cache controller, and can operate according to the method.
    Type: Grant
    Filed: February 24, 2012
    Date of Patent: September 23, 2014
    Assignee: Mediatek Inc.
    Inventor: You-Ming Tsao
  • Patent number: 8812783
    Abstract: An apparatus comprising first holding units each of which includes first nodes connected in series and shifts first data in each first node in a first direction, second holding units each of which includes second nodes connected in series and shifts second data in each second node in a second direction is provided. Each first node corresponds to at least one of the second nodes. The apparatus further comprises an operation unit which executes, for a node of interest which is a first node, an operation using first data in the node of interest, and second data in at least one of the second nodes to which the node of interest corresponds, and an input unit which inputs, in parallel, the first data to at least two out of the first holding units, and serially inputs the second data to at least two out of the second holding units.
    Type: Grant
    Filed: May 11, 2011
    Date of Patent: August 19, 2014
    Assignee: Canon Kabushiki Kaisha
    Inventor: Tadayuki Ito
  • Patent number: 8799750
    Abstract: A convolutional interleaver uses local memory of a first IC in combination with burst-type memory of a second IC. When a burst of data is read from memory of the second IC, one data value is provided to a data output and the remaining values are temporarily stored in local memory. After the memory of the second IC is initially filled, burst WRITE and burst READ operations provide efficient data transmission between the ICs.
    Type: Grant
    Filed: May 9, 2011
    Date of Patent: August 5, 2014
    Assignee: Xilinx, Inc.
    Inventor: Hemang M. Parekh
  • Patent number: 8706954
    Abstract: A terminal apparatus including a non-volatile memory for which writing is performed in units of blocks; and a control unit configured to perform a first method of managing bad blocks in the non-volatile memory with respect to blocks corresponding to an information management table in a file system of the non-volatile memory, and to perform a second method of managing bad blocks in the non-volatile memory with respect to blocks corresponding to user data in the file system.
    Type: Grant
    Filed: May 11, 2011
    Date of Patent: April 22, 2014
    Assignees: Sony Corporation, Sony Mobile Communications AB
    Inventors: Katsumi Aoyagi, Rutger Ljungqvist, Hans Wachtmeister, Haekan Palm, Kenji Takao, Masaya Takahashi, Yoshiyuki Hama, Yimin Li, Toshihisa Sanbommatsu, Tomohiro Ichikawa