22.09.2015 Views

of Microprocessors

Musical-Applications-of-Microprocessors-2ed-Chamberlin-H-1987

Musical-Applications-of-Microprocessors-2ed-Chamberlin-H-1987

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

614 MUSICAL ApPLICATIONS OF MICROPROCESSORS<br />

phases can be stored in two 64-bit by lO-bit memories. The throughput rate<br />

is 64 X 62.5 kHz=4 MHz or 250 nsec minor clock cycle, which means that<br />

bipolar or fast MOS memories will be needed. U nf<strong>of</strong>tunately, 64 words is a<br />

somewhat nonstandard size for memory ICs and using the 16- X 4-bit type<br />

7489 memory means that 20 packages would be required. Other possibilities<br />

are the 2101A-1, which has a 200 nsec cycle time, and the 93422, which is a<br />

50 nsec bipolar device. The latter is fast enough to be used directly, whereas<br />

the MOS 210lA-1 would have to be pipelined. Both <strong>of</strong> these have identical<br />

pin connections and are organized as 256 words <strong>of</strong>4 bits; thus, three-quarters<br />

<strong>of</strong> their capacity will not be utilized.<br />

When considering 64 channels, each with harmonically related frequencies,2<br />

the leftmost four blocks in Fig. 17-16 seem to be redundant. In<br />

particular, it would be nice to eliminate the harmonic multiplier as well as<br />

individual frequency generation accumulators. In order to see how this might<br />

be done, consider the case in which the frequency control word has a value <strong>of</strong><br />

1 and the entire module had just been reset, that is, all 64 frequency<br />

generation accumulators set to O. After one sample period (16 f.Lsec), the<br />

fundamental accumulatot has a value <strong>of</strong> 1, second harmonic 2, third 3, etc.<br />

After a second sample period cycle, they are 2, 4, 6, etc., and after a third<br />

cycle they are 3, 6, 9, etc. After a number <strong>of</strong> sample periods, overflow <strong>of</strong> the<br />

highest harmonic is inevitable. This is merely an indication that it has<br />

completed a full cycle and can be ignored. In fact, all <strong>of</strong> the harmonics will<br />

overflow as they complete full cycles.<br />

These same relationships hold regardless <strong>of</strong> the value <strong>of</strong> the frequency<br />

control word. Thus, the content <strong>of</strong> the fundamental's accumulator can be<br />

multiplied by the harmonic number to obtain what would be in the harmonics'<br />

accumulators if they had their own accumulators and adders! This<br />

then eliminates 63 frequency generation subsystems. Only the low 20 bits <strong>of</strong><br />

the 26-bit product should be retained to properly implement the overflow<br />

phenomenon mentioned earlier.<br />

Now that the redundant frequency generators are eliminated, let's see<br />

about getting rid <strong>of</strong> the multiplier as well. If the multiplexing is done in<br />

order <strong>of</strong> increasing harmonic numbers, then multiplication by 2, 3, 4, etc.,<br />

can be accomplished by successive addition <strong>of</strong> the fundamental's frequency<br />

generation accumulator into a second indexing accumulator. Thus, the harmonic<br />

multiplier is replaced by an adder and accumulator. The substructure<br />

that accomplishes this is shown in Fig. 17-17. Note that this substructure is<br />

not multiplexed, but it does provide multiplexed data to the 64 sine<br />

generators, which, <strong>of</strong> course, are multiplexed. The frequency-control register<br />

2If one wishes to generate decidedly nonharmonic tones, the 64 frequency generation<br />

subsystems may be retained. The ftequency control words would then come from a<br />

64-word X 20-bit memory rather than a harmonic multiplier. Thus, one has essentially<br />

64 independent sine wave generarors and a 64-channel mixer with independent<br />

gain control for each channel. The phase control adders are useless in such an application<br />

and therefore can be omitted.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!