[sdiy] Roland DCOs
Eric Brombaugh
ebrombaugh at earthlink.net
Wed Feb 27 08:06:39 CET 2008
Thanks for posting that. I note that I also got the SPI DAC details
wrong - it's not an 8-chl SPI DAC, but a single channel SPI DAC with a
24-chl analog demux & S/H configuration.
Don't know about you, but I think that's a fairly elegant use of
resources. I bet the code for the voice processors is something to
behold...
Eric
On Feb 26, 2008, at 11:42 PM, Dave Manley wrote:
> Here's a labled pic of the voice ckt I posted to AH at the time:
>
> http://www.sonic.net/~dlmanley/p08VoiceLabeled.jpg
>
> Unfortunately, the pics (I believe taken by Stephen Johnson) were a
> bit blurry and made it impossible to dig all the details out, but
> what Eric describes is essentially correct (except there's one dsPIC
> per two voices). Looking at the pics again, the clock osc labeling
> is not clear enough to make out, but looks like 4?00, so perhaps it
> is 40MHz.
>
> -Dave
>
>
>
> Eric Brombaugh wrote:
>>
>> I seem to recall a similar discussion on AH back when the first
>> internal photos of the DSI P08 came out a few months ago. From what
>> I recall of that thread, the P08 uses a bunch of the motor control
>> dsPIC chips. There's one dsPIC per voice controlling a CM3396-like
>> chip. The motor control variety has a bunch of nice PWM outputs
>> that can presumably provide the digital divider output, plus
>> there's an 8-channel SPI DAC being used for the numerous voltage
>> control points on the '3396. To top it all off there's another
>> dsPIC that talks to the keyboard, panel controls & MIDI,
>> coordinating the behavior of the per-voice dsPICs.
>>
>> At the time, I sat down and figured out the frequency resolution
>> you'd get from the dsPIC dividers and it looked pretty decent.
>> Here's what I wrote then:
>>
>> -----------------
>> I was curious about which dsPIC was being used. Notice that it's
>> the 'MC' version - that probably means that he's using the motor
>> control PWM channels to generate the waveshaper drive pulses.
>>
>> The motor control time base has 15-bit resolution with a 1/4/16/64x
>> prescaler - that should give plenty of frequency accuracy. I've no
>> idea what the dsPIC clock rate is, but assuming it's running near
>> it's maximum, 40MHz is a good ballpark. Given that, you get the
>> following resolution at the various prescaler settings:
>>
>> 1:1 - Range is 2441Hz and up. Resolution is ~0.15Hz at 2441, ~2.3Hz
>> @ 10kHz.
>> 1:4 - Bottom of range is 610Hz. Resolution there is 0.03Hz, 0.6Hz
>> at 2.4kHz.
>> 1:16 - Bottom of range is 152Hz. Resolution is 0.009Hz, 0.15Hz at
>> 600Hz
>> 1:64 - Bottom of range is 38Hz. Resolution is 0.002Hz, 0.04Hz at
>> 150Hz
>>
>> Those resolutions give about 1/10 cent accuracy at the low ends of
>> the range and 1/2 cent at 4x higher. Not too bad.
>>
>> Not sure what the overall frequency range of the '08 is, but if it
>> goes lower than 38Hz then the dsPIC is may be running slower than
>> 40MHz.
>> -----------------
>>
>> Eric
>> _______________________________________________
>> Synth-diy mailing list
>> Synth-diy at dropmix.xs4all.nl
>> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
>>
>>
>>
>
> _______________________________________________
> Synth-diy mailing list
> Synth-diy at dropmix.xs4all.nl
> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
More information about the Synth-diy
mailing list