Patent GB-1441776-A (GB)
Title: Computer organ using parallel processing
IPC: G10H7/08
Filed: 1973-09-26
Abstract: 1441776 Electronic computer organ NIPPON GAKKI SEIZO KK 26 Sept 1973 [17 Oct 1972] 45159/73 Heading G5J An electronic computer-organ 10 comprises means whereby the instantaneous values of successive points of a musical waveshape are computed at regular time intervals by individuaally digitally calculating in parallel channels 13a, 13b the discrete Fourier components of the waveshape, accumulating said components in accumulator 14 and forming sound corresponding to the waveshape while computing is being carried out. If fH  is the frequency of the highest note on the keyboard and N the number of sampling points per cycle, each instantaneous value computation must be completed in time t x  = 1/NfH. Thus if there are W harmonic components in a single channel each must be calculated in time t c =t x /W. Hence for a monophonic organ, clock rate fc = 1/t c  = WNfH and for a polyphonic organ, clock rate f c <SP>1</SP> = kfc where k is the number of notes played simultaneously. If P is the number of processing channels clock rate fcP=fc/P At the end of interval t x  accumulator 14 contains the instantaneous value at the sample point. This value is provided via gate 15 enabled by the t x  signal on line 16 to converter 17 which supplies a corresponding voltage to sound system 11. The period of the computed waveshape is set by frequency number R selected by keyboard switches 12 from memory 19. The waveshape is established from harmonic coefficients C n  stored in memories 20a, 20b. The instantaneous value for q=1,2,3 - - -. The harmonic component values for n=1 to n=W/2 are calculated in channel 13a and for n=(W/2+1) to W in 13b. The values for n=1 and n=W/2+1 are calculated concurrently and similarly for higher pairs and summed in adder 22 and thence to accumulator 14. A note interval adder 25 of Modulo N contains the value identifying the sample point, namely qR, which is augmented by R via gate 26 enabled by the t x  signal on line 16 at the beginning of each interval t x . The values of nqR are obtained via line 28 and gate 29 in harmonic interval, adder 27 of modulo N cleared before each instantaneous value computation. Address decoder 31a derives from sinusoid table 32a the value sin #/W(nqR) for riqR received on line 33. This is multiplied by C n  in multiplier 35a and the result supplied by line 21a to adder 22. Channel 13b is similar, but there is adder 38 to add W/2(qR) to the values of nqR. Clock 41 produces pulses t cp  on a line 42 and counter 43 of modulo W/P (here P=2) produces one interval pulse t x  for every W/P subinterval pulse received. In a seond embodiment the odd harmonics are calculated in one channel and the even in the other and each channel contains a separate harmonic interval adder and means for adding 2qR to the contents of each. The harmonic coefficient memories 20a and 20b may use recirculating shift registers, Fig. 3 of which 65a contains coefficient values C 1  to C (W/P) . Register 65a is shifted one pulse to the left for each clock pulse t cp  from line 16 while the value in 66a is transferred via load circuitry 68a back to position 70a. Thus, for 16 harmonic components, at the first clock pulse t cp1  coefficients C 1  and C 9  are available via lines 71a and 71b and at the next clock pulse C 2  and C 10  and so on repeating from C 1  and C 9  after C 8  and C 16  have been reached. To supply another set of harmonic components, set "A" coefficients in storage device 73a, on closure of stop tab switch ST A , are transferred via adder 74 and load circuitry 68a, 68b to registers 65a and 65b and thus replace the previous coefficients there. Storage device 73b is similar. The coefficients from 73a and 73b may be added. Load circuitry 68a, 68b is shown in Fig. 4 (not shown) and described.