Patents by Inventor James A. Kahle

James A. Kahle has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20070052562
    Abstract: Disclosed is a procedure or design approach for functional modules that may be used in connection with a multiprocessor integrated circuit chip. The approach includes keeping the dimensions of each module substantially the same and having the bus, power, clock and I/O connection configured the same on all modules. Further requirements for ease of use are to generalize the capability of each module as much as possible and to decentralize functions such as testing to be primarily performed within each module. The use of such considerations or rules substantially eases the design of a given type of custom chips, and based upon an initial chip design greatly facilitates the design of further custom chips, similar in application, but subsequent to the successful completion of the initial chip.
    Type: Application
    Filed: July 28, 2005
    Publication date: March 8, 2007
    Inventors: Harm Hofstee, James Kahle, Takeshi Yamazaki
  • Publication number: 20070016733
    Abstract: The present invention provides for atomic update primitives in an asymmetric single-chip heterogeneous multiprocessor computer system having a shared memory with DMA transfers. At least one lock line command is generated from a set comprising a get lock line command with reservation, a put lock line conditional command, and a put lock line unconditional command.
    Type: Application
    Filed: August 30, 2006
    Publication date: January 18, 2007
    Inventors: Michael Day, Charles Johns, James Kahle, Peichum Liu, Thuong Truong
  • Publication number: 20060190614
    Abstract: A computer architecture and programming model for high speed processing over broadband networks are provided. The architecture employs a consistent modular structure, a common computing module and uniform software cells. The common computing module includes a control processor, a plurality of processing units, a plurality of local memories from which the processing units process programs, a direct memory access controller and a shared main memory. A synchronized system and method for the coordinated reading and writing of data to and from the shared main memory by the processing units also are provided. A hardware sandbox structure is provided for security against the corruption of data among the programs being processed by the processing units. The uniform software cells contain both data and applications and are structured for processing by any of the processors of the network. Each software cell is uniquely identified on the network.
    Type: Application
    Filed: February 24, 2005
    Publication date: August 24, 2006
    Inventors: Erik Altman, Peter Capek, Michael Gschwind, Charles Johns, Harm Hofstee, Martin Hopkins, James Kahle, Sumedh Sathaye, John-David Wellman
  • Publication number: 20060179168
    Abstract: A system and method for flexible multiple protocols are presented. A device's logical layer may be dynamically configured on a per interface basis to communicate with external devices in a coherent or a non-coherent mode. In coherent mode, commands such as coherency protocol, system commands, and snoop response pass from the device's internal system bus to an external device, thereby creating a logical extension of the devices internal system bus. In non-coherent mode, the input-output bus unit receives commands from the internal system bus and generates non-coherent input-output commands, which are eventually received by an external device.
    Type: Application
    Filed: February 3, 2005
    Publication date: August 10, 2006
    Inventors: Scott Clark, Charles Johns, James Kahle
  • Publication number: 20060155955
    Abstract: A computer architecture and programming model for high speed processing over broadband networks are provided. The architecture employs a consistent modular structure, a common computing module and uniform software cells. The common computing module includes a control processor, a plurality of processing units, a plurality of local memories from which the processing units process programs, a direct memory access controller and a shared main memory. A synchronized system and method for the coordinated reading and writing of data to and from the shared main memory by the processing units also are provided. A hardware sandbox structure is provided for security against the corruption of data among the programs being processed by the processing units. The uniform software cells contain both data and applications and are structured for processing by any of the processors of the network. Each software cell is uniquely identified on the network.
    Type: Application
    Filed: January 10, 2005
    Publication date: July 13, 2006
    Inventors: Michael Gschwind, Charles Johns, Harm Hofstee, James Kahle
  • Publication number: 20060149861
    Abstract: Methods and apparatus provide for transferring a plurality of data blocks between a shared memory and a local memory of a processor in response to a single DMA command issued by the processor to a direct memory access controller (DMAC), wherein the processor is capable of operative communication with the shared memory and the DMAC is operatively coupled to the local memory.
    Type: Application
    Filed: January 5, 2005
    Publication date: July 6, 2006
    Inventors: Takeshi Yamazaki, Tsutomu Horikawa, James Kahle, Charles Johns, Michael Day, Peichun Liu
  • Publication number: 20060031836
    Abstract: The present invention provides for controlling the power consumption of an element. A first power control command is issued by software for the element. It is determined if the power control command corresponds to an allowable power control state for that element as defined by the hardware. If the power control command is not an allowable power control state for that element, the hardware sets the power control at a higher level than the power control state issued by the software. The software is real time software, and the software also sets minimally acceptable activity control states. A hierarchy of power consumption is defined for different elements of a chip by software, which provides the minimum level of power consumption by any element or sub-element on a chip.
    Type: Application
    Filed: August 5, 2004
    Publication date: February 9, 2006
    Applicant: International Business Machines Corporation
    Inventors: Jeffrey Brown, Michael Day, Harm Hofstee, Charles Johns, James Kahle, Michael Wang
  • Publication number: 20060031835
    Abstract: The present invention provides for controlling the power consumption of an element. A first power control command is issued by software for the element. It is determined if the power control command corresponds to an allowable power control state for that element as defined by the hardware. If the power control command is not an allowable power control state for that element, the hardware sets the power control at a higher level than the power control state issued by the software. A hierarchy of power consumption is defined for different elements of a chip by software, which provides the minimum level of power consumption by any element or sub-element on a chip.
    Type: Application
    Filed: August 5, 2004
    Publication date: February 9, 2006
    Applicant: International Business Machines Corporation
    Inventors: Michael Day, Harm Hofstee, Charles Johns, James Kahle
  • Publication number: 20050268048
    Abstract: A system for using a plurality of heterogeneous processors in a common computer system is presented. Each processor type in the heterogeneous group handles a particular instruction set. The processors share a common memory using a common bus. In one embodiment, one of the processor types accesses the memory using DMA instructions. In another embodiment, a cache for each type of processor is stored in the common memory pool. In one embodiment, one or more PowerPC processors shares a memory with one or more Synergistic Processing Complex (SPC). A common table is used to track and maintain memory for the various processors.
    Type: Application
    Filed: June 30, 2005
    Publication date: December 1, 2005
    Inventors: Harm Hofstee, Charles Johns, James Kahle
  • Publication number: 20050216610
    Abstract: The present invention provides a method and a system for providing cache management commands in a system supporting a DMA mechanism and caches. A DMA mechanism is set up by a processor. Software running on the processor generates cache management commands. The DMA mechanism carries out the commands, thereby enabling the software program management of the caches. The commands include commands for writing data to the cache, loading data from the cache, and for marking data in the cache as no longer needed. The cache can be a system cache or a DMA cache.
    Type: Application
    Filed: March 25, 2004
    Publication date: September 29, 2005
    Applicant: International Business Machines Corporation
    Inventors: Charles Johns, James Kahle, Peichun Liu, Thuong Truong
  • Publication number: 20050160097
    Abstract: A computer architecture and programming model for high speed processing over broadband networks are provided. The architecture employs a consistent modular structure, a common computing module and uniform software cells. The common computing module includes a control processor, a plurality of processing units, a plurality of local memories from which the processing units process programs, a direct memory access controller and a shared main memory. A synchronized system and method for the coordinated reading and writing of data to and from the shared main memory by the processing units also are provided. A hardware sandbox structure is provided for security against the corruption of data among the programs being processed by the processing units. The uniform software cells contain both data and applications and are structured for processing by any of the processors of the network. Each software cell is uniquely identified on the network.
    Type: Application
    Filed: February 24, 2005
    Publication date: July 21, 2005
    Inventors: Michael Gschwind, Harm Hofstee, Martin Hopkins, James Kahle
  • Publication number: 20050144337
    Abstract: A method and an apparatus are provided for prefetching data from a system memory to a cache for a direct memory access (DMA) mechanism in a computer system. A DMA mechanism is set up for a processor. A load access pattern of the DMA mechanism is detected. At least one potential load of data is predicted based on the load access pattern. In response to the prediction, the data is prefetched from a system memory to a cache before a DMA command requests the data.
    Type: Application
    Filed: February 14, 2005
    Publication date: June 30, 2005
    Inventor: James Kahle
  • Publication number: 20050138325
    Abstract: A computer architecture and programming model for high speed processing over broadband networks are provided. The architecture employs a consistent modular structure, a common computing module and uniform software cells. The common computing module includes a control processor, a plurality of processing units, a plurality of local memories from which the processing units process programs, a direct memory access controller and a shared main memory. A synchronized system and method for the coordinated reading and writing of data to and from the shared main memory by the processing units also are provided. A hardware sandbox structure is provided for security against the corruption of data among the programs being processed by the processing units. The uniform software cells contain both data and applications and are structured for processing by any of the processors of the network. Each software cell is uniquely identified on the network.
    Type: Application
    Filed: February 3, 2005
    Publication date: June 23, 2005
    Inventors: Harm Hofstee, Charles Johns, James Kahle
  • Publication number: 20050097231
    Abstract: A flexible input/output controller logic interfaces with existing input/output controllers (IOC's) in order to configure the amount of data sent to and received from the IOC's. The flexible I/O interface receives data from a component at a rate determined by the particular component. The flexible I/O interface then feeds the received data to a traditional I/O controller at a rate suitable for the I/O controller. Thus, the interface to the individual I/O controllers is maintained. The flexible I/O logic balances bandwidth between a plurality of individual I/O controllers in order to better utilize the overall system I/O bandwidth. In one embodiment, the I/O configuration managed by the flexible I/O logic is determined during system-build, while in another embodiment, the I/O configuration is set during system initialization.
    Type: Application
    Filed: October 30, 2003
    Publication date: May 5, 2005
    Applicant: International Business Machines Corporation
    Inventors: Harm Hofstee, Charles Johns, James Kahle
  • Publication number: 20050097280
    Abstract: A system for sharing memory by heterogeneous processors, each of which is adapted to process its own instruction set, is presented. A common bus is used to couple the common memory to the various processors. In one embodiment, a cache for more than one of the processors is stored in the shared memory. In another embodiment, some of the processors include a local memory area that is mapped to the shared memory pool. In yet another embodiment, local memory included on one or more of the processors is partially shared so that some of the local memory is mapped to the shared memory area, while remaining memory in the local memory is private to the particular processor.
    Type: Application
    Filed: October 30, 2003
    Publication date: May 5, 2005
    Applicant: Interational Business Machines Corporation
    Inventors: Harm Hofstee, Charles Johns, James Kahle
  • Publication number: 20050080998
    Abstract: Disclosed is a coherent cache system that operates in conjunction with non-homogeneous processing units. A set of processing units of a first configuration has conventional cache and directly accesses common or shared system physical and virtual address memory through the use of a conventional MMU (Memory Management Unit). Additional processors of a different configuration and/or other devices that need to access system memory are configured to store accessed data in compatible caches. Each of the caches is compatible with a given protocol coherent memory management bus interspersed between the caches and the system memory.
    Type: Application
    Filed: October 9, 2003
    Publication date: April 14, 2005
    Applicant: International Business Machines Corporation
    Inventors: Michael Day, Harm Hofstee, Charles Johns, James Kahle, David Shippy, Thuong Truong
  • Publication number: 20050055505
    Abstract: The present invention provides for selectively overwriting sets of a cache as a function of a replacement management table and a least recently used function. A class identifier is created as a function of an address miss. A replacement management table is employable to read the class identifier to create a tag replacement control indicia. The cache, comprising a plurality of sets, is employable to disable the replacement of at least one of the plurality of sets as a function of the tag replacement control indicia.
    Type: Application
    Filed: September 4, 2003
    Publication date: March 10, 2005
    Applicants: International Business Machines Corporation, Sony Computer Entertainment Inc.
    Inventors: Michael Day, Harm Hofstee, Charles Johns, James Kahle, David Shippy, Thuong Truong, Takeshi Yamazaki
  • Publication number: 20050055507
    Abstract: The present invention provides for selectively overwriting sets of a cache as a function of a replacement management table and a least recently used function. A class identifier is created as a function of an address miss. A replacement management table is employable to read the class identifier to create a tag replacement control indicia. The cache, comprising a plurality of sets, is employable to disable the replacement of at least one of the plurality of sets as a function of the tag replacement control indicia.
    Type: Application
    Filed: September 4, 2003
    Publication date: March 10, 2005
    Applicants: International Business Machines Corporation, Sony Computer Entertainment Inc.
    Inventors: Michael Day, Harm Hofstee, Charles Johns, James Kahle, David Shippy, Thuong Truong, Takeshi Yamazaki
  • Publication number: 20050044434
    Abstract: Disclosed is an apparatus which deactivates both the AC as well as the DC component of power for various functions in a CPU. The CPU partitions dataflow registers and arithmetic units such that voltage can be removed from the upper portion of dataflow registers when the software is not utilizing same. Clock signals are also prevented from being applied to these non-utilized components. As an example, if a 64 bit CPU (processor unit) is to be used with both 32 and 64 bit software, the mentioned components may be partitioned in equal sized upper and lower portions. The logic signal for activating the removal of voltage may be obtained from a software-accessible architected control register designated as a machine state register in some CPUs. The same logic may be used in connection with removing voltage and clocks from other specialized functional components such as the floating point unit when software instructions do not presently require same.
    Type: Application
    Filed: August 21, 2003
    Publication date: February 24, 2005
    Applicant: International Business Machines Corporation
    Inventors: James Kahle, David Shippy, Albert Norstrand
  • Publication number: 20050027899
    Abstract: A method and an apparatus are provided for loading data to a local store of a processor in a computer system having a direct memory access (DMA) mechanism. A transfer of data is performed from a system memory of the computer system to the local store. The data is fetched from the system memory to a cache of the processor. A DMA load request is issued to request data. It is determined whether the requested data is found in the cache. Upon a determination that the requested data is found in the cache, the requested data is loaded directly from the cache to the local store.
    Type: Application
    Filed: July 31, 2003
    Publication date: February 3, 2005
    Applicant: International Business Machines Corporation
    Inventor: James Kahle