SPARK AND DWELL IGNITION CONTROL SYSTEM USING DIGITAL CIRCUITRY

Abstract: Ignition control system (10). Crankshaft advance (15, 16) and reference (17, 18) sensors are utilized to determine positions of maximum and minimum possible spark ignition advance. for each maximum advance pulse (t<uA)>u a main counter (41) starts sequentially counting clock pulses (C<u1>u) wherein the maximum count obtained by the counter (41) is related to engine crankshaft speed. The count of the main counter (41) is utilized by a dwell circuit (121) to determine the time (t<uDW>u) prior to the maximum advance pulse (t-<uA>u) at which spark coil excitation should occur. The main counter count also determines several inputs to a read-only-memory (ROM) circuit (48) whose output controls a rate multiplier (53) which receives input clock signals (C<u2>u) and provides selective frequency division for these clock signals in accordance with the ROM output. The output of the rate multiplier is coupled to an accumulator means (80, 81, 82) which provides an accumulated count which is utilized to determine spark occurrence. Pulse width modulation circuitry (56) receives an analog signal related to the amount of sensed engine vacuum pressure and produces a corresponding periodic digital two-state signal which has a duty cycle related to the magnitude of the analog vacuum signal. This signal is coupled as an input to the ROM (53) which controls the rate multiplier. In this manner the accumulator count is made to depend upon the magnitude of the analog vacuum signal.

