第2回電気学会東京支部栃木・群馬支所合同研究発表会 ETT-11-7 遅延デジタルフィルタの分散型積和 演算回路を用いたFPGA実装の検討 易 茹* 立岩武徳(群馬大学) 浅見幸司(株式会社アドバンテスト) 小林春夫(群馬大学) 2012/2/29 Kobayashi. Lab @ Gunma_University 1 発表内容 • • • • 研究の背景・目的 分散型積和演算回路 実装の検討 まとめ・今後の課題 2012/2/29 Kobayashi. Lab @ Gunma_University 2 発表内容 • • • • 研究の背景・目的 分散型積和演算回路 実装の検討 まとめ・今後の課題 2012/2/29 Kobayashi. Lab @ Gunma_University 3 研究の背景・目的 LSIテスタ・電子計測器では タイミングスキューの影響が問題 デジタル誤差補正が必要 デジタルフィルタを適用 線形位相を保つ 従来の線形位相フィルタ 遅延デジタルフィルタ 群遅延:任意( Δt ) 群遅延:一定(Ts/2) 2012/2/29 Kobayashi. Lab @ Gunma_University 4 研究の背景・目的 周波数応答 1.0 H ( j ) 従来の線形位相フィルタ インパルス応答 S フーリエ変換 S 2 H ( j ) 2 S S 2 2 S -5 -4 -3 -2 -1 2 :サンプリング周波数 TS G( j ) 遅延デジタルフィルタ 1 2 3 4 5 t TS 遅延理想フィルタ フーリエ変換 t G( j ) TS TS TS -5 -4 -3 -2 -1 1 2 3 4 5 インパルス応答をΔt分シフトする G( j ) t TS TS 振幅特性は変化しない、位相特性はΔt分傾く 2012/2/29 Kobayashi. Lab @ Gunma_University 5 研究の背景・目的 遅延デジタルフィルタの設計方法 畳み込み積分 t t (a) FIRフィルタ (b) 遅延理想フィルタ 窓関数 t (c) 遅延デジタルフィルタ Koji Asami, Hiroyuki Miyajima, Tsuyoshi Kurosawa, Takenori Tateiwa, Haruo Kobayashi, “Timing Skew Compensation Technique using Digital Filter with Novel Linear Phase Condition,” IEEE International Test Conference, Austin, TX (Nov.2010) 6 2012/2/29 Kobayashi. Lab @ Gunma_University 発表内容 • • • • 研究の背景・目的 分散型積和演算回路 実装の検討 まとめ・今後の課題 2012/2/29 Kobayashi. Lab @ Gunma_University 7 分散型積和演算回路 • 分散型積和演算回路(Distributed Arithmetic) 定係数の積和演算をLUT( Look-Up Table )とビットシフト と加算器で効率的に実現する 乗算器を使用しない 小規模回路・低消費電力 2012/2/29 Kobayashi. Lab @ Gunma_University 8 分散型積和演算回路の式 n y Ak (bk 0 ) Ak bkn 2 k 1 n 1 k 1 K N 1 K 項目Kの係数ベクトルA=[A1, A2,…, AK] 項目KのNビット変数ベクトルx=[x1, x2,…, xK] N 1 xを固定小数点形の2の補数表示で xk bk 0 bkn 2 n n 1 と表される。ただしbk0は符号ビットである。 例: 0.375(10) 0.0011(2) xk 0 0 2 1 1 2 2 1 2 3 0.25 0.125 0.375 2012/2/29 Kobayashi. Lab @ Gunma_University 9 分散型積和演算回路 動作原理 y h0 xk h1 xk 1 h0 xk 2 Look-Up Table γ β α y x0 1010 x1 0110 x2 1101 MSB 2012/2/29 LSB α β γ 0 0 0 0 0 0 1 h0 0 1 0 h1 0 1 1 h0+h1 1 0 0 h0 1 0 1 2×h0 1 1 0 h0+h1 1 1 1 2×h0+h1 Kobayashi. Lab @ Gunma_University 10 分散型積和演算回路 動作原理 y h0 xk h1 xk 1 h0 xk 2 <<1 x0 LUT x2 Look-Up Table …...….. x1 Adder y REG γ β α y 0 0 0 0 x0 1010 0 0 1 h0 0 1 0 h1 x1 0110 0 1 1 h0+h1 1 0 0 h0 x2 1101 1 0 1 2×h0 1 1 0 h0+h1 LSB 1 1 1 2×h0+h1 MSB 2012/2/29 Kobayashi. Lab @ Gunma_University 11 分散型積和演算回路 動作原理 y h0 xk h1 xk 1 h0 xk 2 <<1 1 x1 0 x2 1 (2×h0)×2 LUT Look-Up Table …...….. x0 2×h0 Adder REG 2×h0 γ β α y 0 0 0 0 x0 1010 0 0 1 h0 0 1 0 h1 x1 0110 0 1 1 h0+h1 1 0 0 h0 x2 1101 1 0 1 2×h0 1 1 0 h0+h1 1 1 1 2×h0+h1 MSB 2012/2/29 LSB Kobayashi. Lab @ Gunma_University 12 分散型積和演算回路 動作原理 0 x1 1 x2 1 (2×h0)×2 (h0+h1+(2×h0)×2)×2 LUT …...….. x0 y h0 xk h1 xk 1 h0 xk 2 <<1 h0+h1 Look-Up Table Adder REG h0+h1+(2×h0)×2 γ β α y 0 0 0 0 x0 1010 0 0 1 h0 0 1 0 h1 x1 0110 0 1 1 h0+h1 1 0 0 h0 x2 1101 1 0 1 2×h0 1 1 0 h0+h1 1 1 1 2×h0+h1 MSB 2012/2/29 LSB Kobayashi. Lab @ Gunma_University 13 分散型積和演算回路 動作原理 (h0+h1+(2×h0)×2)×2 1 x1 1 x2 0 (h0+h1+(h0+h1+(2×h0)×2)×2 )×2 LUT …...….. x0 y h0 xk h1 xk 1 h0 xk 2 <<1 h0+h1 Look-Up Table Adder REG h0+h1+(h0+h1+(2×h γ β0)×2)×2 α y 0 0 0 0 x0 1010 0 0 1 h0 0 1 0 h1 x1 0110 0 1 1 h0+h1 1 0 0 h0 x2 1101 1 0 1 2×h0 1 1 0 h0+h1 1 1 1 2×h0+h1 MSB 2012/2/29 LSB Kobayashi. Lab @ Gunma_University 14 分散型積和演算回路 動作原理 y h0 xk h1 xk 1 h0 xk 2 (h0+h1+(h0+h1+(2×h0)×2)×2 )×2<<1 0 x1 0 x2 1 (h0+(h0+h1+(h0+h1+(2×h0)×2)×2 )×2)×2 LUT …...….. x0 h0 Look-Up Table Adder y REG h0+(h0+h1+(h0+h1+(2×h γ β α 0)×2)×2 y )×2 0 0 0 0 x0 1010 0 0 1 h0 0 1 0 h1 x1 0110 0 1 1 h0+h1 1 0 0 h0 x2 1101 1 0 1 2×h0 1 1 0 h0+h1 1 1 1 2×h0+h1 MSB 2012/2/29 LSB Kobayashi. Lab @ Gunma_University 15 発表内容 • • • • 研究の背景・目的 分散型積和演算回路 実装の検討 まとめ・今後の課題 2012/2/29 Kobayashi. Lab @ Gunma_University 16 実装のためのSimlinkモデルの検討 MSB LSB … X0[1] X0[0] X1[8] … X1[1] X1[0] LUT … Look-Up Table … X0[8] X11[8] … X11[1] X11[0] <<1 scaling accum MATLABおよびSystem GeneratorでSimlinkモデルを作成 入力信号:8ビット 出力信号:30ビット サンプリング周波数:1kHz 係数は18ビットに量子化 2012/2/29 Kobayashi. Lab @ Gunma_University 17 LUTの検討 K LUTの内容: Ak bkn の全ての結果 k 1 LUTのサイズ:2kワード 指数関数的に増大 LUTのサイズを縮小する必要がある 2012/2/29 Kobayashi. Lab @ Gunma_University 18 LUTの本質と分割法 LUT A1 A1 A2 A2 A3 A3 A4 A4 LUTA … LUTB … Look-Up Table LUTのサイズS (k ) 2k 2分割の場合 k k 1 k2 2 2 2 2 2 (kは偶数の場合 ) S (k ) k 1 k 1 k 1 2 2 2 2 3 2 2 (kは奇数の場合 ) ※LUT内容は付録を参照 2012/2/29 Kobayashi. Lab @ Gunma_University 19 LUTを最適な分割 … LUT LUTの分割例 … 211 ワード … 211=2048ワード ROMサイズ トレード・オフ 演算スピード ROMサイズ サイクル LUT 25 ワード Adder LUT 26 ワード 25 +26 =96ワード サイクル+1 2つに分割 3つに分割 95%削減 98%削減 12.5%増加 25%増加 11タップの場合ではトレード・オフを考慮して2分割が最適 2012/2/29 Kobayashi. Lab @ Gunma_University 20 Simlinkモデルに使用したフィルタ係数 11タップでブラックマン窓を 掛けた場合のインパルス応答 1.2 1 0.8 遅延量 なし 0.6 0.4 0.2 0 -0.2 -5 -4 -3 -2 -1 0 -4 -3 -2 -1 0 1.2 1 2 3 4 5 1 2 3 4 5 Δt=0.3 sampling points 1 0.8 遅延量 0.3 sampling points 0.6 0.4 0.2 0 -0.2 -5 参考文献 2012/2/29 (3)浅見幸司, 立岩武徳, 黒沢烈士, 易茹, 荒川雄太,小林春夫:「線形位相遅延ディジタルフィルタの実装の 検討」,第13回DSPS教育者会議 ポスターセッション 東京都市大学,( 2011). 21 Kobayashi. Lab @ Gunma_University 正弦波を入力した場合のSimlinkモデルの有効性確認 出力波形 1 0.8 0.6 0.4 0.2 入力波形 遅延量 なし 1 0.8 0 -0.2 -0.4 0.6 -0.6 0.4 -0.8 0.2 -1 0 0 1 -0.2 0.8 -0.4 0.6 -0.6 0.4 -0.8 0.2 -1 0 0.05 0.1 0.15 0.2 0.25 0.3 遅延量 0.3 sampling points 0.05 0.1 0.15 0.2 0.25 0.3 0.05 0.1 0.15 0.2 0.25 0.3 0 -0.2 -0.4 -0.6 -0.8 -1 0 Δt=0.3 sampling points Simlinkモデルの有効性を確認 2012/2/29 Kobayashi. Lab @ Gunma_University 22 発表内容 • • • • 研究の背景・目的 分散型積和演算回路 実装の検討 まとめ・今後の課題 2012/2/29 Kobayashi. Lab @ Gunma_University 23 まとめ・今後の課題 まとめ • 分散型積和演算回路を用いた遅延デジタル フィルタのMATLABモデルを作成した • 係数を入れてモデルの有効性を確認した 今後の課題 • 作成したプログラムをFPGAに実装する • 評価を行う 2012/2/29 Kobayashi. Lab @ Gunma_University 24 付録 LUT k=4のときのLUTの内容 A1 LUT A2 A3 A4 Look-Up Table 2012/2/29 4 A b1n b2n b3n b4n k 1 k bkn 0 0 0 0 0 0 0 0 1 A4 0 0 1 0 A3 0 0 1 1 A3+ A4 0 1 0 0 A2 0 1 0 1 A2+ A4 0 1 1 0 A2+ A3 0 1 1 1 A2+ A3 + A4 1 0 0 0 A1 1 0 0 1 A1+ A4 1 0 1 0 A1+ A3 1 0 1 1 A1+ A3 + A4 1 1 0 0 A1+ A2 1 1 0 1 A1+ A2 + A4 1 1 1 0 A1+ A2 + A3 1 1 1 1 A1+ A2 + A3 + A4 Kobayashi. Lab @ Gunma_University 25 付録 2分割したLUTの内容 LUTA 4 A1 LUTA A2 A b1n b2n k 1 0 0 0 0 1 A1 1 0 A2 1 1 A1+ A2 k bkn A3 LUTB A4 4 LUTB 2012/2/29 A b3n b4n k 1 0 0 0 0 1 A3 1 0 A4 1 1 A3+ A4 Kobayashi. Lab @ Gunma_University k bkn 26
© Copyright 2024 Paperzz