Patents Examined by Edmund Kwong
  • Patent number: 9298635
    Abstract: A storage device includes a plurality of magnetic disk devices each having a write cache, a processor unit that redundantly stores data, a rebuild execution control unit that performs a rebuild process, a write cache control unit that, at the time of the rebuild process, enables a write cache of a storage device that stores rebuilt data, and a rebuild progress management unit that is configured using a nonvolatile memory and manages progress information of the rebuild process. In the case where power discontinuity is caused during the rebuild process and then power is restored, the rebuild execution control unit calculates an address that is before an address of last written rebuilt data by an amount corresponding to the capacity of the write cache based on the progress information of the rebuild process managed by the progress management unit and resumes the rebuild process from that calculated address.
    Type: Grant
    Filed: June 22, 2011
    Date of Patent: March 29, 2016
    Assignee: NEC CORPORATION
    Inventor: Takashi Iida
  • Patent number: 9292424
    Abstract: A memory controller includes: a determination part configured to determine a type of a DIMM having a different address line topology based on SPD; a slew rate setting part configured to set a slew rate of an address signal based on the type of the DIMM determined by the determination part; and a delay setting part configured to set a data delay amount when reading/writing data.
    Type: Grant
    Filed: July 9, 2013
    Date of Patent: March 22, 2016
    Assignee: FUJITSU LIMITED
    Inventors: Hideyuki Sakamaki, Hidekazu Osano, Hiroshi Nakayama, Kazuya Takaku, Masanori Higeta
  • Patent number: 9256548
    Abstract: In one embodiment, rule-based virtual address translation is performed for accessing data (e.g., reading and/or writing data) typically stored in different manners and/or locations among one or more memories, such as, but not limited to, in packet switching devices. A virtual address is matched against a set of predetermined rules to identify one or more storing description parameters. These storing description parameters determine in which particular memory unit(s) and/or how the data is stored. Thus, different portions of a data structure (e.g., table) can be stored in different memories and/or using different storage techniques. The virtual address is converted to a lookup address based on the identified storing description parameter(s). One or more read or write operations in one or more particular memory units is performed based on the lookup address said converted from the virtual address.
    Type: Grant
    Filed: November 29, 2012
    Date of Patent: February 9, 2016
    Assignee: Cisco Technology, Inc.
    Inventors: Donald Edward Steiss, Marvin Wayne Martinez, Jr., John H. W. Bettink, John C. Carney, Mark Warden Hervin
  • Patent number: 9251103
    Abstract: The present application is directed to a memory-access-multiplexing memory controller that can multiplex memory accesses from multiple hardware threads, cores, and processors according to externally specified policies or parameters, including policies or parameters set by management layers within a virtualized computer system. A memory-access-multiplexing memory controller provides, at the physical-hardware level, a basis for ensuring rational and policy-driven sharing of the memory-access resource among multiple hardware threads, cores, and/or processors.
    Type: Grant
    Filed: August 8, 2012
    Date of Patent: February 2, 2016
    Assignee: VMware, Inc.
    Inventor: Bhavesh Mehta
  • Patent number: 9244852
    Abstract: A method for recovering from uncorrected memory errors may include receiving, at an operating system, a correctable error (CE) associated with a first memory page. The correctable error is marked in a page table entry describing the first memory page. The first memory page is then migrated, by the operating system, to a second memory page based on the received correctable error.
    Type: Grant
    Filed: May 6, 2013
    Date of Patent: January 26, 2016
    Assignee: GLOBALFOUNDRIES INC.
    Inventor: Aravinda Prasad
  • Patent number: 9223517
    Abstract: A method, system, and computer program product for providing, via a provisioning engine, a scalable set of indexed key-value pairs enabled to store objects in a data storage environment; wherein the data representing the objects is enabled to be spread across arrays in the data storage environment; wherein additional arrays are enabled to be added to the data storage environment and included in the indexed key-value pairs; wherein the data stored across the arrays may be balanced.
    Type: Grant
    Filed: May 3, 2013
    Date of Patent: December 29, 2015
    Assignee: EMC Corporation
    Inventors: Shashwat Srivastav, Vishrut Shah, Sriram Sankaran, Jun Luo, Chen Wang, Huapeng Yuan, Subba R. Gaddamadugu, Qi Zhang, Jie Song, Andrew D. Robertson, Peter M. Musial
  • Patent number: 9208089
    Abstract: An information handling system (IHS) includes an operating system with a release-behind component that determines which file pages to release from a file cache in system memory. The release-behind component employs a history buffer to determine which file pages to release from the file cache to create room for a current page access. The history buffer stores entries that identify respective pages for which a page fault occurred. For each identified page, the history buffer stores respective repage information that indicates if a repage fault occurred for such page. The release-behind component identifies a candidate previous page for release from the file cache. The release-behind component checks the history buffer to determine if a repage fault occurred for that entry. If so, then the release-behind component does not discard the candidate previous page from the cache. Otherwise, the release-behind component discards the candidate previous page if a repage fault occurred.
    Type: Grant
    Filed: December 11, 2013
    Date of Patent: December 8, 2015
    Assignee: International Business Machines Coporation
    Inventors: Matthew Accapadi, Grover C Davidson, Dirk Michel, Bret R Olszewski
  • Patent number: 9208099
    Abstract: A controller receives a request to perform a release space operation. A determination is made that a new discard scan has to be performed on a cache, in response to the received request to perform the release space operation. A determination is made as to how many task control blocks are to be allocated to the perform the new discard scan, based on how many task control blocks have already been allocated for performing one or more discard scans that are already in progress.
    Type: Grant
    Filed: August 8, 2012
    Date of Patent: December 8, 2015
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Michael T. Benhase, Lokesh M. Gupta
  • Patent number: 9195601
    Abstract: An information handling system (IHS) includes an operating system with a release-behind component that determines which file pages to release from a file cache in system memory. The release-behind component employs a history buffer to determine which file pages to release from the file cache to create room for a current page access. The history buffer stores entries that identify respective pages for which a page fault occurred. For each identified page, the history buffer stores respective repage information that indicates if a repage fault occurred for such page. The release-behind component identifies a candidate previous page for release from the file cache. The release-behind component checks the history buffer to determine if a repage fault occurred for that entry. If so, then the release-behind component does not discard the candidate previous page from the cache. Otherwise, the release-behind component discards the candidate previous page if a repage fault occurred.
    Type: Grant
    Filed: November 26, 2012
    Date of Patent: November 24, 2015
    Assignee: International Business Machines Corporation
    Inventors: Mathew Accapadi, Grover C Davidson, II, Dirk Michel, Bret R Olszewski
  • Patent number: 9183091
    Abstract: According to one configuration, a memory system includes a configuration manager and multiple memory devices. The configuration manager includes status detection logic, retrieval logic, and configuration management logic. The status detection logic receives notification of a failed attempt by a first memory device to be initialized with custom configuration settings stored in the first memory device. In response to the notification, the retrieval logic retrieves a backup copy of configuration settings information from a second memory device in the memory system. The configuration management logic utilizes the backup copy of the configuration settings information retrieved from the second memory device to initialize the first memory device.
    Type: Grant
    Filed: September 27, 2012
    Date of Patent: November 10, 2015
    Assignee: Intel Corporation
    Inventors: Ning Wu, Robert E. Frickey, Hanmant P. Belgal, Xin Guo
  • Patent number: 9176873
    Abstract: A semiconductor memory device is operated by, inter alia, performing least significant bit programs for pages in a first page group, performing least significant bit programs for pages in a second page group, and performing most significant bit programs for the pages in the first page group. The distance between the second page group and the common source line is greater than that between the first page group and the common source line.
    Type: Grant
    Filed: December 19, 2012
    Date of Patent: November 3, 2015
    Assignee: SK Hynix Inc.
    Inventors: Yong Dae Park, Eun Seok Choi, Jung Ryul Ahn, Se Hoon Kim, In Geun Lim, Jung Seok Oh
  • Patent number: 9170748
    Abstract: A method performed in a network storage system, the method including receiving a plurality of data blocks at a secondary storage subsystem from a primary storage subsystem, generating a first log that includes a first plurality of entries, one entry for each of the data blocks, in which each entry of the first plurality of entries includes a name for a respective data block and a fingerprint of the respective data block, receiving metadata at the secondary storage subsystem from the primary storage subsystem, the metadata describing relationships between the plurality of blocks and a plurality of files, generating a second log that includes a second plurality of entries, and merging the first log with the second log to generate a change log.
    Type: Grant
    Filed: October 8, 2014
    Date of Patent: October 27, 2015
    Assignee: NetApp, Inc.
    Inventors: Bharadwaj Vellore Ramesh, Venkata Vijay Chaitanya Challapalli, Rohini Raghuwanshi, Praveen Killamsetti, Sudhanshu Gupta
  • Patent number: 9165637
    Abstract: A method of operating a volatile memory device includes storing address information of weak cell rows. According to some examples, after writing to a weak cell row, a refresh operation is performed on the weak cell row within a predetermined time. According to some examples, the writing operation to a weak cell row may be performed with a longer write recovery time than a write recovery time to normal cell rows.
    Type: Grant
    Filed: December 19, 2012
    Date of Patent: October 20, 2015
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Sang-Yun Kim, Jong-Pil Son, Su-A Kim, Chul-Woo Park, Hong-Sun Hwang
  • Patent number: 9110789
    Abstract: A method of applying an address space to data storage in a non-volatile solid-state storage is provided. The method includes receiving a plurality of portions of user data for storage in the non-volatile solid-state storage and assigning to each successive one of the plurality of portions of user data one of a plurality of sequential, nonrepeating addresses of an address space. The address range of the address space exceeds a maximum number of addresses expected to be applied during a lifespan of the non-volatile solid-state storage. The method includes writing each of the plurality of portions of user data to the non-volatile solid-state storage such that each of the plurality of portions of user data is identified and locatable for reading via the one of the plurality of sequential, nonrepeating addresses of the address space.
    Type: Grant
    Filed: October 20, 2014
    Date of Patent: August 18, 2015
    Assignee: Pure Storage, Inc.
    Inventors: John Hayes, Shantanu Gupta, John Davis, Brian Gold, Zhangxi Tan
  • Patent number: 9086975
    Abstract: A coherent attached processor proxy (CAPP) of a primary coherent system receives a memory access request from an attached processor (AP) and an expected coherence state of a target address of the memory access request with respect to a cache memory of the AP. In response, the CAPP determines a coherence state of the target address and whether or not the expected state matches the determined coherence state. In response to determining that the expected state matches the determined coherence state, the CAPP issues a memory access request corresponding to that received from the AP on a system fabric of the primary coherent system. In response to determining that the expected state does not match the coherence state determined by the CAPP, the CAPP transmits a failure message to the AP without issuing on the system fabric a memory access request corresponding to that received from the AP.
    Type: Grant
    Filed: February 26, 2013
    Date of Patent: July 21, 2015
    Assignee: International Business Machines Corporation
    Inventors: Bartholomew Blaner, Charles Marino, Michael S. Siegel, William J. Starke, Jeff A. Stuecheli
  • Patent number: 9086950
    Abstract: A bitmask array is implemented as a two dimensional bit array where each bit represents an allocated/free cell of the heap. Groups of bits of the bitmask array are assigned to implement commonly sized memory cell allocation requests. The heap manager keeps track of allocations by keeping separate lists of which groups are being used to implement commonly sized memory cell allocations requests by maintaining linked lists according to the number of cells allocated per request. Each list contains a list of the bit groups that have been used to provide allocations for particularly sized requests. By maintaining lists based on allocation size, the heap manager is able to cause new allocation requests to be matched up with previously retired allocations of the same size. Memory may be dynamically allocated between lists of differently sized memory requests.
    Type: Grant
    Filed: September 26, 2012
    Date of Patent: July 21, 2015
    Assignee: AVAYA INC.
    Inventor: Hamid Assarpour
  • Patent number: 9075751
    Abstract: Generally, this disclosure provides methods and systems for secure data protection with improved read-only memory locking during system pre-boot including protection of Advanced Configuration and Power Interface (ACPI) tables. The methods may include selecting a region of system memory to be protected, the selection occurring in response to a system reset state and performed by a trusted control block (TCB) comprising a trusted basic input/output system (BIOS); programming an address decoder circuit to configure the selected region as read-write; moving data to be secured to the selected region; programming the address decoder circuit to configure the selected region as read-only; and locking the read-only configuration in the address decoder circuit.
    Type: Grant
    Filed: August 9, 2012
    Date of Patent: July 7, 2015
    Assignee: Intel Corporation
    Inventors: Palsamy Sakthikumar, Vincent J. Zimmer, Robert C. Swanson, Eswaramoorthi Nallusamy
  • Patent number: 9069674
    Abstract: A coherent attached processor proxy (CAPP) of a primary coherent system receives a memory access request from an attached processor (AP) and an expected coherence state of a target address of the memory access request with respect to a cache memory of the AP. In response, the CAPP determines a coherence state of the target address and whether or not the expected state matches the determined coherence state. In response to determining that the expected state matches the determined coherence state, the CAPP issues a memory access request corresponding to that received from the AP on a system fabric of the primary coherent system. In response to determining that the expected state does not match the coherence state determined by the CAPP, the CAPP transmits a failure message to the AP without issuing on the system fabric a memory access request corresponding to that received from the AP.
    Type: Grant
    Filed: November 27, 2012
    Date of Patent: June 30, 2015
    Assignee: International Business Machines Corporation
    Inventors: Bartholomew Blaner, Charles Marino, Michael S. Siegel, William J. Starke, Jeff A. Stuecheli
  • Patent number: 9058281
    Abstract: A tiered memory system includes a memory controller for a primary memory and a secondary memory, where the secondary memory is used as a cache for the primary memory. The memory controller is configured to cause redundant data that is stored in the primary memory of the memory system to be stored in first memory locations of the secondary memory. The controller causes data that is not stored in the primary memory to be stored in second memory locations of the secondary memory. The second memory locations have at least one of lower bit error rate and higher access speed than the first memory locations.
    Type: Grant
    Filed: June 1, 2012
    Date of Patent: June 16, 2015
    Assignee: SEAGATE TECHNOLOGY LLC
    Inventors: Ryan James Goss, David Scott Seekins, Mark Allen Gaertner
  • Patent number: 9047225
    Abstract: An improved technique for managing data replacement in a cache dynamically selects a data replacement protocol from among multiple candidates based on which data replacement protocol produces the greatest cache hit rate. The technique includes selecting one of multiple data replacement protocols using a random selection process that can be biased to favor the selection of certain protocols over others. Data are evicted from the cache using the selected data replacement protocol, and the cache hit rate is monitored. The selected data replacement protocol is then rewarded in response to the detected cache hit rate. The selection process is repeated, and a newly selected data replacement protocol is put into use. Operation tends to converge on an optimal data replacement protocol that best suits the application and current operating environment of the cache.
    Type: Grant
    Filed: September 27, 2012
    Date of Patent: June 2, 2015
    Assignee: EMC Corporation
    Inventor: T. David Evans