この解説は、Skyworks (Silicon Labs) Si47XX PROGRAMMING GUIDE AN332 を基に、Google AI (Gemini) の協力を得て作成しています。
1 プロパティ 0x1205. FM_RSQ_MULTIPATH_HI_THRESHOLD 概要
FM_RSQ_MULTIPATH_HI_THRESHOLD
マルチパスレベルがこの閾値を超えた場合にRSQ割り込みを発生させる、上限閾値を設定します。
次のコマンドを送信しても安全な状態になると、CTSビット(およびオプションの割り込み)がセットされます。
このプロパティは、パワーアップモードの時のみ設定または読み出しが可能です。
設定値には、マルチパスの閾値(パーセント、0~100)を指定するか、または127を指定して機能を無効にすることができます。
対応デバイス: Si4706-D50、Si4704/05/30/31/34/35-D50以降、Si4732
デフォルト値: 0x007F
ステップ: 1
範囲: 0~127
マルチパスレベルがこの閾値を超えた場合にRSQ割り込みを発生させる、上限閾値を設定します。
次のコマンドを送信しても安全な状態になると、CTSビット(およびオプションの割り込み)がセットされます。
このプロパティは、パワーアップモードの時のみ設定または読み出しが可能です。
設定値には、マルチパスの閾値(パーセント、0~100)を指定するか、または127を指定して機能を無効にすることができます。
対応デバイス: Si4706-D50、Si4704/05/30/31/34/35-D50以降、Si4732
デフォルト値: 0x007F
ステップ: 1
範囲: 0~127
2 プロパティ
2.1 プロパティリスト
| Bit | 上位バイト PROPH | 下位バイト PROPL | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Name | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | MULTH | ||||||
| Bit | Name | Function |
|---|---|---|
| 7:0 | MULTH | FM RSQ マルチパス高しきい値。 マルチパスがこのしきい値を超えた場合にRSQ割り込みを発生させるしきい値。 デフォルト値は127です。 |
2.2 プロパティ
本プロパティは、FM受信時におけるRSQ(受信信号品質)割り込みを発生させるための「マルチパス(多重波伝搬歪み)の上限しきい値」を設定します。
建物や山などに反射して遅れて届いた電波(マルチパス)の割合が、このプロパティで設定した値を上回った(Above)際、条件が満たされ、ステータスレジスタの割り込みフラグがセットされます。
デフォルト値は 0x007F(127%)となっており、初期状態では実質的にマルチパス割り込みが発生しない(最高値)ようにマスクされています。
建物や山などに反射して遅れて届いた電波(マルチパス)の割合が、このプロパティで設定した値を上回った(Above)際、条件が満たされ、ステータスレジスタの割り込みフラグがセットされます。
デフォルト値は 0x007F(127%)となっており、初期状態では実質的にマルチパス割り込みが発生しない(最高値)ようにマスクされています。
2.2.1 MULTH (Multipath High Threshold)
目的と概要:
[目的と概要]割り込みをトリガするマルチパス歪みの割合を 0〜100% の範囲(1%ステップ、設定・許容値自体は最大127%)で設定します。
FM_RSQ_INT_SOURCE (0x1200) プロパティ内の MULTHIEN ビットを有効にすることで、このしきい値を超えた際に GPO2/INT ピン経由でホストマイコンへリアルタイムに割り込み信号(RSQ_INT)を出力できます。
AN332に明記されない目的と解説:
FM_RSQ_INT_SOURCE (0x1200) プロパティ内の MULTHIEN ビットを有効にすることで、このしきい値を超えた際に GPO2/INT ピン経由でホストマイコンへリアルタイムに割り込み信号(RSQ_INT)を出力できます。
都市型フェージング(ビル街での音質劣化)の先回り防御:
RSSI(電界強度)自体は十分に強いにもかかわらず、音声が「ジャリジャリ」と歪む都市型マルチパスをミリ秒単位で検知します。
AN332の基本説明にある単純な閾値監視を超え、ステレオ分離度を強制的に下げて(モノラル化)ノイズを目立たなくする協調制御のトリガとして必須のパラメータです。
アンテナ指向性・ダイバシティシステムの評価指標:
AN332の基本説明にある単純な閾値監視を超え、ステレオ分離度を強制的に下げて(モノラル化)ノイズを目立たなくする協調制御のトリガとして必須のパラメータです。
可動式アンテナや複数アンテナ(ダイバシティ)を搭載したシステムにおいて、現在選択中のアンテナが「歪みを受信しやすい状態か」をホスト側が動的に評価し、最適なアンテナへ切り替えるためのトリガとして応用されます。
3 応答パラメータ
STATUS (Status Byte)
RESP1 (Response Byte 1 / High Byte)
RESP2 (Response Byte 2 / Low Byte)
[目的と概要]デバイスの現在の全体ステータスを返します。
最上位ビットの CTS (Clear to Send) は、デバイスが次のコマンドを受け付けられる状態(1)か、処理中(0)かを示します。
ERR ビット(Bit 6)が 1 の場合は、直前のコマンドやパラメータに不正があったことをホストに伝えます。
最上位ビットの CTS (Clear to Send) は、デバイスが次のコマンドを受け付けられる状態(1)か、処理中(0)かを示します。
ERR ビット(Bit 6)が 1 の場合は、直前のコマンドやパラメータに不正があったことをホストに伝えます。
RESP1 (Response Byte 1 / High Byte)
[目的と概要]GET_PROPERTY 実行時にのみ意味を持ち、設定されている16ビットのプロパティ値のうち上位8ビット(MSB)を返します。
FM_RSQ_RSSI_HI_THRESHOLD の有効範囲は 0〜127(7ビット)であるため、このバイトは常に 0x00 となります。
FM_RSQ_RSSI_HI_THRESHOLD の有効範囲は 0〜127(7ビット)であるため、このバイトは常に 0x00 となります。
RESP2 (Response Byte 2 / Low Byte)
[目的と概要]GET_PROPERTY 実行時にのみ意味を持ち、設定されているプロパティ値の下位8ビット(LSB)を返します。
ここに現在設定されている RSSIH の値(0x00〜0x7F)が格納されて返ってきます。
ここに現在設定されている RSSIH の値(0x00〜0x7F)が格納されて返ってきます。
4 その他(Google AI (Gemini) の見解)
4.1 コマンドの重要ステップと注意事項
実用的なしきい値への引き下げ:
ソース有効化の連携:
ステータス読み出しによるラッチ解除:
デフォルトが 127% のため、そのままでは割り込みは絶対に発生しません。
一般的にFM放送で聴感上の歪みが気になり始める 20%〜40% 程度(環境に応じて調整)に設定を書き換えるステップが必要です。
一般的にFM放送で聴感上の歪みが気になり始める 20%〜40% 程度(環境に応じて調整)に設定を書き換えるステップが必要です。
ソース有効化の連携:
SET_PROPERTY で本値を設定するだけでなく、必ず FM_RSQ_INT_SOURCE (0x1200) の MULTHIEN (Bit 3) を 1 にセットしてください。
ステータス読み出しによるラッチ解除:
割り込み検知後は、FM_RSQ_STATUS (0x23) コマンドを発行して内部の MULTHI フラグを読み出し、クリアしてください。
クリアしないと、GPO2/INT ピンがホストに対してアクティブなまま固定されてしまいます。
クリアしないと、GPO2/INT ピンがホストに対してアクティブなまま固定されてしまいます。
4.2 もう少し踏み込んだ応用展開
動的モノラルブレンドの強制介入:
「見せかけの強電界局」の間引き(シークアルゴリズムの最適化):
Si4735にはマルチパスに応じた自動ステレオ/モノラルブレンド機能(FM_AUDIO_BLEND_MULTIPATH_~)がありますが、特定の設置環境において、
よりキレの良い(俊敏な)ノイズ対策を行いたい場合、本割り込みをトリガにしてホスト側から FM_BLEND_MONO 等のコマンドで強制モノラル化・ハイカットを入れることで、
ユーザーに不快な歪み音を一切聴かせないプレミアムな制御が可能です。
「見せかけの強電界局」の間引き(シークアルゴリズムの最適化):
オートシーク時、RSSIが非常に高いにもかかわらずマルチパスが酷くて全く聴き取れない「山間部の反射波」などがあります。
独自スキャン時に本しきい値を用いて、歪みが多い局を自動的にスキップする高度なチャンネルセレクタが実装できます。
独自スキャン時に本しきい値を用いて、歪みが多い局を自動的にスキップする高度なチャンネルセレクタが実装できます。
4.3 デバッグ時のチェックリスト
0x1200 (FM_RSQ_INT_SOURCE) の MULTHIEN は適切に有効化されているか?
0x0001 (GPO_IEN) プロパティの RSQIEN (Bit 3) が 1 になっているか?
実機デバッグにおいて、マルチパス(歪み)を意図的に発生させる環境(屋内、アンテナに手を近づける、疑似信号発生器のマルチパスフェージング設定など)を作り、 GPO2/INT ピンが Low に落ちるか?
FM_RSQ_STATUS (0x23) を発行した際、応答バイトの MULTHI フラグ(Bit 3)が正しく 1 になっているか?
0x0001 (GPO_IEN) プロパティの RSQIEN (Bit 3) が 1 になっているか?
実機デバッグにおいて、マルチパス(歪み)を意図的に発生させる環境(屋内、アンテナに手を近づける、疑似信号発生器のマルチパスフェージング設定など)を作り、 GPO2/INT ピンが Low に落ちるか?
FM_RSQ_STATUS (0x23) を発行した際、応答バイトの MULTHI フラグ(Bit 3)が正しく 1 になっているか?
4.4 まとめ
FM_RSQ_MULTIPATH_HI_THRESHOLD(0x1205)は、電波の「強さ(RSSI)」だけでは測れない「品質(歪み)」をリアルタイムに監視するための重要プロパティです。
電界強度は十分なのに音が悪いという、FM特有の「マルチパスノイズ」をホスト側がいち早く察知し、オーディオ出力を動的にマスク・ブレンド制御するためのトリガとして非常に強力に機能します。
RSSI監視(0x1203/0x1204)とこのマルチパス監視を併用することで、どのような受信環境下でも破綻しない最高峰のFMレシーバーシステムを構築できます。
電界強度は十分なのに音が悪いという、FM特有の「マルチパスノイズ」をホスト側がいち早く察知し、オーディオ出力を動的にマスク・ブレンド制御するためのトリガとして非常に強力に機能します。
RSSI監視(0x1203/0x1204)とこのマルチパス監視を併用することで、どのような受信環境下でも破綻しない最高峰のFMレシーバーシステムを構築できます。
