Patents by Inventor Russell W. Guenthner

Russell W. Guenthner 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: 7809547
    Abstract: As manufacturers of very fast and powerful commodity processors continue to improve the capabilities of their products, it has become practical to emulate the proprietary hardware and operating systems of powerful older computers on platforms built using commodity processors such that the manufacturers of the older computers can provide new systems which allow their customers to continue to use their highly-regarded proprietary legacy software on state-of-the-art new computer systems by emulating the older computer in software that runs on the new systems. In an example of the subject invention, a 64-bit Cobol Virtual Machine instruction provides the capability of adding to or improving the performance of legacy 36-bit Cobol code. Legacy Cobol instructions can be selectively diverted, in the host CPU, to a 64 bit Virtual Machine Implementation.
    Type: Grant
    Filed: December 29, 2005
    Date of Patent: October 5, 2010
    Inventors: Russell W. Guenthner, David W. Selway, Stefan R. Bohult, Clinton B. Eckard
  • Publication number: 20100153735
    Abstract: A secure method, apparatus or computer program incorporates a method for entering private information such as a user identifier, password or other secret code comprising at least one symbol or character. According to method in one illustrated embodiment, the user selects characters for input starting from presentation of an initial suggested character, moving under user control to presentation of a user's desired input character, and then followed by the selection by the user of that presented character as a character for data input. The method includes randomizing the timing of the display and/or reaction time to user input so that the number and timing of the key presses required to select any specific desired character for input is made unpredictable. This makes it difficult during entry of information to determine by covert means what specific information is being entered.
    Type: Application
    Filed: December 15, 2008
    Publication date: June 17, 2010
    Inventor: Russell W. Guenthner
  • Patent number: 7689403
    Abstract: Two unique instructions for the instruction set of a target 36-bit machine which is emulated on a host 64-bit machine are provided in order to achieve visibility, to an emulated application program, of a “containing” word stored in the memory of the host machine. A “LOAD64” instruction loads the emulator memory location representing an emulated “Q” (supplementary accumulator) register with the “normal” 36-bits of the containing word. At the same time, the “upper” 28 bits of the 64-bit containing word is copied into the emulator memory location representing an emulated “A” (accumulator) register. Thus, the emulated 36-bit machine “sees” and can examine the 64-bit word in its entirety. A “Store64” instruction stores the emulated “Q” register contents into the lower 36-bits of the 64-bit containing word, and at the same time stores the lower 28 bits of the emulated “A” register contents into the upper 28 bits of the 64-bit containing word.
    Type: Grant
    Filed: April 17, 2008
    Date of Patent: March 30, 2010
    Inventors: Russell W. Guenthner, Sidney L Andress, John Heath
  • Patent number: 7684973
    Abstract: As fast and powerful commodity processors have been developed, it has become practical to emulate on platforms built using commodity processors the proprietary hardware systems of powerful older computers. High performance is typically a key requirement for a system even when built using emulation software. In a hardware design many special cases and conditions which may cause exceptions are detected by logic operating in parallel with the instruction execution. In software these checks can cost extra cycles of processor time during emulation of each instruction and be a significant detriment to performance. Avoiding some of these checks by relying upon the underlying hardware checks of the host system and then using a signal handler and special software to recover from these signals is a way to improve the performance and simplify the coding of the software emulation system.
    Type: Grant
    Filed: December 29, 2005
    Date of Patent: March 23, 2010
    Assignee: Bull HN Information Systems Inc.
    Inventors: Russell W. Guenthner, Stefan R. Bohult, David W. Selway, Clinton B. Eckard
  • Publication number: 20080208562
    Abstract: Two unique instructions for the instruction set of a target 36-bit machine which is emulated on a host 64-bit machine are provided in order to achieve visibility, to an emulated application program, of a “containing” word stored in the memory of the host machine. A “LOAD64” instruction loads the emulator memory location representing an emulated “Q” (supplementary accumulator) register with the “normal” 36-bits of the containing word. At the same time, the “upper” 28 bits of the 64-bit containing word is copied into the emulator memory location representing an emulated “A” (accumulator) register. Thus, the emulated 36-bit machine “sees” and can examine the 64-bit word in its entirety. A “Store64” instruction stores the emulated “Q” register contents into the lower 36-bits of the 64-bit containing word, and at the same time stores the lower 28 bits of the emulated “A” register contents into the upper 28 bits of the 64-bit containing word.
    Type: Application
    Filed: April 17, 2008
    Publication date: August 28, 2008
    Inventors: Russell W. Guenthner, Sidney L. Andress, John Heath
  • Patent number: 7406406
    Abstract: Two unique instructions for the instruction set of a target 36-bit machine which is emulated on a host 64-bit machine are provided in order to achieve visibility, to an emulated application program, of a “containing” word stored in the memory of the host machine. A “LOAD64” instruction loads the emulator memory location representing an emulated “Q” (supplementary accumulator) register with the “normal” 36-bits of the containing word. At the same time, the “upper” 28 bits of the 64-bit containing word is copied into the emulator memory location representing an emulated “A” (accumulator) register. Thus, the emulated 36-bit machine “sees” and can examine the 64-bit word in its entirety. A “Store64” instruction stores the emulated “Q” register contents into the lower 36-bits of the 64-bit containing word, and at the same time stores the lower 28 bits of the emulated “A” register contents into the upper 28 bits of the 64-bit containing word.
    Type: Grant
    Filed: December 7, 2004
    Date of Patent: July 29, 2008
    Assignee: Bull HN Information Systems Inc.
    Inventors: Russell W. Guenthner, Sidney L. Andress, John E. Heath
  • Patent number: 7314491
    Abstract: This invention relates to the art of computer system emulation and, more particularly, to a computer system emulator in which the functions normally performed by the hardware in a legacy central processor unit are emulated by a software program. The invention is to enhance the emulated instruction set beyond that of the legacy machine such to include as new single instructions a method for invoking operating system functions, with the machine coding of the operating system functions now being performed by machine code native to the new host machine, rather than as a sequence of emulated legacy instructions.
    Type: Grant
    Filed: December 29, 2004
    Date of Patent: January 1, 2008
    Assignee: Bull HN Information Systems Inc.
    Inventors: Russell W. Guenthner, Rodney B. Schultz, F. Michel Brown, Stefan R. Bohult, William J Brophy
  • Patent number: 6938145
    Abstract: A computer system includes a central processing unit, an addressable main memory storing data pages and a page table, and an associative memory. The associative memory stores a plurality of entries in accordance with a low order virtual address component issued by the CPU's processor when access to a given page in main memory is sought. Each entry in the associative memory includes fields respectively holding: 1) a high order virtual address component; 2) a real page address; and 3) a multi-digit validity count. An incrementable multi-digit counter in the CPU stores a current validity count. When access to a data page is sought, a comparator receives: 1) the high order virtual address component of the data page; 2) the high order virtual address component read from the associative memory entry; 3) the multi-digit validity count read from the associative memory entry; and 4) the multi-digit current validity count in the counter.
    Type: Grant
    Filed: December 4, 2002
    Date of Patent: August 30, 2005
    Assignee: Bull HN Information Systems Inc.
    Inventors: Bruce A. Noyes, Russell W. Guenthner
  • Publication number: 20040111585
    Abstract: A computer system includes a central processing unit, an addressable main memory storing data pages and a page table, and an associative memory. The associative memory stores a plurality of entries in accordance with a low order virtual address component issued by the CPU's processor when access to a given page in main memory is sought. Each entry in the associative memory includes fields respectively holding: 1) a high order virtual address component; 2) a real page address; and 3) a multi-digit validity count. An incrementable multi-digit counter in the CPU stores a current validity count. When access to a data page is sought, a comparator receives: 1) the high order virtual address component of the data page; 2) the high order virtual address component read from the associative memory entry; 3) the multi-digit validity count read from the associative memory entry; and 4) the multi-digit current validity count in the counter.
    Type: Application
    Filed: December 4, 2002
    Publication date: June 10, 2004
    Applicant: Bull HN Information Systems Inc.
    Inventors: Bruce A. Noyes, Russell W. Guenthner
  • Publication number: 20020181215
    Abstract: A reconfigurable logic structure utilizes a midplane circuit board assembly having a plurality of reprogrammable logic boards mounted in a first direction on one side of the midplane circuit board and a plurality of programmable interconnect boards mounted in a second direction on an opposite side of the midplane circuit board. The logic and interconnect boards attach to the midplane circuit board through connectors which are surface mounted to the front and back sides of the midplane circuit board. The surface mounting of the midplane board connectors allows more dense electrical connections and increased density of midplane board routing compared to the prior art and is particularly useful in the construction of reprogrammable logic emulators and logic simulators because of the particular nature of the interconnects often needed in the construction of such machines.
    Type: Application
    Filed: July 24, 2002
    Publication date: December 5, 2002
    Inventor: Russell W. Guenthner
  • Patent number: 6442676
    Abstract: A data processing system contains a processor supporting both Narrow and Wide instructions and Narrow and Wide word size fixed-point and floating-point operands. The processor communicates over a bus utilizing a Wide word size with the remainder of the data processing system consisting of industry standard memory and peripheral devices. Narrow word sized instructions are stored on Wide word-sized storage devices. In a preferred embodiment, the processor bus has a first integer number of significant data lines. The processor is responsively coupled to the processor bus and includes a first decoder for decoding a first set of instructions received over the set of processor data lines, The first set of instructions each contains a second integer number, less than the first integer number, of significant bits.
    Type: Grant
    Filed: June 30, 1999
    Date of Patent: August 27, 2002
    Assignee: Bull HN Information Systems Inc.
    Inventor: Russell W. Guenthner
  • Patent number: 6351807
    Abstract: A processor (40) in a data processing system simultaneously loads multiple registers (60) with a single value for fast domain switching. A domain switch instruction asserts a register block write signal (112) along with the register write signal (116) when block writing the single value to the set of registers (60). Register address lines (110, 111) are decoded in two sets: a first set of decoded address lines (110) specifying a block of registers; and the second set (111) specifying one register in the block of registers. When the register block write signal (112) is asserted during a register write, the second set of decoded address lines (111) are ignored, and all registers in the block of registers (60) selected by the first set of decoded address lines (110) are simultaneously loaded with a common value. Additional drive requirements are solved either by adding a buffer (226) to each register bit, or by disabling (228) the feedback path (215) in each register bit during block writes.
    Type: Grant
    Filed: September 25, 1998
    Date of Patent: February 26, 2002
    Assignee: Bull HN Information Systems Inc.
    Inventors: Ron W. Yoder, Russell W. Guenthner, William A. Shelly, Eric Earl Conway, Boubaker Shaiek, Claude Rabel
  • Patent number: 6230256
    Abstract: A data processing system contains a processor supporting instructions and operands utilizing a Narrow word size. The processor communicates over a bus utilizing a Wide word size with the remainder of the data processing system consisting of industry standard memory and peripheral devices. Narrow word sized instructions are stored on Wide word-sized storage devices. The translation between Narrow and Wide word sizes can be either at a byte/Unicode level, or at a word level.
    Type: Grant
    Filed: March 31, 1999
    Date of Patent: May 8, 2001
    Assignee: Bull HN Information Systems Inc.
    Inventor: Russell W. Guenthner
  • Patent number: 6199156
    Abstract: In a data processing system that includes a safe store buffer containing valid copies of all registers, processor transitions from a higher security routine to a lower security routine can be performed in fewer cycles by loading the safe store buffer from a safe store stack frame, then delaying loading registers either until actually utilized, or by a background process that loads registers utilizing unused memory cycles. A flag is used for each register that indicates whether the register contents are valid. This flag is cleared for each of the registers whenever such a state transition is made. Then, the flag is set for a register when it is referenced and made valid.
    Type: Grant
    Filed: December 16, 1998
    Date of Patent: March 6, 2001
    Assignee: Bull HN Information Systems Inc.
    Inventors: Ronald W. Yoder, Lowell McCulley, Russell W. Guenthner
  • Patent number: 6014757
    Abstract: In order to gather, store temporarily and efficiently deliver safestore information in a CPU having data manipulation circuitry including a register bank, first and second serially oriented safestore buffers are employed. At suitable times during the processing of information, a copy of the instantaneous contents of the register bank is transferred into the first safestore buffer. After a brief delay, a copy of the first safestore buffer is transferred into the second safestore buffer. If a call for a domain change (which might include a process change or a fault) is sensed, a safestore frame is sent to cache, and the first safestore buffer is loaded from he second safestore buffer rather than from the register bank.
    Type: Grant
    Filed: December 19, 1997
    Date of Patent: January 11, 2000
    Assignee: Bull HN Information Systems Inc.
    Inventors: Ronald W. Yoder, Russell W. Guenthner, Wayne R. Buzby
  • Patent number: 5644761
    Abstract: In order to efficiently undertake the micro-steps required to execute an extended instruction in a central processing unit, a main sequence controller and a separate basic operations controller having its own sequencer and the ability to run semi-autonomously are provided. Normally, the main sequence controller determines the operation of the basic operations controller, but, in the case of execution of, for example, a multi-word instruction requiring extended basic operations, the basic operations controller temporarily takes control over the main controller until the extended basic operations have been completed. The result is a relatively simple sequencer that supports tight micro-coded functions where many of the sequence decisions can be predetermined.
    Type: Grant
    Filed: June 5, 1992
    Date of Patent: July 1, 1997
    Assignee: Bull HN Information Systems Inc.
    Inventors: Ronald W. Yoder, Ronald E. Lange, William A. Shelly, Russell W. Guenthner, Richard L. Demers
  • Patent number: 5590301
    Abstract: In order to achieve the integration of a plurality of processors, each capable of directly addressing a limited internal space storage range, with a larger external memory space (e.g., a mass memory), the processors are organized into clusters, each having a plurality of processors and a common secondary cache. Each cluster is assigned a two-bit cluster number. Intermediate a primary cache in each processor and the secondary cache in the cluster, an address translator is provided for effecting transformation between internal memory space addresses and external memory space addresses. The external memory space is divided into areas private to each cluster and shared by all the processors. An internal address indicator bit, in conjunction with the cluster number from a requesting processor primary cache, is employed to set up the transformation either to the private external space of that cluster or the shared external space.
    Type: Grant
    Filed: October 6, 1995
    Date of Patent: December 31, 1996
    Assignee: Bull HN Information Systems Inc.
    Inventors: Russell W. Guenthner, Leonard Rabins
  • Patent number: 5435000
    Abstract: In order to validate data manipulation results in a CPU which incorporates duplicate BPUs for integrity, which BPUs are typically each implemented on a single VLSI circuit chip, and which is capable of performing single and double precision data manipulation operations, two cache units are employed. Each cache unit is dedicated to handling half-bytes of information and incorporates highly reliable data validating logic without the necessity for providing double word wide output busses from each BPU. This feature, which lowers the lead count to each VLSI chip, is obtained by dedicating each cache unit to handling half-bytes of information.
    Type: Grant
    Filed: May 19, 1993
    Date of Patent: July 18, 1995
    Assignee: Bull HN Information Systems Inc.
    Inventors: Donald C. Boothroyd, Mark T. Chase, Russell W. Guenthner
  • Patent number: 5408651
    Abstract: In order to efficiently recover from a processing error in a central processing trait (CPU) incorporating a cache memory and a basic processing unit, the BPU is provided in duplicate, and all BPU data manipulation operations are performed redundantly. After duplicate data has been obtained from the cache memory and manipulated by the duplicate BPUs, the outputs from the duplicate BPUs are placed on respective master (MRB) and slave (SRB) result busses which are coupled to the cache unit where the results are compared for identity. If the results are not identical, a local error signal is issued.
    Type: Grant
    Filed: September 27, 1993
    Date of Patent: April 18, 1995
    Assignee: Bull HN Information Systems Inc.
    Inventors: Bruce E. Flocken, Russell W. Guenthner, Clinton B. Eckard, Sleiman Chamoun, Jeffrey D. Weintraub
  • Patent number: 5367699
    Abstract: In order to obtain precise submodel control in a central processing unit, there is provided a subcounter which is controlled to count up from a beginning count as an instruction is executed and to count back down at the same rate to the reference count to obtain an effective delay before processing of the next instruction to be processed during normal program execution is started. Instruction transfer and decoding of the new instruction entering the pipeline is inhibited until the subcounter's most significant bit ("sign bit") changes state. If the subcounter is allowed to count during the entire count up and count down periods, a derated mode of 1/2 is achieved. To obtain other fractions, the subcounter is controlled to count periodically during one count direction period and to count full time during the other count direction period.
    Type: Grant
    Filed: November 26, 1991
    Date of Patent: November 22, 1994
    Assignee: Bull HN Information Systems Inc.
    Inventors: Ronald E. Lange, Russell W. Guenthner, Leonard Rabins