US 3610806 A
Description (OCR text may contain errors)
U United States Patent [1 1 3,610,806
 lnventor Ralph Deutsch 3,435,123 3/1969 Schrecongost 84/ 1 .26
' Sherman Oaks, Calif. 3,446,904 5/ 1 969 Brand et a1. 8411.26 X  Appl. No. 872,600 3,465,088 9/1969 Kohls 84/ 1.26  d a Primary Examiner-D. F. Duggan mlmte Assistant Examiner-Stanley J.Witkowski  Ass'gnee Norm l' Rockwell Corporation AnomeysL. Lee Humphries, l-l. Fredrick Hamann and Edward Dugas  ADAPTIVE SUSTAIN SYSTEM FOR DIGITAL ELECTRONIC ORGAN 15 Claims, 14 Drawing Figs ABSTRACT: In an electronic organ the 30111811011 of keys 1n accordance with corresponding audible tones to be U-S. t t "SA/.26, reproduced ffects the gating of pulses into time lots ofa time 84/l-13 division multiplexed signal, the time slots of the multiplexed liftignal being structured in accordance a desired assign- Fleld of Search 84/l .03, men sequence to correspond to the keys and to be represen- 1.26, 1.01, 1.13, 1.24, DIG. 12 tative thereof for identifying each note capable of being generated by the organ. A set of note, or tone, generators with  References Cited availability assignment control means for capturing a pulse in UNITED STATES PATENTS the multiplexed signal are each rendered responsive to a given 2,401,372 6/1946 Rienstra 84/ 1.26 captured pulse for generating the tone represented by that 2,601,265 6/1952 Davis 84/1.28 pulse. The appropriate tone is generated digitally in the form 2,855,816 10/1958 Olson et 84/1.03 of amplitude samples of a waveform stored in a memory, and 2,900,861 8/1959 Davis 84/l.28 the amplitude samples are subsequently subjected to digital- 2,989,885 6/1961 Pearson...... 84/l.19 to-analog conversion for ultimate production of the audible 3,007,362 1 1/1961 Olson et a1 84/1.03 output of the organ. Attack and decay of the tone waveform 3,316,341 4/1967 Peters0n..... 84/1.24 envelope are simulated by appropriately scaling the amplitude 3,358,068 12/1967 Campbell 84/l.01 samples at the leading and trailing portions of the waveform 3,515,792 6/ 1970 Deutsch 84/1.03 envelope. An adaptive sustain operating mode is provided by 3,519,723 7/1970 Wiest 84/1.26 which thelength of decay is varied according to the availabili- 2,918,576 12/ 1959 Munch 84/1 .26 X ty of tone generators where the number of tone generators is 3,383,453 5/1968 Sharp 84/1.26 limited.
- MASTER RELEASE 2 CLOCK [M00 384 KEYBOARD I53 SE E COUNTER I52 1g IQJGLJAFCLEXED 1,\ ass in TIME SLOTS 1 V ASSOC W/SELECTED KEYBOARD 5 I-l COMMUTATOR DECAY coum M I FOR TONE GENS GATES I ASSIGNED T0 35 I 155-2 SELECTED COUNT (new I KEYWR sxcrzums I smc 1 GHEST I PULSES i I62 pnsssur i 1 L COUNT 6 COMPARATOR TONE GEN j CLOCK ASSIGNMENTS 1 DECAY "7o '72 TONE GEN EOUNT FROM READ T I E nu uuu CLAIM v RECOGNITION MONITOR FL IPFLOPS 5 TONE GEMS LOGIC 1 REGISTER F 53 L SATURATED l I TO SYNC a MODE F-F PULSES as" no OF PROPER TONE GEN PAIENIEIIUCT SIHII 3,510, 0
' SHEET 1 UF 7 KEYBOARD COUNTER MASTER CLOCK 4 KEYBOARD OCTAVE 'NOTE(KEY) v I I I H I I I I I I II III I I I I I I I (I2 LINES) DECODER Fla. 1 (FIG. 2)
'0 J scA)- H SWITCHING MU TIPLEXED L ARRAY ENCODER SIGNAL FROM om: STAGE OF FROM EIGHT STAGES 0F KEYBOARD SECTION 4 IOCIAVE SECTION 3 .-I- J L i O O C O i DECODER 7 i (no.1) T 8-6 L l |0 mvnmons J RALPH DEUTSCH ATTOR N EYS EIGHT OF 32 BUSES T0 SWITCHING ARRAY II YPATENTEUDBI 512m sum 3 or 7 3 6 KEY CONTACT AFLIII MULTIPLEXED WAVEFORM (PULSES CORRESPONDING T0 NOTES PLAYED) W TIME ZERO
U P T U 0 s W T EA m wmw T N I l\ G -!.I' 2 lllllll ll mm F. mmm F. N N 6 E S 2 D E X E P L A LN U m M S (SAMPLE POINTS) INV ENTUIS ATTORNEYS E PATENTEU am am 3,610,806
' saw u or 7 CLAIM SELECT| ED M SELECTZ l M SELECTIZ CLA!MED SHIFT MASTER CLOCK I RESET M00 384 ZERO'COUNT i KEYBA .RD sa coumea COUNTER RESET KEY RELEASE SIGNAL TO I\ ATTACK] M 62 DECAY LOGIC KE g messeo lfi l (l SET CLAIM MULTIPLEXED CLAW DECAY LOGIC SIGNAL AND TO SET CLAIMED i T0 TONE &M ,J CLAIMi ean 28i SELE T 5o DECAY NOT CLAIMED 37 N COMPLETE INVERT 1 263'? mvsu'rons El 60 F/G. 7B RALPH DEUTSCH ZERO. COUNT DETECTOR av W M flaw ATTORNEYS PATENTED BET 5l97l SHEET 7 [IF 7 KEY KEY DEPRESS R ELEASE T 7 WHOLE VALUE OR I J I XtfLEISSS DELAY l I30 MONO F l38 :IMEIIY CONVERTER FREQ 2 I UP-DOWN A22 CLOCK TIME COUNTER DISABLE SCALE MULTIPLIERQ I33 IFACTOR 2:. MEMORY 2o ADDRESS ADDRE COMPARATOR DECQDER I26 MAX COUNT ATTACK/DECAY CONTROL UNIT SCALED E AMPLITUDE FREQ VALUES I FREQ MODE TO COUNTER I /5.12 I22 (mm) F F I 4 TIME mvnu'ron's I RALPH DEUTSCH ATTURN l-zvs ADAPTIVE SUSTAIN SYSTEM FOR DIGITAL- ELECTRONIC ORGAN BACKGROUND OF THE INVENTION depends upon availability of tone generators. The term"organ" is used throughout this specification and the claims thereof in a generic sense (as well as in a specific sense) to include any electronic musical instrument having a keyboard, such as an electronic organ, an electric piano, an electric accordion, and so forth, and in fact, the principles of the present invention are applicable to any musical instrument in which musical sounds are generated in response to the actuation of key switches, regardless of whether the switches are actuated directly, or indirectly in response to actuation of other, associated elements. The term key is also used in a generic sense, to include depressible levers, actuable on-ofi switches, touch or proximity responsive devices (such as capacitance or inductance-operated elements), closable apertures in a fluidic system adapted to produce a tonal response, and so forth.
2'. Description of the Prior Art The function of an electronic organ is to faithfully reproduce, or to simulateby electronic means, the sounds or "times developed by a true pipe organ upon selection of notes and other special effects by the organist. In order to produce other than an abrupt start and an abrupt end of the tone envelope generated when a particular key is depressed and released, respectively, it is desirable to simulate attack and decay of the tone by gradually increasing the tone envelope at the leading edge and gradually decreasing the tone envelope at the trailing edge. In conventional electronic organs, desired attack and decay may be conveniently handled by use of circuits having the necessary time constants or whose time constants may be adjusted according to the desired rise and fall of the waveform at the leading and trailing edges. Resistancecapacitance networks are commonly employed for such a purpose.
In the copending application of George A. Watson entitled "Multiplexing System for Selection of Notes and Voices in an Electronic Musical Instrument," assignedto the same assignee as the present invention, there is described an electronic organ in which every key of every keyboard is scanned in cyclic sequence. The actuation of a key or keys on any keyboard is entered as information in a parallel digital format developed by the scanning of the keyboards, and this parallel format is continuously converted to a serial format to provide information regarding key actuation in the form of digital data in appropriate time slots of a time division multiplexed signal which is supplied to the tone generating section of the organ. Each time slot of the multiplexed signal corresponds to a specific key of the organ to, permit identification of the notes associated with the respective keys and thereby to result in the generation of appropriate sounds in response to the playing of multiplexed signal tobring forth the appropriate tones corresponding to those keys that have been actuated are effective to produce digital amplitude samples of a waveform of the desired sounds at a frequency corresponding to the desired note frequency. Preferably, the number of such tone generators available in the organ is much fewer than the number of notes which can be produced.
Each of the limited number of tone generators provided is associated with tone generator assignment logic constructed and arranged to assign an available tone generator to data in I an incoming time slot in the multiplexed signal, so long as that data has not yet captured a tone generator. Each tone generator includes or has access to a memory means storing digital vthe keys. The tone generators which respond to the incoming representations of amplitude of the waveshapes to be synthesized, at a large number of sample points. When the tone generator iscapt ured by incoming data, the memory means associated with that tone generator is accessed to read out the amplitude samples in accordance with the frequency of the tone to be generated. Such an arrangement does not readily admit of the type of attack and decay systems which have been used with prior art types of electronic organs, unless the waveshape in its digital form is first converted to an analog waveform.
In the copending application of G. A. Watson and R. Deutsch entitled Attack and Decay System for a Digital Electronic Organ," assigned to the same assignee as the present invention, there is disclosed an attack and decay system for use in a digital electronic organ of the type disclosed in the aforementioned Watson application, and in which the duration of the attack or decay is controlled by a counter which may be selectively enabled to count timed pulses having a rate independent of the note'frequency, or to count cycles or half cycles of the specific note frequency. in essence, the counter serves to determine the abscissa in a graph of amplitude versus time for the attack or decay. The ordinate or amplitude scale of the graph is provided by a plurality of amplitude scale factors stored in a fixed memory accessed by the counter. The scale factors are read from the fixed memory as required and supplied to a multiplier which receives as a second input the digital amplitude samples being read from the tone generator memory, the multiplier forming the product of these two inputs to scale the leading and trailing portions of the note waveform.
It is frequently desirable to employ in an organ a sustain fea ture by which a keyed note is selectively caused to have a relatively longer decay time, typically on the order of.2 seconds,- than would otherwise occur.- The purpose of the sustain provision is to cause the note sound to dieaway gradually after the key is released. Usually only one manual, such as the upper manual, is operated in the sustain mode at any given time. Because of the limited number of tone generators available in the digital electronic organ briefly described above, a problem arises when sustain is used if'the organist should key several notes very quickly in succession byrunning a finger or fingers down the manual, to produce a glide or glissando effect. in
such an event the available note generators are very quickly fully assigned, i.e., theorgan rapidly becomes saturated,.aln d the further keying of notes in the glide will result only in voids, i.e., in the absence of sound when a key is depressed. Accordingly, it is the principal object of the present invention to provide means for varying the length of decay of a 'note' sounded in an electronic digital organ, of the type disclosed in the aforementioned Watson application, in accordance with the number of tone generators available for capture by digital data in the multiplexed signal containing the note information.
SUMMARY OF THE INVENTION Briefly, according to the present invention, an adaptive,
sustain feature is provided in the digital electronic organ to provide automatic variation of the durationof decay, when The adaptive sustain mode is always available but is entered.
only, and automatically, on the basis of internal information indicating (a) which tone generators have been committed to the manual demanding organ sustain, (b) which of these tone generators committed to sustain is producing a waveform envelope that has undergone the longest decay, and (c) which,if any, of the tone generators are idle and therefore available for assignment. In the normal sustain mode, the tone generator operation follows the normal assignment, decay, and release sequence so long as an unassigned tone generator is idle and available. However, as soon as all tone generators have been assigned, the system automatically enters the adaptive sustain mode in which any tone generator assigned to a note associated with a key on the manual having sustain effect, and which generator is supplying the waveform that has had the longest duration of decay, is switched immediately from a long decay (i.e., the normal sustain) to a relatively shorter decay (which may be the normal decay in the absence of the use of sustain). Quite clearly, this expedites the availability of a tone generator for capture of the next note request as in a glissando situation.
The adaptive sustain feature aptly reflects the fact that average sustain is a function of the rapidity with which the notes are successively keyed. That is to say, the faster the keying sequence, the smaller is the effective sustain interval. Assume, for example, that there are I2 note generators provided in the digital electronic organ and that at present a pedal note is being played in addition to a three note chord on a lower manual, and further, that the organist now begins a glissando on the upper manual on which sustain is being used. In that event, there are n= (total number of tone generators) (number of tone generators committed to keyboards other than that using sustain), or n=l24=8 tone generators available for the adaptive sustain. If the glissando is played at a rate, r, of 12 notes per second, then the effect sustain time, T,, is
T,=n/=8/12=0.67 seconds. Observe that the last n notes being played will have the full sustain time.
From a musical standpoint, the adaptive sustain feature of the present invention is extremely desirable because it very rapidly damps out the older notes, which appear only to provide a noiselike background masking the current notes.
BRIEF DESCRIPTION OF THE DRAWINGS In describing the present invention, reference will be made to the accompanying figures of drawing in which:
FIG. I is a simplified block diagram of a system for producing a time division multiplexed signal containing a recycling sequence of time slots, each slot associated with a particular key of the organ, and in which each time slot contains data indicative of the actuation of the associated key;
FIG. 2 is a circuit diagram of an exemplary decoder for use in the system of FIG. 1;
FIG. 3 is a more detailed circuit diagram of the switching array and encoder used in the system of FIG. 1;
FIG. 3A is a circuit diagram of an alternative encoder to that shown in FIG. 3, for use in the system of FIG. 1;
FIG. 4 is a circuit diagram of the input-output bus connecting means at each intersection of the switching array of FIG. 3; FIG. 5 is illustrative of a multiplexed waveform developed by the system of FIG. 1 and responsive to actuation of selected keys; 4
FIG. 6 is a simplified block diagram of a generator assignment and tone generating apparatus for processing the multiplexed signal produced by the system of FIG. I to develop the desired tones as an audible output of the organ;
FIG. 7A and 78 together constitute a circuit diagram of one embodiment of the tone generator assignment logic for the system of FIG. 6;
FIG. 8 is a block diagram of a tone generator suitable for synthesizing the frequency of every note capable of being played in the organ, for use with the assignment logic of FIGS. 7A and 7B in the system of FIG. 6;
FIG. 9 is illustrative of a complex waveshape of the type produced by a pipe organ, and of the sample points at which amplitude values are taken for simulation at selected note frequencies;
FIG. 10 is a block diagram of an attack and decay control unit for use in the system of the preceding figuresof drawings; and
FIG. 11 and 12 are block diagrams of a preferred embodiment of an adaptive sustain unit for use with the electronic musical instrument of the type shown and described with reference to the preceding figures of drawing.
DESCRIPTION OF THE PREFERRED EMBODIMENT Referring to FIG. 1, the keyboard multiplexing system or note selection system includes a keyboard counter I which is implemented to provide a specified count for each key of each keyboard (including manuals and pedal divisions) of the organ. If, for example, the electronic organ in which the multiplexing system is used has four keyboards, such as three manuals and a pedal board, each encompassing up to eight octaves, then keyboard counter 1 should have the capability of generating 4X8 l2=384 separate counts (digital words). It is essential that the counter be capable of developing a count representative of every key on every keyboard of the organ; however, it may be desirable to provide a counter that can produce a count greater than the number of available keys in order to have available certain redundant counts not associated with any keys. Such redundancy is readily provided by simply utilizing a counter of greater capacity than the minimum required count.
Keyboard counter 1 is divided into three separate sections (or separate counters) designated 2, 3 and 4. The first section (designated 2) is constructed to count modulo 12 so as to designate each of the 12 keys associated with the 12 notes in any octave. The second section (designated 3) is adapted to count modulo 8, to specify each of the eight octaves encom- ,passed by any of the four keyboards. The last section (designated 4) is designed to count modulo 4 to specify each keyboard of the organ. Therefore, the overall keyboard counter is arranged to count modulo 384, in that at the conclusion of every 384 counts, the entire set of keyboards have been covered (scanned) and the count repeats itself. To that end, each counter section may be composed of a separate conventional ring counter, the three counters being connected in the typical cascaded configuration such that when section 2 reaches its maximum count it advances the court of counter section 3 by one, and will automatically initiate a repetition of its own count. Similarly, attainment of its maximum count'by counter section 3 is accompanied by advancement of the count of section 4.by one.
Advancement of the count of counter 2 is accomplished by application of clock pulses thereto from a master clock source 5 which delivers clock pulses at a sufiiciently rapid repetition rate (frequency) to ensure resolution of depression (actuation) and release (deactuation) of any key on any keyboard, i.e., to supply a pulse at the instant of either of these events. Scanning of all keyboards of the organ at a rate of 200 or more times a second is deemed quite adequate to obtain this desirable resolution. For the exemplary keyboard counter set forth above, this is equivalent to a minimum of 20OX384=76,80O counts per second, so that a master clock delivering clock pulses at a rate of kc./s is quite suitable.
A-total of four lines emanate from counter 4, one line connected to each ring counter stage, to permit sensing of the specific keyboard which is presently being scanned. Similarly, eight lines are connected to the eight ring counter stages, respectively, of octave counter 3 to detect the octave presently being scanned. Thus, a total of 12 lines extend from counters 3 and 4, and these twelve lines can carry signals indicative of 32 (8X4) possible states of the keyboard counter. The specific one of the 32 states, representative of a particular octave on a particular keyboard, which is presently being scanned is determined by use of a decoder circuit 7 composed of 32 AND gates designated 8-1, 8-2, 8-3,. 8-32 (FIG. 2), each with two input terminals and an output terminal. The gates are arranged in four groups of eight each, with every gate of a particular group having one of its two input terminals (ports) connected to one of the four lines of counter 4. Distinct and different ones of the eight lines from counter 3 are connected to the other input terminal of respective ones of the eight AND gates of that group. A corresponding situation exists for each group of AND gates, with the only difference being that each group is associated with a different output line of counter section 4. Using this arrangement, the decoder logic designates every octave of keys in the organ by a respective driver pulse when a count corresponding to that octave is presently contained in the counter. I I
The output pulses deriving from the AND gates (or drivers) of decoder circuit 7 are supplied on respective ones of 32 bus bars (or simply, buses), generally designated by reference number 10, to a keyboard switching array 1 1. From the preceding description, then, it will be clear that array 11 has one input bus 10 for every octave of keys in the organ (including every octave on every keyboard), and that a drive pulse will appear on each input bus approximately 200 times per second, the exemplary rate of scan of the keyboards, as noted above, for obtaining adequate resolution of operation of the keys. Switching array 11 also has 12 output buses, generally designated by reference number 12, each to be associated with a respective one of the 12 notes (and hence, the twelve keys) in any given octave. Array 11 is basically a diode switching matrix, in which spaced input buses 10 and spaced output buses 12 are orthogonally arranged so that an intersection or crossing occur'sb'tween each input bus and each output bus (see FIG. 3), for a" total of 384 intersections, one for each count of the keyboard counter 1. As is typical in this type of matrix, the crossed lines or buses are not directly interconnected. Instead, a "jump diode, such as that designated by reference number 13 in FIG. 4, is connected between the input bus 10 and the output bus 12 at each intersection, the diode poled for forward conduction (anode-to-cathode) in the direction from an input bus 10 to an output bus 12. Wired in series circuit or series connection with each diode 13 is a respective switch 14 which is normally open circuited and is associated with a distinct respective one of the keys of the organ, such that depression ofthe associated key produces closure (close circuiting) of the switch 14 whereas release of the associated key results in return of the switch to its open state. Alternatively, each of switches 14 may itself constitute a respectivekey of the various keyboards of the organ.
While switch 14 is shown schematically as being of mechanical single pole, single throw (SPST) structure, it will be understood that any form of switch, electronic, electromechanical, electromagnetic, and so forth, may be utilized,
the exact nature of the switch depending primarily upon the nature of the energization produced upon operation of the associated key. Switch 14, then, is adapted to respond to the particular form of energization or actuation produced upon operation of a key on any keyboard (or, as observed above, may itself constitute the key), to complete the circuit connecting associated diode 13 between a respective input bus 10 and a respective output bus 12 at the intersection of those buses, when the key is depressed, and to open the circuit connecting the diode between respective input and output buses at that intersection when the key is released. Positive pulses occurring at the rate of approximately 200 per second, for example, according to the timing established by master clock 5, are transferred from input bus 10 to output bus 12 via the respective diode 13 and closed switch 14 when the associated key is depressed. When a switch alone (i.e., without the series connected diode) would serve the basic purpose of transferring a signal between the input and output linesof array 11,-the diode provides a greater degree of isolation from sources of possible interference (noise) and acts to prevent feedback from output to input lines.
In FIG. 3, the output buses 12 from switching array 11 are connected to an encoder circuit 15 to which are also connected the 12 output lines, generally designated by reference number 16, from keyboard counter section 2. To produce an orderly arrangement in which each key of the organ is assigned a distinct and different time slot in a time-division multiplex waveform, the switches 14 associated with the respective keys areconveniently arranged in a specific sequence in the switching array 1]. Assume, for example, that a specific output bus 17of the switching array isto be associated with note A of any-octave, a second output bus 18 is to be associated with note 8 of any octave, and so forth. Then switches 14 in the row corresponding to output bus 17 in array or matrix 11 are associated with the keys corresponding to the note A in each octave of keys in the organ-The column position of each switch 14in matrix 11 corresponds to a specific octave of keys in the organ, and hence, to a specific octave encompassed by a specific keyboard of the organ.
Each of the output buses 12, including 17, 18, and so forth, is connected to one of the two input ports or terminals of a respective AND gate of the 12 AND gates 20-1, 20-2, 20-3, 20-12, of encoder circuit 15. An output lead 16 of counter section 2 associated with the ring counter stage designating the count for a particular note (key) in a given octave is' connected to the remaining port of an encoder circuit AND gate having as its other input a pulse on the output bus 12 associated with that same note. A similar arrangement is provided for each of the remaining 1 1 output lines 16 of counter section 2 with respect to the AND gates 20 and the output buses 12. Thus, for example, if output bus 17 (associated with the row of switches in matrix 1 1 for note A) is connected to one input terminal of AND gate 20-1, then output line 22 from the stage of counter 2. designating the count associated with note A is connected to the remaining input terminal of gate 20-1. The output terminal of each of AND gates 20 is connected to arespective input terminal of OR gate 23, the output of the OR gate constituting the output signal of the encoder circuit. By virtue of its structure, encoder circuit 15 is effective to convert the parallel output of array 11 to a serial output signal in accordance with the scanning of output buses 12 as provided by the advancing and repeating count sensedin the form of pulses '(at a rate of about 200 per second) appearing on output lines 16. The end result of this circuitry is the production of a time-division multiplex (TDM) signal on a single conductor 25 emanating from encoder 15.
As an alternative to the specific logic construction shown for encoder 15 in FIG. 3, the encoder may have the circuit configuration exemplified by FIG. 3A. Referring to the latter Figure, the encoder includes a shift register having l2 cascaded stages designated SR1, SR2, SR3, SR12, each connected to a respective output bus 12 of switching matrix 1 l to receive a respective output pulse appearing thereon. The shift register stages are loaded in parallel with the data read from switching array 11 on output buses 12, in response. to each of the pulses appearing (i.e., each time a pulse appears) on one of the 12 output leads 16 of note counter 2. That one output of the note counter which is to supply the load-com mand for all 12 stages of shift register 80 is selected to permit the maximum amount of settling time to elapse between each advance of octave counter 3 and keyboard counter 4 and the loading of the shift register. In other words, it is extremely desirable. that the data to be entered into the shift register from the switching array be stabilized to the greatest possible extent, and this is achieved by allowing the counters whose scanning develops this data, to settle at least immediately prior; to loading. Thus, the first note counter stage, or one of the: early stages, is selected to provide load pulses to shift register 80. t
Shift" pulses are supplied to the shift register by master clock 5, which also supplies note counter 2, to shift the con-- tents of each shift register stage to the next succeeding stage except during those bit times when the shift pulse is preempted by a load pulse from the note counter. Accordingly, shift register 80 is parallel loaded, and the data contents of the register are then shifted out of the register in serial format on encoder output line 25 until a one-bit pause occurs when another set of data is parallel loaded into the shift register, followed again by serial readout on line 25. This serial pulse train constitutes the time division multiplexed output signal of encoder 15 just as in the embodiment of FIG. 3 except that with the FIG. 3A configuration, decoder 7 (and the counters 3 and 4 supplying pulses thereto) undergo a greater amount of settling time.
It will be observed that this operation constitutes a parallelto-serial conversion of the information on output buses 12 to a time-division multiplexed waveform on the output line 25 of encoder l5.
In the TDM signal, each key has a designated time slot in the 384 time slots constituting one complete scan of every keyboard of the organ. In the specific example of the time base provided by master clock 5, the TDM waveform (shown by way of example in FIG. 5) is initiated about 200 times per second. This waveform contains all of the note selection information, in serial digital form on a single output line, that had heretofore required complex wiring arrangements. This waveform development will be more clearly understood from an example of the operation of the circuitry thus far discussed. It should be observed first, however, that all of the counter and logic circuitry described up to this point can be accommodated within a very small volume of space by fabrication in integrated circuit form using conventional microelectronic manufacturing techniques.
When the main power switch for the electronic organ is turned on, all components are energized to an operational state, the master clock delivering pulses to keyboard counter 1 at the aforementioned rate. Upon depression of a key on any keyboard of the organ, including the manuals and pedal divisions, a respective switch 14 associated in series connection with a diode 13 at the intersection between the appropriate input bus and output bus 12 of the switching array 11 is closed, thereby connecting the two buses to supply pulses appearing on a given bus 10 from decoder 7, to the appropriately connected output bus 12 for application to encoder 15. If, for example, the key that was depressed is associated with note C in the second octave, C appears in the appropriate time slot of the multiplexed signal emanating from encoder l5 and will repetitively appear in that time slot in each scan of the keyboards of the organ as long as that key is depressed. That is to say, a pulse appears on output line 10 of decoder 7 associated with the second octave in the manual being played, in accordance with the scan provided by master clock 5, as the counter stage associated with that octave is energized in keyboard counter octave section 3 and the counter stage associated with that manual is energized in section 4 of the keyboard counter. The connection between the appropriate input bus 10 and output bus 12 of switching array 11 for the particular octave and keyboard under consideration is effected by the depression and continued operation of the key associated with the switch 14 for that intersection in the array. Since, as previously stated, each switch is associated with a particular note (key) and is positioned in a specific row of the switching array, a signal level is thereby supplied to the appropriate output bus 12 of the switching array arranged to be associated with that note. Each time the specified note, here the note C, is scanned in the sequence of count in the note section 2 of the keyboard counter, a second input is provided to the AND gate receiving the signal level on output bus 12, and a pulse is delivered to OR gate 23. By virtue of this operation, the pulse which appears at the output of OR gate 23 always appears in the identical specified time slot in the multiplexed signal for a specific note associated with a particular key on a particular keyboard of the organ.
If more than one key is depressed, regardless of whether one or more keyboards is involved, operation corresponding to that described above for a single depressed key is effected for between the respective input buses 10 and output buses 12 for the specific octaves and manuals involved. As the appropriate AND gates 20 in encoder 15 are supplied with gating signals from the sequentially energized counter stages of note section 2, during the scanning operation provided by that keyboard counter section, pulse levels appearing on output buses 12 for which switches 14 have been closed are gated in the appropriate time slots of the multiplex signal on the output lead 25 from OR gate 23 of encoder 15, for the specific notes involved.
An example of the multiplex signal waveform thus generated is shown in FIG. 5. While the pulses appearing in the time slots associated with the specific notes mentioned above are in a serial format or sequential order, their appearance is repetitive during the interval in which the respective keys are actuated. Hence, the effect is to produce a simultaneous reproduction of the notes as an audio output of the organ, as will be explained in more detail in connection with the description of operation of the tone generation section.
Referring now to FIG. 6, the multiplexed signal arriving from encoder 15 is supplied to generator assignment logic network 26 which functions to assign a tone generator 28 to a depressed key (and hence, to generate a particular note) when the associated pulse first appears in its respective time slot in the multiplexed signal supplied to the assignment logic. If only 12 tone generators 28 are available in the particular organ under consideration, for example, the assignments are. to be effected in sequence (order of availability), and once particular pulses have been directed to all of the available generators (i.e., all available tone generators have been captured" by respective note assignments), the organ is in a state of saturation. Thereafter, no further assignments can be made until one or more of the tone generators is released. The availability of 12 (or more) tone generators, however, renders it extremely unlikely that the organ would ever reach a state of saturation since it is quite improbable that more than 12 keys would be depressed in any given instant of time during performance of a musical selection. The output waveforms from the captured tone generators at the proper frequencies for the notes being played, are supplied as outputs to appropriate waveshaping and amplification networks and thence to the acoustical output speakers of the organ. If the tone generators 28 supply a digital representation of the desired waveform, as is the case in one embodiment to be described, then the digital format is supplied to an appropriate digital-to-analog converter, which in turn supplies an output to the waveshaping network.
At any given instant of time, each tone generator 28 may be in only one of three possible states, although the concurrent states of the tone generators may difi'er from one tone generator to the next. These three states are as follows:
1. a particular note represented by a specific pulse in the multiplexed signal has captured (i.e., claimed) the tone generator;
2. the tone generator is presently uncaptured (i.e., unclaimed or available), but will be captured by the next incoming pulse in the multiplexed signal associated with a note which is not presently a tone generator captor; and
3. the tone generator is presently available, and will not be captured by the next incoming pulse.
It should be apparent from this delineation of possible states that any number of the tone generators provided (12, in this particular example) may be in one or the other of the states designated (1) and (3), above, but that only one of the tone generators can be in state (2) during a given instant of time. That is, one and only one generator is the next generator to be claimed. When the specific tone generator in state (2) is claimed by an incoming pulse, the next incoming pulse which is not presently claiming a tone generator is to be assigned to the generator that has now assumed state (2). For example, if
- the third tone generator (03) of the. 12 generators is captured by an incoming pulse (note representation) and the fourth generator (04) was and still is captured by a previous note selection, then tone generator 04 is unavailable to the next inture. If all of the tone generators are captured, that is, all are in I state (1) as described above, then the organ is saturated and not further notes can be played until at least one of the tone generators is released. As previously observed, however, the saturation of an organ having 12 (or more) tone generators is highly unlikely.
Generator assignment system 26 is utilized to implement the logic leading to the desired assignment of the tone generators 28, and thus to the three states of operation described above. An exemplary embodiment of the generator assignment logic is shown in FIGS. 7A and 7B. Referring to FIG. 7A, a ring counter 30, or a 12-bit recirculating shift register in which one and only one bit position is a logical 1" at any one time, is used to introduce a claim selection, i.e., to initiate the capture, of the next available tone generator in the set of tone generators 28 provided in the organ. A shift signal appearing on line 32 advances the 1" bit from one register or counter stage to the next, i.e., shifts the l to the next bit position. Each bit position is associated with and corresponds to a particular tone generator, so that the presence of the logical l in a particular bit position indicates selection of the tone generator to be claimed next, provided that his not already claimed.
Each time the logical l appears in a stage of shift register 30, a claim select signal appears on the respective output line 34 associated with the stage. This claim select signal is supplied in parallel to one input of a respective one of AND gates 35, on line 36, and to further logic circuitry (to be described presently with reference to FIG. 73), on line 37. The *output line of each of AND gates 35 is connected to a separate and distinct input line of an OR gate 40 which, in turn, supplies an input to an AND gate 42 whose other input constitutes pulses from the master clock 5.
In operation of the portion of the generator assignment logic shown in FIG. 7A, assume that shift register stage 02 contains the logical l."l"hat stage therefore supplies claim select 2" signal to the respectively associated AND gate 35 and, as well, to further logic circuitry on line 37. If this further logic circuitry determines that the associated note generator may be claimed, a claimed signal is applied as the second input to the respectively associated AND gate 35. Since both inputs of that AND- gate are now true, an output pulse is furnished via OR gate 40 to the synchronization gate 42. The latter gate produces a shift pulse on line 32 upon simultaneous occurrence of the output pulse from OR gate 40 and a clock pulse from master clock 5. Accordingly, the logical l" is advanced one bit position, from stage 02 to stage 03 of shift register 30, in preparation for the claiming of the next tone generator.
Suppose, however, that the tone generator 28 corresponding to stage 03 isalready claimed by a previous note pulse in the multiplexed signal. In that event a claimed signal appears as one input to the associated AND gate 35, and with the claim select" signal appearing as the other input to that gate by virtue of stage 03 containing the single logical 1 another shift pulse is immediately generated on line 32 to advance the logical 1" to stage 04 of the shift register. Similar advancement of bit position of the 1 continues until an unclaimed tone generator is selected. If it should happen that no note is presently being selected on a keyboard of the organ at the time when an unclaimed tone generator is selected, the l bit remains in the shift register stage associated with the selected tone generator until such time as a clairned" signal is concurof whichis the multiplexed signal deriving from encoder the assignment logic is identical, a single showing and description will suffice for all. An AND gate has three inputs, one
(this being supplied in parallel to the AND gates 50 of the remaining identical portions of the assignment logic for the other tone generators, as well), a second of which is the claim select" signal appearing on line 37 associated with the 1 th stage of shift register 30 (FIG. 7A), and the third of which is a signal, on line 52, indicating that the pulse in the multiplexed signal has not captured any tone generator as yet. Of course, these signals are not present unless the respective events which produce them are actually occurring, but if all three signals are simultaneously presented as inputs to AND gate 50, a set" signal is applied to a claim flip-flop 53 to switch that flip-flop to the claimed" state and simultaneously therewith to supply a claimed" signal to the AND gate 35 associated with the l'th stage of shift. register 30 and to the respectively associated tone generator 28.
A modulo 384 counter 55 is employed to permit recognition by the respective portion of the generator assignment logic of the continued existence in the multiplexed signal of the pulse (time slot) which resulted in the capture of the associated tone generator. To that end, counter 55 is synchronized with keyboard counter 1 (also a modulo 384 counter) by simultaneous application thereto of clock pulses from master clock 5. The count of each counter 55 associated with an uncaptured tone generator is maintained in synchronism with the count of keyboard counter l by application of a reset signal to an AND gate 58 each time the keyboard counter assumes a zero count; i.e., each time the count of the keyboard counter repeats. However, that reset signal is effective to reset counter 55' only if the associated tone generator is uncaptured. The latter information is provided by the state of flip-flop 53, i.e., a not claimed signal is supplied as a second input to AND gate 58 whenever flip-flop 53 is in the unclaimed" state.
When the flip-flop (and hence, the associated'tone generator) is claimed, however, it is desirable to indicate the time slot occupied by the pulse which effected the capture, and for that reason a reset" signal is applied to counter 55 at any time that an output signal is derived from AND gate 50. Thus, in the captured state, the zero count of counter 55 occurs with each repetition of the capturing"- pulse in the TDM waveform. Such information is valuable for a variety of reasons; for example, to prevent capture of an already captured tone generator when the zero count continues to appear simultaneously with a pulse in the TDM waveform, and to provide a key released" indication when the zero count is no longer accompanied by a pulse in the TDM waveform. Capture prevention is effected by feeding a signal representative of zero count from counter 55 to the appropriate input terminal of an OR gate 60 associated with all of the tone generators and their respective generator assignment logic. The logical l supplied to OR gate 60 is inverted so that simultaneous identical logical inputs cannot be presented to AND gate 50. On the other hand, when the zero count is merely synchronized with the zero count of the keyboard counterand is not the result of capture of the associated tone generator it does not interfere with subsequent capture of that tone generator since it does not occur simultaneously with a pulse in the TDM signal. A key release" indication is obtainedby supplying the zero count signal to an AND gate 62 to which is also supplied any signal deriving from an inverter 63 connected to receive inputs from the TDM signal. If the zero V, count coincides with a pulse in the multiplexed signal. the in-' rently applied to the respective AND gate 35, i.e., until the selected tone generator is claimed, because until that time no further shift signals can occur.
Referring now to FIG. 78, each tone generator also has associated therewith a respective portion of the generator assignment logic as shown in that Figure. In other words, the circuitry of FIG. 78, with minor exceptions to be noted in the ensuring description, is associated with the ith tone generator (where i=1, 2, 3, l2), and since each of these portions of version of the latter pulse prevents an output from AND gate 62, and this is proper because the coincidence of the zero count and the TDM pulse is indicative of continuing depression of the key which has captured the tone generator. Lack of coincidence is indicative that the key has been released, and
results in the key release" signal. Scanning of the keyboards is sufficiently rapid thatany delay which might exist between actual key release and initiation of the key release signal is negligible, and in any event is undetectable by the human senses. Furthermore, the generation of a false key release" signal when the tone generator is presently unclaimed, as a result of the occurrence of a zero count from counter 55 synchronized with the zero count of the keyboard counter and the simultaneous absence of a pulse in the TDM signal, can have no effect on the audio output of the organ since the associated tone generator is not captured and is therefore not generating any tone. In any case, the "key relase" signal deriving from AND gate 62 is supplied to attack/delay logic of the tone generator to initiate the decay of the generated tone.
The set claim" signal output of AND gate 50 that occurs with the simultaneous appearance of the three input signals to that gate is utilized to provide a key depressed indication to the attack/decay circuitry of the tone generator (and to percussive controls, if desired), as well as to provide its previously recited functions of setting" flip-flop 53 and resetting counter 55.
The assignment logic embodiment of FIGS. 7A and 78 may be associated with only a small number of tone generators 12, in the example previously given), the exact number being selected in view of the cost limitations and the likely maximum number of keys that normally may be actuated simultaneously. In that case, each tone generator must supply every desired frequency corresponding toevery note in every octave that may be played on the electronic organ. To that end, a digital tone generator of the exemplary configuration shown in block diagrammatic form in FIG. 8 is employed.
Before describing the cooperative structural and functional relationships between the elements of the tone generator shown in FIG. 8, it is instructive to consider some of the available alternatives in the construction and operation of digital tone generators for ultimately generating a desired audio frequency for a note corresponding to an actuated key. When a key is depressedon any keyboard of the digital electronic organ, a waveform is to be generated with a periodicity corresponding to the desired note frequency in the audible range. The waveform is computed in digital format consisting of a series of numbers (digital words) which represent the magnitude of the waveform at a series, or sequence, of uniformly spaced sample points. The digital sample point values thus generated are subsequently converted to analog form.
The sample points are preferably uniformly spaced because such a fonnat permits the most direct analysis, and therefore the most direct synthesis, of the desired waveform. If desired, the uniform spacing of sample points may be such that there is provided an integral number of samples per cycle for each note frequency to be generated. Such a technique requires a sampling rate that varies directly with the frequency. Altematively, the samples may be spaced uniformly in time, in which case the phase angle between samples points varies with the frequency of the note to be generated. Although the synthesis of a multiplicity of note frequencies can be implemented for either technique, using a single clock frequency, the preferred frequency synthesis technique is that in which the phase angle between the sample points varies with frequency, i.e., in which the sampling rate is fixed for all note frequencies to be generated, and the various generated note frequencies are produced as a result of the different phase angles.
FIG. 8 shows, in block diagram form, a specific exemplary structure of a tone generator for generating the required note frequencies of the organ from a memory containing amplitude samples of the desired waveform obtained at uniformly spaced points in time. The sample points are accessed at a fixed, single clock frequency for all note frequencies to be generated and the phase angle between the sample points thereby varies with the frequency of the note to be generated' The tone generator includes, as basic components, a phase angle calculator 100, a phase angle register 101, a sample point address register 102, a read-only memory 103, an address decoder 103a, an accumulator 104, a sampling clock 105, and a comparator 107. As will be apparent thereafter, the phase angle calculator 100 and the read-only memory 103 may be shared by all of the tone generators 28. In addition, each tone generator is addressed or accessed individually and in sequence and thus once in each cycle of addressing all tone generators. For that reason, the sampling clock 105 may comprise aclock rate provided by a master sampling clock, successive clock pulses of which are directed to the series of tone generators. The
sampling clock addressed to a given tone generator is thus at a rate comprising the pulse repetition rate of the master sampling clock divided by the number of tone generators provided in the system. Further, since the same read-only memory may be addressed by all tone generators, the accumulator 104 may be a composite structure associated with appropriate gating circuitry related to each tone generator for accumulating the information read from the memory 103 in response to accessing thereof by a given tone generator. I
When a claim flip-flop of the tone generator assignment logic, such as flip-flop 53 (FIG. 7B), is switched to the claimed state in accordance with capturing of a pulse in the incoming multiplexed waveform by a given tone generator 28, the phase angle calculator is instructed to determine the appropriate phase angle for the frequency of the note to be reproduced as identified by the captured pulse. A determination of the value of the phase angle constant, and hence, of the particular note corresponding to the key that has been actuated, is initiated by supplying both the count from the main keyboard counter 1 and the count of the modulo 384 counter 55 (e.g., of FIG. 73) associated with the captured flip-flop, and which is reset to zero upon that capture, to a count comparator 107. Comparator 107 subtracts the count of counter 55 from the count of the keyboard counter 1 and supplies a number representative of the difierence, and hence, representative of the time slot position corresponding to a particular note (i.e., that note which captured the flip-flop), to phase angle calculator 100. The difierence computed by comparator 107 will always be positive, or zero, because the computation is elicited from the comparator only when the associated flipflop 53 is captured and at that moment counter 55 is reset to zero, whereas the keyboard counter probably has some greater count or contains a least count, i.e., zero.
On the basis of the difference count supplied by comparator 107, calculator 100 is informed as to the note for which the phase angle calculation is to be performed, i.e., the note and thus the frequency to be produced by the tone generator. The
calculator 100 may compute the phase angle as a function of the frequency of the note to be reproduced and of the number of memory sampling points of the waveform in storage and thus as approximately equal to the phase angle of the fundamental between adjacent memory sampling points for the frequency to be produced. An alternative embodiment of the phase angle calculator 100 is a conventional storage unit with look-up capabilities, or simply a memory from which the correct phase angle is extracted when the memory is suitably addressed with' the identification of the count of the captured pulse. Alternatively, a combination of a memory with look-up capabilities and of a calculator capable of computation for determination of the phase angles may be employed. The synthesis of note frequencies in accordance with the digitally stored waveform sample points may be arbitrarily as accurate as desired and, in effect, provides a true equally tempered scale of the synthesized note frequencies wherein the notes within the scale differ by the power of 2"". The degree of accuracy in a practical system, however, must be realized within a finite maximum information content and thus the stored phase angles are quantized and rounded ofi.
The phase angle thus developed is supplied to and stored in the phase angle register 101. Thus, upon capture of a given tone generator, a command control means such as flip-flop 53 which establishes the captured state of the tone generator controls the operation of the comparator 107 and, in turn. the phase angle determination function ofthe phase angle calculator 100 for the given note frequency to be generated, for supply of that phase angle to the register 101. Since this operation mustprecede the addressing function, a delay may be provided (as by use of a delay multivibrator 106) to actuate a switch 108 for passage of pulses from the sampling clock source 105 (which may be an appropriately gated pulse from a master sampling clock source) to the registers 101 and 102.
If desired, the sample point address register 102 may be cleared when claim flip-flop 53 reverts to a noncaptured state,
- so that it is prepared for entry of information from the phase angle register 101 upon each calculation. However, it is. important to note that during accessing of the memory it is the rate at which the value of register 102 increases and not the absolute value thereof which is significant in the control of the rate of read out of the memory 103 and thus the cyclic frequency of read out of the memory and, ultimately, the frequencyof the note reproduced by the given tone generator.
Once each sampling clock time as determined by the sampling clock source 105, the phase angle value stored in phase angle register 101 is added to the previously stored value of the sample point address register 102. An address decoder 103a decodes preselected bit positions of the count established in register 102 to effect accessing, or addressing, of the memory 103. The transfer from the register 101 to the register 102 is a nondestructive transfer such that the phase angle value is maintained in the register 101 as long as that tone generator is captured by a given pulse.
Thus, once each clock time, the phase angle register value, comprising a digital binary word, is added to the sample point address register value and correspondingly, for each such clock time, the memory location corresponding to the sample point address then existing in the register 102 is accessed. As a practical matter, only a relatively small, finite set of amplitudes can be stored in the memory 103, because of practical limitations on its capacity, and thus only a finite number of addresses are available. Furthermore, the registers such as 101 and 102 must be of a finite, practical length. In particular, the length of the phase angle register is determined by the accuracy with which the frequency of the note is to be generated. The frequency actually produced will be exactly the value of the phase angle in register 101 times the memory sampling rate. The sample point address register 102, on the other hand, must be sufficiently long to accept data from the phase angle register 101. The register 102, however, preferably includes additional bit positions which are not used, or not used at all times, for accessing the memory. In this .respect, it will be apparent that one bit position in the register positions by means of decoder 103a, the frequency of the note reproduced may be readily adjusted to different octaves. That is, a one bit positional shift constitutes division or multiplication by 2, depending upon direction of shift. For example, if the most significant bit is numbered 1 and thus bit positions 2 through 6 comprise the sample point address bits normally used for an 8 foot voice, then a 16 foot voice can be obtained by using bits 1 through 5 as the sample point address source. Correspondingly, a 4 foot voice can be obtained by using bits 3 through 7 as the sample point address bits.
The read-only memory 103 contains digital amplitude values of a single cycle of the complex periodic waveform to be reproduced for all note frequencies. That is to say, the same complex periodic waveform is to be reproduced for each note played, the only difference being the frequency at which the complex waveform is reproduced.
Referring to FIG. 9, illustrating a typical complex waveshape 110 of the type that may be produced by a pipe organ, the wave may be sampled at a multiplicity of points, shown as vertical lines in the Figure, to provide the amplitude data for storage in memory 103. If absolute amplitude data is stored in memory 103, then the data accessed is the actual amplitude of the output waveform at the respective sample points (i.e., with respect to a ,zerb level at'time axis 111). ln that event, the digital amplitude data successively read from the memory may be applied directly to an appropriate digital-toanalog conversion system. On the other hand, if incremental amplitude information (i.e., simply the difference in amplitude between the present sample and the immediately preceding sample) is stored in memory 103, then the data accessed must be added to an accumulator (e.g., 104 in FIG. 8) to provide the absolute amplitude information at each sample point prior to digital-to-analog conversion. Each of the sample points of the memory 103 may comprise a digital word of approximately seven or'eight bits.
The digital words thus read out from the memory 103 are supplied to the accumulator 104 which provides a digital representation of the waveform at selected sample points over a cycle of the waveform and at a frequency corresponding to the note to be reproduced. As above described, this digital waveform representation may itself be operated upon for waveshape control, e.g., attack and decay, and subsequently is supplied to a digital-to-analog converter for producing an analog signal suitable for driving the acoustical output means, such as audio speakers, of the organ.
Memory 103 may be a microminiature diode array of the type disclosed by R. M. Ashby et al. in US. Pat. No. 3,377,513, issued Apr. 9, i968, and assigned to the same assignee as is the present invention. The array may, for example, contain an amplitude representation of the desired waveform in the form of an 8 bit binary word at each of 48 or more sample points. Such a capacity permits the storage of up to I28 amplitude levels in addition to a polarity (algebraic sign) bit. In any event, the capacity of memory 103 should be sufficient to allow faithful reproduction of note frequencies. 1
If whole values of amplitude levels at the sample points of the waveform are read from memory 103 in the embodiment of FIG. 8, the same sample point may be addressed several times in succession. This is the result of the requirement that the memory be accessed at a fixed rate for every note frequency, a requirement which implies that for decreasing note frequencies an increasing number of sample points must be read out during each cycle; and since the number of sample points is fixed and no sample points can be skipped regardless of note frequency, this simply means repetition of the same read out of memory 103 several times in succession depending upon the note frequency to be produced, just as in the whole value sample point case noted above, for incremental values all but one readout for each sample point must be inhibited to prevent repetitive application to accumulator 104. To that end, a gate 103b (shown dotted in FIG. 8) is positioned in the output line of memory 103 preceding accumulator 104 if in-- cremental values are utilized. Gate 103k is preferably enabled to pass the sample value being read from the memory only when the least significant bit in address register 102 changes.
Since such change occurs upon a carry into that position, indicating advancement to the next memory address, a-bit change sensor 102a may be used to detect the change and to enable gate 103b at each advancement to a new address. The same sample point may still be accessedseveral times in sue.- cession, but only one such value will be read out" (i.e., will be passed by the gate since it is disabled at all other times).
The phase angle calculations should be such that the highest note playable is that note for .which a sample point value is read out each time the memory is addressed. Since the ratio between adjacent notes on the equally tempered musical scale is an irrational number, it is preferable that the largest number in the phase angle register be slightly smaller than the least significant bit in the address register. If the phase angle number were larger, it would be necessary to occasionally skip a sample point and this would lead to inconsistency in the note frequency, whereas if the phase angle number were equal to the least significant bit in the address register the note frequency would be slightly higher (i.e., about one-half of a halftone higher) than the highest note that can be played. By requiring the phase angle number to be slightly smaller, the highest note capability of the instrument will not be exceeded.
The same read-only memory 103 may be shared by all of the tone generators 28 if the data words (amplitude values of sample points) read therefrom are gated to respective wave shapers in synchronism with the addressing of the memory for the respective notes being played. In other words, simultaneous or concurrent play of two or more notes requires that these be distinguished as separate sets of sample points, if a single memory is to be shared for all tone generators.
In the present embodiment, however, it is assumed that each tone generator has its own memory (and, incidentally, memories composed of microminature diode arrays of the type disclosed in the aforementioned Ashby et al. patent are readily fabricated with more than 5,000 diode elements per square inch), which supplies its digital output to a respectively associated attack and decay control unit. The binary-valued amplitude samples are applied directly to the attack and decay circuitry if each sample is a whole value,'or may be applied via an accumulator 104 if each sample is an incremental value. Alternatively, accumulation of incremental values may be performed after shaping, if desired.
Referring to FIG. 10, an embodiment of the attack and decay unit associated with each tone generator includes a mu]- tiplier 120 to which the sample values from memory 103 are applied for multiplication by an appropriate scale factor to control the leading and trailing portions of the note waveform envelope. As is well known, the faithful simulation of true pipe organ sounds by an electronic organ requires that the latter be provided with the capability to shape each tone envelope to produce other than an abrupt rise and fall. Without special attack and decay control, the note waveform produced by an electronic organ normally rises sharply to full intensity immediately upon depression of the respective key, and ceases abruptly when that key is released. At times, this may be a desirable effect to maintain during the play of a musical selection. In those cases, the attack and decay controls may be avoided entirely, or the scale factor supplied to multiplier 120, and with which the amplitude samples are to be multiplied, may be set at unity. More often, however, attack and/or decay are desirable for or in conjunction with special effects, such as percussion, sustain, and so forth.
The multiplying scale factor is varied as a function of time to correspondingly vary the magnitude of the digital samples, with which it is multiplied, on a progressive basis to simulate attack and/or decay. In the embodiment of FIG. 10, to total time duration and the time constant(s) for the attack or decay are controlled by a counter 122 which may be selectively supplied with uniformly timed pulses that are independent of the specific note frequency under consideration, such as pulses obtained or derived from the master clock, or with pulses having a repetition rate representative of or proportional to the note frequency. In this respect, the counter 122 may be considered as determining the abscissa of a graph of envelope amplitude versus time and representative of the attack or decay. The ordinate or amplitude scale of the graph is represented by the series of scale factors stored in a read-only memory 125 to be accessed by the counter itself, or by an address decoder 126 which addresses the memory for readout of scale factors on the basis of each count (or timed, separated counts) of counter 122.
The counter may be of the reversible, up-down (forwardbackward) type in which it is responsive to incoming pulses to count upwardly when its up (here, attack) terminal is activated, and to count downwardly when its down" (here, decay) terminal is activated. The attack mode of the overall control unit is entered when the associated tone generator is captured by a hitherto unclaimed note pulse in the multiplexed signal. The capture of a tone generator is accompanied by a signal indicative of a key having been depressed (see FIG. 7B), from the assignment logic, and it is this signal which initiates the attack count of counter 122. In particular, the first key depressed" signal (and possibly the only one) that occurs upon capture of a tone generator 28 is effective to produce a count in the first stage of ring counter 128, thereby supplying a trigger signal from that stage to a monostable delay multivibrator 130 which is set to have an ON time (delay time) of sufficient duration to ensure that the attack is completed despite release of the key prior to the normal end of the attack interval. It has been found that a delay time equal to or greater than approximately the time occupied by seven cycles (i.e., seven periods) of the lowest frequency note is quite adequate for multivibrator 130 to ensure this positive attack. During that interval, the up" control of counter 122 is activated by the quasi-stable state of multivibrator 130 and the counter continues to count incoming pulses until the multivibrator spontaneously returns to its stable state, or until the note envelope reaches the full desired intensity (magnitude), if earlier. This full intensity value may be preset into the attack/decay control logic or it may be determinedby logic circuitry responsive to such factors as the force with which the respective key is struck (i.e., to velocity-responsive or touchresponsive device outputs). In the embodiment shown in FIG. 10, the former arrangement is utilized in which a maximum desired count is set into a fixed counter 131 for continuous comparison in comparator 133 with the present count of up down counter 122. If the latter exceeds the former, a disable command is applied to the counter to terminate the attack.
Pulses to be counted by counter 122 may be obtained at a rate which is a function of note frequency, as by supplying the output of phase angle calculator to a phase-to-frequency converter 135, or at a rate based on the master clock rate, whichever is desired. Selection of either rate is accomplished by appropriately setting a switch 136 coupled to an associated switch or key on or adjacent to one of the keyboards.
In operation of the attack/decay control unit of FIG. 10, after switch 136 has been set at the desired position, the pulses to be counted appear at the input of counter 122 but no count is initiated until a key is depressed and the associated pulse in the multiplexed signal from the keyboard results in the cap ture of a tone generator 28. The key depress signal from the generator assignment logic initiates a count in ring counter 128, which had been reset by completion of decay the immediately preceding time the attack/decay control unit had been used. Preferably, the latter reset signal is obtained upon switching of the claim flip-flop 53 in the assignment logic 26 to the not claimed (delay complete) state. The up count of counter 122 is thereby enabled and continues through completion of attack regardless of whether or not the key remains depressed. The duration of attack depends on whether the note frequency mode or the fixed time mode is employed.
With each count of counter 122 (or less frequently, by use of suitably timed enabling commands), address decoder 126 developes a related address code for accessing a digital scale factor stored in the appropriate address of read-only memory unit 125, to be combined as a product in multiplier with the amplitude samples being read from tone generator 28 of FIG. 8. By presetting memory such that the scale factors stored therein are logarithmically increasing (up to the equivalent of unity) with addresses decoded according to progressively increasing count in counter 122 (up to the maximum desired count, representing full note intensity), a logarithmic attack is provided in the note being played.
When the key is released, a key release signal is applied from AND gate 62 of assignment logic 26 (FIG. 78) to a flipflop 138 to initiate the decay mode of the attack/decay control unit by enabling the decay" (down) count of counter 122. Accordingly, incoming pulses to the counter are counted downwardly from the count representative of full intensity,
. until a zero count is obtained unless decay is tenninated earli- If during decay the same note pulse should reappear in the I multiplexed keyboard signal, a second key depress signal is applied to ring counter 128 thus increasing the count therein to the second stage and switching flip-flop 138 from the decay state to its other state, which reintroduces the attack mode. Since decay is incomplete in this particular instance, the count of counter 122 now proceeds upward from the minimum count which had been attained when decay was interrupted. If, howeventhe key is again released, prior to completion of attack, positive attack is no longer in effect and the flip-flop 138 reverts immediately to the decay state by virtue of application of the key release signal thereto. This operation is effective to simulate the attack and decay that occurs in a true pipe organ.
To preventflip-flop 138 from being in the decay" state when the initial attack condition is established in counter 122 (by the quasi-stable state of delay MV 130), flip-flop 138 may be switched to its attack state upon full completion of decay, by the not claimed signal of associated flip-flop 53.
7 Upon completion of decay of a note whose representative pulse in the keyboard multiplexed signal resulted in capture of a tone generator, a decay complete signal is applied to the claim flip-flop 53 (FIG. 7B) of the respective assignment logic unit to cause that flip-flop to return to its not claimed state, and thereby to release the tone generator for claiming by another note.
A preferred embodiment of the adaptive sustain mode control unit according to the present invention is shown in FIGS. 1 1 and 12. Referringfirst to FIG. 11, there is provided means by which to apprise the system of the particular information required to initiate the adaptive sustain mode. In particular, it is required to know which note generators have been committed to the manual demanding organ sustain, which of those note generators committed to sustain is generating the waveform furthest along on its decay curve (as provided by the decay control unit of FIG. and which, if any, tone generators are presently idle.
Upon selection of a particular manual to use the sustain mode, a keyboard select signal is applied to a modulo 384 counter 150 which is synchronized with keyboard counter 1 by pulses from the master clock. The keyboard select signal is effective to cause counter 150 to supply pulses in only those time slots associated with keys corresponding to the manual selected to use the normal sustain. To that end, counter 150 may include a multiplicity of AND gates each having an input from a respective stage of the counter, and all of those gates associated with stages corresponding to the particular manual which has been selected to have the sustain receiving a second input by virtue of the keyboard select signal applied to the counter. The output of the modulo 384 counter 150 is supplied to an AND gate 152 which receives as a second input the multiplexed signal from encoder 15, so that the output of AND gate 152 is a waveform in which signals appear for keyed notes in only those time slots associated with the keyboard selected to have sustain. The output of AND gate 152 is supplied to a unit 153 for producing signals indicative of the tone generator assignments;
Unit 153 includes a plurality of AND gates 155-1, 155-2. 155-12, each of which has the output signal of AND gate 152 applied in parallel thereto and each receiving as a second input the output signal of a respective one of AND gates 35 in the tone generator assignment logic of FIG. 7A. Thus,'the output of each of AND gates is a signal indicative that the associated tone generator has been claimedor captured by a note associated with the manual on which sustain is being used. This indication is obtained because the signals from gates 35 each indicate that the associated tone generator is claimed (and are synchronized with the instant of claiming or continued claiming), and the signals in the output of AND gate 152 each indicate that a note associated with the manual selected to have sustain has been keyed (and occurs synchronously with the claim signal).
The output pulses deriving from tone generator designating gates 155 are applied to respective AND gates 157-1, 157-2, 157-12, to which are applied as an additional input the output signal of the respective AND gate 62 (FIG. 7B) for the assignment logic associated with a respective tone generator. The output of AND gate 62 is the key release signal, and hence the pulse output of each AND gate 157 is indicative of the instant of release of a key for the note that has captured one of the tone generators committed to the manual demanding organ sustain. The occurrence of an output pulse from one or more of the AND gates 157 may therefore be utilized to trigger an associated counter 158-1, 158-2, 158-12, respectively, so as to provide an indication of the extent of decay undergone by the waveform generated by the respective note generator, such decay having been impressed thereon by the decay control unit of FIG. 10. It will be understood that the various counts of counters 158 will differ as a consequence of the respective keys presently associated with those counters having been released at different times. The outputs of counters 158, containing their respective counts, are detected in cyclic sequence by a commutator 160 to supply a serial format of decay counts for the tone generators assigned to the selected manual. Each of counters 158 preferably also produces a signal indicating the number of the tone generator with which it is associated so that the serial format of decay counts emanating from commutator 160 contains tone generator number information for identifying each decay count.
These decay counts are supplied in sequence to acomparator 162, to which is also suppliedthe present count stored in a monitor register 165. Register is utilized to store the tone generator number and the decay count for the tone generator which has the highest present decay count, and is.
synchronized with the operation of commutator 160 by sync pulses furnished by a clock 167. If the comparison of the decay counts as performed in comparator 162 indicatesthat the decay count from commutator 160 exceeds the highest present decay count stored in monitor register 165, the higher decay count is entered as a new count into the register along rated such that no tone generators are presently idle. To that end, an AND gate is provided with 12 input terminals each connected to a respective one of the claim flip-flops and in particular to the claimed output lead of a flip-flop 53 (FIG. 73) associated with the respective tone generator. If each input of AND gate 170 is active, i.e., if each has a signal thereon, it is an indication that all of the tone generators are presently assigned, so that the resulting output signal of AND gate 170 is indicative of the unavailability of any tone generators. This output signal is used to actuate recognition logic '172 which responds to the tone generator number data read from monitor register 165 and, on the basis of that data, supplies an output signal on the appropriate output line thereof to change the mode of operation of the decay control unit of FIG. 10 by resetting a mode tlip-flopin that unit.
In particular, for the adaptive sustain feature of the present invention, the decay control unit shown in FIG. is modified slightly such that switch 136 is implemented the form of a mode flip-flop 136a, as shown in FIG. 12. The decay mode for the attack and decay control units associated with those tone generators committed to the sustain manual, as detected upon capture, may normally be set so that decay time is based on a preset time as fixed by master clock pulses. The receipt of a signal from recognition logic 172 (HO. 1]) by a respective mode flip-flop 136a is effective to switch that flip-flop to control the count of counter 122 on the basis of the frequency of the note being produced by the tone generator, which results in a substantially shorter decay interval. Thus, tone generators will become available at an earlier time than would be the case if the normal sustain interval were adhered to. Preferably, the frequency mode is also the normal decay mode for those tone generators which are not committed to the manual using sustain.
To prevent assigning the shorter decay interval to a tone generated by a counter no longer in the decay mode, and as well, to prevent the monitor register from reaching and maintaining a fixed maximum count, the register may be reset when the tone generator with which the count therein is associated has completed the decay, by supplying the decay complete signal applied to flip-flop 53 (FIG. 78) as the reset signal for the register.
The multiplexing system and its features are claimed in the aforementioned copending application of Watson, while the attack and decay system without adaptive sustain is claimed in the aforementioned copending Watson et al. application.
What is claimed is:
1. In an electronic musical instrument having keying means operable between actuated and released conditions for selection of notes to be generated, the combination comprising:
a plurality of tone generators substantially smaller in number than the number of notes which said instrument is capable of generating, each of said tone generators being capable of generating all of said notes,
means responsive to the keying of notes in said instrument for introducing information indicative of the keyed notes into time slots of a multiplex signal,
means for determining the availability of said tone generators and responsive to the information in said signal for assigning said tone generators to generate respectively associated ones of the tones called for by said information, on the basis of the availability of said tone generators,
control means further responsive to said information in accordance with release of the keying means for effecting a decay of the generated tones over desired time periods of decay, and
means responsive to said availability determining means indicating the unavailability of a predetermined number of said tone generators for causing said control means to reduce the length of the time period of decay of the generated tones, thereby to release said tone generators from said respectively associated assignments for earlier availability.
2. The electronic musical instrument according to claim 1 wherein said means for causing said control means to reduce the length of the time period of decay includes:
means for detecting the unavailable tone generator whose output tone has undergone the greatest decay, and
means responsive to detection of the last-named tone generator for assigning as a priority thereto the reducing of the time period of decay of the tone generated thereby.
3. The electronic musical instrument of claim 2 wherein said decay control means comprises:
means for establishing desired, normal time periods of decay, and
means for preselecting certain of said notes to have a sustained decay of a greater decay time period than the normal and wherein;
means for detecting the elapsed length of decay of each note generated by the tone generators assigned to the notes of sustained decay, I
means for comparing each said detected, elapsed length of decay with the greatest previously detected elapsed length of decay, and
means for supplying to said decay priority assigning means an indication of the tone generator associated with the greater of the two elapsed decay lengths determined by said comparison.
5. The electronic musical instrument according to claim 4 wherein said decay priority assigning means responds to said greater indication of the elapsed decay length comparison only upon said availability determining means indicating the unavailability of said predetermined number of tone generators.
6. The electronic musical instrument according to claim 5 wherein said predetermined number of tone generators corresponds to the total number of said plurality of tone generatOl'S.
7. An electronic organ constructed and arranged to emit sounds corresponding to notes of the musical scale in response to the keying of desired notes, said organ comprising:
a plurality of tone generating means responsive to the keying of notes for generating digital amplitude samples of the waveform of the respective note at a rate related to the frequency of the keyed note,
means for determining the availability of said tone generating means and for selecting each thereof to generate said digital amplitude samples at the frequency of the respectively associated keyed note,
means responsive to release of the key associated with a note for which a tone generating means has been selected, for weighting said amplitude samples generated by the selected tone generating means to simulate decay of the note, and
means responsive to said availability determining means indicating a predetermined limited extent of availability of said plurality of tone generating means for changing the rate of said decay simulated by said weighting means to expedite the release of said tone generating means for earlier availability.
8. The electronic organ of claim 7 wherein said weighting means comprises: 7
meansfor establishing a rate of decay corresponding to a desired, normal decay interval, and
means for selectively establishing a sustain mode in which the rate of decay of certain preselected notes is lengthened beyond the normal decay interval, and
said decay rate changing means is operative to change the rate of decay for only said preselected notes, thereby to adapt the sustain effect to the availability of tone generating means.
9. The electronic organ of claim 7 wherein said weighting means includes means for establishing nonnal rates of decay related to the frequency of the notes to be generated.
means for selectively establishing a sustain mode for certain preselected notes having a fixed rate of decay slower than the normal, and
said decay rate changing means is operative to vary the rate of decay of only one of the preselected notes from the predetermined and fixed, longer rate of decay of the sustain mode to the normal rate of decay determined in relation to the frequency of that note.
10. The electronic organ of claim 9 wherein there is further provided means for determining which of the preselected notes has presently undergone the greatest interval of decay, said decay rate changing means being operative to vary the rate of decay of that said note.
11. An electrical keyboard instrument in which keys are actuated and released to call forth and to terminate, respectively, sounds associated with the notes of the musical scale to which said keys are assigned, said instrument including:
means for storing digital samples of the amplitude of a waveform corresponding to said sounds,
a predetermined number of means responsive to the actuation of any key of a correspondingly limited number of keys, each of said' means being operable for cyclically reading out said digital amplitude samples at a rate related to the frequency of the note to which a respectively corresponding, actuated key is assigned, and
means responsive to the release of each such actuated key to which one of said cyclical readout means is assigned, affording a selectively variable rate of termination of the sound associated with the note to which that key is asa signed, and for automatically varying a selected rate according to the present availability of another of said readout means to respond to actuation of a further one of said keys.
12. The electrical keyboard instrument defined by claim 11 wherein said notes are subject to a rate of sound termination corresponding to a predetermined normal decay upon release of the respective key, and wherein there is further provided:
means for selecting certain of said notes to have a sustained decay of greater length than said normal decay, and
said rate varying means is constructed and arranged to vary the rate of termination of sounds associated only with those notes selected to have sustained decay.
13. An adaptive sustain system for an electronic musical instrument comprising:
keying means actuable for selecting notes to be generated,
a predetermined number of tone generator means each selectively operable for generating any of the notes capable of being generated by said instrument, assignment control means for individually assigning said tone generating means to generate the notes as selected by said keying means and for determining the availability of further said tone generating means for further assignments in response to successive note selections,
decay control means for selectively establishing a normal time interval of decay of said notes and for establishing sustained time intervals of decay fornotes preselected to have sustained decay, upon release of the corresponding keys, and
means responsive to said assignment control means indicating the unavailability of a predetermined number of said tone generators for causing said decay control means to reduce the decay time of a note having sustained decay, thereby more quickly to release the tone generator assigned thereto for further assignment to a successive note selection.
14. An adaptive sustain system for an electronic musical instrument as recited in claim 13 wherein said last-named means is operative to cause said decay control means to select the normal decay for a note otherwise preselected to have sustained decay upon said indication of the unavailability of said note generators.
15. An adaptive sustain system for an electronic musical instrument as recited in claim 14 wherein said last-named means further includes means for detennining the extent of decay for each such preselected note and is operative to cause said decay selection means to select the normal decay for that preselected note having the maximum extent of sustained decay.