Address Mapping (e.g., Conversion, Translation) Patents (Class 711/202)
-
Patent number: 9158902Abstract: This disclosure is directed to software modification that may be used to prevent software piracy and prevent unauthorized modification of applications. In some embodiments, a software vendor may modify software prior to distribution to a user. The software vendor may extract cutouts from an application to create a modified application. The modified application and the cutouts may be downloaded by a user device. The user device may run the application using the modified application and by executing the cutouts in a secure execution environment that conceals the underlying code in the cutouts.Type: GrantFiled: December 29, 2011Date of Patent: October 13, 2015Assignee: Intel CorporationInventors: Moshe Maor, Shay Gueron
-
Patent number: 9158859Abstract: A planning and search system are described wherein a graph search and segment matching are used to handle very large searches at a higher speed.Type: GrantFiled: November 16, 2012Date of Patent: October 13, 2015Assignee: NORTHROP GRUMMAN SYSTEMS CORPORATIONInventors: James Daniel Snyder, II, Craig Michael Chase
-
Patent number: 9152571Abstract: An input/output memory management unit (IOMMU) having an “invalidate all” command available to clear the contents of cache memory is presented. The cache memory provides fast access to address translation data that has been previously obtained by a process. A typical cache memory includes device tables, page tables and interrupt remapping entries. Cache memory data can become stale or be compromised from security breaches or malfunctioning devices. In these circumstances, a rapid approach to clearing cache memory content is provided.Type: GrantFiled: July 31, 2012Date of Patent: October 6, 2015Assignees: ATI Technologies ULC, Advanced Micro Devices, Inc.Inventors: Andrew G. Kegel, Mark D. Hummel, Anthony Asaro
-
Patent number: 9146863Abstract: A computer-implemented method may include assigning an address translation table to a peripheral component interconnect host bridge and determining that an input/output adapter accessible to the peripheral component interconnect host bridge is configured as a virtualized adapter to provide a plurality of virtual functions to a plurality of logical partitions. In response to determining that the input/output adapter is configured as the virtualized adapter, the address translation table may be subdivided to enable the plurality of virtual functions to access the memory of at least one logical partition of the plurality of logical partitions.Type: GrantFiled: December 8, 2010Date of Patent: September 29, 2015Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Sean T. Brownlow, Gregory M. Nordstrom, Travis J. Pizel
-
Patent number: 9137443Abstract: Various embodiments are described herein for a method and related device for processing a first dataset comprising a second dataset and a third dataset in order to locate the third dataset. The second dataset has a variable data length and terminates with an ending marker and the third dataset starts after the ending marker. The method involves preprocessing a memory element by storing a plurality of locater markers, storing the first dataset in the memory element thereby overwriting a portion of the plurality of locater markers, locating which of the plurality of locater markers is closest to the end of the first dataset; and locating the third dataset by searching for the ending marker of the second dataset based on the position of the closest locater marker.Type: GrantFiled: September 27, 2011Date of Patent: September 15, 2015Assignee: BlackBerry LimitedInventor: Brett Foster
-
Patent number: 9128818Abstract: The disclosure includes, in general, among other aspects, an apparatus having multiple programmable units integrated within a processor. The apparatus has circuitry to map addresses in a single address space to resources within the multiple programmable units where the single address space includes addresses for different ones of the resources in different ones of the multiple programmable units and where there is a one-to-one correspondence between respective addresses in the single address space and resources within the multiple programmable units.Type: GrantFiled: May 23, 2014Date of Patent: September 8, 2015Assignee: Intel CorporationInventors: Gilbert Wolrich, Debra Bernstein, Daniel Cutter, Christopher Dolan, Matthew J. Adiletta
-
Patent number: 9122418Abstract: A method of controlling the capacity of a virtual storage system provided on a physical storage system, the method including: providing a control program on the physical storage system; coupling additional virtual storage to the virtual storage system on the physical storage system; providing control data on the additional virtual storage; with the control program, reading the control data and configuring the virtual storage system accordingly. A corresponding virtual storage system is also provided.Type: GrantFiled: August 7, 2012Date of Patent: September 1, 2015Assignee: XYRATEX TECHNOLOGY LIMITED—A SEAGATE COMPANYInventor: James S. M. Morse
-
Patent number: 9124463Abstract: A device with an autonomous sleep characteristic, which is in communication with a host, is described. The device includes one or more communication subsystems. Each communication subsystem maintains a sleep activity indicator that indicates whether a corresponding communication subsystem is allowed to go to sleep. Each communication subsystem can autonomously enter a sleep state, when its sleep activity indicator indicates that the corresponding communication subsystem is, in fact, allowed to go to sleep. The device also includes a controller. The controller has a block memory which stores data written to the device from the host. The controller further includes a sleep state indicator that indicates a sleep state of each communication subsystem.Type: GrantFiled: April 4, 2012Date of Patent: September 1, 2015Assignee: TEXAS INSTRUMENTS INCORPORATEDInventors: Avi Baum, Ido Shemer, Alon Paycher, Ofer Guetta
-
Patent number: 9116795Abstract: Storage devices herein include a non-volatile memory and a controller configured to perform a read operation on a physical page of the non-volatile memory in response to a read request on a logical page of the non-volatile memory from a host. The controller may include a mapping manager configured to manage a plurality of logical blocks by a logical unit. The mapping manager may include a unit map table including a correlation between the logical unit and a physical unit corresponding to the logical unit. Additionally, the mapping manager may be configured to change a mapping method according to whether the unit map table includes a physical unit corresponding to a logical unit including a logical page requested by the host. Related user devices and electronic devices are also provided.Type: GrantFiled: January 16, 2013Date of Patent: August 25, 2015Assignee: Samsung Electronics Co., Ltd.Inventors: Jong-Hyun Kim, Jung Been Im
-
Patent number: 9110839Abstract: In a content address storage system, storage target data or address data is stored in a storage device with respect to each time zone divided in a time-series manner, and a storage region in the storage device storing a piece of data, which is not pointed to by other address data, of the storage target data or the address data stored in the storage device in a past time zone before a current time zone, is released.Type: GrantFiled: August 25, 2011Date of Patent: August 18, 2015Assignee: NEC CORPORATIONInventors: Przemyslaw Strzelczak, Elzbieta Adamczyk, Urszula Herman-Izycka, Jakub Sakowicz, Lukasz Slusarczyk, Jaroslaw Wrona, Cezary Dubnicki
-
Patent number: 9110603Abstract: Provided are a computer program product, system, and method for identifying modified chunks in a data set for storage. Information is maintained on a data set of variable length chunks, including a digest of each chunk and information to locate the chunk in the data set. Modifications are received to at least one of the chunks in the data set. A determination is made of chunks including data affected by the modifications. The determined chunks including data affected by the modifications are processed to determine new chunks and for each determined new chunk and for each determined new chunk, new digest information of the new chunk. The new digest information on the at least one new chunk and information to locate the new chunk in the data set are added to the set information.Type: GrantFiled: December 11, 2013Date of Patent: August 18, 2015Assignee: International Business Machines CorporationInventors: Mark L. Yakushev, Mark A. Smith
-
Patent number: 9104560Abstract: Digital objects are stored and accessed within a fixed content storage cluster by using a page mapping table and a pages index. A stream is read from the cluster by using a portion of its unique identifier as a key into the page mapping table. The page mapping table indicates a node holding a pages index indicating where the stream is stored. A stream is written to the cluster by storing the stream on any suitable node and then updating a pages index stored within the cluster. The cluster recovers from a node failure by first replicating streams from the failed node and reallocating a page mapping table to create a new pages index. The remaining nodes send records of the unique identifiers corresponding to objects they hold to the new pages index. A node is added to the cluster by reallocating a page mapping table.Type: GrantFiled: June 13, 2012Date of Patent: August 11, 2015Assignee: Caringo, Inc.Inventors: Paul R. M. Carpentier, Russell Turpin
-
Patent number: 9104326Abstract: A device for scalable block data storage and retrieval uses content addressing. Data storage devices store data blocks, and are connected over a network to computing modules. The modules comprise control modules and data modules and carry out content addressing for both storage and retrieval. The network defines separate control paths via the control modules and data paths via the data modules.Type: GrantFiled: November 15, 2010Date of Patent: August 11, 2015Assignee: EMC CorporationInventors: Shahar Frank, Erez Webman, Renen Hallak, Kobi Luz, Irit Yadin-Lempel, Yaron Segev
-
Patent number: 9088761Abstract: An image recording system, an image recorder and a data accessing method are provided. Some of memory blocks of a flash memory are set as first blocks, and the other memory blocks are set as second blocks. When a target image file received from a capturing unit of an image reorder is being written into the first blocks, a control unit of the flash memory detects whether the first block into which a processing unit of the image recorder tries to write a piece of data of the target image file is faulty. When the first block is faulty, the control unit selects normal one of the second blocks and then writes the piece of the data of the target image file into the selected second block instead of the first block.Type: GrantFiled: October 22, 2013Date of Patent: July 21, 2015Assignee: VIVOTEK INC.Inventor: Chien-Wei Chang
-
Patent number: 9075528Abstract: A virtual disk management system used in a diskless PC network communication agent system consisting of storage media, storage servers and a user-end computer for creating virtual disks having a dynamic space allocation function at the storage media and storing data into and fetching data from the virtual disks. The virtual disk management system uses a physical block index table, a storage media group record table, a virtual disk physical block occupation table and a differential disk relation table for virtual disk control, allowing physical and virtual space address translation to be done at one time to improve virtual disk access performance.Type: GrantFiled: November 17, 2011Date of Patent: July 7, 2015Assignee: JADE QUANTUM TECHNOLOGIES, INCInventor: Chia Hsin Huang
-
Patent number: 9075708Abstract: The present disclosure is directed to managing write commands for a storage system implementing address indirection. In some storage systems, a mapping table that provides logical-to-physical mapping may have individual entries that each references a logical address size that exceeds the size of an atomic write to the storage media. In such systems, a write to a logical address is not atomic as it may require several discrete physical writes that may individually fail. The techniques presented employ several pre-commit and post-commit actions to save data that enables the storage system to make writes to these logical addresses atomic and prevent undue delay on powerup.Type: GrantFiled: June 30, 2011Date of Patent: July 7, 2015Assignee: Western Digital Technologies, Inc.Inventors: Ho-Fan Kang, Stephen P. Hack, Jerry Lo, Frederick H. Adi, Lan D. Phan
-
Patent number: 9069676Abstract: A hardware search structure determines the status of cache lines associated with a large disk array and at the same time reduces the amount of memory space needed for tracking the status. The search structure is configurable in hardware to different cache line sizes and different primary and secondary index sizes. A maintenance feature invalidates state record entries based both on their time stamps and on associated usage statistics.Type: GrantFiled: February 12, 2013Date of Patent: June 30, 2015Assignee: VIOLIN MEMORY, INC.Inventors: Erik de la Iglesia, Som Sikdar, David Parker, Sivaram Dommeti
-
Patent number: 9064575Abstract: The present disclosure includes apparatuses and methods related to memory cell state in a valley between adjacent data states. A number of methods can include determining whether a state of a memory cell is in a valley between adjacent distributions of states associated with respective data states. The method can also include transmitting a signal indicative of a data state of the memory cell and whether the state of the memory cell is in the valley.Type: GrantFiled: August 3, 2012Date of Patent: June 23, 2015Assignee: Micron Technology, Inc.Inventors: Sivagnanam Parthasarathy, Patrick R. Khayat, Mustafa N. Kaynak, Robert B. Eisenhuth
-
Patent number: 9053013Abstract: A data storage device with a FLASH memory and an operating method for the data storage device are disclosed. According to the disclosure, the space of the FLASH memory is allocated to include groups of data blocks, a plurality of shared cache blocks (SCBs) and a plurality of dedicated cache blocks (DCBs). Each SCB is shared by one group of data blocks, for the write data storage when any data block of the group of data blocks is exhausted. The DCBs are allocated for the hot data storage. Each DCB corresponds to one hot logical block.Type: GrantFiled: June 3, 2013Date of Patent: June 9, 2015Assignee: VIA TECHNOLOGIES, INC.Inventors: Bo Zhang, Chen Xiu
-
Patent number: 9043773Abstract: Techniques for implementing identification and management of unsafe optimizations are disclosed. A method of the disclosure includes receiving, by a managed runtime environment (MRE) executed by a processing device, a notice of misprediction of optimized code, the misprediction occurring during a runtime of the optimized code, determining, by the MRE, whether a local misprediction counter (LMC) associated with a code region of the optimized code causing the misprediction exceeds a local misprediction threshold (LMT) value, and when the LMC exceeds the LMT value, compiling, by the MRE, native code of the optimized code to generate a new version of the optimized code, wherein the code region in the new version of the optimized code is not optimized.Type: GrantFiled: March 15, 2013Date of Patent: May 26, 2015Assignee: Intel CorporationInventors: Alejandro M. Vicente, Joseph M. Codina, Christos E. Kotselidis, Carlos Madriles, Raul Martinez
-
Patent number: 9043513Abstract: A memory system includes a CPU that communicates commands and addresses to a main-memory module. The module includes a buffer circuit that relays commands and data between the CPU and the main memory. The memory module additionally includes an embedded processor that shares access to main memory in support of peripheral functionality, such as graphics processing, for improved overall system performance. The buffer circuit facilitates the communication of instructions and data between CPU and the peripheral processor in a manner that minimizes or eliminates the need to modify CPU, and consequently reduces practical barriers to the adoption of main-memory modules with integrated processing power.Type: GrantFiled: December 17, 2014Date of Patent: May 26, 2015Assignee: Rambus Inc.Inventors: Richard E. Perego, Pradeep Batra, Steven Woo, Lawrence Lai, Chi-Ming Yeung
-
Publication number: 20150143071Abstract: Embodiments of apparatuses and methods for memory event notification are disclosed. In one embodiment, a processor includes address translation hardware and memory event hardware. The address translation hardware is to support translation of a first address, used by software to access a memory, to a second address, used by the processor to access the memory. The memory event hardware is to detect an access to a registered portion of memory.Type: ApplicationFiled: December 30, 2011Publication date: May 21, 2015Inventors: Ravi L. Sahita, Yasser Rasheed, Vedvyas Shanbhogue, David M. Durham, Scott H. Robinson, Paul S. Schmitz
-
Patent number: 9037787Abstract: 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: GrantFiled: November 14, 2014Date of Patent: May 19, 2015Assignee: AVALANCHE TECHNOLOGY, INC.Inventor: Siamack Nemazie
-
Patent number: 9037832Abstract: A method for managing a memory apparatus including at least one non-volatile (NV) memory element includes: providing at least one block of the memory apparatus with at least one local page address linking table within the memory apparatus, wherein the at least one local page address linking table includes linking relationships between at least one physical page address of the at least one block and at least one logical page address; and building a global page address linking table of the memory apparatus according to the at least one local page address linking table.Type: GrantFiled: September 6, 2012Date of Patent: May 19, 2015Assignee: Silicon Motion Inc.Inventors: Tsai-Cheng Lin, Chun-Kun Lee
-
Patent number: 9032377Abstract: A computing method includes accepting a definition of a computing task, which includes multiple Processing Elements (PEs) having execution dependencies. The computing task is compiled for concurrent execution on a multiprocessor device, by arranging the PEs in a series of two or more invocations of the multiprocessor device, including assigning the PEs to the invocations depending on the execution dependencies. The multiprocessor device is invoked to run software code that executes the series of the invocations, so as to produce a result of the computing task.Type: GrantFiled: June 2, 2013Date of Patent: May 12, 2015Assignee: Rocketick Technologies Ltd.Inventors: Shay Mizrachi, Uri Tal, Tomer Ben-David, Ishay Geller, Ido Kasher, Ronen Gal
-
Patent number: 9032145Abstract: A memory device includes an address protection system that facilitates the ability of the memory device to interface with a plurality of processors operating in a parallel processing manner. The protection system is used to prevent at least some of a plurality of processors in a system from accessing addresses designated by one of the processors as a protected memory address. Until the processor releases the protection, only the designating processor can access the memory device at the protected address. If the memory device contains a cache memory, the protection system can alternatively or additionally be used to protect cache memory addresses.Type: GrantFiled: September 14, 2012Date of Patent: May 12, 2015Assignee: Micron Technology, Inc.Inventor: David Resnick
-
Patent number: 9032164Abstract: The splitting of storage applications and functions into a control path (CP) component and a data path (DP) component is disclosed. Reads and writes may be handled primarily in the DP. The CP may be responsible for discovery, configuration, and exception handling. The CP can also be enabled for orchestrating complex data management operations such as snapshots and migration. Storage virtualization maps a virtual I/O to one or more physical I/O. A virtual target (vTarget) in the virtual domain is associated with one physical port in the physical domain. Each vTarget may be associated with one or more virtual LUNs (vLUNs). Each vLUN includes one or more vExtents. Each vExtent may point to a region table, and each entry in the region table may contain a pointer to a region representing a portion of a pExtent, and attributes (e.g. read/write, read only, no access) for that region.Type: GrantFiled: February 16, 2007Date of Patent: May 12, 2015Assignee: Emulex CorporationInventors: Sriram Rupanagunta, Parag Bhide
-
Patent number: 9026714Abstract: In one embodiment, a method includes receiving from a memory controller, a request to access memory stored at memory modules, the request directed to one of a plurality of logical ranks, mapping at a rank aggregator, the logical rank to one of a plurality of physical ranks at the memory modules, and forwarding the request to one of the memory modules according to the mapping. Two or more of the memory modules are combined to represent the number of logical ranks at the memory controller such that there is a one-to-one mapping between the logical ranks and the physical ranks. An apparatus for rank aggregation is also disclosed.Type: GrantFiled: June 4, 2010Date of Patent: May 5, 2015Assignee: Cisco Technology, Inc.Inventors: Jay Evan Scott Peterson, Philip Manela
-
Patent number: 9026767Abstract: A system monitors and dynamically changes memory mapping in a runtime of a computing system. The computing system has various memory resources, and multiple possible mappings that indicate how data is to be stored in and subsequently accessed from the memory resources. The performance of each memory mapping may be different under different runtime or load conditions of the computing device. A memory controller can monitor runtime performance of the current memory mapping and dynamically change memory mappings at runtime based on monitored or observed performance of the memory mappings. The performance monitoring can be modified for any of a number of different granularities possible within the system, from the byte level to memory channel.Type: GrantFiled: March 13, 2012Date of Patent: May 5, 2015Assignee: Intel CorporationInventors: Andre Schaefer, Matthias Gries
-
Patent number: 9026764Abstract: A memory system of a embodiments includes a first storing area having physical blocks and a second storing area recording a logical to physical translation table and an erasure count table keeping data erasure count in physical blocks. The memory system of the embodiments includes a controller which, when a logical address for deletion is notified, obtains data erasure count of a deletion physical block including a deletion area specified by the physical address corresponding to the logical address, and when a physical block having a small erasure count not more than a predetermined rate of the data erasure count exists in the erasure count table, reads out valid data for the memory system in the physical block having a small erasure count onto the second storing area, writes the above data into the deletion area, and invalidates the valid data in the physical block having a small erasure count.Type: GrantFiled: March 15, 2012Date of Patent: May 5, 2015Assignee: Kabushiki Kaisha ToshibaInventor: Daisuke Hashimoto
-
Patent number: 9021212Abstract: In a semiconductor memory computer equipped with a flash memory, use of backed-up data is enabled. The semiconductor memory computer includes an address conversion table for detecting physical addresses of at least two pages storing data by designating a logical address from one of logical addresses to be designated by a reading request. The semiconductor memory computer includes a page status register for detecting one page status allocated to each page, and page statuses to be detected include the at least following four statuses: (1) a latest data storage status, (2) a not latest data storage status, (3) an invalid data storage status, and (4) an unwritten status. By using the address conversion table and the page status register, at least two data s (latest data and past data) can be read for one designated logical address from a host computer.Type: GrantFiled: February 24, 2014Date of Patent: April 28, 2015Assignee: Hitachi, Ltd.Inventor: Nagamasa Mizushima
-
Patent number: 9021213Abstract: A computerized method for sharing removable storage media in a network, the method comprising associating, in an index entry, a first piece of removable storage media in a first storage device with at least a first storage policy copy and a second storage policy copy; copying, to the first piece of removable storage media, data associated with the first storage policy copy; and copying, to the first piece of removable storage media, data associated with the second storage policy copy.Type: GrantFiled: August 9, 2013Date of Patent: April 28, 2015Assignee: CommVault Systems, Inc.Inventors: Rajiv Kottomtharayil, Parag Gokhale, Anand Prahlad, Manoj Kumar Vijayan, David Ngo, Varghese Devassy
-
Publication number: 20150113245Abstract: An example processor includes a plurality of processor core components, a memory interface component, and an address translation gasket. Each processor core component is assigned to one of a plurality of system images, and the plurality of system images share a common memory component by at least utilizing the address translation gasket to maintain separation between memory regions assigned to each of the plurality of system images. The memory interface component is shared by the plurality of independent system images. The address translation gasket is configured to intercept transactions bound for the memory interface component comprising a system image identifier and a target address, generate a translation address based at least in part on the system identifier and the target address, and send the translation address to the memory interface component.Type: ApplicationFiled: April 30, 2012Publication date: April 23, 2015Inventors: Gregg B. Lesartre, Vincent Nguyen, Patrick Knebel
-
Patent number: 9015441Abstract: A memory scanning system may scan memory objects to determine usage frequency by scanning each memory object using a mapping of the processes stored in memory. The scanning may be performed multiple times to generate a usage history for each page or unit of memory. In some cases, scanning may be performed at different frequencies to determine multiple classifications of usage. The mapping may create a detailed topology of memory usage, including multiple classifications of access frequency, as well as several other classifications. Based on the topology, the objects in memory may be copied to another storage medium or optimized for performance or power consumption.Type: GrantFiled: April 30, 2010Date of Patent: April 21, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Bruce L. Worthington, Vishal Sharda, Qi Zhang, Mehmet Iyigun, Yevgeniy Bak
-
Patent number: 9015400Abstract: A computer system and a method are provided that reduce the amount of time and computing resources that are required to perform a hardware table walk (HWTW) in the event that a translation lookaside buffer (TLB) miss occurs. If a TLB miss occurs when performing a stage 2 (S2) HWTW to find the PA at which a stage 1 (S1) page table is stored, the MMU uses the IPA to predict the corresponding PA, thereby avoiding the need to perform any of the S2 table lookups. This greatly reduces the number of lookups that need to be performed when performing these types of HWTW read transactions, which greatly reduces processing overhead and performance penalties associated with performing these types of transactions.Type: GrantFiled: March 5, 2013Date of Patent: April 21, 2015Assignee: QUALCOMM IncorporatedInventors: Thomas Zeng, Azzedine Touzni, Tzung Ren Tzeng, Phil J. Bostley
-
Patent number: 9015445Abstract: A method of manipulating data includes receiving a data manipulation command for corresponding data, which corresponds to a first logical block address, to a second logical block address. The method further includes mapping the second logical block address to a physical block address, which is mapped to the first logical block address, in response to the data manipulation command. A system for manipulating data includes a host and a flash translation layer. The host transmits a data manipulation command for corresponding data, which corresponds to a first logical block address, to a second logical block address. The flash translation layer maps the second logical block address to a physical block address, which is mapped to the first logical block address, in response to the data manipulation command.Type: GrantFiled: June 19, 2013Date of Patent: April 21, 2015Assignee: Samsung Electronics Co., Ltd.Inventors: Myung-hyun Jo, Chan-ik Park
-
Patent number: 9009387Abstract: In a memory system using a storage medium, which is inserted into an electronic apparatus via a connector to add a memory function thereto, the storage medium has a GROUND terminal, a power supply terminal, a control terminal and a data input/output terminal, and the connector has a function of being sequentially connected to each of the terminals. When the storage medium is inserted into the connector, the GROUND terminal and control terminal of the storage medium are connected to corresponding terminals of the connector before the power supply terminal and data input/output terminal of the storage medium are connected to corresponding terminals of the connector. Thus, it is possible to improve the stability when a memory card is inserted into or ejected from the memory system.Type: GrantFiled: February 8, 2010Date of Patent: April 14, 2015Assignee: Kabushiki Kaisha ToshibaInventors: Yoshiyuki Tanaka, Makoto Yatabe, Takeaki Sato, Kazuya Kawamoto
-
Patent number: 9009446Abstract: The disclosed embodiments provide a system that uses broadcast-based TLB-sharing techniques to reduce address-translation latency in a shared-memory multiprocessor system with two or more nodes that are connected by an electrical interconnect. During operation, a first node receives a memory operation that includes a virtual address. Upon determining that one or more TLB levels of the first node will miss for the virtual address, the first node uses the electrical interconnect to broadcast a TLB request to one or more additional nodes of the shared-memory multiprocessor in parallel with scheduling a speculative page-table walk for the virtual address. If the first node receives a TLB entry from another node of the shared-memory multiprocessor via the electrical interconnect in response to the TLB request, the first node cancels the speculative page-table walk. Otherwise, if no response is received, the first node instead waits for the completion of the page-table walk.Type: GrantFiled: August 2, 2012Date of Patent: April 14, 2015Assignee: Oracle International CorporationInventors: Pranay Koka, David A. Munday, Michael O. McCracken, Herbert D. Schwetman, Jr.
-
Patent number: 9009441Abstract: In general, this disclosure describes techniques for selecting a memory channel in a multi-channel memory system for storing data, so that usage of the memory channels is well-balanced. A request to write data to a logical memory address of a memory system may be received. The logical memory address may include a logical page number and a page offset, where the logical page number maps to a physical page number and the logical memory address maps to a physical memory address. A memory unit out of a plurality of memory units in the memory system may be determined by performing a logical operation on one or more bits of the page offset and one or more bits of the physical page number. The data may be written to a physical memory address in the determined memory unit in the memory system.Type: GrantFiled: June 4, 2012Date of Patent: April 14, 2015Assignee: QUALCOMM IncorporatedInventors: Lin Chen, Long Chen
-
Patent number: 9009383Abstract: Systems, methods, and devices for dynamically mapping and remapping memory when a portion of memory is activated or deactivated are provided. In accordance with an embodiment, an electronic device may include several memory banks, one or more processors, and a memory controller. The memory banks may store data in hardware memory locations and may be independently deactivated. The processors may request the data using physical memory addresses, and the memory controller may translate the physical addresses to hardware memory locations. The memory controller may use a first memory mapping function when a first number of memory banks is active and a second memory mapping function when a second number is active. When one of the memory banks is to be deactivated, the memory controller may copy data from only the memory bank that is to be deactivated to the active remainder of memory banks.Type: GrantFiled: July 15, 2014Date of Patent: April 14, 2015Assignee: Apple Inc.Inventors: Ian C. Hendry, Rajabali Koduri, Jeffry E. Gonion
-
Patent number: 9009388Abstract: A method and system for efficiently freeing storage in a Redundant Array of Independent Disks (RAID) system. A computer system is coupled to storage devices that are organized as a RAID with block-level striping. Each storage device is partitioned into multiple physical sectors. The computer system receives a request to free a contiguous range of logical sectors that are mapped to the storage devices. In response, the computer system issues, for each storage device, a discard command to free contiguous physical sectors in the storage device that correspond to non-contiguous logical sectors.Type: GrantFiled: November 30, 2010Date of Patent: April 14, 2015Assignee: Red Hat, Inc.Inventors: Mikulá{hacek over (s)} Pato{hacek over (c)}ka, Michael A. Snitzer
-
Patent number: 9009440Abstract: A storage system stores data in at least one partition of a physical storage media in accordance with file system information specifying a plurality of logical blocks having logical block addresses within the partition. The logical blocks include excess logical blocks that are not mapped to space in the physical storage media by the mapping employed by the storage system. Unusable block data marks those excess logical blocks as unusable. This makes it easy to adjust the data storage capacity of the storage system by changing the mapping to map more or less logical block addresses to space in the physical storage media and thereby destroy or create excess logical blocks, and by changing the unusable block data to correspondingly change the excess logical blocks marked as unusable.Type: GrantFiled: November 12, 2007Date of Patent: April 14, 2015Assignee: LSI CorporationInventors: Duncan Beadnell, Don Harwood
-
Patent number: 9003159Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, can perform data caching. In some implementations, a method and system include receiving information that includes a logical address, allocating a physical page in a non-volatile memory structure, mapping the logical address to a physical address of the physical page, and writing, based on the physical address, data to the non-volatile memory structure to cache information associated with the logical address. The logical address can include an identifier of a data storage device and a logical page number.Type: GrantFiled: October 5, 2010Date of Patent: April 7, 2015Assignee: Marvell World Trade Ltd.Inventors: Shekhar S. Deshkar, Sandeep Karmarkar, Arvind Pruthi, Ram Kishore Johri
-
Patent number: 9003164Abstract: In one embodiment, the present invention includes a memory management unit (MMU) having entries to store virtual address to physical address translations, where each entry includes a location indicator to indicate whether a memory location for the corresponding entry is present in a local or remote memory. In this way, a common virtual memory space can be shared between the two memories, which may be separated by one or more non-coherent links. Other embodiments are described and claimed.Type: GrantFiled: March 21, 2014Date of Patent: April 7, 2015Assignee: Intel CorporationInventors: Gautham N. Chinya, Hong Wang, Deepak A. Mathaikutty, Jamison D. Collins, Ethan Schuchman, James P. Held, Ajay V. Bhatt, Prashant Sethi, Stephen F. Whalley
-
Patent number: 9003155Abstract: Method and system for managing storage units are provided. A free space module scans a storage unit data structure and a reference data structure to generate an intermediate data structure that identifies storage units that are not referenced by any storage unit client. A lookup module is initiated and the storage unit clients are notified that all new references to any storage unit should be verified with the lookup module. The free space module then verifies if any of the storage units in the intermediate data structure have been referenced since the intermediate data structure was created. Any referenced storage units are removed from the intermediate data structure and a data structure identifying unreferenced storage units is generated. The data structure is then used to allocate the identified storage units.Type: GrantFiled: June 7, 2013Date of Patent: April 7, 2015Assignee: NetApp, Inc.Inventors: Satish Singhal, Abhishek Naidu, Ameet Pyati
-
Patent number: 8996842Abstract: A method for managing a memory stack provides mapping a part of the memory stack to a span of fast memory and a part of the memory stack to a span of slow memory, wherein the fast memory provides access speed substantially higher than the access speed provided by the slow memory.Type: GrantFiled: December 9, 2010Date of Patent: March 31, 2015Assignee: Seagate Technology LLCInventors: Mark Gaertner, Mark Alan Heath
-
Patent number: 8996644Abstract: A data processing system comprising a host computer system and a network interface device for connection to a network, the host computer system and network interface device being coupled together by means of a data bus, and: the network interface device comprising: a controller unit having a first data port for connection to a network, a second data port, and a data bus interface connected to said data bus, the controller unit being operable to perform, in dependence on the network endpoints to which data packets received at the network interface device are directed, switching of data packets between the first and second data ports and the data bus interface; and an accelerator module having a first medium access controller coupled to said second data port of the controller unit and a processor operable to perform one or more functions in hardware on data packets received at the accelerator module, the said first medium access controller being operable to support one or more first network endpoints; the hostType: GrantFiled: December 9, 2010Date of Patent: March 31, 2015Assignee: Solarflare Communications, Inc.Inventor: Steven L. Pope
-
Patent number: 8996840Abstract: An I/O controller, coupled to a processing unit and to a memory, includes an I/O link interface configured to receive data packets having virtual addresses; an address translation unit having an address translator to translate received virtual addresses into real addresses by translation control entries and a cache allocated to the address translator to cache a number of the translation control entries; an I/O packet processing unit for checking the data packets received at the I/O link interface and for forwarding the checked data packets to the address translation unit; and a prefetcher to forward address translation prefetch information from a data packet received to the address translation unit; the address translator configured to fetch the translation control entry for the data packet by the address translation prefetch information from the allocated cache or, if the translation control entry is not available in the allocated cache, from the memory.Type: GrantFiled: December 5, 2012Date of Patent: March 31, 2015Assignee: International Business Machines CorporationInventors: Florian A. Auernhammer, Patricia M. Sagmeister
-
Patent number: 8997255Abstract: A data storage device may include one or more pages, each page having a fixed number of memory cells, each memory cell being adapted to store one unit of data; a verification page, the verification page having a corresponding fixed number of verification cells, each verification cell storing a predetermined value; and a controller configured to 1) receive a read command having an address value, and 2) upon receiving the read command, a) retrieve a predetermined value from a verification cell corresponding to the address value, b) determine whether the retrieved predetermined value is an expected value, and c) if so, providing a retrieved unit of data, and if not, initiating a protective action. Determining whether the retrieved predetermined value is the expected value may include applying a function to the address value to obtain a result and determining whether the result corresponds to the retrieved predetermined value.Type: GrantFiled: September 7, 2006Date of Patent: March 31, 2015Assignee: Inside SecureInventors: Yves Fusella, Alexandre Croguennec
-
Publication number: 20150089183Abstract: A memory subsystem includes a group of memory devices connected to an address bus. The memory subsystem includes logic to uniquely map a physical address of a memory access command to each memory device of the group. Thus, each physical address sent by an associated memory controller uniquely accesses a different row of each memory device, instead of being mapped to the same or corresponding row of each memory device.Type: ApplicationFiled: September 26, 2013Publication date: March 26, 2015Inventors: KULJIT S. BAINS, Suneeta Sah, John H. Crawford, Brian S. Morris