02.08.2013 Views

System Generator for DSP リファレンス ガイド - Xilinx

System Generator for DSP リファレンス ガイド - Xilinx

System Generator for DSP リファレンス ガイド - Xilinx

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

R<br />

1. 最初のシ ミ ュ レーシ ョ ン サイクルで、 xl_state 関数は指定し た精度で ス テー ト 変数を初期化し<br />

ます。<br />

2. 次のシ ミ ュ レーシ ョ ン サイクルで、xl_state 関数は最後の ク ロ ッ ク サイクルから残っているス<br />

テー ト 値を取 り 出し、 その値を指定し た精度で対応する変数に代入し ます。<br />

ステート変数の値は、 v = xl_state(init, precision) で返されます。 最初の入力引数 init は初期値、 2<br />

つ目の引数 precision は こ のス テー ト 変数の精度を表し ます。 precision は、{type, nbits, binpt} また<br />

は {type, nbits, binpt, quantization,overflow} のセル配列型にで き ます。 precision は、xfix 型の数に<br />

もできます。<br />

ベク タ のオブジェ ク ト は、 v = xl_state(init, precision, maxlen) で返さ れま す。 ベク タ は、 init で初期<br />

化さ れ、 最大 maxlen までの長さになり ます。 ベク タ は、 init で初期化さ れる ので、 たと えば、 v =<br />

xl_state(zeros(1, 8), prec, 8) では 0 が 8 つのベク タ が作成さ れ、v = xl_state([], prec, 8) では最大長 8<br />

の空のベク タ が作成さ れ、v = xl_state(0, prec, 8) では最大長 8 の 0 が 1 つのベク タ が作成さ れま す。<br />

ベクタ型のステート変数は、両端 (フロント エンドがアド レス 0 のエレ メ ン ト 、 バッ ク エンドが長<br />

さ - 1 のエレ メ ン ト) で終わる キ ューです。<br />

ベク タ には、 次の計算式が使用で き ます。<br />

val = v(idx); アドレス idx のエレ メ ン ト の値を返し ます。<br />

v(idx) = val; アドレス idx のエレ メ ン ト に val を代入します。<br />

f = v.front; フロント エンドの値を返します。 ベクタが空の<br />

場合は、 エ ラ ーにな り ます。<br />

v.push_front(val); val をフロント エンド まで押し出し、 ベク タの<br />

長さを 1 増加し ます。 ベ ク タ がフルの場合は、<br />

エラーになり ます。<br />

v.pop_front; フロント エンドから 1 つエレ メ ン ト を取 り 出<br />

し、 ベクタの長さを 1 削減し ます。 ベ ク タ が空<br />

の場合は、 エラーにな り ます。<br />

b = v.back; バック エンドの値を返します。 ベクタが空の場<br />

合は、 エラーにな り ます。<br />

v.push_back(val); val をバッ ク エンド まで押し出し、 ベク タの長<br />

さを 1 増加し ます。 ベ ク タ がフルの場合は、 エ<br />

ラーになり ます。<br />

v.pop_back; バック エンドから 1 つエレ メ ン ト を取 り 出し、<br />

ベクタの長さを 1 削減し ます。 ベ ク タ が空の場<br />

合は、 エラーにな り ます。<br />

v.push_front_pop_back(val); val をフロント エンド ま で押し 出し 、 バッ ク エ<br />

ンド からエレメ ント を 1 つ取り 出し ま す。 シフト<br />

演算で、 ベク タ の長さ は変わり ま せん。 これを実<br />

行する 場合は、 ベク タ を 空にはでき ま せん。<br />

full = v.full; ベクタがフルの場合は true を、 それ以外の場合<br />

は false を返し ます。<br />

222 japan.xilinx.com <strong>System</strong> <strong>Generator</strong> <strong>for</strong> <strong>DSP</strong> <strong>リファレンス</strong> ガイ ド<br />

リリース 9.2.00 2007 年 8 月

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!