Patents Issued in October 25, 2016
  • Patent number: 9477588
    Abstract: A system that allocates memory for immutable data on a computing device. The system allocates a memory region on the computing device to store immutable data for an executing application. This memory region is smaller than the immutable data for the application. When the system subsequently receives a request to access a block of immutable data for the application, the system allocates space in this memory region for the block, and proceeds to load the block into the memory region. If at a later time the space occupied by this first block is needed for another block, the system unloads and discards the first block. If a subsequent operation needs to use information in the first block, the system regenerates the block by transforming raw data associated with the block into a form that can be directly accessed by the application, and then reloads the block into the memory region.
    Type: Grant
    Filed: May 7, 2014
    Date of Patent: October 25, 2016
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Oleg A. Pliss, Dean R. E. Long, Erez Landau
  • Patent number: 9477589
    Abstract: A storage device is provided which includes a nonvolatile memory device configured to store a plurality of reference data, a memory configured to store a hash manage table used to manage a plurality of reference hash keys of each of the plurality of reference data, a hash key generator configured to generate a plurality of hash keys based on write requested data, and a memory controller configured to compare the plurality of hash keys and reference hash keys of each reference data to determine whether to store the write requested data in the nonvolatile memory device. The memory controller selects one of the plurality of reference data according to a similarity between the plurality of hash keys and the plurality of reference hash keys of each reference data and stores the write requested data and the selected reference data in the nonvolatile memory device to refer to each other.
    Type: Grant
    Filed: September 18, 2014
    Date of Patent: October 25, 2016
    Assignees: SAMSUNG ELECTRONICS CO., LTD., SNU R&DB FOUNDATION
    Inventors: Sangkwon Moon, Ji Hong Kim, Ji Sung Park, Hyunchul Park, Kyung Ho Kim
  • Patent number: 9477590
    Abstract: Systems and methods are disclosed for providing a weave sequence counter (“WSC”) for non-volatile memory (“NVM”) systems. The WSC can identify the sequence in which each page of the NVM is programmed. The “weave” aspect can refer to the fact that multiple blocks can be open for programming at once, thus allowing the pages of these blocks to be programmed in a “woven” manner. Systems and methods are also disclosed for providing a host weave sequence counter (“HWSC”). Each time new data is initially programmed to the NVM, this data can be associated with a particular HWSC. The HWSC associated with the data may not change, even when the data is moved to a new page (e.g., for wear leveling purposes and the like). The WSC and HWSC may aid in, for example, performing rollback, building logical-to-physical mappings, determining static-versus-dynamic page statuses, and performing maintenance operations (e.g., wear leveling).
    Type: Grant
    Filed: September 16, 2011
    Date of Patent: October 25, 2016
    Assignee: APPLE INC.
    Inventors: Daniel J. Post, Nir Jacob Wakrat, Vadim Khmelnitsky
  • Patent number: 9477591
    Abstract: Incoming memory access requests are routed in a set of incoming queues, the incoming memory access requests comprise a range of host logical block addresses (LBAs) that correspond to a memory space of a primary memory. The host LBA range is mapped to clusters of secondary memory LBAs, the secondary memory LBAs corresponding to a memory space of a secondary memory. Each incoming memory access request queued in the set of incoming queues is transformed into one or more outgoing memory access requests that include a range of secondary memory LBAs or one or more clusters of secondary memory LBAs. The outgoing memory access requests are routed in a set of outgoing queues. The secondary memory is accessed using the outgoing memory access requests.
    Type: Grant
    Filed: July 6, 2012
    Date of Patent: October 25, 2016
    Assignee: SEAGATE TECHNOLOGY LLC
    Inventors: Sumanth Jannyavula Venkata, James David Sawin
  • Patent number: 9477592
    Abstract: A high performance computing (HPC) system includes computing blades having a first region that includes computing circuit boards having processors for performing a computation, and a second region that includes non-volatile memory for use in performing the computation. The regions are connected by a plurality of power connectors that convey power from the computing circuit boards to the memory, and a plurality of data connectors that convey data between the first and second regions. The power and data connectors are configured redundantly so that failure of a computing circuit board, a power connector, or a data connector does not interrupt the computation. A method of performing such a computation, and a computer program product implementing the method, are also disclosed.
    Type: Grant
    Filed: June 29, 2013
    Date of Patent: October 25, 2016
    Assignee: Silicon Graphics International Corp.
    Inventor: Steven Dean
  • Patent number: 9477593
    Abstract: A semiconductor device remaps the relationship between logical addresses and physical addresses of a semiconductor memory device at each first interval. The semiconductor device may include a wear leveling controller configured to select a first physical address of the semiconductor memory device to remap a logical address corresponding to the first physical address of the semiconductor memory device to a second physical address of the semiconductor memory device, and to adjust the first interval.
    Type: Grant
    Filed: October 2, 2014
    Date of Patent: October 25, 2016
    Assignee: SK HYNIX INC.
    Inventors: Dong-Gun Kim, Yong-Kee Kwon, Hong-Sik Kim
  • Patent number: 9477594
    Abstract: A system-in-package semiconductor device with a CPU, a first flash memory configured to store first instructions to be executed by the CPU, and a second flash memory configured to store second instructions to be executed in accordance with a predetermined control instruction included in the first instructions. The semiconductor device determines, prior to the CPU executing the instruction, whether an instruction read out from the first flash memory is a branch instruction, and if it is determined to be the branch instruction, causes the second flash memory to perforin read-out operation using a branch destination address value indicated by the branch instruction, and if a value of a program counter of the CPU matches the branch destination address value, while the second flash memory is in a state of being ready for read-out operation in accordance with the instruction, starts reading out the second instructions from the second flash memory.
    Type: Grant
    Filed: March 13, 2015
    Date of Patent: October 25, 2016
    Assignee: MegaChips Corporation
    Inventor: Takao Kusano
  • Patent number: 9477595
    Abstract: Some implementations include a method of managing a hosted non-volatile random-access memory (NVRAM) based storage subsystem that includes NVRAM devices. The method includes: receiving, at a device driver on the host computing device, write requests each requesting to write a respective unit of data to the NVRAM-based storage subsystem; categorizing the write requests into subgroups of write requests, where write requests within respective subgroups are mutually exclusive; ascertaining a load condition of each of several of the NVRAM devices of the NVRAM-based storage subsystem; identifying a target location on at least one NVRAM device to service a particular subgroup of write requests according to the ascertained load conditions of the NVRAM devices of the NVRAM-based storage subsystem; and servicing the particular subgroup of write requests by writing the corresponding units of data to the identified target location on the at least one NVRAM device of the NVRAM-based storage subsystem.
    Type: Grant
    Filed: September 14, 2015
    Date of Patent: October 25, 2016
    Assignee: Virident Systems Inc.
    Inventors: Vijay Karamcheti, Ashish Singhai, Shibabrata Mondal, Ajith Kumar
  • Patent number: 9477596
    Abstract: Systems and methods are disclosed for logical block address (“LBA) bitmap usage for a system having non-volatile memory (“NVM”). A bitmap can be stored in volatile memory of the system, where the bitmap can store the mapping statuses of one or more logical addresses. By using the bitmap, the system can determine the mapping status of a LBA without having to access the NVM. In addition, the system can update the mapping status of a LBA with minimal NVM accesses. By reducing the number of NVM accesses, the system can avoid triggering a garbage collection process, which can improve overall system performance.
    Type: Grant
    Filed: June 29, 2015
    Date of Patent: October 25, 2016
    Assignee: APPLE INC.
    Inventors: Daniel J. Post, Nir Jacob Wakrat, Vadim Khmelnitsky
  • Patent number: 9477597
    Abstract: Embodiments of the present technology are directed toward techniques for enabling different memory partitions to have different memory depths.
    Type: Grant
    Filed: March 25, 2011
    Date of Patent: October 25, 2016
    Assignee: NVIDIA CORPORATION
    Inventors: Brian Kelleher, Emmett Kilgariff
  • Patent number: 9477598
    Abstract: When multiple regional data clusters are used to store data in a system, maintaining cache consistency across different regions is important for providing a desirable user experience. In one embodiment, there is a master data cluster where all data writes are performed, and the writes are replicated to each of the slave data clusters in the other regions. Appended to the replication statements are invalidations for cache values for the keys whose values have been changed in the master data cluster. An apparatus in the master data cluster logs replication statements sent to the slave databases. When a slave database fails, the apparatus extracts the invalidations intended for the failed database and publishes the invalidations to a subscriber in the region of the failed database. The subscriber sends the invalidations to the local caches to cause stale data for those keys to be deleted from the caches.
    Type: Grant
    Filed: September 4, 2015
    Date of Patent: October 25, 2016
    Assignee: Facebook, Inc.
    Inventors: Yee Jiun Song, Philippe Vincent Ajoux, Harry C. Li, Jason Sobel, Sanjeev Kumar, Rajesh Nishtala
  • Patent number: 9477599
    Abstract: A method, computer program product, and system is described that enforces a release consistency with special accesses sequentially consistent (RCsc) memory model and executes release synchronization instructions such as a StRel event without tracking an outstanding store event through a memory hierarchy, while efficiently using bandwidth resources. What is also described is the decoupling of a store event from an ordering of the store event with respect to a RCsc memory model. The description also includes a set of hierarchical read/write combining buffers that coalesce stores from different parts of the system. In addition, a pool component maintains partial order of received store events and release synchronization events to avoid content addressable memory (CAM) structures, full cache flushes, as well as direct write-throughs to memory. The approach improves the performance of both global and local synchronization events since a store event may not need to reach main memory to complete.
    Type: Grant
    Filed: August 7, 2013
    Date of Patent: October 25, 2016
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Blake A. Hechtman, Bradford M. Beckmann
  • Patent number: 9477600
    Abstract: A data processing system 2 includes a cache hierarchy having a plurality of local cache memories and a shared cache memory 18. State data 30, 32 stored within the shared cache memory 18 on a per cache line basis is used to control whether or not that cache line of data is stored and managed in accordance with non-inclusive operation or inclusive operation of the cache memory system. Snoop transactions are filtered on the basis of data indicating whether or not a cache line of data is unique or non-unique. A switch from non-inclusive operation to inclusive operation may be performed in dependence upon the transaction type of a received transaction requesting a cache line of data.
    Type: Grant
    Filed: August 8, 2011
    Date of Patent: October 25, 2016
    Assignee: ARM LIMITED
    Inventors: Jamshed Jalal, Mark David Werkheiser, Brett Stanley Feero, Michael Alan Filippo
  • Patent number: 9477601
    Abstract: An apparatus includes a shared cache memory and a controller. The shared cache memory is configured to be divided into sectors by assigning one or more ways to each sector in accordance with a reusability level of data. The controller changes a sector division ratio indicating a ratio between way counts of the divided sectors of the shared cache memory, where the way count is a number of ways assigned to each sector. When first and second jobs are being executed in parallel, in response to a designation of a program of the second job, the controller calculates the sector division ratio, based on data access amount including a size and an access count of data accessed by the first and second jobs and a volume of the shared cache memory, and changes the sector division ratio of the shared cache memory to the calculated sector division ratio.
    Type: Grant
    Filed: April 23, 2015
    Date of Patent: October 25, 2016
    Assignee: FUJITSU LIMITED
    Inventors: Lei Zhang, Tsuyoshi Hashimoto
  • Patent number: 9477602
    Abstract: A method and a device are disclosed for a cache memory refill control.
    Type: Grant
    Filed: August 8, 2008
    Date of Patent: October 25, 2016
    Assignee: Intel Deutschland GmbH
    Inventors: Remi Hardy, Vincent Rezard
  • Patent number: 9477603
    Abstract: A system and method of operation exploit the limited associativity of a single cache set to force observable cache evictions and discover conflicts. Loads are issued to input memory addresses, one at a time, until a cache eviction is detected. After observing a cache eviction on a load from an address, that address is added to a data structure representing the current conflict set. The cache is then flushed, and loads are issued to all addresses in the current conflict set, so that all known conflicting addresses are accessed first, ensuring that the next cache miss will occur on a different conflicting address. The process is repeated, issuing loads from all input memory addresses, incrementally finding conflicting addresses, one by one. Memory addresses that conflict in the cache belong to the same partition, whereas memory addresses belonging to different partitions do not conflict.
    Type: Grant
    Filed: September 5, 2014
    Date of Patent: October 25, 2016
    Assignee: FACEBOOK, INC.
    Inventors: Carl A. Waldspurger, Oded Horovitz, Stephen A. Weis, Sahil Rihan
  • Patent number: 9477604
    Abstract: In one embodiment, a computer program product includes a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code including computer readable program code configured to initialize an internal look-up table cache provided internally to a switching processor, the internal look-up table cache being configured to store a plurality of look-up entries and being organized into at least three segments: a persistent flows entries segment, a non-persistent flows entries segment, and an access control list (ACL) segment. Each look-up entry relates to a traffic flow which has been or is anticipated to be received by a switching processor configured to access the internal look-up table cache. The computer readable program code is also configured to manage the internal look-up table cache to store entries relating to a particular segment type into a corresponding segment of the internal look-up table cache.
    Type: Grant
    Filed: July 24, 2015
    Date of Patent: October 25, 2016
    Assignee: Lenovo Enterprise Solutions (Singapore) Pte. Ltd.
    Inventors: Bhalachandra G. Banavalikar, Keshav G. Kamble, Dar-Ren Leu, Vijoy A. Pandey
  • Patent number: 9477605
    Abstract: A system includes a first memory and a device coupleable to the first memory. The device includes a second memory to cache data from the first memory. The second memory includes a plurality of rows, each row including a corresponding set of compressed data blocks of non-uniform sizes and a corresponding set of tag blocks. Each tag block represents a corresponding compressed data block of the row. The device further includes decompression logic to decompress data blocks accessed from the second memory. The device further includes compression logic to compress data blocks to be stored in the second memory.
    Type: Grant
    Filed: July 11, 2013
    Date of Patent: October 25, 2016
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Gabriel H. Loh, James M. O'Connor
  • Patent number: 9477606
    Abstract: A storage controller receives a request that corresponds to an access of a track. A determination is made as to whether the track corresponds to data stored in a solid state disk. Record staging to a cache from the solid state disk is performed, in response to determining that the track corresponds to data stored in the solid state disk, wherein each track is comprised of a plurality of records.
    Type: Grant
    Filed: November 2, 2015
    Date of Patent: October 25, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Michael T. Benhase, Lokesh M. Gupta, Joseph S. Hyde, II, Lee C. LaFrese
  • Patent number: 9477607
    Abstract: A storage controller receives a request that corresponds to an access of a track. A determination is made as to whether the track corresponds to data stored in a solid state disk. Record staging to a cache from the solid state disk is performed, in response to determining that the track corresponds to data stored in the solid state disk, wherein each track is comprised of a plurality of records.
    Type: Grant
    Filed: November 2, 2015
    Date of Patent: October 25, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Michael T. Benhase, Lokesh M. Gupta, Joseph S. Hyde, II, Lee C. LaFrese
  • Patent number: 9477608
    Abstract: An apparatus includes a fuse array, a random access memory (RAM), and a plurality of cores. The fuse array is disposed on a die, where the fuse array has a plurality of semiconductor fuses programmed with compressed configuration data. The RAM is disposed separately on the die. The plurality of cores is disposed separately on the die, where each of the plurality of cores is coupled to the fuse array and the RAM, and where the each of the plurality of cores accesses either the fuse array or the RAM upon power-up/reset as indicated by contents of a load data register to obtain the compressed configuration data.
    Type: Grant
    Filed: March 2, 2015
    Date of Patent: October 25, 2016
    Assignee: VIA ALLIANCE SEMICONDUCTOR CO., LTD.
    Inventors: G. Glenn Henry, Dinesh K. Jain
  • Patent number: 9477609
    Abstract: Described herein is a technology for providing enhanced transactional caching. In accordance with one aspect, a transactional cache associated with a database is configured. Execution of a write operation on the database is delayed until a flush is determined to be necessary. The write operation is delayed by writing to the transactional cache. The flush is invoked by writing inserted or updated records in the transactional cache to the database via a bulk operation.
    Type: Grant
    Filed: April 24, 2013
    Date of Patent: October 25, 2016
    Assignee: SAP SE
    Inventor: Bo Wang
  • Patent number: 9477610
    Abstract: Method and apparatus to efficiently manage data in caches. Data in caches may be managed based on priorities assigned to the data. Data may be requested by a process using a virtual address of the data. The requested data may be assigned a priority by a component in a computer system called an address range priority assigner (ARP). The ARP may assign a particular priority to the requested data if the virtual address of the requested data is within a particular range of virtual addresses. The particular priority assigned may be high priority and the particular range of virtual addresses may be smaller than a cache's capacity.
    Type: Grant
    Filed: December 23, 2011
    Date of Patent: October 25, 2016
    Assignee: Intel Corporation
    Inventors: Simon Steely, Jr., Samantika Subramaniam, William C. Hasenplaugh
  • Patent number: 9477611
    Abstract: A data access system including a processor and a final level cache module. The processor is configured to generate a request to access a first physical address. The final level cache module includes a dynamic random access memory (DRAM), a final level cache controller, and a DRAM controller. The final level cache controller is configured to (i) receive the request from the processor, and (ii) convert the first physical address to a first virtual address. The DRAM controller is configured to (i) convert the first virtual address to a second physical address, and (ii) access the DRAM based on the second physical address.
    Type: Grant
    Filed: October 21, 2014
    Date of Patent: October 25, 2016
    Assignee: Marvell World Trade Ltd.
    Inventor: Sehat Sutardja
  • Patent number: 9477612
    Abstract: A memory system includes a plurality of memory chips each including memory regions and page buffers; an address table suitable for storing mapping information for mapping physical addresses and logical addresses; a target table suitable for storing sequential physical addresses and sequential logical addresses; a selective output block suitable for selecting the memory regions as pages under selection by units of a page according to a preset order, based on the sequential physical addresses, and outputting data stored in page buffers of memory chips under selection corresponding to the pages under selection; and an expected read block suitable for reading data stored in selection-expected pages, which is to be selected following the pages under selection according to the preset order, to store in page buffers of selection-expected memory chips corresponding to the selection-expected pages, while the data stored in the page buffers under selection are outputted.
    Type: Grant
    Filed: May 21, 2015
    Date of Patent: October 25, 2016
    Assignee: SK Hynix Inc.
    Inventor: Jeen Park
  • Patent number: 9477613
    Abstract: A computer-implemented method includes receiving a request to access a cache entry in a shared cache. The request references a synonym for the cache entry. A cache directory of the shared cache includes, for each cache entry of the shared cache, a first-ranked synonym slot for storing a most recently used synonym for the cache entry and a second-ranked synonym slot for storing a second most recently used synonym for the cache entry. The method includes, based on receiving the request, writing contents of the first-ranked synonym slot for the cache entry to the second-ranked synonym slot for the cache entry, and writing the synonym referenced in the request to the first-ranked synonym slot for the cache entry.
    Type: Grant
    Filed: February 13, 2015
    Date of Patent: October 25, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Deanna Postles Dunn Berger, Michael F. Fee, Arthur J. O'Neil, Jr., Robert J. Sonnelitter, III
  • Patent number: 9477614
    Abstract: To comply with a policy for a computing device indicating that data written by the computing device to the storage volume after activation of the policy be encrypted, a sector map is accessed. The sector map identifies one or more sectors of a storage volume and also identifies, for each of the one or more sectors of the storage volume, a signature of the content of the sector. In response to a request to read the content of a sector, the content of the sector is returned without decrypting the content if the sector is one of the one or more sectors and the signature of the content of the sector matches the signature of the sector identified in the sector map. Otherwise, the content of the sector is decrypted and the decrypted content is returned.
    Type: Grant
    Filed: October 3, 2014
    Date of Patent: October 25, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Innokentiy Basmov, Magnus Bo Gustaf Nyström, Alex M. Semenko, Douglas M. MacIver, Donghui Li
  • Patent number: 9477615
    Abstract: A method for low latency data transfers between a wireless root device and a wireless endpoint device connected through a wireless peripheral-interconnect bus. The method comprises setting the wireless root device and the wireless endpoint device to operate in bi-directional low latency bus (BDLLB) mode; generating, by the wireless root device, a first data frame to be transmitted to the end-point device, wherein the first data frame includes at least a preamble, a block acknowledgment (ACK) frame and aggregation of a plurality of medium access control service data units (MSDUs) according to an order they received from a data link layer of the wireless peripheral-interconnect bus; and transmitting the first data frame to the wireless endpoint device over a wireless medium.
    Type: Grant
    Filed: August 11, 2009
    Date of Patent: October 25, 2016
    Assignee: Qualcomm Incorporated
    Inventors: Gal Basson, Tal Azogui
  • Patent number: 9477616
    Abstract: Several systems and methods of chip select are described. In one such method, a device maintains two identifiers, (ID_a and ID_m). When the device receives a command, it examines the values of ID_a and ID_m relative to a third reference identifier (ID_s). If either ID_a or ID_m is equivalent to ID_s, the device executes the command, otherwise, the device ignores the command. By using two different identification methods, a system has options in choosing to activate devices, being able to selectively switch between selecting multiple devices and single devices in a quick manner. In another such method, a device may have a persistent area that stores identification information such as an ID_a. Thus, system functionality may remain independent from any defect/marginality associated with the physical or logical components required for initial ID_a assignment of all devices in the system.
    Type: Grant
    Filed: August 7, 2013
    Date of Patent: October 25, 2016
    Assignee: Micron Technology, Inc.
    Inventors: Doyle Rivers, Paul D. Ruby, Anand S. Ramalingam, Rajesh Sundaram, Julie M. Walker
  • Patent number: 9477617
    Abstract: A memory buffering system is disclosed that arbitrates bus ownership through an arbitration scheme for memory elements in chain architecture. A unified host memory controller arbitrates bus ownership for transfer to a unified memory buffer and other buffers within the chain architecture. The system is used within a communication system with a bus in chain architectures and parallel architectures.
    Type: Grant
    Filed: April 10, 2014
    Date of Patent: October 25, 2016
    Assignee: MONTEREY RESEARCH, LLC
    Inventors: Qamrul Hasan, Stephan Rosner, Roger Dwain Isaac
  • Patent number: 9477618
    Abstract: An information processing device, comprising: a memory; and one or more central processing units coupled to the memory and configured to: control accesses to a device based on requests from users, record a start time of each access to the device and an end time of the access to the device, determine a load state of the device based on an elapsed time period from the start time to the end time, and limit, based on the load state of the device, a number of threads for one of the users, the threads being concurrently executed to access the device based on access requests to the device from the one of the users.
    Type: Grant
    Filed: February 10, 2015
    Date of Patent: October 25, 2016
    Assignee: FUJITSU LIMITED
    Inventor: Hideki Takakura
  • Patent number: 9477619
    Abstract: Disclosed herein are system, method and/or computer program product embodiments for increasing memory bandwidth when accessing a plurality of memory devices. An embodiment operates by executing, by at least one processor, a first read operation to read data from a first memory device following an access time for the first memory device. The embodiment further includes executing, by the at least one processor, a second read operation to read data from a second memory device following an access time for the second memory device. The access time for the second memory device is substantially the same or longer than the access time for the first memory device plus a time it takes to read data from the first memory device.
    Type: Grant
    Filed: June 10, 2013
    Date of Patent: October 25, 2016
    Inventors: Qamrul Hasan, Dawn M. Hopper, Clifford Alan Zitlaw
  • Patent number: 9477620
    Abstract: A storage device of a storage system includes a device Direct Memory Access (DMA) configured to calculate a data transfer amount based on size information of data provided to a DMA queue; a command manager configured to receive the data transfer amount from the device DMA and to calculate a transfer speed using a speed mode table; and a device interface configured to transfer the transfer speed to a host.
    Type: Grant
    Filed: July 8, 2014
    Date of Patent: October 25, 2016
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Dong-Min Kim, Sangyoon Oh, HyunSoo Cho, Jeong Hur
  • Patent number: 9477621
    Abstract: The invention concerns a bandwidth control method in an on-chip system comprising at least one main master module, at least one secondary master module, at least one slave module and a bus connected to each module on a communication link, the bus comprising interconnection means to make at least one common slave module communicate with at least one main master module and with at least one secondary master module via at least one common path portion, the method comprising the following steps carried out for each common slave module: first detection of a first request to access the common slave module, issued by a main master module, definition of a blocking time Dj associated with the common slave module, blocking, during blocking time Dj, of any data transfer on the at least one common path portion between a secondary master module and the common slave module.
    Type: Grant
    Filed: March 4, 2014
    Date of Patent: October 25, 2016
    Assignee: SAGEM DEFENSE SECURITE
    Inventors: Celine Liu, Nicolas Charrier, Nicolas Marti
  • Patent number: 9477622
    Abstract: A transaction processing method is disclosed to solve the issue of multiple producers (software and hardware) and one or more consumers operating in a peer or hierarchical system. The transaction processing method is a deterministic method operable in a system having any number of producers. The producers themselves may be any combination of hardware and software and may be part of peer or hierarchical systems.
    Type: Grant
    Filed: February 7, 2012
    Date of Patent: October 25, 2016
    Assignee: INTEL CORPORATION
    Inventors: Balaji Parthasarathy, Marc A. Goldschmidt
  • Patent number: 9477623
    Abstract: Interconnect circuitry is configured to provide data routes via which at least one initiator device may access at least one recipient device. The circuitry including: at least one input for receiving transaction requests from at least one initiator device; at least one output for outputting transaction requests to the at least one recipient device; and at least one path for transmitting transaction requests between at least one input and at least one output. Also includes is control circuitry for routing the received transaction requests from at least one input to at least one output and responds to a barrier transaction request to maintain an ordering of at least some transaction requests with respect to said barrier transaction request within a stream of transaction requests passing along one of said at least one paths. Barrier transaction requests include an indicator of transaction requests whose ordering is to be maintained.
    Type: Grant
    Filed: August 6, 2013
    Date of Patent: October 25, 2016
    Assignee: ARM Limited
    Inventors: Peter Andrew Riocreux, Bruce James Mathewson, Christopher William Laycock, Richard Roy Grisenthwaite
  • Patent number: 9477624
    Abstract: In a real-time application, one or more computational tasks execute according to a time schedule and use input data from input devices and/or output data from output devices. One or more of the input devices or output devices may be unscheduled devices that attempt to access the peripheral bus at unscheduled times. Such unscheduled bus access can cause the time schedule to become comprised. Various methods for arbitrating access to the bus to better integrate the bus access with the time schedule followed by the application are described.
    Type: Grant
    Filed: April 9, 2014
    Date of Patent: October 25, 2016
    Assignee: NATIONAL INSTRUMENTS CORPORATION
    Inventor: Sundeep Chandhoke
  • Patent number: 9477625
    Abstract: Reversible connectors for accessory devices are described. In one or more implementations, a connector cable for an accessory of a host computing device is configured such that a head of the connector cable may be plugged into a corresponding port of the host in either orientation (straight or reverse). The host computing device is configured to sample signals associated with allocated pins of the connector to detect connection of the connector to an accessory port and to ascertain an orientation of the connector. A combination of high and low values of signals conveyed via these allocated pins upon insertion of the connector may be used by a controller of the host to distinguish between different types of devices and to resolve the orientation of the connector cable. A switching mechanism of the host computing device may then be configured to automatically route signals accordingly.
    Type: Grant
    Filed: March 31, 2016
    Date of Patent: October 25, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Heng Huang, Duane Martin Evans, Yi He, Gene Robert Obie
  • Patent number: 9477626
    Abstract: A two pin communication interface bus and control circuits are used with circuit boards, integrated circuits, or embedded cores within integrated circuits. One pin carries data bi-directionally and address and instruction information from a controller to a selected port. The other pin carries a clock signal from the controller to a target port or ports in or on the desired circuit or circuits. The bus may be used for serial access to circuits where the availability of pins on ICs or terminals on cores is minimal. The bus is used for communication, such as serial communication related to the functional operation of an IC or core design, or serial communication related to test, emulation, debug, and/or trace operations of an IC or core design.
    Type: Grant
    Filed: January 6, 2014
    Date of Patent: October 25, 2016
    Assignee: Texas Instruments Incorporated
    Inventor: Lee D. Whetsel
  • Patent number: 9477627
    Abstract: A processor includes at least one core, a power control unit, and a first interconnect to couple with a peripheral controller. The first interconnect is to provide a first uni-directional communication path for communication of first power management data from the processor to the peripheral controller. Other embodiments are described and claimed.
    Type: Grant
    Filed: December 26, 2012
    Date of Patent: October 25, 2016
    Assignee: Intel Corporation
    Inventors: Shaun M. Conrad, William Knolla, Douglas R. Moran, SM M. Rahman, Jawad Haj-Yihia, Alon Naveh, Ohad Falik
  • Patent number: 9477628
    Abstract: A collective communication apparatus and method for parallel computing systems. For example, one embodiment of an apparatus comprises a plurality of processor elements (PEs); collective interconnect logic to dynamically form a virtual collective interconnect (VCI) between the PEs at runtime without global communication among all of the PEs, the VCI defining a logical topology between the PEs in which each PE is directly communicatively coupled to a only a subset of the remaining PEs; and execution logic to execute collective operations across the PEs, wherein one or more of the PEs receive first results from a first portion of the subset of the remaining PEs, perform a portion of the collective operations, and provide second results to a second portion of the subset of the remaining PEs.
    Type: Grant
    Filed: September 28, 2013
    Date of Patent: October 25, 2016
    Assignee: Intel Corporation
    Inventors: Allan D. Knies, David Pardo Keppel, Dong Hyuk Woo, Joshua B. Fryman
  • Patent number: 9477629
    Abstract: A chained information exchange system (10) comprising a chain of modules (1, 2, 3, 4, 5), each module (1, 2, 3, 4, 5) being connected to one or two other modules (1, 2, 3, 4, 5) via digital buses (11, 12, 13, 14, 15), thereby forming a chain that is open or else a continuous loop that is closed. Each digital bus (11, 12, 13, 14, 15) is a hardened digital bus, capable of withstanding external electromagnetic disturbances, and it is unidirectional. A signal travels in said information exchange system (10) and consequently through each module (1, 2, 3, 4, 5), and after passing through a module (1, 2, 3, 4, 5), said signal contains information that the module (1, 2, 3, 4, 5) through which it has passed does not modify and that is addressed to at least one other module (1, 2, 3, 4, 5), together with specific information that has been added by said module (1, 2, 3, 4, 5) through which it has passed and that is addressed to at least one other module (1, 2, 3, 4, 5).
    Type: Grant
    Filed: September 18, 2013
    Date of Patent: October 25, 2016
    Assignee: Airbus Helicopters
    Inventor: Jean Paul Petillon
  • Patent number: 9477630
    Abstract: A PCIe bus extension system, method, interface card and cable for connecting a PCIe-compliant peripheral device to a PCIe bus of a computer system. The interface card includes a printed circuit board, an edge connector adapted for insertion into a PCIe expansion slot on a motherboard of the computer system for transmitting PCIe signals between the motherboard and the interface card, an interface port configured to mate with a connector of the cable, and a logic integrated circuit on the printed circuit board, the logic integrated circuit functionally connecting the edge connector with the expansion slot and amplifying and propagating clock and data PCIe signals therebetween that are compliant with a PCIe standard. The interface card and cable lacks the capability of transmitting power therethrough to a PCIe-compliant peripheral device connected to the interface card through the interface port.
    Type: Grant
    Filed: February 7, 2014
    Date of Patent: October 25, 2016
    Assignee: Toshiba Corporation
    Inventors: Karl Reinke, Dokyun Kim, William Allen
  • Patent number: 9477631
    Abstract: Method and apparatus for implementing an optimized credit return mechanism for packet sends. A Programmed Input/Output (PIO) send memory is partitioned into a plurality of send contexts, each comprising a memory buffer including a plurality of send blocks configured to store packet data. A storage scheme using FIFO semantics is implemented with each send block associated with a respective FIFO slot. In response to receiving packet data written to the send blocks and detecting the data in those send blocks has egressed from a send context, corresponding freed FIFO slots are detected, and a lowest slot for which credit return indicia has not be returned is determined. The highest slot in a sequence of freed slots from the lowest slot is then determined, and corresponding credit return indicia is returned.
    Type: Grant
    Filed: June 26, 2014
    Date of Patent: October 25, 2016
    Assignee: Intel Corporation
    Inventors: Mark Debbage, Yatin M. Mutha
  • Patent number: 9477632
    Abstract: A computer system and a method are provided for accessing a peripheral component interconnect express (PCIe) endpoint device. The computer system includes a processor, a PCIe bus, and an access proxy. The access proxy connects to the processor and the PCIe endpoint device; the processor acquires an operation instruction, where the operation instruction instructs the processor to access the PCIe endpoint device through the access proxy, and send an access request to the access proxy according to the operation instruction; and the access proxy sends a response message of the access request to the processor after receiving the access request sent by the processor. Because the processor does not directly access the PCIe endpoint device to be accessed but completes access through the access proxy, thereby avoiding a machine check exception (MCE) reset for the processor.
    Type: Grant
    Filed: May 4, 2015
    Date of Patent: October 25, 2016
    Assignee: Huawei Technologies Co., Ltd.
    Inventor: Ge Du
  • Patent number: 9477633
    Abstract: An electrical connector assembly adapted for military use comprising a high-density maintenance connector which supports high bandwidth video export and low level maintenance functions, a lower density I/O connector, the stacking feature allows multiple branches in a distribution center, custom to each user, and the programmability allows for identical cables/stacking connectors to be used in different configurations.
    Type: Grant
    Filed: July 9, 2015
    Date of Patent: October 25, 2016
    Assignee: BAE Systems Information and Electronic Systems Integration Inc.
    Inventors: Michael J. Choiniere, Mark P. Devins, David A. Richards, Kevin D. Galli
  • Patent number: 9477634
    Abstract: Embodiments of the present invention relate to systems, devices and methods for translating I2C addresses. In accordance with an embodiment, a method for translating an I2C address includes receiving an original I2C address from a first I2C compatible device via an I2C-bus to which the first I2C compatible device is connected. The method also includes translating the original I2C address to a translated I2C address, and outputting the translated I2C address to a second I2C compatible device via a secondary side of the I2C-bus to which the slave device is connected. The original I2C address can be translated to the translated I2C address by subtracting an offset value from (or adding an offset value to) the original I2C address to produce the translated I2C address. Such an offset value can be specified using pin strapping, or by storing the offset value in a register or non-volatile memory that is programmable via the—I2C bus.
    Type: Grant
    Filed: March 11, 2011
    Date of Patent: October 25, 2016
    Assignee: INTERSIL AMERICAS LLC
    Inventors: David B. Bell, Phillip J. Benzel
  • Patent number: 9477635
    Abstract: A computer-implemented method for generating an identifier for a device includes identifying one or more applications from a plurality of applications installed on a device; generating an identifier for the device based on the one or more identified applications; and providing the generated identifier as identification for the device. Another computer-implemented method for identifying a device includes: receiving information that indicates one or more applications of a plurality of applications installed on a device; and identifying the device using the received information.
    Type: Grant
    Filed: December 3, 2012
    Date of Patent: October 25, 2016
    Assignee: Google Inc.
    Inventors: Alexander F. Kuscher, Brian Chu
  • Patent number: 9477636
    Abstract: Memory having internal processors, and methods of data communication within such a memory are provided. In one embodiment, an internal processor may concurrently access one or more banks on a memory array on a memory device via one or more buffers. The internal processor may be coupled to a buffer capable of accessing more than one bank, or coupled to more than one buffer that may each access a bank, such that data may be retrieved from and stored in different banks concurrently. Further, the memory device may be configured for communication between one or more internal processors through couplings between memory components, such as buffers coupled to each of the internal processors. Therefore, a multi-operation instruction may be performed by different internal processors, and data (such as intermediate results) from one internal processor may be transferred to another internal processor of the memory, enabling parallel execution of an instruction(s).
    Type: Grant
    Filed: October 21, 2009
    Date of Patent: October 25, 2016
    Assignee: Micron Technology, Inc.
    Inventors: Robert M. Walker, Dan Skinner, Todd A. Merritt, J. Thomas Pawlowski
  • Patent number: 9477637
    Abstract: Techniques for enhancing content being rendered on an electronic device are described herein. In some instances, the techniques include monitoring interactions between a user and a content item that the user consumes on an electronic device. The content items may include electronic books, songs, videos, documents, or the like. In response to detecting an interaction between the user and the content item, the techniques may publish an event indicative of the interaction to an application platform that hosts one or more applications. The applications may be designed to enhance the content that the user consumes in one or more specified ways.
    Type: Grant
    Filed: March 14, 2011
    Date of Patent: October 25, 2016
    Assignee: Amazon Technologies, Inc.
    Inventors: Charles L. Ward, Donald Ryan Willhoit, Lars C. Ulness, Gerald Ken Sun, Sherif M. Yacoub, Colin Bodell