CA1117192A - Clock system having a dynamically selectable clock period - Google Patents

Clock system having a dynamically selectable clock period

Info

Publication number
CA1117192A
CA1117192A CA000315821A CA315821A CA1117192A CA 1117192 A CA1117192 A CA 1117192A CA 000315821 A CA000315821 A CA 000315821A CA 315821 A CA315821 A CA 315821A CA 1117192 A CA1117192 A CA 1117192A
Authority
CA
Canada
Prior art keywords
state
signal
output
clock
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
CA000315821A
Other languages
French (fr)
Inventor
Philip E. Stanley
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bull HN Information Systems Inc
Original Assignee
Honeywell Information Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honeywell Information Systems Inc filed Critical Honeywell Information Systems Inc
Application granted granted Critical
Publication of CA1117192A publication Critical patent/CA1117192A/en
Expired legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/78Generating a single train of pulses having a predetermined pattern, e.g. a predetermined number
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency

Abstract

ABSTRACT OF THE DISCLOSURE
A clock system for providing rectangular wave forms or wave trains, with each wave train having a selectable predeter-mined clock cycle period. A rectangular wave train is generated by a generator comprising a delay line coupled to an INVERTER.
By using a second delay line to delay the rectangular wave by a selectable predetermined delay period, a control signal is formed which when fed into the generator produces a second rectangular wave train with a clock cycle period equal to that of the rectangular wave clock cycle period plus the period of the second predetermined delay. The addition of a synchronization circuit permits the clock cycle period to be dynamically selected during a clock cycle. This provides a rectangular train with the period of each clock cycle being any of the predetermined clock cycle periods independent of the clock cycle period of preceding or succeeding clock cycles.

Description

1~7~gZ

BACKGROUND OF THE INVENTION
~ . _ ~ . .

The present invention generally relates to data processing systems and more particularly to clock systems utilized in con-trolling the transfer of information in such data processing systems.
In data processing systemsl the transfer of information is typically controlled ~y clock pulses derived from clock cycles generated by a clock system. In a typical clock system, the clock generates a rectangular wave train signal, with the signal being in a high state for a portion of the clock cycle and the signal being in a low state for the remainder of the clock cycle.
In this type of clock system, the clock pulses are generated by detecting the change of signal from the high to low state and/or from the low to high state.
The period of the clock cycle of a data processing system is usually chosen to match the speed of the central processor to the speed of the memory. It 15 not unusual for vendors of data processing systems to offer a selection of memories having different speeds to be used in conjunction with a given central processor model. In these cases" the availability of a clock system with a selectable clock cycle period will allow easy matching of the central processor speed to that of the memory chosen.
In microprogrammed data processing systems, the execution time of the various microoperations will usually vary in accor-dance with the complexity of the microoperation performed. The more complex operations usually re~uiring more time to allow the signals more time to propagate through the increased number of :

~ -2-~17~9Z

logic gates involved. To maximize performance of a micro-programmed data processing system, it is desirable to have a clock cycle period available that matches the time required by each dist~nct microoperation. Although this matching could be accomplished by having multiple~ clock systems, it is much more desirable, because of circuit component expense and synchroniza-tion problems, to have one system from which a variety of predetermined clock cycle periods can be dynamiaally selected.
The selection process should be such that after the microinstruc-tion is read from the microprogram control store, and the particular microoperation to be performed by the microinstruction is determined, the clock cycle period can be adjusted to permit sufficient time, but not excessive time, to complete the particu-lar ~nicrooperation in the process of being executed. The clock cycle period can be implicitly selected by being associated with the microoperation of the microinstruction with the microopexation decoder providing one or more bits used to sel~ct the clock cycle period. In a data processing system that does not overlap the execution of microinstructions, e.g., the next microinstruction being read during the execution of the current microinstruction, it is important tha~ the clock system be such that the clock cycle period selection and generation be done within the selected clock cycle period.
In any clock system, particularly when used in a data processing system, the stability of the clock cycle period is important. That is, it is desirable that the clock cy~le pariod vary as little as possible due to variation in component operating temperature, operating voltage, or the particular component used in fabrication of a particular clock system. ~Each component used 9~

in fabricating a clock system has its own propagation time tolerances Because the summation of the individual propayation time tolerances of each component used in a path of a clock system circuit is used to determine the worst case timing of a clock system, it follows that reducing the number of components in each path will lead to increased clock stability. Stability can also be increased by choosing components which inherently have narrower tolerances than other components. For example, it may be desirable in a cloak system circuit to use a delay line which has a typical propagation time tolerance of plus or minus 5% due to voltage and temperature variations rather than multivibrators or one shots which have looser typical propaga-tion time tolerances. By minimizing the number of components and by using components with inherently narrower tolerances, -~ 15 manufacturing economy can be achieved and the need to indlvid-ually tune each clock system during manufacture can be eliminated.
A clock system in a data processing system is generally inhibited from generating clock pulses when information is not to be strobed into a receiving element, so as to prevent the transfer of erroneous information~or loss of information thereby ; creating an error condition. Accordingly, a stall signal or condition is generated. A typical example of a stall condition may be, ~or example, that condition under which a utilizing ;~ 25 element, such as a central prooessor, i5 waiting for the data processing system's memory to provide information thereto. The receiving element is expecting the information ~rom the memory, a clock pulse is not generated for strobing the information to the receiving element, particularly if there is an indication that the memory will not be providing such information for ~7~g;2 possibly anotherclock cycle. Accordinglv, a stall condition is generated that will stall t:he clock by preventing the clock rectangular wave train signal from changing state, thereby stalling the generation of further clock pulses. By providing a stall high signal that stalis the clock rectangular wave train s:ignal in the high state, the high to low clock pulse can be inhibited. By providing a stall low signal that stalls the clock rectangular wave train signal in the low state, the low to high clock pulse can be inhibited. These stall condi tions however, upon an indication that the information will be presently transferred, will be cleared so as to generate another clock cycle and the pulses derived therefrom. It is important in such clock systems that the clock cycle be able to start up again in a minimum period of time after the removal of the stall condition.

OBJECTS OF THE INVENTION

It is a primary object of the invention therefore to provide an improved means for providing a plurality of selecta~le clock cycle periods.
It is another primary object of the invention to be able to dynamically select the period of the clock cycle, af~er the clock cycle has started.
It is still a further objec~ of the invention to provide a stable clock cycle whose period does not vary unduly with component operating temperature, operating voltage, or choice of the particular components used in the manufacture of the clock system.

~1~7~9Z

It is yet another object of the invention to provide a clock system with the minimum number of components in the circuit path used to generate the shortest clock cycle period.
It is another object of the invention to provide a clock system which is adaptive in design to provide synchronization or start up of a clock cycle in a minimum period o~ time after the removal of a stall high siynal or stall low signal.

SUMMARY OF T~E INVENTION

In accordance with the above and other objectives of the invention, a delay element such as a delay line which has one or more associated delay periods is utilized to generate a control signal having a first state and a second state which is fed back to a controllable rectangular wave train generator.
The delay element is utilized to receive and delay a rectangular wave train produced by the rectangular wave train generator.
The rectangular wave train is comprised of a series of clock cycles composed of a first portion having a first state and a second portion having a second state. A logic circuit is provided which receives the one or more delayed rectangular wave train signals from the delay line and forms the control signal.
The xectangular wave train generator responds to the first state of the control signal by inhibiting generation of the second portion of a clock cycle thereby extending the duration of the preceding first portion of the clock cycle.
The rectangular wave train generatDr responds to the second ~tate of the control signal by enabling generation of the second portion of a clock cycle which has a normal duration.

1~719X

The logic circuit i5 further responsive to cycle select signals which determine which of the one or more delayed rectangular wave train signa;Ls will be used to form the control signal, thus permitting the ~election of the clock cycle period from a set of predetermined clock cycle periods. The addition of a synchronizer circuit al;Lows the cycle select signals to be changed during the generation of a clock cycle thexeby per-mitting the generation of a rectangular wave train with each clock cycle period being dynamically selected after the generation of the clock aycle has started. This dynamic selection capability permits the clock system to generate a rectangular wave train with each clock cycle period being a predetermined period but independent of the period of the preceding or succeeding clock cycleO
The rectangular ~ave train generator includes gate logic which is responsive to a stall low signal having a first state and a second state. This gate logic responds to the first state of the stall low signal by inhibiting the rectangu-lar wave train generator from producing the second state of a ~, .
clock cycle and responsive to the second state of the stall low signal by enabling the rectangular wave train generator to resume generation of the clock cycle in an adaptive manner with only a minimal delay. The rectangular wave train generator includes further gate logic which is responsive to a staIl high signal having a first state and a second state. This further gate logic responds to the first state of the stall high signal by inhibiting the rectangular wave train generator from pro-ducing the first state of a clock cycle and responsive to the second state~of the stall high signal by enabling the rectangular !

