Translation Tables (e.g., Segment And Page Table Or Map) Patents (Class 711/206)
  • Patent number: 8924832
    Abstract: A data storage system configured to efficiently search and update system data is disclosed. In one embodiment, the data storage system can attempt to correct errors in retrieved data configured to index system data. Metadata stored along with user data in a memory location can be configured to indicate a logical address associated in a logical-to-physical location mapping with a physical address at which user data and metadata are stored. The data storage system can generate modified versions of logical address indicated by the metadata and determine whether such modified versions match the physical address in the logical-to-physical mapping. Modified versions of the logical address can be generated by flipping one or more bits in the logical address indicated by the metadata. Efficiency can be increased and improved performance can be attained.
    Type: Grant
    Filed: June 26, 2012
    Date of Patent: December 30, 2014
    Assignee: Western Digital Technologies, Inc.
    Inventor: Johnny A. Lam
  • Patent number: 8924684
    Abstract: Approaches are described for reducing the number of memory address cache (e.g. TLB) flushes that need to be performed during the course of performing virtualized I/O. A device driver residing in a host domain registers a CPU that will be used for I/O processing and requests the hypervisor to pre-allocate a number of slots in the page tables to map memory pages during I/O operations. Upon receiving an I/O operation, when memory needs to be mapped, the driver provides the hypervisor with information about the registered CPU. The hypervisor uses the pre-allocated page table slots to create the new mapping and flushes the TLB cache corresponding to the CPU that will perform the I/O. The TLB cache belonging to other CPUs may not need to be flushed. The host driver ensures that the mapped memory page is used exclusively on the CPU or performs additional TLB flushes.
    Type: Grant
    Filed: June 13, 2012
    Date of Patent: December 30, 2014
    Assignee: Amazon Technologies, Inc.
    Inventor: Pradeep Vincent
  • Patent number: 8924624
    Abstract: An information processing device includes: a data transferring unit configured to directly transfer data to a first memory area allocated to a virtual machine from an input/output device for controlling a data input/output to/from an external device by mutually translating between an address of the first memory area allocated to the virtual machine and an address of a second memory area that is a real memory of the first memory area; a detecting unit configured to detect the data directly transferred from the input/output device to the first memory area allocated to the virtual machine; a registering unit configured to generate update information about the first memory area changed using the detected data and to store the update information in a first storing unit when the detected data satisfies a predetermined condition; and an outputting unit configured to output the update information.
    Type: Grant
    Filed: December 12, 2011
    Date of Patent: December 30, 2014
    Assignee: Fujitsu Limited
    Inventor: Takashi Miyoshi
  • Patent number: 8924359
    Abstract: Various systems and methods for cooperative tiering between an application and a storage device. One method can include receiving information from the application where the information identifies a storage object and identifies a location in a storage device. The location identifies one or more tiers of a plurality of tiers included in the storage device, and the storage object is assigned to the one or more tiers. The method also involves detecting whether the storage object is stored in the one or more tiers. If not, the storage device copies the storage object to the identified location. The information can also include an instruction by the application to move the storage object from a first tier to a second tier.
    Type: Grant
    Filed: April 7, 2011
    Date of Patent: December 30, 2014
    Assignee: Symantec Corporation
    Inventors: Niranjan Pendharkar, Ashish Karnik
  • Patent number: 8924636
    Abstract: A management information generating method wherein logical and physical block addresses (BAs) of continuous addresses are associated with each other in the BA translation table. When a logical block is constructed, a value is set for a maximum number of allowable defective physical blocks. A logical block having fewer defects than the set number is set usable, and a logical block having more defects than the set number is set unusable. System logical block construction is performed to preferentially select physical blocks from a plane list including a large number of usable blocks to equalize the number of usable blocks in each plane list. It is determined whether the number of free blocks is insufficient on the basis of a first management unit and whether the storage area for the indicated capacity can be reserved on the basis of the management unit different from the first unit.
    Type: Grant
    Filed: September 11, 2012
    Date of Patent: December 30, 2014
    Assignee: Kabushiki Kaisha Toshiba
    Inventors: Takashi Hirao, Hirokuni Yano, Aurelien Nam Phong Tran, Mitsunori Tadokoro, Hiroki Matsudaira, Tatsuya Sumiyoshi, Yoshimi Niisato, Kenji Tanaka
  • Publication number: 20140380018
    Abstract: In an embodiment, a processor includes a plurality of cores. Each core includes conversion power logic to receive an instruction including an untranslated memory address, determine whether a code segment (CS) base address is equal to zero, and in response to a determination that the CS base address is equal to zero, execute the instruction using the untranslated memory address. Other embodiments are described and claimed.
    Type: Application
    Filed: June 25, 2013
    Publication date: December 25, 2014
    Inventors: James E. Phillips, Wing Shek Wong, Charles Vitu
  • Patent number: 8918601
    Abstract: Processing within a multiprocessor computer system is facilitated by: logically clearing a data page by setting, in association with invalidate page table entry or set storage key processing, a page initialize bit for the data page to a clear data value without physically clearing data from the data page; and subsequent to the setting of the page initialize bit, physically clearing data from the page in central storage responsive to a first access to the page with the page initialize bit set to the clear data value, thereby minimizing overall time required to both clear and subsequently access cleared page data. Setting of the page initialize bit may include setting a line clear bit for each page line to the clear data value, and allocating a state machine to clear each line responsive to the line being first accessed with the its line clear bit set.
    Type: Grant
    Filed: December 14, 2009
    Date of Patent: December 23, 2014
    Assignee: International Business Machines Corporation
    Inventor: Gary A. Woffinden
  • Publication number: 20140372726
    Abstract: A method for managing memory using a virtual memory manager includes receiving a memory allocation request, allocating memory of a physical address space in response to the memory allocation request, mapping an address value of the memory allocated in the physical address space to consecutive primary virtual address space, and mapping the address value of the primary virtual address space to one of a first and second secondary virtual address spaces to process a new memory allocation request in a situation where memory a fragmentation occurs. Other embodiments are also disclosed. The methods and apparatuses of the present disclosure are capable of moving active memory blocks of the fragmented virtual memory space to another virtual memory space to resolve the memory fragmentation even when a memory fragmentation occurs.
    Type: Application
    Filed: June 17, 2014
    Publication date: December 18, 2014
    Inventors: Jin Kyu Koo, Sang-Bok Han, Myung Sun Kim, In Choon Yeo
  • Patent number: 8914608
    Abstract: A data storage device includes a storage medium configured to store data; and a controller configured to control the storage medium, the controller including address mapping information. The controller is configured to divide the address mapping information into at least a first address mapping table and a second address mapping table based on information regarding temporary data received at the controller. The first address mapping table is configured to map one or more addresses of valid data and to be backed up to the storage medium. The second mapping address table being configured to map one or more addresses of the temporary data and to not be backed up to the storage medium.
    Type: Grant
    Filed: February 11, 2011
    Date of Patent: December 16, 2014
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Sang-Jin Oh, Jeonguk Kang
  • Patent number: 8914602
    Abstract: A controller and a method of updating parameters on the same. The controller includes an embedded non-volatile memory, a programming circuit, an embedded SRAM, a MCU (Micro Computer Unit), and a memory controller. The embedded non-volatile memory has a program code block for storing program codes to be executed by the MCU, and a data block for storing the parameters. The MCU writes the parameters into the data block of the flash memory through the memory controller, or reads data in the data block of the non-volatile memory through the memory controller. Because the controller does not need to employ an external EEPROM, the cost can be reduced and the speed for accessing the parameters can be increased.
    Type: Grant
    Filed: November 8, 2006
    Date of Patent: December 16, 2014
    Assignee: Realtek Semiconductor Corp.
    Inventors: Wen-Jui Lin, Hsien-Chun Chang, Yi-Shu Chang, Wen-Che Wu
  • Patent number: 8909897
    Abstract: A translation table has entries that each include a share bit and a delta bit, with pointers that point to a memory block that includes reuse bits. The share bit is set to indicate a translation table entry is sharing its memory block with another translation table entry. In addition, a translation table entry may include a private delta in the form of a pointer that references a memory fragment in the memory block that is not shared with other translation table entries, wherein the private delta references previously-stored content. When a translation table has a private delta, its delta bit is set. The private delta is generated by analyzing a data buffer for content that is similar to previously-stored content.
    Type: Grant
    Filed: December 3, 2012
    Date of Patent: December 9, 2014
    Assignee: Lenovo Enterprise Solutions (Singapore) Pte. Ltd.
    Inventors: Bulent Abali, James A. Marcella
  • Patent number: 8909899
    Abstract: What is disclosed is a frame management function defined for a machine architecture of a computer system. In one embodiment, a frame management instruction is obtained which identifies a first and second general register. The first general register contains a frame management field having a key field with access-protection bits and a block-size indication. If the block-size indication indicates a large block then an operand address of a large block of data is obtained from the second general register. The large block of data has a plurality of small blocks each of which is associated with a corresponding storage key having a plurality of storage key access-protection bits. If the block size indication indicates a large block, the storage key access-protection bits of each corresponding storage key of each small block within the large block is set with the access-protection bits of the key field.
    Type: Grant
    Filed: June 27, 2013
    Date of Patent: December 9, 2014
    Assignee: International Business Machines Corporation
    Inventors: Dan F Greiner, Charles W Gainey, Jr., Lisa C Heller, Damian L Osisek, Timothy J Slegel, Gustav E Sittmann
  • Patent number: 8909855
    Abstract: A storage system includes a Central Processing Unit (CPU) that has a physically-addressed solid state disk (SSD), addressable using physical addresses associated with user data and provided by a host. The user data is to be stored in or retrieved from the physically-addressed SSD in blocks. Further, a non-volatile memory module is coupled to the CPU and includes flash tables used to manage blocks in the physically addressed SSD. The flash tables have tables that are used to map logical to physical blocks for identifying the location of stored data in the physically addressed SSD. The flash tables are maintained in the non-volatile memory modules thereby avoiding reconstruction of the flash tables upon power interruption.
    Type: Grant
    Filed: February 18, 2013
    Date of Patent: December 9, 2014
    Assignee: Avalanche Technology, Inc.
    Inventor: Siamack Nemazie
  • Patent number: 8909851
    Abstract: A method of operation of a storage control system including: providing a memory controller; accessing a volatile memory table by the memory controller; writing a non-volatile semiconductor memory for persisting changes in the volatile memory table; and restoring a logical-to-physical table in the volatile memory table, after a power cycle, by restoring a random access memory with a logical-to-physical partition from a most recently used list.
    Type: Grant
    Filed: February 8, 2012
    Date of Patent: December 9, 2014
    Assignee: Smart Storage Systems, Inc.
    Inventors: Ryan Jones, Robert W. Ellis, Joseph Taylor
  • Patent number: 8904147
    Abstract: A translation table has entries that each include a share bit and a delta bit, with pointers that point to a memory block that includes reuse bits. The share bit is set to indicate a translation table entry is sharing its memory block with another translation table entry. In addition, a translation table entry may include a private delta in the form of a pointer that references a memory fragment in the memory block that is not shared with other translation table entries, wherein the private delta references previously-stored content. When a translation table has a private delta, its delta bit is set. The private delta is generated by analyzing a data buffer for content that is similar to previously-stored content.
    Type: Grant
    Filed: September 11, 2012
    Date of Patent: December 2, 2014
    Assignee: Lenovo Enterprise Solutions (Singapore) Pte. Ltd.
    Inventors: Bulent Abali, James A. Marcella
  • Patent number: 8902902
    Abstract: A hardware trie structure includes a tree of internal node circuits and leaf node circuits. Each internal node is configured by a corresponding multi-bit node control value (NCV). Each leaf node can output a corresponding result value (RV). An input value (IV) supplied onto input leads of the trie causes signals to propagate through the trie such that one of the leaf nodes outputs one of the RVs onto output leads of the trie. In a transactional memory, a memory stores a set of NCVs and RVs. In response to a lookup command, the NCVs and RVs are read out of memory and are used to configure the trie. The IV of the lookup is supplied to the input leads, and the trie looks up an RV. A non-final RV initiates another lookup in a recursive fashion, whereas a final RV is returned as the result of the lookup command.
    Type: Grant
    Filed: July 18, 2012
    Date of Patent: December 2, 2014
    Assignee: Netronome Systems, Incorporated
    Inventors: Gavin J. Stark, Bruce Alexander Wilford
  • Patent number: 8904092
    Abstract: A system includes storage media and control logic coupled to the storage media, where the control logic is configured to receive a write request and determine whether the write request specifies writing a predetermined pattern to a particular location of the storage media. In response to determining that the write request specifies writing the predetermined pattern to the particular location, the control logic is configured to identify with an indicator that the particular location contains invalid data.
    Type: Grant
    Filed: February 10, 2010
    Date of Patent: December 2, 2014
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Joseph A. Tucek
  • Publication number: 20140351553
    Abstract: Embodiments of the invention are generally directed to systems, methods, and apparatuses for linear to physical address translation with support for page attributes. In some embodiments, a system receives an instruction to translate a memory pointer to a physical memory address for a memory location. The system may return the physical memory address and one or more page attributes. Other embodiments are described and claimed.
    Type: Application
    Filed: August 8, 2014
    Publication date: November 27, 2014
    Applicant: Intel Corporation
    Inventors: Ohad Falik, Ben-Zion Friedman, Jacob Doweck, Eliezer Weissmann, James B Crossland
  • Publication number: 20140351552
    Abstract: Techniques described enable efficient swapping of memory pages to and from a working set of pages for a process through the use of large writes and reads of pages to and from sequentially ordered locations in secondary storage. When writing pages from a working set of a process into secondary storage, the pages may be written into reserved, contiguous locations in a dedicated swap file according to a virtual address order or other order. Such writing into sequentially ordered locations enables reading in of clusters of pages in large, sequential blocks of memory, providing for more efficient read operations to return pages to physical memory.
    Type: Application
    Filed: August 11, 2014
    Publication date: November 27, 2014
    Inventors: Mehmet Iyigun, Yevgeniy (Eugene) Bak, Landy Wang, Arun U. Kishan
  • Publication number: 20140351554
    Abstract: Embodiments of the invention are generally directed to systems, methods, and apparatuses for linear to physical address translation with support for page attributes. In some embodiments, a system receives an instruction to translate a memory pointer to a physical memory address for a memory location. The system may return the physical memory address and one or more page attributes. Other embodiments are described and claimed.
    Type: Application
    Filed: August 8, 2014
    Publication date: November 27, 2014
    Applicant: Intel Corporation
    Inventors: Ohad Falik, Ben-Zion Friedman, Jacob Doweck, Eliezer Weissmann, James B Crossland
  • Patent number: 8898428
    Abstract: In one embodiment, a method for accessing host data records stored in a virtual tape storage (VTS) system includes receiving a mount request to access a host data record, determining a starting logical block ID (SLBID) corresponding to the requested host data record, determining a physical block ID (PBID) that corresponds to the SLBID, accessing a physical block on a tape medium corresponding to the PBID, and outputting the physical block corresponding to the PBID without outputting an entire logical volume that the physical block is stored to. According to another embodiment, a VTS system includes random access storage, sequential access storage, support for a virtual volume, a storage manager having logic for determining a PBID that corresponds to a SLBID, and logic for copying a portion of a logical volume from the sequential access storage to the random access storage without copying the entire logical volume.
    Type: Grant
    Filed: May 30, 2012
    Date of Patent: November 25, 2014
    Assignee: International Business Machines Corporation
    Inventors: Thomas W. Bish, Jonathan W. Peake
  • Patent number: 8898429
    Abstract: An application processor includes a system memory unit, peripheral devices, a control unit and a central processing unit (CPU). The system memory unit includes one page table. The peripheral devices share the page table and perform a DMA (Direct Memory Access) operation on the system memory unit using the page table, where each of the peripheral devices includes a memory management unit having a translation lookaside buffer. The control unit divides a total virtual address space corresponding to the page table into sub virtual address spaces, assigns the sub virtual address spaces to the peripheral devices, respectively, allocates and releases a DMA buffer in the system memory unit, and updates the page table, where at least two of the sub virtual address spaces have different sizes from each other. The CPU controls the peripheral devices and the control unit. The application processor reduces memory consumption.
    Type: Grant
    Filed: June 22, 2012
    Date of Patent: November 25, 2014
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Kyong-Ho Cho, Il-Ho Lee
  • Patent number: 8897573
    Abstract: A system and an article of manufacture for de-duplicating virtual machine image accesses include identifying one or more identical blocks in two or more images in a virtual machine image repository, generating a block map for mapping different blocks with identical content into a same block, deploying a virtual machine image by reconstituting an image from the block map and fetching any unique blocks remotely on-demand, and de-duplicating virtual machine image accesses by storing the deployed virtual machine image in a local disk cache.
    Type: Grant
    Filed: August 17, 2012
    Date of Patent: November 25, 2014
    Assignee: International Business Machines Corporation
    Inventors: Han Chen, Alexei A. Karve, Minkyong Kim, Andrzej P. Kochut, Hui Lei, Jayaram Kallapalayam Radhakrishnan, Zhiming Shen, Zhe Zhang
  • Patent number: 8897428
    Abstract: A device for recording the content of live communications sessions allocates each session with a unique identifier which is also communicated to a server, exchange, switch or endpoint having control of that session. A log of events occurring in the session is updated with the unique identifier of the recorded content, and following the session, the log of events is communicated to the recording device, indexed under the unique identifier, and stored with the recorded content of the session itself.
    Type: Grant
    Filed: June 29, 2012
    Date of Patent: November 25, 2014
    Assignee: Avaya Inc.
    Inventors: Martin Walker, John Costello, David Murray
  • Patent number: 8898423
    Abstract: A data storage system is disclosed that utilizes a high performance caching architecture. In one embodiment, the caching architecture utilizes a cache table, such as a lookup table, for referencing or storing host data units that are cached or are candidates for being cached in the solid-state memory. Further, the caching architecture maintains a segment control list that specifies associations between particular cache table entries and particular data segments. Such separation of activities related to the implementation of a caching policy from activities related to storing cached data and candidate data provides robustness and scalability while improving performance.
    Type: Grant
    Filed: January 31, 2012
    Date of Patent: November 25, 2014
    Assignee: Western Digital Technologies, Inc.
    Inventors: Chandra M. Guda, Michael Ainsworth, Choo-Bhin Ong, Marc-Angelo P. Carino
  • Publication number: 20140344548
    Abstract: A system comprises a hashing logic, which executes instructions to convert raw data into a first logical address and payload data, where the first logical address describes metadata about the payload data. A hardware translation unit executes instructions to translate the first logical address into a first physical address on a storage device. A hardware load/storage unit stores the first logical address and the payload data at the first physical address on the storage device. A hardware exclusive OR (XOR) unit compares two logical address vectors to derive a Hamming distance between the two logical address vectors. A hardware retrieval unit retrieves other payload data that is stored at a second physical address whose second logical address is within a predefined Hamming distance from the first logical address, thus allowing payload data from the two logical addresses to be grouped/associated with one another.
    Type: Application
    Filed: May 17, 2013
    Publication date: November 20, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Robert R. Friedlander, James R. Kraemer, David M. Ungar
  • Patent number: 8892845
    Abstract: A method begins by a processing module receiving data of a file for storage in a dispersed storage network (DSN) memory and determining a segmentation scheme for storing the data. The method continues with the processing module determining how to store the data in accordance with the segmentation scheme to produce information for storing the data and generating an entry within a segment allocation table associated with the file, wherein the entry includes the information for storing the data and the segmentation scheme. The method continues with the processing module facilitating storage of the segment allocation table in the DSN memory. The method continues with the processing module segmenting the data in accordance with the segmentation scheme to produce a plurality of data segments and facilitating storage of the plurality of data segments in the DSN memory in accordance with the information for storing the data.
    Type: Grant
    Filed: December 1, 2011
    Date of Patent: November 18, 2014
    Assignee: Cleversafe, Inc.
    Inventors: Ilya Volvovski, Andrew Baptist, Wesley Leggette
  • Publication number: 20140331023
    Abstract: A device includes a memory that stores a first page table that includes a first page table entry, wherein the first page table entry further includes a physical address, an alternative location associated with the page table entry, and a physical page of memory associated with the physical address. A first processing unit is configured to: read the first page table entry, and determine the physical address from the first page table entry. The second processing unit is configured to: read the physical address from the first page table entry, determine second page attribute data from the alternative location, wherein the second page attribute data define one or more accessibility attributes of the physical page of memory for the second processing unit, and access the physical page of memory associated with the physical address according to the one or more accessibility attributes.
    Type: Application
    Filed: May 6, 2013
    Publication date: November 6, 2014
    Applicant: Qualcomm Incorporated
    Inventors: Colin Christopher Sharp, Thomas Andrew Sartorius
  • Patent number: 8880846
    Abstract: A semiconductor device according to the present invention includes a first address generation unit that includes a first register group and generates a table address by a cyclically repeating first pattern using a value stored to the first register group, a second address generation unit that includes a second register group and generates an access address by a cyclically repeating second pattern using a value stored to the second register group and parameter information determined by the table address, and a control unit that outputs setting information to be supplied to the first register group and the second register group. Further, the semiconductor device performs at least one of a read process and a write process of data from and to a data memory using the access address.
    Type: Grant
    Filed: January 11, 2013
    Date of Patent: November 4, 2014
    Assignee: Renesas Electronics Corporation
    Inventors: Hiroyuki Nakajima, Shigeyuki Ueno
  • Patent number: 8880901
    Abstract: An embodiment generally pertains to a method of secure address handling in a processor. The method includes detecting an instruction that implicitly designates a target address and retrieving an encoded location associated with the target address. The method also includes decoding the encoded location to determine the target address. Another embodiment generally relates to detecting an instruction having an operand designating an encoded target address and determining a location of a target instruction associated with the target address. The method also includes determining a location of a subsequent instruction and encoding the location of the subsequent instruction. The method further includes storing the encoded location of the subsequent instruction.
    Type: Grant
    Filed: May 25, 2006
    Date of Patent: November 4, 2014
    Assignee: Red Hat, Inc.
    Inventor: Ulrich Drepper
  • Patent number: 8880845
    Abstract: A memory system includes a memory including a page table, and an input/output memory management unit (I/O MMU) connected to the memory, and configured to receive a virtual address from an I/O Device and to search within the I/O MMU for a plurality of entries matching the virtual address. If no entries matching the virtual address are found within the I/O MMU as a result of searching for the entries, the I/O MMU accesses the memory, searches the page table for the entries matching the virtual address, and stores the entries within the I/O MMU.
    Type: Grant
    Filed: May 11, 2012
    Date of Patent: November 4, 2014
    Assignee: Samsung Electronics Co., Ltd.
    Inventor: In Wook Kong
  • Publication number: 20140325179
    Abstract: A system including a write module to write pilot data at predetermined locations in a page of memory cells that are interspersed with user data in the page. The pilot data has a first predetermined pattern and provides an indication of a disturbance experienced by the user data due to noise and a read, write, or erase operation performed on the page. A read module reads data from the predetermined locations subsequent to writing the pilot data. A signal processing module compares the data read from the predetermined locations with the pilot data and estimates, based on the comparison of the data read from the predetermined locations in the page with the pilot data, and the first predetermined pattern of the pilot data, the disturbance experienced by the user data due to the noise and the read, write, or erase operation performed on the page.
    Type: Application
    Filed: May 16, 2014
    Publication date: October 30, 2014
    Applicant: Marvell World Trade LTD.
    Inventors: Xueshi Yang, Zining Wu, Pantas Sutardja
  • Publication number: 20140317374
    Abstract: The present disclosure includes methods for logical address translation, methods for operating memory systems, and memory systems. One such method includes receiving a command associated with a LA, wherein the LA is in a particular range of LAs and translating the LA to a physical location in memory using an offset corresponding to a number of physical locations skipped when writing data associated with a range of LAs other than the particular range.
    Type: Application
    Filed: April 17, 2014
    Publication date: October 23, 2014
    Applicant: Micron Technology, Inc.
    Inventors: Martin L. Culley, Troy A. Manning, Troy D. Larsen
  • Publication number: 20140317375
    Abstract: The prioritization of large memory page mapping is a function of the access bits in the L1 page table. In a first phase of operation, the number of set access bits in each of the L1 page tables is counted periodically and a current count value is calculated therefrom. During the first phase, no pages are mapped large even if identified as such. After the first phase, the current count value is used to prioritize among potential large memory pages to determine which pages to map large. The system continues to calculate the current count value even after the first phase ends. When using hardware assist, the access bits in the nested page tables are used and when using software MMU, the access bits in the shadow page tables are used for large page prioritization.
    Type: Application
    Filed: July 1, 2014
    Publication date: October 23, 2014
    Inventors: Qasim ALI, Vivek PANDEY, Raviprasad MUMMIDI, Kiran TATI
  • Patent number: 8868822
    Abstract: A data-processing method in a flash memory with a plurality of sectors, the method includes arranging first data which is not updated in a first sector at a leading portion of a second sector and adding a first identifier of the first data to the second sector by a memory control circuit when transferring data in the first sector to the second sector, the plurality of sectors including the first sector and the second sector.
    Type: Grant
    Filed: March 3, 2011
    Date of Patent: October 21, 2014
    Assignee: Spansion LLC
    Inventor: Hiroyuki Komori
  • Patent number: 8868883
    Abstract: An apparatus comprising an arbiter circuit, a translation circuit and a controller circuit. The arbiter circuit may be configured to generate one or more first control signals and a data write signal in response to an input signal and a read data signal. The translation circuit may be configured to generate a one or more second control signals in response to the one or more first control signals and the write address signal. The controller circuit may be configured to generate an address signal in response to the one or more second control signals.
    Type: Grant
    Filed: March 10, 2014
    Date of Patent: October 21, 2014
    Assignee: Ambarella, Inc.
    Inventors: Kathirgamar Aingaran, Leslie D. Kohn, Robert C. Kunz, Jenn-Yuan Tsai
  • Patent number: 8868882
    Abstract: Aspects of the subject matter described herein relate to a storage architecture. In aspects, an address provided by a data source is translated into a logical storage address of virtual storage. This logical storage address is translated into an identifier that may be used to store data on or retrieve data from a storage system. The address space of the virtual storage is divided into chunks that may be streamed to the storage system.
    Type: Grant
    Filed: June 8, 2011
    Date of Patent: October 21, 2014
    Assignee: Microsoft Corporation
    Inventors: Abid Ali, Amit Singla, Vanita Prabhu, Sachin Durge, Pankaj Khanzode, Vijay Sen
  • Patent number: 8868865
    Abstract: An exemplary computer system includes a server module including a first processor and first memory, a storage module including a second processor, a second memory and a storage device, and a transfer module. The transfer module retrieves a first transfer list including an address of a first storage area, which is set on the first memory for a read command, from the server module. The transfer module retrieves a second transfer list including an address of a second storage area in the second memory, in which data corresponding to the read command read from the storage device is stored temporarily, from the storage module. The transfer module sends the data corresponding to the read command in the second storage area to the first storage area by controlling the data transfer between the second storage area and the first storage area based on the first and second transfer lists.
    Type: Grant
    Filed: October 3, 2013
    Date of Patent: October 21, 2014
    Assignee: Hitachi, Ltd.
    Inventors: Yuki Kondoh, Isao Ohara
  • Publication number: 20140310500
    Abstract: The present application describes embodiments of a method and apparatus including a page cross misalign buffer. Some embodiments of the apparatus include a store queue for a plurality of entries configured to store information associated with store instructions. A respective entry in the store queue can store a first portion of information associated with a page crossing store instruction. Some embodiments of the apparatus also include one or more buffers configured to store a second portion of information associated with the page crossing store instruction.
    Type: Application
    Filed: April 11, 2013
    Publication date: October 16, 2014
    Applicant: Advanced Micro Devices, Inc.
    Inventors: David A. Kaplan, Jeff Rupley
  • Publication number: 20140310501
    Abstract: An apparatus and method for calculating a physical address of a register in a processor are provided. The apparatus includes an offset calculator configured to calculate an offset between the physical address and a logical address of the register, based on a current iteration number and a size of a rotating register; an address calculator configured to calculate the physical address of the register by adding the calculated offset to the logical address of the register; and an address corrector configured to output a final physical address of the register based on the calculated physical address and the size of the rotating register.
    Type: Application
    Filed: April 9, 2014
    Publication date: October 16, 2014
    Applicant: SAMSUNG ELECTRONICS CO., LTD.
    Inventor: Tai-Song JIN
  • Patent number: 8862860
    Abstract: Methods and apparatus may operate to receive allocation requests from a processor configured to manage memory comprising a non-volatile memory device configurable as a plurality of blocks comprising a plurality of sectors, assign partial page blocks from the plurality of blocks for memory storage, fill some of the sectors by storing data bits associated with the allocation request in the at least one of the plurality of sectors, determine that the sectors are full, assigning a full page block from the plurality of blocks, and transfer the data bits associated with the allocation request from the partial page blocks to the full page block. Other apparatus, systems, and methods are disclosed.
    Type: Grant
    Filed: May 26, 2011
    Date of Patent: October 14, 2014
    Assignee: Micron Technology, Inc.
    Inventors: Viet Ly, Michael Murray
  • Patent number: 8862854
    Abstract: The invention relates to hardware decoders that efficiently expand a small number of input bits to a large number of output bits, while providing considerable flexibility in selecting the output instances. One main area of application of the invention is in pin-limited environments, such as field programmable gates array (FPGA) used with dynamic reconfiguration. The invention includes a mapping unit that is a circuit, possibly in combination with a reconfigurable memory device. The circuit has as input a z-bit source word having a value at each bit position and it outputs an n-bit output word, where n>z, where the value of each bit position of the n-bit output word is based upon the value of a pre-selected hardwired one of the bit positions in the x-bit word, where the said pre-selected hardwired bit positions is selected by a selector address.
    Type: Grant
    Filed: August 20, 2007
    Date of Patent: October 14, 2014
    Inventors: Ramachandran Vaidyanathan, Matthew Jordan
  • Patent number: 8862858
    Abstract: A computer-implemented method and apparatus manages block mapping. The block mapping maps physical blocks in a block storage device to virtual blocks of a virtual address space. The method involves assigning a generation number from a net of generation numbers to each block mapping entry, where the block mapping entry correlates a physical block with a virtual block. A maximum generation number of the set of generation numbers is increased and a first block mapping entry is marked dirty in response to an update of a correlated first virtual block. A generation number of the first block mapping entry is set to the maximum generation number. Finally, a generation number of a second block mapping entry having a lowest generation number is set to a generation number of the first block mapping entry.
    Type: Grant
    Filed: September 28, 2012
    Date of Patent: October 14, 2014
    Assignee: EMC Corporation
    Inventor: Kadir Ozdemir
  • Patent number: 8862857
    Abstract: A data access processing method and apparatus, the method comprising: copying a kernel code and a global descriptor table on a memory of each of nodes respectively (101); making base addresses of kernel code segments on the respective nodes in the global descriptor table respectively point to linear addresses of the kernel code corresponding to the respective nodes based on a virtual address of the kernel code (102); and recording a mapping relation between the linear addresses of the kernel code corresponding to the respective nodes and physical addresses of the respective nodes in a kernel page table respectively, to enable a process to access the kernel code locally in the respective nodes (103). The apparatus comprises a copying module (401), a modifying module (402) and a recording module (403).
    Type: Grant
    Filed: December 29, 2011
    Date of Patent: October 14, 2014
    Assignee: Huawei Technologies Co., Ltd.
    Inventors: Wei Wang, Xiaofeng Zhang
  • Patent number: 8862813
    Abstract: Responding to IO requests made by an application to an operating system within a computing device implements IO performance acceleration that interfaces with the logical and physical disk management components of the operating system and within that pathway provides a system memory based disk block cache. The logical disk management component of the operating system identifies logical disk addresses for IO requests sent from the application to the operating system. These addresses are translated to physical disk addresses that correspond to disk blocks available on a physical storage resource. The disk block cache stores cached disk blocks that correspond to the disk blocks available on the physical storage resource, such that IO requests may be fulfilled from the disk block cache.
    Type: Grant
    Filed: July 1, 2010
    Date of Patent: October 14, 2014
    Assignee: DataCore Software Corporation
    Inventors: Ziya Aral, Roni Putra
  • Publication number: 20140304472
    Abstract: A system and method for efficiently performing user storage virtualization for data stored in a storage system including a plurality of solid-state storage devices. A data storage subsystem supports multiple mapping tables. Records within a mapping table are arranged in multiple levels. Each level stores pairs of a key value and a pointer value. The levels are sorted by time. New records are inserted in a created newest (youngest) level. No edits are performed in-place. All levels other than the youngest may be read only. The system may further include an overlay table which identifies those keys within the mapping table that are invalid.
    Type: Application
    Filed: June 23, 2014
    Publication date: October 9, 2014
    Inventors: John Colgrove, John Hayes, Ethan Miller, Feng Wang
  • Patent number: 8856438
    Abstract: A disk drive is disclosed that utilizes an additional address mapping layer between logical addresses used by a host system and physical locations in the disk drive. Physical locations configured to store metadata information can be excluded from the additional address mapping layer. As a result, a reduced size translation table can be maintained by the disk drive. Improved performance, reduced costs, and improved security can thereby be attained.
    Type: Grant
    Filed: December 9, 2011
    Date of Patent: October 7, 2014
    Assignee: Western Digital Technologies, Inc.
    Inventors: Nicholas M. Warner, Marcus A. Carlson, David C. Pruett
  • Patent number: 8856489
    Abstract: A system and method for efficiently performing user storage virtualization for data stored in a storage system including a plurality of solid-state storage devices. A data storage subsystem supports multiple mapping tables. Records within a mapping table are arranged in multiple levels. Each level stores pairs of a key value and a pointer value. The levels are sorted by time. New records are inserted in a created newest (youngest) level. No edits are performed in-place. All levels other than the youngest may be read only. The system may further include an overlay table which identifies those keys within the mapping table that are invalid.
    Type: Grant
    Filed: January 21, 2014
    Date of Patent: October 7, 2014
    Assignee: PURE Storage, Inc.
    Inventors: John Colgrove, John Hayes, Ethan Miller, Feng Wang
  • Publication number: 20140297990
    Abstract: The present disclosure includes devices, systems, and methods for memory address translation. One or more embodiments include a memory array and a controller coupled to the array. The array includes a first table having a number of records, wherein each record includes a number of entries, wherein each entry includes a physical address corresponding to a data segment stored in the array and a logical address. The controller includes a second table having a number of records, wherein each record includes a number of entries, wherein each entry includes a physical address corresponding to a record in the first table and a logical address. The controller also includes a third table having a number of records, wherein each record includes a number of entries, wherein each entry includes a physical address corresponding to a record in the second table and a logical address.
    Type: Application
    Filed: May 5, 2014
    Publication date: October 2, 2014
    Applicant: Micron Technology, Inc.
    Inventors: Troy A. Manning, Martin L. Culley, Troy D. Larsen
  • Patent number: 8850101
    Abstract: In one embodiment, a system comprises a plurality of memory ports. The memory ports are distributed into a plurality of subsets, where each subset is identified by a subset index. The system further comprises a first address hashing unit configured to receive a request including at least one virtual memory address. Each virtual memory address is associated with a replication factor, and the virtual memory address refers to graph data. The first address hashing unit translates the replication factor into a corresponding subset index based on the virtual memory address, and converts the virtual memory address to a hardware based memory address. The hardware based address refers to data in the memory ports within a subset indicated by the corresponding subset index.
    Type: Grant
    Filed: September 11, 2013
    Date of Patent: September 30, 2014
    Assignee: Cavium, Inc.
    Inventors: Jeffrey A. Pangborn, Gregg A. Bouchard, Rajan Goyal, Richard E. Kessler