講演抄録/キーワード |
講演名 |
2009-03-11 10:30
VLIW型DSP SPXK5の条件実行を考慮した最適コードスケジューリング ○山本哲也・石浦菜岐佐(関西学院大)・久村孝寛・池川将夫(NEC)・今井正治(阪大) VLD2008-126 |
抄録 |
(和) |
本稿では,
ディジタル信号処理プロセッサSPXK5 に対し,
詳細なデータパス構成および命令の条件実行まで考慮した最適コードスケジューリングの手法を提案する.
SPXK5 は画像処理や通信におけるディジタル信号処理を効率良く実行するための命令セットを有するVLIW (Very Long Instruction Word) 型DSP で, 1 実行パケットで最大4 演算を並列に実行できる.
本稿のコードスケジューリングは,
SPXK5 のアセンブリプログラムの基本ブロックを表すデータフローグラフ(DFG) を入力として,
実行パケット, 演算器, レジスタ, フォワーディング等に関する制約を考慮して,
0-1 線形整数計画法によって実行サイクル数を厳密に最小化するコードを求める.
また, 条件実行演算のスケジューリングは条件の合併・分割, 条件の排他性も考慮した最適化を行う.
この問題を準ブール充足可能判定ソルバーPBS を用いて解を求めた結果,
20 演算程度のDFG に対して現実的な時間内で最適解を求めることができた. |
(英) |
This article presents an optimum code scheduling method for digital signal processor SPXK5 taking account of its architectural details and
conditional execution. SPXK5 is a VLIW (very long instruction word) processor dedicated for digital signal processing application which
can execute up to four operations per execution packet.
The proposed scheduling method takes a DFG (dataflow graph) representing a basic block as input and attempts to finds the optimum code,
in terms of the execution cycles, by solving 0-1 integer linear programming taking all the architectural issues into account such as the structural constraints regarding the pipeline, the size of the execution packet, the capacity of the register files, etc.
It also exploits grouping/ungrouping and exclusiveness of predicated operations to optimize the code.
In a preliminary experiment an implemented scheduler using a pseudo Boolean satisfiability solver PBS successfully
found the optimum scheduling for DFGs with about 20 operations within a feasible CPU time. |
キーワード |
(和) |
VLIW 型DSP / SPXK5 / コードスケジューリング / コード最適化 / 条件実行 / / / |
(英) |
VLIW DSP / SPXK5 / code scheduling / code optimization / condition execution / / / |
文献情報 |
信学技報, vol. 108, no. 478, VLD2008-126, pp. 1-6, 2009年3月. |
資料番号 |
VLD2008-126 |
発行日 |
2009-03-04 (VLD) |
ISSN |
Print edition: ISSN 0913-5685 Online edition: ISSN 2432-6380 |
著作権に ついて |
技術研究報告に掲載された論文の著作権は電子情報通信学会に帰属します.(許諾番号:10GA0019/12GB0052/13GB0056/17GB0034/18GB0034) |
PDFダウンロード |
VLD2008-126 |
|