Patents by Inventor Douglas B. MacGregor

Douglas B. MacGregor 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: 5021991
    Abstract: A system for interfacing a Processor to a Coprocessor using standard bus cycles. The Processor, upon encountering in its instruction stream an instruction having a particular Operation word format, will transfer a Command word following the Operation word to a particular Coprocessor designated by a Coprocessor Identity field in the Operation word. Upon decoding the Command word, the Coprocessor will respond with any of a set of response primitives which define functions which the Coprocessor requires to Processor to perform in support of the Command by the Coprocessor. The interface provides for all functions which the Coprocessor may require, including selective vectoring to appropriate exception handlers.
    Type: Grant
    Filed: September 18, 1987
    Date of Patent: June 4, 1991
    Assignee: Motorola, Inc.
    Inventors: Douglas B. MacGregor, John Zolnowsky, David Mothersole
  • Patent number: 4994961
    Abstract: A system for interfacing a Processor to a Coprocessor using standard bus cycles. The Processor, upon encountering in its instruction stream an instruction having a particular Operation word format, will transfer a Command word following the Operation word to a particular Coprocessor designated by a Coprocessor Identity field in the Operation word. Upon decoding the Command word, the Coprocessor will respond with any of a set of response primitives which define functions which the Coprocessor requires to Processor to perform in support of the Command by the Coprocessor. The interface provides for all functions which the Coprocessor may require, including selective vectoring to appropriate exception handlers.
    Type: Grant
    Filed: September 18, 1987
    Date of Patent: February 19, 1991
    Assignee: Motorola, Inc.
    Inventors: Douglas B. MacGregor, John Zolnowsky, David Mothersole
  • Patent number: 4914578
    Abstract: A system for interfacing a Processor to a Coprocessor using standard bus cycles. The Processor, upon encountering in its instruction stream an instruction having a particular Operation word format, will transfer a Command word following the Operation word to a particular Coprocessor designated by a Coprocessor Identity field in the Operation word. Upon decoding the Command word, the Coprocessor will respond with any of a set of response primitives which define functions which the Coprocessor requires to Processor to perform in support of the Command by the Coprocessor. The interface provides for all functions which the Coprocessor may require, including selective vectoring to appropriate exception handlers.
    Type: Grant
    Filed: January 31, 1986
    Date of Patent: April 3, 1990
    Assignee: Motorola, Inc.
    Inventors: Douglas B. MacGregor, David Mothersole, John Zolnowsky
  • Patent number: 4887203
    Abstract: In a microcoded data processor, an instruction is provided which enables the microaddress for the micromachine to be externally specified. By way of this instruction, the processor may be directed to execute special microcoded routines otherwise unavailable during normal execution. These special microcoded routines may perform useful functions such as testing in an expeditious manner portions of the circuitry of the processor which would otherwise be difficult to test. For example, the functionality of regular structures such as instruction decoding and control programmable logic arrays (PLA's) may either be gated directly out to the tester or internally analyzed before the accumulated results are presented to the tester. On-board instruction caches may also be efficiently exercised to verify that the tag portion properly determines "hits" and "misses", and that the actual instruction cache portion functions accurately.
    Type: Grant
    Filed: February 26, 1988
    Date of Patent: December 12, 1989
    Assignee: Motorola, Inc.
    Inventors: Douglas B. MacGregor, William C. Moyer, John E. Zolnowsky, David S. Mothersole
  • Patent number: 4821231
    Abstract: A system for interfacing a Processor to a Coprocessor using standard bus cycles. The Processor, upon encountering in its instruction stream an instruction having a particular Operation word format, will transfer a Command word following the Operation word to a particular Coprocessor designated by a Coprocessor Identity field in the Operation word, Upon decoding the Command word, the Coprocessor will respond with any of a set of response primitives whcih define functions which the Coprocessor requires to Processor to perform in support of the Command by the Coprocessor. The interface provides for all functions which the Coprocessor may require, including selective vectoring to appropriate exception handlers.
    Type: Grant
    Filed: December 21, 1987
    Date of Patent: April 11, 1989
    Assignee: Motorola, Inc.
    Inventors: Michael Cruess, David Mothersole, John Zolnowsky, Douglas B. MacGregor
  • Patent number: 4811274
    Abstract: A system for interfacing a Processor to a Coprocessor using standard bus cycles. The Processor, upon encountering in its instruction stream an instruction having a particular Operation word format, will transfer a Command word following the Operation word to a particular Coprocessor designated by a Coprocessor Identity field in the Operation word. Upon decoding the Command word, the Coprocessor will respond with any of a set of response primitives which define functions which the Coprocessor requires to Processor to perform in support of the Command by the Coprocessor. The interface provides for all functions which the Coprocessor may require, including selective vectoring to appropriate exception handlers.
    Type: Grant
    Filed: September 14, 1987
    Date of Patent: March 7, 1989
    Assignee: Motorola, Inc.
    Inventors: Michael Cruess, David Mothersole, John Zolnowsky, Douglas B. MacGregor
  • Patent number: 4763253
    Abstract: A microcomputer has the capacity for executing instructions, requesting prefetches of instructions, and experiencing a change in instruction flow, or a branch. The microcomputer also knows in advance that a change in instruction flow is going to occur. At such time that a branch becomes known there may also be a pending instruction prefetch request. Because a branch is going to occur, there is no need to execute the prefetch. Consequently, the pending instruction prefetch is flushed which thus avoids wasting time making an unnecessary instruction prefetch.
    Type: Grant
    Filed: November 17, 1986
    Date of Patent: August 9, 1988
    Assignee: Motorola, Inc.
    Inventors: Mark W. Bluhm, Robert R. Thompson, David S. Mothersole, Douglas B. MacGregor
  • Patent number: 4758978
    Abstract: A system for interfacing a Processor to a Coprocessor using standard bus cycles. The Processor, upon encountering in its instruction stream an instruction having a particular Operation word format, will transfer a Command word following the operation word to a particular Coprocessor designated by a Coprocessor Identity field in the Operation word. Upon decoding the Command word, the Coprocessor will respond with any of a set of response primitives which define functions which the Coprocessor requires the Processor to perform in support of the Command by the Coprocessor. The interface provides for all functions which the Coprocessor may require, including selective vectoring to appropriate exception handlers.
    Type: Grant
    Filed: September 18, 1986
    Date of Patent: July 19, 1988
    Assignee: Motorola, Inc.
    Inventors: Michael Cruess, David Mothersole, John Zolnowsky, Douglas B. MacGregor
  • Patent number: 4750110
    Abstract: A system for interfacing a Processor to a Coprocessor using standard bus cycles. The processor, upon encountering in its instruction stream an instruction having a particular Operation word format, will transfer a Command word following the Operation word to a particular Coprocessor designated by a Coprocessor Identity field in the Operation word. Upon decoding the Command word, the Coprocessor will respond with any of a set of response primitives which define functions which the Coprocessor requires the Processor to perform in support of the Command by the Coprocessor. The interface provides for all functions which the Coprocessor may require, including selective vectoring to appropriate exception handlers.
    Type: Grant
    Filed: April 18, 1983
    Date of Patent: June 7, 1988
    Assignee: Motorola, Inc.
    Inventors: David Mothersole, John Zolnowsky, Douglas B. MacGregor
  • Patent number: 4745574
    Abstract: In a microcoded data processor, an instruction is provided which enables the microaddress for the micromachine to be externally specified. By way of this instruction, the processor may be directed to execute special microcoded routines otherwise unavailable during normal execution. These special microcoded routines may perform useful functions such as testing in an expeditious manner portions of the circuitry of the processor which would otherwise be difficult to test. For example, the functionality of regular structures such as instruction decoding and control programmable logic arrays (PLA's) may either be gated directly out to the tester or internally analyzed before the accumulated results are presented to the tester. On-board instruction caches may also be efficiently exercised to verify that the tag portion properly determines "hits" and "misses", and that the actual instruction cache portion functions accurately.
    Type: Grant
    Filed: September 17, 1987
    Date of Patent: May 17, 1988
    Assignee: Motorola, Inc.
    Inventors: Robert W. Aaron, John Kuban, Douglas B. MacGregor, Robert R. Thompson
  • Patent number: 4744049
    Abstract: In a microcoded data processor, an instruction is provided which enables the microaddress for the micromachine to be externally specified. By way of this instruction, the processor may be directed to execute special microcoded routines otherwise unavailable during normal execution. These special microcoded routines may perform useful functions such as testing in an expeditious manner portions of the circuitry of the processor which would otherwise be difficult to test. For example, the functionality of regular structures such as instruction decoding and control programmable logic arrays (PLA's) may either be gated directly out to the tester or internally analyzed before the accumulated results are presented to the tester. On-board instruction caches may also be efficiently exercised to verify that the tag portion properly determines "hits" and "misses", and that the actual instruction cache portion functions accurately.
    Type: Grant
    Filed: September 17, 1987
    Date of Patent: May 10, 1988
    Assignee: Motorola, Inc.
    Inventors: John Kuban, Douglas B. MacGregor, Robert R. Thompson, David S. Mothersole
  • Patent number: 4731736
    Abstract: A system for interfacing a Processor to a Coprocessor using standard bus cycles. The Processor, upon encountering in its instruction stream an instruction having a particular Operation word format, will transfer a Command word following the Operation word to a particular Coprocessor designated by a Coprocessor Identity field in the Operation word. Upon decoding the Command word, the Coprocessor will respond with any of a set of response primitives which define functions which the Coprocessor requires to Processor to perform in support of the Command by the Coprocessor. The interface provides for all functions which the Coprocessor may require, including selective vectoring to appropriate exception handlers.
    Type: Grant
    Filed: September 18, 1986
    Date of Patent: March 15, 1988
    Assignee: Motorola, Inc.
    Inventors: David Mothersole, Douglas B. MacGregor, John Zolnowsky
  • Patent number: 4729093
    Abstract: A microcomputer prioritizes data operand requests and instruction prefetch requests. Such prioritizing is established by established criteria. The established priority is altered upon the occurrence of a signal. The signal indicates a certain type of data requests. This data request type is deemed to have a higher priority than is typical for a data request. Consequently, in response to receiving the signal which indicates this data request type, the priority is altered so as to be more inclined to perform the data request. This is particularly useful when performing numerous consecutive data operations, such as a co-processor interface operation.
    Type: Grant
    Filed: March 4, 1987
    Date of Patent: March 1, 1988
    Assignee: Motorola, Inc.
    Inventors: David S. Mothersole, Mark W. Bluhm, Robert R. Thompson, Douglas B. MacGregor
  • Patent number: 4729094
    Abstract: A system for interfacing a Processor to a Coprocessor using standard bus cycles. The Processor, upon encountering in its instruction stream an instruction having a particular Operation word format, will transfer a Command word following the Operation word to a particular Coprocessor designated by a Coprocessor Identity field in the Operation word. Upon decoding the Command word, the Coprocessor will respond with any of a set of response primitives which define functions which the Coprocessor requires to Processor to perform in support of the Command by the Coprocessor. The interface provides for all functions which the Coprocessor may require, including selective vectoring to appropriate exception handlers.
    Type: Grant
    Filed: March 24, 1987
    Date of Patent: March 1, 1988
    Assignee: Motorola, Inc.
    Inventors: John Zolnowsky, David S. Mothersole, Douglas B. MacGregor, William C. Moyer
  • Patent number: 4715013
    Abstract: A system for interfacing a processor to a Coprocessor using standard bus cycles. The processor, upon encountering in its instruction stream an instruction having a particular Operation word format, will transfer a Command word following the Operation word to a particular Coprocessor designated by a Coprocessor Identity field in the Operation word. Upon decoding the Command word, the Coprocessor will respond with any of a set of response primitives which define functions which the Coprocessor requires to Processor to perform in support of the Command by the Coprocessor. The interface provides for all functions which the Coprocessor may require, including selective vectoring to appropriate exception handlers.
    Type: Grant
    Filed: July 25, 1986
    Date of Patent: December 22, 1987
    Assignee: Motorola, Inc.
    Inventors: Douglas B. MacGregor, John Zolnowsky, David Mothersole
  • Patent number: 4698747
    Abstract: An execution unit for a microprocessor comprising a first section for performing arithmetic and logic operations on data, a second section for performing arithmetic operations on data memory addresses, and a third section for performing arithmetic operations on instruction addresses is disclosed in which data addresses and instruction addresses may be simultaneously calculated.
    Type: Grant
    Filed: June 28, 1985
    Date of Patent: October 6, 1987
    Assignee: Motorola, Inc.
    Inventors: Robert R. Thompson, David S. Mothersole, Douglas B. MacGregor
  • Patent number: 4649477
    Abstract: A data processor having size selector in a controller for explicitly selecting the size of an operand independent of an instruction in an instruction register, together with means for selectively enabling the instruction register or other functional block, or a size selector to select the size of the operand. A size bus and a size multiplexer are also provided to route the size instructions. By using this size mechanism, the amount of sequencing and control logic is significantly reduced from prior data processors. The mechanism allows operations of different sizes to be performed during a single instruction while allowing instruction dependent sizing to be done residually.
    Type: Grant
    Filed: June 27, 1985
    Date of Patent: March 10, 1987
    Assignee: Motorola, Inc.
    Inventors: Douglas B. MacGregor, William C. Moyer
  • Patent number: 4584666
    Abstract: A typical feature of a data processor is a bounds check. A bounds check is achieved when a determination is made as to whether a check value, typically an address or datum, is within predetermined bounds. Such check values may be signed or unsigned. By requiring that the upper bound be numerically larger than the lower bound for doing a signed check, and requiring that the upper bound be logically larger than the lower bound for doing an unsigned check, the bounds check is performed by the data processor without the need of receiving a signal which informs the data processor in advance as to whether the check is to be signed or unsigned.
    Type: Grant
    Filed: June 21, 1984
    Date of Patent: April 22, 1986
    Assignee: Motorola, Inc.
    Inventors: John Zolnowsky, Edward J. Rupp, Douglas B. MacGregor
  • Patent number: 4566063
    Abstract: A pipelined data processor capable of automatically storing in an external memory all essential information relating to the internal state thereof upon the detection of an access fault during instruction execution. Upon correction of the cause of the fault, the data processor automatically retrieves the stored state information and restores the state thereof in accordance with the retrieved state information. The data processor then resumes execution of the instruction. The faulted access may be selectively rerun upon the resumption of instruction execution. In response to detecting a particular sequence of a loopable instruction followed by a conditional branch instruction which selectively branches back to the loopable instruction, the data processor enters a loop mode wherein the loopable instruction and the branch instruction are internally recirculated around the pipeline to save instruction fetch cycles.
    Type: Grant
    Filed: October 17, 1983
    Date of Patent: January 21, 1986
    Assignee: Motorola, Inc.
    Inventors: John Zolnowsky, Douglas B. MacGregor, Kim Eckert
  • Patent number: 4524415
    Abstract: A data processor capable of automatically storing in an external memory all essential information relating to the internal state thereof upon the detection of an access fault during instruction execution. Upon correction of the cause of the fault, the data processor automatically retrieves the stored state information and restores the state thereof in accordance with the retrieved state information. The data processor then resumes execution of the instruction. The faulted access may be selectively rerun upon the resumption of instruction execution. Means are provided to verify that the retrieved state information is valid.
    Type: Grant
    Filed: December 7, 1982
    Date of Patent: June 18, 1985
    Assignee: Motorola, Inc.
    Inventors: Marvin A. Mills, Jr., William C. Moyer, Douglas B. MacGregor, John E. Zolnowsky