Patents Examined by Shane M Thomas
  • Patent number: 7970997
    Abstract: A program section layout method capable of improving space efficiency of a cache memory. A grouping unit groups program sections into section groups so that the total size of the program sections composing each section group does not exceed cache memory size. A layout optimization unit optimizes the layout of section group storage regions by combining each section group and a program section that does not belong to any section groups or by combining section groups while keeping the ordering relations of the program sections composing each section group.
    Type: Grant
    Filed: December 23, 2004
    Date of Patent: June 28, 2011
    Assignee: Fujitsu Semiconductor Limited
    Inventor: Manabu Watanabe
  • Patent number: 7970980
    Abstract: A computer system includes at least one processor, multiple memory modules embodying a main memory, a communications medium for communicating data between the at least one processor and main memory, and memory access control logic which controls the routing of data and access to memory. The communications medium and memory access control logic are designed to accommodate a heterogenous collection of main memory configurations, in which at least one physical parameter is variable for different configurations. The bits of the memory address are mapped to actual memory locations by assigning fixed bit positions to the most critical physical parameters across multiple different module types, and assigning remaining non-contiguous bit positions to less critical physical parameters. In the preferred embodiment, the computer system employs a distributed memory architecture.
    Type: Grant
    Filed: December 15, 2004
    Date of Patent: June 28, 2011
    Assignee: International Business Machines Corporation
    Inventors: Philip Rogers Hillier, III, Joseph Allen Kirscht, Jamie Randall Kuesel
  • Patent number: 7966473
    Abstract: The invention concerns a method for read-addressing a site among a plurality of storage units using a coded address derived from an instruction. The method comprises the following steps: a) predicting (104) the storage unit corresponding to the site to be addressed; b) decoding (108) the address of the site to be addressed and determining (109) the storage unit to be addressed; c) managing (105) a potential read and rewrite conflict assuming that the predicted storage unit is the storage unit to be addressed; d) controlling (111) the addressing of the predicted storage unit at the end of the managing step (105); e) at the end of step b), determining (110) whether the storage unit to be addressed corresponds to the predicted storage unit; and f) if the storage unit to be addressed does not correspond to the predicted storage unit, managing (115) a possible read and rewrite conflict in the storage unit to be addressed and addressing the site of the storage unit to be addressed.
    Type: Grant
    Filed: April 17, 2002
    Date of Patent: June 21, 2011
    Assignees: STMicroelectronics S.A., Infineon Technologies AG
    Inventors: Jean-Paul Henriques, Fabrice Devaux
  • Patent number: 7966454
    Abstract: A data processing system enables global shared memory (GSM) operations across multiple nodes with a distributed EA-to-RA mapping of physical memory. Each node has a host fabric interface (HFI), which includes HFI windows that are assigned to at most one locally-executing task of a parallel job. The tasks perform parallel job execution, but map only a portion of the effective addresses (EAs) of the global address space to the local, real memory of the task's respective node. The HFI window tags all outgoing GSM operations (of the local task) with the job ID, and embeds the target node and HFI window IDs of the node at which the EA is memory mapped. The HFI window also enables processing of received GSM operations with valid EAs that are homed to the local real memory of the receiving node, while preventing processing of other received operations without a valid EA-to-RA local mapping.
    Type: Grant
    Filed: February 1, 2008
    Date of Patent: June 21, 2011
    Assignee: International Business Machines Corporation
    Inventors: Lakshimarayana B. Arimilli, Ravi K. Arimilli, Robert S. Blackmore, Chulho Kim, Ramakrishnan Rajamony, William J. Starke, Hanhong Xue
  • Patent number: 7958300
    Abstract: Systems and methods for operating upon a mobile communications device. A system and method can be used with data operations with respect to the mobile communications device's memory, wherein the memory has sectors. Data structures are used with the data operations to determine whether a sector contains valid data or to locate a record's pointer in the memory. The data structures can be used for such operations as record creation, record movement, recovery, etc.
    Type: Grant
    Filed: October 13, 2005
    Date of Patent: June 7, 2011
    Assignee: Research In Motion Limited
    Inventors: John F. A. Dahms, Anthony F. Scian, Michael J. Carmody
  • Patent number: 7958314
    Abstract: A method, system, and computer program product for target computer processor unit (CPU) determination during cache injection using I/O hub/chipset resources are provided. The method includes creating a cache injection indirection table on the input/output (I/O) hub or chipset. The cache injection indirection table includes fields for address or address range, CPU identifier, and cache type. In response to receiving an input/output (I/O) transaction, the hub/chipset reads the address in an address field of the I/O transaction, looks up the address in the cache injection indirection table, and injects the address and data of the I/O transaction to a target cache associated with a CPU as identified in the CPU identifier field when, in response to the look up, the address is present in the address field of the cache injection indirection table.
    Type: Grant
    Filed: December 18, 2007
    Date of Patent: June 7, 2011
    Assignee: International Business Machines Corporation
    Inventors: Thomas A. Gregg, Rajaram B. Krishnamurthy
  • Patent number: 7958301
    Abstract: A memory controller includes a page configure module that communicates with a memory array comprising B memory blocks each including P pages. The page configure module selectively configures memory cells in the P pages of each of the B memory blocks to store from 1 to T bits per cell. The page configure module also generates a memory map based on the configuration. B, P, and T are integers greater than 1. At least one of a write module selectively writes data to the memory array based on the memory map or a read module selectively reads data from the memory array based on the memory map.
    Type: Grant
    Filed: June 21, 2007
    Date of Patent: June 7, 2011
    Assignee: Marvell World Trade Ltd.
    Inventor: Pantas Sutardja
  • Patent number: 7958313
    Abstract: A method, system, and computer program product for target computer processor unit (CPU) determination during cache injection using input/output (I/O) adapter resources are provided. The method includes storing locations of cache lines for pinned or affinity scheduled processes in a table on an input/output (I/O) adapter. The method also includes setting a cache injection hint in an input/output (I/O) transaction when an address in the I/O transaction is found in the table. The cache injection hint is set for performing direct cache injection. The method further includes entering a central processing unit (CPU) identifier and cache type in the I/O transaction, and updating a cache by injecting data values of the I/O transaction into the cache as determined by the CPU identifier and the cache type associated with the address in the table.
    Type: Grant
    Filed: December 18, 2007
    Date of Patent: June 7, 2011
    Assignee: International Business Machines Corporation
    Inventors: Thomas A. Gregg, Rajaram B. Krishnamurthy
  • Patent number: 7953931
    Abstract: High endurance non-volatile memory devices (NVMD) are described. A high endurance NVMD includes an I/O interface, a NVM controller, a CPU along with a volatile memory subsystem and at least one non-volatile memory (NVM) module. The volatile memory cache subsystem is configured as a data cache subsystem. The at least one NVM module is configured as a data storage when the NVMD is adapted to a host computer system. The I/O interface is configured to receive incoming data from the host to the data cache subsystem and to send request data from the data cache subsystem to the host. The at least one NVM module may comprise at least first and second types of NVM. The first type comprises SLC flash memory while the second type MLC flash. The first type of NVM is configured as a buffer between the data cache subsystem and the second type of NVM.
    Type: Grant
    Filed: February 21, 2008
    Date of Patent: May 31, 2011
    Assignee: Super Talent Electronics, Inc.
    Inventors: I-Kang Yu, David Q. Chow, Charles C. Lee, Abraham Chih-Kang Ma, Ming-Shiang Shen
  • Patent number: 7953930
    Abstract: A memory card has a data scrambler that performs a data scrambling operation on data stored in the memory card according to a device ID associated with the memory card. The device ID is either set at the factory and permanently stored in the card, or configurable by a user or a host system.
    Type: Grant
    Filed: December 7, 2007
    Date of Patent: May 31, 2011
    Assignee: SanDisk Corporation
    Inventor: Steven S. Cheng
  • Patent number: 7949825
    Abstract: Disk drives are synchronized by a timing signal generated in a master disk drive. The timing signal is transmitted over a power distribution network common to the disk drives. A slave drive receives the timing signal and synchronizes at least one disk based on the timing signal.
    Type: Grant
    Filed: April 10, 2007
    Date of Patent: May 24, 2011
    Assignee: AT&T Intellectual Property I, LP
    Inventor: Michael Asher
  • Patent number: 7945761
    Abstract: A method is provided for creating and maintaining the validity of a cache group including one or more cache elements. Each of the cache elements corresponds to a different address space in a virtual memory of a computer system. Each of the cache elements include one or more caches that store mappings from virtual addresses to data or values that are functions of or dependent upon physical addresses that correspond to the virtual addresses. When there is an address space switch from a first address space to a second address space, the cache group is searched to find the cache element corresponding to the second address space, and that found cache element is made the current cache element for virtual memory access through the cache element. Changes in the page tables are also detected and reflected in the caches of the cache group to maintain the caches up-to-date.
    Type: Grant
    Filed: July 2, 2010
    Date of Patent: May 17, 2011
    Assignee: VMware, Inc.
    Inventors: Pratap Subrahmanyam, Vyacheslav Malyugin
  • Patent number: 7941619
    Abstract: A system for space-optimized backup set conversion may include a backup converter and a first sequence of backup images of a data source. Each backup image may be of a particular backup image type, such as a full image, a differential image, or an incremental image. The backup converter may be configured to convert the first sequence of backup images into a second sequence of backup images by converting a particular backup image of the first sequence into a transformed backup image of a different backup type. For example, a full image may be converted into either a differential image or an incremental image, and a differential image may be converted into an incremental image.
    Type: Grant
    Filed: November 18, 2004
    Date of Patent: May 10, 2011
    Assignee: Symantec Operating Corporation
    Inventor: Robert P. Rossi
  • Patent number: 7941603
    Abstract: An advanced processor comprises a plurality of multithreaded processor cores each having a data cache and instruction cache. A data switch interconnect is coupled to each of the processor cores and configured to pass information among the processor cores. A messaging network is coupled to each of the processor cores and a plurality of communication ports. In one aspect of an embodiment of the invention, the data switch interconnect is coupled to each of the processor cores by its respective data cache, and the messaging network is coupled to each of the processor cores by its respective message station. Advantages of the invention include the ability to provide high bandwidth communications between computer systems and memory in an efficient and cost-effective manner.
    Type: Grant
    Filed: November 30, 2009
    Date of Patent: May 10, 2011
    Assignee: NetLogic Microsystems, Inc.
    Inventor: David T. Hass
  • Patent number: 7934069
    Abstract: Embodiments include methods, apparatus, and systems for enabling and disabling cache in storage systems. One embodiment includes a method that changes a time period for delaying host requests received at a cache of a storage device and converts the storage device from a cache enabled state to a cache disabled state while the storage device is online.
    Type: Grant
    Filed: April 27, 2007
    Date of Patent: April 26, 2011
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Robert A Cochran, Erik A. Lipps, Ayman Abouelwafa
  • Patent number: 7930502
    Abstract: A disk array apparatus capable of effecting saving and operation of data through a simple construction. When a host computer sets “write inhibit” or “read/write inhibit” for an LDEV which is set on a first storage device, this setting is registered in an access attribute management table and is also reflected onto a migration management table. A migration control program moves the LDEV for which access limitation has been set to a lower-speed (lower-performance) second storage device or to an external storage device. When the access limitation is released, the moved LDEV is restored to the first storage device from the storage device to which the LDEV has been moved. By performing migration control in interlocking relation to control of access attributes, it is possible to obtain a simple data saving function and data management function.
    Type: Grant
    Filed: January 6, 2010
    Date of Patent: April 19, 2011
    Assignee: Hitachi, Ltd.
    Inventors: Akinobu Shimada, Yasuaki Nakamura
  • Patent number: 7917686
    Abstract: Data files are assigned addresses within one or more logical blocks of a continuous logical address space interface (LBA interface) of a usual type of flash memory system with physical memory cell blocks. This assignment may be done by the host device which typically, but not necessarily, generates the data files. The number of logical blocks containing data of any one file is controlled in a manner that reduces the amount of fragmentation of file data within the physical memory blocks, thereby to maintain good memory performance. The host may configure the logical blocks of the address space in response to learning the physical characteristics of a memory to which it is connected.
    Type: Grant
    Filed: December 26, 2006
    Date of Patent: March 29, 2011
    Assignee: SanDisk Corporation
    Inventors: Alan W. Sinclair, Barry Wright
  • Patent number: 7908439
    Abstract: Disclosed are a method and apparatus for replacing pre-fetched data in a pre-fetch cache. In one embodiment, each line of the pre-fetch cache will be accessed at most M times. A line accessed M times can be evicted from the cache without any performance loss. In this embodiment, a counter is added to each pre-fetch data line to track how many times it has been accessed. In another embodiment, a displacement bit is added to each pre-fetch data line, and when a defined portion of the data line is accessed, this bit is set to a given value, indicating that the line can be evicted.
    Type: Grant
    Filed: June 25, 2007
    Date of Patent: March 15, 2011
    Assignee: International Business Machines Corporation
    Inventors: Jose R. Brunheroto, Valentina Salapura
  • Patent number: 7904636
    Abstract: A memory and storage device includes a data management system for transferring data units referenced by logical addresses. The data management system maps the logical addresses to sequential virtual addresses according to the order the data units are received. The data management system also maps the sequential virtual addresses to sequential physical addresses in a memory block of a memory device. Additionally, the data management system can modify a data unit in the memory block by copying any other valid data units in the memory block to another memory block and writing the modified data unit into this other memory block. The data management system writes the valid data units and the modified data unit into sequential physical addresses of this other memory block.
    Type: Grant
    Filed: February 21, 2006
    Date of Patent: March 8, 2011
    Assignee: STEC, Inc.
    Inventor: Chien-Hung Wu
  • Patent number: 7904639
    Abstract: A system including a memory system and a memory controller is connected to a host system. The memory system has at least one memory device storing data. The controller translates the requests from the host system to one or more separatable commands interpretable by the at least one memory device. Each command has a modular structure including an address identifier for one of the at least one memory devices and a command identifier representing an operation to be performed by the one of the at least one memory devices. The at least one memory device and the controller are in a series-connection configuration for communication such that only one memory device is in communication with the controller for input into the memory system. The memory system can include a plurality of memory devices connected to a common bus.
    Type: Grant
    Filed: August 17, 2007
    Date of Patent: March 8, 2011
    Assignee: Mosaid Technologies Incorporated
    Inventors: Jin-Ki Kim, HakJune Oh, Hong Beom Pyeon