Patents Issued in July 4, 2017
  • Patent number: 9697110
    Abstract: The application code testing computing device may receive a set of instructions for testing one or more user interface pages of an application under test. The computing device may determine that the set of instructions is written in a first format, and parse the set of instructions to determine an action to perform and to determine data to use for the action to perform in response to determining that the set of instructions is written in the first format. Systems described herein may convert the determined action to perform to a second format to generate a converted action to perform and/or convert the determined data to use for the action to perform to the second format to generate converted data. The application code testing computing device may send, to an application framework, the converted action to perform and the converted data.
    Type: Grant
    Filed: December 28, 2015
    Date of Patent: July 4, 2017
    Assignee: Bank of America Corporation
    Inventor: Alexander Arkadyev
  • Patent number: 9697111
    Abstract: A method of managing dynamic memory reallocation includes receiving an input address including a block bit part, a tag part, and an index part and communicating the index part to a tag memory array, receiving a tag group communicated by the tag memory array based on the index part, analyzing the tag group based on the block bit part and the tag part and changing the block bit part and the tag part based on a result of the analysis, and outputting an output address including a changed block bit part, a changed tag part, and the index part.
    Type: Grant
    Filed: August 2, 2013
    Date of Patent: July 4, 2017
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Jun Hee Yoo, Sung Hyun Lee, Dong Soo Kang
  • Patent number: 9697112
    Abstract: A method, system, and computer program product for managing a partial release for a unit of storage space in a storage facility is disclosed. The method, system, and computer program product include establishing an invocation threshold for initiating a partial release for a unit of storage space. The method, system, and computer program product include establishing a preservation threshold for releasing a fractional amount of the unit of storage space. The method, system, and computer program product include initiating the partial release in response to reaching the invocation threshold. The method, system, and computer program product include releasing the fractional amount based on the preservation threshold.
    Type: Grant
    Filed: December 2, 2016
    Date of Patent: July 4, 2017
    Assignee: International Business Machines Corporation
    Inventors: Miguel A. Perez, David C. Reed, Max D. Smith, Carrie B. Wood
  • Patent number: 9697113
    Abstract: A method, system, and computer program product for managing a partial release for a unit of storage space in a storage facility is disclosed. The method, system, and computer program product include establishing an invocation threshold for initiating a partial release for a unit of storage space. The method, system, and computer program product include establishing a preservation threshold for releasing a fractional amount of the unit of storage space. The method, system, and computer program product include initiating the partial release in response to reaching the invocation threshold. The method, system, and computer program product include releasing the fractional amount based on the preservation threshold.
    Type: Grant
    Filed: December 2, 2016
    Date of Patent: July 4, 2017
    Assignee: International Business Machines Corporation
    Inventors: Miguel A. Perez, David C. Reed, Max D. Smith, Carrie B. Wood
  • Patent number: 9697114
    Abstract: An apparatus, method, and system are provided as a solution for computer operation. An embodiment of the apparatus includes a device that interconnects the core of the computer through the memory interface. The apparatus provides a communication path from the computer core to the world wide network. Computing communication and storage functions of the conventional computer are incorporated in the apparatus. The purpose of the apparatus is to enable the computer data and program to flow into and out of the computer core without being stored on a peripheral device such a disk or other media.
    Type: Grant
    Filed: August 17, 2014
    Date of Patent: July 4, 2017
    Inventor: Mikhael Lerman
  • Patent number: 9697115
    Abstract: Embodiments herein relate to segmenting and pinning a first non-volatile memory to store cache information. In an embodiment, the first non-volatile memory is divided into a plurality of segments. Then, a first type of software of a plurality of types of software is pinned to a first segment of the plurality of segments. The first pinned segment stores the cache information associated with the first type of software.
    Type: Grant
    Filed: October 26, 2011
    Date of Patent: July 4, 2017
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Fred Charles Thomas, III, Walter A Gaspard, Chi W So
  • Patent number: 9697116
    Abstract: A writing method of a storage system which includes a host and a storage connected to the host, includes receiving journal data during a generation of a data writing transaction; inserting in a first map table, a plurality of entries, each entry including a first logical address of a first logical area of the storage and a second logical address of a second logical area of the storage; writing the journal data to a physical area of the storage corresponding to the first logical address; and remapping the physical area from the first logical address onto the second logical address using the plurality of entries when a size of a usable space of the first logical area is less than a desired value.
    Type: Grant
    Filed: August 4, 2014
    Date of Patent: July 4, 2017
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Sangmok Kim, Kyung Ho Kim, Yeong-jae Woo, Seunguk Shin, Sungyong Seo
  • Patent number: 9697117
    Abstract: The embodiments relate to a method for managing a garbage collection process. The method includes executing a garbage collection process on a memory block of user address space. A load instruction is run. Running the load instruction includes loading content of a storage location into a processor. The loaded content corresponds to a memory address. It is determined if the garbage collection process is being executed at the memory address. The load instruction is diverted to a process to move an object at the memory address to a location outside of the memory block in response to determining that the garbage collection process is being executed at the first memory address. The load instruction is continued in response to determining that the garbage collection process is not being executed at the memory address.
    Type: Grant
    Filed: August 24, 2015
    Date of Patent: July 4, 2017
    Assignee: International Business Machines Corporation
    Inventors: Giles R. Frazier, Michael Karl Gschwind, Younes Manton, Karl M. Taylor, Brian W. Thompto
  • Patent number: 9697118
    Abstract: A memory controller that implements an interleaving and arbitration scheme includes an address decoder that selects a memory bank for an access request based on a set of address least significant bits included in the access request. A core requiring sequential access to memory is routed to consecutive memory banks of the memory for consecutive access requests. When multiple cores request access to the same memory bank, an arbiter determines an access sequence for the cores. The arbiter can modify the access sequence without significantly increasing the complexity of the memory controller. The address decoder determines whether the selected memory banks are available and also whether an access request is a wide access request, in which case it selects two consecutive memory banks.
    Type: Grant
    Filed: December 9, 2015
    Date of Patent: July 4, 2017
    Assignee: NXP USA, INC.
    Inventors: Vivek Singh, Navdeep Singh Gill, Stephan M. Herrmann, Sumit Mittal
  • Patent number: 9697119
    Abstract: A method and apparatus for optimizing a configuration memory of a reconfigurable processor is provided. The method of optimizing the configuration memory of the reconfigurable processor includes analyzing parallelism of a loop of a program code based on an architecture of the reconfigurable processor and information regarding the configuration memory, scheduling groups of function units (FUs) to be activated in each cycle of the loop based on the analyzed parallelism, generating configuration data of each cycle, and determining a memory mapping to store the generated configuration data in the configuration memory.
    Type: Grant
    Filed: August 18, 2014
    Date of Patent: July 4, 2017
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Yoonseo Choi, Tai-song Jin, Donghoon Yoo
  • Patent number: 9697120
    Abstract: Embodiments of techniques and systems for execution of code with multiple page tables are described. In embodiments, a heterogenous system utilizing multiple processors may use multiple page tables to selectively execute appropriate ones of different versions of executable code. The system may be configured to support use of function pointers to virtual memory addresses. In embodiments, a virtual memory address may be mapped, such as during a code fetch. In embodiments, when a processor seeks to perform a code fetch using the function pointer, a page table associated with the processor may be used to translate the virtual memory address to a physical memory address where code executable by the processor may be found. Usage of multiple page tables may allow the system to support function pointers while utilizing only one virtual memory address for each function that is pointed to. Other embodiments may be described and claimed.
    Type: Grant
    Filed: May 9, 2012
    Date of Patent: July 4, 2017
    Assignee: Intel Corporation
    Inventor: Mike B. Macpherson
  • Patent number: 9697121
    Abstract: A computer-implemented method includes, in a transactional memory environment, identifying a transaction and identifying one or more cache lines. The cache lines are allocated to the transaction. A cache line record is stored. The cache line record includes a reference to the one or more cache lines. An indication is received. The indication denotes a request to demote the one or more cache lines. The cache line record is retrieved, and the one or more cache lines are released. A corresponding computer program product and computer system are also disclosed.
    Type: Grant
    Filed: September 29, 2015
    Date of Patent: July 4, 2017
    Assignee: International Business Machines Corporation
    Inventors: Jonathan D. Bradbury, Michael Karl Gschwind, Chung-Lung K. Shum, Timothy J. Slegel
  • Patent number: 9697122
    Abstract: A data processing device includes: data processing stages having a processing element, a stage memory and an event controller; and an inter-stage bus connecting the stages via an access point. External and process completion events are input into the controller for generating a task start event toward the processing element according to the external and process completion events. Each access point has an access table storing a data write history when the processing element writes data in the memory in a memory access process. The processing element executes an event access process indicative of memory access process completion after the processing element completes the memory access process to the memory via the access point. The access point executes another event access process for inputting the process completion event into the controller of another stage, based on the data write history when the processing element executes the event access process.
    Type: Grant
    Filed: March 10, 2015
    Date of Patent: July 4, 2017
    Assignee: DENSO CORPORATION
    Inventors: Tomoyoshi Funazaki, Hirofumi Yamamoto
  • Patent number: 9697123
    Abstract: An information processing device comprising a plurality of nodes, each nodes comprising an arithmetic operation device configured to execute an arithmetic process, and a main memory which stores data, wherein each of arithmetic operation devices belonging to each of the plurality of nodes is configured to read a target data of which the arithmetic operation unit executes the arithmetic operation from a storage device except the main memory, based on a first address information indicating a storage position in the storage device, and write the target data into the main memory of own node.
    Type: Grant
    Filed: May 15, 2015
    Date of Patent: July 4, 2017
    Assignee: Fujitsu Limited
    Inventor: Tomohito Otawa
  • Patent number: 9697124
    Abstract: A dynamic cache extension in a multi-cluster heterogeneous processor architecture is described. One embodiment is a system comprising a first processor cluster having a first level two (L2) cache and a second processor cluster having a second L2 cache. The system further comprises a controller in communication with the first and second L2 caches. The controller receives a processor workload input and a cache workload input from the first processor cluster. Based on processor workload input and the cache workload input, the cache controller determines whether a current task associated with the first processor cluster is limited by a size threshold of the first L2 cache or a performance threshold of the first processor cluster. If the current task is limited by the size threshold of the first L2 cache, the controller uses at least a portion of the second L2 cache as an extension of the first L2 cache.
    Type: Grant
    Filed: January 13, 2015
    Date of Patent: July 4, 2017
    Assignee: QUALCOMM Incorporated
    Inventors: Hee Jun Park, Krishna Vsssr Vanka, Sravan Kumar Ambapuram, Shirish Kumar Agarwal, Ashvinkumar Namjoshi, Harshad Bhutada
  • Patent number: 9697125
    Abstract: For each access request received at a shared cache of the data processing device, a memory access pattern (MAP) monitor predicts which of the memory banks, and corresponding row buffers, would be accessed by the access request if the requesting thread were the only thread executing at the data processing device. By recording predicted accesses over time for a number of access requests, the MAP monitor develops a pattern of predicted memory accesses by executing threads. The pattern can be employed to assign resources at the shared cache, thereby managing memory more efficiently.
    Type: Grant
    Filed: April 9, 2015
    Date of Patent: July 4, 2017
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Jaewoong Chung, Shekhar Srikantaiah, Lisa Hsu
  • Patent number: 9697126
    Abstract: Generating approximate usage measurements for shared cache memory systems is disclosed. In one aspect, a cache memory system is provided. The cache memory system comprises a shared cache memory system. A subset of the shared cache memory system comprises a Quality of Service identifier (QoSID) tracking tag configured to store a QoSID tracking indicator for a QoS class. The shared cache memory system further comprises a cache controller configured to receive a memory access request comprising a QoSID, and is configured to access a cache line corresponding to the memory access request. The cache controller is also configured to determine whether the QoSID of the memory access request corresponds to a cache line assigned to the QoSID. If so, the cache controller is additionally configured to update the QoSID tracking tag.
    Type: Grant
    Filed: September 22, 2015
    Date of Patent: July 4, 2017
    Assignee: QUALCOMM Incorporated
    Inventors: Derek Robert Hower, Harold Wade Cain, III
  • Patent number: 9697127
    Abstract: A semiconductor device may include a pattern detector configured to select any one of a plurality of stride patterns as a detect pattern by referring to an input address, and the pattern detector may be configured to generate a prefetch address. The semiconductor device may also include a prefetch controller configured to generate a prefetch request according to the prefetch address generated by the pattern detector. The semiconductor device may also include a first storage unit configured to store prefetch data provided from a memory device according to the prefetch request generated by the prefetch controller, and a second storage unit configured to store prefetch data removed from the first storage unit.
    Type: Grant
    Filed: June 10, 2014
    Date of Patent: July 4, 2017
    Assignee: SK hynix Inc.
    Inventors: Jung-Hyun Kwon, Min-Sung Kang
  • Patent number: 9697128
    Abstract: Embodiments relate to a prefetch threshold for cache restoration. An aspect includes determining, based on a task switch from an outgoing task to a current task in a processor, a prefetch threshold for a next task, the prefetch threshold corresponding to an expected runtime of the current task and an amount of time required to prefetch data for the next task. Another aspect includes starting prefetching for the next task while the current task is executing based on the prefetch threshold.
    Type: Grant
    Filed: June 8, 2015
    Date of Patent: July 4, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Harold W. Cain, III, David M. Daly, Brian R. Prasky, Vijayalakshmi Srinivasan
  • Patent number: 9697129
    Abstract: A method, a computer program product, and a computer system for implementing multiple window based segment prefetch used for data pages that are out of sequence. A computer initiates a buffer for the segment prefetch. The computer builds up windows in the buffer, each of the windows comprising data pages among which neighboring data pages are within a predetermined distance therebetween. The computer determines whether a respective one of the windows exceeds a predetermined window size. The computer triggers the segment prefetch, in response to determining that the respective one of the windows exceeds the predetermined window size. The computer uses an asynchronous I/O to get the data pages in the respective one of the windows.
    Type: Grant
    Filed: June 29, 2015
    Date of Patent: July 4, 2017
    Assignee: International Business Machines Corporation
    Inventors: Shuo Li, Xin Ying Yang, Xiang Zhou
  • Patent number: 9697130
    Abstract: A cache automation module detects the deployment of storage resources in a virtual computing environment and, in response, automatically configures cache services for the detected storage resources. The automation module may detect new storage resources by monitoring storage operations and/or requests, by use of an interface provided by virtualization infrastructure, and/or the like. The cache automation module may deterministically identify storage resources that are to be cached and automatically caching services for the identified storage resources.
    Type: Grant
    Filed: July 16, 2014
    Date of Patent: July 4, 2017
    Assignee: SanDisk Technologies LLC
    Inventors: Jaidil Karippara, Pavan Pamula, Yuepeng Feng, Vikuto Atoka Sema
  • Patent number: 9697131
    Abstract: A method for managing a variable caching structure for managing storage for a processor. The method includes using a multi-way tag array to store a plurality of pointers for a corresponding plurality of different size groups of physical storage of a storage stack, wherein the pointers indicate guest addresses that have corresponding converted native addresses stored within the storage stack, and allocating a group of storage blocks of the storage stack, wherein the size of the allocation is in accordance with a corresponding size of one of the plurality of different size groups. Upon a hit on the tag, a corresponding entry is accessed to retrieve a pointer that indicates where in the storage stack a corresponding group of storage blocks of converted native instructions reside. The converted native instructions are then fetched from the storage stack for execution.
    Type: Grant
    Filed: January 27, 2012
    Date of Patent: July 4, 2017
    Assignee: Intel Corporation
    Inventor: Mohammad Abdallah
  • Patent number: 9697132
    Abstract: A load request is received to retrieve a piece of data from a location in memory and the load request follows one or more store requests in a set of instructions to store a piece of data in the location in memory. One or more possible locations in a cache for a piece of data corresponding to the location in memory is determined. Each possible location of the one or more possible locations in the cache is determined. It is then determined if at least one location of the one or more possible locations contains data to be stored in the location in memory. Data in one location of the at least one location is loaded, the data in the one location is from a store request of the one or more store requests and the store request is closest in the set of instructions to the load request.
    Type: Grant
    Filed: December 7, 2016
    Date of Patent: July 4, 2017
    Assignee: International Business Machines Corporation
    Inventors: Khary J. Alexander, Jonathan T. Hsieh, Christian Jacobi, James R. Mitchell
  • Patent number: 9697133
    Abstract: A storage device made up of multiple storage media is configured such that one such media serves as a cache for data stored on another of such media. The device includes a controller configured to manage the cache by consolidating information concerning obsolete data stored in the cache with information concerning data no longer desired to be stored in the cache, and erase segments of the cache containing one or more of the blocks of obsolete data and the blocks of data that are no longer desired to be stored in the cache to produce reclaimed segments of the cache.
    Type: Grant
    Filed: July 25, 2016
    Date of Patent: July 4, 2017
    Assignee: NIMBLE STORAGE, INC.
    Inventor: Umesh Maheshwari
  • Patent number: 9697134
    Abstract: The present disclosure includes memory having a static cache and a dynamic cache. A number of embodiments include a memory, wherein the memory includes a first portion configured to operate as a static single level cell (SLC) cache and a second portion configured to operate as a dynamic SLC cache when the entire first portion of the memory has data stored therein.
    Type: Grant
    Filed: June 10, 2015
    Date of Patent: July 4, 2017
    Assignee: Micron Technology, Inc.
    Inventors: Christopher S. Hale, Sampath K. Ratnam, Kishore K. Muchherla
  • Patent number: 9697135
    Abstract: A translation lookaside buffer coherency unit with Emulated Purge (TCUEP) translates a first virtual address for a first instruction into a first physical address. The TCUEP detects a multi-processor coherency operation that will cause hit suppression for certain entries in a TLB and purging of certain entries in the TLB. The TCUEP translates a second virtual address for a second instruction into a second physical address and stores the second physical address in a second entry in the TLB. The TCUEP configures a second marker in the second entry to indicate that the hit suppression is not allowed for the second entry, and that the purging is not allowed for the second entry. The TCUEP receives a first address translation request that indicates a hit in the second entry. The TCUEP resolves the first address translation request by returning the second physical address.
    Type: Grant
    Filed: May 3, 2016
    Date of Patent: July 4, 2017
    Assignee: International Business Machines Corporation
    Inventors: Joerg Deutschle, Ute Gaertner, Lisa C. Heller
  • Patent number: 9697136
    Abstract: A data processing system utilizing a descriptor ring to facilitate communication between one or more general purpose processors and one or more devices employs a system memory management unit for managing access by the devices to a main memory. The system memory management unit uses address translation data for translating memory addresses generated by the devices into addresses supplied to the main memory. Prefetching circuitry within the system memory management unit serves to detect pointers read from the descriptor ring and to prefetch address translation data into the translation lookaside buffer of the system memory management unit.
    Type: Grant
    Filed: September 23, 2014
    Date of Patent: July 4, 2017
    Assignee: ARM Limited
    Inventors: Ali Ghassan Saidi, Anirruddha Nagendran Udipi, Matthew Lucien Evans, Geoffrey Blake, Robert Gwilym Dimond
  • Patent number: 9697137
    Abstract: A filter includes filter entries, each corresponding to a mapping between a virtual memory address and a physical memory address and including a presence indicator indicative which processing elements have the mapping present in their respective translation lookaside buffers (TLBs). A TLB invalidation (TLBI) instruction is received for a first mapping. If a first filter entry corresponding to the first mapping exists in the filter, the plurality of processing elements are partitioned into a first partition of zero or more processing elements that have the first mapping present in their TLBs and a second partition of zero or more processing elements that do not have the first mapping present in their TLBs based on the presence indicator of the first filter entry. The TLBI instruction is sent to the processing elements included in the first partition, and not those in the second partition.
    Type: Grant
    Filed: November 14, 2014
    Date of Patent: July 4, 2017
    Assignee: CAVIUM, INC.
    Inventor: Shubhendu Sekhar Mukherjee
  • Patent number: 9697138
    Abstract: A mapping may be changed in a table stored in memory. The table may map a first set of addresses, for a set of data, to a second set of addresses. The changing of the mapping may including mapping the first set of addresses to a third set of addresses. In response to the changing of the mapping, one or more flush operations may be executed to invalidate one or more entries within one or more address translation caches. The one or more entries may include the second set of addresses. In response to the executing of the one or more flush operations, a first test case may be run. The first test case may be to test whether any of the first set of addresses are mapping to the second set of addresses.
    Type: Grant
    Filed: January 16, 2017
    Date of Patent: July 4, 2017
    Assignee: International Business Machines Corporation
    Inventors: Vinod Bussa, Manoj Dusanapudi, Shakti Kapoor
  • Patent number: 9697139
    Abstract: For a cache in which a plurality of frequently accessed data segments are temporarily stored, reference count information of the plurality of data segments, in conjunction with least recently used (LRU) information, is used to determine a length of time to retain the plurality of data segments in the cache according to a predetermined weight, where notwithstanding the LRU information, those of the plurality of data segments having a higher reference counts are retained longer than those having lower reference counts.
    Type: Grant
    Filed: March 13, 2013
    Date of Patent: July 4, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Joseph S. Hyde, II, Subhojit Roy
  • Patent number: 9697140
    Abstract: Apparatus, systems, and methods for AES integrity check in memory are described. In one embodiment, a controller comprises logic to receive a write request from a host device to write a line of data to the memory device, determine a first plaintext cyclic redundancy check from the line of data, encrypt the line of data, encrypt the first plaintext CRC with a unique value to generate a first encrypted CRC, and store the encrypted line of data and the first encrypted CRC in memory. Other embodiments are also disclosed and claimed.
    Type: Grant
    Filed: September 23, 2014
    Date of Patent: July 4, 2017
    Assignee: Intel Corporation
    Inventor: Zion S. Kwok
  • Patent number: 9697141
    Abstract: A host access instruction is received from one of a plurality of channels which are served in parallel. The host access instruction includes an address range of one or more addresses and a type of access. The address range and type of access are compared against a table of stored address ranges and stored types of access associated with any pending host access instructions. It is determined whether to execute the host access instruction based at least in part on the comparison. If it is decided to execute the host access instruction, the host access instruction is forwarded for execution and the address range and the type of access from the host access instruction are stored in the table.
    Type: Grant
    Filed: September 25, 2015
    Date of Patent: July 4, 2017
    Assignee: SK Hynix Memory Solutions Inc.
    Inventors: Shengkun Bao, Kevin Landin, Ananthanarayanan Nagarajan, Kin Ming Chan
  • Patent number: 9697142
    Abstract: Execution-Aware Memory protection technologies are described. A processor includes a processor core and a memory protection unit (MPU). The MPU includes a memory protection table and memory protection logic. The memory protection table defines a first protection region in main memory, the first protection region including a first instruction region and a first data region. The memory protection logic determines a protection violation by a first instruction when 1) an instruction address, resulting from an instruction fetch operation corresponding to the first instruction, is not within the first instruction region or 2) a data address, resulting from an execute operation corresponding to the first instruction, is not within the first data region.
    Type: Grant
    Filed: June 24, 2016
    Date of Patent: July 4, 2017
    Assignee: Intel Corporation
    Inventors: Patrick Koeberl, Steffen Schulz
  • Patent number: 9697143
    Abstract: A memory system is configured for access by a plurality of computer processing units. An address lock bit is configured in a translation table of the memory system. The address lock supports both address lock shared and address lock exclusive functions. A storage manager of an operating system configured to obtain exclusive access to an entry in a DAT table either by obtaining an address space lock exclusive or obtaining an address space lock shared, and setting a lock bit in a DAT entry.
    Type: Grant
    Filed: September 30, 2015
    Date of Patent: July 4, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Charles E. Mari, Harris M. Morgenstern, Thomas F. Rankin, Peter J. Relson, Elpida Tzortzatos
  • Patent number: 9697144
    Abstract: A processing device is to receive a block input/output (I/O) call in a first format from a container hosted on a host machine to request data on a storage device and translate the block I/O call from the first format into a device emulator call in a second format. The second format is compatible with a device emulator on the host machine. The device emulator emulates a block storage device for the container. The processing device is to send the device emulator call in the second format to the device emulator, and receive, from the device emulator, a response that include the data on the storage device for the container.
    Type: Grant
    Filed: August 23, 2016
    Date of Patent: July 4, 2017
    Assignee: Red Hat, Inc.
    Inventors: Huamin Chen, Feiran Zheng, Stephen James Watt, Andrew Grover
  • Patent number: 9697145
    Abstract: In some embodiments, a memory interface system includes a memory interface circuit and a memory controller. The memory interface circuit is configured to communicate with a memory device. The memory controller is configured, in response to the memory device operating at a first frequency, to store configuration information corresponding to the memory device operating at a second frequency. The memory controller is further configured, in response to the memory device transitioning to the second frequency, to send the configuration information to the memory interface circuit. In some embodiments, storing the configuration information may result in some memory requests being provided to the memory device more quickly, as compared to a different memory interface system where the configuration information is not stored at the memory controller.
    Type: Grant
    Filed: June 12, 2015
    Date of Patent: July 4, 2017
    Assignee: Apple Inc.
    Inventors: Robert E. Jeter, Neeraj Parik
  • Patent number: 9697146
    Abstract: A processor uses a token scheme to govern the maximum number of memory access requests each of a set of processor cores can have pending at a northbridge of the processor. To implement the scheme, the northbridge issues a minimum number of tokens to each of the processor cores and keeps a number of tokens in reserve. In response to determining that a given processor core is generating a high level of memory access activity the northbridge issues some of the reserve tokens to the processor core. The processor core returns the reserve tokens to the northbridge in response to determining that it is not likely to continue to generate the high number of memory access requests, so that the reserve tokens are available to issue to another processor core.
    Type: Grant
    Filed: December 27, 2012
    Date of Patent: July 4, 2017
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Douglas R. Williams, Vydhyanathan Kalyanasundharam, Marius Evers, Michael K. Fertig
  • Patent number: 9697147
    Abstract: A processing system comprises one or more processor devices and other system components coupled to a stacked memory device having a set of stacked memory layers and a set of one or more logic layers. The set of logic layers implements a metadata manager that offloads metadata management from the other system components. The set of logic layers also includes a memory interface coupled to memory cell circuitry implemented in the set of stacked memory layers and coupleable to the devices external to the stacked memory device. The memory interface operates to perform memory accesses for the external devices and for the metadata manager. By virtue of the metadata manager's tight integration with the stacked memory layers, the metadata manager may perform certain memory-intensive metadata management operations more efficiently than could be performed by the external devices.
    Type: Grant
    Filed: August 6, 2012
    Date of Patent: July 4, 2017
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Gabriel H. Loh, James M. O'Connor, Bradford M. Beckmann, Michael Ignatowski
  • Patent number: 9697148
    Abstract: An apparatus for managing a memory having a plurality of command/address pins is provided. The apparatus includes a command generating module and a control module. The command generating module generates a set of target commands. The set of target commands include a plurality of command groups. Each of the command groups corresponds to at least one command/address pin of the plurality of command/address pins. It is known that the memory accesses the set of target commands from the plurality of command/address pins at a target time point. The control module controls the command groups to have different transition times prior to the target time points when the command groups are transmitted on the plurality of command/address pins.
    Type: Grant
    Filed: October 6, 2015
    Date of Patent: July 4, 2017
    Assignee: MStar Semiconductor, Inc.
    Inventors: Yung Chang, Chen-Nan Lin, Chung-Ching Chen
  • Patent number: 9697149
    Abstract: A method for generating interrupt requests, the method comprising: receiving, by a first circuit, an indication of an occurrence of an interrupt triggering event; determining whether a time difference between the occurrence of the interrupt triggering event and an occurrence of a last interrupt triggering event that preceded the occurrence of the interrupt triggering event exceeded a threshold; generating, by the first circuit, an interrupt request in response to the occurrence of the interrupt triggering event if the time difference exceeded the threshold; and delaying, for a predetermined delay period after a generation of a last interrupt request, a generating of the interrupt request that is responsive to the occurrence of the interrupt triggering event if the time difference is shorter than the threshold.
    Type: Grant
    Filed: September 16, 2013
    Date of Patent: July 4, 2017
    Inventors: Said Bshara, Erez Izenberg, Yaniv Shapira, Nafea Bshara
  • Patent number: 9697150
    Abstract: A real-time operating system (OS) for an embedded system may be configured for asynchronous handling of input and output (I/O) operations. When application code is executing, the OS may be configured to register I/O interrupts and queue I/O operations. When no application code is executing, the OS may be configured to call appropriate interrupt handlers. As result, the OS may maintain the real-time execution that may be required of applications on an embedded system while providing the flexibility and scalability offered by an operating system.
    Type: Grant
    Filed: September 4, 2014
    Date of Patent: July 4, 2017
    Inventors: Jory Schwach, Brian Bosak
  • Patent number: 9697151
    Abstract: A data processing system includes a plurality of processors, each processor configured to execute instructions, including a message send instruction, and a message filtering unit. The message filtering system is configured to receive messages from one or more of the plurality of processors in response to execution of message send instructions, each message indicating a message type and a message payload. The message filtering unit is configured to determined, for each received message, a recipient processor indicated by the message payload. The message filtering system is further configured to, in response to receiving, within a predetermined interval of time, at least two messages having a same recipient processor and indicating a same message type, delivering a single interrupt request indicated by the same message type to the same recipient processor, wherein the single interrupt request is representative of the at least two messages.
    Type: Grant
    Filed: November 19, 2014
    Date of Patent: July 4, 2017
    Assignee: NXP USA, Inc.
    Inventor: William C. Moyer
  • Patent number: 9697152
    Abstract: An I/O processing system includes an operating system configured to control an input/output (I/O) device, which executes an I/O operation in the I/O processing system. The I/O processing system further includes a channel subsystem module configured to output an interrogation command signal while the I/O device executes an I/O request. The I/O device returns an I/O status signal indicating a status of an ongoing I/O request, and the operating system is configured to dynamically determine a timeout event of the I/O request based on the status of the ongoing I/O request.
    Type: Grant
    Filed: January 6, 2016
    Date of Patent: July 4, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Dale F. Riedy, Harry M. Yudenfriend
  • Patent number: 9697153
    Abstract: An embodiment of the disclosure relates to the field of data transmission, in particular to a data transmission method and a data transmission device, for solving the problems of low data transmission efficiency and poor Direct Memory Access (DMA) performance in a method of arbitrating each DMA channel in a round-robin mode and transmitting data according to an arbitration result. The method in the embodiment of the disclosure includes that: for each DMA channel, an arbitration unit corresponding to the channel among a plurality of arbitration units is determined according to transmission performance corresponding to data in the channel; and when data in channels corresponding to at least two arbitration units need to be transmitted, the data are transmitted according to priorities of the at least two arbitration units.
    Type: Grant
    Filed: September 26, 2013
    Date of Patent: July 4, 2017
    Assignees: ZTE CORPORATION, Sanechips Technology Co., Ltd.
    Inventor: Zhou Liao
  • Patent number: 9697154
    Abstract: Systems and methods for managing message signaled interrupts in virtualized computer systems. An example method may comprise: intercepting, by a hypervisor running on a host computer system, a memory read operation initiated by a virtual machine with respect to a first interrupt mapping table, the first interrupt mapping table stored by a physical device associated with the virtual machine, the memory read operation specifying an offset relative to a base address of the first interrupt mapping table; reading at least part of the first interrupt mapping table; and returning, to the virtual machine, a value referenced by the offset within a second interrupt mapping table, the second interrupt mapping table residing in a memory of the host computer system.
    Type: Grant
    Filed: August 20, 2014
    Date of Patent: July 4, 2017
    Assignee: Red Hat Israel, Ltd.
    Inventors: Alex Lee Williamson, Michael Tsirkin
  • Patent number: 9697155
    Abstract: A method, system and computer program product are provided for detecting and configuring an external input/output (IO) enclosure in a computer system. A PCIE Host Bridge (PHB) in a system unit is connected to a plurality of PCIE add-in card slots. One or more cables are connected between the PHB and the external enclosure. System firmware including detecting and configuring functions uses sideband structure for detecting a PCIE cable card and configuring the external input/output (IO) enclosure.
    Type: Grant
    Filed: November 21, 2014
    Date of Patent: July 4, 2017
    Assignee: International Business Machines Corporation
    Inventors: Jesse P. Arroyo, Ellen M. Bauman, Curtis S. Eide, Christopher J. Engel, Gregory M. Nordstrom, Harald Pross, Thomas R. Sand, William A. Thompson
  • Patent number: 9697156
    Abstract: A method, system and computer program product are provided for detecting and configuring an external input/output (IO) enclosure in a computer system. A PCIE Host Bridge (PHB) in a system unit is connected to a plurality of PCIE add-in card slots. One or more cables are connected between the PHB and the external enclosure. System firmware including detecting and configuring functions uses sideband structure for detecting a PCIE cable card and configuring the external input/output (IO) enclosure.
    Type: Grant
    Filed: September 26, 2015
    Date of Patent: July 4, 2017
    Assignee: International Business Machines Corporation
    Inventors: Jesse P. Arroyo, Ellen M. Bauman, Curtis S. Eide, Christopher J. Engel, Gregory M. Nordstrom, Harald Pross, Thomas R. Sand, William A. Thompson
  • Patent number: 9697157
    Abstract: Aspects of transmit and receive connectivity devices are described. In one embodiment, a transmit connectivity device includes a first high definition multimedia interface (HDMI) port, signal processing circuitry configured to receive a media signal and to convert the media signal to a converged media signal, a multi-position multi-contact port, and a second HDMI port. The multi-position multi-contact port may include a first plurality of contacts coupled to the signal processing circuitry to transmit the converged media signal to at least one sink device, and a subset of a second plurality of contacts of the HDMI port may be coupled to the first plurality of contacts. Using the connectivity devices described herein, HDMI cables may be relied upon to communicate combinations of media signals, including full uncompressed high definition video, audio, 100BaseT Ethernet, and various control signals.
    Type: Grant
    Filed: August 20, 2014
    Date of Patent: July 4, 2017
    Assignee: Vanco International, LLC
    Inventor: Joseph Allen Whitaker
  • Patent number: 9697158
    Abstract: A reset of a synchronization counter is synchronized to an external deterministic signal. Entry into the link transmitting state is further synchronized with the deterministic signal. A target latency is identified for a serial data link. A data sequence is received synchronized with a synchronization counter associated with the data link. Target latency can be maintained using the data sequence.
    Type: Grant
    Filed: November 12, 2014
    Date of Patent: July 4, 2017
    Assignee: Intel Corporation
    Inventors: Venkatraman Iyer, Darren S. Jue, Jeff Willey, Robert G. Blankenship
  • Patent number: 9697159
    Abstract: Described are embodiments of methods, apparatuses, and systems for time synchronization of a multi-protocol I/O interconnect of computer apparatus. A method for synchronizing time across the multi-protocol I/O interconnect may include determining a first local time at a first port of a first switch of a switching fabric of a multi-protocol interconnect and a second local time at a second port of a second switch of the switching fabric, calculating an offset value based at least in part on a difference between the first local time and the second local time, and adjusting the second local time by the offset value. Other embodiments may be described and claimed.
    Type: Grant
    Filed: December 27, 2011
    Date of Patent: July 4, 2017
    Assignee: Intel Corporation
    Inventors: Prashant R. Chandra, Vladimir Yudovich, Eran Galil, Efraim Kugman