Description: SPARK AND DWELL IGNITION CONTROL SYSTEM USING DIGITAL CIRCUITRY Cross Reference to Related Applications The present invention is related to the inventions described and claimed in copending U.S. patent application Serial No. 049,013, filed June 15, 1979, entitled "Dwell Circuitry for an Ignition Control System" by Rupin J. Javeri; and described and claimed in copending U.S. patent application Serial No. 049,014, filed June 15, 1979, entitled "Improved Digital Dwell Circuit" by Adelore Petrie. Both of the copending U.S. applications referred to above are assigned to the same assignee as the present invention. Background of the Invention The present invention relates generally to the field of digital signal processing circuitry, and more particularly to the field of electronic ignition control systems which utilize digital signal processing circuitry for controlling spark and dwell occurrence. In internal combustion engines the time occurrence at which a spark is produced to ignite a fuel and air mixture in a cylinder is a priiaary 'operational consideration. Sim¬ ilarly, producing an appropriate excitation signal (dwell) for an ignition coil immediately prior to the coil producing spark ignition is also a major design consideration. Mech¬ anical spark control ignition systems have been found not to be reliable over long periods of time thus necessitating frequent readjustment of the mechanical controls. Thus electronic spark control ignition systems having greater reliability have been developed. The majority of the prior art electronic spark timing control systems have been analog systems since those system are typically more readily implemented with standard compon ents. One such analog ignition control system is illustrat ed in U.S. Patent 4,104,997, assigned to the same assignee as the present invention. In this analog electronic spark ignition control system, it is pointed out how controlling the rates of increase and decrease of an analog signal whic charges and discharges a capacitor, can result in producing a desired spark timing versus engine speed characteristic for an engine utilizing a distributorless ignition system. The term "distributorless" is utilized to indicate that the occurrence of spark ignition in different cylinders is not dependent upon the mechanical position of a standard distri butor which channels spark energy to appropriate cylinders, but that spark ignition for each of the cylinders is deter¬ mined by electronic switching circuitry. The analog spark control system referred to above has the disadvantage that in accurately controlling the charge and discharge slopes of a capacitor in order to accurately determine spark timing, a number of precise individual set¬ tings of analog controls must be accomplished. This adds t the complexity and cost of the analog spark timing control system. Digital spark control systems are known, and one such digital system is illustrated in copending U.S. patent application Serial No. 779,974, filed March 22, 1977, and entitled "An Electronic Ignition Timing System Using Digita Rate Multiplication", assigned to the same assignee as the present invention (now, U.S. Patent 4,168,682). This digital ignition control system illustrates how digital circuitry including a binary rate multiplier, a read only memory (ROM) which supplies control signals to the binary- rate multiplier and an accumulator wnich receives the outpu of the binary rate multiplier can be utilized to accurately determine ignition spark timing through the use of digital circuitry. This copending application utilizes the output of the ROM to totally control the rate multiplication of a rate multiplier solely as a function of the input of the rate multiplier. Other engine variables such as engine vacuum pressure and engine temperature are utilized to produce different pulse trains which serve as inputs to the rate multiplier and therefore affect the inputs and outputs of the read only memory circuit. The effect of this is that a rather large read only memory circuit is required for the prior art engine control system illustrated in the copending application. The advantage of the copending application is that it requires a substantially smaller read only memory than previous digital engine control systems such as those shown in U.S. Patents 3,738,339 and 3,749,073, both of which require extremely large read only memories since both con¬ template using ROMs to perform a point-by-point table look¬ up function in order to produce a desired non-linear spark timing control signal or count which determines the desired engine speed versus spark advance characteristic. The prior copending application minimizes the size of read only memor¬ ies utilized in ignition control systems by implementing piece-wise linear accumulation rates for a pulse accu ulator wherein the aggregate count is a complex function of en ine speed and other engine variables. The present invention provides improved circuitry for reducing the size of the read only memory still further while producing an aggregate count related to several engine variables including engine speed and engine vacuum pressure. Electronic dwell circuits for ignition control systems are known and U.S. Patents 3,908,616 and 4,018,202 illus¬ trate digital circuits for determining a dwell control signal. While the circuits shown in these patents evident- ly produce accurate digital dwell control signals, gener¬ ally they are not economically adaptable to operate in conjunction with digital spark timing circuits in which th spark timing is to be a function of engine speed and other additional engine variables. Some prior dwell circuits (e.g. U.S. patent 3,908,616) cannot produce large dwell angles required at high engine speeds. Other prior dwell circuits such as U.S. patent 4,018,202 require complex feedback circuits having marginal stability. Digital signal processing circuits exist which utiliz a rate multiplier which is followed by an accumulator wher in the signal modification provided by the rate multiplier is controlled by a control means. In order to accomplish this signal modification in accordance with an analog sig¬ nal, these prior art circuits convert each analog signal magnitude into a corresponding fixed digital word which serves as the input to a read only memory whose output serves as the control for the rate multiplier. If the output of the rate multiplier is desired to vary as the analog signal varies slightly in its magnitude (thus requiring high resolution analog to digital conversions) , then an extremely large capacity read only memory device must be utilized since a different digital output from the read only memory must be produced in accordance with each minor analog signal magnitude variation for which a ROM output change is desired. The present invention minimizes the size of a read only memory in the above described processing circuit while permitting an extremely high resolution analog to ROM digital output conversion to be implemented. The manner in which this is accomplished is described in the remaining portions of this document. Summary of the Invention An object of the present invention is to provide an improved and simplified digital signal processing circuit for providing a high resolution analog to digital conversion. A more particular object of the present invention is to provide an improved and simplified electronic ignition con¬ trol system for an internal combustion engine which utilizes digital signal processing circuitry. A further object of the present invention is to provide both an improved signal processing circuit and an electronic ignition control system which utilizes such an improved cir¬ cuit in which the size of the memory capacity of a read only memory circuit is minimized while an accurate high resolu- tion analog to digital conversion result is produced. In one embodiment of the present invention an improved digital signal processing circuit is provided. The circuit comprises: clock means for producing an input signal comprising a series of digital pulses having a predetermined rate of occurrence; rate multiplier means coupled to said clock means for receiving said input signal and producing a corresponding output signal by selectively multiplying (dividing) the rate occurrence of the input signal pulses in accordance with received control signals; control means coupled to said rate multiplier means for producing and supplying said control signals for controlling the rate multiplication of said rate multiplier means, said control means comprising a read only memory means (ROM) with the output of the ROM determining said control signals; accumulator means coupled to said rate multiplier means for receiving said output signal and accumulating a count related to the pulse count of said output signal; wherein the improvement comprises said control means including pulse width modulation means for receiving an analog signal and producing a periodic digital two state signal having a duty cycle related to the magnitude of the analog signal, and means coupling the digital two state signal as an input to said ROM, in addition to other inputs received by said ROM. The above recited structure insures that the output of the ROM is not only a function of the other inputs received by said ROM, but now the output of the ROM is also a OMPI A,>- WW11PPOO -t * V function of the magnitude of an analog signal. The above structure causes the rate of occurrence of pulses in the output signal of the rate multiplier to be a function of th magnitude of the analog signal, and this allows high resolution in converting the analog signal to a digital pulse count while minimizing the memory storage required by the ROM in order to implement this function. Essentially the present invention contemplates applyin a duty cycle controlled two state signal as an input signal to a read only memory which controls the multiplication of rate multiplier whose output is effectively accumulated by subsequent accumulator. The present invention, by providin for periodically switching the control signals to the rate multiplier in accordance with a duty cycle controlled by an analog signal magnitude, results in the accumulator obtain¬ ing an accumulated digital count related to the precise magnitude of the analog signal. The read only memory devic need only store two different control signals each one corresponding to the analog signal having either a predeter mined maximum or minimum magnitude. When the analog signal is anywhere in between these maximum and minimum limits, th pulse width modulation means produces the periodic two stat signal with its duty cycle directly related to the magnitud of the analog signal. This results in periodicaly switchin the ROM produced control signals received by the rate multi plier, means such that over a period of time the output puls count accumulated by the accu ulator means will be directly related to the magnitude of the analog signal wherein this is accomplished by switching between the maximum and minimu control outputs of the read only memory for different time durations determined by the duty cycle of the periodic digi tal output signal of the pulse width modulation means. In other words the present invention allows continuous interpo lation between two possible rate multiplier control outputs of a read only memory by controlling the duty cycle of a tw state input signal to the read only memory and producing an accumulated signal related to the ROM control outputs. The present invention contemplates utilizing the digital signal processing circuitry described above in an electronic ignition control system. It is contemplated that the accumulator will be reset in response to sensed engine crankshaft position pulses and that the count which is accu¬ mulated by the accumulator means will determine the time occurrence of engine ignition (spark) . It is contemplated that engine vacuum pressure will be sensed and provide an analog signal related thereto which will result in providing the periodic two state output signal of the pulse width modulation means wherein the duty cycle of the periodic out¬ put signal is determined by the magnitude of the vacuum analog signal. It is contemplated that engine speed will be utilized to determine other input signals being applied to the read only memory device while the periodic output of the pulse width modulation means is also coupled as an input to the ROM. In addition, it is contemplated that two engine crankshaft position sensors will be utilized to produce pulses wherein one of the sensors (advance) will define the earliest time (for a cycle of cylinder compression) at which spark ignition should occur and the other sensor (reference) will define the latest time at which spark ignition should occur (for any one engine cylinder) . It is contemplated that these sensor pulses will also be utilized, by control circuitry, such that spark dwell will be initiated no later than the earliest possible occurrence of spark ignition and that a spark will be generated no later than the latest possible time for generating a spark. The two engine position sensor pulses produced by the sensors are contem¬ plated as determining the timing pulses for spark ignition and dwell through the use of the above recited digital circuitry and other additional digital circuitry. - ' Tfter. . πr ;f\ * >\ Brief Description of the Drawings For a more complete understanding of the invention, reference should be made to the drawings, in which: Figure 1, comprising drawings 1A, IB and 1C, is a combination block and schematic diagram illustrating an engine ignition control system for an internal combustion engine; Figure 2 is a schematic diagram illustrating a typical configuration for a dwell circuit illustrated in Figure 1; Figure 3 is a schematic diagram illustrating a typical configuration for a pulse width modulator circuit shown in Figure 1; Figure 4 is a schematic diagram illustrating typical circuit configurations for several of the block components shown in Figure 1; Figure 5 is a schematic diagram illustrating a typical configuration for a select decoder illustrated in Figure 1; Figure 6 is a schematic diagram illustrating a typical configuration for a slow speed decoder shown in Figure 1; Figure 7 is a schematic diagram illustrating a typical configuration for a spark logic circuit shown in Figure 1; Figure 8 is a schematic diagram of another typical embodiment for a dwell circuit shown in Figure 1; Figure 9 is a graph which shows the desired spark timing versus engine speed characteristic provided by the circuit in Figure 1; and Figures 10A through 10Q are a series of graphs which illustrate electrical signals and pulse count accumulations as functions of time for the system shown in Figure 1. Description of the Preferred Embodiments Figure 1 illustrates an electronic ignition control system 10 for a two cylinder internal combustion engine (no shown) . Essentially the control system 10 receives sensor input signals and develops control signals that determine the spark timing and dwell (coil excitation time) for a distributorless inductive ignition system. The term "distributorless" contemplates the fact that no rotating mechanical distributor will be utilized, and that instead sparks will be created in each of the two cylinders simul¬ taneously but at different times with respect to the compression cycle of each cylinder. In other words, when a spark is generated for cylinder 1 at the proper time of its compression cycle, a spark will also be generated in cylin¬ der 2 but this spark will occur during the exhaust cycle of cylinder two and therefore will not result in igniting a fuel mixture. Distributorless ignition systems are known and do not form an essential part of the present invention . The control system 10 illustrated in Figure 1 will now be described. For a better understanding of Figure 1, draw¬ ings 1A, IB and 1C should be arranged with drawing IB located between drawings 1A and 1C. The control system 10 includes a rotating cam 11 synchronously rotatable with a crankshaft of a two cylinder engine, the crankshaft being shown schematically as an axis of rotation 12. The cam 11 has a peripheral projection 13 spaced from the axis 12 and the cam 11 is contemplated as rotating in a clockwise direction. An advance sensor 15 is contemplated as having a sensing probe 16 positioned at a fixed location with respect to the rotating cam 11, and a reference sensor 17 is contem¬ plated as having a sensing probe 18 similarly positioned with the probes 16 and 18 being spaced apart by 35 degrees of angular rotation of the cam 11 (which corresponds to 35 degrees of engine crankshaft rotation) . The probes 16 and 18 produce crankshaft angular position pulses as the projec¬ tion 13 rotates by these probes with the produced position sensing pulses initially occurring in response to the pass- age of a leading edge 13a of the projection passing by the sensing probes and the position pulses terminating after a trailing edge 13b has passed by the probes 16 and 18. The advance sensors 15 and 17 receive input signals from their corresponding sensing probes and produce digital pulse out puts in correspondence thereto at output terminals 19 and 20, respectively. It should be noted that the positioning of the sensin probes 16 and 18 with respect to the rotating cam 11 and i projection 13 is not totally arbitrary and that it is con¬ templated that the probe 16 is positioned such that it defines the maximum possible advance (earliest possible spark ignition occurrence for a cylinder compression cycle for the ignition system 10 while the probe 18 defines the minimum possible advance (generally corresponding to top dead center of cylinder position which is generally termed zero or reference advance) . Thus the positioning of the probe 16 and 18 define the earliest and latest possible occurrences of spark ignition, respectively, for the igni¬ tion control system 10. The significance of this will be demonstrated subsequently. The advance and reference output terminals 19 and 20 are coupled as inputs to advance and reference buffers 21 and 22, respectively, which impedance isolate the sensors from subsequently circuitry and insure the production of precise, uniform magnitude corresponding digital pulses at output terminals 23 and 24, respectively. Figures 10A and 10B illustrate the sensing pulses produced at the terminal 23 and 24, respectively, and illustrate that these pulses occur periodically at times t A and t R corresponding to the passage of the leading edge 13a past the sensing probe 16 and 18. The time occurrences t A and t R of the pulses at the terminals 23 and 24 are utilized by the ignition control system 10 to determine spark timing and dwell, and the manner in which this is accomplished will now be dis¬ cussed with reference to the circuit schematics in Figures through 8 and the graphs in Figures 9 and 10A-Q. It shoul be noted the horizontal axis in Figures 10A-Q is time and /t that Figures 10A, 10B, 10D-10J and 10P and Q are drawn having the same time axis scale, while Figures IOC and 10K through 10O are drawn with a greatly expanded time scale. The control system 10 includes a master clock oscillator 25 which produces clock timing pulses Cp at an output terminal 26 wherein the frequency of the clock oscillator is preferably 149.25 KHz. The clock pulses Cp are illustrated schematically in Figure IOC on a greatly expanded horizontal time scale and are continuously produced by the oscillator 25 regardless of the angular position of the crankshaft of the engine. A prescaler 27 is shown as being integral with the clock oscillator 25 and producing output signals Cl through C4 at output terminals 28 through 31, respectively. The prescaler essentially comprises a series of counters which receive the clock signal Cp and produce related lower frequency signals by essentially counting and thereby frequency dividing down the oscillator signal pulses Cp. Such prescalers are very well known and thus the construction details of the prescaler 27 will not be discussed. The Cl signal produced at the terminal 28 has an operative frequency of 1.16 KHz, C2 has a frequency of 9.33 KHz, the frequency for C3 is 49.75 KHz and the frequency of C4 is 74.6 KHz. All of the signals Cp and C2-C4 have repetition rates independent of the speed of crankshaft rotation. The prescaler 27 has a reset terminal 32 which causes resetting of the counters internal to the prescaler 27. The signals developed by the clock oscillator 25 and prescaler 27 at the terminals 26 and 28 through 31 essentially determine the operation of the ignition control system 10 in conjunction with the pulses sensed by the advance and reference probes 16 and 18. The signals produced at the terminals 28 through 31 are essentially used in various counters included in the ignition control system 10 and therefore the provision for resetting the internal counters in the prescaler 27 via the reset terminal 32 is required to insure that counters receiving their inputs in accordance with the signals at the terminals 28 through 31 will be synchronized with the advance sensor signal S j _ described below. A pulse synchronizer 33 receives an advance signal input from the terminal 23 and the clock pulse signal Cp from the terminal 26. The pulse synchronizer produces a synchronized advance pulse Si at an output terminal 34. Essentially, the synchronizer 33 insures that a pulse Sj_ is produced at the terminal 34 at a time t j which corre- sponds to the first clock pulse Cp that occurs after the time t A . In this manner the signal S (shown in Figure 10D) represents an advance pulse which is synchronized with the occurrence of the clock pulses Cp. The pulse synchronizer 33 also receives an input- at a terminal D from an output terminal 35 of an inhibit circuit 36. Essentially the inhibit circuit 36 produces a 4 milli¬ second delay pulse at the terminal 35 in response to the occurrence of spark ignition and this delay or inhibit signal at the terminal 35 prevents the pulse synchronizer from producing an output at the terminal 34 for 4 milli¬ seconds after the occurrence of spark ignition. The reason for this is to quiet the output of the synchronizer 33 such that additional sparks will not be initiated by the synchro nizer 33 until at least 4 milliseconds has elapsed since th last spark occurrence. This feature is not critical to the operation of the present invention as claimed herein. A pulse synchronizer 37 is similar to the synchronizer 33 and receives inputs from the reference sensor terminal 2 and the clock pulse terminal 26 and produces a synchronized reference pulse signal S2 at an output terminal 38. The synchronizer 37 merely insures that a reference signal S2 has an initial time occurrence which precisely corresponds to the occurrence of one of the clock pulses Cp. Since it is contemplated that the frequency of occurrence of the clock pulse Cp is very high (higher than all other timing signals C1-C4) , this synchronization results in substantially no loss in accuracy for the present system, due to delaying advance and reference timing by one clock pulse, but does insure that the reference pulse S2/ as well as the advance pulse S j _, will occur in synchronism with the clock pulse Cp. This insures synchronized timing for the control system 10. The reference signal S2 is illustrated in Figure 10E as comprising periodic pulses which occur at the times t2- It should be remembered that the duration of time between the occurrence of the advance pulses Sj at ti and the reference pulses S2 at the times t2 corresponds to 35 degrees of engine crankshaft rotation. Of course the actual time duration between t and t2 will vary directly as a function of engine speed. A delay circuit 39 receives the signal S j along with the clock pulses CP and produces a delayed output signal SiD at an output terminal 40. Essentially, the delay circuit 39 receives the synchronized signal S_ , delays this signal by one full period of the clock pulse signal Cp and produces this delayed signal S ] _D at the terminal 40. Figure 10F illustrates this delay advance signal S ] _D which has a time occurrence at t±O that is one clock pulse period later than the time occurrence t j _ . The reason for creating the delayed advance signal S D is that in many cases the control system 10 will transfer accumulated counts at the times t in response to the pulses S ] _, and subse¬ quently the accumulated counts are to be reset. Obviously the transference and resetting cannot occur simulatenousl , thus the present invention provides for delaying the resetting until after transference. The ignition control system 10 essentially utilizes a main up-counter 41 to linearly count up Cl pulses occurring at the terminal 28 in between the occurrence of delayed advance signal pulses S j D. This is accomplished by having the main up-counter 41 receive its counter input from the terminal 28 while its reset terminal is directly connected to the terminal 40. The counter 41 therefore periodically linearly accumulates a count which has a maximum value directly related to engine speed since the counting occurs during the times t^D which occur every 360 degrees of crankshaft rotation. Figure 10H illustrates a waveform representative of th linearly incremented count of the counter 41. It should be noted that individual counting steps have not been illus¬ trated in Figure 10H since these steps occur at the relatively high frequency of the signal C^ produced by the prescaler 27. However, Figure ION does illustrate the coun in the main counter 41 on a very expanded horizontal time scale, and this figure clearly illustrates the incremental nature of the accumulated count in the counter 41. The accumulated count of counter 41 is produced at 6 output terminals 42 through 47 with terminal 42 corre- sponding to the least significant bit and terminal 47 corresponding to the most significant bit. Thus the main up-counter 41 represents a 6 bit binary counter. Such counters are well known and readily available. It should b noted that while the electronic ignition control system 10 utilizes the maximum accumulated count obtained by the counter 41 as an indication of engine speed, the ignition system 10 also utilizes each incremental count produced by the counter 41 at its output terminals 43 through 47 as control signal inputs to spark time occurrence circuitry within the system 10, and these incremental counts are utilized to produce a desired non-linear spark occurrence versus engine speed characteristic. The manner in which this is accomplished will now be discussed. Each of the output terminals 43 through 47 of the main up-counter 41 are coupled as inputs to a read only memory (ROM) device 48 which has 4 output terminals 49 through 52 which are coupled as control signal inputs to a rate multi¬ plier device 53. The rate multiplier 53 receives a continuous stream of input clock pulses C2 via a direct connection to the terminal 29 and produces a corresponding output pulse stream at an output terminal 54 in accordance with the control signals received from the terminals 49 through 52. The rate multiplier device 53 is set by the pulse ≤i which is received via a direct connection from the terminal 34, and this reinitiates the operation of the rate multiplier 53. The rate multiplier essentially functions as a controllable frequency divider which multiplier (actual divides) the frequency of the input pulse stream by prede¬ termined integers which are determined by the control signals received from the ROM. Rate multipliers are well known and are readily available. Essentially, the pulse stream produced at the output terminal 54 is subsequently accumulated in an accumulator means which develops a count related to the number of pulses produced at the terminal 54. The exact structure of the accumulator means which accomplishes this will be described subsequently. This total accumulated count, which occurs between the pulses S]_ , is then subsequently utilized by the ignition control system 10 to determine the occurrence of spark ignition. The above described spark timing technique of utilizing a rate multiplier which is controlled by a read only memory circuit that receives incrementally controlled inputs related to engine speed (it should be remembered that in the present case the ROM inputs are the counts of the up- counter 41 which are related to engine speed) is essentially described in copending U.S. Patent application Serial No. 779,974, filed March 22, 1977 (now U.S. Patent 4,168,682) and assigned to the same assignee as the present invention. Essentially the ROM 48 functions as a table look-up device -which produces different control signals at the terminals 49 through 52 that control the frequency multipli¬ cation (division) provided by the rate multiplier 53. The end result is that the output pulse count produced at the terminal 54 is a non-linear function of engine speed such that a desired spark ignition occurrence versus engine speed characteristic can be obtained. The accumulator means effectively integrates or accumulates the pu lse count at th terminal 54 and determines , between S j _ pu lses , a max imum pulse count non- linearly related to eng ine speed . This maximum pulse count is then uti lized to determine spark ignit ion . Issued U.S. Patent 4,104,997 illustrates an analog system in which a desired non-linear spark occurrence versu engine speed characteristic is produced by controlling the rates of charging and discharging a capacitor. In the pres ent invention the ROM 48 and rate multiplier 53 digitally implement an equivalent function for controlling the rate o pulses produced at the terminal 54, and an accumulator mean integrates these pulses to produce the desired result. Figure 9 illustrates the desired advance angle (spark timin occurrence) versus engine speed characteristic which is desired by issued U.S. Patent 4,104,997 and which is a typi cal characteristic also desired by the present invention. The above referred to copending U.S. application 779,974 (now U.S. Patent 4,168,862) explains how the slope changes of the characteristics shown in Figure 9 can be digitally implemented by use of a rate multiplier and ROM without having the ROM store every individual point of the composit characteristics shown in Figure 9. It should be noted that in Figure 9, the curve NV represents the desired spark occurrence characteristic for no vacuum being sensed by an ignition control system whereas the curve V represents the desired characteristic for a predetermined amount of vacuum being sensed by an engine control system. The present invention contemplates providing the read only memory 48 with an additional input signal at an input terminal 55 wherein this additional signal represents the output of a pulse width modulator circuit 56 having its out put terminal 57 directly connected to the terminal 55. The pulse width modulator 56 receives an analog signal at an in put terminal 58 wherein the magnitude of this analog signal is related to a predetermined engine condition, in the present case related to the magnitude of sensed engine vacuum pressure. The pulse width modulator 56 will then produce a periodic digital two state signal which has a duty cycle (ratio of one logic state to the other during one cycle period) which is related to the magnitude of this analog signal. By coupling this digital two state signal produced at the terminal 57 as an input to the read only memory, the result is that the control signals at the output terminals 49 through 52 of the ROM are now made a function o of this analog signal and effectively the ROM control out¬ puts will be switched between two different sets of outputs, one corresponding to a low digital signal at the terminal 55 and another corresponding to a high logic digital signal at the terminal 55. Since the percentage of time (duty cycle) 5 of the logic states of the signal at the terminal 55 is controlled in response to the magnitude of the analog signal at the terminal 58, this results in having output control signals at the terminals 49 through 52 switched back and forth between two extreme values with the average of these o control signals being related to the magnitude of the analog signal at the terminal 58. Since the control signals at the terminals 49 through 52 determine the rate multiplication of the rate multiplier 53, and since the output of the rate multiplier is effectively integrated by a following accumu- 5 lator means, the effect of applying a pulse width modulation signal as an input at the terminal 55 of the read only memory 48 results in providing a continuous interpolation capability between the two extreme control output produced at the terminals 49 through 52 in response to the terminal 0 55 having a high or low logic state. For any one set of speed dependent control inputs received from the terminals 43 through 47 of the main coun¬ ter 41, the ROM 48 need only store a maximum and minimum output corresponding to whether the signal at the terminal 5 55 is either high or low. In the present case these maximum and minimum outputs correspond to the sensed vacuum pressure being above or below a predetermined vacuum pressure. The actual outputs produced at the terminals 49 through 52 are then made to represent a value more directly indicative of the magnitude of the analog voltage at the terminal 58 by first producing a digital two stage signal whose duty cycl varies in accordance with the analog signal magnitude and then by applying this signal to the input terminal 55. The improved result obtained by the present invention should be contrasted with the prior art technique of pro- viding a different digital output signal for each analog magnitude increment for which resolution of the. output sig nal is desired. In other words, previously if you wanted read only memory to produce different output signals in response to three different magnitudes (for example) of an analog input signal, then three memory storage spaces with the read only .memory would be required wherein three diffe ent memory address inputs would address any one of the thr different desired outputs. In the present invention only two input addresses and two desired outputs are required, and by pulse width modulating a digital signal so that its duty cycle is related to an analog signal magnitude, the read only memory output will be switched back and forth between these two extreme outputs such that the average ou put of the read only memory will represent any output valu in between these two extreme outputs which are stored in t read only memory. Thus the read only memory of the presen invention need only store two output limits in response to any desired engine condition and an average ROM output cor responding to 'any magnitude between these two output limit can be obtained merely by using a duty cycle pulse width modulated input signal to the read only memory. This per¬ mits saving an enormous amount of read only memory storage space while still enabling the output of the read only memory to have a high resolution correspondence with respe to the magnitude of the input analog signal. To obtain an equivalent resolution by any of the prior art references OMP ^ ?NA could not be digitally accomplished unless an extremely large read only memory capacity was utilized. The present invention minimizes the read only memory capacity and there¬ fore implements this function with a substantial cost savings . The operation of the pulse width modulator and the accumulator means which follows the rate multiplier 53 will now be described in detail. The present invention contemplates an engine vacuum pressure sensor 59 supplying an analog signal to the input terminal 58 of the pulse width modulator 56. The analog signal magnitude is representative of the state of engine vacuum pressure. Terminals 42 through 44 of the main counter 41 are also received by the pulse width modulator 56 which produces an output at terminal 57. Figure ^ 3 illustrates typical embodiments for the vacuum sensor 59 and the pulse width modulator 56 both shown dashed in Figure 3. The vacuum sensor 59 is contemplated as com¬ prising a two position vacuum sensing switch 60 with a wiper arm terminal coupled to ground and the wiper varying between a first terminal 61 when sensed engine vacuum pressure is below a predetermined threshold value and a second terminal 62 when the sensed vacuum pressure is above this predeter¬ mined value. The terminal 62 is coupled to a B+ terminal through a resistor 63 and is coupled to the terminal 58 through a resistor 64. A capacitor 65 is coupled from the terminal 58 to ground. In response to sensing an engine vacuum pressure change from below to above the predetermined threshold, the switch 60 will short the terminal 62 to ground resulting in slowly changing the voltage at the terminal 58 from a high voltage to a low voltage. Prefer¬ ably this voltage change occurs at a relatively slow 0.5 second time constant. Thus the signal at the terminal 58 represents an analog signal which has a magnitude related to the sensed engine vacuum pressure. While in the present embodiment an analog signal whic varies between two voltage magnitudes which directly corre¬ spond to two discrete states of vacuum pressure is illus¬ trated, the present invention certainly contemplates other embodiments which provide an analog signal at the terminal 58 which is continuously and directly related to the insta taneous value of engine vacuum pressure rather than the opening or closing of a two position engine vacuum sensor switch. The pulse width modulator circuit 56 comprises a DC level comparator 66 having a negative input terminal couple to the input terminal 58 through a resistor 67. Limiting diodes 68 and 69 are also connected to the negative input terminal of the comparator 66 and essentially limit the signals received by the comparator to magnitudes either one diode drop above B+ or one diode drop below ground. The terminals 42 through 44 are received as inputs to a NAND gate 70 whose output is coupled through an inverter 71 to a control terminal 76 of an FET gate 72. An output terminal of the gate 72 is coupled to a positive input terminal 75 o the comparator 66 which is also coupled to B+ through a resistor 73 and to ground through a capacitor 74. The output of the comparator 66 is directly coupled to the output terminal 57 of the pulse width modulator 56. Essentially the signals at the terminals 42 through 44 are converted by the NAND gate 70 into a relatively slow periodically occurring pulse signal which is used as the control signal for the FET gate 72. This control signal is illustrated in Figure 10K. In response to each periodic pulse produced at the control gate of the FET 72, the posi¬ tive input terminal (terminal 75) of the comparator 66 is shorted to a positive reference voltage just above ground potential by the gate 72. After setting the terminal 75 to just above ground, the FET gate 72 is open circuited until the next occurrence of a control pulse at its control termi nal 76. Figure 10K illustrates the control signals at the terminal 76 and Figure 10L illustrates the signal waveforms produced in response thereto at the positive input terminal 75 of the comparator 66. Superimposed on the waveform shown in Figure 10L is a high first dashed voltage level 77 corre¬ sponding to low vacuum pressure is being sensed by the sensor 59, a low second voltage level 78 corresponding to the low voltage eventually produced at the terminal 58 upon closure of the switch 60 in response to a high vacuum pressure being sensed, and an interim voltage level 79 corresponding to the voltage at the terminal 58 which would occur at some time after the closure of the switch 60 but before the attainment of the limit level 78. It should be noted that the waveforms in Figures 10K and 10L are all commenced at the times t j , and that the horizontal time axes in Figures 10K through 10O are shown with greatly expanded time scales as compared with the other graphs in Figures 10A-10Q. The time scales for graphs 10K-10M are identical, but the time scales for graphs ION and 10O are even more expanded. Figure 10M shows the output signal of the comparator 66 produced in response to the signal shown in Figure 10L being created at the positive input terminal 75 while the negative terminal of the comparator 66 receives a transitional vol¬ tage corresponding to the dashed level 79 shown in Figure 10L. Figure 10M illustrates that the output of the compara- tor 66 is a digital two state logic signal in which the duty cycle of this signal varies in accordance with the magnitude of the analog signal produced at the terminal 58. For a no vacuum condition corresponding to the level 77 present at the negative input terminal of the comparator 66, the output of the comparator 66 would remain at zero, and for a voltage at the negative input terminal corresponding to the level 78, the output of the comparator 66 would always be high. Figure 10M illustrates that for interim values of vacuum (in the case of a continuous analog sensor being used instead of a two position vacuum sensing switch) or in the case of a slowly changing signal representing changing from vacuum to non-vacuum and back again (when a two position vacuum sensing switch is used) , an analog signal is produc at the terminal 58 which results in a varying duty cycle signal being produced as the output of the comparator 66. As was previously discussed, applying this varying duty cycle signal to the input of the ROM 48 allows the output the ROM to vary, in a periodic step wise manner, between two maximum limits and this produces an output whose avera value will be directly related to the magnitude of the analog signal at the terminal 58. In the present situation, it was found that rapidly switching from a vacuum spark advance determination to a n vacuum spark determination would disrupt the operation of the ignition control system 10. Thus it was necessary to slowly implement the change between vacuum and non-vacuum spark calculations by the system 10. In order to accomplis this, the output of the ROM 48 must be able to represent interim output values between the vacuum and no vacuum conditions corresponding to the levels 78 and 77, respec¬ tively. The present invention accomplishes this desired result without any increase in the storage space required b the ROM 48. As was previously mentioned, an accumulator means essentially follows the rate multiplier 53 and effectively converts the pulse count at the terminal 54 into an integra ted or accumulated maximum count. It is this accumulation step that results in effectively averaging the different control signal outputs produced at the ROM output terminals 49 and 52 by use of the pulse width modulator 56 altering the duty cycle of the input ROM control signal at the terminal 55. Before describing the accumulator means coupled to the rate multiplier output terminal 54, a better understanding of the present invention will be obtained by referring to Figures ION and 10O. Figure ION represents the incremental count, incrementing at twice the frequency of the clock pulse signal Cl, commenced at the times t D by the main up-counter 41 on the control terminals 43 through 47 couple to the ROM 48. After the main counter 41 receives two Cl pulses the count of the main counter, as recorded on the output terminals 43 through 47, is incremented one count. In Figure ION the horizontal axis represents an expanded time scale whereas the vertical axis represents the stepped count stored by the terminals 43 through 47. Figure 10O re¬ presents maximum and minimum rates of increase SL j and SI12 determined by the output terminals 49 through 52 of the read only memory 48. At a subsequent time t , the count of the main counter is incremented by counting Cl pulses such that terminal 43 now indicates a new count as an input signal to the read only memory 48. Thus a different input control signal is now received by the read only memory 48 and the output terminals 49 through 52 of the ROM now are " able to implement different rates of increase SL3 and SL4. The rates of increase SL -SL4 represent differ¬ ent fixed integers used by the rate multiplier for frequency division. For each different count increment on lines 43-47 the ROM 48 can select either of two different rates of increase for the count processed by the rate multiplier 53 because for any main count received as an input by the ROM 48 from the counter 41, either a zero or one logic state can be pro¬ duced by the pulse " width modulator 56 at the input terminal 55. Figure 10O illustrates the different characteristics for rates of pulse count increase at terminal 54 that can be implemented by the rate multiplier 53 in accordance with the control input signals received by the read only memory 48 which supplies control inputs to the rate multiplier. By applying a pulse width modulation signal to the input termi¬ nal 55, the present invention contemplates selectively switching between maximum rates of increase such as SL ] _ and SL3 and minimum rates of increase such as SI_2 and SL4 during the times tm - t j and after t , re- spectively, to obtain a composite (average) rate of increase which can be anywhere within the limits defined by the maximum and minimum rates of increase. " The previously referred to copending U.S. patent appli cation Serial No. 779,974, filed March 22, 1977 (now U.S. Patent 4,168,682) points out how controlling ROM and rate multiplier in accordance with pulse counts related to engin speed can result in determining break points for the compos ite spark timing advance versus engine speed characteristic illustrated in Figure 9. Issued U.S. Patent 4,104,997 demonstrates how controlling the rate of increase of an effective integrater means can be utilized to accurately determine desired spark timing relationships as a function of engine speed. The present invention combines these two techniques along with providing for pulse width modulation of an input to a read only memory in accordance with sensed engine vacuum pressure in order to minimize the ROM storage space required by an ignition spark timing control system responsive to engine speed and engine vacuum pressure. From Figures ION and 10O, which are drawn with iden¬ tical horizontal time scales, it would appear that for opti mum interpolation between the maximum and minimum slopes, such as j_ and S 2, a pulse width modulation frequency for the signal shown in Figure 10M as high as possible should b selected. In the preferred embodiment, this is not the cas since the period of the signal in Figure 10M is equivalent to eight main counter increments (at the frequency of Ci) while the period of the signal in Figure ION is equivalent to two main counter increments. This relationship was decided upon in order to permit the rate multiplier to pass enough of the divided down C2 pulses to the output terminal 54 to obtain an adequate number of pulse counts at terminal 54 which represents any of the rates SL1-SL4. The structure of the effective pulse count accumulator means connected to the output terminal 54 of the rate multi plier 53 will now be describee. The output of the rate multiplier 53 at the output terminal 54 is effectively coupled to an accumulator means which accumulates a count related to the total pulse count produced at the output terminal 54. This accumulator means essentially comprises a select decoder 80, a main advance up-down counter 81 and an auxiliary advance up counter 82. The rate multiplier output terminal 54 is coupled as an input to both the select decoder 80 and a count terminal (>) of the auxiliary advance up counter 82. The auxiliary ad¬ vance up counter 82 receives a reset signal by means of a direct connection to the terminal 34 at which the Si pulses are produced. The up counter 82 is a four bit binary counter and produces count outputs at terminals 83 through 86 which are coupled as inputs to preset terminals P j _ through P4 of the main advance up-down counter 81. The select decoder 80 receives three inputs in addition to the input from the rate multiplier output terminal 54 and pro¬ duces a main output at a pulse terminal 87 and a latched advance output signal Si at a terminal 88. The select decoder 80 receives the delayed advance pulses S ] _D by means of a direct connection to the terminal 40, and the decoder also receives the pulses C3 from a direct input connection to the terminal 30. In addition, the select decoder 80 also receives an input signal termed SSp from a spark logic circuit 90. The signal SSp is a signal produced by the spark logic circuit 90 at the desired time occurrence t x of spark ignition and this signal is very short in duration (one period of the -high frequency clock pulse signal C p ) . The manner in which the spark logic circuit 90 creates the signal SSp will be subsequently discussed. For the time being it is sufficient to note that this signal occurs at times t x which represents the time at which spark ignition will occur according to the ignition control system 10. It should be noted that at the output terminal 88 of the select decoder 80 the latched output signal S L pro- duced at this terminal is initiated in response to the delayed advance signal S D and is terminated at the time t χ . The output produced by the select decoder 80 at the main output terminal 87 essentially comprises the pulse signal C3 during the pulses SiD (occurring at the times tiD) until the time t χ at which spark ignition occurs. After the times t x until times tj jj the decoder 80 directly couples pulses at the rate multiplier output terminal 54 to the main terminal 87. The terminal 88 of the select decoder 80 is directly coupled as an input to an up-down control terminal (U/D) of the main up-down advance counter 81. The terminal 87 of th select decoder is directly coupled to an input clock termi¬ nal (>) of the advance counter 81. A preset enable (PE) input terminal of the advance counter 81 directly receives the signal SSp by means of a direct connection to the outpu terminal 89 of the spark logic circuit 90. An input reset terminal of the advance counter 81 receives a power on reset signal POR by means of a direct connection to a terminal 91. This power on reset signal is merely utilized to initiate operation of the ignition con- trol system 10 in response to the initial application of power to the ignition control system. This is accomplished by means of a capacitor 92 coupled between the terminal 91 and a power on reset terminal 93 that receives positive power when power is applied to the ignition system control 10. The terminal 91 is coupled to ground through a resisto 94. Thus the components 91 through 94 provide for a positive impulse at terminal 91 upon the first application of power to the power on reset terminal 93, and this is utilized to initiate the resetting of the advance counter 81. The advance counter 81 produces an output at a zero detect terminal 94 and this output is produced whenever the advance counter counts down to or through a count of zero. Essentially, the auxiliary advance- counter 82 is reset at the times t by the Si pulses. The counter 82 then proceeds to count up in accordance with the pulses passed b the rate multiplier 53 and provided at the output terminal 54. This count is registered in the four bit binary output terminals 83 through 86. At the time tx the signal SSp pro¬ duces a positive spike at the preset enable terminal of the main advance counter 81. This results in instantaneously transferring the count at the output terminals 83 through 86 of the auxiliary advance counter 82 into the main advance counter 81 at the times t x . At this same time the latch signal at the terminal 88 (S j L) is terminated resulting in the up-down control terminal of the advance counter 81 re- ceiving a control input which tells it to count up any subsequently received clock pulses at its clock input termi¬ nal. At the times t χ , the select decoder 80 now channels the pulses produced at the output terminal 54 of the rate multiplier through the select decoder 80 and its output terminal 87 into the input clock terminal of the advance counter 81. The result of this is that the advance counter 81, after the time t x , essentially acts as if it had continuously counted all of the pulses produced at the terminal 54 since the initial time t ] _. The reason that the counter 81 did not directly count all of the clock pulses at the terminal 54 from the time t j _ to the time t x was because the counter was engaged in a down counting operation at that time which determines the occurrence of spark ignition. This will now be explained in detail. From the time t x until the next time t j , the advance counter 81 continues to count up all of the pulses produced at the output terminal 54 of the rate multiplier 53. Thus at the next time t j a maximum count is obtained by the main advance counter 81 which is related to the actual time difference between the periodic occurrence of synchronized advance sensor pulses S j _ at the times t . This means that the maximum count obtained by the counter 81 is related to engine speed and that the ROM 48 and rate multiplier 53 control this relationship in a piecewise linear manner to obtain the correct non-linear relationship between the maximum count in the advance counter 81 and engine speed, as well as the relationship between the maximum count and the sensed engine vacuum pressure. At the time occurrences t j _D, which occur just after each of the synchronized advance pulses S j , the select decoder 80 produces a latched signal S L at the terminal 88 which now instructs the advance counter 81 to count dow instead of up. Simultaneously, the select decoder 80 now channels the fixed frequency clock pulses C3 to its output terminal 87. The end result is that the main advance counter 81 will now count down at a fixed rate determined the occurrence of the pulses C3 until a zero count is obtained and a zero detect signal is produced at the termi nal 94. At this time, this zero detect signal will be received by the spark logic circuit 90 and result in produ ing the spark occurrence signal SSp which will terminate further down counting, load the count of the auxiliary advance counter 82 into the main counter 81 and initiate t main counter 81 up counting the pulses produced at the terminal 54. The operation of the components 80 through 82 is probably best understood by referring to Figures 101 and 10J. Figure 101 represents the accumulated count in the auxiliary advance counter 82. This count is essentially t non-linear pulse occurrences which occur at the output ter minal 54 of the rate multiplier 53. At the times t x at which the pulses SSp occur, the count of this counter is directly transferred to the advance counter 81 by means of preset enable circuitry. Preset enable circuitry for counters is very well known and merely results in loading counter with a preset count in response to an actuation pulse being received at a preset enable terminal. Figure 10J illustrates the count in the main advance counter 81. This figure illustrates that at the times t a maximum count is obtained by the advance counter 81. Th at times tj_D the counter 81 will count down at the fixed rate determined by the rate occurrence of the signal C3, whereas the up counting of this counter was determined by the ROM 48 and rate multiplier 53 implementing a stepwise rate of increase of pulse counts. U.S. Patent 4,104,997 clearly illustrates how such a stepwise increasing rate combined with a linear decreasing rate will result in accur- ately determining the spark time occurrence for internal combustion engines so that a proper advance versus engine speed relationship is developed. Since the equations demonstrating this relationship are contained in the referred to issued U.S. patent, they will not be repeated here. From the foregoing statements it should be evident that the decoder 80 and counters 81 and 82 effectively form an accumulating means for the pulses produced at the output terminal 54 of the rate multiplier 53. At the times t D , this accumulated count is then linearly decreased at a fixed rate determined by the time occurrence of the pulses C3 until a zero detect signal is produced at the terminal 94. This zero detect signal represents the desired spark timing occurrence, and the spark logic circuit 90 utilizes this signal to produce the signal SSp at the terminal 89 as well as produce a composite signal (dwell/spark) at an output terminal 100 which contains both dwell and spark timing information. This composite signal at the terminal 100 is then coupled to an input terminal 101 of an output predriver 99 which supplies an output at a terminal 102 to a final driver stage 103, in an ignition coil power stage 98 (shown dashed) , that controls the excitation of the primary winding 104 of an ignition coil. A high voltage secondary winding 105 of the ignition coil is coupled to the spark gaps of a two cylinder engine to produce ignition pulses therein. A primary ignition coil current sensing resistor 106 is contemplated as sensing the current through the primary coil 104 and providing a feedback signal at a terminal 107 which is coupled as an input to the output predriver. This is utilized to maintain constant primary ignition coil current excitation in a well known manner. The output pre-driver 9 also receives an input at a terminal 109 related to actual battery voltage magnitude and another input at a terminal 110 related to whether or not an engine stall condition has occurred. If engine stall, abrupt slow crankshaft rotation has been detected, then the current through the primary coi 104 will be slowly decreased so as to remove energization from this coil without generating a spark until the engine stall condition has been rectified. The battery voltage magnitude signal at the terminal 109 is utilized to alter the ignition coil current driving signal to obtain constant energy spark ignition despite variations in battery voltage The output pre-driver 99 and the ignition coil power stage 98 are contemplated as comprising standard electronic igni- tion system components and therefore the details of these components will not be discussed since they do not form par of the present invention. The spark logic circuit 90 which creates the dwell/ spark control signal at terminal 100 receives the master clock pulses Cp from a direct connection to the terminal 26. The circuit 90 also is directly connected to the terminals 34 and 38 for receiving the signals S and S2, respectively. The spark logic circuit 90 receives the POR signal at a reset terminal for initiating the logic compo- nents contained in the circuit 90 in response to the initia application of power to the electronic ignition control system 10. The circuit 90 also receives the zero detect signal produced at the terminal 94 of the main advance counter 81. In addition, the spark logic 90 also receives dwell initiation signal by means of a direct connection to an output terminal 120 of a dwell circuit 121, and the cir¬ cuit 90 also receives a slow speed detect signal from an output terminal 122 of a slow speed decoder 123. In re¬ sponse to all of these inputs the spark logic circuit 90 produces the signal SSp at the terminal 89 wherein the SSp signal is a pulse at t x which exists for one clock pulse period of the pulses Cp. The circuit 90 will also create a combined dwell initiate and spark timing occurrence output signal at the output terminal 100. Essentially, once the spark logic circuit 90 has been reset by the application of power to the electronic ignition control system 10 by the POR signal, the logic circuit 90 will receive dwell initiate signals from the terminal 120 and spark timing occurrence signals from the terminal 94 for each cycle of cylinder compression. If for some reason a dwell initiating signal has not been received by the spark logic circuit 90 prior to the occurrence of the pulse S which is generated at the maximum possible advance point of crankshaft rotation, then the spark logic circuit 90 will initiate dwell at the times t corresponding to the occurrence of the pulses S ] _ . Similarly, if for some reason a spark ignition has not occurred by the times t2 at which the pulses S2 occur, then the spark logic 90 will create a spark occurrence at these times. Actually, when the slow speed decoder 23 determines that engine rotating speed is below a predetermined minimum level, the signal at the terminal 122 insures that dwell will be initiated at the times t j _ and that spark will occur at the times t2- This provides a dwell equal to 35 degrees of crankshaft rotation for slow speed conditions and provides for spark ignition at essentially top dead center of the cylinder compression cycle. For engine speeds above this predeter¬ mined slow speed, the signal at the terminal 122 allows dwell to be initiated by the signal at the terminal 120 and spark to be determined by the zero detect provided at the terminal 94. The signal produced at the terminal 100 is initiated in response to when dwell is desired to commence ( trj ) and is terminated in response to when the spark logic 90 determines spark ignition should occur (t x ) . A typical embodiment for the spark logic circuit 90 is illustrated in Figure 7. The power on reset connection has not been shown in Figure 7 in order to simplify the diagram All of the components in Figure 7 correspond to standard logic gate components and flip flop devices. The engine stall indicating signal produced at the terminal 110 is the output of an engine stall counter 125 which receives a reset input signal by a direct connection to the terminal 34. The counter 125 receives a counting clock input signal by means of an input direct connection t the terminal 47 of the main up counter 41. In this manner, if the stall counter 125 determines that between consecutiv times ti at which the synchronized advance pulses S j _ occur, the main up counter 41 has registered a predetermine number of changes in the most significant bit of the counte which is connected to the terminal 47, then the counter 125 will indicate that the count being registered by the main u counter 41 is too high. This indicates that the actual tim elapsed between consecutive times t ] _ is too great thus indicating that the engine has stalled by virtue of the fac that the engine crankshaft is not rotating above a predeter mined speed. When this is determined, a stall indicating signal at the terminal 110 will be received by the output predriver 99 and result in appropriately modifying the output of the pre-driver to take into account this condi¬ tion. The internal construction of the stall counter 125 merely consists of a resetable pulse counter which develops an output whenever the pulse count is above a predetermined threshold. Readily available logic circuits can implement such a function. The slow speed decoder 123 essentially works on a similar principle to the stall counter 125. The slow speed decoder 123 determines when the count in the main up counte 41 exceeds a predetermined maximum count. This accomplishe by coupling the terminals 43 through 47 as inputs to the slow speed decoder 123. The decoder 123 is reset at times tiD via a connection to terminal 40. The decoder also receives the pulses S^ via a direct connection to the terminal 34 and it receives a power on reset pulse via a direct connection to the terminal 91. In response to all of these inputs the decoder 123 produces a slow speed detection at the terminal 122 at times t j _ whenever the count of the main counter indicates that the actual time between the S j _D pulses exceeds a predetermined maximum time. Whenever this occurs, this indicates that the engine speed is below a predetermined minimum speed, and the signal at the terminal 122 is received by the spark logic circuit 90 and results in initiating dwell at the times t j and causing spark igni- tion to occur at the times t2. Of course the engine speed which actuates the stall counter 125 is an engine speed which is much less than the predetermined engine speed which resulted in actuating the slow speed decoder 123. Figure 6 illustrates a typical embodiment for the slow speed decoder 123 and the components in Figure 6 represent standard logic circuit components used for a typical implementation. It should be noted that Figure 5 illustrates a typical digital circuit ' implementation for the select decoder 80. In Figure 5 controllable gates 126 and 127 are illustrated. These gates operate as selective open or short circuits between there throughput terminals in response to the digital logic signals present at their respective control terminals 128 and 129. It should also be noted that Figure 4 illustrates a typical digital circuit implementation for the advance and reference buffers 21 and 22, the pulse synchronizers 33 and 37, the delay circuit 39 and the inhibit circuit 36. Again it should be noted that the logic circuit implementations shown in Figure 4 comprise standard digital logic circuits. The inhibit circuit 36, besides producing a four millisecond delay pulse at the terminal 35 in response to receiving a spark ignition signal (SSp) and in response to the received Cl pulses provided as a timing duration input, also provides a two millisecond delay signal after spark ignition at an output terminal 130. The terminal 130 is IJUREA C/ OMPi: Λ, 1PO >. coupled to the dwell circuit 121 and the two millisecond signal serves to inhibit the operation of the dwell circuit until at least two milliseconds after the occurrence of spark ignition. This is required in order to prevent 100 percent dwell from occurring at very high engine speeds. I 100 percent dwell were to occur then no spark ignition woul be permitted since current excitation for the ignition coil primary winding 104 would always be applied. Essentially the inhibit circuit 36 merely utilizes the signal (SSp) at the times t χ to initiate two different monostable time periods which are provided at the terminals 35 and 130 to implement different delays for circuitry in the electronic spark igntion control system 10. The de¬ tailed configuration of the inhibit circuit 36 will not be specifically recited since the embodiment in Figure 5 is a typical embodiment using standard components and many other embodiments could accomplish this desired function. Typical embodiments for the dwell circuit 121 will now be discussed. A first such typical embodiment 121 is illustrated in Figure 2 and another embodiment 121' is illustrated in Figure 8. In Figure 8 prime notation is utilized to identify substantially similar corresponding components. The specific embodiments of dwell circuit 121 shown in Figures 2 and 8 were developed by co-workers of th present inventor and are described in the two copending U.S applications referred to in "Cross Reference to Related Applications" . In both of the dwell embodiments shown in Figures 2 an 8, the dwell circuit 121 (121') receives counter inputs fro the main counter output terminals 42 through 47 at preset input terminals P ] _ through Pg of a dwell down counter 131 (131') . The terminal 34 at which the S^ pulses are produced is directly coupled to a preset enable terminal of the dwell down counter and a counting clock pulse input terminal 132 (132') for the dwell down counter is provided. For the dwell circuit embodiment illustrated in Figure 2, the terminal 31 at which the pulses C4 are produced is coupled through a controllable gate 133 to the terminal 132. The terminal 132 is also coupled as a pulse counter input to an auxiliary dwell counter 134 which has a reset terminal directly coupled to the terminal 40 for receiving reset pulses at the times t D corresponding to the pulses S D. The count output of the auxiliary dwell counter 134 is coupled to a maximum count logic circuit 135 which is in- tended to produce a low output signal at its output terminal 136 in response to the count in the auxiliary dwell counter reaching or exceeding a predetermined maximum count. The terminal 136 is directly connected to a control terminal 137 of the through gate 133. In this manner, the auxiliary dwell counter 134 insures that after the reception of reset pulses SjD, the through gate 133 will pass a precise number of clock pulses as inputs to the input terminal 132 of the dwell down counter 131 and auxiliary counter 134. At the times ti, the count of the dwell counter 131 is preset to the maximum count obtained by the main counter 41, wherein this maximum count is directly linearly related to engine crankshaft speed. The auxiliary dwell counter 134 and controllable gate 133 effectively result in, subse¬ quently at times t D, having the dwell down counter 131 rapidly count down a predetermined number of counts from the maximum speed related count obtained by the main counter 41. It should be noted that the rate of down counting occurs at the relatively high repetition frequency of the signal C 4 , whereas the rate of up counting the main counter 41 occurs at the substantially slower rate of occurrence of the pulses Cj. This results in the dwell down counter 131 effective¬ ly instantly subtracting (at times t^D) the predetermined number of C4 pulses passed through the controllable gate 133 from the maximum count which was pre-set into the dwell down counter 131 at the times t ] _ by the synchronized pulses Sj . For the dwell circuit in Figure 2, the terminals 42 through 47 of the main up counter 41 are also coupled as inputs to a count comparator 138 which also receives the output count of the dwell down counter 131. When the count indicated by the terminals 42 through 47 equals or exceeds the count being held (after down counting has ceased) as th output count of the dwell down counter 131, the comparator 138 will produce a logic signal indicating this condition a an output terminal 139. The terminal 139 is coupled to an input set terminal 140 of a latch device 141. The output o the latch device 141 is coupled through a controllable gate 144 to the output terminal 120 of the dwell circuit 121 and a reset terminal 142 of the latch 141 is directly coupled t the terminal 34 at which the S j _ signal is produced. The two -millisecond inhibit signal produced at the terminal 130 is coupled to a control terminal 143 of the controllable gate 144. The dwell circuit shown in Figure 2 operates as follows. At the time occurrence tj_ of the synchronized advance pulses S ] _ , the maximum count in the main counter 41 is preset into the dwell down counter 131. At times t D after the maximum count of the main counter 41 is loaded into the dwell down counter 131, the circuitry 132 through 137 has the down counter 131 rapidly count down a predetermined number of counts. Preferably this predeter¬ mined number of counts which occur at the high fixed frequency of the pulses C4 will be equivalent to 6 milli¬ seconds of real time as measured by an equivalent number of pulse counts at the frequency of the signal pulses C . At the .times tj_D after the pre-setting of the dwell down counter 131, the main up counter 41 is reset by the pulses S]_D. At approximately this time the dwell down counter 131 will have completed its effective subtraction o a predetermined number of counts from the maximum count preset into the dwell down counter 131. Thus the comparato 138, just after the times t D, will compare the subtracted output count of the dwell down counter 131 with the newly initiated count of the main up counter 41. Whenever the main up counter count reaches or exceeds the subtracted down count of the dwell counter 131, the comparator 138 will produce a high logic state at its output terminal 139 which will result in setting the latch 141 whose output at the terminal 120 signals the desired initiation of coil excita¬ tion (dwell) . This mode of operation is essentially illustrated in Figure 10P wherein the vertical axis repre¬ sents the count being stored in a counter and the horizontal axis represents time. Essentially between first and second time occurrences t j _D and t j the main counter 41 produces a running count by counting the pulses C j _ which have an engine speed inde¬ pendent repetition rate. At times t j _ a maximum running count related to engine crankshaft rotational speed is loaded into the down counter 131. The down counter then effectively subtracts a predetermined number of C4 pulse counts to arrive at a resultant subtracted count at substan¬ tially the time occurrence ti . This resultant subtracted count is then utilized to produce dwell ignition occur¬ rences, preferably at a substantially fixed time duration prior to the next time occurrence of t . In Figure 10P, the count of the dwell counter 131 is illustrated as a solid line whereas the count of the main up counter 41 is illustrated as a dashed line. Figure 10P illustrates at the times t j _ a maximum count is preset into the dwell down counter 131 and then a predetermined number of counts is rapidly subtracted (at times t j _D) from this number. Subsequently the dwell counter 131 maintains this subtracted count as its output. At the times t j _D, the count in the main counter 41 is set to zero and this counter will commence up counting in response to the pulses C ] _ resulting in linear incrementing of the count of the counter 41. At a subsequent time t DW the count in the main ' ~ 0MPI-__ counter 41 will equal the subtracted count being maintained by the dwell counter 131. At this time t_jw the compara¬ tor 138 will produce a logic signal that will set the latch 141 and thereby signal the initiation of dwell by the signa produced at the latch output terminal 120. The latch 141 will be reset upon the occurrence of the pulse signal S j _. The controllable gate 144 is utilized to insure that the dwell initiation signal at terminal 120 will not start until at least 2 milliseconds after the occurrence of spark ignition. This insures that 100 percent dwell will not be obtained, and that therefore the primary ignition coil winding 104 will not be constantly excited. This insures the occurrence of a spark for each cylinder when it is in its compression cycle, since if the primary winding always received current excitation no spark could be generated. Figure 8 illustrates another embodiment 121' of the dwell circuit which is similar to the embodiment shown in Figure 2. Identical reference numbers are utilized for identical components and prime notation is used for similar components . In Figure 8, output count terminals 42 through 47 of the main counter 41 are connected to preset inputs Pi through P of a dwell down counter 131" . A preset enable terminal of the dwell counter 131' is directly coupled to the terminal 34 such that the counter will be preset in response to the pulses S j . In Figure 8, a dwell counter overflow terminal is directly connected to a terminal 139' which is coupled to a terminal 140' that is directly connec ted to the set terminal of a latch 141' having its output connected to the terminal 120 through a controllable gate 144" . A reset terminal of the latch 141' is directly con¬ nected to the terminal 34 thus providing for resetting the latch 141' in response to the signal S^ . The controllable gate 144' has a control terminal 143' which is directly connected to the terminal 130 such that the controllable ,. .. ^O^ gate 144' will implement a minimum 2 millisecond delay after SSp for initiating a dwell signal at terminal 120. The dwell down counter 131' has a clock input terminal 132' which is coupled through a controllable gate 133' and an OR gate 160' to the terminal 31 at which the pulses C4 are present. An auxiliary dwell counter 134' has a reset terminal directly connected to the terminal 40 and a clock signal input terminal directly connected to an output termi¬ nal 159 of gate 133' . The output count of the auxiliary dwell counter 134' is coupled to a maximum count logic circuit 135' which produces an output signal at a terminal 137' whenever the auxiliary dwell counter count equals or exceeds a predetermined count. The terminal 137' is directly connected as a control input terminal to the controllable gate 133' , and this terminal is also coupled through an inverter stage to a control input terminal 150' of a controllable gate 151' coupled, together with OR gate 160' , between the terminal 132' and the terminal 28 at which the pulses C j are present. The OR gate 160' permits pulses passed by either of the controllable gates 133' or 151' to reach the terminal 132' . The operation of the dwell circuit 121' illustrated in Figure 8 will now be described with reference to the graph shown in Figure 10Q which essentially illustrates the opera¬ tion of the dwell circuit 121' by illustrating the count of the dwell down counter 131' as a function of time. At the times t , the dwell down counter 131' is preset with the maximum count obtained by the main up counter 41. At the subsequent times t D, the count of the auxiliary dwell counter 134' is set to zero resulting in the controllable gate 133' passing a predetermined number of the rapidly occurring clock pulses C4. After the auxiliary dwell counter has counted this predetermined number of C4 pulses, the maximum count logic circuit 135' will open the controllable gate 133' and result in closing the WREAIΓ Oi * ΛPI A 4 WIPO . t ', 4 KNAT*35 controllable gate 151' . During this time, the dwell down counter 131' has effectively, instantaneously subtracted this predetermined number of counts from the maximum count which was preset into the dwell counter 131' . Subsequent t this subtraction, the dwell down counter 131' will continue down counting at a rate determined by the occurrence of the pulses Ci . It should be noted that this occurrence rate is the same occurrence rate at which the main counter 41 is being linearly incremented up to its maximum count represen tative of engine crankshaft speed. At a subsequent time fc DW fc he count in the dwell down counter 131' will reach zero and on the next count an overflow indication will be produced at the terminal 139'. This will result in setting the latch 141 and providing a dwell initiation signal at th output terminal 120 assuming at least a two millisecond delay between spark occurrence and dwell initiation. The dwell circuit in Figure 8 differs from that in Figure 2 in that the need for a complex count comparator such as the comparator 138 in Figure 2 is eliminated by the circuit configuration shown in Figure 8. This is accom¬ plished by having the dwell down counter 131 continue to count down at a rate determined by the C pulses after effectively subtracting a predetermined number of counts occurring at the rapid frequency of the signal 4. In this manner, the output of the dwell down counter 131' will reach zero at predetermined times t DW ahead of the pre¬ determined times t . This occurs since if no counts were subtracted and engine speed remained the same, then the dwell down count would overflow exactly at times ti. Thus the dwell circuits 121' and 121 insure that dwell initiatio will occur at a predetermined time prior to the occurrence of the advance pulses S at the times ti. The circuit 121' in Figure 8 accomplishes this end result without the use of the complex comparator 138 shown in Figure 2 and therefore is believed to be more economical since fewer O PI * connecting lines and log ic gates are required for the circuit 121 ' .

