Changes

Jump to: navigation, search

SP0256 Voice Generator

90 bytes added, 21:49, 19 December 2010
* [[SP0256 Allophones]]
* [[SP0256 Pin-Outs]]
* [[SP0256 on Printer Port (DIY)]]
== Voice Generator ==
== Sample Rate and Repeat Timings ==
The SP0256 is (usually) driven by a 3.12MHz oscillator, and it uses 7bit PWM output. So the sample rate should be , which is clocked at 3.12MHz/2, to obtain a 10kHz sample rate, the chip issues some dummy steps with constant LOW level additionally to the 128steps needed for 7bit PWM, probably further divided by two:making it a total number of 156 steps per sample.
Sample Rate = 3.12MHz/256 2/156 = 1210.1875kHz 0kHz ;82.051ns 100us per sample
Which means one sample is 82.051ns 100us long, that value multiplied by 64 or 91 gives the following timings per repeat:
56.251ms 4ms per repeat (noise and pause), or 79.466ms 1ms per repeat (tone with pitch=91)
That (guessed/undocumented) samplerate does more or less match Note: Some speech interfaces have the specifications that say that (unwanted PWM-) noise is above 10kHzchip overclocked to 4MHz, resulting in higher pitch & sample rate, and that wanted pitch can be up to 5kHz. And the repeat shorter timings do more or less match as with the timings shown in the allophone listnormal 3.12MHz.
== Amplitude/Pitch/Repeat ==
Above shows only positive values for index 0..127. Values for index -1..-128 should be 0..-511, or maybe -9..-512.
[[Category:Music and sound]]
4,585
edits