Patents Examined by Chun-Kuan Lee
  • Patent number: 10402343
    Abstract: Various embodiments are generally directed to instrumenting an interrupt service routine. A non-executable address may be provisioned and added to an execution stack to cause a page fault on a known address after execution of an interrupt service routine. The page fault on the known address can be used to trigger instrumentation operations and also to return to the interrupted process.
    Type: Grant
    Filed: November 20, 2017
    Date of Patent: September 3, 2019
    Assignee: INTEL CORPORATION
    Inventors: Manohar R. Castelino, John Hinman
  • Patent number: 10402295
    Abstract: In an example implementation, a method automatically determines items related to various computer peripherals for purchase, suggestion, or promotion by determining the identity of the peripherals, providing customized notifications for a status of the peripherals, and facilitating the convenient purchase of such items using a unified interface experience. These peripherals may be printers of various different brands and the items may be ink or toner cartridges.
    Type: Grant
    Filed: May 30, 2014
    Date of Patent: September 3, 2019
    Assignee: Staples, Inc.
    Inventors: Elizabeth A. Beiriger, Bolivar E. Bravo, Gustavo A. Pospischel, Robert M. Levangie
  • Patent number: 10372449
    Abstract: A method of an aspect includes receiving a packed data operation mask concatenation instruction. The packed data operation mask concatenation instruction indicates a first source having a first packed data operation mask, indicates a second source having a second packed data operation mask, and indicates a destination. A result is stored in the destination in response to the packed data operation mask concatenation instruction. The result includes the first packed data operation mask concatenated with the second packed data operation mask. Other methods, apparatus, systems, and instructions are disclosed.
    Type: Grant
    Filed: February 27, 2017
    Date of Patent: August 6, 2019
    Assignee: Intel Corporation
    Inventors: Bret L. Toll, Robert Valentine, Jesus Corbal San Andrian, Elmoustapha Ould-Ahmed-Vall, Mark J. Charney
  • Patent number: 10360035
    Abstract: Instructions and logic provide extended vector suffix comparisons for Boyer-Moore searches. Some embodiments, responsive to an instruction specifying: a pattern source operand and a target source operand, compare each of m data elements of the pattern operand with each data element of the target operand. A first and second equal ordered aggregation operation are performed from the comparisons according to the m data elements of the pattern source operand. A result of the first and second aggregation operations indicating whether or not a possible match exists between the m data elements of the pattern source operand and d data element positions relative to data elements of the target source operand is stored. Ordering of the data elements of the pattern and the target operands may be reversed for the second aggregation operation, and d may be a sum of m?1 and the quantity of target operand elements in some embodiments.
    Type: Grant
    Filed: January 15, 2016
    Date of Patent: July 23, 2019
    Assignee: Intel Corporation
    Inventor: Shih J. Kuo
  • Patent number: 10360060
    Abstract: Provided is a virtual interface, a “Forwarder” and a Virtual Block Storage Device (VBSD). The virtual interface is the interface between a Command/Response Queue (CRQ), which receives CRQ commands from a virtual machine monitor, and a common interface of the Forwarder. The Forwarder receives I/O commands in a format associated with the common interface and converts the commands into a generic I/O format. The reformatted command is transmitted to the VBSD. The virtual machine monitor sends a read or write (R/W) request to the virtual interface, which passes the request to the Forwarder. The Forwarder receives the request, converts the request into a form readable by the VBSD and transmits the converted request to the VBSD. The VBSD transmits the request to a block storage device and returns the response to the Forwarder. The Forwarder replies to the request from the virtual interface with the response from the ABSD. The virtual interface then responds to the virtual machine monitor.
    Type: Grant
    Filed: December 15, 2017
    Date of Patent: July 23, 2019
    Assignee: International Business Machines Corporation
    Inventors: Jorge R. Nogueras, Morgan J. Rosas, James Y. Wang
  • Patent number: 10353624
    Abstract: A method for writing data in a buffer to a magnetic recording tape includes identifying a size of an unused area of the magnetic recording tape based on a current writing position on the magnetic recording tape. An upper limit of a capacity for data that can be stored in the buffer is determined based on the size of the unused area. The predetermined data is stored, according to a command for storing predetermined data in the buffer, in the buffer on condition that the capacity for data in the buffer does not exceed the upper limit.
    Type: Grant
    Filed: July 29, 2015
    Date of Patent: July 16, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Yutaka Oishi
  • Patent number: 10353845
    Abstract: Systems, methods, circuits and computer-readable mediums for adaptive speed single-wire communications. In one aspect, a method includes receiving a sensing signal from a device through a single-wire bus, analyzing one or more properties of the received sensing signal, the one or more properties including at least one of a pulse width of the sensing signal and a duration between sequential pulses in the sensing signal, adjusting one or more communication parameters for single-wire communications with the device based on the analyzed one or more properties, and transmitting a specific signal to the device through the single-wire bus at an adjusted transmission speed based on the adjusted one or more communication parameters.
    Type: Grant
    Filed: February 12, 2015
    Date of Patent: July 16, 2019
    Assignee: Atmel Corporation
    Inventors: Kerry David Maletsky, Randy Melton, Jeffrey S. Hapke
  • Patent number: 10346337
    Abstract: An Input/Output (I/O) adapter device coupled to a host device can perform data mirroring or data striping of payload data for transmitting to multiple network destinations. In some embodiments, a virtual machine running on the host device or on the I/O adapter device may be aware of the capabilities of the I/O adapter device to perform data mirroring or data striping and configure the I/O adapter device for performing data mirroring or data striping operations. In some embodiments, a virtual machine may be agnostic to the capabilities of the I/O adapter device to perform data mirroring or data striping and the I/O adapter device may perform data mirroring or data striping “under the hood” or without being configured by the virtual machine.
    Type: Grant
    Filed: March 30, 2015
    Date of Patent: July 9, 2019
    Assignee: Amazon Technologies, Inc.
    Inventor: Robert Michael Johnson
  • Patent number: 10318469
    Abstract: A semiconductor memory device comprises a memory cell array and a data inversion circuit. The data inversion circuit is configured to receive a first unit data and a second unit data stored in the memory cell array through different first data lines, determine, while the first unit data is transmitted to a data input/output (I/O) buffer through a second data line, whether to the invert the second unit data based on a Hamming distance between the first unit data and the second unit data, and transmit the inverted or non-inverted second unit data to the data I/O buffer through the second data line.
    Type: Grant
    Filed: February 12, 2015
    Date of Patent: June 11, 2019
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Min-Soo Jang, Gong-Heum Han, Chul-Sung Park, Jang-Woo Ryu, Chang-Yong Lee, Tae-Seong Jang
  • Patent number: 10311003
    Abstract: An embodiment provides a method, including: providing a multi-protocol connector in an electronic device for connecting at least one storage device thereto; determining, using an operative coupling between the multi-protocol connector and the electronic device, if the electronic device supports one or more protocols of the multi-protocol connector; and providing an informational prompt for each determined protocol of the multi-protocol connector that the electronic device supports. Other aspects are described and claimed.
    Type: Grant
    Filed: March 26, 2014
    Date of Patent: June 4, 2019
    Assignee: Lenovo (Singapore) Pte. Ltd.
    Inventors: Marc Richard Pamley, Alan Ladd Painter, Omar Ali Ali, Timothy Samuel Farrow
  • Patent number: 10310998
    Abstract: Methods, apparatus, and computer-readable storage media are disclosed for applying filtering operations to data transferred as part of a direct memory access (DMA) operation. In one example of the disclosed technology, a system includes a processor, memory, and a direct memory access (DMA) engine coupled to the memory for reading a set of data from a selected range of read memory addresses for the memory without using the processor. A line buffer coupled to the DMA engine is configured to receive DMA read data and temporarily store a portion, but not all of the data set being read by the DMA engine in a line buffer. A digital filter is configured to apply a filtering operation to a windowed subset of the buffered portion of the data set, producing filtered data that is stored to a selected range of write memory addresses for the memory, without using the processor.
    Type: Grant
    Filed: June 30, 2015
    Date of Patent: June 4, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ryan Haraden, Robert Shearer, Matthew Tubbs, Adam Muff, Ashish Gupta
  • Patent number: 10303616
    Abstract: A system for managing virtual memory. The system includes a first processing unit configured to execute a first operation that references a first virtual memory address. The system also includes a first memory management unit (MMU) associated with the first processing unit and configured to generate a first page fault upon determining that a first page table that is stored in a first memory unit associated with the first processing unit does not include a mapping corresponding to the first virtual memory address. The system further includes a first copy engine associated with the first processing unit. The first copy engine is configured to read a first command queue to determine a first mapping that corresponds to the first virtual memory address and is included in a first page state directory. The first copy engine is also configured to update the first page table to include the first mapping.
    Type: Grant
    Filed: October 16, 2013
    Date of Patent: May 28, 2019
    Assignee: NVIDIA CORPORATION
    Inventors: Jerome F. Duluk, Jr., Chenghuan Jia, John Mashey, Cameron Buschardt, Sherry Cheung, James Leroy Deming, Samuel H. Duncan, Lucien Dunning, Robert George, Arvind Gopalakrishnan, Mark Hairgrove
  • Patent number: 10303626
    Abstract: Systems and methods for inserting flops at the chip-level to produce a signal delay for preventing buffer overflow are disclosed herein. Shells of modules described in an RTL description and their connections are analyzed to determine a signal latency between a sender block and a receiver block. The logical interfaces of the shells are grouped in a structured document with associated rules. Flops are inserted between the sender block and the receiver block to introduce a flop delay to meet physical design timing requirement and prevent a buffer of the receiver block from overflowing due to data that is already in-flight when a flow control signal is sent by the receiver block. The sum of a delay on a data line and a delay on a flow control line measured in clock cycles must be less than a depth of the buffer.
    Type: Grant
    Filed: March 31, 2015
    Date of Patent: May 28, 2019
    Assignee: Cavium, LLC.
    Inventors: Weihuang Wang, Premshanth Theivendran, Nikhil Jayakumar, Gerald Schmidt, Srinath Atluri
  • Patent number: 10296484
    Abstract: The embodiments relate to dynamically re-allocating lanes of a computer bus. A computer system having a processor in communication with a module is booted. Allocation of lanes among adapters in communication with connectors of the computer bus is controlled at boot-time and, in response to detection of an additional adapter received after boot-time, an additional allocation of lanes to the additional adapter is dynamically controlled. The additional allocation includes allocating unallocated lanes to the additional adapter, and re-allocating at least one lane from the initial allocation in response to the unallocated lanes being insufficient.
    Type: Grant
    Filed: December 1, 2015
    Date of Patent: May 21, 2019
    Assignee: International Business Machines Corporation
    Inventors: Victor A. Garibay, Daniel E. Hurlimann, Chetan Mehta, Fernando Pizzano, Thomas R. Sand
  • Patent number: 10268604
    Abstract: A resource arbiter in a system with multiple shared resources and multiple requestors may implement an adaptive resource management approach that takes advantage of time-varying requirements for granting access to at least some of the shared resources. For example, due to pipelining, signal timing issues, or a lack of information, more resources than are required to perform a task may need to be available for allocation to a requestor before its request for the needed resources is granted. The requestor may request only the resources it needs, relying on the arbiter to determine whether additional resources are required in order to grant the request. The arbiter may park a high priority requestor on idle resources, thus allowing requests for those resources by the high priority requestor to be granted on the first clock cycle of a request. Other requests may not be granted until at least a second clock cycle.
    Type: Grant
    Filed: July 9, 2015
    Date of Patent: April 23, 2019
    Assignee: Oracle International Corporation
    Inventor: John Deane Coddington
  • Patent number: 10261879
    Abstract: Novel instructions, logic, methods and apparatus are disclosed to test transactional execution status. Embodiments include decoding a first instruction to start a transactional region. Responsive to the first instruction, a checkpoint for a set of architecture state registers is generated and memory accesses from a processing element in the transactional region associated with the first instruction are tracked. A second instruction to detect transactional execution of the transactional region is then decoded. An operation is executed, responsive to decoding the second instruction, to determine if an execution context of the second instruction is within the transactional region. Then responsive to the second instruction, a first flag is updated. In some embodiments, a register may optionally be updated and/or a second flag may optionally be updated responsive to the second instruction.
    Type: Grant
    Filed: December 24, 2015
    Date of Patent: April 16, 2019
    Assignee: Intel Corporation
    Inventors: Ravi Rajwar, Bret L. Toll, Konrad K. Lai, Matthew C. Merten, Martin G. Dixon
  • Patent number: 10248601
    Abstract: A system includes at least one industrial control and automation field device and a remote terminal unit (RTU). The RTU includes input/output (I/O) terminals configured to be coupled to the field devices. The RTU also includes one or more I/O modules having one or more reconfigurable I/O channels configured to be coupled to the I/O terminals. Each reconfigurable I/O channel is configurable as an analog input, an analog input supporting digital communication, an analog output, an analog output supporting digital communication, a digital input, a digital output, and a pulse accumulator input. The RTU further includes at least one processing device configured to control a configuration of each of the one or more reconfigurable I/O channels.
    Type: Grant
    Filed: March 27, 2014
    Date of Patent: April 2, 2019
    Assignee: Honeywell International Inc.
    Inventors: Paul F. McLaughlin, David A. Eisner, Jason T. Urso
  • Patent number: 10248524
    Abstract: Novel instructions, logic, methods and apparatus are disclosed to test transactional execution status. Embodiments include decoding a first instruction to start a transactional region. Responsive to the first instruction, a checkpoint for a set of architecture state registers is generated and memory accesses from a processing element in the transactional region associated with the first instruction are tracked. A second instruction to detect transactional execution of the transactional region is then decoded. An operation is executed, responsive to decoding the second instruction, to determine if an execution context of the second instruction is within the transactional region. Then responsive to the second instruction, a first flag is updated. In some embodiments, a register may optionally be updated and/or a second flag may optionally be updated responsive to the second instruction.
    Type: Grant
    Filed: December 24, 2015
    Date of Patent: April 2, 2019
    Assignee: Intel Corporation
    Inventors: Ravi Rajwar, Bret L. Toll, Konrad K. Lai, Matthew C. Merten, Martin G. Dixon
  • Patent number: 10223227
    Abstract: Novel instructions, logic, methods and apparatus are disclosed to test transactional execution status. Embodiments include decoding a first instruction to start a transactional region. Responsive to the first instruction, a checkpoint for a set of architecture state registers is generated and memory accesses from a processing element in the transactional region associated with the first instruction are tracked. A second instruction to detect transactional execution of the transactional region is then decoded. An operation is executed, responsive to decoding the second instruction, to determine if an execution context of the second instruction is within the transactional region. Then responsive to the second instruction, a first flag is updated. In some embodiments, a register may optionally be updated and/or a second flag may optionally be updated responsive to the second instruction.
    Type: Grant
    Filed: December 24, 2015
    Date of Patent: March 5, 2019
    Assignee: Intel Corporation
    Inventors: Ravi Rajwar, Bret L. Toll, Konrad K. Lai, Matthew C. Merten, Martin G. Dixon
  • Patent number: 10210065
    Abstract: Novel instructions, logic, methods and apparatus are disclosed to test transactional execution status. Embodiments include decoding a first instruction to start a transactional region. Responsive to the first instruction, a checkpoint for a set of architecture state registers is generated and memory accesses from a processing element in the transactional region associated with the first instruction are tracked. A second instruction to detect transactional execution of the transactional region is then decoded. An operation is executed, responsive to decoding the second instruction, to determine if an execution context of the second instruction is within the transactional region. Then responsive to the second instruction, a first flag is updated. In some embodiments, a register may optionally be updated and/or a second flag may optionally be updated responsive to the second instruction.
    Type: Grant
    Filed: December 24, 2015
    Date of Patent: February 19, 2019
    Assignee: Intel Corporation
    Inventors: Ravi Rajwar, Bret L. Toll, Konrad K. Lai, Matthew C. Merten, Martin G. Dixon