Patents by Inventor Charles R. Johns

Charles R. Johns 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).

  • Patent number: 7533238
    Abstract: A method for limiting the size of a local storage of a processor is provided. A facility is provided in association with a processor for setting a local storage size limit. This facility is a privileged facility and can only be accessed by the operating system running on a control processor in the multiprocessor system or the associated processor itself The operating system sets the value stored in the local storage limit register when the operating system initializes a context switch in the processor. When the processor accesses the local storage using a request address, the local storage address corresponding to the request address is compared against the 1ocal storage limit size value in order to determine if the local storage address, or a modulo of the local storage address, is used to access the local storage.
    Type: Grant
    Filed: August 19, 2005
    Date of Patent: May 12, 2009
    Assignee: International Business Machines Corporation
    Inventors: Adam P. Burns, Michael N. Day, Brian Flachs, H. Peter Hofstee, Charles R. Johns, John Liberty
  • Patent number: 7500035
    Abstract: A mechanism is provided for resolving livelock conditions in a multiple processor data processing system. When a bus unit detects a timeout condition, or potential timeout condition, the bus unit activates a livelock resolution request signal. A livelock resolution unit receives livelock resolution requests from the bus units and signals an attention to a control processor. The control processor performs actions to attempt to resolve the livelock condition. Once a bus unit that issued a livelock resolution request has managed to successfully issue its command, it deactivates its livelock resolution request. If all livelock resolution request signals are deactivated, then the control processor instructs the bus and all bus units to resume normal activity. On the other hand, if the control processor determines that a predetermined amount of time passes without any progress being made, it determines that a hang condition has occurred.
    Type: Grant
    Filed: September 19, 2006
    Date of Patent: March 3, 2009
    Assignee: International Business Machines Corporation
    Inventors: Charles R. Johns, David J. Krolak, Peichun P. Liu, Alvan W. Ng
  • Patent number: 7500039
    Abstract: A method for communicating with a processor event facility is provided. The method makes use of a channel interface as the primary mechanism for communicating with the processor event facility. The channel interface provides channels for communicating with processor facilities, memory flow control facilities, machine state registers, and external processor interrupt facilities, for example. These channels may be designated as blocking or non-blocking. With blocking channels, when no data is available to be read from the corresponding registers, or there is no space available to write to the corresponding registers, the processor is placed in a low power “stall” state. The processor is automatically awakened, via communication across the blocking channel, when data becomes available or space is freed. Thus, the channels of the present invention permit the processor to stay in a low power state.
    Type: Grant
    Filed: August 19, 2005
    Date of Patent: March 3, 2009
    Assignee: International Business Machines Corporation
    Inventors: Michael N. Day, Charles R. Johns, John S. Liberty, Todd E. Swanson
  • Publication number: 20090037620
    Abstract: An apparatus and method for efficient communication of producer/consumer buffer status are provided. With the apparatus and method, devices in a data processing system notify each other of updates to head and tail pointers of a shared buffer region when the devices perform operations on the shared buffer region using signal notification channels of the devices. Thus, when a producer device that produces data to the shared buffer region writes data to the shared buffer region, an update to the head pointer is written to a signal notification channel of a consumer device. When a consumer device reads data from the shared buffer region, the consumer device writes a tail pointer update to a signal notification channel of the producer device. In addition, channels may operate in a blocking mode so that the corresponding device is kept in a low power state until an update is received over the channel.
    Type: Application
    Filed: May 27, 2008
    Publication date: February 5, 2009
    Applicant: International Business Machines Corporation
    Inventors: Daniel A. Brokenshire, Charles R. Johns, Mark R. Nutter, Barry L. Minor
  • Patent number: 7486096
    Abstract: In one embodiment, a test system tests a device under test (DUT). The DUT includes an internal test controller that executes built-in self-test (BIST programs. Built-in self-test programs include array-based automatic built-in self-test programs, discrete and combinational logic built-in self-test programs, and functional architecture verification programs (AVPs). An external manufacturing system test controller manages the internal test controller within the DUT and determines minimum operating voltage levels for a power supply input voltage that supplies the DUT. A logic simulator provides a modeling capability to further enhance the development of minimum voltage power supply input operational values for the DUT.
    Type: Grant
    Filed: October 31, 2006
    Date of Patent: February 3, 2009
    Assignee: International Business Machines Corporation
    Inventors: Sang H. Dhong, Brian Flachs, Gilles Gervais, Charles R. Johns, Brad W. Michael, Makoto Aikawa, Iwao Takiguchi, Tetsuji Tamura
  • Patent number: 7484052
    Abstract: The present invention utilizes the good qualities of a single address concentrator (AC), without any extra chips or wires, and distributes the AC function among the various chips, making use of the fact that each chip in the system has a copy of the AC function therein. Using the distributed address concentrator function, each chip will handle approximately one-fourth of the command traffic and the average latency of servicing the commands will be approximately the same across each chip in the system.
    Type: Grant
    Filed: May 3, 2005
    Date of Patent: January 27, 2009
    Assignee: International Business Machines Corporation
    Inventors: Brian M. Bass, Thomas L. Jeremiah, Charles R. Johns, David J. Shippy, Thuong Q. Truong
  • Publication number: 20090006824
    Abstract: A design structure for a circuit function that implements a load when reservation lost instruction for performing cacheline polling is disclosed. Initially, a first process requests an action to be performed by a second process. The request is made via a store operation to a cacheable memory location. The first process then reads the cacheable memory location via a conditional load operation to determine whether or not the requested action has been completed by the second process, and the first process sets a reservation at the cacheable memory location if the requested action has not been completed by the second process. The conditional load operation of the first process is stalled until the reservation at the cacheable memory location has been lost. After the requested action has been completed, the reservation in the cacheable memory location is reset by the second process.
    Type: Application
    Filed: June 3, 2008
    Publication date: January 1, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: CHARLES R. JOHNS
  • Publication number: 20080294409
    Abstract: A design structure for performing cacheline polling utilizing a store and reserve instruction are disclosed. In accordance with one embodiment of the present invention, a first process initially requests an action to be performed by a second process. A reservation is set at a cacheable memory location via a store operation. The first process reads the cacheable memory location via a load operation to determine whether or not the requested action has been completed by the second process. The load operation of the first process is stalled until the reservation on the cacheable memory location is lost. After the requested action has been completed, the reservation in the cacheable memory location is reset by the second process.
    Type: Application
    Filed: June 3, 2008
    Publication date: November 27, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: CHARLES R. JOHNS
  • Publication number: 20080294412
    Abstract: A design structure for performing cacheline polling utilizing store and reserve and load when reservation lost instructions is disclosed. In one embodiment a method is provided which comprises storing a buffer flag busy indicator data value within a first cacheable memory location and setting a load/store operation reservation on said first cacheable memory location via a store and reserve instruction. In the described embodiment, a data value stored within the first cacheable memory location is accessed via a conditional load instruction in response to a determination that the load/store operation reservation on the first cacheable memory location has been reset. Conversely, execution of the conditional load instruction is stalled in response to a determination that the load/store operation reservation on the first cacheable memory location has not been reset.
    Type: Application
    Filed: June 3, 2008
    Publication date: November 27, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: CHARLES R. JOHNS
  • Publication number: 20080288757
    Abstract: A mechanism for communicating instructions and data between a processor and external devices are provided. The mechanism makes use of a channel interface as the primary mechanism for communicating between the processor and a memory flow controller. The channel interface provides channels for communicating with processor facilities, memory flow control facilities, machine state registers, and external processor interrupt facilities, for example. These channels may be designated as blocking or non-blocking. With blocking channels, when no data is available to be read from the corresponding registers, or there is no space available to write to the corresponding registers, the processor is placed in a low power “stall” state. The processor is automatically awakened, via communication across the blocking channel, when data becomes available or space is freed. Thus, the channels of the present invention permit the processor to stay in a low power state.
    Type: Application
    Filed: May 29, 2008
    Publication date: November 20, 2008
    Applicant: International Business Machines Corporation
    Inventors: Michael N. Day, Charles R. Johns, John S. Liberty, Todd E. Swanson, Thuong Q. Truong
  • Publication number: 20080267380
    Abstract: The present invention provides a method, system, and computer program product for displaying images of conference call participants. A method in accordance with an embodiment of the present invention includes receiving a call from a user to join a conference call, obtaining a phone number of the user, matching the phone number to a stored graphical representation, and distributing and displaying the matching graphical representation to a predetermined set of users. A voice identification/recognition process can also be used to match the user to a stored graphical representation.
    Type: Application
    Filed: July 14, 2008
    Publication date: October 30, 2008
    Inventors: Bruce D. D'Amora, Charles R. Johns
  • Publication number: 20080244200
    Abstract: A system and method for communicating command parameters between a processor and a memory flow controller are provided. The system and method make use of a channel interface as the primary mechanism for communicating between the processor and a memory flow controller. The channel interface provides channels for communicating with processor facilities, memory flow control facilities, machine state registers, and external processor interrupt facilities, for example. These channels may be designated as blocking or non-blocking. With blocking channels, when no data is available to be read from the corresponding registers, or there is no space available to write to the corresponding registers, the processor is placed in a low power “stall” state. The processor is automatically awakened, via communication across the blocking channel, when data becomes available or space is freed. Thus, the channels of the present invention permit the processor to stay in a low power state.
    Type: Application
    Filed: April 21, 2008
    Publication date: October 2, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Michael N. Day, Charles R. Johns, Peichun P. Liu, Todd E. Swanson, Thuong Q. Truong
  • Publication number: 20080228974
    Abstract: A design structure for a livelock resolution circuit is provided. When a bus unit detects a timeout condition, or potential timeout condition, the bus unit activates a livelock resolution request signal. A livelock resolution unit receives livelock resolution requests from the bus units and signals an attention to a control processor. The control processor performs actions to attempt to resolve the livelock condition. Once a bus unit that issued a livelock resolution request has managed to successfully issue its command, it deactivates its livelock resolution request. If all livelock resolution request signals are deactivated, then the control processor instructs the bus and all bus units to resume normal activity. On the other hand, if the control processor determines that a predetermined amount of time passes without any progress being made, it determines that a hang condition has occurred.
    Type: Application
    Filed: May 30, 2008
    Publication date: September 18, 2008
    Applicant: International Business Machines Corporation
    Inventors: Charles R. Johns, David J. Krolak, Peichun P. Liu, Alvan W. Ng
  • Publication number: 20080162823
    Abstract: Exemplary embodiments include a method for enhancing lock acquisition in a multiprocessor system, the method including: sending a lock-load instruction from a first processor to a cache; setting a reservation flag for the first processor, storing a reservation address, storing a shadow register number, and sending lock data to the first processor in response to the lock-load instruction; placing the lock data in target and shadow registers of the first processor; determining from the lock data whether lock is taken; resending the lock-load instruction from the first processor to the cache upon a determination that the lock is taken; determining whether the reservation flag is still set and its main memory address and shadow register number match with the saved reservation address and shadow register number for the first processor; sending a status-quo signal to the first processor without resending the lock data to the first processor upon a determination that the reservation flag is still set for the first p
    Type: Application
    Filed: January 2, 2007
    Publication date: July 3, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Michael N. Day, Charles R. Johns, Roy M. Kim, Peichun P. Liu
  • Patent number: 7386636
    Abstract: A system and method for communicating command parameters between a processor and a memory flow controller are provided. The system and method make use of a channel interface as the primary mechanism for communicating between the processor and a memory flow controller. The channel interface provides channels for communicating with processor facilities, memory flow control facilities, machine state registers, and external processor interrupt facilities, for example. These channels may be designated as blocking or non-blocking. With blocking channels, when no data is available to be read from the corresponding registers, or there is no space available to write to the corresponding registers, the processor is placed in a low power “stall” state. The processor is automatically awakened, via communication across the blocking channel, when data becomes available or space is freed. Thus, the channels of the present invention permit the processor to stay in a low power state.
    Type: Grant
    Filed: August 19, 2005
    Date of Patent: June 10, 2008
    Assignee: International Business Machines Corporation
    Inventors: Michael N. Day, Charles R. Johns, Peichun P. Liu, Todd E. Swanson, Thuong Q. Truong
  • Publication number: 20080104711
    Abstract: A system, method, and computer-usable medium for an isolated process to control address translation. According to a preferred embodiment of the present invention, an isolation region that is accessible only to a first processing unit in a data processing system is created. A loader is executed to load a secure process in the isolation region. If the secure process is determined to be allowed to issue real mode direct memory access commands, real mode direct memory access commands are enabled to allow the secure process to issue non-translated direct memory access commands.
    Type: Application
    Filed: October 26, 2006
    Publication date: May 1, 2008
    Inventors: Charles R. Johns, Kanna Shimizu
  • Publication number: 20080100328
    Abstract: In one embodiment, a test system tests a device under test (DUT). The DUT includes an internal test controller that executes built-in self-test (BIST programs. Built-in self-test programs include array-based automatic built-in self-test programs, discrete and combinational logic built-in self-test programs, and functional architecture verification programs (AVPs). An external manufacturing system test controller manages the internal test controller within the DUT and determines minimum operating voltage levels for a power supply input voltage that supplies the DUT. A logic simulator provides a modeling capability to further enhance the development of minimum voltage power supply input operational values for the DUT.
    Type: Application
    Filed: October 31, 2006
    Publication date: May 1, 2008
    Applicant: IBM Corporation
    Inventors: Sang H. Dhong, Brian Flachs, Gilles Gervais, Charles R. Johns, Brad W. Michael, Makoto Aikawa, Iwao Takiguchi, Tetsuji Tamura
  • Publication number: 20080090659
    Abstract: A mechanism is provided for generating event notifications for offline characters from within a persistent world online game. A player agent for an offline player runs in a secondary partition in a video game console while a primary application runs in a main partition. The offline player agent includes an event monitor that monitors for events that occur in a persistent virtual world maintained by a game server. When a game event occurs that triggers an offline player rule, the player agent composes an event notification message and presents the message to the offline player through speech or through an interface within the primary application. Event notification messages may include images, voice (text-to-speech), sound, or video.
    Type: Application
    Filed: October 12, 2006
    Publication date: April 17, 2008
    Inventors: Maximino Aguilar, Charles R. Johns, Mark R. Nutter
  • Patent number: 7349762
    Abstract: Systems and methods for sensing temperatures of multiple functional blocks within a digital device and controlling the operation of these functional blocks in a manner that selectively reduces temperatures associated with some of the functional blocks, but not others. One embodiment comprises an integrated circuit having multiple functional blocks (such as processor cores) and a set of thermal sensors coupled to sense the temperatures of the functional blocks. The integrated circuit includes control circuitry configured to receive signals from the thermal sensors, detect thermal events in the functional blocks and to individually adjust operation of the functional blocks to reduce the temperatures causing the thermal events. In one embodiment, the control circuitry includes a detection/control circuit coupled to each of the functional blocks and a thermal management unit configured to evaluate detected thermal events and to determine actions to be taken in response to the thermal events.
    Type: Grant
    Filed: November 10, 2005
    Date of Patent: March 25, 2008
    Assignees: Kabushiki Kaisha Toshiba, International Business Machines Corporation, Sony Computer Entertainment Inc.
    Inventors: Takashi Omizo, Charles R. Johns, Michael F. Wang, Kazuaki Yazawa, Toshiyuki Hiroi
  • Publication number: 20080071955
    Abstract: A mechanism is provided for resolving livelock conditions in a multiple processor data processing system. When a bus unit detects a timeout condition, or potential timeout condition, the bus unit activates a livelock resolution request signal. A livelock resolution unit receives livelock resolution requests from the bus units and signals an attention to a control processor. The control processor performs actions to attempt to resolve the livelock condition. Once a bus unit that issued a livelock resolution request has managed to successfully issue its command, it deactivates its livelock resolution request. If all livelock resolution request signals are deactivated, then the control processor instructs the bus and all bus units to resume normal activity. On the other hand, if the control processor determines that a predetermined amount of time passes without any progress being made, it determines that a hang condition has occurred.
    Type: Application
    Filed: September 19, 2006
    Publication date: March 20, 2008
    Inventors: Charles R. Johns, David J. Krolak, Peichun P. Liu, Alvan W. Ng