~ -7-~L~1719Z

wave tra:ln generator to resume generatlon of the clock cycle in an adaptlve manner with onl.y a mi.nimaL del.ay.
In accordance with the present lnvention there is pro-vided a clock system comprising flrst means having a first con-trol input, a first control output, and a cloc~ output, for generating at said clock output a clock cycle, sald clock cycle having a first portion having a first state and a second porti.on having a second state, said first portion having a duration substantially equal to a first time period and said second por-tion having a duratlon sub.stantially equal to a second timeperiod; second means, included in said first means for generat-ing a :Eirst output signal at said -first control output of said first means, said firs:t output signal having a Eirst state and a second state; third means coupled to said first means for delaying s:aid first output signal by a plurality of predetermined ; time periods to generate a plurality of delayed output signals, - each of said delayed output signals having a first state, a second state, and an associated predetermined time delay period whereby a change in state of said first output signal appears in each of said more delayed firs:t output signala after sub-stantially said associated predetermined delay time period; logic means coupled with said firs:t means and said third means and including gating means- and means coupled thereto for generating a first selection s-ignal to enable said gating means to select one of said delayed first output signals, said logic means fur-ther including means res:ponsive to s-aid first selection signal ~ and said selected one of said delay:ed first output s.ignals for ;~ generating a first control signal, said gating means operating such that said first control signal transitions to its first state before said first output signal transitions to its: s:econd "' ` ' .

~7~2 state and sa:Ld f:1rst contro1 s1gnal remains :Ln said fi.rst state until after said Eirst output signa:L transitions to lts second state for suhstantial].y the associated predetermined delay time period of sald selected delayed Elrst output signal; means included in said first means for generating said clock cycle such that said first time period is substantially equal to said second time period plus the associated predetermined delay time period of said selected delayed first output signal; and fourth means included in said first means for receiv.Lng said Eirst control signal at said first control input of said Eirst means, said Eirst control signal having a first state and a second state, said first state operative to disable said first means from generating said second portion oE said clock cycle and said second state operative to enab.le said first means to generate said second portion of said clock cycle, whereby a change in said first control signal from said first state to said second state enables the generation of said second portion of said clock cycle.
In accordance with the present invention there is also ~ provided a clock system comprising first means, having a first 20 output, a first input, and a clock output, for generating a first signal having a first state and a second state at said first output, said first means for receiving a second signal having a third state and a fourth state at said first input, said first ~; means for generating a clock signal having a fifth state and a sixth state at said clock output, said clock signal producing a series of clock cycles, each of said clock cycles having a first portion, having said fifth state for a duration su~stantially equal to a first time period and having a second portion having said sixth state for a duration substantially equal to a second time period; second means having a second input and a second - 8a -71g~

output, s~lcl seconcl :Lnput coupl.ed to said f.lrst output of sald first means, saicl second means for generating at sald ~econd output one or more delayed first signals in response to said first signal received at said second input, each of said one or more de:Layed Eirst signals having said first state and said second state, each of said one or more delayed first signals having an associated predetermined delay time period; third means having a third input, a third output, and a Pourth input, sald third lnput coupled to said second output of said second means, sald thlrd output coupled to said Eirst input of said first means, and fourth input for receiving a first selectlon signal, said first selection signal when in a predetermined state being operative to select one oE said one or more delayed Eirst signals, said third means including means for generating said second sig-nal at said third output in res-ponse to said selected one of said one or more delayed Eirst signals such that said second signal transitions- to said third state ~efore said first signal transitions from said first state to said second state, said third means including Eurth.er means for enabling said second sign~l to remain in said third state after said first signal transitions to said second state for a time period substantially equal to the associated predetermined delay period of said ~ selected one of said one or more delayed first signals; and : fourth means, included in said~first means, for recelving said second signal at sald flrst input, sald fourth means operative to enable said first means to generate s-aid second portion in response to said fourth.s-tate and to dlsable sald first means to generate sald second portion in response to sald third state, wherehy a change in said s-econd signal from said third state to said fourth state ena~les for generation of said second portion ;

- 8b. -~71~Z

o~ sa-l.d cl.oclc cyc:Les.
In accordclnce w:Lth the present lnvention there ls also providecl a method for generating a elock cyc.le having a time periocl of selectable predetermined duration which comprises generating a rectangular wave traln through use of a generator having a first output, a first input, and a clock output, said first output for transmltting a first signal hav-lng a first state and a seeond state, said first input ~or recelving a seeond signal having a third state and a Eourth state~ said cloek out-put for transmitting a elock signal having a fifth state and asixth state, said eloek signal produeing a series o.~ eloek eyeles each having a ~irst portion and a seeond portion, said Eirst por-tion being in said fifth state for a duration substantially equal to a first time period and said seeond portion being in said seeond state for a duration sub.stantially equal to a seeond time period; delaying said first signal by one or more predetermined delay time periods to produee one or more delayed said first signals; synchronizing the generation of said delayed first sig-nals during eaeh one of said clock eyeles such that eaeh said delayed first signal transitions to a delayed first state, corres-ponding to said first state of said first signal, at a time when ~: said first signal exists in said first state; and feeding a ; seleeted one of said delayed first signals to said first in-put to supply said seeond signal sueh that the delayed first and ~ seeond states of said seleeted delayed first signal correspond : to the fourth:and th.ird states, respectively, of said seeond sig-nal, said third state ~.eing operative to disable said generator from generating said seeond portion and said fourth state being operative to enable said generator to generate said seeond por-tion.

- 8e -~IL17:192 BRIEE DESCRIPTION OF T~IE DRAWINGS
__ ____. _____ Figure 1 is a block diagram of the apparatus oE the present invent:Lon.
Figure 2 ls a diagram of a segment of a clock system genarated rectangular wave train showing the low portion and the high portion o~ a clock cycle.
Figure 3 is a ~.lock diagram of the apparatus oE the present invention showing the addition o~ the select synchronizer element.
Figure 4 is a logic diagram of a preferred embodiment of the present invention.
Figures 5-1 through 5-6 illustrate the logic symbols and associated truth tables for the well known AND, NAND, OR, and NOR logic gates and INVERTER and ~lip-flop logic respectively.
Figures 6-1 through 6-5 include wave trains illustra-tive of the operation of the apparatus of Figure 4 during the generation of the basic, medium-short, medium-long, and long clock cycles respectively.
Figur~s 7-1 includes w-ave trains illustrative of the operation of the apparatus of Figure 4 during a medium-short clock cycle with a stall low condition occurring while the control signal is the low state and continuing until after the control signal is in the high state.

- 8d -.
: ' ' ~3L719Z

Figure 7-2 includes wave trains illustrative of the operation of the apparatus of Figuxe 4 during a medium-short clock cycle with a stall low condition occurring while the control signal is in the highstate and continuing until after the control signal is in the low state.
Figure 8 list the values of the cycle select signals used to select each of the four clock cycle periods.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
. ~

Figure 1 illustrates the apparatus of the present ~; 10 invention. Suchapparatus or clock system is utilized for ;~ generating a rectangular wave train from which clock cycles and clock pulses are derived.
Figure 2 illustrates a rectangular wave train and shows ~; that one clock cycle is composed of a low or first portion having a low or first state and a high or second portion having a high or second state.
In the present invention, a clock cycle generator l, hereafter referred to as generator l, is used to generate a first rectangular wave train which is fed to and delayed by a delay element 40. In the preferred embodiment, delay element 40 may be a delay line. By using the well known technique of tapping a delay line at various distances from its input, one or more delayed rectangular wavP trains are pro~ided by delay element 40 which are fed to clock cycle extender logic 3, hereafter referred to as extender logic 3. Extender logic 3, in response to one or more cycle select signals uses,the one or more delayed rectangular wave trains to form a control !

7~9Z

signal which is output by extender logic 3 to g~nerator 1.
The control signal has a low or first state and a high or . second state.
The output of generator 1 is the clock rectangular wave train, hereater sometimes ref~erred to as the clock train.
Generator 1 is responsive to the control signal provided by extender logic 3 such that when the control signal is in the low state, generator 1 inhibits the clock train from changing from the low to high state and when the contool signal is in the high state, generator 1 enables the clock train to change from the low to the high state or from the high to the low state.
This inhibiting by the low state of the control signal results in the low portion of the clock cycle being e~tended by the difference in time between the time the clock train would, without the presence of the control signal, go to the high state and the time when the control signal goes to the high state. As will be seen below, this extensional time period is determined by selecting the appropriate delay times provided by the various taps of delay element 40. As will also be seen below, the control signal, during each clock cycle, must be in the low state before the clock train would otherwise go to the high state.
Figure 3 further illustrates the apparatus of the present invention by including the addition of select synchronizer element 4. The addition of the select synchronizer element 4 allows the clock cycle period to be dynamically selected during a clock cycle. Select synchronizer element 4 uses a delayed rectangular wave train provided by delay element 40 on line 45 to synchronize the gating of cycle select signals to extender !

;

~:117~L~Z

logic 3. As will be seen below, or the cycle period to be dynamically selected, the cycle select signals must become stable and ~e gated to extender logic 3, during each clock cycle, before the clock train would otherwise go to the high state.
In Figu~es 1, 3, 4, 6, 7 and 8, the symbols Tl through T8 designate the respective times that a signal starting on line 11 at time T0 xequires to reach lines 31, 32, 43, 44, 45, 46, 47 and 38 respectively. For example, a pulse occurring on line 11 at time T0 reaches line 46 at time T6 later.
Fiyures 6-1 through 7-Z illustrate rectangular wave trains designated A throucth J. TrainsA through J are the wave trains that occur on lines 11, 21, 31, 32j 43, 44, 45, 46, 47, and line 38 respective!ly of Figure 4.
The following functional description is restricted to the activity of generator element 1. Figure 4 is a schematic diagram of a preferred embodiment of the present invention.
Figure 4 shows that generator element 1 is composed of NAND
gate 10, ~ND gate 20 and delay element 30 with connecting lines 11, 21, 31 and 32. The clock signal appears on line 31. In this discussion, signals on line~ 61 and 101, the top two ; inputs of AND gate 20, are normally inactive, i.e., high.
; The active use of signals on lines 61 and 101 is described in subsequent paragraphs. The rectangular wave train is generated basically by the use of delay element 30, which is typically in a preferred embodiment a delay line, and the inverting function of N~ND gate 10. Since the two top inputs of ~ND
gate 20 are normally high, the output of AND gate 20 is equal to and is controlled exclusively by the bottom input of AND
gate ~0 which~is coupled to the output of NAND gate 10. ~s `~

,, --11--1~1715a2 indicated by the truth table of Figure 5-1, when the top two inputs of AND gate are high, i.e., a binary ONE, -then the output of the AND gate is equal to and controlled by the bottom input of the AND gate. Therefore, in this case, with the top two inputs of ANG gate 20 normally high, it follows that ~ND gate 20 plays no essential roll in the generation of the rectangular wave train being described.
The use of a delay line and an inverting function is a well known technique by which a change in the level at the output of NAND gate 10 as depicted by wave train A of Figure 6-1 is propagated and thereby produces through the delay line 30 wave train D of Figure 6-1. A clock cycle of the wave train thus produced has a period e~ual to twice the delay of delay element 30, time T2, plus the delay of NAND gate 10 and AND gate 20. It is noted that wave train B and all other wave trains of Figure 6, for the purposes of simplifying discussion relating to the operation of the present invention has been shown as if there are nodelaysassociated with gates 10, 20, 50, 60, 70, 80, 90, 100, and flip-flops 110 and 120 and IN~ERTER 130~ It is noted, however, that the duration of each portion of the rectangular wave trains represented by wave trains A and D would be equal to the delay time of delay element 30 plus the delay produced by NAND gate 10 and AND gate 20 and that wave train A is delayed from the timing of wave train D
by the delay of NAND gate 10 and further that wave train B is delayed from the timing of wave train D by the delay of NAND
gate 10 plus the delay of AND gate 20.
It i~ well knownto tap off from such delay element 30 anywhere from its input thereof to the output thereof in order 9~

to produce a cLock siynal. By way of example, one such tap is shown in the apparatus of Fiyure 4. Such tap is shown at line 31 which results in the clock signal of wave train C having a delay of time Tl from that of wave train B.
E'or illustrative purposes, Figure 4 illustrates the use of two cycle select signals or bits designated CSl and CS2. Cycle selection signals are used to select which of the possible predetermined clock cycle periods are to be generated. Although the number and encoding of the cycle select signals are not important to the present invention, for illustra-tive purposes, the schematic of Figure 4 has two cycle select signals designated CSl and CS2 originating from central processor 5. Figure 4 illustrates the cycle select signals being provided by the decoding of the microinstructions by microprogram controller 6 within the central processor 5. A typical microprogrammed computer :
; or controller is described in U.S. Patent Number 4,003,033, issued January 11, 1977 to David B. O'Keefe et al, entitled "Architecture for a Mlcroprogrammed Device Controller", and need not be further described herein. The cycle select signals are set by microprogram controller 6 to yield the desired clock cycle period. A clock cycle period can either be implicitly selected by being associated with the micro-operation of the microinstruction or the microinstruction can contain a clock selection field of one or more bits in which the clock cycle period is explicitly specified.
Signals CSl and CS2 are blnary encoded thereby allowing the two signals to select one of, for example, four possible predetermined clock cycle periods designated basic, medium-short, medium-long, and long. Figure 8 lists the values of signals CSl and CS2 used to select each of the four clock cycle periods~ It being unders-tood that .~

7~9;2 more or less than said number of clock cycle periods or other select signal encoding schemes may have been used without departing from the scope of the present invention.

BASIC CLOCK CYChE

Referring ~o Figure 8, the basic clock cycle is selected by setting signals CS1 and CS2 high, i.e., a binary ONE. This inhibits the output of delay element 40 by forcing signals on lines 61 and 101 high and conditions the generator 1 for a basic clock cycle. The setting of signal CSl high results in the signal on line 111 going and remaining high and the setting of signal CS2 high results in the signal on line 121 going and remaining high. The manner in which this is accom-plished is discussed below. The setting of the signal on line 121 high, i.e., a binary ONE, produced a low signal, i.e., a binary ZERO, at th~ output of NOR gate B0, see truth table of Figure 5-4,which in turn produces a one at the output of NAND
gate 90. The signal on line 121 being high also produces a one at the output of OR gate 50, see truth table Figure 5-3.
With no stall low in progress,th~ stall low signal at the bottom input of AND gate 100 will be high and therefore all three inputs to AND gate 100 will be high producing a high signal on line 101 which is coupled to the top input of AND
gate 20. The setting of the signal on line 111 high produces a one at the output of OR gate 60 which is line 61, coupled to the middle input ~o AND gate 20. With both the top and middle inputs of AN~ gate 20 high, the output of AND gate 20 is ~on-trolled by and equal to the bottom input of AND gate 20, see .

~1~L7~9~, truth table Figure 5-1. This inhibits the output from delay element 40, i.e., the signals on lines 61 and 101 remain high regardless of any output from delay element 40, and conditions generator 1 for a basic clock cycle.
The completion of a stall high operation results in the stall high signal going and remaining high and with a high signal also present on line 32 the output of NAND gate lO ~oes low as does the output of AND gate 20. The output of NAND gate 10 activates delay element 40 and the output of AND gate 20 activates delay element 30. This conditions delay elements 30 and 40 to generate the basic clock cycle as described in ; subsequent paragraphs.
At time Tl after the output of AND gate 20 goes low, delay element 30 tap at line 31 times out forcing wave train C
low starting the low portion of the basic clock cycle. At time T2 after the output of AND gate 20 goes low, delay element 30 tap at line 32 times out forcing wave train ~ low, and with the stall high signal continuing high, the occurrence of a low signal at the bottom input of NAND gate 10 forces the output from NAND gate lO high and also the output of AND gate 20 high. At time Tl later, dela~ element 30 forces the tap at line 31 to time out forcing wave train C high completing the low portion of a basic clock cycle and starting the high portion of the basic clock cycle as shown in Figure 6 1. At time T2 after the output of AND gate 20 goes high, the tap at line 32 of delay element 30 times out forcing wave train D high.
With a high signal at the bottom input of ~AND gate lO and with the stall high signal remaining high at the top input of NAND
gate lO, the output of NAND gate 10 goes low forcing the output 9z of AN~ gate 20 low. At time Tl later, the output of delay element 30 at line 31 goes low completing the high portion of the current basic clock cycle and starting the low portion of the next clock cycle. The h:Lgh portion of the basic clock cycle has a duration equal to time T2.

MF.DIUM-SHORT CLOCK CYCLE
. .

Again referring to Figure 8, it can be seen that the medium-short clock cycle is selected by setting cycle select signal CSl low and CS2 high. The setting of signal CS1 low results in the output on line lll going and remaining low and the setting of signal CS2 high results in the output on line 121 going and remaining high as will be seen below. As seen above in the discussion of the basic clock cycle, the setting . of the signal on line 121 high in conjunction with the stall low signal being high will result in the output of AND gate 100 always remaining high independent of the signal levels on lines .: ~
44, 45, 46 and 47, which are taps on delay element 40. With signal on line 111 low, the output of OR gate 60 will be con-trolled by and equal to the level of the signal provided by delay element 40 on line 43. It can be seen from Figure 4 that the output of ~ND gate 20 is controlled by the output of delay element 40 on line 43 and the output of NAND gate 10. This setting of CSl low .and CS2 high enables the control signal from delay element 40 on line 43 to expand the duration of the low portion of the clock cycle from time T2 to time T2 plus T3 and to produce a medium-short clock cycle with a high portion duration of time T2 and a low portion with a duration of time T2 plus T3 as will be seen below.

~16-~7~gZ:

The initial activity during the low portion of a medium-short clock cycle is essentially the same as in the . basic clock cycle described ~bove. Completion of a stall high operation drives the output of NAND gate 10 ~nd AND gate 20 low. Note that at this time t`he output of AND gate 20 will go low regardless of the signal level on lines 43 an~l 61 because the bottom input of AND gate 20 is coupled to the output of NAND gate 10. The output of NAND gate 10 activates delay element 40 and the output of AND gate 20 activates delay element 3~. This conditions delay elements 30 and 40 to generate the medium-short clock cycle as described in subse-quent paragraphs.
At time Tl, after the output of NAND gate 10 and AND
gate 20 go low, delay element 30 tap at line 31 times out forcing wave train C low, thereby starting the low portion of the medium-short clock cycle. At time T3 ater the output of NAND gate 10 goes low, delay element 40 tap at line 43 times out ~orcing wave form E lowalong with the output of OR gate 60 on line 61. Figure 4 illustrates that under these conditions, ;~ 20 i.e., signal CSl low, the output of OR gate 60 will continue .
low until time T3 after a high signal appears at the output of NAND gate 10. At time T2 after the output of NAND gate 10 and AND gate 20 go low, delay element 30 tap at line 32 times out forcing wave form D low. With the stall high signal continuing high, the occurrence of a low signal at the bottom input of NAND gate 10 forces the output of NAND gate 10 high.
As stated above, the control signal provided by extender logic 3 must be in the low state before the clock train would otherwise go to the high state. In the case of the medium-short clock cycle, because the control signal is derived solely il~7~

from delay element 40 at line 43, this translates into the requirement that time T3 must be shorter than time T2 . I f this condi~ion is not met, the ou-tput of NAND gate 10 will go high before the top input to AND gate 20 goes low and therefore the low portion of the clock cycle would not be extended by the control signal in the desired manner. Figure 6-2 illus-trates the medium-short clock cycle with time T3 chosen to be two-fifths of time T2, i.e., the requirement that T3 be less than T2 is met and the desired result is achieved in wave train C of Figure 6-2. Figure 6-3 illustrates the medium-short clock cycl~
with time T3 chosen to be seven-fifths of time T2, i.e, the requirement that time T3 be less than time T2 is not met and results in wave train C of Figure 6-3 not being the desired wave train.
Putting aside the simplifying assumption that there is no delay associated with the gates of the present invention, the requirement that the control signal be in the low state before the clock train would otherwise go to the high state for the medium-short clock cycle translates into the requirement that time T3 plus the time of the associated delay of OR gate 60 must be less than time T2 plus the time of the associated delays of AND gate 20 and NAND gate 10. The remainder of this and other clock cycles will be discussed as if there is no delay associated with the gates of the present invention.
The occurrence of the high signal at the output of NAND
gate 10 will not immediately change the OtltpUt of AND gate 20 which will continue low until the high signal from the output of NAND gate 10 propagates through delay element 40 appearing on line 61 at time T3 after first occurring at the bottom input ~711t3Z

of AND gate 20. At time T3 later, ~11 three inputs to AND
gate 20 will be high and the output of AND gate 20 wiL1 go - from the low to the hi.gh state. It will be noted tha-t the output of delay element 30 on line 32 remains low,and there-fore the output of NAND gate 10 remains high, until time T2 after the output of AND gate 20 goes from low to high. Note further that with the signal CSl low and the signal CS2 high, that until the output of delay element 40 on line 43 goes high, the output of AND gate 20 remains low.
With the occurrence of a high signal at the middle input of AND gate 20, at time T3 after the high signal first occurred at the output of NAND gate 10, which is coupled to the hottom input of AND gate 20, the output of AND gate 20 goes high. At time Tl after the output of AND gate 20 goes high, delay element 30 tap at line 31 t.~mes out forcing wave train C
high, starting the high portion of the medium-short clock cycle and completing the low portion wit~ a time of T2 plus T3.
The high signal propagates through ~lelay element 30 and appears at line 32 at time T2 after first appearing at the output of AND gate 20. This high signal at the bottom input of NAND
gate 10 forces the output of NAN~ gate 10 low, which in turn forces the output of AND gate 20 low. This low signal propagates through delay element 30 and forces wave train C low at time Tl later, thereby completing the high portion with a time T2.
The completion of the high portion of the clock cycle completes the medium-short clock cycle and conditions the : apparatus for the next clock cycle.

--19_ 7~Z

MEDIUM-LON(-. CLOCK CYCLE

~gain referring to Figure 8, it can be seen that thc medium long clock cycle is selectecl by set.ting cycle select signal CSl high and signal CS2 low. The setting of CS1 high results in the signal on line 111 going and remaining high and the setting of CS2 low results in the signal on line 121 going and remaining low. The manner in which this i5 accom-plished is discussed below. As seen above in the basic clock cycle, the setting of the signal on line 111 high results in the output of OR gate 60 and therefore the middle input of AND gate 20 remaining high regardless of the signal level on line 43 of delay element 40. Further,the setting of the signal on line 111 high results in the output o~ NOR gate 80 going low which results in the output of NAND gate 90 going high and remaining high regardless of the signal level on lines 46 and 47 from delay element 40. The output of NAND gate 90 remaining high, in conjunction with the stall low signal remaining high, will result in the output of AND gate 100 being ; equal to and controlled by the middle input of AND gate 100 which is coupled to the output of OR gate 50 on line 51.
: Since the top input to OR gate 50 is line 121 which islow, the output of OR gate 50 is equal to and controlled by the bottom lnput which is line 44 of delay element 40. This results in the top input of ~MD gate 20 being controlled by ; 25 and equal to the output of delay element 40 at line 44, the mlddle input of AND gate 20 being high and the bottom input of AND gate 20 being controlled by and equal to the output of NAND gate 10.

1~71~3Z

With these conditions established, the operation of the medium-long clock cycle is analogous to the medium-short clock cycle with the difference being that in the medium-long clock cycle; the top input of AND gate 20 is controlled hy the output of delay element 40 at line 44 and the middle input o AND gate 20 is always h.igh. Whereas .in the medium-short clock cycle, the top input of ~ND gate 20 is always high and the middle input o~ AND gate 2() is controlled by the output of delay element 40 at line 43. As was seen above in the medium-short clock cycle, AND gate 20 is used to control the expansion of the low portion of the clock cycle by inhibiting the input o~ delay element 30 from going high until the high signal has propagated through delay element 40 and into an input of AND gate 20. In the medium-short clock cycle, this propagation requires time T3 and the high signal is fed into the middle input of ~ND gate 20 via OR gate 60. In the case of the medium~long clock cycle, the propagation requires time T4 and the high signal is fed into the top input of ~ND gate 20 via OR gate 50 and AND gate 100.
As stated above, the control signal must be in the low state before the clock train would otherwlse go to the high state. In the medium-short clock cycle above, where the ; control signal was derived solely from one tap at line 43 on delay element 40, it was shown that the requirement was satisfied by requiring that time T3 be less than time T2. In the medium-long clock cycle, where the control signal is derived solely from one tap at line 44 on delay element 40, this requirement is satisfied by requiring that time T4 is less than time T2.
;

As in the case of the medium-short clock cycle, the duration of the high portion of the clock cycle; is controlled by delay element 30, is of du:ration time T2, and is not affected by any of the outputs from delay element 40. llhe completion of the high portion completes the medium-long clock cycle and conditions -the appaxatus for the next clock cycl.e.
As seen above, the selection of the medium-long clock cycle, by setting signal CSl high and signal CS2 low, enables the control signal to expand the duration of the low portion of the clock cycle from time T2 to time T2 plus time T4 and to produce a medium-long clock cycle with a high portion of duration time T2 and a low portion of duration time T2 plus T4.

LONG CLOCK CYCLE

:~ In the previous clock cycles, the requirement that the ; 15 control signal, during each clock cycle, must be in the low state before the clock train would otherwise go to the high state, has been met by requiring that the delay time provided by delay element 40 to the single signal used in forming the control signal be less than the delay timel time T2, of delay element 30 of generator 1. By using an appropriate series of delayed rectangular wave train signals from delay element 40, it is possible to have the longest delayed time of delay element 40 exceed the delay time T2 provided by delay element 30. By way of illustration, in the preferred embodiment, the control signal of the long clock cycle is formed by logically ANDing together the signals on lines 43, 44, 46 and 47. With times T3 less than T4, T4 less than T6, and T6 less than T7, by introducing ~he constraint that the difference in time between time T6 and time T4 and betweerl time T7 and T6 is less than time T2, and retaining the constraints tha1 time T3 and time T4 are less than time T2, the preferred embodiment will generate a control signa:L that goes to the low state at time T3 and remains low until time T7.
The requirement that, once a control signal goes to the low state, the control signal must remain in the low state until the termi.nation of the desired extension period, can be seen by way of example in the case o the medium-short clock ; 10 cycle~ In the medium-short clock cycle, the extension of the low part of the clock cycle is controlled by the middle input of AND gate 20 because the top input of ~ND gate 20 is always high and the bottom input of AND gate 20 goes high in advance : of the middle input. Therefore, the output of AND gate 20 ~ 15 goes high and thereafter the clock train goes high when the :~: middle input of AND gate 20 goes high.
Again referring to Figure 8, it can be seen that the long clock cycle is selected by setting cycle select signals CSl and CS2 low. The setting of CSl low results in the output of line 111 going and remaining low and the setting of CS2 low results in the output of line 121 going and remaining low as will be seen below. The setting of the signal on line 111 low, which is the top input of OR gate 60, results in the output of OR gate 60 being controlled by and equal to the bottom input of OR gate 60 which is an output of delay element 40 on line 43. This results in the middle input of AND gate 20 being contro:Lled by and equal to the output of delay element 40 on line 43. The setting of the signal on line 121 low, which ~'7~

is the top input of OR gate 50, results in the output of OR gate 50 being controlled by and equal to the bottom input of OR gate 50 which is an output of delay element 40 on line 44.
Therefore, the middle input of AND gate 100 is controlled by and equal to the output of delay element 40 on line 44.
With the signals on line 111 and line 112 being low, the output of NOR gate 80 on line 81 will be high~ which being coupled to the bottom input of NAND gate 90, results in the out-put of NAND gate 90 on line 91 being controlled by and the inverse of the ~ignal at the top input o~ NAND gate 90. That is, in the case of the long clock c~cle, NAND gate 90 is acting as an inverter of the output of NAND gate 70 on line 71. It is well known, that the logical equivalent~ of a N~ND gate followed by an INVERTER is an AND gate with the inputs of the NAND gate and the :~; 15 output of the INVERTER. Therefore, in order to simplify ~he discussion of the long clock cycle, the top input of AND gate 100 will be discussed as the logical AND of the signals provided by delay element 40 on lines 46 and 47.
With the stall low signal continuing high, the bottom input of AND gate 100 plays no part in determining the output of AND gate 100. The output of AND gate 100, which is coupled to the top input of AND gate 20, is controlled by and equal to the logical AND of the top input of AND gate 100, which is the : logical AND of the s.ignals on lines 46 and 47, and the middle input of AND gate 100, which is the signal on line 44.
It is well known that the logical equivalents of a series of AND gates coupled so that the outputs of earlier AND gates ~ are inputs to subsequent AND gates is an AND gate having the ;~ inputs not coupled to an earlier AND gate in the series and : !
,~ ;
-2~-~L7~2 the output of last AND ~ate. With the above conditions established, it follows that in the case of the long clock cycle, the control signal is the logical AND o.~ the delayed rectangular wave train signals appearing on lines 43, 44, 46 and 47. This control signal meets the requiremenk that; during each clock cycle, the control signal must be in the low state beore the clock ~rain would otherwise go to the high state, and the control signal must remain in the low state until termination of the desired extension period.
The operation of the long clock cycle is ana].ogous to the operation of the medium-short and medium-long clock cycles discussed above. With the control signal from extender logic 3 going to the low state at time T3 and to the high state at time T7 after the signal on line 11 goes from the high to low state. This control signal results in the low portion of the clock cycle being extended from a duration of time T2 to a duration of time T2 plus T7 and the production of a long clock cycle with a low portion of duration time T2 plus T7 and a high portion of duration time T2.

CYCLE SELECT SYNCHRONIZATION

The preferred embodiment in Figure 4 illustrates the apparatus of the present invention including the select synchronizer element 4. The removal of the components of the select synchronizer element 4 and the application of the cycle select signal CSl directly on line 111 and the cycle select signal CS2 directly on line 121 results in the operation as described above in the basic, medium-short, medium-long, and : -25-~17~gZ

long clock cycles. In this mode of operakion, where the clock cycle period is not selectedctynamically, the cycle selection occurs b~fore the stall high signal goes to the high s~atc and the clock system generates a continuous clock train with the period of each clock cyc].e being that of the selected predetermined clock period.
As described above, to allow the clock cycl. ~eriod to be dynamically selected, the cycle select signals must become stable and be gated to extender logic 3, during each clock cycle, before the clock train would otherwise go to the high state.
In the apparatus illustrated in Figure 4, this requirement is met by tapping delay element 40 at line 45 such that time T5 is less than T2 and feeding the delayed rectangular wave train through an inverter and into the clock inputs of flip-flops llO
and l~0 and the cycle select signals into the data inputs of flip-flops llO and 120. Figure 6-1 illustrates that time T2 provided by delay element 30 determines the duration of the low portion, which determines when the clock train would othex-wise to to the high state/ of the basic clock cycle which has a ..
~;~ 20 low portion of the shortest duration. Therefore, the cycleselect signals must become stable and be gated to extender logic 3 within time T2 of the start of a low portion of the clock cycle.
Select synchronizer eIement 4 operates in t~e ~ollowing manner to permit the dynamic selection of the clock cycle period. Figure 5-6 illustrates that flip-flops gate and hold the input signal of the flip-flop to the output of the flip-flop when the clocking signal goes from the low to the high state. The delayed rectangular wa~e train signal on line 45 !

,: ' 1~17~9:æ

goes from the high to the low state at time T5 after the signal on line 11 goes from t:he high to the low state, There-fore, the output of INVERTER 130 on line 131 goe~ from the low to the high state at time T5 ater the signal on line 11 goes from the high to low state. This clocking signal on line 131 is therefore used to clock the cycle select signals CS1 and CS2 into flip-flops 110 and 120 respectively. It should ~e noted that cycle select signals CSl and CS2 must become stable on the inputs to flip-~lops 110 and 120 before the occurrence of the clocking signal at time T5 after the start of the low portion of the clock cycle. As long as this condition is met, the cycle select s~gnal will be gated onto lines 111 and 121 at time T5 after the start of the low portion of a clock cycle.
~: ~ }5 As seen a~ove, in the earlier discussion of the clock ::
cycles, the control signal of extender logic 3 appears on lines 61 and 101 which are coupled to the middle and top inputs to AND gate 20. During the initial portion of the low poxtion of a clock cycle, the signal on the bottom input of AND gate 20 on line ll is low and the output of AND gate 20 on line 21 is therefore low. Plgure 5-1 illus~rates that the occurrence of a single low signal at any input of an AND gate results in the output of the AND gate being a low signal. Therefore, during this initial portion of a low portion of the clock cycle, the .~ ~
state of the top two inputs of AND gate 20 will not affect the output of AND gate 20 which is low. ThereforP, as long as the control signal on the top and middle inputs of AND gate 20 become stable before the bottor,l input of AND gate 20 goes high, the apparatus will operate in the desired manner and permit the :

~ ' ' dynamic selection of the clock cycle periods. The signal on line 11 will go high at time T2 after initially going from the high to low state, the control signal on top and middle input of AND gate 20 will become stable at time T5 after the signal on line 11 goes from the high to low state, and since time T5 is less than time T2 the above condition is met.
Therefore, the addition of select synchronizer element 4 permits the clock cycle period to be dynamically selected after the clock cycle has started.
The preferred embodiment in Figure 4 illustrates th~t the clocking signal of flip-flops 110 and 120 is derived by inverting the signal on line 45 which is a tap on delay element 40. Alternatively, a clocking signal can be deri~ed by coupling line 38, a tap on delay element 30, to the input of INVERTER
130 in place of line 45 as shown in Figure 4. For this sub-stitution of line 38 for line 45 on the input of INVERTER 130 to operate properly, time T8 must be less than time T2 in an analogous manner to meet the requirement that when line 45 is used that time T5 must be less than time T2. The validity of this substitution follows from the fact that the signal on the input of the flip-flop is gated to the output of the flip-flop when the clocking signal goes from the low to high state.
When line 45 is used, this low to high state change on line 131 occurs when the signal on line 45 goes from the high to low ~ 25 state. When line 38 is used, this low to high state change `~ on line 131 occurs when the signal on line 38 goes from the` high to low state which occurs at time T8 after the signal on line 11 goes fr~m the high to the low state.

~719Z

; Figure 6-4 demonstrates that in all cases wave train G, the signal occurring on line 45, is the same as wave train A, ` the signal occurring on line 11, delayed by time T5. Wave train J, the signal appearing on line 38, is that of wave train B, the signal appearing on line 21, delayed by time T8.
Figure 6-4 further illustrates that in each instance that the signal of wave train A goes from the high to the low state, the signal of wave train B simultaneously goes from the high to the low state. Therefore, since it is this high to low state change in the signal level that is delayed and used as input to INVERTER 130 to orm the flip-flop clocking signal, it follows that the delayed rectangular waveform used as the input for INVERTER 130 can be obtained from either delay element 40 or delay element 30.

STALL CONDITIONS

Figure 7-1 illustates the wave trains resulting from a stall low condition occurring when the control signal, wave train E, is in the low state and continuing until after the control signal goes to the high state. The stall low condition is indicated by the signal on the stall low line going from the high state to the low state. The stall low condition con-::
tinues until the signal on the stall low line goes from the low state to the high state. Referring to Figure 7-1, it can be seen that the low portion of the clock train, wave train C, is extended by the time that the stall low signal is in the low state past that point in time that the control signal, wave train E, goes from the low to high stateO That is, in Pigure 7-1, the low portion of the first clock cycle has been extended 11~'7~9~

by a ~ime equal to the amount of ~ime that the stall low signal i5 in the stall condition, i.e., in the low state, after the control signal has gone high.
Again referring toFigure 7~1, it can be seen that the clock train recovers from the removal of the stall low condition in a minimal amount of time. In the preferred embodiment, the recovery time of the clock train is equal to time Tl which ; i9 primarily a functlon of where the clock train signal is tapped from delay element 30. It should also be noted that oncethe clock system recovers, it continues its normal operation until the occurrence of a subsequent stall condition.
Figure 7-2 illustrates a second case of the stall low condition. In Figure 7-2, the stall low condition initially occurs when the control signal, waveform E, is in the high ~15 state and the stall low condition terminates when the control signal is in the low state. Referring to Figure 7-2, it can be seen that with these conditions esta~lished, the stall low condition will shorten the high portion of the clock cycle.
It can also be seen that, the removal of the stall condition while the control signal is in the low state results in the low portion of the clock cycle having a normal duration.
By combining the results shown in Figures 7-1 and 7-2, it can be seen that if a stall low condition is initiated while the control signal is in the low state and removed while the control signal is still in the low state that the clock train, wave train C, is not affected by the occurrence of the stall low condition. This can be further seen by referring to Figure 4. As seen above in the case of the medium-short clock cycle, the control signal is wave train E occurring on line 43 which is connected via OR gate 60 to the middle input of AND gate 20. If the control signal i8 in the low state, the output of AND gate 20 will be low. I~ a stall condition occurs while wave train E i5 low, the output of AND gate 20 will not change and will continue low. If the stall condition is removed by the stall low signal going from ; the low state to the high state, the output of AND gate 100 which is coupled to the top input o~ AND gate 20 will change from the low state to the high state and the output o AND
gate 20 will then again be e*clusively controlled by the signal on line 43, wave train E, and the output of NAND gate 10.
From these conditions, it can be seen that the appearance and subsequent disappearance of the stall low condition while wave train E is in the low state will not affect the output of AND
lS gate 20 and therefore the clock train will not be affected by the appearance and disappearance of the stall low condition under these circumstances.
The response of the clock system to a stall high con-~ dition is analogous to the response to the stall low condition.;~ 20 If the stall hig~ signal goes low while wave train D is low and remains low after wave train D goes high, wave train A
remains high until the stall high signal goes high, i.e., the clock train is stalled in the high state. If the stall high signal goes low while wave train D is low and returns high 25~ while wave train D is still low, the appearance and disappearance of the stall high condition will not be seen in the clock wave train. The effect on the clock wave train of the stall high signal golng low while wave train D is high is a function of the clock cycle period selected and the length of time which , Z

the stall high slgnal remains low. Under these condi.tions, if the stall high signal remains low longer than the delay period selected by the cycle select signals, the clock train will go from the low to high state. The clock wave train will s remain high in response to the stall high signal being low for a period of time equal to the time that the stall high siynal is low in excess of the selected delay period provided by extender logic 3.
As seen above, the shortest cycle period is the basic cycle. The discussion above further shows the only active elements in the circuit path of the basic clock cycle are NAND gate 10, ~ND gate 20, and delay element 30. The remainder of the elements in Figure 4 contribute only to setting the top and middle inputs of AND gate 20 high before the completion ~` ~ 15 of the low portion of the cycle, i.e., within time T2 of the start of the low portion, and do not play an active roll in ` ~ determining the timing of the basic clock cycle. Therefore, the clock system has a minimum number of components in the circuit path used to generate the shortest cycle period.
In all of the above discussion of the various clock cycles, the clock train has been-discussed as being the signal occurring at the tap of delay element 30 at line 31. Because no constraints have been placed upon time Tl, the clock train can in fact be derived from a signal taken directly from the output of AND gate 20 or any tap of delay element 30. There is no restriction that time Tl be less than or equal to or greater than time T2. AS seen above, time Tl simply determines the ` speed of recovery of the clock system from the removal of either the stall high or stall low conditions.

~' ~1719Z

It is understood that the circuit illustrated in Figure 4 can be composed of o-ther logic elements, in particular, the use of other logic elements having more inputs would reduce the number of elements and that a single delay element may be replaced by a plurality of delay elements connected serially, and that such alternatives could have been used without departing rom the:scope of the present invention.
What is alaimed is:
.
' '~

~: :
. ~

' ~ ~
, .~

. .
,~ , . ,

Claims (17)

