Modulation
| Name | In/Out | Width | Description |
|---|---|---|---|
| CLK | In | 1 | メインクロック |
| MOD_SETTINGS | In | - | |
| ├─ UPDATE | In | 1 | 設定更新フラグ |
| ├─ REQ_RD_BANK | In | 1 | 要求読み込みバンク |
| ├─ CYCLE[n] | In | 16 | 第 n バンクの周期 - 1 |
| ├─ FREQ_DIV[n] | In | 16 | 第 n バンクの周波数分周比 |
| ├─ REP[n] | In | 16 | 第 n バンクの繰り返し回数 - 1 |
| ├─ TRANSITION_MODE | In | 8 | 遷移モード |
| └─ TRANSITION_VALUE | In | 64 | 遷移値 |
| SYS_TIME | In | 57 | システム時刻 |
| DIN_VALID | In | 1 | 強度/位相データ有効フラグ |
| INTENSITY_IN | In | 8 | 強度 |
| PHASE_IN | In | 8 | 位相 |
| INTENSITY_OUT | Out | 8 | 強度 |
| PHASE_OUT | Out | 8 | 位相 |
| DOUT_VALID | Out | 1 | 強度/位相データ有効フラグ |
| MOD_BUS | In | - | 変調用メモリバス |
| PHASE_CORR_BUS | In | - | 位相補正データメモリバス |
| GPIO_IN | In | 4 | GPIO 入力 |
このモジュールは, 強度データに変調データを掛け合わせることで AM 変調を実現するモジュールである. 変調データは一定の周期でメモリからサンプルされる. 変調データ領域は 2 つのバンクに分けられており, それぞれ独立に設定できる.
また, 位相に関しては Phase Correction サブモジュールがこのモジュール内でインスタンス化されており, 強度データの変調と並列に処理される.
このサブモジュールは, システム時刻, 周期
として計算される.
SYS_TIME は
となり,
SYS_TIME がすべてのデバイスで同期しているため, このインデックスも必然的にすべてのデバイスで同期する.
Swapchain
Section titled “Swapchain”このサブモジュールはバンクの切り替えを制御する.
バンク切替時の挙動は以下の通りである.
- 要求されたバンクの繰り返し回数が
0xFFFF(無限ループ) の場合, 直ちにバンクを切り替える.- 遷移モードが
EXTの場合, バンク内のデータを一周するたび, バンクを自動的に切り替える. - それ以外の遷移モードの場合は, 単にそのバンクを無限ループする. クライアント側の
Immediateはこの経路を使う.
- 遷移モードが
- 要求されたバンクの繰り返し回数が
0xFFFF以外の場合, 遷移モードに従ってバンクの切り替えを待機する. バンク切り替え後, 指定回数の繰り返しが終わった後,STOPをアサートする.- 遷移モードが
SYNC_IDXの場合, 要求されたバンクのインデックスが 0 になったら切り替える. - 遷移モードが
SYS_TIMEの場合, システム時刻が遷移値で指定された値を超えたら切り替え, インデックスを 0 に初期化する. - 遷移モードが
GPIOの場合, 遷移値で指定された GPIO In ピンがアサートされたら切り替え, インデックスを 0 に初期化する.
- 遷移モードが
STOP がアサートされている間, Multiplier はバンク及びインデックスを更新しない.
すなわち, 最後にサンプルした変調データを保持し続ける.
Multiplier
Section titled “Multiplier”このサブモジュールは, 強度データに変調データを掛け合わせ,
なお,
変調データは Swapchain サブモジュールから渡される BANK, IDX に応じてメモリから読み出す.