2 Replies Latest reply on Jun 8, 2020 12:38 AM by JuyoungJ_06

    Community Translation - PCM/I2S Clock Setting in CYW20706 for Audio Applications - KBA228409

    KoSa_1909416

      Community Translation - PCM/I2S Clock Setting in CYW20706 for Audio Applications - KBA228409

      Hi,
      I tried to translate this KBA228409 into Japanese.
      https://community.cypress.com/docs/DOC-18160

       

      ----------------------------------------------------------------

      タイトル:オーディオ・アプリケーションの為のPCM/I2Sクロック設定(CYW20706)

       

      CYW20706のI2SまたはPCMクロックは、アプリケーションから設定することは出来ません。
      ファームウェア/ハードウェアが、現行のオーディオストリームのビット深度、サンプルレート、チャンネル数などに基づいて
      クロック設定を制御します。

       

       

      I2S:
      CYW20706では、A2DPプロファイルを使いながらオーディオサンプルをルーティングするためにI2Sが使用されます。
      オーディオサンプルの方向は、デバイスのA2DPの役割によって異なります。
      CYW20706がソースとして構成されている場合、オーディオサンプルはハードウェアコーデックからI2S経由で受信されます。
      シンクとして構成されている場合、オーディオサンプルはCYW20706からハードウェアコーデックへ送信されます。

       

      A2DPアプリケーションでは、デフォルト又はUDIO_ROUTE_I2Sとして構成されている場合、
      オーディオデータはI2S経由でルーティングされます。
      ”is_master”フラグをTRUEに設定することで、CYW20706をI2Sマスターとして構成できます。
      その時、CYW20706は、A2DPプロファイルでネゴシエートされたサンプリング周波数に基づいてビットクロック(SCK)を生成します。
      たとえば、CYW20706がコーデック・ネゴシエーション中にピアBluetoothデバイスと44.1 kHzのサンプリング周波数をネゴシエートする場合、
      I2Sクロック周波数は内部ライブラリによって44.1 kHzに設定されます。 ビット深度またはワード長は16に設定されています。
      つまり、フレーム長は32に固定されており、変更できません。


      マスターモードでのI2Sクロックは、次のいずれかになります。

       

        • 44.1 kHz × 32bit / フレーム = 1411.2 kHz
        • 48 kHz × 32bit /フレーム     = 1536 kHz

       

      スレーブモードでは、任意のクロックレートで最大3.072 MHzまでサポートされます。

       

      備考:CYW20706がA2DPソースの場合、アプリケーションファームウェアでサンプリング周波数を設定できます。

                 たとえば、WICED Studio SDKで利用可能な"watch" デモの場合 :av_app_cb.audio_sf= 'desired Sampling Frequency';

       

      PCM:
      PCMは、デジタル通信チャンネルで送信するためにオーディオ(特に音声)をデジタル化するために使用される標準的な方法です。
      CYW20706には、マスターモードまたはスレーブモードのいずれかでリニアPCMコーデックデバイスに接続できるPCMインターフェイスが搭載されています。
      PCMインターフェイスは、HFPプロファイルを使用して、8Kまたは16K音声サンプルの全二重双方向転送に使用されます。

       

      CYW20706は、各PCMフレームの16ビットのうち13ビットを使用します。
      残りの3ビットは入力デバイスで無視する必要があり、0、1、符号ビット、またはプログラムされた値で埋めることができます。
      デフォルトの形式は、13ビットの2の補数データで、左揃え、0で埋められ、MSBが最初となります。
      PCMクロック設定は、SCO設定のサンプルレートに基づいて内部で行われます。
      広帯域音声(WBS)が有効になっている場合、CYW20706は16Kのサンプルレートを使用します。 それ以外の場合は8Kとなります。
      WICED_BT_HFP_HFP_CODEC_SET_EVTをチェックして、WBSが有効になっているかどうかを確認します。

       

      したがって、PCMクロックは次のいずれかになります。


        • 8 kHz × 16 bit × 2(チャンネル)  = 256 kHz(狭帯域音声用)
        • 16 kHz × 16 bit × 2(チャンネル)= 512 kHz(広帯域音声用)


      WICEDスタックがこれを管理するので、アプリケーションプロジェクトでWBSを有効または無効にするだけです。

       

      ----------------------------------------------------------------

       

      Best Regards,

      Sakagami