Claims: CLAIMS: 42 1. A digital signal processing circuit comprising: clock means (25, 27) for producing an input clock signal (C2) comprising a series of digital pulses having a predetermined rate (9.33 KHz) of occurrence; rate multiplier means (53) coupled to said clock means (25, 27) for receiving said input signal and producin a corresponding output signal by selectively multiplying (dividing) the rate occurrence of the input clock signal pulses in accordance with received control signals (A-D); control means coupled to said rate multiplier mean for producing and supplying said control signals for con¬ trolling the rate multiplication of said rate multiplier means, said control means comprising a read only memory means (ROM) (48) with the output of the ROM determining sai control signals (A-D); accumulator means (80, 81, 82) coupled to said rat multiplier means for receiving said output signal and accum ulating a count related to the pulse count of said output signal; wherein said control means characterized by, pulse width modulation means (41, 56) for receivin an analog signal and producing a periodic digital two state signal having a duty cycle related to the magnitude of the analog signal, and means (57, 55) coupling said digital two state signal as an input to said ROM, in addition to other inputs (A0-A5) received by said ROM, whereby the output of said ROM, which comprises said control signals, is a function of the magnitude of said analog signal, thereby causing the rate of occurrence of pulses in the output signal of the rate multiplier means to be a function of the magnitude of the analog signal while minimizing the memory storage required by said ROM and effectively causing the digital signal processing circuit to interpolate between rate multi plier means control signals stored by said ROM while mini¬ mizing the memory storage required by said ROM. 2. An electronic ignition control system comprising: engine crankshaft position sensor means (15, 17) for developing periodic pulses related to engine crankshaft positions; digital signal processing circuit means comprising, clock means (25, 27) for producing an input signal (C2) comprising a series of digital pulses having a prede¬ termined rate of occurrence, rate multiplier means (53) coupled to said clock means (25, 27) for receiving said input signal (C2) and producing a corresponding output signal by selectively mul¬ tiplying (dividing) the rate occurrence of the input signal pulses in accordance with received control signals, control means (41, 56, 59) coupled to said rate multiplier means for producing and supplying said control signals for controlling thέ rate multiplication of said rate multiplier means, said control means comprising a read only memory means (ROM) (56) with the output of the ROM determin¬ ing said control signals, and accumulator means (80, 81, 82) coupled to said rate multiplier means for receiving said output signal and accum¬ ulating a count related to the pulse count of said output signal, between said perodic crankshaft position pulses; and spark timing means (90, 98, 99) for utilizing the accumulated count in said accumulator means to determine the occurrence of spark ignitions; wherein said control means is characterized by, pulse width modulation means (56) for receiving an analog signal and producing a periodic digital two state signal having a duty cycle related to the magnitude of the analog signal; and means (57, 55) coupling said digital two state signal as an input to said ROM, in addition to other inputs (A Q -A5) received by said ROM, whereby said pulse width modu- lation means effectively allows interpolation between rate multiplier means control signals stored by said ROM while minimizing the • emory storage required by said ROM. 3. An electronic ignition control system according to claim 2 in which said pulse width modulation means includes vacuum sensor means (59) for producing said analog signal wherein the magnitude of said analog signal is related to the sensed engine vacuum pressure.

Inventors: WRATHALL R
Applicants: MOTOROLA INC
Application year: 1980
Main classification: F02P5
IPC codes: F02P3, F02P5