Home
RC8650 Manual
Contents
1. 5 8 NOISIA3H N 3NON avos olanv Q3TIVLSNI LON SLN3NOdWOO x 4 0 4 0 9 Lorn 0 4 gt idv 2072 ord In Lord m T m jS Sr gt 051 gt o deo TdS ds 124 340066 340028 124 340066 gt 5059 7055 2020 020 et 198 Y LE roen le 102 300200 E 3 300200 toer SE soso Lor S020 0 99 99 dS gt 10 95 00 gt 340004 2082 ACh E0EH 340001 2022 LOSH 1028 RCS650 VOICE SYNTHESIZER SYSTEMS suleis S 8 NOISIA3H 31 25 S d 1 vLLOHVZ 50 IMS 300 d T sw 13539 Movroa Anko J 9060 9020 49 99 O aNd 2 i
2. 0019 LOld 03 5014 vOld SOld 90ld ZOld 091 20 vol Sol 991 421 891 691 0121 vlol 9101 9121 4191 8101 6121 0221 1221 2291 220 9291 9201 1201 8201 620 0591 1201 ZEII 434V 99 99 99 99 99 1nox NIX 13539 dHT0V SASIS 9135 7785 2785 2135 Has ISV 14508 151 osv 0dSNS 051 00 5 515 515 axl 538 1598 0588 9410Y INV ONY SSAV SSA SSA SSA 3d 22 Jd zz e ZHN 82 Sr LA St T 7 13539 E Date 8 oi 12 68 _ 06 16 26 15 gt 14505 9 151 gt 10 vi 05 gt cz 04515 051 gt 00 Slava gt 16 55 2 L 99 X 22 52 m SIS e qud E gt sc 510 gt SE a f dX 22 2588 1588 0588 Sulav m 2 gt 5 56 LNY 76 ONV 96 79 v 8 93159793 93059899 zn in 0014 62 88 toia Le 18 2019 Tee 98 Sold 58 85 v8 SOld Ov 8 9019 ev 28 10d oor e ev gg vt or eol 92 05 z 29 Sol Fey 99
3. 1Q9S0IN8 0IN vn 90 L YOOPNE tol 45 Specifications written in this publication are believed to be accurate but are not guaranteed to be entirely free of error RC Systems reserves the right to make changes in the devices or the device specifications described in this publication without notice RC Systems advises its customers to obtain the latest version of device specifications to verify before placing orders that the information being relied upon by the customer is current In the absence of written agreement to the contrary RC Systems assumes no liability relating to the sale and or use of RC Systems products including fitness for a particular purpose merchantability for RC Systems applications assistance customer s product design or infringement of patents or copyrights of third parties by or arising from use of devices described herein Nor does RC Systems warrant or represent that any license either express or implied is granted under any patent right copyright or other intellectual property right of RC Systems covering or relating to any combination machine or process in which such devices might be or are used RC Systems products are not intended for use in medical life saving or life sustaining applications Applications described in this publication are for illustrative purposes only and RC Systems makes no warranties or representations that the devices described herein will be su
4. DB4 and DBs to DBg and DB to ground and the strobe to PWR ASCII codes 30h through 3Fh corresponding to the digits through 9 and the six ASCII characters following them can be generated by the four control bits Message strings would then be assigned to each of these ASCII characters For example you could make the character corresponding to all four con trol bits O say please insert quarter with the following dictio nary entry 0 P L IY 2 IH NS ER T OW R T ER The Timeout timer should also be activated 1Y for example in order for the message to be executed Otherwise the RC8650 will wait indefinitely for a CR Null character that will never come The timer command could be included in the greeting message TIPS Make sure that your exceptions aren t so broad in nature that they do more harm than good Exceptions intended to fix broad classes of words such as word endings are particularly notorious for ruining otherwise correctly pronounced words Take care in how your exceptions are organized Remember an exception s position relative to others is just as important as the content of the exception itself Exception Anomalies On rare occasions an exception may not work as expected This occurs when the built in pronunciation rules get control before the exception does The following example illustrates how this can happen Suppose an exception redefined the o in th
5. ICa4 and must have 47 pullup resistor to Vcc Clock Generator The RC8650 has an internal oscillator and clock generator that can be controlled either by an external 7 3728 MHz crystal or ex ternal 7 3728 MHz clock source Because the serial port baud rate is derived from the clock generator the use of ceramic reso nators is not recommended due to their relatively wide frequency tolerances If an external clock is used connect it to the XIN pin and leave XOUT unconnected See Figure 1 3 for recommended clock connections RC8650 RC8650 XIN XOUT XIN XOUT 15 7 3728 MHZ 13 15 13 pue rw 22 PF 22 PF EXTERNAL CLOCK Vss Figure 1 3 Clock Connections RC SYSTEMS RC8650 VOICE SYNTHESIZER INTERFACING THE RC8650 The RC8650 contains both asynchronous serial and eight bit bus interfaces All text commands tone generator data real time au dio data etc are transmitted to the RC8650 via one of these ports For maximum flexibility use of the serial port is recommended whenever possible Not all RC8650 functions are supported through the bus interface In particular index markers operating system updates chipset identification current operating settings A D conversion and prerecorded audio downloads are only sup ported through the serial interface Serial Interface The serial port operates with 8 data bits 1 or mor
6. NW EX BAS in line 105 that expression is disabled since the pitch varia tions due to the internal intonation algorithms would otherwise in terfere with the pitch tokens Compare this with the same phrase produced in Text mode with expression enabled 100 AS CHRS 1 105 LPRINT 5 110 LPRINT How dare you speak to me that way Phoneme mode is also useful in applications that provide their own text to phoneme translation such as the front end of a cus tom text to speech system Speed nS The synthesizer s speech rate can be adjusted with this com mand from 05 slowest through 95 fastest The default rate is 15 55 if the VC bit of the Protocol Options Register is set to 0 Voice nO The text to speech synthesizer has eight standard voices and a number of individual voice controls that can be used to indepen dently vary the voice characteristics Voices are selected with the commands through 7O shown in Table 2 3 Because this command alters numerous internal voice parameters pitch ex pression tone etc it should precede any individual voice con trol commands Table 2 3 Voice Presets 5 Voice Name Perfect Paul default Vader Big Bob Precise Pete Ricochet Randy Biff Skip Robo Robert Articulation nA This command adjusts the articulation level from OA through 9A Excessively low articulatio
7. If a system interrupt can occur while waiting for RDY to become or if RDY cannot otherwise be checked at least once every 8 us a software timeout should be enforced to avoid hanging up in the wait loop The time RDY stays 0 is relatively short 8 us min and can be missed if interrupted The timeout should be at least 15 us which is the maximum time for RDY to drop to O after writing a byte of data In non time critical applications the output routine could simply delay 15 us or longer before exiting without checking for RDY at all Figure 1 6 illustrates the recommended method of writing data to the RC8650 s bus interface This method should be used for writ ing all types of data including text commands tone generator and real time audio data YES WRITE BYTE TO RC8650 READ STATUS REGISTER WRITE COMPLETE Figure 1 6 Recommended Method of Writing Data Via the Bus Interface NO RC SYSTEMS RC8650 VOICE SYNTHESIZER Table 1 4 Bus Interface Status Register Bit Definitions R TS R RDY AF AE STBY R 7 6 5 4 3 2 1 0 Status Register Bit Description SR 7 RESERVED R Reserved for future use Mask out when polling the Status Register SR 6 TALK STATUS TS 1 Talking 0 SR 5 RESERVED R SR 4 READY STATUS RDY 1 Ready 0 Busy The TS bit has the same meaning as the TS pin 1 means that the RC8650 is producing output 0 means o
8. Meeting federal ADA requirements GENERAL DESCRIPTION The RC8650 integrates a text to speech TTS processor real time and prerecorded audio playback multiple tone generators and telephone dialer into an easy to use chipset The integrated text to speech processor utilizes RC Systems DoubleTalk TTS technology which is based on a patented voice concatenation technique using real human voice samples The DoubleTalk TTS processor also gives the user unprecedented real time control of the speech signal including pitch volume tone speed expres sion articulation and so on Using a standard serial or bus interface any ASCII text can be streamed to the RC8650 for automatic conversion into speech Real time and prerecorded audio playback modes augment the TTS capabilities for applications requiring very high voice quality and a relatively small fixed vocabulary or applications requiring special sounds or sound effects Integrated musical and sinusoi dal tone generators Touch Tone dialer and four channel A D converter further enhance the RC8650 s attractiveness by provid ing these often needed functions on chip The audio output is delivered in both analog and digital PCM audio formats which can be used to drive a speaker or digital audio stream The RC8650 includes integrated nonvolatile memory for the stor age and on demand playback of up to 15 minutes of prerecorded Speech and sounds Additional on chip memory enables the
9. and twyn apply to both the RDY and RDY status flag Figure 1 12 Bus Interface Waveforms 13 RC SYSTEMS RC8650 VOICE SYNTHESIZER Analog Audio Timing 95 us nom Audio suspended Audio resumed SUSPi Figure 1 13 Analog Audio Waveforms Digital Audio Timing Symbol Parameter Min Max Unit Notes tcyc DACLK cycle time 200 ns twcL DACLK pulse width Low 100 ns tWCH DACLK pulse width High 100 ns tDVCL DACLK Low to data valid 80 ns tDHCL Data hold from DACLK going Low 0 ns fs TTS and DTMF generator internal sampling rate 10 5 10 5 kHz Nominal DACLK DAOUT Figure 1 14 Digital Audio Waveforms 14 SYSTEMS RCS650 VOICE SYNTHESIZER Standby Timing 3 3 0 3V 5V 10 Symbol Parameter Unit Min Max Min Max twsBL STBY pulse width Low To enter Standby mode 250 250 ms To reinitialize parameter memory 250 250 ms To exit Sleep mode 380 250 ns STBY Figure 1 15 Standby Waveform 15 RC SYSTEMS RC8650 VOICE SYNTHESIZER PACKAGE INFORMATION 100 Pin Plastic 14 x 20 mm QFP measured in millimeters mm Q SEE DETAIL HUE dE HUE dU ia olo PLANE o 2 lt em a to DETAILA ele g
10. o FE gt 02 7 o o 5 2 5 9 lt 995225 252 908882626 x E 2 Q ooo lt ul 7 3 e 7 RC46xxFP 48 Lead TSOP 12 mm x 20 mm TOP VIEW Figure 1 1 Pin Assignments SYSTEMS RCS650 VOICE SYNTHESIZER PIN DESCRIPTIONS Table 1 1 Pin Descriptions Pin Name Type Name and Function ICo 1C32 INPUT CHIPSET INTERCONNECTS Interconnections between the RC8650 and RC46xx chips ICo connects OUTPUT to IC4 to etc must have a 47 pullup resistor to VCC No other connections should be made to these pins AOo OUTPUT ANALOG OUTPUT Channels 0 and 1 digital to analog D A converter outputs The output voltage range is from 0 V to AVrer 2 V when at rest Single channel systems must use TSo OUTPUT TALK STATUS Indicates whether a voice channel is active TSn can be used to enable external 1 devices such as a transmitter telephone or audio amplifier The pins polarity are programmable and can be activated automatically or under program control Single channel systems must use TSo SUSPo INPUT SUSPEND Suspends audio output when Low These pins affect only the corresponding AO pin they do SUSP1 not affect the digital audio output DAOUT pin use DARTS to control DAOUT Single channel systems must use SUSPo Connect these pins to a High level if not used ASo OUTP
11. Phoneme Mode D This command disables the text to phonetics translator allowing the RC8650 s phonemes to be accessed directly Table 2 1 lists the phonemes that can be produced by the RC8650 When concatenating two or more phonemes each phoneme must be delimited by a space For example the word computer would be represented phonetically as K AX M P YY UW DX ER Phoneme attribute tokens RC8650 supports a number of phoneme attribute tokens that can be used in addition to the standard commands These tokens do not require the command character or any parameters but can only be used in Phoneme mode As indicated in Table 2 2 the and tokens temporarily increase and decrease the pitch by msteps Besides being temporary the difference between using the pitch tokens and the Pitch com mand is that the effective pitch range is extended beyond the normal 0 99 range by approximately 20 steps and if the pitch should fall out of range it will always saturate regardless of the Protocol Options Register SAT setting All other phoneme attribute token commands remain in effect until explicitly changed Applications of Phoneme mode Phoneme mode is useful for creating customized speech when the normal text to speech modes are inappropriate for producing the desired voice effect For example Phoneme mode should be used to change the stress or emphasis of specific words in a 20 RC SYSTEMS RC8650 VOICE SYNTHESIZER
12. and RDY are forced to their not ready states when the RC8650 is in Standby Index Marker nl Index markers are nonspeaking bookmarks that can be used to keep track of where the RC8650 is reading within a passage of text The parameter nis any number between 0 and 99 thus up to 100 unique markers may be active at any given time When the RC8650 has spoken the text up to a marker it transmits the marker number to the host via the TXD pin Note that this value is a binarynumber between 0 and 98 not a literal number string as was used in the command to place the marker This allows the marker to be transmitted as a one byte value Baud Rate nH The serial port s baud rate may be programmed to any of the rates listed in Table 2 7 If included as part of the greeting message the command will effectively override the default baud rate set by the BRS pins Table 2 7 Programmable Baud Rates 3 Baud Rate 300 600 1200 2400 4800 9600 19200 Auto detect 38400 57600 115200 ooo ooscom o TS Pin Control nK The TS pins provide talk status information for each audio chan nel which can be used to activate a transmitter take a telephone off hook enable an audio power amplifier etc at the desired time Each pin s state and polarity can be independently configured as shown in Table 2 8 The programming of the TS pins do not affect the Status Register TS flag in any way The default setting is 1K
13. ments by simply printing the desired text and commands to it via the onboard RS 232 serial or parallel ports EVALUATION KIT CONTENTS The following components are included in the DoubleTalk RC8650 Evaluation Kit Printed circuit board containing the RC8650 1 chipset AC power supply Speaker Serial cable RC8650 Studio development software CD 5 SPEAKER S OUTPUT swt 4 RESET sw2 ES C B J AUDIO OUTPUT amp CONTROL paup 99 E R 0 0 2 L HEE EVALUATION BOARD N O O 4 5 O O 101 102 P108 1 1 2 2 TTL SERIAL PRINTER BUS INTERFACE DC POWER INPUT RS 232 INTERFACE INTERFACE 8 25 40 RC SYSTEMS RC8650 VOICE SYNTHESIZER CONNECTOR PIN ASSIGNMENTS amp SCHEMATICS Table 5 1 P1 Pin Assignments Audio Output amp Control Table 5 4 P101 Pin Assignments RS 232 Serial Interface Table 5 2 P2 Pin Assignments A D Converter Pin No Pin Name Pin No Pin Name 1 ANo 6 GND 2 GND 7 AN3 3 8 GND 4 GND 9 ADTRG 5 AN2 10 GND Tab
14. Eighth 24 18h Sixteenth 12 0Ch Thirty second 6 06h Using the suggested values it turns out that most musical scores sound best when played at a tempo of 255 or faster i e 0 Of course the right tempo is the one that sounds the best Play Command The Play command causes the voice data in the input buffer to begin playing Additional Initialize commands and Voice frames may be sent to the RC8650 while the tone generator is operating The TS pin and TS flag are asserted at this time enabling the host to synchronize to the playing of the tone data TS becomes inac tive after all of the data has been played Quit Command The Quit command marks the end of the tone data in the input buffer The RC8650 will play the contents of the buffer up to the Quit command then return to the text to speech mode that was in effect when the tone generator was activated Once the Quit com mand has been issued the RC8650 will not accept any more data until the entire buffer has been played Example Tune The Basic program shown in Figure 3 2 reads tone generator data from a list of DATA statements and LPRINTs each value to the RC8650 The program assumes that the RC8650 is connected to a PC s printer port although output could be redirected to a COM port with the DOS MODE command The astute reader may have noticed some non standard note durations in the DATA statements such as the first two Voice frames in line 240 Accord
15. If a TS pin is programmed High or Low it will remain so until changed otherwise This feature can be used to activate a trans mitter for example before speech output has begun In the auto matic mode the TS pin is asserted as soon as output begins it will return to its false state when all output has ceased Note that be cause RC8650 commands work synchronously the TS pin will not change state until all text and commands up to the TS Pin Control command have been spoken and or executed 23 4 RCS650 VOICE SYNTHESIZER Table 2 8 TS Pin Control n TS Mode Polarity 0 Automatic Active Low 1 Automatic Active High 2 Forced Low 3 Forced High Protocol Options Register nG This command controls various internal RC8650 operating pa rameters The command parameter n is calculated by ORing to gether the individual control bits shown in Table 2 9 For example 193G 193 128 64 1 disables V8600 emulation enables all status messages and specifies that parameters should saturate 128G is the default setting Bit POR 7 VC programs the RC8650 to emulate RC Systems original V8600 voice synthesizer module When this bit is set to O which V8600 application programs do as this bit was undefined in the V8600 the overall voice speed range is reduced and the default speed is changed from 1S to 5S matching the character istics of the V8600 The serial port status messages are also af fected by t
16. TM 1 Synchronous 0 Asynchronous In the asynchronous transfer mode the data rate and timing are controlled by the internal bit rate generator ACR 2 0 Data is output on the DAOUT pin and formatted as 1 start bit 8 data bits LSB first and 1 stop bit In the synchronous transfer mode the data rate and timing are controlled by the host with the DACLK pin Data is output from the DAOUT pin as 8 bit data frames Default 0 ACR 5 DAOUT PIN CONTROL DPC 1 Open drain 0 2 CMOS Set this bit to 1 to configure the DAOUT pin as an open drain output or to 0 for a CMOS output The open drain configuration should be used when wire or ing two or more DAOUT pins together Default 0 ACR 4 TRANSFER FORMAT TF 1 MSB first 0 LSB first Set this bit to 1 to have the 8 bit data frames transmitted most significant bit first or to 0 for least significant bit first Valid only in the synchronous transfer mode Default 0 3 TRANSFER CLOCK POLARITY TCP 1 Rising edge 0 Falling edge Set this bit to 1 to clock data out of the DAOUT pin on the rising edge of the DACLK pin or to 0 to clock data on the falling edge Valid only in the synchronous transfer mode Default 0 ACR 2 0 RATE BR 000 2400 001 4800 010 9600 011 2 14400 100 19200 101 28800 110 2 57600 111 115200 These bits determine the bit rate used in the asy
17. Table 2 1 DoubleTalk Phoneme Symbols Phoneme Example Phoneme Example Symbol Word Symbol Word A das Spanish M me AA cot N new AE cat NG rung AH cut NY ni o Spanish AW cow no Spanish AX bottom OW boat AY bite OY boy B bib P pop CH church PX spot D did R ring DH either RR tres Spanish DX city S sell E ser Spanish SH shell EH bet T tin mesa Spanish TH thin ER bird TX Stick EW acteur French U uno Spanish EY bake UH book F fee UW boot G gag V valve H he we libro Spanish WH when IH bit Y mayo Spanish IX rabbit YY you IY beet 2 200 J age ZH vision K cute Space variable pause KX ski medium pause L long 5 long pause Normally used between words duration determined by nT command Table 2 2 Phoneme Attribute Tokens Symbol Function nn Set pitch to 0 99 Increase pitch m steps Decrease pitch m steps Increase speed 1 step Decrease speed 1 step Increase volume 1 step Decrease volume 1 step V Step size determined by nE command m 2n phrase This is because Phoneme mode allows voice attributes to be modified on phoneme boundaries within each word whereas Text mode allows changes only at word boundaries This is illus trated in the following Basic program examples 100 AS 1 105 LPRINT A D A M 110 LPRINT H AW gt lt YY UW S P NIYK T UW MM IY DH AE
18. The RC8650 s bus interface allows it to be connected to a micro processor or microcontroller in the same manner as a static RAM or device as shown in Figure 1 7 The microprocessor con trols all transactions with the RC8650 over the system data bus using the RD and signals RD controls the reading of the RC8650 s Status Register WR controls the transfer of data into the RC8650 The Status Register bits and their definitions are shown in Table 1 4 A registered bus transceiver is required for communication be tween the RC8650 and microprocessor two 74HCT374s placed back to back may be substituted for the 74HCT652 shown in the figure Prior to each write operation to the RC8650 the host pro cessor should verify that the RC8650 is ready by testing RDY status flag The RC8650 can also be interfaced to a PC s printer port as shown in Figure 1 7 74HCT374 can be used in place of the 74 652 since bidirectional communication is not necessary Handshak ing is performed automatically via the BUSY pin Because the RC8650 can take up to 15 us to accept data written to it AC Characteristics parameter software drivers should wait for RDY to drop to O after a byte is written in order to avoid overwriting it with the next data byte Not doing so could result in the loss of data Waiting for RDY to drop to ensures that RDY will not falsely show that the RC8650 is the next time the driver is called
19. command character number string string literal 19 RC SYSTEMS RC8650 VOICE SYNTHESIZER If two or more commands are to be used together each must be prefaced with the command character This is the only way the RC8650 knows to treat the remaining characters as a command rather than text that should be spoken For example the following commands program pitch level 40 and volume level 7 Control A is the default command character Control A 40 Control A 7V The command character The default RC8650 command character is Control A ASCII 01 The command character itself can be spoken by the RC8650 by sending it twice in Cont rol A Control A This special command allows the command character to be spoken without affecting the operation of the RC8650 and without having to change to another command character and then back again Changing the command character The command character can be changed to another control char acter ASCII 01 26 by sending the current command character followed by the new character To change the command charac ter to Control D for example issue the command Contro1 A Cont rol D change it back issue the command Cont rol D Cont rol A It s generally a good idea to change the command character if the forthcoming text contains characters which may otherwise be interpreted as command characters and hence commands The command character can be unconditionally reset to
20. to ensure future compatibility 1 RESERVED Reserved for future use Write 0 to ensure future compatibility POR 0 STATUS MESSAGES STM 1 Enabled 0 Disabled Enables disables the transmission of certain status messages from the TXD pin Default 0 24 4 RCS650 VOICE SYNTHESIZER ADC Control Register n The ADC Control Register controls the operation of the integrated analog to digital converter All ADC results are transferred via the TXD pin The following is an overview of the ADC Four channels 8 bit resolution 2 LSB precision One shot continuous single sweep and continuous sweep modes of operation Selectable software or hardware triggering Support for external amplification signal conditioning of all four ADC channels Figure 2 1 is a functional block diagram of the ADC input stage Figure 2 2 illustrates the ADC in operation Table 2 10 lists the definitions of each bit of the ADC Control Register The default register setting is O Operation of the ADC is not mutually exclusive of other RC8650 functions The ADC can operate concurrently with text to speech tone generation audio playback etc The effective sampling rate is one tenth the serial port baud rate 115200 baud 11 5 ksps Note Relative parameters work differently than usual with this command Instead of specifying a displacement from the register s
21. 100 ms inter digit pause both dura tions can be extended to 500 ms by setting the DDUR bit of the Protocol Options Register more than satisfying telephone sig naling requirements The mapping of the command parameter n to the buttons on a telephone is shown in Table 2 12 28 SYSTEMS RCS650 VOICE SYNTHESIZER The pause tone can be used to generate longer inter digit de lays in phone number strings or to create silent periods in the RC8650 s output The generator s output level can be adjusted with the Volume command nV commands may be inter mixed with text and other commands without restriction Table 2 12 DTMF Dialer Button Map n Button 0 0 9 9 10 11 12 13 B 14 C 15 D 16 pause AUDIO PLAYBACK COMMANDS Prerecorded Audio Playback Mode n amp A virtually unlimited number of sound files can be stored in the RC8650 limited only by the amount of available on chip audio memory RC8650 Studio a Windows based application available from RC Systems makes it easy to arrange and manage standard Windows wave files that can be downloaded into the RC8650 Each sound file word phrase or sound effect is automatically assigned a record number beginning with zero The first file is record the second is record 1 and so on The playback com mand plays records in any random order using n to specify the desired record The playback level can be adjusted with the Volume
22. 5 I NGKO CHR K IX Spanish five Basic function THE TRANSLATION ALGORITHM In order to better understand how an exception dictionary works it is helpful to understand how the DoubleTalk text to speech gine processes text Algorithms within the DoubleTalk engine analyze input text a char acter at a time from left to right A list of pronunciation rules is searched sequentially for each character until a rule is found that matches the character in the correct position and context The algorithm then passes over the input character s bracketed in the rule the text fragment and assigns the pronunciation given by the right side of the rule to them This process continues until all of the input text has been converted to phonetic sounds The following example illustrates how the algorithm works by translating the word receive The algorithm begins with the letter r and searches the R pronun ciation rules for a match The first rule that matches is RE IX because the r in receive is an initial r and is followed by an e a consonant and a vowel e Consequently the text fragment re receives the pronunciation and the scan moves past re to the next character receive E is not the next scan character because it occurred inside the parentheses with the r the text fragment re as a whole receives the pronunciation Ix The first match among the C rules is C 5 because c is fo
23. 6 HO1O3NNOO 5280 V OL HOLO3NNOO 077 907 98 Fx 0 1300 MOH Nid 92 V 318VO O 18 0 V VIA 1904 13 3 18l1VdWOO Od ins et 404 V OL ATLOSHIC Q3193NNOO 38 AVI 6014 31ON o sve 0 iov OT LOLY vas Cz ES 1 anro IV SOINOHIN3O 9012 err ope 80 ole ot OXY 1908 Mul _ E 1HOd TLL 9 T T N3HM 9 N3dO p 7100 eaa 510 NV 19 075 pL Sou Z e axi INV a O 07 _ 0 072 x ei 9 0418 a wova O 1 s15 2179 a Siuvd vit Ofer Inova anro 1 anro lt tasns 4 ajo 08505 gt 1 SH 2019 019 T 18V O 05 v 9 Atg anro 2588 gt ear 151 s 9917 051 9 usa 509 t 210 OF zar Eds s lt 0 45 19 0588 Fras 0345 anvo 2 anro 2818 2 00 7019 4 p 9 99 rg gt 2262 59 ZOZXYN 99 BE 43
24. External Clock Input Timing 3 3 0 3 V 10 Symbol Parameter Unit Min Nom Max Min Nom Max fc External clock input frequency 7 3359 7 3728 7 4097 7 3359 7 3728 7 4097 MHz tWcL External clock input Low pulse width 60 67 8 40 67 8 ns tWCH External clock input High pulse width 60 67 8 40 67 8 ns External clock rise time 18 15 ns External clock fall time 18 15 ns lwcL gt twcH XiN icr gt lt Figure 1 11 External Clock Waveform 12 RC SYSTEMS RC8650 VOICE SYNTHESIZER Bus Interface Timing 3 3 0 3 V 1096 Symbol Parameter Unit Min Max Min Max twsL STS pulse width Low 215 250 ns tDVSL STS Low to data valid 155 150 ns tpHsH Data hold from STS going High 5 5 ns tWRL PRD pulse width Low 215 250 ns tpvRH Data setup to PRD going High 85 40 ns tDHRH Data hold from PRD going High 0 0 ns PWR pulse width Low 380 250 ns tpvwH Data setup to PWR going High 2 2 us Data hold from PWR going High 15 15 us tvawH RDY High from PWR going High Note 1 15 15 us twYH RDY pulse width High Note 1 8 8 us Applies to the RDY pin and RDY status flag lt STS twRL PRD twwL PWR lt tyHWH gt Note 1 RDY Note 1 lt tpuwH gt tpvs_ gt lt gt DVWH
25. Function n Range Default nA Articulation 0 9 5 nB Punctuation filter 0 15 6 C nC Character mode delay 0 31 0 D Phoneme mode E nE Expression 0 9 5 nF Formant frequency 0 9 5 nG Protocol Options Register 0 255 128 nH Baud rate 0 10 Index marker 0 99 J nJ Musical sinusoidal tone generators 0 99 nk TS pin control 0 3 1 L Load exception dictionary nN Audio Control Register 0 255 0 nO Voice 0 7 0 nP Pitch 0 99 50 nQ Sleep timer 0 31 0 nR Reverb 0 9 0 nS Speed 0 9 2 T nT Text mode delay 0 15 0 U Enable exception dictionary Volume 0 9 5 Write greeting message 255 nX Tone 0 2 1 nY Timeout delay 0 15 0 2 Zap commands Reinitialize DTMF generator 0 16 Real time audio playback 0 99 Prerecorded audio playback 0 9999 Control Register 0 255 Chipset ID Interrogate 6 2 31 RC SYSTEMS RC8650 VOICE SYNTHESIZER SECTION 3 Musica amp SINUSOIDAL TONE GENERATORS MUSICAL TONE GENERATOR The RC8650 contains a three voice tone generator that can be used for creating music and sound effects This section explains how to program the generator Note The musical tone generator output is available only from the AO pins Digital audio output is not possible The musical tone generator is activated with the J command no parameter Once activated all data output to the RC8650 is di rected to the tone generator Note The R
26. STRAIGHT THRU CABLE Figure 1 4 RS 232C Interface RC SYSTEMS RC8650 VOICE SYNTHESIZER Note The measurement cycle ends when there have been no High to Low nor Low to High transitions on the BRD pin for at least 75 ms Consequently the RC8650 will ignore any data sent to it for a period of 75 ms after the lock on character has been received The CTS pin is driven High during this time and the acknowledg ment character is not transmitted until the RC8650 is actually ready to accept data See Figure 1 5 Status messages The serial port provides real time operating status information via the TXD pin Status are transmitted as one byte messages shown in Table 1 3 Each message directly correlates to a status flag in the Status Register Table 1 4 The specific character used and whether it will be transmitted are functions of the VC and STM bits of the Protocol Options Register The Protocol Options Register is described in Section 2 For information about how to obtain read ing progress status see the Index Marker command description Table 1 3 Status Messages vc 0 Requires Event VC 1 STM 1 Output has started B m Yes Output has stopped E n Yes Buffer almost empty B Yes 100 bytes remaining e Buffer almost full 100 bytes available T Sleep Standby mode S No confirmation p Baud rate lock SE No confirmation Bus Printer Interface
27. Tg is calculated as follows 256 sec where 0 lt Kg lt 255 Substituting the relationship fg 617 155 n into the above equation Kg x 155 2410 sec Setting 1 yields the shortest duration 0 treated as 256 the longest Depending on the value of n can range from 23 ms to 16 5 sec The tone frequencies F4 and Fo are computed as follows Fi 1024 Hz where 0 lt lt 255 Substituting the relationship fs 617 155 n into this equation Ki x 603 155 n Hz Depending on the value of n F can range from 0 Hz to 2746 Hz If only one tone is to be generated the other tone frequency may be set to 0 Kj 0 or equal in frequency Note however that due to additive nature of the tone generators the output amplitude from both generators running at the same frequency will be twice that of just one generator running Both K4 and Ko may be set to 0 to generate silence Note that the frequency step size and frequency range are strictly functions of n In general the larger n is the larger the step size and range will be The parameter can be thought of as multi plier which when multiplied by the step size yields the output frequency For example setting n 95 corresponding to an inter nal sampling rate of 10 28 KHz results in a frequency step size of 603 155 95 Hz or 10 Hz Thus the output frequency range spans
28. component and digits them selves are not shown for clarity 38 RC SYSTEMS RC8650 VOICE SYNTHESIZER Heteronyms Heteronyms are words that have similar spellings but are pro nounced differently depending on the context such as read reed and red and wind the wind blew and wind the clock Exceptions can be used to fix up these ambiguities by including non printing Control characters in the text fragment of the exception Suppose a line of text required the word close to be pronounced as it is in a close call instead of as in close the window The following exception changes the way the s will sound DCLOSE K L OW 5 Note the Control D character D in the text fragment Although non printing character the translation algorithms treat it as they would any printing character Thus the string D close will be pronounced with the s receiving the s sound wherever it ap pears in the text stream Plain close without the Control D will be unaffected the s will still receive the z sound It does not matter where you place the Control character in the word as long as you use it the same way in your application s text You may use any non printing character except LF and CR in this manner Foreign Languages Dictionaries can be created that enable the RC8650 to speak in foreign languages It s not as difficult as it may seem all that is required in most cases is a pronunciation
29. current value relative parameters allow you to set and clear individual register bits For example 34 sets bits ADR 1 and ADR 5 16 clears ADR 4 Table 2 10 ADC Control Register Definitions R AMP TRG CONT SWP R CH CH 7 6 5 4 3 2 1 0 ADC Control Register Bit Description ADR 7 RESERVED Reserved for future use Write 0 to ensure future compatibility ADR 6 EXTERNAL AMPLIFIER 1 Amp connected 0 Amp not connected Setthis bit to 1 to use an operational amplifier connected between the AMPIN and AMPOUT pins Connecting an op amp and enabling this function allows the voltage input to each ADC input pin to be amplified with one op amp Default 0 ADR 5 TRIGGER SOURCE TRG 1 Hardware trigger ADTRG pin 0 Software trigger Setting this bit to 1 enables hardware triggering of the ADC The ADC will not begin operating until the ADTRG pin changes from a High to a Low level When TRG is 0 the ADC will begin operating whenever the ADR register is written to Default 0 ADR 4 CONTINUOUS MODE CONT 1 Continuous mode 0 One shot mode Setting this bit to 1 causes the ADC to operate continuously If a single channel is selected for measurement ADR 3 0 that channel will be read repeatedly If sweep mode is selected ADR 3 1 the active input channels will be continuously read in a cyclic fashion Clearing this bit w
30. intonation is given to the beginnings and endings of sentences If text is sent to the RC8650 without a CR or Null it will remain untranslated in the input buffer indefinitely The RC8650 contains a programmable timer that is able to force the RC8650 to translate its buffer contents after a preset time inter val The timer is enabled only if the Timeout Delay parameter n is non zero the RC8650 is not active not talking and the input buffer contains no CR or Null characters Any characters sent to the RC8650 before timeout will automatically restart the timer The Timeout parameter n specifies the number of 200 millisecond periods in the delay time which can range from 200 milliseconds to 3 seconds The default value is OY which disables the timer 22 4 RCS650 VOICE SYNTHESIZER Table 2 5 Timeout Delays n Delay 0 Indefinite wait for CR Null 1 200 milliseconds 2 400 milliseconds 15 3000 milliseconds 3 sec Sleep Timer nQ This command activates the RC8650 s sleep timer If the user for gets to turn off the system s power at the end of the day for ex ample the sleep timer can be used to force the RC8650 into Standby mode automatically An audible reminder tone can even be programmed to sound every ten minutes to remind the user that the power was left on before shutdown occurs The sleep timer is reset anytime the RC8650 is active or more precisely whenever the TS pin is ass
31. performed on the input text If it is not possible for the application to send a CR or Null at the end of each text message use the Timeout Delay command nY The RC8650 does not make any distinction between uppercase and lowercase characters Text and commands may be sent as all uppercase all lowercase or any combination thereof Text mode In this mode all text sent to the RC8650 is spoken normally Punctuation is also taken into consideration by the into nation generation algorithms This is the default operating mode Character mode This mode causes the RC8650 to translate input text on a character by character basis i e text will be spelled instead of spoken as words Phoneme mode This mode disables the RC8650 s text to phonetics translator allowing the RC8650 s phonemes to be di rectly accessed Real Time Audio Playback mode In this mode data sentto the RC8650 is written directly to its audio buffer This results in a high data rate but provides the capability of producing the high est quality speech as well as sound effects PCM and ADPCM data types are supported Prerecorded Audio Playback mode This mode allows re corded speech and sound effects to be stored on chip and played back at a later time PCM and data types are supported Tone Generator modes These modes activate the RC8650 s musical tone generator sinusoidal generator or generator They can be used to generate audible promp
32. user to store a power on greeting message that is automatically played whenever the chipset is powered up as well as configure the chip s default settings A special memory area is also provided for storing a custom pronunciation dictionary allowing the pro nunciation of virtually any character string to be redefined All of these features can be programmed and updated by the user via the integrated serial port even in the field after the RC8650 has been integrated into the end product The RC8650 chipset is comprised of two surface mounted de vices Both operate from a 3 3 V or 5 V supply and consume very little power Most applications require only the addition of a lowpass filter audio power amplifier to implement fully functional System DoubleTalk RC8650 User s Manual Rev F1 Revised 2 18 02 1999 2001 RC Systems Incorporated RC SYSTEMS RC8650 VOICE SYNTHESIZER SECTION 1 SPECIFICATIONS PINOUTS 62 61 PIO7 c3 C4 PRD PIOS CJ NC PIO4 C STS J C2 PIO2 NC PIO1 C1 Pioo C RC8650FP NC SE C 100 Lead QFP co SEL3 14 mm x 20 mm ACLR SEL2 C NC SELI C VCC AN3 E TOP VIEW AN2 RDY QO RXD AVSS C TXD ANO DARTS AVREF C DACLK AVCC DAIN ADTRGL DAOUT 1234567289 2 LELELELTETET ET ET ET EE ET ELE EE CE TETTE LT LT ET ET ET ET LE ET ET LT UUU U 2 20 amp amp FONT ONT
33. 0 Hz to 255 x 10 Hz or 2550 Hz in 10 Hz steps As an example suppose your application needed to generate the tone pair 440 350 Hz a dial tone for say 2 5 seconds We will choose n 95 because it yields a convenient step size of 10 Hz The tone duration parameter is calculated as follows 2410 x 155 n substituting 2 5 sec and n 95 2410 x 2 5 155 95 100 K4 440 Hz is computed as follows Ky F4x 155 n 603 440 155 95 603 44 In like manner 350 Hz is computed to be 35 In order to embed the command in a text file the computed values must be converted into their ASCII equivalents 100 44 and 35 The complete command becomes A95Jd t which can be embedded within normal text for the synthesizer 35 RC SYSTEMS RC8650 VOICE SYNTHESIZER SECTION 4 DICTIONARIES Exception dictionaries make it possible to alter the way the RC8650 interprets character strings it receives This is useful for correcting mispronounced words triggering the generation of tones and or the playback of prerecorded sounds or even speak ing in a foreign language In some cases an exception dictionary may even negate the need of a text pre processor in applications that cannot provide standard text strings This section describes how to create exception dictionaries for the RC8650 The text to speech modes of the RC8650 utilize an Engl
34. 00 L H H 2400 H L 4800 H L H 9600 H H L 19200 H H H Auto detect The automatic baud rate detection mechanism is enabled when the BRSo BRS pins are all at a High logic level and the BRD is connected to RXD The baud rate is determined by the shortest High or Low period detected in the input stream This period is assumed to be the bit rate of the incoming data In order for the RC8650 to determine the incoming baud rate there must be at least one isolated 1 or in the input character The CR character ODh is recommended for locking the baud rate The character is not otherwise processed by the RC8650 it is discarded If the measured bit period is determined to be a valid baud rate the RC8650 acknowledges lock acquisition by transmitting the ASCII character I Ch on the TXD pin Start bit Baud rate validation 75 ms a 6Ch CTS TXD Figure 1 5 Baud Rate Detection Timing MAX232A RS 232C vec 16 2 01UF 2 vec 6 BRSO 1 29 BRS1 28 15 BRS2 e 7 BRD 7 RXD e TXD 9 098 1 VCC V GND R10 R20 Tel Cis SERIAL PORT TA 0 1UF DES ci L3 DSR 6 4 RXD 2 ex ATS 710 4 lt 0 1UF TxD 316 RAMS 8 919 Slo TIO S T20 0 USE
35. 1 79 2 99 89 96 v 18 2 08 8 29 9101 61 S9 9191 99 2 19 901 22 89 6101 69 oca vc 04 1201 Sz 2001 74 8001 tv bl 5 891 9 929 9 ve 8 8201 6L 6201 0 08 io Het zeo Fs z v 17 gp 90 ZE 5 ssa DT _ 3nrogo IV 3nrovo 42 5 8 NOISIA3H 10 0 E alva N OH 31 25 Id QNO OF l QNO OF SON 2 t oL O4 gt ano 012 zg mow O 6 52 10 ALt ZZ 92 S9LOHbL 41978 2011 9 T1004 zooa fA OS 2 avo Go lt 008 fes oF oviva 08 ov 02 95 10 Si za M eviva O 4 za 8 eg ev 2 8 B ZL sa w H 9 gg sd St
36. 1023 75 25 1023 q C22 IC22 Susi PRD 1 21 a 1 21 473 sts 1620 1620 206 69 23 c18 88 22 ic18 TERMINATE 32 67 21 UNUSED I O PINS 31 1017 29 C17 TO APPROPRIATE DIGITAL DAOUT 1 16 6 LOGIC LEVEL AUDIO DARTS icis 65 19 215 83 pacik 63 18 61 8 icta AO0 z 12 150 2 Ic ANALOG 249 p 57 4 OUTPUTS amp 09 56 5 cs CONTROL 5 55 2 SUSP1 6 i 6 BR ast IC5 IC5 72 17 45V 92 50 26 a He 28 Ica SEL2 1 2 30 SEL3 44 28 Ie 89 ico 12 ico Spe 10 sels PIO7 i PIO7 STBY swt PIOS B E PIOS PIO4 PIO4 a ACLR PIO3 E PIO3 7 n RESET 86 33 swe i Plor EE A Po XIN PIOO vi 7 8728 MHZ 13 2 u2 RC8650FP RC46xxFP c2 22 PF 22 PF Figure 1 10 Typical Operating Circuit Test Circuit ABSOLUTE MAXIMUM RATINGS Supply voltage and 0 3 V to 46 5 V DC input voltage 0 3 V to Vcc 40 3 V Operating temperature Ta 0 C to 70 C Storage temperature 5 55 to 125 WARNING Stresses greater than those listed under Absolute Maximum Ratings may cause permanent dam
37. 4 4 RCS650 VOICE SYNTHESIZER Table 1 1 Pin Descriptions Continued Pin Name Type Name and Function INPUT A D CONVERTER INPUTS Analog to digital converter input pins Leave any unused pins unconnected ADTRG INPUT A D CONVERTER TRIGGER Starts A D conversion when hardware triggering is selected Minimum Low pulse width is 200 ns Leave this pin unconnected if not used AMPIN INPUT A D CONVERTER AMPLIFIER Connecting an operational amplifier between these pins allows the input voltage to all four A D converter input pins to be amplified with one operational amplifier Leave these pins AMPOUT OUTPUT unconnected if not used RXD INPUT RECEIVE DATA Asynchronous serial data input used to read text data and commands into the RC8650 Connect this pin to a High level if not used TXD OUTPUT TRANSMIT DATA Asynchronous serial data output used to read information out of the RC8650 CTS OUTPUT CLEAR TO SEND The CTS pin is Low when the RC8650 is able to accept data CTS acknowledges each byte received on the pin by going High briefly If the RC8650 s input buffer becomes full as result of the last byte received CTS will remain High until room becomes available BRD INPUT BAUD RATE DETECT BRD is used by the RC8650 to sample the host s serial data stream in order to determine its baud rate BRD is normally connected to the The BRS
38. C8650 SBA 2 PIOO s 5 Ao DBO B1 lt _DBi gt pioz 6 B2 gt PIOS 57 B3 lt 083 gt pios 8 aa H 584 pios 53 as B5 pass 6 81 1 6 B6 Ha BB gt PIO7 A7 B7 DB7 gt STS amp zu lt D _ GAB RD WOW 74HCT652 47K PWR RDY Figure 1 7 Bus Printer Interface RC SYSTEMS RC8650 VOICE SYNTHESIZER VCC o L TO RC8650 li STS CLK 9 LATCHED STATUS FLAGS 74HCT374 Figure 1 8 Method of Capturing Status Information for Driving External Circuitry Analog Audio Output The analog output pins and AO are high impedance 10 typ outputs from the RC8650 s internal D A converters When us ing these outputs the addition of an external low pass filter is highly recommended The circuit shown in Figure 1 9 is a low pass filter oower amplifier capable of delivering 675 mW into an 8 load The circuit is rep resentative of one channel use AQg in single channel systems The amplifiers shutdown pin can be controlled by the corre sponding channel s TS pin to minimize current drain when the channel is inactive Digital Audio Output The digital audio pin DAOUT outputs the RC8650 s audio signal as a digital audio stream consisting of 8 data bits per sample The normalized
39. C8650 assumes that tone generator data will imme diately follow the J command therefore be sure not to terminate the command with a CR or Null The tone generator is controlled with four four byte data and com mand frames called Initialize Voice Play and Quit With these the programmer can control the volume duration and fre quencies of the three voices Byte 0 1 2 3 KTL KTH Initialize command Play command K1 K2 Voice frame 0 0 0 0 Quit command Figure 3 1 Musical Tone Generator Command Formats Initialize Command The Initialize command sets up the tone generator s relative am plitude and tempo speed The host must issue this command to initialize the tone generator before sending any Voice frames The Initialize command may however be issued anytime afterward to change the volume or tempo on the fly Initialize command format The Initialize command consists of a byte of zero and three rameters The parameters are defined as follows KA Voice amplitude 1 255 Tempo low byte 0 255 Tempo high byte 0 255 The range of the tempo and is 1 65 535 1 FFFFh the larger the value the slower the overall speed of play The am plitude and tempo affect all three voices and stay in effect until another Initialize command is issued If the command is issued between Vo
40. Control A by sending Control ASCII 30 to the RC8650 while operating in the Text Character or Phoneme modes Command parameters Command parameters are composed of one to four digit number strings The RC8650 supports two types of parameters absolute and relative Absolute parameters explicitly specify the parameter s new value such as 9S or 3B Relative parameters specify a displacement from a parameter s current value not the actual new value itself Relative parameters can specify either a positive or negative dis placement from a parameter s current value For example the Volume command 2 increases the volume level by two 2 If the current volume is 4 the volume will increase to 6 after the command has executed The command 2V will have similar effect except the volume will be decreased by two If the value of a parameter falls outside the command s range the value will either wrap around or saturate depending on the setting of the SAT bit of the Protocol Options Register For example if parameters are programmed to wrap the current volume is 7 and the command 4 is issued the resultant volume will be 7 4 10 1 since the volume range is 0 9 If parameters are programmed to saturate the resultant volume would be 9 instead When writing application programs for the 8650 it is recom mended that relative parameters be used for temporarily chang ing voice attributes such as raising the pitch
41. D A and A D converters Connect this pin to Vss ANALOG REFERENCE VOLTAGE Reference voltage for the D A and A D converters Connect this pin to Vcc Caution any noise present on this pin will appear on the AO output pins NC NO CONNECT NC pins must remain unconnected Connection of NC pins may result in component failure or incompatibility with future product enhancements BLOCK DIAGRAM XOUT XIN RC8650 RC46xx CHIPSET PIOc PIOz TONE GENERATORS 1 RDY ANALOG ASo AS1 STS AUDIO PRD 790 791 PWR Stor SUSP1s DOUBLETALK TEXT TO SPEECH PROCESSOR RXD DAIN Mim DIGITAL DAOUT SERIAL I F AUDIO BRSo BRS DACLK pno GREETING MSG DARTS MEMORY DEFAULT SETTINGS 234 BYTES CHANNEL RECORDED AUDIO EXCEPTION AMPIN SEL1 SELs DECODER 0 130 390 910 DICTIONARY ADTRG Figure 1 2 Functional Block Diagram RC SYSTEMS RC8650 VOICE SYNTHESIZER FUNCTIONAL DESCRIPTION The RC8650 chipset includes a number of features that make it ideally suited for any design requiring voice output The RC8650 s major features are described below Text to Speech Synthesizer The RC8650 provides text to speech conversion with its inte grated DoubleTalk text to speech synthesizer Any English text written to the RC8650 is automatically converted into speech Commands can be embedded in the input stream to dynamically control the voice even at the phoneme level phonemes are the basic so
42. RC SYSTEMS RC8650 VOICE SYNTHESIZER DoubleTalk RC8650 CMOS 3 3 Volt 5 Volt Voice Synthesizer Chipset FEATURES e Integrated text to speech processor High voice quality unlimited vocabulary Converts any ASCII text into speech automatically Add modify messages by simply editing a text file On the fly control of speed pitch volume etc Playback of sound files Real time PCM and ADPCM Prerecorded on chip up to 15 minutes Tone generation Three voice musical Dual sinusoidal DTMF Touch Tone dialer On chip A D converter Four channels 8 bit resolution One shot continuous single sweep and continuous sweep modes of operation Software and hardware triggering Support for external op amp Analog and digital audio outputs e Serial and bus interfaces e User programmable greeting and default settings e Flexible user exception dictionary field programmable e 2 buffer for virtually no overhead operation Available in 3 3 V and 5 V versions Low power typ 3 3 V 11 active 0 7 mA idle standby APPLICATIONS e Robotics e Talking OCR systems e Talking pagers and PDAs e GPS navigation systems e Vending ticketing and ATM machines e Remote diagnostic reporting e Dial up information systems e Handheld barcode readers Electronic test and measurement Security systems e Aids for the orally or visually disabled
43. UT AUDIO SYNC Outputs a clock signal in synchronization with the updating of analog outputs AOo and AS AO The pin changes state whenever the corresponding D A converter is updated Single channel systems must use ASo DAOUT OUTPUT DIGITAL AUDIO OUTPUT Provides the same 8 bit digital audio stream that is fed to the internal D A converters This pin can be programmed to be a CMOS or open drain output The communication protocol is progammable and can operate in synchronous or asynchronous mode DACLK INPUT DIGITAL AUDIO CLOCK This pin is used to clock data out of the DAOUT pin data into the DAIN pin in the synchronous digital audio output mode DACLK can be programmed to transfer data on either the rising edge or falling edge of the clock Connect this pin to a High level if not used DAIN INPUT DIGITAL AUDIO CONTROL INPUT This is used to control the operation of the DAOUT pin in a multi channel system Reserved for a future product connect this pin to a High level DARTS INPUT DIGITAL AUDIO REQUEST TO SEND A Low on this pin enables transmission from the DAOUT pin a High suspends transmission DARTS may be used in both the synchronous and asynchronous transfer modes Connect this pin to a Low level if not used PlOo PIO7 INPUT PERIPHERAL INPUT OUTPUT BUS Eight bit bidirectional peripheral bus Data is input from a OUTPUT peripheral when PRD is active Status information is output when STS
44. actually translating any of the input text The text fragment if any must always be contained within parentheses Characters to the left of the text fragment specify the left context what must come before the text fragment in the input string and characters to the right define the right context Both contexts are optional so an exception may contain neither either or both con texts There are also 15 special symbols or context tokens that can be used in an exception s context definitions Table 4 1 Note that although context tokens are by definition valid only within the left and right context definitions the wildcard token may also be used within text fragments Any other context token ap pearing within a text fragment will be treated as a literal character Table 4 1 Context Tokens Symbol Definition A vowel a e i front vowel e i y consonant b c d f g h K m n p q r t V W X Z or more consonants Zero or more consonants A voiced consonant b d g m n v W 2 One of j r s t z ch sh th One of b f g p t A suffix able s ably e s ed ly er s ely eless ement s eness ing s ingly must also be followed by a non alphabetic character amp A sibilant g j S X 2 ch sh A nonalphabetic character number Space etc or more non printing characters spaces c
45. age to the device This is a stress rating only operation of the device at any condition above those indicated in the operational sections of these speci fications is not implied Exposure to absolute maximum rating conditions for extended periods may affect device reliability 11 RC SYSTEMS RC8650 VOICE SYNTHESIZER DC CHARACTERISTICS TA to 70 Voc 3 3 V 5 V Vss AVss Xin 7 3728 MHz 3 30 3 V 1090 Symbol Parameter Unit Test Conditions Min Typ Max Min Typ Max VIL Input voltage Low 0 0 2Vcc 0 0 2Vcc V Input voltage High 0 8Vcc Vcc 0 8Vcc Vcc V Analog input voltage ANo 3 0 AVREF 0 AVrer V Input hysterisis RESET 0 2 1 8 0 2 1 8 V Output voltage Low 0 5 0 5 V loL21mA Output voltage High 0 5 0 5 V lt 1 Input load current t4 t5 Vss to Vcc Ro Analog output resistance 4 10 20 4 10 20 AOo 1 lcc Supply current All outputs open Active 11 20 17 35 mA all inputs Vcc Idle 0 7 1 5 1 2 mA VSs AVcc and currents Standby 2 15 2 25 included Program Note 1 50 70 mA Applies during internal programming operations greeting message dictionary and prerecorded sound file downloads and microcode updates AC CHARACTERISTICS TA to 70 C Voc 3 3V 5 V Vas OV
46. command skips to the next sentence in the buffer Neither command affects the RC8650 s settings Note that the format of these commands is unique in that the com mand character Control A is not used with them Control X ASCII 24 and Control Y ASCII 25 characters are written directly to the RC8650 which enables it to react immediately even if its input buffer is full To be most effective the states of the RC8650 handshaking signals should be ignored Reinitialize This command reinitializes the RC8650 by clearing the input buffer and restoring the voice parameters to their factory default settings The exception dictionary prerecorded audio nor greet ing message are affected Zap Commands 2 This command prevents the RC8650 from honoring subsequent commands causing it to read commands as they are encoun tered useful in debugging Any pending commands in the input buffer will still be honored The only way to restore command rec ognition after the Zap command has been issued is to write Con trol ASCII 30 to the RC8650 or perform a hardware reset TONE GENERATION COMMANDS Musical Sinusoidal Tone Generators J nJ The musical and sinusoidal tone generators are activated with these commands Refer to Section 3 for detailed information DTMF Generator n The DTMF Touch Tone generator generates the 16 standard tone pairs commonly used in telephone systems Each tone is 100 ms in duration followed by a
47. e prerecorded audio memory is not affected The RC8650 then announces its version number via the AOo pin Connect this pin to a High level if not used INPUT SELECT Programs the channel pair that the RC8650 is to respond to in a multi channel system These SEL5 pins are reserved for a future product connect SEL1 SELs to a Low level to ensure upward compatibility RESET INPUT RESET A Low immediately terminates all activity and sets all pins in a known state RESET must be held Low a minimum of 3 us after Vcc has stabilized in the proper voltage range All pins will be valid within 2 ms after reset ACLR INPUT ANALOG CLEAR Low initializes the D A and A D converters within the RC8650 Connect ACLR to RESET RC SYSTEMS RC8650 VOICE SYNTHESIZER Table 1 1 Pin Descriptions Continued Pin Name Type Name and Function XIN INPUT CLOCK INPUT OUTPUT These pins connect to the internal clock generating circuit All timing for the RC8650 and RC46xx chips are derived from this circuit Connect a 7 3728 MHz crystal between XIN XOUT OUTPUT and XOUT Alternatively an external 7 3728 MHz square wave may be applied to XIN Voc POWER 5 V 10 3 3 V 10 3 V power supply connection Vss GROUND Connect these pins to system ground AVcc ANALOG POWER Power supply input for the D A and A D converters Connect this pin to Vcc AVss ANALOG GROUND Ground input for the
48. e programmed to any rate be tween 4 and 11 kHz 32 000 88 000 bps by choosing the appro priate parameter value The relationship between the command parameter n and the sampling rate fs is n 155 617 fs f 617 155 where fs is measured in kHz For example to program an 8 kHz sampling rate choose n 78 The range of nis 0 99 hence fs can range from 4 to 11 kHz The following procedure should be used for sending PCM or ADPOM audio data to the RC8650 in real time 1 Program the desired volume level with the Volume nV com mand A volume setting of 5 will cause the data to be played back at its original volume level This step is optional 2 Issue the Real Time Audio Playback Mode command if PCM data is being sent or 7 for ADPCM data The TS pin and TS flag will be asserted at this time 3 If the RC8650 s serial port is being used for transferring the audio data change the host system s baud rate to 115 200 baud at this time 4 Begin transferring the audio data to the RC8650 The same methods employed for sending ASCII data to the text to speech synthesizer should be used PCM data must be sent to the RC8650 as linear eight bit signed data 127 to 127 0 midscale 5 After the last byte of audio data has been sent to the RC8650 send the value 80h 128 This signals the RC8650 to termi nate Real Time Audio Playback mode and return to the text to speech mode of operation Note that up to 1024 b
49. e stop bits no parity and any standard baud rate between 300 and 115200 bps A typical RS 232C interface is shown in Figure 1 4 Note that the 2 transceiver is not required if the host system s serial port operates at 0 5 V logic levels which most microprocessors and microcontrollers do The RC8650 s serial port may be con nected directly to the host system in this case The 5 pin should be used to control the flow of serial data to the RC8650 It is not necessary to check CTS before transmitting every byte however All data is routed through a high speed 16 byte buffer within the RC8650 before being stored in the primary buffer CTS may be checked every eight bytes with no risk of aata loss Baud rate selection The serial port s baud rate can be programmed using any of three methods pin strapping auto detect and by command Pin strapping sets the baud rate according to the logic levels present on the BRSg BRS pins as shown in Table 1 2 Auto detect enables the serial port to automatically detect the baud rate of the incoming data The baud rate command described in Section 2 allows the baud rate to be changed at any time effectively overriding the first two methods Note that pin strapping cannot be used to program baud rates higher than 19200 to do this auto detection or the baud rate command must be used Table 1 2 Default Baud Rate Options BRS2 BRS BRSo Baud Rate L L L 300 L L H 600 L H L 12
50. e word process to have the long oh sound the way it is pronounced in many parts of Canada Since the word is otherwise pronounced correctly the exception redefines only the o PR O CESS OW But much to our horror the RC8650 simply refuses to take on the new Canadian accent It so happens the RC8650 has a built in rule which looks some thing like this This rule translates a group of three characters instead of only one as most of the built in rules do Because the text fragment PRO is translated as a group the o is processed along with the initial pr and consequently the exception never gets a shot at the o If you suspectthis may be happening with one of your exceptions include more of the left hand side of the word in the text fragment in the example above PRO P OW would work 39 RC SYSTEMS RC8650 VOICE SYNTHESIZER Section 5 RC8650 EvaruarioN Kit The RC8650 Evaluation Kit comes with everything required to evaluate and develop applications for the RC8650 chipset using Windows based PC The included RC8650 Studio software provides an integrated development environment with the follow ing features Read any text either typed or from a file Easy access to the various RC8650 voice controls Manage collections of sound files and store them in the RC8650 Exception dictionary editor compiler and much more The evaluation board can also be used in stand alone environ
51. erted The timer begins run ning on the falling edge of TS In this way the RC8650 will not shut itself down during normal use as long as the programmed timer interval is longer than the maximum time the RC8650 is inactive The command parameter n determines when Standby mode will be entered You can place the RC8650 in Standby mode immedi ately program the sleep timer to any of 15 ten minute intervals 10 to 150 minutes or disable the sleep timer altogether Note that the delay interval is simply nx 10 minutes for O n 16 ORing 10h to these values 16 lt n 32 also enables the re minder tone which sounds at the end of each ten minute interval Programming n disables the sleep timer which is the default setting Setting n 2 16 forces the RC8650 to enter Standby mode as soon as all output has ceased If the sleep timer is allowed to expire the RC8650 will emit the ASCII character p from the TXD pin and the STBY status flag will be set to 1 just before entering Standby mode This enables the host to detect that the RC8650 has entered Standby mode Table 2 6 Sleep Timer n Delay 0 Sleep timer disabled 1 10 min 15 150 min 16 0 immediate 17 10 min w reminder 31 150 min w reminder Once the RC8650 has entered Standby mode it can be re awak ened only by a hardware reset or by driving the STBY pin low for 250 ns or longer then High again All of the RC8650 handshake signals BUSY DTR
52. guide and a bit of pa tience If you don t have a pronunciation guide for the language you re interested in check your local library Most libraries have foreign language dictionaries that include pronunciation guides which make it easy to transcribe the pronunciation rules into ex ception form Language Translation Exception dictionaries even allow the RC8650 to read foreign lan guage text in English The following exceptions demonstrate how this can be done with three example Spanish English words GRANDE L AA R J BIEN F AY N USTED YY UW The sense of translation can also be reversed RR AND FINE B I EI YOU U S T EI DH EI Message Macros Certain applications may not be able to send text strings to the RC8650 An example of such an application is one that is only able to output a four bit control word and strobe Sixteen unique output combinations are possible but this is scarcely enough to represent the entire ASCII character set You can however assign an entire spoken phrase to a single ASCII character with the exception dictionary By driving four of the data bus lines of the bus interface see Figure 1 7 and hardwiring the remaining four to the appropriate logic levels virtu ally any set of 16 ASCII characters can be generated which in turn can be interpreted by the exception dictionary For example by connecting the four control bits to DBp through
53. h F 24 18h E 101 65h 23 17h F 96 60h G 21 15h F 90 5Ah G 20 14h G 85 55h A 19 13h G 81 51h 18 12 76 4 B 17 11h 72 48h 16 10 B 68 44h Cit 15 C Mid 64 40h D 14 OEh 60 3Ch The task of finding K for a particular musical note is greatly simpli fied by using Table 3 1 The tone generator can cover a four octave range from C two octaves below Miadle C Kj 255 to D two octaves above Middle C 14 values less than 14 not recommended For example the Voice frame DATA 24 64 0 0 will play Middle C using voice 1 K4 64 Since and Zero voices 2 and 3 will be silent during the frame The duration of the note is a function of both the tempo and duration Kp which in this case is 24 As another example DATA 48 64 51 43 plays a C E G chord for a duration twice as long as the previous example Choosing note durations and tempo Table 3 2 lists suggested Kp values for each of the standard mu sical note durations This convention permits shorter 1 eth note and intermediate note values to be played while maintaining the same degree of accuracy This is important when for example a thirty second note is to be played staccato or a note is dotted multiplying its length by 1 5 Table 3 2 Musical Note Duration Kp Values Note Duration Kp Whole 192 COh Half 96 60h Quarter 48 30h
54. han one name for example the character may be read as slash or divided by depending on the context Such characters can be redefined if their default names fit the application For example the arithmetic opera tors etc can be defined for mathematical applications with the following exceptions D IX V AY D IX D B AY AH L T AX P L AY D B R EY Z D T UW AY etc Acronyms and Abbreviations Acronyms and abbreviations can be defined so the words they represent will be spoken IH L AH AA T DR D ER L AX V IH ZH IX String Parsing amp Decryption Sometimes the data that we would like to have read is not avail able in a ready to read format For example the output of a GPS receiver may look something like this GPGGA 123456 2015 2607 N The first 14 characters of the string contain fixed header and vari able time data which we don t care about The following excep tion will ensure that the first 14 characters are not read SGPGGA E In addition the following exceptions handle the degrees and minutes components of the latitudinal coordinate IX GRIYZ M IHN IH T S OW TH L AE T IH T UW D The four exceptions taken together will translate the example string as 20 degrees 15 minutes north latitude Additional ex ceptions for handling the seconds
55. he setting of this bit Note Relative parameters work differently than usual with this command Instead of specifying a displacement from the register s current value relative parameters allow you to set and clear individual register bits For example 65G sets bits POR O and POR 6 65 clears POR O and POR 6 Table 2 9 Protocol Options Register Bit Definitions VC SAT DDUR R R R R STM 7 6 5 4 3 2 1 0 Protocol Options Register Bit Description 7 V8600 COMPATIBILITY VC 1 Compatibility disabled 0 Compatibility enabled Emulates RC Systems V8600 voice synthesizer module when set to 0 Overall voice speed range and serial port status responses are adjusted to that of the V8600 Default 1 in the V8600A module this bit defaults to 0 POR 6 SATURATE SAT 1 Parameters saturate 0 Parameters wrap Determines whether command parameters wrap or saturate when their range has been exceeded Default 0 POR 5 DTMF DURATION DDUR 12500 ms 0 100 ms Determines Touch Tone generator burst duration When set to 1 tone bursts are 500 ms long when 0 100 ms Default 0 POR 4 RESERVED R Reserved for future use Write 0 to ensure future compatibility Reserved for future use Write 0 to ensure future compatibility POR 3 RESERVED POR 2 RESERVED R Reserved for future use Write 0
56. hich require nei ther precise frequencies nor a pure clean output The output is a pulse train rich in harmonic energy which tends to sound more interesting than pure sinusoids in music applications The sinusoidal tone generator enables the simultaneous genera tion of two sinusoidal waveforms Applications for this generator range from generating simple tones to telephone call progress tones such as a dial tone or busy signal The frequency range is Oto 2746 Hz with a resolution of 4 to 11 Hz The sinusoidal tone generator is activated with the command nJ where nis an ASCII number between 0 and 99 Note the similarity to the musical tone generator command J which uses no param eter The parameter n programs the internal sampling rate much like the Real Time Audio Playback command does in fact the sampling rate fs has the same relationship to n as the Real Time Audio Playback command fs 617 155 n Immediately following the nJ command are three binary param eter bytes nd Ka Ky Ko where determines the tone duration and K4 and Ko set the output frequencies of generators 1 and 2 respectively The tone duration and frequencies are not only functions of these parameters but of n as well The output amplitude is a function of the Volume command nV The command and parameter values are buffered within the RC8650 and can be intermixed with text and other commands without restriction The tone duration
57. hile the ADC is operating will stop the ADC Default 0 ADR 3 SWEEP MODE SWP 1 Sweep mode 0 Single channel mode ADR 2 RESERVED R ADR 1 0 CHANNEL SELECT CH This bit determines whether a single channel or multiple input channels will be read When Sweep mode is selected ADR 1 0 determine which input channels will be scanned Default 0 Reserved for future use Write 0 to ensure future compatibility These bits determine which input channel s will be read by the ADC Default 00 When ADR 3 0 When ADR 3 1 00 ANo 00 undefined 01 AN1 01 ANo AN sweep 10 AN2 10 undefined 11 11 ANo AN3 sweep NOTES 1 The AMPOUT pin can be used as a fifth ADC input if an external op amp is not used Set ADR 6 1 to select the AMPOUT pin for conversion 25 RC SYSTEMS RC8650 VOICE SYNTHESIZER 4 1 MUX TOADC CIRCUIT 1 1 1 1 1 AMPOUT lt 7 1 Figure 2 1 ADC Input Block Diagram TRG SWP CONT 0 CONT CHi 1 CH CHo 0 CHo 0 CONT 0 V V V V TRG CH 1 CONT CH nu CONT 1 CONT 0 no TET KEERAS ADTRG Figure 2 2 ADC Transfer Timing 26 RC SYSTEMS RC8650 VOICE SYNTHESIZER Audio Control Register nN The Audio Control Register determines whether the audio stream will be output as an analog signal on the AO pins or a
58. ice frames to change the volume or tempo on the fly only the Voice frames following the command will be affected Voice Frame Voice frames contain the duration and frequency pitch informa tion for each voice All Voice frames are stored in a 2K buffer within the RC8650 but are not played until the Play command is issued If the number of Voice frames exceeds 2K bytes in length the RC8650 will automatically begin playing the data Voice frame format Voice frames are composed of three frequency time constants and a duration byte Kp which specifies how long the three voices are to be played The relationship between the time constant and the output fre quency f is fi 16 768 K where f is in Hertz and 4 255 Setting to zero will silence voice during the frame Kp may be programmed to any value between 1 and 255 the larger it is made the longer the voices will play during the frame 32 4 RCS650 VOICE SYNTHESIZER Table 3 1 Musical Note Pitch K Values Note Ki Note Ki 255 FFh D 57 39h 241 1 D 54 36h D 228 E4h E 51 33h Dit 215 D7h F 48 30h E 203 CBh 45 2Dh F 192 COh G 43 2Bh 181 B5h Git 40 28h G 171 ABh A 38 26h G 161 Ath 36 24h A 152 98h B 34 22h 144 90h C 32 20h B 136 88h 30 1Eh C 128 80h D 28 1Ch 121 79h 27 1Bh D 114 72h E 25 19h Dit 107 6B
59. ing to the original music some voices were not to be played as long as the others during the beat The F C F notes in the first frame are held for 46 counts while the low F and C in the second frame are held for two additional counts Adding the duration first and fifth bytes together the low F and C do indeed add up to 48 counts 46 2 which is the standard duration of a quarter note 33 SYSTEMS RCS650 VOICE SYNTHESIZER 100 LPRINT ensure serial port baud rate is locked 110 LPRINT CHR 1 J activate tone generator 120 READ 0 1 2 3 read a frame 4 bytes 130 LPRINT CHR B0 CHRS B1 CHR B2 CHR B3 140 IF BO B1 B2 B3 gt 0 THEN 120 loop until Quit 150 END 160 170 180 Data Tables 190 200 Init volume 255 tempo 86 210 DATA 0 255 86 0 220 230 Voice data 240 DATA 46 48 64 192 2 0 64 192 48 48 0 0 48 40 0 0 48 36 0 0 250 DATA 94 24 34 0 2 24 0 0 24 0 36 0 24 0 40 0 48 0 48 0 260 DATA 48 40 0 192 46 36 0 0 2 0 0 0 48 36 0 0 48 24 34 0 270 DATA 46 24 34 0 2 0 34 0 46 24 34 0 2 24 0 0 24 0 36 0 280 DATA 24 0 40 0 48 0 48 0 290 300 Play Quit 310 DATA 0 0 1 1 0 0 0 0 Figure 3 2 Example Musical Tone Generator Program 34 RC SYSTEMS RC8650 VOICE SYNTHESIZER SINUSOIDAL TONE GENERATOR The musical tone generator is capable of producing three tones simultaneously and works well in applications w
60. is active PIOg PIO7 also connect to the RC46xx chip Text data and commands can be sent to the RC8650 over this bus STS OUTPUT STATUS Controls the transfer of status information from the RC8650 to a peripheral Status information is driven on the PIOo PIO7 pins when STS is Low STS is active only when there is new status information PRD OUTPUT PERIPHERAL READ Controls the transfer of data from a peripheral to the RC8650 Data is read from the PIOo PIO7 pins when PRD is Low If a connection is made to PRD it must also have a 47 pullup resistor to Vcc PWR INPUT PERIPHERAL WRITE Controls the writing of peripheral data to the RC8650 Data on the PlOo PIO7 pins is read by the RC8650 on the rising edge of PWR Sufficient time must be given for the RC8650 to process the data before writing additional data RDY or Status Register bit SR 4 should be used for this purpose Connect this pin to a High level if not used RDY OUTPUT READY RDY High indicates that the RC8650 is busy processing the last byte that was written over the Peripheral I O Bus Wait for RDY to be Low before attempting to write more data RDY goes High briefly after each write operation over the PlOo PIO bus acknowledging receipt of each byte If the RC8650 s input buffer becomes full as a result of the last write operation RDY will remain High until room becomes available Note that RDY can also be read from Status Register bit SR
61. ish lexi con and letter to sound rules to convert text the RC8650 receives into speech The pronunciation rules determine which sounds or phonemes each character will receive based on its relative posi tion within each word The integrated DoubleTalk text to speech engine analyzes text by applying these rules to each word or character depending on the operating mode in use Exception dictionaries augment this process by defining exceptions for or even replacing these built in rules Exception dictionaries can be created and edited with a word processor or text editor that stores documents as standard text ASCII files However the dictionary must be compiled into the internal format used by the RC8650 before it can be used The RC8650 Studio software available from RC Systems includes a dictionary editor and compiler EXCEPTION SYNTAX Exceptions have the general form L F R P which means the text fragment F occurring with left con text L and right context R gets the pronunciation three parts of the exception to the left of the equality sign must be satisfied before the text fragment will receive the pronunciation given by the right side of the exception The text fragment defines the input characters that are to be trans lated by the exception and may consist of any combination of letters numbers and symbols Empty null text fragments may be used to generate sound based on a particular input pattern without
62. itable for such applications RC SYSTEMS 1609 England Avenue Everett WA 98203 Phone 425 355 3800 Fax 425 355 1098 Internet http www rcsys com
63. l lowed by an e i or y C thus receives the pronunciation s and processing continues with the second e receive EI IYisthe first rule to match the second e so e receives the sound rv Processing resumes at the character receive which matches the default V rule V V The final e matches the rule E which applies when e is final and follows zero or more consonants and a vowel Conse quently e receives no sound and processing continues with the following word or punctuation if any Thus the entire phoneme string for the word receive IX S IY V RULE PRECEDENCE Since DoubleTalk uses its translation rules in a sequential manner the position of each exception relative to the others must be care fully considered For example consider the following pair of ex ceptions 0 OW 0 UW The first exception states that o followed by e i or y is to be pro nounced the o sound in boat The second exception does not place any restriction on what must come before or after o so o in any context will receive the UW pronunciation If the exceptions were reversed the exception would never be reached be cause the O exception will always match o in any context In general tightly defined exceptions those containing many con text restrictions should precede loosely defined exceptions those with little or no context definitions RAT R AE T RATING R EY T IH NG This i
64. le 5 3 JP1 JP3 Pin Assignments Baud Rate JP3 JP2 JP1 Baud Rate X X X 300 X X 600 X X 1200 X 2400 X 4800 9600 X 19200 Auto detect default X denotes jumper installed Pin No Pin Name Pin No Pin Name Pin No Pin Name Pin No Pin Name 1 AOo 9 ASo 1 NC 6 DSR 2 AO1 10 AS1 2 RXD 7 RTS 3 1 SUSPo 3 TXD 8 CTS 4 SP 1 12 SUSP 4 NC 9 NC 5 SP o 13 DAOUT 5 GND 6 1 14 DARTS 7 TSo 15 DACLK 8 9 16 GND Table 5 5 P102 Pin Assignments TTL Serial Interface Pin No Pin Name Pin No Pin Name 1 GND 3 TXD 2 CTS 4 RXD JP4 JP6 must be open in order to use the TTL interface Table 5 6 P103 Pin Assignments Printer Bus Interface Pin No Pin Name Pin No Pin Name 1 STB 14 GND 2 AFD 15 3 DATAo 16 GND 4 ERROR 17 DATA7 5 18 GND 6 INIT 19 ACK 7 DATA2 20 GND 8 SLCTIN 21 BUSY 9 DATAs 22 GND 10 GND 23 PE 11 4 24 GND 12 GND 25 SLCT 13 DATAs 26 RD 41 0 0 9 gt 0 n 0 0 0 n RC SYSTEMS ou 5 8 NOISIA3H 10 0 31 d1v9S LAS 1 12701018
65. n values tend to make the voice sound slurred very high values on the other hand can make the voice sound choppy The default articulation is 5A 21 RC SYSTEMS RC8650 VOICE SYNTHESIZER Expression E nE Expression or intonation is the variation of pitch within a sentence or phrase When expression is enabled n gt 0 the RC8650 at tempts to mimic the pitch patterns of human speech For example when a sentence ends with a period the pitch drops at the end of the sentence a question mark will cause the pitch to rise The optional parameter n determines the degree of intonation provides no intonation monotone whereas 9E is very animated sounding 5E is the default setting If the parameter is omitted the current last set value will be used This is useful for re enabling intonation after a Monotone command Monotone M This command disables all intonation expression causing the RC8650 to speak in a monotonic voice Intonation should be dis abled whenever manual intonation is applied using the Pitch com mand or phoneme attribute tokens Note that this command is equivalent to the command Formant Frequency nF This command adjusts the synthesizer s overall frequency re sponse vocal tract formant frequencies over the range OF through 9F By varying the frequency voice quality can be fine tuned or voice type changed The default frequency is 5F Pitch nP This command varies the synthesizer
66. nV com mand A volume setting of 5 will cause the files to be played back at their original volume level Text and or commands may be freely intermixed with the play back command For example 11 Hello A 3V A 36 A 43V A 96 plays the Touch Tone key and says hello at the current vol ume setting followed by the fourth sound file at a reduced volume level and finally the tenth sound file at the original volume level Real Time Audio Playback Mode n n This mode allows audio samples to be written directly to the RC8650 s digital to analog converter DAC via the RC8650 s se rial and parallel ports All data sent to the RC8650 is routed directly to the RC8650 s internal audio buffer the RC8650 then outputs samples from the buffer to the DAC at the rate programmed by n Because the audio data is buffered within the RC8650 the output sampling rate is independent of the data rate into the RC8650 as long as the input rate is equal to or greater than the programmed sampling rate The RC8650 supports PCM and ADPCM audio data formats ADPOM data is audio data that has been compressed using utility software available from RC Systems this software can also con vert Wave files to PCM and ADPCM formats for the RC8650 compression yields data files that are half the size of PCM files thereby reducing the required data bandwidth and storage requirements The output sampling rate can b
67. nchronous transfer mode Valid only in the asynchronous transfer mode Default 000 NOTES 1 ACR 6 ACR 0 are valid only when ACR 7 1 2 ACR 4 ACR 3 are valid only when ACR 7 and ACR 6 1 3 ACR 2 ACR 0 are valid only when ACR 7 1 and ACR 6 0 27 RC SYSTEMS RC8650 VOICE SYNTHESIZER Starts transmission K DAOUT 0 DARTS Stopped because DACLK stopped DACLK Stopped because DARTS is High Figure 2 3 Synchronous Digital Audio Transfer Timing Load Exception Dictionary L This command purges the RC8650 s exception dictionary and stores subsequent output from the host in the RC8650 s dictionary memory The maximum dictionary size is 16 KB Exception dictionaries must be compiled into the format used by the RC8650 before they can be used The RC8650 Studio soft ware available from RC Systems includes a dictionary editor and compiler for performing this task The creation of exception dictionaries is covered in detail in Sec tion 4 Enable Exceptions U The exception dictionary is enabled with this command If the RC8650 is in Phoneme mode or if an exception dictionary has not been loaded the command will have no effect The exception dictionary can be disabled by issuing one of the mode com mands D T or C Clear Control X Skip Control Y The Clear command stops the RC8650 and flushes its input buffer of all text and commands The Skip
68. o BRS pins affect the operation of BRD Connect this pin to a High level if not used BRSo INPUT BAUD RATE SELECT Programs the asynchronous serial port s baud rate Both the RXD and TXD pins BRS2 are programmed to the baud rate set by these pins Setting BRSo BRS to a High level will allow the RC8650 to automatically detect the baud rate with the BRD pin Connect to a High level if not used STBY INPUT STANDBY INIT Dual function pin which either puts the RC8650 in standby mode or initializes its internal parameter memory STBY must be High on the rising edge of RESET Driving STBY Low for 250 ms or longer causes the RC8650 to enter Standby mode All peripheral and serial port handshake lines are driven to their false not ready states and the input buffer is cleared During standby the RC8650 draws the minimum possible current 2 uA typ but it is not able to respond to any input pin except STBY and RESET Returning STBY High causes the RC8650 to enter Idle mode 1 mA typ the handshake lines are re asserted and the RC8650 will be able to accept input again If the RC8650 entered standby due to a Sleep Timer event driving STBY Low for 250 ns or longer then High will return the RC8650 to Idle mode Driving STBY Low for less than 250 ms initializes the RC8650 s non volatile parameter memory The greeting message and user dictionary are erased and all voice parameters are restored to their factory default settings Th
69. of a word using absolute parameter commands only once in the programs initial ization routine This way if the base value of an attribute needs to be changed it only needs to be changediin the initialization rou tine TTS COMMANDS This section describes the software commands that affect the text to speech synthesizer Text Mode Delay T nT This command places the RC8650 in the Text operating mode The optional delay parameter nis used to create a variable pause between words The shortest and default delay of is used for normal speech For users not accustomed to synthetic speech the synthesizer s intelligibility may be improved by introducing a delay The longest delay that can be specified is 15 If the delay parameter is omitted the current last set value will be used and the exception dictionary will be disabled This feature is useful for returning from another operating mode or disabling the exception dictionary see Enable Exceptions command Character Mode Delay C nC This command puts the RC8650 in the Character operating mode The optional delay parameter nis used to create a variable pause between characters Values between the default and 15 provide pauses from shortest to longest respectively Values between 16 and 31 provide the same range of pauses but control characters will not be spoken If the delay parameter is omitted the current value will be used and the exception dictionary will be disabled
70. ontrols line breaks etc A digit 0 9 One or more digits Wildcard matches any character The right side of an exception P specifies the pronunciation that the text fragment is to receive which may consist of any combina tion of phonemes Table 2 1 phoneme attribute tokens Table 2 2 and commands Table 2 14 Using the tone generator and prerecorded audio playback commands virtually limitless combi nations of speech tones and sound effects can be triggered from any input text pattern If no pronunciation is given no sound will be given to the text fragment the text fragment will be silent A dictionary file may also contain comments but they must be on lines by themselves i e they cannot be on the same line as an exception Comment lines begin with a semicolon character that the compiler will know to skip over it An example of an exception is C O N AA which states that o after c and before n gets the pronunciation AA the o sound in cot For example the o in conference economy and icon would be pronounced according to this exception 36 RC SYSTEMS RC8650 VOICE SYNTHESIZER Another example is R H which states that h after initial r is silent as in the word rhyme the context token represents any non alphabetic character such as a space between words see Table 4 1 Punctuation numbers and most other characters can be rede fined with exceptions as well 5
71. or sound effects stored in an external memory or file system Versatile All data is sent to the RC8650 through its built in serial and or parallel ports For maximum flexibility including infield product upgrade update capability use of the serial port is recommended whenever possible The RC8650 s audio output is available in both analog and digital formats The analog output should be used in applications where no further processing of the audio signal is required such as driv ing a speaker or headphones the output still needs to be filtered and amplified however The digital output is for applications that require further processing of the audio signal such as digital mix ing or creating sound files for later playback RECOMMENDED CONNECTIONS Power Ground Power and ground connections are made to multiple Vss pins of the RC8650 and RC46xx chips Every pin must be connected to power and every Vss pin must be connected to ground Decoupling capacitors should be placed as close as possible to both chips In particular make sure adequate decoupling is placed on the AVcc and AVggr pins as noise present on these pins will also appear on the AO output pins Connect any unused input pins to an appropriate signal level Leave any unused output pins and all NC pins uncon nected Chip Interconnects Pins through IC32 and through PIOz must be connected between RC8650 and RC46xx chips
72. ound words baseball proper names Sean and foreign loan words chauffeur Compound words can usually be corrected by separating the two words with a space so that baseball be comes base ball Proper names and foreign words may require a bit more creativity so that Sean becomes Shon and chauf feur becomes show fur Heteronyms words with identical spell ing but different meanings and pronunciations can also be modified using this technique For example if the word 1510 be pronounced reed instead of red it can simply be respelled as reed COMMANDS The commands described in the following pages provide a simple yet flexible means of controlling the RC8650 under soft ware control They can be used to vary voice attributes such as the volume or pitch to suit the requirements of a particular appli cation or listener s preferences Commands are also used to change operating modes Commands can be freely intermixed with the text that is to be Spoken allowing the voice to be dynamically controlled Com mands affect only the data that follows them in the data stream Command Syntax All RC8650 commands are composed of the command charac ter a parameter n comprised of a one to four digit number string and a single string literal that uniquely identifies the command Some commands simply enable or disable a feature of the RC8650 and do not require a parameter The general command format is
73. s an example of how organize exceptions The excep tion RATING Will never be used because RAT will always match first According to these exceptions the word rating would be pronounced rat ing It can be beneficial to group exceptions by the first character of the text fragments that is all of the A exceptions in one group all the B exceptions in a second group and so on This gives an overall cleaner appearance and can prove to be helpful if the need arises to troubleshoot any problems in your dictionary TEXT NOT MATCHED BY THE DICTIONARY It is possible that some input text may not match anything in a dictionary depending on the nature of the dictionary For ex ample if a dictionary was written to handle unusual words only those words would be included in the dictionary On the other hand if a dictionary defined the pronunciation for another lan guage it would be comprehensive enough to handle all types of input In any case if an exception is not found for a particular character the English pronunciation will be given to that character according to the built in pronunciation rules Generally the automatic switchover to the built in rules is desirable ifthe dictionary is used to correct mispronounced words since by definition the dictionary is defining exceptions to the built in rules If the automatic switchover is not desired however there are two ways to prevent it from occurring One way is to end each gro
74. s pitch over a wide range which can be used to change the average pitch during speech production produce manual intonation or create sound effects including singing Pitch values can range from OP through 99P the default is 50P Tone nX The synthesizer supports three tone settings bass 0X normal 1X and treble 2X which work much like the bass and treble controls on a stereo The best setting to use depends on the speaker being used and personal preference Normal 1X is the default setting Reverb nR This command is used to add reverberation to the voice OR the default introduces no reverb increasing values of n ingly increase the reverb delay and effect 9R is the maximum setting Punctuation Filter nB Depending on the application it may be desirable to limit the reading of certain punctuation characters For example if the RC8650 is used to proofread documents the application may for only unusual punctuation to be read On the other hand an application that orally echoes keyboard entries for a blind user may require that all punctuation be spoken The RC8650 supports four primary levels of punctuation filtering as shown in Table 2 4 These levels determine which punctuation characters will be spoken and which will not In addition to the four base levels the command can be expanded to control how num ber strings will be read This is done by ORing the values 04h and or 08h to
75. s serial digital data on the DAOUT pin See Table 2 11 for the definition of each register bit The default register setting is ON In the digital audio modes data is transferred from the DAOUT pin in 8 bit linear offset binary format midscale 80h The DARTS pin can be used to regulate the flow of data it must be Low for transfers to begin In the synchronous mode do not attempt to read the data at an average rate faster than 10 kbytes sec At clock rates above 80 kHz the host must pause between reading each byte in order to keep the average transfer rate from exceed ing 10 kbytes sec Figure 2 3 illustrates the synchronous data transfer mode Note how either 5 or DACLK can be used to regulate the flow of data from the RC8650 Note Relative parameters work differently than usual with this command Instead of specifying a displacement from the register s current value relative parameters allow you to set and clear individual register bits For example 40 sets bits ACR 3 and ACR 5 5N clears ACR O and ACR 2 Table 2 11 Audio Control Register Definitions AM TM DPC TF TCP BR BR BR 7 6 5 4 3 2 1 0 Audio Control Register Bit Description ACR 7 AUDIO MODE AM 1 Digital 0 Analog Set this bit to 0 to direct the audio stream to the AO pin analog Set the bit to 1 to direct output to the DAOUT pin digital Default 0 ACR 6 TRANSFER MODE
76. sampling rate for all text to speech modes and the DTMF generator is 84 kbs 10 500 bytes sec The sinusoidal gen erator prerecorded and real time audio playback mode rates are user programmable so their normalized rates will vary See the Pin Descriptions and Audio Control Register command descrip tion for further details 47K 0 027UF 9 22 1000 AOO 4 ue 6 LM4862 5 8 lt 8200PF 3900PF 3 91 2 T 750 PROGRAM TSO PIN 4 FOR ACTIVE LOW Figure 1 9 3 kHz Low Pass Filter Power Amplifier 10 RC SYSTEMS RC8650 VOICE SYNTHESIZER ELECTRICAL SPECIFICATIONS 45V mA j 03 0 1UF C404UF vss D vec vss p vss vec vec vss 64 vss vec 14 vcc 96 5 E 47 voc 97 ANO AVCC 95 AVREF aH AN2 z AN3 R3 R4 R5 2 AMPIN S Ll AMPOUT sy H icaz 25 19 32 1 1 4 1 1 30 ica 22 16 ic30 29 BRS1 129 1 29 BRS2 C28 C28 7 BRD ice 78 34 027 48 RXD IC26 z 26 SERIAL TXD IC25 IC25 388 1 24 75 41 024 74 48 37
77. sed if built in rules are not to be used in no match situations Character mode exceptions marker Character mode exceptions optional used if built in rules are not to be used in no match situations APPLICATIONS The following examples illustrate some ways in which the excep tion dictionary can be used Correcting Mispronounced Words The most obvious of all applications correcting mispronounced words S EAR CH ER S OW EY The first exception corrects the pronunciation of all words contain ing search search searched research etc As this exception illustrates it is only necessary to define the problem word in its root form and only the part of the word that is mispronounced ear in this case The second exception corrects the word ok but be cause of the left and right contexts will not cause other words joke look etc to be incorrectly translated No Cussing Please The reading of specific characters or words can be suppressed by writing exceptions in which no pronunciation is given YOU fill in the blanks When Zero Isn t Really Zero When reading addresses or lists of numbers we humans often substitute the word oh for the digit O For example we might say 1020 North Eastlake as one oh two oh North Eastlake The digit 0 can be redefined in this manner with the following exception 0 OW Arithmetic Operators Some characters may have more t
78. stem information that is used during factory testing Eight bytes are transmitted via the TXD pin The only information that may be of relevance to an application is the internal microcode revision number which is conveyed in the last two bytes in packed BCD format For example 13h 01h would be returned if the version number was 1 13 Interrogate 12 This command retrieves the current operating settings of the RC8650 Table 2 13 lists the parameters in the order they are transmitted from the TXD pin the command s that control each parameter and each parameter s range The parameters are or ganized as a byte array of one byte per parameter Table 2 13 Parameters Returned by Interrogate Command Parameter Cmd Range Mode C D T 0 1 Phon 2 Text Punc filter nB 0 15 Formant freq nF 0 9 Pitch nP 0 99 Speed nS 0 9 Volume nV 0 9 Tone nX 0 2 Expression nE 0 9 Dict loaded L 1 loaded 0 not loaded Dict status U 1 enabled 0 Input buffer size x100 bytes Articulation nA 0 9 Reverb nR 0 9 TS pin control nK 0 3 POR register nG 0 255 ACR register nN 0 255 Rec audio capacity 16 bytes nQ 0 31 Timeout delay nY 0 15 Char mode delay nC 0 31 Text mode delay nT 0 15 Voice nO 0 7 ADR register 0 255 30 RC SYSTEMS RC8650 VOICE SYNTHESIZER COMMAND SUMMARY Table 2 14 RC8650 Command Summary Command
79. t 515 oje 2 RC SYSTEMS RCS650 VOICE SYNTHESIZER 48 Pin Plastic 12 x 20 mm TSOP measured in millimeters 19 8 20 2 g Elz 18 3 lt 18 5 o gt 0 05 EE DETAIL A S 0 40 Recommended PCB Layouts measured in millimeters ll JN 1 D s Le oso je 17 RC SYSTEMS RC8650 VOICE SYNTHESIZER ORDERING INFORMATION 8 161115 01 0 Vcc RANGE RECORDED AUDIO CAPACITY BLANK 5 V 10 0 3 3 0 3 V 1 130 sec 2 390 sec 3 910 sec VALID COMBINATIONS RC8650 0 RC4641FP RC86L50 0 RC46L41FP RC8650 1 RC4651FP RC86L50 1 RC46L51FP RC86L50 2 RC46L61FP RC86L50 3 RC46L71FP All chipset versions come with RC8650FP Companion chip is shown in parentheses Denotes standard product RC SYSTEMS RC8650 VOICE SYNTHESIZER SECTION 2 PRINCIPLES OF OPERATION This section describes the operating characteristics of the DoubleTalk RC8650 chipset OPERATING MODES The RC8650 has six primary operating modes and two low power modes designed to achieve maximum functionality and flexibility The operating mode can be changed anytime even on the fly Note The RC8650 will not begin speaking until it receives a CR ASCII 13 or Null ASCII 00 character this ensures that a com plete contextual analysis can be
80. the base parameter range as described below Table 2 4 Punctuation Filter n Punctuation Spoken 0 All 1 Most all but CR LF Space 2 Some amp lt gt 3 None Effect on number strings The values of nlisted in Table 2 4 cause number strings to be read one digit at a time e g 0123 zero one two three ORing 04h to the values listed in the table n 4 7 forces number strings to be read as numbers 0123 one hundred twenty three N 6 and n 7 also force currency strings to be read as they are nor mally spoken for example 11 95 is read as eleven dollars and ninety five cents Finally ORing 081 to these values 8 15 disables leading zero suppression number strings beginning with zero will always be read one digit at a time The default filter setting is 6B Some punctuation Numbers mode leading zero suppression enabled CONTROL COMMANDS Volume nV This is a global command that controls the RC8650 s output vol ume level from OV through 9V OV yields the lowest possible vol ume maximum volume is attained at 9V The default volume is 5V The Volume command can be used to set a new listening level create emphasis in speech or change the output level of the tone generators Timeout Delay nY The RC8650 defers translating the contents of its input buffer until a CR or Null is received This ensures that text is spoken smoothly from word to word and that the proper
81. ts music signaling tones dial a telephone etc Idie mode help conserve power in battery powered sys tems the RC8650 automatically enters a reduced power state whenever it is inactive Data can still be read and written to the RC8650 while in this mode Current draw is typically 1 mA Standby mode This mode powers down the RC8650 where current draw is typically only 2 pA Standby mode can be invoked from either the pin or with the Sleep command Data not be read from or written to the RC8650 in this mode TRANSLATION ACCURACY Because the RC8650 must handle the highly irregular spelling system of English as well as proper names acronyms technical terms and borrowed foreign words there inevitably will be words that it will mispronounce If a word is mispronounced there are three techniques for correcting it 1 Spell the word phonetically for the desired pronunciation 2 Redefine the way the word should be pronounced by creating an exception for it in the RC8650 s exception dictionary This method allows words to be corrected without having to modify the original text and it automatically corrects all instances of the word Exception dictionaries are covered in detail in Sec tion 4 3 Use the RC8650 s Phoneme mode The first technique is the easiest way to fine tune word pronuncia tions by tricking the RC8650 into the desired pronunciation Among the more commonly mispronounced words are com p
82. und units of speech A greeting message can be stored in the RC8650 which is auto matically spoken immediately after the RC8650 is reset Any of the commands recognized by the RC8650 may be included as part of the greeting message which can be used to set up custom default settings and or play back a prerecorded message or tone sequence An integrated nonvolatile memory area is also pro vided for storing a custom pronunciation dictionary allowing the pronunciation of any character string to be redefined Musical Tone Generator An integrated three voice musical tone generator is capable of generating up to three tones simultaneously over a four octave range Simple tones to attention getting sounds can be easily cre ated Touch Tone Generator The RC8650 includes an integrated DTMF Touch Tone genera tor This is useful in telephony applications where standard DTMF tones are used to signal a remote receiver modem or access the public switched telephone network Sinusoidal Tone Generator A precision dual sinusoidal tone generator can synthesize the tones often used in signaling applications The tone frequencies can be independently set allowing signals such as call progress tones to be generated Recorded Audio Playback Up to 15 minutes of prerecorded speech and sound effects can be stored in the RC8650 for later playback Additionally the RC8650 can play back eight bit PCM and ADPCM audio in real time such as speech and
83. up of exceptions with an unconditional exception that matches any context For example to ensure that the letter a will always be matched end the A exception group with the exception A pronunciation This technique works well to ensure matches for specific characters such as certain letters or numbers If the exception dictionary is to replace the built in rules entirely end the dictionary with the following exception D This special exception causes unmatched characters to be ig nored receive no sound rather than receive the pronunciation defined by the built in rules 37 RC SYSTEMS RC8650 VOICE SYNTHESIZER EFFECT ON PUNCTUATION Punctuation defined in the exception dictionary has priority over the Punctuation Filter command Any punctuation defined in the dictionary will be used regardless of the Punctuation Filter setting However if the dollar sign character is defined within the text fragment of any exception currency strings will not be read as dollars and cents CHARACTER MODE EXCEPTIONS Exceptions are defined independently for the Character and Text modes of operation The beginning of the Character mode excep tions is defined by inserting the letter just before the first Charac ter mode exception No exceptions prior to this marker will be used when the RC8650 is in Character mode nor will any excep tions past the marker be used in Text mode For example Text mode exceptions optional u
84. utput has ceased The TS bit is not affected by the TS Pin Control command which affects only the TS pin Reserved for future use Mask out when polling the Status Register The bit has the same meaning as RDY pin The RC8650 sets RDY to 1 to indicate that it is ready to receive data RDY drops to 0 momentarily after each write operation over the PIO bus acknowledging receipt of each character SR 3 ALMOST FULL AF 1 Buffer almost full 0 Buffer not almost full This bit is 1 anytime there are less than 100 bytes available in the input buffer AF is always 0 in the real time audio playback mode and when using the musical tone generator SR 2 ALMOST AE 1 Buffer almost empty 0 Buffer not almost empty This bit is 1 anytime there are less than 100 bytes remaining in the input buffer AE is always 1 in the real time audio playback mode and when using the musical tone generator SR 1 STANDBY MODE STBY 1 RC8650 is in Standby mode 0 RC8650 not in Standby mode This bit is 1 when the RC8650 has entered Standby mode Standby mode is entered either by setting the STBY pin Low or from the Sleep Timer SR 0 RESERVED R Reserved for future use Mask out when polling the Status Register CENTRONICS COMPATIBLE eem m p BUS INTERFACE PRINTER PORT R
85. ytes of data may still be in the audio buffer so the RC8650 may continue producing sound for as long as 0 25 second at 4 kHz sam pling rate after the last byte of data has been sent The TS pin flag will not be cleared until all of the audio data has been outputto the DAC at which time the RC8650 will again be able to accept data from the host If the host s serial port baud rate was changed in step 3 it should now be changed back to its original rate 29 RC SYSTEMS RC8650 VOICE SYNTHESIZER MISCELLANEOUS COMMANDS Write Greeting Message 255W Anytime the RC8650 is reset an optional user defined greeting message is automatically played The message may consist of any text command sequence up to 234 characters in length Modal commands can be included such as tone generator and audio playback commands Note The exception dictionary is erased whenever a new greet ing message is written to the RC8650 To create a new greeting message perform the following steps 1 Write the command Control A 255w 2 Write the exact text command sequence you want to store up to 234 characters For example the string Control A 3S Control A 20 ready will program the RC8650 to use voice speed 3 Big Bob s voice and say ready whenever it is reset 3 Write a Null ASCII OO to terminate the command and store the greeting in the RC8650 s nonvolatile memory Chipset Identification 6 This command returns RC8650 sy
Download Pdf Manuals
Related Search
Related Contents
Elexsys E 500 User`s Manual: Basic Operations Conceptronic CUSBODDSHARE USB cable Atlona AT-PROHD44M-SR video switch Sandoz® Fenofibrate S mode d`emploi test 2.qxd Philips Halogen lustre bulb 871829121981100 Multimedia DVD Player Bedienungsanleitung Instruction Copyright © All rights reserved.
Failed to retrieve file