44.1kHzで出力する??


 前ページのマスターCLK X1 へ 別の発振器で作った 11.2896MHz を入力し、FS1,FS2 両方を「L」に変えると、何と 44.1kHz サンプリングで出力することができます。
これでCD-Rを作る場合でもサンプリング周波数を変換する必要がなくなります。万歳!(^^)

というふうに簡単に行けば良いのですが、そうは問屋が卸してくれません(^^;;

周波数fsであるLRCKと、fs x 256(x384等も可能だが)であるマスターCLK X1 は、その比で同期しているのが普通ですが、TC9231Nでは非同期で周波数が違っていても動くようです。
データシートに記述はありませんが、TC9231N のブロック図より、LRCKで駆動される入力レジスタと、マスターCLK X1 で駆動されるデータ出力レジスタ間はうまくバッファリングされ、非同期でもデータの受け渡しが可能なようです。

ただしこの場合、サンプリングレートコンバータが入っているわけではないので、過不足のデータは捨てるか埋めるかされているはずです。

たとえば 32k IN → 48k OUT のように出力側のほうが速い場合、入力側が間に合わなくなり、その場合のサンプルは、入力レジスタに残っている前のデータが再度使われて出力されることになります。
つまり、上の場合、1秒間にその差の16000回、直前と同じ値のデータが出ているはずです。
(出力は、3つに2つは同じデータ)

逆に 48k IN → 32k OUT のように出力側のほうが遅い場合、入力側の余分なデータは出力に回される前に次のデータに入れ替わり、間引かれて出力されることになります。
上の場合、1秒に16000回間引かれているはずです。
(出力は、3つに1つ 間引かれる)

しかし、単純な2重出力、あるいは間引きのため、音質はかなり酷いものになるはずです。
(話を簡単にするため整数比にしましたが、出力が 44.1k ならもっと酷いことになりそうです)

とういことで、実際にデータを取ってみました。


※ 32ks/s 4kHz サイン波 (入力波形)

※ 32k IN → 48k OUT の時の出力 (4kHz サイン波)

 1周期 8サンプル → 12サンプル になっている。(3つに2つは同じデータが重なっている)

 そのスペクトラム


※ 48ks/s 4kHz サイン波 (入力波形)

※ 48k IN → 32k OUT の時の出力 (4kHz サイン波)

 1周期 12サンプル → 8サンプル になっている。(3つに1つは間引かれている)

 そのスペクトラム


44.1k OUT の時のデータ

※ 32k IN → 44.1k OUT (1kHz サイン波) スペクトラム

※ 32k IN → 44.1k OUT (4kHz サイン波) スペクトラム

※ 32k IN → 44.1k OUT (15kHz サイン波) スペクトラム


※ 48k IN → 44.1k OUT (1kHz サイン波) スペクトラム

※ 48k IN → 44.1k OUT (4kHz サイン波) スペクトラム

※ 48k IN → 44.1k OUT (15kHz サイン波) スペクトラム

これがどの程度なのかは サンプリング周波数変換の特性と比べて見るとわかるでしょう(^^;


Back