JAJSP37B july 2022 – july 2023 TAS2781
PRODUCTION DATA
TAS2781 は、フレキシブルな TDM シリアル・オーディオ・ポートを搭載しています。このポートは、ステレオ I2S、左揃え、TDM などさまざまなフォーマットに対応するように構成することができます。モノラル・オーディオ再生は、SDIN ピンから行うことが可能です。SDOUT ピンは、PVDDL 電圧、PVDDH 電圧、ダイ温度、ステータス、エコー・キャンセレーション用のオーディオなどのストリームを送信するために使用します。
デフォルトでは、TAS2781 は PCM 再生サンプル・レート (AUTO_RATE= 0) を自動検出します。この機能は、の AUTO_RATE レジスタ・ビットを High にセットすることにより、ディセーブルして手動で構成することもできます。
TDM シリアル・オーディオ・ポートの有効な SBCLK 対 FSYNC 比は、のレジスタに示されています。デバイスはタイム・スロット数を自動検出するため、プログラムする必要はありません。
AUTO_RATE レジスタ・ビットが High にセットされている場合 (TDM サンプル・レートの自動検出がディセーブル)、SAMP_RATE[2:0] レジスタ・ビットと SBLK_FS_RATIO[5:0] レジスタ・ビットを使用して、PCM オーディオ・サンプル・レートを構成できます。TAS2781 は堅牢なクロック・フォルト検出エンジンを搭載しており、FSYNC が構成されているサンプル・レートに合っていない場合 (AUTO_RATE = 1 の場合) や、SBCLK 対 FSYNC 比がサポートされていない場合に、再生パスのボリュームを自動的に低下させます (可聴アーティファクトが最小化されます)。クロックの周波数と比がどちらも有効であることが検出されると、デバイスは再生パスのボリュームを自動的に構成されている値に戻し、再生を再開します。
自動レート検出を使用すると、TDM バスで検出されたサンプリング・レートと SBCLK 対 FSYNC 比は、およびのレジスタにある読み取り専用ビット FS_RATIO[5:0] と FS_RATE[2:0] に通知されます。
フレームは FSYNC が High から Low、または Low から High へのいずれかの遷移で開始します (FRAME_START レジスタ・ビットで設定)。FSYNC および SDIN は、SBCLK の立ち上がりエッジか立ち下がりエッジのいずれかを使用してサンプリングされます (RX_EDGE レジスタ・ビットで設定)。RX_OFF[4:0] レジスタ・ビットでは、FSYNC の遷移からタイム・スロット 0 の開始までの SBCLK のサイクル数を定義します。この値は通常、左揃えフォーマットの場合は 0、I2S フォーマットの場合は 1 に設定されます。
RX_SLEN[1:0] レジスタ・ビットは、RX タイム・スロットの長さを 16、24、32 (デフォルト) ビットに設定します。タイム・スロット内のオーディオ・サンプルのワード長は、RX_WLEN[1:0] レジスタ・ビットで設定します。デフォルトでは、RX ポートはタイム・スロット内のオーディオ・サンプルを左揃えにしますが、RX_JSTF レジスタ・ビットで右揃えに変更することも可能です。TAS2781 は、モノラルとステレオのダウンミックス再生 ([L+R]/2) に対応しています。デフォルトでは、デバイスは I2C ベース・アドレスのオフセット (ADDR ピンで設定) と同じタイム・スロットからモノラル再生を行います。RX_SCFG[1:0] レジスタ・ビットを使用すると、RX_SLOT_R[3:0] レジスタ・ビットと RX_SLOT_L[3:0] レジスタ・ビットの設定により、再生ソースを左側のタイム・スロット、右側のタイム・スロット、またはステレオ・ダウンミックスにオーバーライドすることができます。
タイム・スロットがフレーム境界を超えたときに部分的に受信するか、すべて受信するかのいずれかを選択した場合、レシーバはデジタル的にミュートされたサンプルと同等のヌル・サンプルを返します。
TDM ポートは、SDOUT ピンで、スピーカ電圧検出、スピーカ電流検出、割り込みとステータス、PVDDH 電圧、ダイ温度など多数のサンプル・ストリームを送信できます。
SBCLK の立ち上がりエッジか立ち下がりエッジのいずれかを使用して、SDOUT ピンでデータを送信することができます。この機能は、TX_EDGE レジスタ・ビットをセットして構成できます。TX_OFF[2:0] レジスタ・ビットは、フレーム開始時からタイム・スロット 0 の開始時までの SBCLK のサイクル数を定義します。この値は通常、左揃えフォーマットの場合は 0、I2S フォーマットの場合は 1 にプログラムされます。TDM TX は、TX_FILL レジスタ・ビットの設定に応じて、ロジック 0 かハイ・インピーダンスのいずれかを送信できます。オプションのバス・キーパーは、すべてのデバイスがハイ・インピーダンスで駆動している場合、SDOUT ピンの状態を弱く保持します。SDOUT で必要なバス・キーパーは 1 つだけのため、この機能は TX_KEEPEN レジスタ・ビットでディセーブルにできます。バス・キーパーは、TX_KEEPLN レジスタ・ビットを使用して、1LSB のみバスを保持するか、常時 (永続的に) バスを保持するかを構成できます。さらに、TX_KEEPCY レジスタ・ビットを使用して、キーパーの LSB を 1 フル・サイクルの間駆動するか、ハーフ・サイクルだけ駆動するかも設定できます。
TX_FILL は、I2S バスにアンプが 1 つしかないモノラル・システムで使用されます。TX_FILL を Low にセットしておくと、アンプに使用されないスロットにはすべて 0 が入ります。ここに記載されている TX ビットは、のレジスタにあります。
複数のデバイスが同一の I2S バス上にある場合は、ページ 0x01 の SDOUT_HIZ レジスタが役立ちます。各デバイスは、バス上にある他のデバイスのスロット構成を認識できません。システム・レベルで SDOUT_HIZ レジスタを、設定が正しく行われ、内部や外部の競合が発生しないよう、適切にプログラムする必要があります。
電流値と電圧値は、デフォルトでは全 16 ビットすべての測定値が送信されます。の IVMON_EN[1:0] レジスタ・ビットを使用すると、1 スロットで 8MSB ビットだけ、または複数のスロットにまたがって 12MSB ビットの値を送信できます。ホスト・プロセッサで 24 ビットの I2S/TDM データのみを処理する場合は、特殊な 12 ビット・モードを使用します。デバイスは電圧検出スロットと電流検出スロットを 1 スロットずつオフに構成する必要があり、この結果、3 つの連続する 8 ビット・スロットが消費されます。このモードでは、デバイスは最初の 12MSB ビットを送信し、次に前のスロットで指定された 2 番目の 12MSB ビットを送信します。
タイム・スロットがフレーム境界を超えて送信されるように選択した場合、トランスミッタはフレーム境界で送信を切り捨てます。
SAR 測定 (PVDDL、PVDDH、温度) のためのタイム・スロットは SAR_DATA_SLOT[5:0] レジスタ・ビットで設定します。サンプル・ストリームをイネーブルにするには、SAR_DATA_TX レジスタ・ビットを High にセットする必要があります。スロット長は、のレジスタにある SAR_DATA_SL ビットによって選択します。
TDM の最後に処理されるオーディオ・スロットについては、イネーブル化や長さの設定に AUDIO_SLOT[5:0]、AUDIO_TX、AUDIO_SLEN レジスタ・ビットを使用します。
スロットのステータス情報は STATUS_SLOT[5:0] レジスタ・ビットで確認できます。STATUS_TX レジスタ・ビットを High にセットすると、ステータス送信はイネーブルになります。