Patents Examined by John Roche
  • Patent number: 8645596
    Abstract: Techniques are described that can be used by a message engine to notify a core or hardware thread of activity. For example, an inter-processor interrupt can be used to notify the core or hardware thread. The message engine may generate notifications in response to one or more message received from a transmitting message engine. Message engines may communicate without sharing memory space.
    Type: Grant
    Filed: December 30, 2008
    Date of Patent: February 4, 2014
    Assignee: Intel Corporation
    Inventors: Amit Kumar, Steven King, Ram Huggahalli, Xia Zhu, Mazhar Memon, Frank Berry, Nitin Bhardwaj, Theodore Willke, II
  • Patent number: 8627304
    Abstract: A method for vectorization of a block of code is provided. The method comprises receiving a first block of code as input; and converting the first block of code into at least a second block of code and a third block of code. The first block of code accesses a first set of memory addresses that are potentially misaligned. The second block of code performs conditional leaping address incrementation to selectively access a first subset of the first set of memory addresses. The third block of code accesses a second subset of the first set of memory addresses starting from an aligned memory address, simultaneously accessing multiple memory addresses at a time. No memory address belongs to both the first subset and the second subset of memory addresses.
    Type: Grant
    Filed: July 28, 2009
    Date of Patent: January 7, 2014
    Assignee: International Business Machines Corporation
    Inventors: Dorit Nuzman, Ira Rosen, Ayal Zaks
  • Patent number: 8612648
    Abstract: In one embodiment, a method for implementing quality of service (QOS) processing in a data bus interface. Each input read/write command is stored in a first-in-first-out queue. Each input read/write command includes a respective QOS value. In response to an input first read/write command having a QOS value higher than the QOS value of the read/write command at a head of the first-in-first-out queue, the QOS value of each of a first number of read/write commands is increased as each read/write command is removed from the head of the first-in-first-out queue.
    Type: Grant
    Filed: July 19, 2010
    Date of Patent: December 17, 2013
    Assignee: Xilinx, Inc.
    Inventor: James J. Murray
  • Patent number: 8595700
    Abstract: The present invention provides a component reuse method for reusing at least first component that is selected from a first software system to a second software system. The method comprises the steps of: analyzing the first software system, determining dependencies of the at least one first component of the first software system and acquiring relevant interface information; generating surrogates based on the dependencies and the interface information, which will be deployed in the first operating environment and in the second operating environment respectively, wherein the surrogates allow the second software system to invoke service provided by the at least one first component in the first operating environment and allow the at least one first component to invoke relevant service provided in the second software system.
    Type: Grant
    Filed: May 6, 2008
    Date of Patent: November 26, 2013
    Assignee: International Business Machines Corporation
    Inventors: He Yuan Huang, Shih-Gong Li, Hua Fang Tan, Wei Zhao, Jun Zhu
  • Patent number: 8589897
    Abstract: Disclosed herein are systems, methods, and computer readable-media for obfuscating code. The method includes extracting a conditional statement from a computer program, creating a function equivalent to the conditional statement, creating a pointer that points to the function, storing the pointer in an array of pointers, replacing the conditional statement with a call to the function using the pointer at an index in the array, and during runtime of the computer program, dynamically calculating the index corresponding to the pointer in the array. In one aspect, a subset of instructions is extracted from a path associated with the conditional statement and the subset of instructions is placed in the function to evaluate the conditional statement. In another aspect, the conditional statement is replaced with a call to a select function that (1) calculates the index into the array, (2) retrieves the function pointer from the array using the index, and (3) calls the function using the function pointer.
    Type: Grant
    Filed: August 26, 2008
    Date of Patent: November 19, 2013
    Assignee: Apple Inc.
    Inventors: Gideon M. Myles, Julien Lerouge, Tanya Michelle Lattner, Augustin J. Farrugia
  • Patent number: 8578062
    Abstract: Methods and apparatuses for configuring a universal serial bus (USB) connection. The method comprises receiving, at a USB port, first identification data that includes a generic device class code and a vendor identifier. Receiving the first identification causes one of enabling interaction with a peripheral device in accordance with functionality specified by the generic device class code if the host device does not support software associated with the vendor identifier, or sending, at the USB port, a query to the peripheral device if the host device does support software associated with the vendor identifier, the query sent to determine whether the peripheral device supports at least one function different from the functionality specified by the generic device class code.
    Type: Grant
    Filed: October 17, 2012
    Date of Patent: November 5, 2013
    Assignee: BlackBerry Limited
    Inventors: Maxime Matton, Christopher Pattenden, Robert H. Wood
  • Patent number: 8447898
    Abstract: In one embodiment, to determine what tasks may be offloaded to a peripheral hardware device (e.g., to be performed in hardware on the peripheral device, rather than on the CPU(s) of the host computer), an indication from the at least one peripheral hardware device may be provided, without the peripheral hardware device first being queried to determine the task offload capabilities provided by the peripheral hardware device. In one embodiment, a large packet that includes a plurality of extension headers may be offloaded to the peripheral hardware device for segmentation. An indication of the offset where the extension headers end may be provided in connection with the large packet. In another embodiment, a packet with extension headers that come before an encryption header in the packet are not offloaded to peripheral hardware device for encryption, while packets with no extension headers before the encryption header may be offloaded.
    Type: Grant
    Filed: October 28, 2005
    Date of Patent: May 21, 2013
    Assignee: Microsoft Corporation
    Inventors: Avnish Kumar Chhabra, Aditya Dube, Sanjay Kaniyar, James T. Pinkerton
  • Patent number: 8438317
    Abstract: According to this invention, when initialization of a storage medium such as a flash memory is erase of the data area, the processing can be stopped. When the processing is stopped, at least initialization of the management area has been completed, and processing using the storage medium can be executed. If erase processing is not stopped but proceeds to the end, no erase processing need be performed in writing new data, and high-speed write is promised. For this purpose, when complete formatting is designated, the management area of the file system is first initialized. Then, erase processing for the data area of the file system is executed by a predetermined block size. If it is determined that stop is designated during the data area erase processing, the processing ends, but the management area has already been initialized.
    Type: Grant
    Filed: March 22, 2012
    Date of Patent: May 7, 2013
    Assignee: Canon Kabushiki Kaisha
    Inventor: Satoshi Aoyama
  • Patent number: 8429319
    Abstract: A multi-port memory device includes a plurality of serial I/O data pads for providing a serial input/output (I/O) data communication; a plurality of ports for performing the serial I/O data communication with external devices through the serial I/O data pads; a plurality of banks for performing a parallel I/O data communication with the ports; a plurality of first data buses for transferring first signals from the ports to the banks; a plurality of second data buses for transferring second signals from the banks to the ports; and a switching unit for connecting the first data buses with the second data buses in response to a control signal.
    Type: Grant
    Filed: September 18, 2006
    Date of Patent: April 23, 2013
    Assignee: Hynix Semiconductor Inc.
    Inventor: Chang-Ho Do
  • Patent number: 8392635
    Abstract: Embodiments of the invention are directed to systems and methods for reducing the number of interrupts on a controller for a non-volatile storage device to improve data transfer performance of the storage system. The embodiments described herein selectively enable an interrupt generated by host transfer hardware for a host command. The interrupt can be enabled or disabled by considering the command type, availability of interface resources to accept additional host transfers, and the command size. Embodiments described herein are useful for host interfaces implementing a tagging scheme for host transfers with a limited range of identification tags.
    Type: Grant
    Filed: December 22, 2010
    Date of Patent: March 5, 2013
    Assignee: Western Digital Technologies, Inc.
    Inventors: Jing Booth, Rebekah A. Wilson
  • Patent number: 8392632
    Abstract: Provided is a method and an apparatus for processing data at a high speed by a UE for data communication. In the method, received data is divided into a header and payload information, which are then stored in different memories. In the method, header processing and payload data processing can be performed in parallel, and two memory devices can perform parallel processing without sharing a bus.
    Type: Grant
    Filed: February 14, 2008
    Date of Patent: March 5, 2013
    Assignee: Samsung Electronics Co., Ltd
    Inventors: Hye-Jeong Kim, Do-Young Lee, Hyun-Gu Lee, Byoung-Jae Bae, Young-Taek Kim
  • Patent number: 8312179
    Abstract: Systems and methods for configuring a universal serial bus (USB) including for connection by a peripheral device by detecting an attach event at a USB port on the peripheral device; receiving, at the USB port, a first request for device identification; sending, at the USB port, a first identification data; receiving, at the USB port, a query related to the first identification data, the query indicating software associated with the vendor identifier is supported by the sender of the query; simulating a detach and then an attach at the USB port; receiving, at the USB port, a second request for device identification; and sending, at the USB port, a second identification data that includes an indication that the peripheral device supports at least one function from a plurality of functions that are different from the functionality defined by a generic device class code.
    Type: Grant
    Filed: September 21, 2011
    Date of Patent: November 13, 2012
    Assignee: Research In Motion Limited
    Inventors: Maxime Matton, Christopher Pattenden, Robert H. Wood
  • Patent number: 8312183
    Abstract: For one disclosed embodiment, an apparatus comprises a display and a circuit. The circuit has a first port to be coupled to communicate over data lines with a Universal Serial Bus (USB) port of a device external to the apparatus. The circuit is operable to detect resume signaling of a duration of less than one millisecond and to transition the first port from a first state corresponding to an idle state of the data lines to a second, enabled state in response to the resume signaling. For one disclosed embodiment, the circuit is operable to drive resume signaling for a duration of less than one millisecond to initiate transition of the first port from a first state corresponding to an idle state of the data lines to a second, enabled state. Other embodiments are also disclosed.
    Type: Grant
    Filed: April 20, 2010
    Date of Patent: November 13, 2012
    Assignee: Intel Corporation
    Inventor: John S. Howard
  • Patent number: 8296485
    Abstract: The disclosure provides a system and a method of processing keystrokes entered on an electronic device. The method comprises: monitoring for activation of two or more keys on the keyboard; evaluating whether the activation of those keys occurs within a set window of time; evaluating locations of those keys. After these evaluations, if the keystroke conflict is determined to not have been produced then characters for those keys are generated in order of their activations. If the keystroke conflict is determined to have been produced, then the method arbitrates between those keys to select a key utilizing a dictionary to automatically determine the key to be selected. In the dictionary, its entries are related to each of those keys combined with any previously entered keystrokes. The method then processes the selected key to generate on a display one character, which is associated with the selected key.
    Type: Grant
    Filed: June 23, 2011
    Date of Patent: October 23, 2012
    Assignee: Research In Motion Limited
    Inventor: Piotr Tysowski
  • Patent number: 8296468
    Abstract: A storage controller that performs user-friendly information display, simplifies updating of support information, has external storage controllers to provide sufficient input/output performance, and expands the range of external storage controllers to be supported; and a controlling method for that storage controller. The storage controller includes a code extract/convert unit for converting a first code indicating a vendor name and/or device name of an external storage controller, obtained based on inquiry data transmitted from the external storage controller, into a second code indicating a real vendor name and/or real device name of the external storage controller. The storage controller creates support information that compiles information of each model regarding whether or not it can be connected to the respective external storage controllers. Furthermore, a path control system and a timeout time can be set for the respective external storage controllers.
    Type: Grant
    Filed: September 29, 2011
    Date of Patent: October 23, 2012
    Assignee: Hitachi, Ltd.
    Inventors: Kosaku Kambayashi, Dai Taninaka
  • Patent number: 8291132
    Abstract: The present invention provides an improved method and system of improving the efficiency, and ensuring the integrity, of a data transfer in a serverless backup, or third party copy, system having one or more physical storage devices. The present invention provides improvements to the processing of serverless copy, or EXTENDED COPY, commands, and transfers of data associated with such commands. These improvements increase the speed at which such commands are executed and completed, and increase the capabilities of copy managers in serverless backup systems. The improvements also make better use of the storage devices involved in the data backup process. Certain aspects of the invention allow for execution of data segments of any size, and providing a compiler for generating input/output actions.
    Type: Grant
    Filed: October 14, 2010
    Date of Patent: October 16, 2012
    Assignee: ATTO Technology, Inc.
    Inventors: David J Cuddihy, Shawn C Martin, David A Snell
  • Patent number: 8285895
    Abstract: A system arrangement including a memory unit having a memory interface in accordance with a handshake-free protocol between the memory and an accessing master, a bus connected to the memory unit and first and second masters. The first master operative to access the memory unit through the bus and the memory interface and operative to perform interrupts following reception of an interrupt request through an interrupt interface. The second master operative to access the memory unit through the bus and memory interface. The second master being configured to transfer an interrupt request to the first processor before accessing the memory unit.
    Type: Grant
    Filed: August 6, 2007
    Date of Patent: October 9, 2012
    Assignee: Winbond Electronics Corporation
    Inventors: Michal Schramm, Nir Tasher
  • Patent number: 8266352
    Abstract: The keys which are used to activate the machine functions are embodied as keys (T1 Tn) which are directly connected to one of the SPS inputs (9). One of the several key planes can be selected by the user interface (13) of the PC coupled to the SPS. A control unit (4), which is connected to the SPS inputs (9) and which processes data in the SPS, is provided. Said control unit contains information about the keyboard layout of the keys (T1 Tn) on the respectively selected key plane by the PC by means of the data interface (8) and comprises a key signal which is arranged on the SPS entry (9).
    Type: Grant
    Filed: October 12, 2004
    Date of Patent: September 11, 2012
    Assignee: Robert Bosch GmbH
    Inventor: Jens Kleinfeld
  • Patent number: 8230133
    Abstract: A microcomputer has: a CPU; memory; a direct memory access controller which controls access to the above memory without passing through the CPU; a plurality of peripheral resources, each having prescribed functions corresponding to a given real resource number, and issuing an access request to the direct memory access controller to perform data transfer with the memory; and, a resource conversion unit, which performs signal conversion between the direct memory access controller and the plurality of peripheral resources. A portion of the peripheral resources among the plurality of peripheral resources are associated with logical resource numbers of the direct memory access controller by the resource conversion unit.
    Type: Grant
    Filed: January 18, 2005
    Date of Patent: July 24, 2012
    Assignee: Fujitsu Semiconductor Limited
    Inventor: Minoru Usui
  • Patent number: 8219727
    Abstract: A bridge device for a disk drive has the I/O terminals to which an external automatic controlling apparatus is connected, so the external automatic controlling apparatus directly controls a disk tray of the disk drive to move in or move out without a computer. In addition, the bridge device also further has a computer connecting port, to which the external computer is connected. The computer controls operations of the disk drive.
    Type: Grant
    Filed: February 20, 2008
    Date of Patent: July 10, 2012
    Assignee: Datatronics Technology, Inc.
    Inventors: Chih-Sheng Liu, Ming-Hsun Liu