THE EMBODIMENTS OF THE INVENTION IN WHICH AN EXCLUSIVE
PROPERTY OR PRIVILEGE IS CLAIMED ARE DEFINED AS FOLLOWS:
1. A clock system comprising:
(a) first means having a first control input, a first control output, and a clock output for generating at said clock output a clock cycle, said clock cycle having a first portion having a first state and a second portion having a second state, said first portion having a duration substantially equal to a first time period and said second portion having a duration substantially equal to a second time period;
(b) second means, included in swilled first means for generating a first output signal at said first control output of said first means, said first output signal having a first state and a second state;
(c) third means coupled to said first means for delay-ing said first output signal by a plurality of predetermined time periods to generate a plurality of delayed output signals, each of said delayed output signals having a first state, a second state and an associated predetermined time delay period whereby a change in state of said first output signal appears in each of said more delayed first output signals after substantial-ly said associated predetermined delay time period;
(d) logic means coupled with said first means and said third means and including gating means and means coupled thereto for generating a first selection signal to enable said gating means to select one of said delayed first output signals, said logic means further including means responsive to said first selection signal and said selected one of said delayed first output signals for generating a first control signal, said gating means operating such that said first control signal transitions to its first state before said first output signal transitions to its second state and said first control signal remains in said first state until after said first output signal transi-tions to it's second state for substantially the associated predetermined delay time period of said selected delayed first ouput signal;
(e) means included in said first means for generating said clock cycle such that said first time period is substan-tially equal to said second time period plus the associated predetermined delay time period of said selected delayed first output signal; and (f) fourth means included in said first means for receiving said first control signal at said first control input of said first means, said first control signal having a first state and a second state, said first state operative to disable said first means from generating said second portion of said clock cycle and said second state operative to enable said first means to generate said second portion of said clock cycle, whereby a change in said first control signal from said first state to said second state enables the generation of said second portion of said clock cycle.
2. A system as in claim 1 further comprising sixth means, coupled to said logic means, for supplying thereto a second selection signal and a synchronization signal for controlling the generation of said first selection signal, said synchroni-zation signal having a first state and a second state, said second selection signal being received before said synchroni-zation signal transitions from its said second state to said first state, during each of said clock cycles, said synchroni-zation signal transitioning from said first state to said second state after said first output signal transitions from said first state to said second state but before said first output signal transitions from said second state to said first state, whereby said first selection signal is generated such that said duration of said first portion of said clock cycle can be dynamically selected during said first portion of said clock cycle.
3. A clock system comprising:
(a) first means having a first output, a first input, and a clock output, for generating a first signal having a first state and a second state at said first output, said first means for receiving a second signal having a third state and a fourth state at said first input, said first means for generating a clock signal having a fifth state and a sixth state at said clock output, said clock signal producing a series of clock cycles, each of said clock cycles having a first portion, having said fifth state for a duration substantially equal to a first time period and having a second portion having said sixth state for a duration substantially equal to a second time period;
(b) second means having a second input and a second output, said second input coupled to said first output of said first means, said second means for generating at said second output one or more delayed first signals in response to said first signal received at said second input, each of said one or more delayed first signals having said first state and said second state, each of said one or more delayed first signals having an associated predetermined delay time period;
(c) third means having a third input, a third output, and a fourth input, said third input coupled to said second output of said second means, said third output coupled to said first input of said first means, and fourth input for receiving a first selection signal, said first selection signal when in a predetermined state being operative to select one of said one or more delayed first signals, said third means including means for generating said second signal at said third output in response to said selected one of said one or more delayed first signals such that said second signal transitions to said third state before said first signal transitions from said first state to said second state, said third means including further means for enabling said second signal to remain in said third state after said first signal transitions to said second state for a time period substantially equal to the associated predetermined delay period of said selected one of said one or more delayed first signals; and (d) fourth means, included in said first means, for receiving said second signal at said first input, said fourth means operative to enable said first means to generate said second portion in response to said fourth state and to disable said first means to generate said second portion in response to said third state, whereby a change in said second signal from said third state to said fourth state enables for generation of said second portion of said clock cycles.
4. A system as in claim 3 wherein said first means further includes a means for generating a clock cycle having a first portion of a duration substantially equal to said first time period plus the associated predetermined delay time period of said selected one of said delayed first signals and a second portion of a duration substantially equal to said second time period.
5. A system as in claim 4 further comprising fifth means having a fifth input, a fifth output, and a sixth input, said fifth output coupled to said fourth input, said sixth input for receiving a synchronization signal having a fifth state and a sixth state, said fifth means for generating said first selection signal at said fifth output in response to a second selection signal received at said fifth output and in response to said synchronization signal.
6. A system as in claim 5 wherein said fifth means further includes a means for generating said first select signal during each of said clock cycles before said first signal transitions from said first state to said second state in response to receiving said second selection signal at said fifth input before said synchronization signal transitions from said sixth state to said fifth state, whereby said duration of said first portion can be dynamically selected during each clock cycle independently of said duration of said first portion of a pre-ceding or succeeding one of said clock cycles.
7. A system as in claim 6 wherein said second means further includes a means for generating said synchronization signal at a seventh output, said seventh output of said second means coupled to said sixth input, said synchronization signal, during each of said clock cycles, transitioning from said sixth state to said fifth state after said first signal transitions from said second state to said first state, but before said first signal transitions from said first state to said second state.
8. A system as in claim 7 wherein said third means further includes a means for recovering a stall low signal at a ninth input of said third means, said stall low signal having a seventh state and an eighth state, such seventh state opera-tive to inhibit said third means from generating said fourth state of said second signal and said eighth state operating to enable said third means to generate said fourth state of said second signal.
9. A system as in claim 8 wherein said first means further includes a means for receiving a stall high signal at a tenth input of said first means, said stall high signal having a ninth state and a tenth state, said ninth state operative to inhibit said first means from generating said first state of said first signal, said tenth state operative to enable said first means to generate said first state of said first signal.
10. A system as in claim 6 wherein said first means further includes a means for generating said synchronization signal at an eighth output of said first means, said eighth output coupled to said sixth input, said synchronization signal, during each of said clock cycles, transitioning from said sixth state to said fifth state after said first signal transitions from said second state to said first state, but before said first signal transi-tions from said first state to said second state.
11. A system as in claim 10 wherein said third means further includes a means for receiving a stall low signal at a ninth input of said third means, said stall low signal having a seventh state and an eighth state, such seventh state opera-tive to inhibit said third means from generating said fourth state of said second signal and said eighth state operating to enable said third means to generate said fourth state of said second signal.
12. A system as in claim 11 wherein said firs means further includes a means for receiving a stall high signal at a tenth input of said first means, said stall high signal having a ninth state and a tenth state, said ninth state operative to inhibit said first means from generating said first state of said first signal, said tenth state operative to enable said first means to generate said first state of said first signal.
13. A system as in claim 3 wherein said second means is a delay line.
14. A system as in claim 3 wherein said third means comprises logic gates for logically ANDing together said one or more of said delayed first signals.
15. A system as in claim 14 wherein said fifth means comprises one or more flip-flops having data inputs, a clock input and a data output, each of said data inputs for receiving one of a series of signals comprising said second selection signal, each of said data outputs for transmitting one of series of signals comprising said first selection signal, each of said one or more flip-flops for gating and holding at signal at said data input onto said data output in response to a change in state of said synchronization signal at said clock input.
16. A system as in claim 15 wherein said first means is a square wave generator comprising an inverting element and a delay line.
17. A method for generating a clock cycle having a time period of selectable predetermined duration which comprises:
(a) generating a rectangular wave train through use of a generator having a first output, a first input, and a clock output, said first output for transmitting a first signal having a first state and a second state, said first input for receiving a second signal having a third state and a fourth state, said clock output for transmitting a clock signal having a fifth state and a sixth state, said clock signal producing a series of clock cycles each having a first portion and a second portion, said first portion being in said fifth state for a duration sub-stantially equal to a first time period and said second por-tion being in said second state for a duration substantially equal to a second time period;
(b) delaying said first signal by one or more pre-determined delay time periods to produce one or more delayed said first signals;
(c) synchronizing the generation of said delayed first signals during each one of said clock cycles such that each said delayed first signal transitions to a delayed first state, corresponding to said first state of said first signal, at a time when said first signal exists in said first state;
and (d) feeding a selected one of said delayed first signals to said first input to supply said second signal such that the delayed first and second states of said selected delayed first signal correspond to the fourth and third states, respectively, of said second signal, said third state being operative to disable said generator from generating said second portion and said fourth state being operative to enable said generator to generate said second portion.
CA000315821A 1977-11-23 1978-11-06 Clock system having a dynamically selectable clock period Expired CA1117192A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US05/854,301 US4241418A (en) 1977-11-23 1977-11-23 Clock system having a dynamically selectable clock period
US854,301 1977-11-23

Publications (1)

Publication Number Publication Date
CA1117192A true CA1117192A (en) 1982-01-26

Family

ID=25318299

Family Applications (1)

Application Number Title Priority Date Filing Date
CA000315821A Expired CA1117192A (en) 1977-11-23 1978-11-06 Clock system having a dynamically selectable clock period

Country Status (5)

