Microprocessor having dual frequency clock
The invention herein described was made in the course of, or under a contract or subcontract thereunder, with the Department of Defense. 
    
    
     BACKGROUND OF THE INVENTION 
     This invention relates generally to microcomputers and more particularly to microcomputers adapted for use with small munitions. 
     As is known in the art, a mine is a tractical device used to deny enemy access to a specific area. A wide variety of mines have been developed (e.g., anti-shipping, anti-tank, anti-personnel), each with its own processing technique to determine whether such mine should be detonated. One particular class of mine is the scatterable land mine which must be capable of self-destruction after a specific, predetermined time interval in order to clear the mine field for access by friendly forces. The need to process information from various sensors (e.g., magnetometers, seismometer, trip wires and disturbance switches), in addition to basic timing functions, has led to the development of a variety of custom LSI digital controllers. Since these custom LSI digital controllers are not programmable, expensive chip mask redesigns are required to change the desired processing, for example, where it is desired to change the predetermined time when the mine is to self-destruct or where it is desired to control different types of mines. 
     It has been suggested to use programmable microcomputers for mines of the types discussed above. With such microcomputer a programmable read-only memory (PROM) would be programmed in accordance with the timing and process requirements for the particular mine application. This would, because of the inherent flexibility of the processing, offer the capability of easily personalizing the PROM at the time of manufacture. The same microprocessor could be used for a wide variety of mines with the PROM being programmed for the specific mine application. This would avoid the need to wait, and pay, for a redesign, order different parts or alter the mine assembly process. 
     While the use of programmable microprocessors therefore offers a potential advantage over the customary LSI digital controller, an additional requirement for use of such a microcomputer in a mine application is that it have minimum power requirements. 
     SUMMARY OF THE INVENTION 
     With this background of the invention in mind it is therefore an object of this invention to provide a microcomputer for use with tactical munitions. 
     It is another object of this invention to provide a microcomputer which operates with minimum power when used with such tactical munitions. 
     These and other objects of the invention are attained generally by providing a microcomputer having a microprocessor operative in response to a dual frequency clock, such microprocessor being adapted to read data stored in a programmable memory in response to address and read enable signals supplied to a programmable memory and being adapted to process such data in response to the clock pulses supplied by the dual frequency clock. In a mine application the dual frequency clock produces clock pulses at a relatively low rate until such time as either: (a) a sensing device is activated; or (b), a time duration has passed in which case the mine is to self-destruct. When the sensor is activated the microprocessor commands the dual frequency clock to produce relatively high frequency clock pulses to enable the microprocessor to rapidly determine whether the mine should or should not be detonated. With such arrangement relatively low power is consumed by the microcomputer during the period of time the processor is &#34;counting time&#34; and computing whether the predetermined period of time has arrived, i.e., whether the time for &#34;self destruction&#34; has arrived. If, however, the sensor detects a potential enemy object, relatively rapid computation occurs in response to the relatively high frequency clock pulses to determine whether the mine should be detonated, for example, whether the sensor detects an object for a long enough time duration to indicate the presence of a &#34;true&#34; object rather than the presence of a &#34;false&#34; object. The computation of this time duration must be performed at a rapid rate so that such computation is made before a &#34;true&#34; object leaves the kill area of the mine. 
     The read enable signal to the program memory must be activated for a sufficient period of time to allow data read from the program memory to be accepted by the microprocessor even when the microprocessor is operating at a relatively high rate required during the object&#39;s identification processing period. The read enable signal time duration is generally a fixed number of clock pulses. During the period of time that the program memory is read enabled it consumes relatively high power. While the read enable signal generated by the microprocessor is sufficiently short when the microprocessor is responding to the high frequency clock pulses, when the processor is responding to the low frequency clock pulses the microprocessor&#39;s read enable signal time period is excessively long so that use of such signal would result in a substantial amount of unnecessary power consumption by the program memory. In order to reduce this power consumption a means, triggered by a pulse produced by the microprocessor, is provided to generate a read enable pulse having a shorter time duration than the triggering pulse. While the time duration of the triggering pulse is dependent on the frequency of the clock pulses, the time duration of the generated read enable pulse is independent of the frequency of the clock pulses. This generated read enable pulse is used to read enable the program memory, reducing the time such memory is read enabled and thereby reducing the power requirements of the microcomputer. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     Other features and many of the attendant advantages of the invention will be readily appreciated as the same becomes better understood by reference to the following detailed description when considered in connection with the accompanying drawings, in which: 
     FIG. 1 is a block diagram of a microcomputer adapted to control the activation of a land mine either at a predetermined time or in response to a suitable signal produced by a sensor; 
     FIG. 2 is a flow diagram representative of macroinstructions stored in the program memory of the microcomputer of FIG. 1 for enabling such microcomputer to activate a land mine when a proper signal is produced by a sensor indicating the presence of a tank and for enabling such microcomputer to produce a self-destruct signal to activate the land mine after a predetermined interval of time; 
     FIG. 3A-3H are timing diagrams useful in understanding the operation of the microcomputer of FIG. 1; 
     FIG. 4 is a block diagram of a dual frequency clock used in the microcomputer of FIG. 1; 
     FIG. 4A is a block diagram equivalent circuit of the dual frequency clock shown in FIG. 4 when such clock is operating in a low frequency mode; and 
     FIG. 4B is a block diagram equivalent circuit of the dual frequency clock shown in FIG. 4 when such clock is operating in a high frequency mode. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENT 
     Referring now to FIG. 1, a microcomputer 10 is shown to include a microprocessor 12 adapted to process data fed thereto from either a data memory 13 or a program memory 14 in response to clock pulses fed to the microprocessor 12 from a dual frequency clock 16 via line CLCK. A signal is produced by the microprocessor 12 on line DET to activate detonator 20 and thereby cause the explosion of land mine 22 in response to either a suitable signal produced on line FLAG by a sensor 18 (here a magnetometer adapted to detect the presence of a metal object such as a tank), or data stored in the program memory 14 which represents a predetermined self-destruct time. 
     Microprocessor 12 is here an RCA COSMAC Model 1802 8-bit microprocessor manufactured by RCA. The data memory 13 here includes two 256×4 bit CMOS RAM memory integrated circuits, RCA Model CDP1822, and provides 256 bytes of volatile temporary storage to produce an 8-bit digital word on the DATA bus in response to a read signal produced by the microprocessor 12 on line MRD or store an 8-bit digital word from the DATA bus in response to a write enable signal produced by the microprocessor 12 on line MWR. In either case, the data read from the data memory 13 or the data written into such data memory 13 is at a location fed to the data memory 13 by the microprocessor 12 on the MEMORY ADDRESS bus, as shown. 
     The program memory 14 is here a 512 byte memory comprised of four 256×4 bit PROM&#39;s manufactured by Harris Semiconductor. here Harris model HM9-6612-9. In response to a read enable pulse on line RE&#39; an eight bit digital word stored in two of the PROM&#39;s at the location specified by the data on the MEMORY ADDRESS bus is coupled to the microprocessor 12 via the DATA bus. As will be discussed more fully later, it is noted that the pulse on line RE&#39; is here 1.5 μs, a time duration sufficiently large to enable the program memory 14 to place the requested digital word on the DATA bus. Such 1.5 μs pulse is produced by a one-shot multivibrator 24 in response to a timing signal produced by the microprocessor on line TPB. The timing pulse produced by the microprocessor 12 on line TPB is here a pulse which lasts for one clock period and has a pulse repetition period of here 8 clock pulses. As will be discussed, during one phase (i.e. the early phase) of the operation of the microcomputer 10 the dual frequency clock 16 produces clock pulses on line CLCK at a relatively low frequency, here 1 KHz, while during another phase, i.e. the later phase, the clock 16 produces pulses at a higher frequency, here 256 KHz. While the microprocessor provides an enable signal in the order of six milliseconds on line MRD, use of this signal would enable the program memory 14 for an unnecessarily long time period since such memory 14 need be enabled for only about 1.5 μs. Therefore, use of the signal on line MRD would require a relatively high amount of power for the memory 14. Here a one shot multivibrator 24 is used to replace the six millisecond read enable signal on on line MRD by a 1.5 μs pulse on line RE&#39;, thereby placing the memory 14 in a read enable mode for only 1.5 μs to reduce the power requirement of the memory 14. 
     Dual frequency clock 16, the details of which will be described in connection with FIGS. 4, 4A and 4B, produces clock pulses on line CLCK at a rate of 1 KHz when the control signal produced by microprocessor 12 on line Q represents a logical 1 condition and produces clock pulses on line CLCK at a rate of here 256 KHz when such microprocessor 12 produces a signal on line Q which represents a logical 0 condition. During the initial or early phase of operation the signal on line Q is a logical 1 and the 1 KHz rate clock pulses on line CLCK are used by the microprocessor to execute the program stored in the programmable memory 14 and to keep track of, or count, elapsed time. When the microprocessor 12 is activated by a sensor signal on line FLAG the microprocessor produces a logical 0 signal on line Q to enable more rapid operation of the microprocessor 12. It is noted, therefore, that when the microprocessor 12 is merely keeping track of elapsed time a relatively low amount of power is being consumed because of the relatively low operating or execution rate of the microcomputer 10. 
     Referring now also to FIG. 2 a flow diagram representative of the macroinstruction program stored in the program memory 14 is shown. In response to an initialization pulse fed to microprocessor 12 via line INIT such microprocessor 12: Produces a logical 1 signal on line Q; sets an elapsed time measurement T 1  to 0 and sets a sensor time measurement T S  to 0. The microprocessor 12, in response to clock pulses produced by dual frequency clock 16 and fed to such microprocessor 12 via line CLCK, such clock pulses being produced at a 1 KHz rate because the logical signal on line Q represents a logical 1 state, increments the elapsed time T 1  in response to the clock pulses. A comparison is made between the incremented elapsed time T 1  and a predetermined &#34;self-destruct&#34; time T 2  stored as a macroinstruction in the programmable memory 14. If the incremented time T 1  is greater than or equal to the predetermined &#34;self-destruct&#34; time T 2  the microprocessor 12 produces a signal on line DET to activate detonator 20 and thereby cause the explosion of land mine 22. If the elapsed time T 1  is less than the predetermined &#34;self-destruct&#34; time T 2  a test is made to determine whether the signal on the sensor line FLAG indicates the presence of an object, such as a tank, sensed by sensor 18. If such line FLAG is not activated the microprocessor 12 continues to increment the elapsed time T 1 . It is noted that during this process the microprocessor 12 is operating at a relatively low, here 1 KHz, clock rate and merely keeps track of elapsed time until the predetermined &#34;self-destruct&#34; time T 2 , generally several days, is reached, at which time the elapsed time T 1  equals the predetermined &#34;self-destruct&#34; time T 2  and the mine self-destructs to clear the mine field for access by friendly forces. If, on the other hand, the sensor 18 is activated by an object a signal is produced on line FLAG and line Q is set to a logical 0 condition. In response to such logical 0 condition the dual frequency clock 16 produces clock pulses at a much higher rate, here 256 KHz, on line CLCK. In response to such clock pulses the time duration during which the sensor 18 is activated, i.e. the time T S , is computed. The instantaneous computed value of the sensed time T S  is compared with a predetermined time T R . The predetermined time T R  represents the expected time it will take a tank or &#34;true&#34; object to pass by sensor 18. T R  may typically be a few seconds, and is stored as an instruction in the program memory 14. It should be noted that the computation of time T S  must be rapid so that a proper determination of whether the detected object is a &#34;true&#34; or &#34;false&#34; object is made prior to the time the tank, or &#34;true&#34; object, being sensed leaves the kill area of the mine. In this regard it should be noted that the microprocessor is operating at a 256 KHz rate during the time the FLAG line is activated by the sensor 18. If the computed sensed time T S  is equal to or greater than the predetermined time T R  a signal is fed to line DET from the microprocessor to activate detonator 20 and cause the explosion of land mine 22. If the sensed time T S  is less than predetermined time T R  a test is made as to whether or not the FLAG line is still activated by sensor 18. If the test indicates that the FLAG line is activated the microprocessor continues to increment the sensed time T S  ; however, if the test indicates that the FLAG line is no longer active (the sensed time T S  being less than the predetermined time T R ), it is assumed that the object detected by sensor 18 is not a tank, but rather some &#34;false&#34; object. In this latter case: The sensed time T S  is reset to 0; the microprocessor 12 produces a logical 1 signal on line Q; and the microprocessor 12 continues to increment the elapsed time T 1  at a 1 KHz rate. In summary, then, the flow chart in FIG. 2 includes two subroutine loops, indicated as loop I and loop II. When the subroutine loop I is being executed by microprocessor 12 such microprocessor 12 is operating at a relatively low, here 1 KHz, clock rate, and is being used to determine whether a predetermined &#34;self-destruct&#34; time, T 2 , has been reached, at which time the land mine 22 self-destructs. When the microprocessor 12 executes the subroutine indicated by loop II such microprocessor 12 is operating at a relatively high clock rate, here 256 KHz, to determine whether a sensed object is a &#34;true&#34; object or a &#34;false&#34; object, such computation having to be made in a relatively short time interval so that if a &#34;true&#34; object is present the mine will detonate before the true object leaves the kill area of the mine. It is further noted that when the microprocessor 12 is executing the subroutine indicated by loop I, and is merely keeping track of elapsed time, relatively small amounts of power are being consumed by the microcomputer 10 because such microprocessor 12 is executing instructions stored in the program memory 14 at the relatively low, 1 KHz, clock rate. 
     Referring now to FIGS. 3A-3G, at time T 0  an initialization pulse 21 is fed to line INIT as shown in FIG. 3A. It is noted that initially the FLAG line is &#34;low&#34; and that the signal on line Q is logical 1 as shown in FIGS. 3B and 3C. Further, because a logical 1 is produced on line Q, clock pulses are produced on line CLCK by the dual frequency clock 16 at a 1 KHz rate as shown in FIG. 3D. In response to each 8th clock pulse produced on line CLCK microprocessor 12 produces a timing signal or a triggering pulse on line TPB for one clock period (i.e. one millisecond) as shown in FIG. 3E. The triggering pulse on line TPB is fed to a one shot multivibrator 24, here of any conventional design, adapted to produce a pulse on line RE&#39; in response to the leading edge of the signal on line TPB as shown in FIG. 3F. Here one shot multivibrator 24 produces a pulse 1.5 microseconds in duration on line RE&#39;. It is noted that the time duration of the pulse on line RE&#39; is selected in accordance with the minimum amount of time required by program memory 14 to provide data in response to an enable signal. 
     Referring again to FIG. 3B, at time t a  a sensor signal is produced on the FLAG line by sensor 18. In response to such signal the microprocessor 12 produces a logical 0 signal on line Q as shown in FIG. 3C. The logical 0 signal on line Q causes dual frequency clock 16 to produce clock pulses on line CLCK at a 256 KHz rate as shown in FIG. 3D. It is noted that during the time period the FLAG line is active, that is, during the time clock pulses at the 256 KHz rate are fed to the microprocessor via line CLCK, a timing pulse is produced by such microprocessor on line TPB once every eight clock pulses and such pulse lasts for the time duration of one clock pulse. Here the time duration of each pulse is 3.9 microseconds. In response to the leading edge of the timing pulse on line TPB one shot multivibrator 24 again produces a pulse on line RE&#39; having a 1.5 microsecond time duration as shown in FIG. 3F. Referring again to FIG. 3B, at time t b  if the sensed time T S  =t b  -t a  is greater than or equal to the predetermined time T R , indicating that the object detected by sensor 18 is a &#34;true&#34; object, a signal is produced on line DET to activate detonator 20 and thereby cause the explosion of land mine 22 as shown in FIG. 3G. If, however, the sensed time T S  is less than the predetermined time T R , indicating that the sensed object is a &#34;false&#34; object, microprocessor 12 produces a logical 1 signal on line Q. In response to such logical 1 signal dual frequency clock 16 produces clock pulses at a 1 KHz rate on line CLCK and the microprocessor 12 again resumes measurement of the elapsed time from the time an initialization pulse was fed to the microprocessor line INIT. In response to such 1 KHz rate clock pulses, when the microprocessor 12 determines that a total elapsed time has reached the &#34;self-destruct&#34; time, T 2 , the microprocessor 12 produces a signal on line DET as shown in FIG. 3H to activate detonator 20 and thereby cause the explosion of land mine 22. 
     Referring now to FIG. 4, a dual frequency CLOCK 16 is shown to include four inverters 44a, 44b, 46 and 48, here manufactured by Fairchild Camera and Instrument Corporation, Mountain View, California, model F40098, arranged as shown. The signal on line Q is fed to inverter 40, the output of which is fed to inverter 44b to enable or disable such inverter 44b in a manner to be described. The output of inverter 44b is coupled to terminal C through a resistor R H , as shown. The inverter 44a has its output coupled to terminal C through a resistor R L , as shown. Terminal C is connected to the inputs of inverters 44a, 44b through a capacitor Ca and to terminal D, (i.e. the input of inverter 46) through a resistor R C , as shown. The output of inverter 46 is coupled to line CLCK and is also coupled to the input of inverter 48, as shown. The output of inverter 48 is coupled to capacitor Ca and to the input of inverters 44a, 44b, as shown. Gating signals for inverters 44a, 46 and 48 are connected to the output of inverter 50, the input of such inverter 50 being connected to ground, as shown. When the signal on line Q is logical 1, that is a relatively high voltage, the inverter 44b is disabled and the dual frequency clock 16 may be, under such condition, represented by the schematic shown in FIG. 4A. In operation, when terminal D is low terminal A is also low and terminal B is high. The conduction path from terminal B, through capacitor Ca, to terminal A charges the capacitor Ca. Resistor R C  is largely irrelevant since the impedance to the inverter 46 at terminal D is relatively high. As the capacitor Ca charges the voltage at terminal C rises. The voltage at terminal D also rises until it is interpreted as a logical 1 condition, setting the logical state at terminal A to a logical 1 or high voltage level signal and terminal B to logical 0 or relatively low voltage signal. Now the charging path is reversed and the voltage at terminal C begins to decrease until it causes the signal at terminal D to once again be interpreted as a logical 0 (or low voltage signal) completing the cycle. The charging period, and hence the operating frequency, depends principally upon the product, or time constant, of R L  and Ca. On the other hand, referring to FIG. 4, if the logical signal on line Q is logical 0, that is a low voltage, the output of inverter 40 is high, thereby enabling inverter 44b so that it works in parallel with inverter 44a. The result is a circuit which may be represented by the equivalent circuit under such condition shown in FIG. 4B. Here inverters 44a and 44b may be represented by an inverter 44, the output of which is coupled to terminal C through shunted resistors R L  and R H , as shown. Here the oscillation frequency is dependent upon Ca and the parallel combination of R L  and R H . It follows then that when the logical signal on line Q represents a logical 0 the frequency of the signal produced on line CLCK is higher than the signal produced on such line CLCK when the logical signal on line Q represents a logical 1 condition. 
     The resistor R C  is selected to have a value in the order of 2,000 ohms. A typical value for capacitor Ca is 1,000 pf. The values of resistors R L  and R H  are typically 425 K ohms and 1.5 K ohms, respectively. 
     Having described a preferred embodiment of the invention, other embodiments incorporating these concepts will now become readily apparent to those of skill in the art. For example, instead of having the sensor coupled to a FLAG line such sensor may be coupled to an interrupt line in which case a test is not required and the program will immediately jump to the interrupt service routine in response to a sensed signal being produced by the sensor. Further, other criteria may be used to determine whether the object being sensed is a &#34;true&#34; or &#34;false&#34; object than the relatively simple measure of time T S  described herein. It is felt, therefore, that this invention should not be limited the preferred embodiment, but rather should be limited only by the spirit and scope of the appended claims.