throbber
[11]
`4,027,293
`May 31, 1977
`“ ” ”, ”
`
`United States Patent [19]
`"**
`**wuanasoor,
`[54] MICROCODE PROGRAM SEQUENCER
`|75|| Inventors: Neil R. Lincoln, St. Paul; David R.
`Resnick, Arden Hills, both of Minn.
`[73] Assignee: Control Data Corporation,
`Minneapolis, Minn.
`Sept. 12, 1975
`[22] Filed:
`[21 | Appl. No. 612,837
`1521 U.S. Cl. ............................................ 340/172.5
`| 5 | |
`Int. Cl.” ........................................... G06F 9/16
`[58] Field of Search ................................. 340/172.5
`[56)
`References Cited
`UNITED STATES PATENTS
`3,839,705 l ()/ 1974 Davis et al. ..................... 340/172.5
`3,868,649 2/1975 Sato et al. ...................... 34()/ I 72.5
`3,886,523
`5/1975 Ferguson et al. ............... 340/1 72.5
`3,909,800
`9/1975 Recks et al. .......
`... 34()/ 172.5
`3,979,729 9/1976 Eaton et al. ..........
`... 34()} | 72.5
`Primary Examiner—Gareth D. Shaw
`
`Assistant Framiner—C. T. Bartz
`Attorney, Agent, or Firm—Robert M. Angus
`[57]
`ABSTRACT
`A microcode program sequencer includes first and
`second registers (herein designated the Q and P regis
`ters), each connected to a computer memory to receive
`addresses therefrom. Control means is provided for
`each register such that the P register will provide out
`put addresses to a microcode memory, whereas the Q
`register(s) provide output addresses to the P register.
`By properly operating the control means, incrementing
`of addresses from the P register can be accomplished,
`as well as address jumps and returns, using the O regis
`ter. Further, the contents of the Q register may also be
`incremented in synchronism with the P register, as
`desired. One feature of the invention resides in a condi
`tional latch circuit which may be selectively operated
`as a latch or as an OR gate.
`
`13 Claims, 9 Drawing Figures
`
`B RANCH
`ADDRESS
`
`
`
`
`
`Q |
`CONTROL
`
`
`
`(2)
`
`Q 2
`CONTROL
`
`
`
`MASTER
`C - E AR
`
`P
`CGNTROL
`
`CONDITION
`LATCH
`
`
`
`Ex.1051.001
`
`DELL
`
`

`

`U.S. Patent May 31, 1977
`
`Sheet 1 of 5
`
`4,027,293
`
`BRANCH
`ADDRESS
`|
`
`f
`
`|
`
`23
`
`@Hoon Rol-(?)
`
`2/
`
`Q2
`@-controLH-Q)
`
`22
`
`39
`
`P
`CONTROL
`
`P
`REG.
`
`(4)
`
`@
`
`26
`
`+ |
`IN CR
`
`CARRY
`OUT
`
`MASTER
`CLEAR
`
`CONDITION
`LATCH
`
`(3)
`
`|
`|
`
`P OUT
`
`25
`
`CARRY
`control?-27
`( FIG. 4D )
`
`|
`LOAD
`microcod E |
`( FIG. 2 )
`|
`
`( FIG. 3)
`
`CA R RY | N
`
`Ex.1051.002
`
`DELL
`
`

`

`U.S. Patent May 31, 1977
`
`Sheet 2 of 5
`
`4,027,293
`
`
`
`Ex.1051.003
`
`DELL
`
`

`

`U.S. Patent May 31, 1977
`
`Sheet 3 of 5
`
`4,027,293
`
`ATVG, 34
`
`FROM
`B RANCH ADDRESS
`7 *, 32
`_2^
`33
`[- - - - - - - -
`|
`|
`|
`
`94
`85
`
`
`
`9 2/o
`AND
`
`AND
`
`R
`
`2//
`
`S2
`OR Ho Q OUT
`
`CONTINUE D
`( F | G. 3B )
`
`95
`
`S4
`
`96
`
`§§ CC
`
`Ano
`
`97
`
`# Hº
`
`AND P- 93
`D D
`
`AA
`
`B B CC
`
`o P OUT
`
`O CARRY
`
`Ex.1051.004
`
`DELL
`
`

`

`U.S. Patent May 31, 1977
`
`Sheet 4 of 5
`
`4,027,293
`
`73
`
`AT/G. JAP
`
`Q
`A N D.
`
`39
`
`O Q OUT
`
`a?ºn
`ADDREss 2
`84
`
`
`
`
`
`J
`W
`
`Z
`
`
`
`LATCH
`
`A
`
`
`
`L ATC H
`
`F
`
`76
`
`O
`
`e JLATCH
`H.
`H
`
`/O2
`@
`
`AOO
`
`CR
`
`/O/
`
`/03
`@
`
`2 /8
`
`o P OUT
`
`B5 &c. DD - 2/9
`
`/ O4
`
`O Q OUT
`
`O R
`
`O P OUT
`
`Ex.1051.005
`
`DELL
`
`

`

`U.S. Patent May 31, 1977
`
`Sheet 5 of 5
`
`4,027,293
`
`— 3
`
`(o) (P)
`
`C L O C K
`
`PIG. 44
`
`- ;
`
`Q OUT CONTROL
`
`FIG. 4B
`
`ºf
`•-
`FIG. 4C
`
`Q S E LEC T
`

`
`FROM
`PRIOR
`CIRCUITS I C
`
`/2O
`
`65
`
`C A R R Y CONTROL
`
`ATIG. 4D
`
`
`
`/35
`
`ATIG. 5
`
`Ex.1051.006
`
`DELL
`
`

`

`1
`
`5
`
`4,027,293
`2
`Another feature of the present invention resides in
`the provision of a highly versatile microcode program
`MICROCODE PROGRAM SEQUENCER
`sequencer capable of functioning in a variety of com
`This invention relates to computer processors, and
`puters, regardless of generation, configuration, speed
`particularly to a microcode program sequencer for
`or bit length of word.
`controlling computer operations.
`With a microcode program sequencer according to
`Microcode program sequencers are utilized in com
`the present invention, the size of the microcode mem
`puters for controlling logic functions of a computer.
`ory may be minimized because subroutine techniques
`For example, many computers utilize common cir
`are possible within the microcode sequencer itself. The
`cuitry capable of any of several functions which, when
`microcode program sequencer according to the present
`properly gated from a microde program memory, will 10
`invention may be connected in a chained fashion to
`perform a selected function. Heretofore, most micro
`provide control for larger memories. Further, the se
`code sequencers have been specifically designed for
`quencers may be connected in tandem to provide
`each computer and have been connected to a read-only
`phased execution from independent memory elements,
`memory (ROM) to receive addresses from the micro
`thereby increasing the apparent speed of the se
`code memory, process those addresses and other con- 15
`quencer. Further, the provision of separate registers
`trol signals, and control the microcode memory to send
`within the microcode program sequencer enables two
`appropriate enable signals to the various enable gates
`dimensional decision processes to be accomplished.
`of the logic circuitry. Heretofore, due to the differences
`The above and other features of this invention will be
`in hardwire configuration of various generations of
`more fully understood for the following detailed de
`20
`computers, the difference in the bit length of words,
`scription and the accompanying drawings in which:
`and other significant differences, it has not been possi
`FIG. 1 is a block circuit diagram of a microcode
`ble to construct a microcode program sequencer capa
`program sequencer in accordance with the presently
`ble of functioning in any of several computers. Thus,
`preferred embodiment of the present invention;
`microcode sequencers have heretofore been unique to
`FIG. 2 is a block circuit diagram of the control func
`a single type or model of computer. Further, due to the
`tions of the microcode program sequencer illustrated in
`association of microcode program sequencers with a
`FIG. 1;
`read-only microcode memory, the versatility of most
`FIGS. 3A and 3B, taken together, are a block circuit
`prior microcode sequencers has been hindered, Since
`diagram of the register and output control functions of
`additional functions could not be written into the mem
`the microcode program sequencer illustrated in FIG. 1;
`30
`ory for use with the microcode sequencer. Instead, all
`FIGS. 4A through 4D are block circuit diagrams of
`processing to be accomplished by the microcode se
`certain control circuits utilized in the microcode pro
`quencer had to be inserted into the microcode memory
`gram sequencer shown in FIG. 1; and
`as a design feature of the computer, and could not be
`FIG. 5 is a block circuit diagram of a conditional
`altered in the field.
`latch circuit useful with the microcode program se
`Prior microcode program sequencers utilized a single
`quencer according to the present invention.
`register for storage of the microcode address. As a
`With reference to FIG. 1, there is illustrated a block
`result, such microcode program sequencers were lim
`circuit diagram of a microcode program sequencer in
`ited in their capabilities to perform jump and return
`accordance with the presently preferred embodiment
`routines, as such routines, if performed, had to be per- 40
`of the present invention. The microcode sequencer
`formed elsewhere in the computer.
`comprises a Q1 control circuit 20, a Q2 control circuit
`A microcode program sequencer according to the
`21 and a P control circuit 22. Circuits 20 and 21 each
`present invention comprises a plurality of registers,
`receive 2 bits of input from a microcode memory,
`herein designated Q and P registers, with control cir
`whereas control circuit 22 receives a 4-bit input from
`cuits to control input to the registers. The control cir- 45
`microcode memory. In addition, conditional latch, load
`cuits receive inputs from the microcode memory to
`microcode enable, and master clear signals may be
`selectively operate the Q and P registers to receive
`provided to the P control circuit. Q1 register 23 re
`branch addresses or other functions. By selectively
`ceives inputs from the branch address portion of the
`conditioning the control circuits, new addresses may be
`microcode memory, increment circuit 26 and the Q1
`read into any of the registers, addresses may be incre- 50
`control circuit 20. Q1 register 23 provides an output to
`mented for continuous operation, or jumps and other
`P register 25. Q2 register 24 receives inputs from the
`computer operations can be performed. The output of
`Q2 control circuit 21, increment circuit 26 and the
`the registers is taken directly to the microcode memory
`branch address of the microcode memory, and pro
`vides an output to P register 25. Additionally Q1 and
`for new addresses or for direct operation on the logic
`Q2 registers 23 and 24 may also provide another output
`circuits of the computer.
`(designated Q out) for test and control purposes. P
`One feature of the invention resides in the provision
`of hardware capable of controlling the P and Q register
`register 25 receives inputs from the P control circuit
`22, the branch address of the microcode memory, in
`to selectively store and/or increment addresses so that
`the sequencer will provide one set of addresses from
`crement circuit 26 and the Q1 and Q2 registers di
`rectly, P register 25 provides an output directly to the
`one register, while holding another address for future 60
`microcode memory as well as to plus one increment
`use. The address in the other register may be used for
`circuit 26, which in turn provides outputs to each of the
`returns, jumps or other purposes, depending upon how
`registers 23, 24 and 25. Increment circuit 26 further
`the registers are selectively controlled.
`provides a Carry output to further microcode se
`Another feature of the present invention resides in
`quencer circuits as will be more fully explained herein
`the provision of a microcode program sequencer oper- 65
`after. Several microcode sequencer circuits illustrated
`able with a microcode memory capable of read and
`in FIG. 1 may be arranged in a chained fashion, in
`write functions so that additional instructions may be
`which case a carry output will be forwarded from one
`written into the microcode memory.
`
`55
`
`25
`
`35
`
`Ex.1051.007
`
`DELL
`
`

`

`| 0
`
`15
`
`20
`
`4,027,293
`4
`3
`200, 201, 202 and 203 provide outputs to the I, J. K
`microcode sequencer to the next, particularly through
`and L conductors respectively.
`the carry control circuit 27 associated with the plus one
`FIG. 3 illustrates the register, carry and increment
`increment circuit 26.
`portions of the microcode program sequencer illus
`FIGS. 2–4 illustrate a more detailed block circuit
`diagram of the microcode program sequencer illus
`trated in FIG. 1. As shown in FIG. 3 a plurality of latch
`trated in FIG. 1. Referring particularly to FIG. 2, which
`circuits 70–81 are provided to receive branch ad
`dresses via connectors 82, 83, 84 and 85 from the
`illustrates the control circuits 20, 21 and 22, the Q1
`branch address portion of the microcode memory. The
`control circuit 20 is illustrated in the upper left-hand
`portion of FIG. 2, Q2 control circuit 21, which is sub
`details of latch circuit 70 are illustrated in FIG. 3, and
`stantially the same as the Q1 control circuit 20, is
`is understood that the other latch circuits have essen
`shown in the upper right-hand portion of FIG. 2, and
`tially the same type of circuitry, with differences as
`the remainder of the Figure is essentially devoted to the
`noted hereinafter.
`Latch circuit 70 includes an AND gate 86 connected
`P control circuit 22.
`to receive inputs from the Z conductor and from the
`The Q1 control circuit includes a pair of inputs 30,
`31 connected to OR gate 32. OR gate 32 is connected
`branch address via connector 82. AND gate 87 is con
`to AND gate 33 which in turns provide an output to
`nected to receive inputs from the C and I conductors.
`AND gates 86 and 87 provide inputs to OR gate 88
`circuits 35 and 36 and an inverted output to conductors
`A. AND gates 35 and 36 provide outputs to conductors
`which in turn provides outputs to drive circuits 89 and
`90. The output from drive circuit 90 is provided as one
`Z and C, respectively. Drive circuit 35a provides a
`input to AND gate 91 which in turn provides an input
`second input between input 30 and AND gate 35, while
`to OR gate 88. The second input for AND gate 91 is
`drive circuit 36a provides a second input between input
`provided via conductor A.
`31 and AND gate 36. The Q2 control circuit includes
`input terminals 37 and 38 connected to OR gate 39
`Conductor 82 from the branch address is connected
`which in turn provides an output to AND gate 40. AND
`as an input to latch circuits 70, 71 and 72, conductor
`gate 40 provides an inverted output to the conductors
`83 is connected as an input to latch circuits 73, 74 and
`25
`B and an output to AND gates 42 and 43. Drive circuit
`75, conductor 84 is connected as an input to latch
`42a provides direct connection between terminal 37
`circuit 76, 77 and 78, and conductor 85 is connected as
`and AND gate 42 while drive circuit 43a provides con
`an input to latch circuits 79, 80 and 81. Latch circuit
`71 also receives inputs from conductors B, D, I and Y,
`nection between terminal 38 and AND gate 43. AND
`gates 42 and 43 provide outputs to conductors Y and
`while latch circuit 72 receives inputs from conductors
`30
`D, respectively. The second inputs of AND gates 33
`F., I, X and W. Latch circuit 73 receives inputs from
`conductors A, C, J and Z, latch circuit 74 receives
`and 40 are connected to conductor N to receive clock
`pulses.
`inputs from conductors B, D, J and Y, while latch cir
`cuit 75 receives inputs from conductors F, J, W and X.
`The P control circuit has input terminals 44, 45, 46,
`47, 48 and 49. Input terminal 44 is connected as a first
`Latch circuit 76 receives inputs from conductors A, C,
`input to AND gates 50 and 51, input terminal 45 is
`K and Z, latch circuit 77 receives inputs from conduc
`connected to AND gates 51 and 52, input terminal 46
`tors B, D, K and Y, while latch circuit 78 receives
`is connected to AND gates 52 and 53, and input termi
`inputs from conductors F, K, W and X. Latch circuit 79
`receives inputs from conductors A, C, L and Z, latch
`nal 47 is connected to AND gates 50 and 53. The out
`puts from AND gates 50 and 51 are connected separate
`circuit 80 receives inputs from conductors B, D, L, and
`40
`inputs to OR gate 54 and to NOR gate 55 while the
`Y, while latch circuit 81 receives inputs from conduc
`outputs of gates 52 and 53 are connected as separate
`tors F, L, W and X.
`Latch circuit 70 provides inputs to AND gates 210
`inputs to OR gate 56 and NOR gate 57. The output
`and 213 while latch circuit 71 provides inputs to AND
`from OR gate 54 is connected to a first input of AND
`gates 211 and 212. AND gates 210 and 211 provide
`gate 58, the output of OR gate 56 is connected to a first
`45
`input of AND gate 59, and the outputs from NOR gates
`outputs to OR gate 92, while AND gates 212 and 213
`provide outputs to OR gate 93. AND gate 210 receives
`55 and 57 are connected through AND gate 55a to one
`a second input from conductor Q, AND gate 211 re
`input of OR gate 60.
`ceives a second input from conductor R, AND gate 212
`Terminal 49 is connected to drive circuit 61 which
`provides inputs to AND gates 200, 201, 202 and 203
`receive a second input from conductor S and AND gate
`and an inverted output to one input of AND gate 62.
`213 receives a second input from conductor T, OR gate
`92 provides an output to Q out, which is one bit line for
`The other input of AND gate 62 is connected to termi
`the Q output shown in FIG. 1. OR gate 93 provides an
`nal 48. AND gate 62 provides one output to a second
`input to latch circuit 72.
`input of AND gates 58 and 59, and an inverted output
`As shown in the drawings, and particularly in connec
`to a second input of OR gate 60. AND gate 58 provides
`an output to AND gate 204; OR gate 60 provides an
`tion with latch circuit 72, latch circuits 72, 75, 78 and
`output to AND gate 205; and AND gate 59 provides an
`81 each include an additional AND gate 300 each
`output to AND gate 206. Conductor N provides inputs
`connected to receive inputs from the E conductor and
`to drive circuits 66 and 67; drive circuit 67 providing
`from an OR gate (such as OR gate 93) associated with
`an output to AND gates 205 and 206 and an inverted
`a prior latch circuit. The circuit associated with these
`four latch circuits is essentially the same as that shown
`output to conductor F while drive circuit 66 provides
`output to AND gate 204.
`in connection with latch circuit 70, the difference being
`AND gates 204, 205 and 206 provide outputs to the
`that the inputs from the E conductor and the prior OR
`X, W and E conductors respectively. AND gate 200
`circuit 93 are connected to AND gate 300 which in
`turn provides an output to the OR gate shown as OR
`receives a second input from conductor II; gate 201
`gate 88 in latch circuit 72. Latch circuit 72 provides an
`receives a second input from conductor JJ, gate 202
`output through drive circuit 94 to P out, which is the
`receives a second input from conductor KK and gate
`first bit line of the output for the P register. Latch
`203 receives a second input from conductor LL Gates
`
`50
`
`35
`
`55
`
`65
`
`Ex.1051.008
`
`DELL
`
`

`

`15
`
`45
`
`50
`
`4,027,293
`6
`5
`It will be appreciated that OR gates 92, 99, 104 and
`circuit 72 also provides an output to latch circuit 95
`109 pass a signal to the respective Q out bit line when
`which in turn provides outputs to AND gate 96 and to
`a signal is present from one (or both) of the inputing
`EXCLUSIVE OR gate 97. AND gate 96 receives inputs
`latch circuits and a corresponding signal appears on a
`from latch circuit 95, and from conductors AA, BB and
`respective one of conductors Q or R. Thus, OR gate 92
`CC which in turn are connected to the output of latch
`provides a Q out signal when a signal is provided from
`circuits 102, 107 and 112. AND gate 96 provides an
`latch circuit 70 and on the Q conductor or when a
`output to Carry Out, for purposes to be hereinafter
`signal is provided from latch circuit 71 and from the R
`explained. AND gate 98 receives inputs from conduc
`conductor. Similarily, OR gate 93, 100, 105 and 110
`tors AA, BB, CC, and DD and provides an output to
`provide outputs on a conditional basis when one or the
`EXCLUSIVE OR gate 97. EXCLUSIVE OR gate 97
`other of the inputing latch circuits provides a signal and
`provides an output to conductor II (for feeding back to
`a corresponding S or T conductors also provide a sig
`AND gate 200 (FIG. 2) to enable inputs to latch cir
`nal. Thus, OR gate 93 provides an output when a signal
`cuits 70, 71 and 72 on conductor I).
`is present from latch circuit 70 and also conductor T or
`Similarly, latch circuits 73 and 74 provide outputs to
`when signal is present from latch circuit 71 and also on
`AND gates 214, 215, 216 and 217 to operate OR gates
`conductor S.
`99 and 100; AND gates 214 and 215 further receiving
`As shown in FIGS. 4A, 4B and 4C, the clock asso
`inputs from conductors Q and R respectively to operate
`ciated with the microcode processor provides outputs
`OR gate 99 to provide and output to a second bit line
`on conductors N and O and inverted outputs on con
`of Q out. AND gate 216 and 217 receive further inputs
`ductors M and P, a Q out control circuit (FIG. 4B)
`20
`from conductors S and T, respectively, to control OR
`provides an output on conductor R and and inverted
`gate 100 to provide an input to latch circuit 75. Latch
`output on conductor Q, and a Q select control (FIG.
`circuit 75 provides an output through drive circuit 101
`4C) provides an output on conductor S and an inverted
`for a second bit line of P out. In addition, latch circuit
`output on conductor T. Also, as shown in FIG. 4D, a
`75 provides output to latch circuit 102 which in turn
`carry control is provided and consists of an AND gate
`25
`provides an output for conductor AA and to EXCLU
`120 having input terminals connected to prior micro
`SIVE OR gate 103. EXCLUSIVE OR gate 103 receives
`code sequencers. As will be more fully understood
`a further input from AND gate 218 which receives
`hereinafter, several microcode sequencers, as illus
`inputs from conductors DD, BB and CC. Gate 103
`trated in FIG. 1, may be provided to operate in a
`provides an output to conductor JJ for feeding back to
`chained fashion. In such an event, the carry out signal
`AND gate 201 to enable to latch circuits 73,74 and 75
`from gate 96 (FIG. 3) will be connected as an input to
`via conductor J.
`AND gate 120 so that if all of the lower-ordered micro
`Latch circuits 76 and 77 provide outputs to AND
`code sequencers provide a carry output, AND gate 120
`gates 219, 220, 221 and 222 to enable OR gate 104 and
`will be operated to provide a signal on conductors DD.
`105; AND gates 219 and 220 receiving further inputs
`It will be evident to those skilled in the art that when a
`35
`from conductors Q and R to control OR gates 104 to
`plurality of sequencers are arranged in a chained fash
`provide an output for a third bit line of Q out, and AND
`ion, conductor DD of the lowest-ordered sequencer
`gates 221 and 222 receiving further inputs from the S
`will be tied to a permanent source of binary 1 signals,
`and T conductors and providing outputs to OR gate
`the next higher ordered sequencer will have its conduc
`105 to provide an output to latch circuit 78. Latch
`tor DD connected to the carry output conductor from
`40
`circuit 78 provides an output through drive circuit 106
`gate 96 of the lowest-ordered sequencer, and the high
`to a third bit line of P out, and provides an output to
`er-ordered sequencer will have its DD conductor con
`latch circit 107. Latch circuit 107 provides outputs to
`nected to the output of AND gate 120 (FIG. 4D) whose
`inputs are connected to the carry outputs of the all
`conductors BB and to EXCLUSIVE OR circuit 108.
`EXCLUSIVE OR circuit 108 receives an input from
`lower-ordered sequencers.
`circuit 401 and provides an output to conductor KK for
`It will be appreciated that latch circuits 70, 73, 76
`feeding back to AND gate 102 to enable latch circuits,
`and 79 comprise the Q1 register, that latch circuits 71,
`74, 77 and 80 comprise the Q2 register and that latch
`76, 77 and 78 via conductor K. AND gate 401 receives
`circuits 72, 75, 78 and 81 comprise the P register.
`an input from conductors DD and EE.
`In operation of the apparatus as thus far described,
`Latch circuits 79 and 80 provides to AND gates 223,
`224, 225 and 226 to enable OR gates 109 and 110;
`assume it is desired to load data into the Q2 register
`AND gates 223 and 224 receiving further inputs from
`from the address field of the microcode memory. The
`four bits of data is applied to lines 82 through 85 and
`the Q and R conductors to control OR gate 109 to
`provide a fourth bit line of Q out, and AND gates 225
`hence to latch circuits 71, 74, 77 and 80. The Q2 con
`and 226 receiving further inputs from conductors S and
`trol is enabled via terminal 37 to supply outputs on the
`55
`T to control OR gates 110 to provide an output to latch
`Y conductors and an inverted output on the B conduc
`circuit 81. Latch circuit 81 provides an output through
`tors to operate the latch circuits associated with the Q2
`register. The data is then loaded into the register during
`drive circuit 1 11 to the fourth bit line of P out, and
`a clock pulse. Upon removal of the signal from terminal
`provides an output to latch circuit 112. Latch circuit
`37, the output of AND gate 40 is inverted so that an
`112 provides outputs to conductors CC, EE and EX
`60
`enable signal is provided via conductors B to the latch
`CLUSIVE OR gate 113. Exclusive OR gate 113 re
`circuits to store the data in the latch. In the respect, the
`ceives a second input from conductor DD and provides
`signal on conductor B and the output of OR gate 88
`an output to conductor LL to enable AND gate 203 to
`through drive circuit 90 serve to operate AND gate 91
`provide a signal via conductor L for latch circuits 79,
`to maintain the output from OR gate 88 after inversion
`80 and 81.
`of the signal on conductor Y. Assuming it is desirable
`As shown in FIG. 3, each of latch circuits 95, 102,
`to transfer that information from the Q2 register to the
`106 and 112 receive inputs from the O and P conduc
`P register, the Q select circuit (FIG. 4C) is operated to
`tors, which are essentially clock inputs. (See FIG. 4A).
`
`30
`
`65
`
`Ex.1051.009
`
`DELL
`
`

