← Back to Patent Explorer
US4292667A Expired / Lapsed US ⏱️ 0.0 years remaining

Microprocessor system facilitating repetition of instructions

Assignee: Unisys Corp
•
Filing: 1979-06-27
•
Granted: 1981-09-29
•
Expires: 1999-06-27
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A microprocessor system in which a microprocessor having arithmetic logic, program memory, registers, and other support circuitry provides control lines and bus connections to an external application dependent logic module which has control logic, external registers and external memory and is oriented to handle the specific requirements for data transfers to and from a particular type of peripheral device. Means are provided in said microprocessor for selecting the number of times an instruction word is to be repeated and for the halting of a repeated instruction.

Inventors

  • 👤 Robert D. Catiller
  • 👤 Brian K. Forbes

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-25 12:54
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/38; G06F13/382; G06F13/385; G06F9/00; G06F9/06; G06F9/30; G06F9/32; G06F9/322; G06F9/325

Claims Analysis

Total Claims: 12
Claim 1
Independent Claim 791 words
A universal-type microprocessor system which cooperates with an application-dependent logic module to form a peripheral-controller capable of handling data transfers between the main memory of a host computer and a plurality of peripheral terminal units which can be either "word-oriented" or "byte-oriented", and wherein said application-dependent logic module provides external register means having bus connections to said plurality of peripheral terminal units and to said host computer, and wherein said application-dependent logic module further includes an external memory for storage of programs related to control of said peripheral terminal units and for temporary storage of data undergoing transfer, and wherein said application-dependent logic module further includes control logic means for communicating with and controlling said external register means, said external memory, and communicating with a decoder-controller in said microprocessor system, the said microprocessor system comprising: (a) data processing means including: (a1) an arithmetic logic unit providing an output to a shift logic circuit and to a byte-swap circuit; (a2) said shift logic circuit providing output to an I/O bus said shift logic circuit functioning to rotate one or more bits of a word being processed, to the right or to the left; (a3) said byte-swap circuit providing output to said I/O bus said byte-swap circuit functioning to exchange the sequential positions of the higher order byte and the lower order byte of a received two-byte word; (b) said I/O bus providing connecting lines from said data processing means to said external registers, to said external memory, to an accumulator register means, and to an addressing means; (c) addressing means receiving input data from said I/O bus and storing addresses useful for accessing data from an internal memory or said external memory storage, said addressing means including: (c1) a program counter storing consecutive addresses of data located in said internal program memory; (c2) a memory reference register for storing addresses of data located in said external memory, and including: (c2-1) a memory address bus which connects to said external memory; (c2-2) and wherein a dedicated non-address bit in said memory reference register being set to signal said decoder-controller to initiate a byte-swap operation in said byte-swap circuit, or when not-set, to pass data without a byte-swap operation; (c2-3) a bus connection from said memory reference register to said decoder-controller; (c3) an address register in said decoder-controller connecting by means of an address bus to said accumulator register means, which include a plurality of accumulator registers for selection of data from an addressed accumulator register; (d) said internal program memory storage for storing program instructions and data words, said internal memory being addressed from said program counter and providing instruction words and data, via an instruction bus, to an instruction register and memory operand register; (e) register means for temporary storage of data, said register means including: (e1) said plurality of addressable accumulator registers which provide an output to the input of said arithmetic logic unit, said accumulator registers receiving input data words from said I/O bus; (e2) a memory operand register for receiving operand data from said internal program memory via said instruction bus or from said external memory via a memory data bus; (e3) an instruction register for receiving instruction words from said internal program memory via said instruction bus and providing instruction words to said decoder-controller; (f) said instruction decoder-controller receiving instruction signals from said instruction register and including incoming and outgoing control signal lines connected to said data processing means, to said addressing means, to said register means, to said internal and external memory means, to said external registers and said control logic means; (f1) and wherein said decoder-controller further includes: (f1a) connection means for receiving control signals from said control logic in said application-dependent logic module for performing clocking, interrupt, and halt functions; (f1b) address lines to said external registers for selecting a specific register; (f1c) control lines for strobing address signals to said external registers; (g) said memory data bus for carrying data from said external memory to said instruction register and said memory operand register; (h) a repitition counter having an input from said I/O bus and an output to said memory reference register; (i) instruction word means in said internal program memory for signalling said decoder-controller, said instruction word means including: (i-1) a GET operator which functions to place the contents of said repetition counter into one of said selected accumulator registers as its destination; (i-2) a PUT operator which functions to take the contents of said destination accumulator and place it via said data processing means into a selected external register; (j) means for controlling the number of repetitive operations of a selected instruction word means, said means for controlling including flip-flop means, in said decoder-controller, which receives information signals from said repetition counter.
Claim 2
Dependent Claim 791 words
A universal-type microprocessor system which cooperates with an application-dependent logic module to form a peripheral-controller capable of handling data transfers between the main memory of a host computer and a plurality of peripheral terminal units which can be either "word-oriented" or "byte-oriented", and wherein said application-dependent logic module provides external register means having bus connections to said plurality of peripheral terminal units and to said host computer, and wherein said application-dependent logic module further includes an external memory for storage of programs related to control of said peripheral terminal units and for temporary storage of data undergoing transfer, and wherein said application-dependent logic module further includes control logic means for communicating with and controlling said external register means, said external memory, and communicating with a decoder-controller in said microprocessor system, the said microprocessor system comprising: (a) data processing means including: (a1) an arithmetic logic unit providing an output to a shift logic circuit and to a byte-swap circuit; (a2) said shift logic circuit providing output to an I/O bus said shift logic circuit functioning to rotate one or more bits of a word being processed, to the right or to the left; (a3) said byte-swap circuit providing output to said I/O bus said byte-swap circuit functioning to exchange the sequential positions of the higher order byte and the lower order byte of a received two-byte word; (b) said I/O bus providing connecting lines from said data processing means to said external registers, to said external memory, to an accumulator register means, and to an addressing means; (c) addressing means receiving input data from said I/O bus and storing addresses useful for accessing data from an internal memory or said external memory storage, said addressing means including: (c1) a program counter storing consecutive addresses of data located in said internal program memory; (c2) a memory reference register for storing addresses of data located in said external memory, and including: (c2-1) a memory address bus which connects to said external memory; (c2-2) and wherein a dedicated non-address bit in said memory reference register being set to signal said decoder-controller to initiate a byte-swap operation in said byte-swap circuit, or when not-set, to pass data without a byte-swap operation; (c2-3) a bus connection from said memory reference register to said decoder-controller; (c3) an address register in said decoder-controller connecting by means of an address bus to said accumulator register means, which include a plurality of accumulator registers for selection of data from an addressed accumulator register; (d) said internal program memory storage for storing program instructions and data words, said internal memory being addressed from said program counter and providing instruction words and data, via an instruction bus, to an instruction register and memory operand register; (e) register means for temporary storage of data, said register means including: (e1) said plurality of addressable accumulator registers which provide an output to the input of said arithmetic logic unit, said accumulator registers receiving input data words from said I/O bus; (e2) a memory operand register for receiving operand data from said internal program memory via said instruction bus or from said external memory via a memory data bus; (e3) an instruction register for receiving instruction words from said internal program memory via said instruction bus and providing instruction words to said decoder-controller; (f) said instruction decoder-controller receiving instruction signals from said instruction register and including incoming and outgoing control signal lines connected to said data processing means, to said addressing means, to said register means, to said internal and external memory means, to said external registers and said control logic means; (f1) and wherein said decoder-controller further includes: (f1a) connection means for receiving control signals from said control logic in said application-dependent logic module for performing clocking, interrupt, and halt functions; (f1b) address lines to said external registers for selecting a specific register; (f1c) control lines for strobing address signals to said external registers; (g) said memory data bus for carrying data from said external memory to said instruction register and said memory operand register; (h) a repitition counter having an input from said I/O bus and an output to said memory reference register; (i) instruction word means in said internal program memory for signalling said decoder-controller, said instruction word means including: (i-1) a GET operator which functions to place the contents of said repetition counter into one of said selected accumulator registers as its destination; (i-2) a PUT operator which functions to take the contents of said destination accumulator and place it via said data processing means into a selected external register; (j) means for controlling the number of repetitive operations of a selected instruction word means, said means for controlling including flip-flop means, in said decoder-controller, which receives information signals from said repetition counter.
Claim 3
Dependent Claim 74 words
The microprocessor system of claim 1 wherein said PUT instruction operator controls the placement of data from a selected accumulator register, acting as source, or from a selected address in said external memory, into a selected external register; and wherein said PUT operator being used to load a number N from the program memory into said repetition counter in order to control the execution of N+1 operations if a selected instruction to be repeated.
Claim 4
Dependent Claim 29 words
The system of claim 1 wherein said PUT operator is used to load a number N into said repetition counter for establishing N+1 iterative operations of a selected instruction.
Claim 5
Dependent Claim 58 words
The system of claim 3 which includes: means to decrement the existing number in said repetition counter for each completed iteration of said selected instruction said means to decrement including instruction words which: (a) read out the numeric value in said repetition counter; (b) decrement said numeric value; (c) replace said decremental value back into said repetition counter.
Claim 6
Dependent Claim 91 words
The system of claim 1 wherein said means for controlling the number of repetitive operations includes: (j-1) means to load, via said I/O bus, a number N into said repetition counter for establishing a series of N+1 repeat operations of the same instruction, said repetition counter acting to decrement the number N for each repeat operation of said instruction; (j-2) a repeat mode flip-flop, in said decoder-controller, which receives a signal from said repetition counter to cause repetition of the current instruction until the repetition counter signal is equal to zero.
Claim 7
Dependent Claim 47 words
The microprocessor system of claim 5 wherein said instruction word means further includes: a dedicated bit field (M) for signalling said instruction decoder-controller to select either said memory reference register or said program counter as the source of memory addresses for the fetching of data or instructions.
Claim 8
Dependent Claim 40 words
The microprocessor system of claim 6 wherein said value of M equal to "one" for said dedicated bit field, will select said memory reference register as the source of memory addresses used to fetch data from said external data memory.
Claim 9
Dependent Claim 33 words
The microprocessor system of claim 7 wherein said memory reference register provides the source of addresses for the placement of repeated PUT data and further provides the destination addresses for repeated GET data.
Claim 10
Dependent Claim 38 words
The microprocessor system of claim 6 wherein said value of M equal to "zero" for said dedicated bit field, will select said program counter as the source of memory addresses to be used to fetch instructions or data.
Claim 11
Dependent Claim 92 words
The microprocessor of claim 5 wherein said internal memory, said external memory, and said register means are organized into locations for holding words of two-bytes, symbolically designated as AB where A is the higher order byte and B is the lower order byte of the word; and wherein said means for loading said repetition counter with a number N includes: means for selecting the lower order byte B of a selected word AB during a PUT operation, said number N being derived from the lower order byte B of the PUT data.
Claim 12
Dependent Claim 31 words
The microprocessor system of claim 5 wherein said control logic includes: a halt-repetition control line, connected to said decoder-controller, for signalling said decoder-controller to stop the repetition sequence of an instruction.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1984-09-28 1985-03-30 1985-09-29 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1988-09-28 1989-03-30 1989-09-29 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1992-09-28 1993-03-30 1993-09-29 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag