|
8 | 8 | /// - 96kHz: 4チャンネル (S/MUX2) |
9 | 9 | /// - 192kHz: 2チャンネル (S/MUX4) |
10 | 10 | /// |
| 11 | +/// # S/MUX時のチャンネルマッピング(利用側で実装) |
| 12 | +/// 本モジュールは `o_channels[8]` を物理スロットとして出力し、S/MUXの論理チャンネル再構成は行わない。 |
| 13 | +/// |
| 14 | +/// - S/MUX2 (96kHz / 88.2kHz, 4ch) |
| 15 | +/// - Logical CH0 <= `o_channels[0]` + `o_channels[1]` |
| 16 | +/// - Logical CH1 <= `o_channels[2]` + `o_channels[3]` |
| 17 | +/// - Logical CH2 <= `o_channels[4]` + `o_channels[5]` |
| 18 | +/// - Logical CH3 <= `o_channels[6]` + `o_channels[7]` |
| 19 | +/// - S/MUX4 (192kHz / 176.4kHz, 2ch) |
| 20 | +/// - Logical CH0 <= `o_channels[0]` + `o_channels[1]` + `o_channels[2]` + `o_channels[3]` |
| 21 | +/// - Logical CH1 <= `o_channels[4]` + `o_channels[5]` + `o_channels[6]` + `o_channels[7]` |
| 22 | +/// |
| 23 | +/// 時間順は、各Logical CH内では添字の小さいスロットが先のサンプル。 |
| 24 | +/// |
11 | 25 | /// # ADATフレーム構造 (256 bits @ 48kHz = 20.83us) |
12 | 26 | /// |
13 | 27 | /// 5ビットニブル単位で構成。各ニブル: [4bit data][1bit separator=1] |
@@ -183,11 +197,11 @@ pub module adat_rx ( |
183 | 197 | /// 通常は44.1/48kHz。 |
184 | 198 | /// warning: S/MUX有効時でも44.1kHz/48kHzが出力されることに注意 |
185 | 199 | o_frame_clk: output logic, |
186 | | - /// 検出されたS/MUX有効状態 (1: enabled, 0: disabled) |
187 | | - /// UserBit2による自動判定 |
188 | | - /// warning: UserBitによるS/MUX2とS/MUX4の区別は原理的に不可能なので、あくまでS/MUXが有効or無効のみを示す |
| 200 | + /// UserBit2に基づいて検出されたS/MUX有効状態 (1: enabled, 0: disabled) |
| 201 | + /// warning: S/MUX2とS/MUX4の判別は原理的に不可能なので、あくまでS/MUXが有効or無効のみを示す |
189 | 202 | o_smux_active: output logic, |
190 | | - /// 8チャンネルPCMデータ出力 |
| 203 | + /// 8チャンネルPCMデータ出力(ADAT物理スロット) |
| 204 | + /// warning: S/MUX有効時の論理チャンネル再構成は利用側の実装が必要 |
191 | 205 | o_channels: output logic<24> [8], |
192 | 206 | /// データ有効信号 |
193 | 207 | o_valid: output logic, |
|
0 commit comments