Skip to content
This is the development version of the documentation. It may change before the next release. See 0.6.x for the latest release.

Pulse Width Encoder

This content is not available in your language yet.

Name In/Out Width Description
CLK In 1 メインクロック
PWE_TABLE_BUS In - メモリバス
DIN_VALID In 1 強度/位相データ有効フラグ
INTENSITY_IN In 8 強度
PHASE_IN In 8 位相
PULSE_WIDTH_OUT Out 9 パルス幅
PHASE_OUT Out 8 位相
DOUT_VALID Out 1 パルス幅/位相データ有効フラグ

このモジュールは, 強度をパルス幅に変換する. 強度 とパルス幅 の関係は, 理想的には

となる. ここで, は周期である. このモジュールはこれの逆変換を行うためのモジュールである.

ただし, 上記は理想的な変換であり, 現実とは異なる可能性がある. そのため, このモジュールでは, 強度をインデックス, パルス幅を値とする書き込み可能なテーブルを利用している. このテーブルを書き換えることで, 任意の変換を実現する事ができる. デフォルトでは, 上記の理想的な変換を行うテーブルが用意されている.

テーブルの実体は 256 語の BRAM (BRAM_PWE_TABLE) であり, Memory モジュールが保持する.

このモジュールの処理もパイプライン的に行われる. 入力として, DIN_VALID は 249 クロックの間 1 であり, その間 INTENSITY_IN, PHASE_IN から強度/位相データが順番に流れてくることを想定している. 処理が終わったら, DOUT_VALID を 1 とし, 順次 PULSE_WIDTH_OUT, PHASE_OUT からパルス幅/位相データを流す.