Sine Wave - 2022.1 日本語

Vitis Model Composer ユーザー ガイド (UG1483)

Document ID
UG1483
Release Date
2022-05-26
Version
2022.1 日本語

ザイリンクス Sine Wave ブロックは、シミュレーション時間を時間ソースとして使用して、サイン波を生成します。

ザイリンクス Sine Wave ブロックは、正弦曲線波形を出力します。ブロックからの出力は、サイン波、コサイン波、またはその両方です。Sine Wave ブロックを ザイリンクス FPGA または SoC にインプリメントすると、ターゲット デバイス用にブロック パラメーターが最適化されます。

Sine Wave ブロックの出力は、次の式で決定されます。

y = sin (2 π (k+o)/p)

説明

p: サイン波周期ごとクロック サイクルごとのタイム サンプル数

k: 繰り返し整数値 (0 ~ p-1)

o: 信号のオフセット (位相シフト)

このブロックでは、Model Composer は、最初のタイム ステップで k を 0 に設定し、上記の式を使用してブロック出力を算出します。次のタイム ステップでは、Simulink が k を増分し、ブロックの出力を再計算します。kp に達すると、Simulink は、ブロック出力を算出する前に k を 0 にリセットします。このプロセスは、シミュレーションの終了まで継続されます。

Sine Wave ブロックの出力の特性は、次の式で決定されます。

周期ごとのサンプル数 = 2π / (周波数 * サンプル時間)

オフセット サンプル数 = 位相オフセット * 周期ごとのサンプル数 / 2π

Sine Wave ブロックは、単純なサイン波およびコサイン波を生成するのに理想的です。サイン波のインプリメンテーションで位相ジェネレーター、複数チャネルのサポート、AXI4 ポートなどの複雑な機能を使用する場合は、Sine Wave ブロックではなくザイリンクス DDS Compiler 6.0 ブロックを使用してください。

Vivado デザイン フローでは、Sine Wave ブロックはコード生成時に LogicCore IP DDS Compiler v6.0 として推論されます。

ブロック パラメーター

Simulink® モデルでブロックのアイコンをダブルクリックすると、[Block Parameters] ダイアログ ボックスが開きます。

このブロック特定のパラメーターには、次のものがあります。

System Parameters
Select the input format
周波数および位相オフセット入力を周波数 (Hz) (Frequency) または角速度 (Radians) のどちらで入力するかを指定します。
Frequency
周波数を Hz またはラジアンで指定します。デフォルト値は 1 です。
Phase Offset
位相シフトを Hz またはラジアンで指定します。デフォルト値は 0 です。
Output Selection
Sine_and_Cosine
ブロックにサインとコサインの両方の出力ポートを配置します。
Sine
ブロックにサイン出力ポートを配置します。
Cosine
ブロックにコサイン出力ポートを配置します。
Spurious Free Dynamic Range (SFDR)
Sine Wave ブロックによって生成される出力の精度を指定します。これにより、出力幅および内部バス幅が設定され、さまざまなインプリメンテーションが制御されます。
Explicit Sample Period
その下の Sample Period で明示的に指定したサンプル時間を使用します。オフにすると、Model Composer 基本周期がブロック サンプル タイムとして使用されます。
Sample Period
Explicit Sample Period をオンにした場合に、ブロックのサンプル時間を指定します。

次に、Sine Wave ブロックを使用して正弦曲線信号を生成する例を示します。

(1/1e6) のサンプル周期または 1 MHz で動作するシステムで、位相オフセットが π/2 で 20 kHz の正弦波を生成するには、次の仕様を Sine Wave ブロックで使用します。

図 1. Sine Wave ブロックの設定

これらの設定は、次のサイン波を生成します。

図 2. 生成されたサイン波

サイン波の波長 = Simulink サンプル周期/周波数 => 1 MHz/20 kHz = 0.5 * 10-4

サイン波のスペクトラム ビューは次のとおりです。

図 3. サイン波出力

さらに、次のようになります。

各周期のサンプルの数 = (2π/(1/1e6 * 20e3))

= 50 (1 サイクルにおけるサンプルの合計数)

オフセット サンプル数 = (π/2) * (50/2π) = 50/4