comm.EyeDiagram
(削除済み) 時間領域信号のアイ ダイアグラムの表示
comm.EyeDiagram は削除されました。信号のアイ ダイアグラムを表示するには、代わりに関数 eyediagram
を使用します。推奨されるワークフローの詳細については、バージョン履歴を参照してください。
説明
comm.EyeDiagram
System object™ は変調された信号の複数のトレースを表示して、アイ ダイアグラムを生成します。このオブジェクトを使用して、パルス整形やチャネル歪みの影響などの信号の変調特性を表示できます。アイ ダイアグラムは信号特性を測定し、水平方向と垂直方向のバスタブ曲線をプロットできます。このとき、ジッターとノイズはデュアルディラック モデル [1] に従っています。
入力信号のアイ ダイアグラムを表示するには、次を行います。
comm.EyeDiagram
オブジェクトを作成し、そのプロパティを設定します。関数と同様に、引数を指定してオブジェクトを呼び出します。
System object の機能の詳細については、System object とはを参照してください。
作成
説明
は既定のプロパティ値を使用してアイ ダイアグラム System object を作成します。 ed
= comm.EyeDiagram
は、1 つ以上の名前と値のペア引数を使用してプロパティを設定します。各プロパティ名を一重引用符で囲みます。指定していないプロパティは既定値になります。ed
= comm.EyeDiagram(Name
,Value
)
例: comm.EyeDiagram('SampleRate',2,'DisplayMode','2D color histogram')
プロパティ
特に指定がない限り、プロパティは "調整不可能" です。つまり、オブジェクトの呼び出し後に値を変更することはできません。オブジェクトは呼び出すとロックされ、ロックを解除するには関数 release
を使用します。
プロパティが "調整可能" の場合、その値をいつでも変更できます。
プロパティ値の変更の詳細については、System object を使用した MATLAB でのシステム設計を参照してください。
Name
— アイ ダイアグラム ウィンドウのタイトル
'Eye Diagram'
(既定値) | 文字ベクトル
アイ ダイアグラム ウィンドウのタイトル。文字ベクトルとして指定します。
調整可能: Yes
データ型: char
SampleRate
— 入力信号のサンプル レート
1
(既定値) | 正の実数値スカラー
入力信号のサンプル レート (ヘルツ単位)。正の実数値のスカラーとして指定します。
データ型: double
SamplesPerSymbol
— シンボルあたりのサンプル数
8
(既定値) | 正の整数
シンボルあたりのサンプル数。正の整数として指定します。
調整可能: Yes
データ型: double
SampleOffset
— 最初の点をプロットする前にスキップするサンプル数
0
(既定値) | 非負の整数
最初の点をプロットする前にスキップするサンプル数。非負の整数として指定します。不規則な動作を避けるため、オフセットは SamplesPerSymbol プロパティと SymbolsPerTrace プロパティの積より小さい値を指定します。
調整可能: Yes
データ型: double
SymbolsPerTrace
— トレースあたりのシンボル数
2
(既定値) | 正の整数
トレースあたりのシンボル数。正の整数として指定します。アイの測定を求めてバスタブ曲線を可視化するには、既定値の 2
を使用します。
調整可能: Yes
データ型: double
TracesToDisplay
— 表示するトレース数
40
(既定値) | 正の整数
表示するトレース数。正の整数として指定します。
調整可能: Yes
依存関係
このプロパティを有効にするには、DisplayMode プロパティを 'Line plot'
に設定します。
データ型: double
DisplayMode
— アイ ダイアグラムの表示モード
'Line plot'
(既定値) | '2D color histogram'
アイ ダイアグラムの表示モード。次のいずれかの値として指定します。
'Line plot'
— 最後の TracesToDisplay のトレースそれぞれについて 1 本のラインをプロットして、トレースを重ね合わせます。'2D color histogram'
— カラー グラデーションにより、入力が異なる時間値と振幅値に一致する頻度が示されます。
調整可能: Yes
データ型: char
EnableMeasurements
— アイ ダイアグラム測定を有効化するオプション
false
(既定値) | true
アイ ダイアグラム測定を有効化するオプション。true
または false
として指定します。このプロパティを true
に設定すると、測定ペインとアイ ダイアグラムでの計算が表示されます。
調整可能: Yes
データ型: logical
ShowBathtub
— バスタブ曲線可視化を有効化するオプション
'None'
(既定値) | 'Horizontal'
| 'Vertical'
| 'Both'
バスタブ曲線可視化を有効化するオプション。'None'
、'Horizontal'
、'Vertical'
または 'Both'
として指定します。
調整可能: Yes
依存関係
このプロパティを有効にするには、EnableMeasurements プロパティを true
に設定します。
データ型: char
OverlayHistogram
— ヒストグラムの重ね合わせ
'None'
(既定値) | 'Jitter'
| 'Noise'
ヒストグラムの重ね合わせ。'None'
、'Jitter'
、'Noise'
のいずれかとして指定します。
水平ヒストグラムをアイ ダイアグラムと重ね合わせるには、このプロパティを
'Jitter'
に設定します。垂直ヒストグラムをアイ ダイアグラムと重ね合わせるには、このプロパティを
'Noise'
に設定します。ヒストグラムの重ね合わせを表示しないようにするには、このプロパティを
'None'
に設定します。
調整可能: Yes
依存関係
このプロパティを有効にするには、DisplayMode プロパティを '2D color histogram'
に、EnableMeasurements プロパティを true
に設定します。
データ型: char
DecisionBoundary
— 振幅レベルのしきい値
0
(既定値) | 実数値のスカラー
振幅レベルのしきい値 (ボルト単位)。実数値のスカラーとして指定します。このプロパティは水平ヒストグラム (ジッター) の異なる信号領域を分離します。ジッター ヒストグラムはこのプロパティが変更されるとリセットされます。
非ゼロ復帰 (NRZ) 信号の場合は DecisionBoundary
を 0 に設定します。ゼロ復帰信号 (RZ) の場合は DecisionBoundary
を最大振幅の半分に設定します。
調整可能: Yes
依存関係
このプロパティを有効にするには、EnableMeasurements プロパティを true
に設定します。
データ型: double
EyeLevelBoundaries
— アイ レベルを計算する時間範囲
[40 60]
(既定値) | 2 要素の行ベクトル
アイ レベルを計算する時間範囲。2 要素の行ベクトルとして指定します。ベクトル値をシンボル区間のパーセンテージとして指定します。
調整可能: Yes
依存関係
このプロパティを有効にするには、EnableMeasurements プロパティを true
に設定します。
データ型: double
RiseFallThresholds
— 立ち上がりおよび立ち下がり遷移の振幅レベル
[10 90]
(既定値) | 2 要素の行ベクトル
立ち上がりおよび立ち下がり遷移の振幅レベル。2 要素の行ベクトルとして指定します。ベクトル値をアイ振幅のパーセンテージとして指定します。このプロパティが変更されると、立ち上がりおよび立ち下がりしきい値のクロッシング ヒストグラムがリセットされます。
調整可能: Yes
依存関係
このプロパティを有効にするには、EnableMeasurements プロパティを true
に設定します。
データ型: double
Hysteresis
— 水平クロッシングの振幅許容誤差
0
(既定値) | 実数値のスカラー
水平クロッシングの振幅許容誤差 (ボルト単位)。実数値のスカラーとして指定します。この値を増加させると、ノイズによるスプリアス クロッシングの許容誤差が大きくなります。このプロパティが変更されると、ジッターと立ち上がりおよび立ち下がりヒストグラムがリセットされます。
調整可能: Yes
依存関係
このプロパティを有効にするには、EnableMeasurements プロパティを true
に設定します。
データ型: double
BERThreshold
— アイ測定に使用される BER
1e-12
(既定値) | 範囲 [0, 0.5] のスカラー
アイの測定に使用されるビット エラー レート (BER)。範囲 [0, 0.5] のスカラーとして指定します。System object はこの値を使用してランダム ジッター、総ジッター、アイ パターンの水平開口部、およびアイ パターンの垂直開口部を計測します。
調整可能: Yes
依存関係
このプロパティを有効にするには、EnableMeasurements プロパティを true
に設定します。
データ型: double
BathtubBER
— バスタブ曲線の開口部を計算するための BER 値
[0.5 10.^-(1:12)]
(既定値) | ベクトル
バスタブ曲線の開口部を計算するための BER 値。範囲 [0, 0.5] の要素のベクトルとして指定します。水平方向と垂直方向のアイ開口率は、このプロパティで指定した各値に対して計算されます。
調整可能: Yes
依存関係
このプロパティを有効にするには、EnableMeasurements プロパティを true
に、ShowBathtub プロパティを 'Both'
、'Horizontal'
、または 'Vertical'
に設定します。
データ型: double
MeasurementDelay
— 測定から破棄される初期データの持続時間
0
(既定値) | 非負のスカラー
測定から破棄される初期データの持続時間 (秒)。非負のスカラーとして指定します。
依存関係
このプロパティを有効にするには、EnableMeasurements プロパティを true
に設定します。
データ型: double
OversamplingMethod
— Oversampling method
'None'
(既定値) | 'Input interpolation'
| 'Histogram interpolation'
オーバーサンプリング方式。'None'
、'Input interpolation'
または 'Histogram interpolation'
として指定します。
できるだけ迅速にアイ ダイアグラムをプロットするには、OversamplingMethod
を 'None'
に設定します。オーバーサンプリングを行わないことの難点は、トレースあたりのシンボル数が少ない場合にプロットがピクセル化して見えることです。
使用するトレースあたりのシンボル数が少ない場合に、より滑らかでピクセル化の少ないプロットを作成するには、OversamplingMethod
を 'Input interpolation'
または 'Histogram interpolation'
に設定します。この場合、'Input interpolation'
の方が高速な内挿法で、S/N 比 (SNR) が高い場合には良好な結果が得られます。SNR が低い場合には各ヒストグラムの範囲の中心方向へのバイアスが生じるため、このオーバーサンプリング方式は推奨されません。'Histogram interpolation'
は他の手法ほど高速ではありませんが、SNR が低い場合でも良好な結果が得られます。
調整可能: Yes
依存関係
このプロパティを有効にするには、DisplayMode プロパティを '2D color histogram'
に設定します。
データ型: char
ColorScale
— ヒストグラムのカラー スケール
'Linear'
(既定値) | 'Logarithmic'
ヒストグラムのカラー スケール。'Linear'
または 'Logarithmic'
として指定します。ヒストグラムの特定の領域に不均衡な数の点が含まれている場合には、このプロパティを変更します。'Logarithmic'
オプションは、鋭いピークをもち、信号が特定の時間値と振幅値に繰り返し一致するアイ ダイアグラムに使用します。
調整可能: Yes
依存関係
このプロパティを有効にするには、DisplayMode プロパティを '2D color histogram'
に設定します。
データ型: char
ColorFading
— Color fading
false
(既定値) | true
Color fading。true
または false
として指定します。画面上に最初にプロットされた時点から時間間隔が開くにつれて点の色を薄くするには、このプロパティを true
に設定します。このアニメーションはオシロスコープに似ています。
調整可能: Yes
依存関係
このプロパティを有効にするには、DisplayMode プロパティを 'Line plot'
に設定します。
データ型: logical
ShowImaginaryEye
— 信号の虚数部の表示
false
(既定値) | true
信号の虚数部の表示。true
または false
として指定します。入力信号の虚数部または直交成分を表示するには、このプロパティを true
に設定します。
調整可能: Yes
依存関係
このプロパティを有効にするには、EnableMeasurements プロパティを false
に設定します。
データ型: logical
YLimits
— Y 軸の範囲
[-1.1 1.1]
(既定値) | 2 要素の行ベクトル
アイ ダイアグラムの Y 軸の範囲 (ボルト単位)。2 要素ベクトルとして指定します。最初の要素は ymin に対応し、2 番目の要素は ymax に対応します。2 番目の要素は最初の要素より大きい値でなければなりません。
調整可能: Yes
データ型: double
ShowGrid
— グリッド表示を有効化するオプション
false
(既定値) | true
アイ ダイアグラムのグリッド表示を有効化するオプション。true
または false
として指定します。アイ ダイアグラムにグリッドを表示するには、このプロパティを true
に設定します。
調整可能: Yes
データ型: logical
Position
— スコープ ウィンドウの位置
4 要素の行ベクトル
スコープ ウィンドウの位置 (ピクセル)。[left bottom width height] の形式の 4 要素の行ベクトルとして指定します。
調整可能: Yes
データ型: double
使用法
構文
説明
ed(
は入力信号 x
)x
をアイ ダイアグラムに表示し解析します。
入力引数
x
— 入力信号
ベクトル | 行列
アイ ダイアグラムで解析され表示される入力信号。ベクトルまたは行列として指定します。x
は、実数または複素数のベクトル、または実数の 2 列の行列にすることができます。
データ型: double
複素数のサポート: あり
オブジェクト関数
オブジェクト関数を使用するには、System object を最初の入力引数として指定します。たとえば、obj
という名前の System object のシステム リソースを解放するには、次の構文を使用します。
release(obj)
comm.EyeDiagram
に固有
show | スコープ ウィンドウの表示 |
hide | スコープ ウィンドウを非表示にする |
horizontalBathtub | (削除済み) 水平方向のバスタブ曲線 |
verticalBathtub | (削除済み) 垂直方向のバスタブ曲線 |
jitterHistogram | (削除済み) ジッター ヒストグラム |
noiseHistogram | (削除済み) ノイズ ヒストグラム |
measurements | (削除済み) アイ ダイアグラムのパラメーター計測値 |
例
フィルター処理された QPSK 信号のアイ ダイアグラム
サンプル レートおよびシンボルあたりの出力サンプル数のパラメーターを指定します。
fs = 1000; sps = 4;
送信フィルターおよびアイ ダイアグラム オブジェクトを作成します。
txfilter = comm.RaisedCosineTransmitFilter(... 'OutputSamplesPerSymbol',sps); ed = comm.EyeDiagram('SampleRate',fs*sps,'SamplesPerSymbol',sps);
ランダムなシンボルを生成して QPSK 変調を適用します。次に変調信号をフィルター処理し、アイ ダイアグラムを表示します。
data = randi([0 3],1000,1); modSig = pskmod(data,4,pi/4); txSig = txfilter(modSig); ed(txSig)
詳細
測定
「測定値」では、アイ ダイアグラム オブジェクトに有効なデータがあると仮定しています。1 つの有効なアイ ダイアグラムには、2 つの明確なアイ クロッシング点と 2 つの明確なアイ レベルがあります。
[measurements] ペインを開くには、[Eye Measurements] ボタンをクリックするか、ツール バー メニューから [Tools]、[Measurements]、[Eye Measurements] を選択します。
メモ
振幅測定の場合、1 つの垂直ヒストグラムあたり 1 つ以上のビンが 10 ヒットに到達しないと、測定値は取得されません。これは、高い精度を確保するためです。
時間測定の場合、1 つの水平ヒストグラムあたり 1 つ以上のビンが 10 ヒットに到達しないと、測定値は取得されません。
アイ クロッシングの時間測定値が [-0.5/Fs, 0) 秒間隔内に収まる場合、この時間測定値はアイ ダイアグラムの末尾にラップされます。つまり、測定値は 2×Ts 秒だけラップされます (ここで、Ts はシンボル時間)。複素信号では、同相分岐のクロッシングの時間測定値がラップされて直交ブランチのクロッシングの時間測定値はラップされない場合 (またはこの逆の場合)、analyze メソッドにより警告が表示されます。タイムラッピングまたは警告を回避するには、アイ ダイアグラム オブジェクトの
MeasurementDelay
プロパティの現在の値に 1/2 シンボル区間遅延を追加します。この追加遅延により、アイがスコープのほぼ中心に再配置されます。
- アイ レベル - データ ビットを表すために使用する振幅レベル
"アイ レベル" はデータ ビットを表すために使用する振幅レベルです。表示される NRZ 信号の場合、レベルは –1 V および +1 V です。アイ レベルは、アイ レベル境界内の 2 次元ヒストグラムを平均して計算されます。たとえば、EyeLevelBoundaries プロパティが
[40 60]
に設定されている場合、つまりシンボル区間の 40% および 60% である場合、アイ レベルは、アイ レベル境界によってマークされるこのウィンドウ内の垂直ヒストグラムの平均値を推定することによって計算されます。- アイ振幅 - アイ レベル間の距離
"アイ振幅" は、2 つのアイ レベルの平均値の間の距離 (V) です。
- アイ高さ - アイ レベル間の統計的な最小距離
"アイ高さ" は、アイ レベル上限の μ – 3σ とアイ レベル下限の μ + 3σ の間の距離です。μ はアイ レベルの平均で、σ は標準偏差です。
- 垂直開口値 - BER しきい値点の間の距離
"垂直開口部" は、BERThreshold プロパティに対応する 2 点間の距離です。たとえば、BER しきい値が 10–12 の場合、これらの点は各アイ レベルから 7σ の距離に相当します。
- アイ SNR - S/N 比
"アイ SNR" は、各アイ レベルに対応する垂直方向の標準偏差の差に対するアイ レベルの差の比率です。
ここで、L1 および L0 は上限および下限のアイ レベルの平均を表し、σ1 および σ0 はその標準偏差を表します。
- Q 係数 - 品質係数
"Q 係数" は品質係数であり、アイ SNR と同じ式を使用して計算されます。ただし、垂直方向のヒストグラムの標準偏差は、デュアルディラック解析で計算されたものと置き換えられます。
- クロッシング レベル - アイ クロッシングの振幅レベル
"クロッシング レベル" は、アイ クロッシングが発生する振幅レベルです。
入力信号が振幅値と交差するレベルは、DecisionBoundary プロパティで指定されます。
- クロッシング時間 - クロッシングが発生する時間
"クロッシング時間" はクロッシングが発生する時間です。時間は水平方向 (ジッター) のヒストグラムの平均値として計算されます。
- アイパターン遅延 - アイ クロッシング間の平均時間
"アイパターン遅延" は 2 つのクロッシング時間の間の中間点です。
- アイパターン幅 - アイ クロッシング間の統計的な最小時間
"アイ幅" は、左側クロッシング時間の μ + 3σ と右側クロッシング時間の μ – 3σ の間の水平方向距離です。μ はジッター ヒストグラムの平均値、σ は標準偏差です。
- 水平開口部 - BER しきい値点の間の時間
"水平開口部" は、BERThreshold プロパティに対応する 2 点間の距離です。たとえば、BER が 10–12 の場合、これらの 2 点は各クロッシング時間から 7σ の距離に相当します。
- 立ち上がり時間 - 低から高への遷移時間
"立ち上がり時間" は、アイ ダイアグラムで定義される、立ち上がりおよび立ち下がりの低しきい値と高しきい値の間の平均時間です。既定のしきい値は、アイ振幅の 10% および 90% です。
- 立ち下がり時間 - 高から低への遷移時間
"立ち下がり時間" は、アイ ダイアグラムで定義される、立ち上がりおよび立ち下がりの高しきい値と低しきい値の間の平均時間です。既定のしきい値は、アイ振幅の 10% および 90% です。
- 確定的ジッター - 理想的な信号タイミングからの確定的偏差
"ジッター" は、信号のタイミング イベントが、目的とする (理想的な) 発生時刻[2]からどれほど逸脱しているのかを示します。ジッターはデュアルディラック モデルで表現されます。デュアルディラック モデルでは、ジッターは 2 つの要素、"確定的ジッター" (DJ) と "ランダム ジッター" (RJ) から構成されると想定しています。
DJ は、デュアルディラック ヒストグラムの 2 つのピーク間の距離です。DJ の確率密度関数 (PDF) は 2 つのデルタ関数で構成されます。
- ランダム ジッター - 理想的な信号タイミングからの確率偏差
RJ は、ジッターの境界のないガウス成分です。ジッターのランダム成分は、指定された標準偏差 σ をもつ平均がゼロのガウス確率変数としてモデル化されます。RJ は次のように計算します。
ここで、
BER は指定された BER しきい値です。ρ は左側および右側ディラック関数の振幅で、ジッター ヒストグラムのビンのカウント数から決定されます。
- 総ジッター - 理想的な信号タイミングからの偏差
Total jitter (TJ) is the sum of the deterministic and random jitter, such that TJ = DJ + RJ.
The total jitter PDF is the convolution of the DJ PDF and the RJ PDF.
- RMS ジッター - ジッターの標準偏差
"RMS ジッター" は、判定境界における水平 (ジッター) ヒストグラムから計算されるジッターの標準偏差です。
- ピーク間ジッター - ヒストグラムの極端なデータ点間の距離
"ピーク間ジッター" は、各クロッシング時間の水平ヒストグラムに含まれる左側と右側の非ゼロ値間の最大水平距離です。
参照
[1] Stephens, Ransom. "Jitter analysis: The dual-Dirac model, RJ/DJ, and Q-scale." Agilent Technical Note (2004).
[2] Ou, N., T. Farahmand, A. Kuo, S. Tabatabaei, and A. Ivanov. “Jitter Models for the Design and Test of Gbps-Speed Serial Interconnects.” IEEE Design and Test of Computers 21, no. 4 (July 2004): 302–13. https://doi.org/10.1109/MDT.2004.34.
拡張機能
C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。
使用上の注意および制限:
オブジェクトの呼び出しを外部として扱うことで MEX コード生成をサポートします。スタンドアロン アプリケーション用のコード生成はサポートしません。
MATLAB コード生成における System object (MATLAB Coder)を参照してください。
バージョン履歴
R2016b で導入R2022a: comm.EyeDiagram
は削除済み
comm.EyeDiagram は削除されました。信号のアイ ダイアグラムを表示するには、代わりに関数 eyediagram
を使用します。
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)