N.Yamazaki's blog

主に音声合成について思ったことを書いてみようと思います。
<< [AquesTalk pico LSI] UARTボーレート設定の注意点 | main | まじめな女声を開発 >>
隠しコマンドで声質をチューニングする
音声合成LSI「AquesTalk pico LSI」ATP3011シリーズは、裏コマンドで声質を調整することができます。



■注意
本記事の内容は、(株)アクエスト公式のものではありません。
記事内容の実施に伴う影響等は、すべて自己責任でお願いいたします。

■対象製品

ATP3011F4-PU
ATP3011F4-AU
ATP3011M6-PU
ATP3011F1-PU
 

■原理は動作クロックの変更
特に音声合成の動作を変えているわけでなく、単純に動作クロックを変更するだけです。
したがって、この調整のによる効果はテープ(古い!?)の早回しみたいなものです。
このデバイスは、OSCCALレジスタの値を変更することで、内部RCクロック周波数を調整できます。
OSCCALの値と周波数の関係は次のとおり。

osccal
*Atmel社 ATmega328 データシートより


ただし、あくまでも平均的なもので、実際は個別デバイス毎に特性は異なります。
途中で不連続になっている部分にも注意が必要です。
 
ATP3011シリーズは、EEPROMアドレス0x03Eの値を起動時にOSCCALに設定します。
ただし、不意の設定を防ぐため、アドレス0x03Fは、アドレス0x03Eの値を論理反転した値にする必要があります。アドレス0x03Eには、0x01から0xFEまでの値を指定できます。
低くする例 0x03E:0x01 0x03F:0xFE
低くする例 0x03E:0x10 0x03F:0xEF
高くする例 0x03E:0xCC 0x03F:0x33
高くする例 0x03E:0xFE 0x03F:0x01
出荷時設定 0x03E:0xFF 0x03F:0xFF


■設定方法
EEPROMの値の設定は、#Wコマンドで行います。
たとえば、次のようにします。

>#W03E01
>#W03FFE

その後、デバイスのリセットで有効になります。
基本は8MHzなので、声の高さを半分から1.5倍くらいまで変化できそうです。
なお、声の高さの変化に連動して、発話速度も変化しますので、
EEPROMアドレス0x002-0x003の値でを話速も調整するとよいでしょう。

■原理の理解やデバイスの知識が必要
内部クロックを8MHzから大幅に変化させたときの動作はデバイス自体が保証してません。
個人的には20MHzまで動作可能なデバイスなので壊れることは無いとは思うのですが。
クロックを上げたときは最小動作電圧も高くなるので、3V系では注意が必要です。
ATP3011の仕様に示されたタイミング等時間関連の値はすべて変わります。
万が一、シリアル通信ができなくなるとEEPROMの設定値をデフォルトに戻す術がなくなります。
その他、想定外のリスクがあるかも。

というわけで、本記事は、ハードウェア上級者向けです。あしからず。
 

■内部クロックを8MHzにトリミングする
そもそも、この機能を用意したのは、このデバイスの内部クロック精度が+-10%とばらつきが多く、聞いてわかるほどのデバイス間の違いがあります。
ただ、調整により、+-2%程度まで精度を高められるので、場合によっては必要になるかなと。

で、内部クロックを8MHzに調整する方法ですが、
内部クロック信号は外部に出てないので、直接に測定できません。そこで、調整にはAOUT信号を用います。
音声出力時にAOUTからは一定周期の矩形波が出力されます。
この間隔をオシロで測定し、64μsec になるように上記の方法で内部クロックを調整すればバッチリです。

■ATP3010F4はどうする?
外部クロックだから、異なる発振周波数のクリスタルに変えちゃおう!
| AquesTalk pico LSI | 11:05 | - | - |
PROFILE
Follow
CATEGORIES
LATEST ENTRIES
SEARCH THIS SITE
RECOMMEND
RECOMMEND
RECOMMEND
Arduino Uno
Arduino Uno (JUGEMレビュー »)

AquesTalk pico LSIの評価ボードとして最適
RECOMMEND
Raspberry Pi Model B+ (Plus)
Raspberry Pi Model B+ (Plus) (JUGEMレビュー »)

これと AquesTalk pi で簡単にテキスト音声合成!
RECOMMEND
RECOMMEND
RECOMMEND
SONY MDR-CD900ST
SONY MDR-CD900ST (JUGEMレビュー »)

普段これで開発しています。
RECOMMEND
RECOMMEND
RECOMMEND