Country Link
US (1) US4241418A (en)
JP (1) JPS6037921B2 (en)
AU (1) AU530610B2 (en)
CA (1) CA1117192A (en)
YU (1) YU39511B (en)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2853523C2 (en) * 1978-12-12 1981-10-01 Ibm Deutschland Gmbh, 7000 Stuttgart Decentralized generation of clock control signals
FR2465269B1 (en) * 1979-09-12 1985-12-27 Cii Honeywell Bull ASYNCHRONOUS REQUEST SELECTOR IN AN INFORMATION PROCESSING SYSTEM
JPS6218709Y2 (en) * 1980-05-28 1987-05-13
US4458308A (en) * 1980-10-06 1984-07-03 Honeywell Information Systems Inc. Microprocessor controlled communications controller having a stretched clock cycle
US4355283A (en) * 1980-11-28 1982-10-19 Rca Corporation Circuit and method for duty cycle control
US4467412A (en) * 1981-05-18 1984-08-21 Atari, Inc. Slave processor with clock controlled by internal ROM & master processor
US4379265A (en) * 1981-05-26 1983-04-05 Burroughs Corporation Dual clocking time delay generation circuit
JPS5881334A (en) * 1981-11-11 1983-05-16 Hitachi Ltd Complementary transistor circuit and information processor using it
US4479216A (en) * 1982-12-22 1984-10-23 At&T Bell Laboratories Skew-free clock circuit for integrated circuit chip
GB2138230B (en) * 1983-04-12 1986-12-03 Sony Corp Dynamic random access memory arrangements
WO1984004184A1 (en) * 1983-04-14 1984-10-25 Convergent Technologies Inc Clock stretching circuitry
US4578774A (en) * 1983-07-18 1986-03-25 Pitney Bowes Inc. System for limiting access to non-volatile memory in electronic postage meters
US4725944A (en) * 1983-11-14 1988-02-16 Tandem Computers Incorporated Electronic communication clocking mechanism
US4819164A (en) * 1983-12-12 1989-04-04 Texas Instruments Incorporated Variable frequency microprocessor clock generator
JPS60154709A (en) * 1984-01-25 1985-08-14 Toshiba Corp Clock signal generating circuit
US4670837A (en) * 1984-06-25 1987-06-02 American Telephone And Telegraph Company Electrical system having variable-frequency clock
US4691331A (en) * 1984-10-29 1987-09-01 American Telephone And Telegraph Company, At&T Bell Laboratories Self-correcting frequency dividers
US4802120A (en) * 1984-10-30 1989-01-31 Tandy Corporation Multistage timing circuit for system bus control
EP0185779B1 (en) * 1984-12-21 1990-02-28 International Business Machines Corporation Digital phase locked loop
US4604582A (en) * 1985-01-04 1986-08-05 Lockheed Electronics Company, Inc. Digital phase correlator
US4669042A (en) * 1985-07-10 1987-05-26 The United States Of America As Represented By The Secretary Of The Air Force Stepless pulse count switching
US4714924A (en) * 1985-12-30 1987-12-22 Eta Systems, Inc. Electronic clock tuning system
US4868739A (en) * 1986-05-05 1989-09-19 International Business Machines Corporation Fixed clock rate vector processor having exclusive time cycle control programmable into each microword
JPH046261Y2 (en) * 1986-05-26 1992-02-20
US4769558A (en) * 1986-07-09 1988-09-06 Eta Systems, Inc. Integrated circuit clock bus layout delay system
US4835728A (en) * 1986-08-13 1989-05-30 Amdahl Corporation Deterministic clock control apparatus for a data processing system
GB2196450B (en) * 1986-10-20 1991-02-13 Mars Inc Data-storing tokens
JPS63131616A (en) * 1986-11-20 1988-06-03 Mitsubishi Electric Corp Programmable clock frequency divider
JPS63285548A (en) * 1987-05-18 1988-11-22 Fuji Photo Film Co Ltd Processing method for silver halide color photographic sensitive material
US5151986A (en) * 1987-08-27 1992-09-29 Motorola, Inc. Microcomputer with on-board chip selects and programmable bus stretching
JPH01122621U (en) * 1988-02-15 1989-08-21
US4857868A (en) * 1988-03-30 1989-08-15 Rockwell International Corporation Data driven clock generator
US4888729A (en) * 1988-05-06 1989-12-19 Rockwell International Corporation Digitally controlled oscillator apparatus
US5062041A (en) * 1988-12-29 1991-10-29 Wang Laboratories, Inc. Processor/coprocessor interface apparatus including microinstruction clock synchronization
US5065041A (en) * 1989-01-05 1991-11-12 Bull Hn Information Systems Inc. Timing generator module
US4931986A (en) * 1989-03-03 1990-06-05 Ncr Corporation Computer system clock generator for generating tuned multiple clock signals
US5210846B1 (en) * 1989-05-15 1999-06-29 Dallas Semiconductor One-wire bus architecture
WO1990014626A1 (en) * 1989-05-15 1990-11-29 Dallas Semiconductor Corporation Systems with data-token/one-wire-bus
US5235698A (en) * 1989-09-12 1993-08-10 Acer Incorporated Bus interface synchronization control system
US4970418A (en) * 1989-09-26 1990-11-13 Apple Computer, Inc. Programmable memory state machine for providing variable clocking to a multimode memory
US5015871A (en) * 1989-11-03 1991-05-14 Harris Corporation Multiple external asynchronous triggers circuit
GB9014811D0 (en) * 1990-07-04 1990-08-22 Pgc Limited Computer
US5261081A (en) * 1990-07-26 1993-11-09 Ncr Corporation Sequence control apparatus for producing output signals in synchronous with a consistent delay from rising or falling edge of clock input signal
JPH04116424U (en) * 1991-03-28 1992-10-19 三菱マテリアル株式会社 composite noise filter
JPH081481U (en) * 1996-01-26 1996-10-11 太陽誘電株式会社 Chip type noise filter
DE19926075A1 (en) * 1999-06-08 2000-12-14 Endress Hauser Gmbh Co Procedure for the temporal coordination of the sending of data on a bus
ES2159245B1 (en) * 1999-07-23 2002-04-01 Univ Catalunya Politecnica MULTIPLE AND ADJUSTABLE DELAY LINE FOR ELECTRONIC SYSTEMS.
US6691301B2 (en) * 2001-01-29 2004-02-10 Celoxica Ltd. System, method and article of manufacture for signal constructs in a programming language capable of programming hardware architectures
US7237216B2 (en) * 2003-02-21 2007-06-26 Infineon Technologies Ag Clock gating approach to accommodate infrequent additional processing latencies
US7849349B2 (en) * 2007-03-28 2010-12-07 Qimonda Ag Reduced-delay clocked logic
WO2010007471A1 (en) * 2008-07-17 2010-01-21 Freescale Semiconductor, Inc. Semiconductor device, wireless communication device and method for generating a synthesized frequency signal

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3343136A (en) * 1964-08-17 1967-09-19 Bunker Ramo Data processing timing apparatus
US3418498A (en) * 1965-10-29 1968-12-24 Westinghouse Electric Corp Delay line timing circuit for use with computer or other timed operation devices
US3543295A (en) * 1968-04-22 1970-11-24 Bell Telephone Labor Inc Circuits for changing pulse train repetition rates
US3594733A (en) * 1969-02-24 1971-07-20 Gen Electric Digital pulse stretcher
US3593158A (en) * 1969-06-04 1971-07-13 Control Data Corp Variable frequency pulse generator
US3624519A (en) * 1969-11-10 1971-11-30 Westinghouse Electric Corp Tapped delay line timing circuit
US3775696A (en) * 1971-11-18 1973-11-27 Texas Instruments Inc Synchronous digital system having a multispeed logic clock oscillator
NL7207216A (en) * 1972-05-27 1973-11-29
US4050096A (en) * 1974-10-30 1977-09-20 Motorola, Inc. Pulse expanding system for microprocessor systems with slow memory
US4040021A (en) * 1975-10-30 1977-08-02 Bell Telephone Laboratories, Incorporated Circuit for increasing the apparent occupancy of a processor
US3993957A (en) * 1976-03-08 1976-11-23 International Business Machines Corporation Clock converter circuit
US4134073A (en) * 1976-07-12 1979-01-09 Honeywell Information Systems Inc. Clock system having adaptive synchronization feature
US4105978A (en) * 1976-08-02 1978-08-08 Honeywell Information Systems Inc. Stretch and stall clock

Also Published As

Publication number Publication date
AU530610B2 (en) 1983-07-21
AU4161078A (en) 1979-05-31
JPS5482139A (en) 1979-06-30
YU39511B (en) 1984-12-31
JPS6037921B2 (en) 1985-08-29
YU271978A (en) 1982-06-30
US4241418A (en) 1980-12-23

Similar Documents

Publication Publication Date Title
CA1117192A (en) Clock system having a dynamically selectable clock period
US5140680A (en) Method and apparatus for self-timed digital data transfer and bus arbitration
AU644901B2 (en) Synchronous processor unit with interconnected, separately clocked processor buses
US4973860A (en) Circuit for synchronizing an asynchronous input signal to a high frequency clock
US4816700A (en) Two-phase non-overlapping clock generator
CA1095629A (en) Clock system having adaptive synchonrization feature
US5408641A (en) Programmable data transfer timing
JP2001237693A (en) Fixed delay loop
US20040246810A1 (en) Apparatus and method for reducing power consumption by a data synchronizer
US5687134A (en) Synchronous semiconductor memory capable of saving a latency with a reduced circuit scale
US4843263A (en) Clock timing controller for a plurality of LSI chips
US5117443A (en) Method and apparatus for operating at fractional speeds in synchronous systems
EP0235303A4 (en) System for adjusting clock phase.
US4914325A (en) Synchronizing circuit
GB2321351A (en) Data transfer across clock domains
US4820992A (en) Clock signal multiplexers
CA2116825C (en) Clocking unit for digital data processing
JPS6388926A (en) Clock device
US5414745A (en) Synchronized clocking disable and enable circuit
US5568100A (en) Synchronous power down clock oscillator device
US6928574B1 (en) System and method for transferring data from a lower frequency clock domain to a higher frequency clock domain
US4951301A (en) TTL technology digital timing unit
US4955040A (en) Method and apparatus for generating a correction signal in a digital clock recovery device
US6931562B1 (en) System and method for transferring data from a higher frequency clock domain to a lower frequency clock domain
EP0209313A2 (en) Clock synchronization circuit for a timer

Legal Events

Date Code Title Description
MKEX Expiry