Emission
This content is not available in your language yet.
| Name | In/Out | Width | Description |
|---|---|---|---|
| CLK | In | 1 | メインクロック |
| PATTERN_SETTINGS | In | - | |
| ├─ UPDATE | In | 1 | 設定更新フラグ |
| ├─ REQ_RD_BANK | In | 1 | 要求読み込みバンク |
| ├─ MODE[n] | In | 1 | 第 n バンクの出力タイプ |
| ├─ CYCLE[n] | In | 16 | 第 n バンクの周期 - 1 |
| ├─ FREQ_DIV[n] | In | 16 | 第 n バンクの周波数分周比 |
| ├─ REP[n] | In | 16 | 第 n バンクの繰り返し回数 - 1 |
| ├─ SOUND_SPEED[n] | In | 16 | 第 n バンクの音速 |
| ├─ NUM_FOCI[n] | In | 8 | 第 n バンクの焦点数 |
| ├─ TRANSITION_MODE | In | 8 | 遷移モード |
| └─ TRANSITION_VALUE | In | 64 | 遷移値 |
| SYS_TIME | In | 57 | システム時刻 |
| UPDATE | In | 1 | 超音波周期トリガ |
| GPIO_IN | In | 4 | GPIO 入力 |
| INTENSITY | Out | 8 | 強度 |
| PHASE | Out | 8 | 位相 |
| DOUT_VALID | Out | 1 | 強度/位相データ有効フラグ |
| EMISSION_BUS | In | - | Emission データメモリバス |
| OUTPUT_MASK_BUS | In | - | Output Mask データメモリバス |
本モジュールは, 振動子毎の強度/位相データを出力する.
出力タイプ (MODE) はバンク毎に 2 種類ある.
EMISSION_TYPE_RAW: 振動子毎の強度/位相をそのまま BRAM から読み出すEMISSION_TYPE_FOCI: 焦点の位置データから位相を計算する
UPDATE (超音波周期トリガ) を起点に, Swapchain が決めたバンクとインデックスのデータを 1 周期分読み出し, 249 振動子分の強度/位相を順次出力する.
このサブモジュールは, システム時刻, 周期
として計算される.
SYS_TIME は
となり,
SYS_TIME がすべてのデバイスで同期しているため, このインデックスも必然的にすべてのデバイスで同期する.
Swapchain
Section titled “Swapchain”このサブモジュールはバンクの切り替えを制御する.
挙動は Modulation の Swapchain と同一である.
STOP がアサートされている間, Emission はバンク及びインデックスを更新せず, 最後にサンプルしたデータを出力し続ける.
このサブモジュールは, 指定されたインデックスのデータを順次出力するだけである.
なお, Emission BRAM は後述のFocusサブモジュールのために読み出し側が
このサブモジュールは BRAM に書き込まれた焦点の位置データ列から適切な位相を計算して出力する.
焦点の位置データはデバイスにローカルな座標系で表現される.
また, 位置データは
このサブモジュールでは, 焦点位置データ SOUND_SPEED,
まず,
また, 音速
となる.
よって, 位相
と計算できる.
Focus サブモジュールは上記の計算を同時 8 焦点分行い, 各焦点の位相
ここで, NUM_FOCI) である.
出力する強度は第 0 焦点のデータに含まれる強度フィールドである. 第 1 焦点以降の同フィールドは強度ではなく, その焦点に加算する位相オフセットとして扱われる.
Output Mask
Section titled “Output Mask”Output Mask サブモジュールは Raw, または, Focus サブモジュールからの出力を, マスクデータに基づいて, 超音波を出力するか否か (強度を 0 にするか否か) を制御する.
マスクデータはバンク毎に
Raw は振動子毎に強度を設定できるため, 基本的に Focus サブモジュールからの出力を制御する目的で使用される.