`

`5
`
`10
`
`15
`
`20
`
`4,027,293
`8
`7
`SIVE OR gate 103, thereby providing a binary 1 output
`provide outputs on the S conductors to enable AND
`gates 212, 216, 221 and 225 to pass the information
`on conductor J.J.
`The binary 0s appearing on conductors KK and LL,
`through OR gates 93, 100, 105 and 110 to AND gate
`when applied to AND gates 202 and 203, cause a 0
`300 of latch circuits 72, 75, 78 and 81. Simultaneously
`signal to be applied via conductors K and L to latch
`the P control circuit provides enable signals over the E
`circuits 78 and 81, so that during the next clock pulse
`conductors to the AND gates 300 of latch circuits of
`these latches will be set to 0. The binary 1 on conductor
`the P register to enable the latch circuits to receive the
`JJ, when applied through AND gate 201, causes a 1 to
`data from the O2 register. (The signals on the E con
`be applied via conductor J to latch circuit 75, so that
`ductors will occur during a clock cycle whenever sig
`during the next clock pulse the latch will be set to 1.
`nals to terminals 45 and 46 or to terminals 46 and 47
`are binary Is. Normally signal to terminals 45 and 46
`It is evident that after the latches are set to 100,
`(stepped up from the 011 initial code), that code is
`come from microcode memory and the signal on termi
`transferred into latches 102, 107 and 112 so that the l
`nal 47 comes from conditional latch circuit (FIG. 5).
`signal on conductors BB, CC and EE are reset to 0 and
`The data can be read out through the P out terminals
`1 binary signals during the next iteration.
`of the P register to the microcode memory as memory
`In the event that all latches 72, 75, 78 and 81 contain
`addresses to select instructions for direct operation of
`binary 1s, signals are impressed onto conductors AA,
`the computer logic. If it is desirable to run a continuous
`BB and CC to operate AND gate 96 to provide a carry
`increment of the addresses, enable and data signals can
`out signal to AND gate 120 (FIG. 4D) of all higher
`be provided through latch circuits 95, 102, 107 and
`ordered sequencers. If all lower-ordered sequencers of
`110 to EXCLUSIVE OR circuits 97, 103, 108 and 113
`a chained arrangement provide 1 inputs to an AND
`to provide outputs on the I conductors back to the latch
`gate 120 of a higher-ordered sequencer, such gate pro
`circuits of the P register to continuously increment the
`vides a 1 signal output on its conductor DD to enable
`address. At the same time, the latch circuits associated
`gates 97, 103, 108 and 113 in such higher-ordered
`with the Q2 register may be incremented if the Q2
`sequencer to invert, depending upon the conditions as
`control circuit provides outputs on the D conductor.
`25
`Otherwise, the Q2 register may hold the original data
`heretofore described.
`In most applications, it would be desirable to read
`from the branch address for a future return. While
`control information through the P register to the micro
`addresses are being issued from the P register, it may be
`code memory, and the separate outputs of the Q regis
`desirable to load a future address into the Q1 or Q2
`ters will be most ordinarily reserved for test and control
`register, which can be accomplished from the branch
`30
`purposes. However, it is possible to selectively operate
`address and proper enabling of the latch circuits in a
`the Q register outputs through the Q out control in FIG.
`manner similar to that described for the Q2 latch cir
`5B for direct reading and application from the Q regis
`cuits.
`ters, Microcode memory may provide signals back to
`In an increment mode, each EXCLUSIVE OR gate
`the microcode processor through suitable control logic
`97, 103, 108 and 113 will pass the signal received from
`35
`circuits (not shown) to selectively operate the condi
`the respective latch circuit, or an inversion of it, de
`pending upon the conditions of other signals into the
`tional latch circuit of FIG. 5.
`While the forgoing is merely illustrative of the opera
`respective EXCLUSIVE OR gate. For exmaple, assume
`tion of the microcode program sequencer according to
`latch circuit 78 and 81 (the two least significant bit
`the present inventions, it is evident that many varia
`positions of the P register) each contain a binary 1,
`tions will be evident to those skilled in the art. Thus,
`while latch circuit 75 (the third least significant bit
`direct loading of any of the P, Q1 or Q2 registers may
`position of the P register) contains a binary 0. If the bit
`be accomplished, independantly or simultaniously, by
`positions of the sequencer are the very lowest of any
`proper selection of control signals from the circuits.
`chained arrangement of sequencers (which is presently
`Thus, loading of the Q1, Q2 and P registers from mem
`assumed for purpose of description), conductors DD
`45
`ory is accomplished by control signals over the Z, Y
`will be permanently tied to a source of binary 1 signal.
`and X conductors, respectively, loading incremental
`Prior to the first clock pulse (after the clock pulse
`addresses is accomplished by control signals on the C,
`causing loading of the signals into the P register), the
`D and W conductors, repsectively, latch storing is ac
`signals stored in latch circuits 75, 78 and 81 are trans
`complished by control signals over the A, B and F
`ferred to latch circuits 102, 107 and 112. This transfer
`conductors, respectively, and transfer from one of the
`is accomplished between clock pulse due to the pres
`Q1 and Q2 registers to the P register may be accom
`ence of a binary 1 on the P conductor from the clock
`plished with control signals on one of the S and T con
`(see FIG. 4A). Latch circuits 112 and 107 provide
`ductors, respectively, and on the E conductors.
`binary 1 outputs, while latch circuit 102 provides a
`binary 0 output. As a result, binary 1 signals are pro
`One feature of the invention resides in a conditional
`55
`latch circuit shown in Fl(3, 5, such circuit consists of an
`vided to EXCLUSIVE OR gates 108 and 113 by latch
`OR gate 130 for receiving inputs from AND gates 131,
`circuits 107 and 112. Also, binary 1 signals are pro
`132, 133 and 134. AND gate 135 receives inputs from
`vided on conductors BB, CC and EE. The binary 1
`terminal 136 and from conductor M and provides in
`signal on conductor EE, together with the binary 1
`verted outputs to each of AND gates 131, 132 and 133.
`already on conductor DD, causes EXCLUSIVE OR
`60
`AND gates 131, 132 and 133 receive second inputs
`gate 108 to invert the signal, causing a 0 output on
`from terminals 137, 138 and 139, respectively. AND
`conductor KK. Further, the binary 1 input to gate 113
`gate 135 also provides an output to an input of AND
`will produce an inverted output due to the presence of
`gate 134. OR gate 130 provides an output through drive
`a binary 1 on conductor DD, thereby providing a 0
`circuit 141 to terminal 142 and through drive circuit
`output on conductor LL. Further the binary 1 signals
`143 to an input of EXCLUSIVE OR gate 144 and a
`on both conductors BB and CC together with the bi
`nary 1 on conductor DD operate AND gate 218 to
`second input of AND gate 134. EXCLUSIVE OR
`invert the 0 input from latch circuit 102 in EXCLU
`gate 144 receives a second input from terminal 145 to
`
`40
`
`50
`
`65
`
`Ex.1051.010
`
`DELL
`
`

`

`provide an output to terminal 146.
`The conditional latch circuit illustrated in FIG. 5 is
`conditionally operable as either a latch circuit or an OR
`gate. AND gate 135 receives inverted clock inputs via
`conductor M (see FIG. 4A). Hence, AND gate 135
`normally receives a l input from conductor M, which
`goes to 0 during a clock input.
`If terminal 136 receives a 0 input from microcode
`memory, an inverted (1) output will be impressed on
`the lower inputs of AND gates 131, 132 and 133.
`Hence, if any one of terminals 137, 138 or 139 (or any
`combinati

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket