JP2007241695A - データフローグラフの生成方法、及び処理装置 - Google Patents
データフローグラフの生成方法、及び処理装置 Download PDFInfo
- Publication number
- JP2007241695A JP2007241695A JP2006063742A JP2006063742A JP2007241695A JP 2007241695 A JP2007241695 A JP 2007241695A JP 2006063742 A JP2006063742 A JP 2006063742A JP 2006063742 A JP2006063742 A JP 2006063742A JP 2007241695 A JP2007241695 A JP 2007241695A
- Authority
- JP
- Japan
- Prior art keywords
- data flow
- flow graph
- function
- library
- dfg
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Microcomputers (AREA)
Abstract
【解決手段】リコンフィギュラブル回路1に所定の関数の動作を行わせるデータフローグラフを登録したDFGライブラリ37に登録された関数を、所期の処理機能の動作を記述したソースプログラム36から抽出する登録関数抽出ステップと、DFGライブラリ37に登録された関数以外のソースプログラム36の処理をデータフローグラフに変換する変換ステップと、登録関数抽出ステップで抽出された関数のデータフローグラフを、DFGライブラリ37から読み出すライブラリ読み出しステップと、変換ステップで変換したデータフローグラフと、ライブラリ読み出しステップで読み出したデータフローグラフとを結合して、リコンフィギュラブル回路1に所期の処理機能の動作を設定するために必要なデータフローグラフ38を生成する結合ステップと、を備える。
【選択図】図1
Description
再構成することで、回路構成の再利用を図る方法が提案されている。動的変更が可能なタイプの回路を以下リコンフィギュラブル回路という。
、FPGAを動的に構成することによって、回路構成の再利用を計る方法が提案されている(例えば、特許文献1参照)。
本演算機能を複数有する多機能素子を用いたリコンフィギュラブルプロセッサの開発が進められている。リコンフィギュラブルプロセッサでは、コマンドデータが設定されることにより、ALU回路の演算機能構成と接続部が制御され、全体として所期の演算処理回路を実現することが可能となる。コマンドデータは、一般にC言語等の高級プログラム言語で記述されたソースプログラムからDFG(Data Flow Graph)と呼ばれるデータフロー
を作成し、その情報をもとに作成される。
関係を保持する接続部と、を備えるリコンフィギュラブル回路に、所期の処理機能の動作を設定するために必要なデータフローグラフを生成するデータフローグラフ生成方法であって、前記リコンフィギュラブル回路に所定の関数の動作を行わせる少なくとも1つのデータフローグラフを登録したライブラリに登録された前記関数を、前記所期の処理機能の動作を記述したソースプログラムから抽出する登録関数抽出ステップと、前記ソースプログラムの前記ライブラリに登録された関数以外の処理を前記データフローグラフに変換する変換ステップと、前記登録関数抽出ステップで抽出された関数のデータフローグラフを、前記ライブラリから読み出すライブラリ読み出しステップと、前記変換ステップで変換したデータフローグラフと、前記ライブラリ読み出しステップで読み出したデータフローグラフとを結合して、前記リコンフィギュラブル回路に前記所期の処理機能の動作を設定するために必要なデータフローグラフを生成する結合ステップと、を備えることを特徴とする。
ブル回路の一実施の形態について、図を参照して説明する。図1は、本発明の一実施の形態に係るリコンフィギュラブル回路を含む処理装置の構成を示すブロック図である。図1に示すように、処理装置10は、集積回路装置26を備える。集積回路装置26は、回路構成を再構成可能とする機能を有する。集積回路装置26は1チップとして構成され、リコンフィギュラブル回路1、設定部14、制御部18、内部状態保持回路20、出力回路22および経路部24を備える。リコンフィギュラブル回路1は、設定を変更することにより、機能の変更を可能とする。
フ38を生成する。
のDFGの最初の段の論理回路2が1列右に移動されている。
z = a+b+c+d+e+f+g+h
を表す。図8(A)は、最大4列の論理回路2を使用するDFGで、論理回路2は3段、合計7個の論理回路2から構成される。図8(B)は、初段だけ2列の論理回路2を使用するDFGで、論理回路2は6段、合計7個の論理回路2から構成される。図8の(A)と(B)のDFGは、入力及び出力と、演算内容が同じである。図8(A)のDFGは列が多い代わりに処理段数が少なく、図8(B)のDFGは処理段数が多い代わりに列数が少ない。
ノード番号:演算 出力、入力1、入力2
の形式になっている。出力と入力の数字はノード番号を表す。アルファベットは変数を表す。例えば、図8(A)のノード番号1の論理回路2は、演算が加算(add)で、出力がノード番号5、入力がaとbであることを表し、DFGのノード1に対応している。ノード番号7の論理回路2は、ノード番号5と6の論理回路2の出力を入力として、演算が加算であり、出力が変数zであることを表し、上のDFGのノード7に対応している。各ノード番号についてDFGとデータ表現が対応していることが確かめられる。図8(B)についても、DFGとデータ表現が対応していることが確かめられる。
(a+b−(c>>1))*(d+e+f+g) (1)
ここで、c>>1は変数cの内容を1ビット右にシフトする演算を表す。図9の例では、リコンフィギュラブル回路1の論理回路2の列数は4であるとする。
(((a−b)+c*d−e*f)*g)*h (2)
ここで、*gと*hの積の順は入れ替えられないものとする。図10の例でも、リコンフィギュラブル回路1の論理回路2の列数は4であるとする。
せる方が論理回路2の段数が少ない。従って、その他の条件に適合すれば、コンパイル部30は、図8(B)のライブラリDFGを選択して、結合DFGを生成する。
0がソースプログラム36からDFG38を生成する前に,ソースファイルの一部を条件的にスキップしたり,他のソースファイル(ヘッダファイル)を読み込んだり,マクロを置き換えるための処理を行う。
慮して、解析木を中間表現(中間ファイル)に変換する。この中間表現は、対象となるリ
コンフィギュラブル回路1に依存しない、抽象度の高い中間的なコードである。中間表現は、実際のリコンフィギュラブル回路1の制限などに関係なく、その後のDFG38の最適化が行いやすい。
2 論理回路
3 接続部
10 処理装置
30 コンパイル部
32 設定データ生成部
34 記憶部
36 ソースプログラム
37 DFGライブラリ
38 データフローグラフ
40 設定データ
Claims (5)
- それぞれが複数の算術論理演算機能を選択的に実行可能な複数の論理回路から構成される演算部と、前記複数の論理回路の間の接続関係を保持する接続部と、を備えるリコンフィギュラブル回路に、所期の処理機能の動作を設定するために必要なデータフローグラフを生成するデータフローグラフ生成方法であって、
前記リコンフィギュラブル回路に所定の関数の動作を行わせる少なくとも1つのデータフローグラフを登録したライブラリに登録された前記関数を、前記所期の処理機能の動作を記述したソースプログラムから抽出する登録関数抽出ステップと、
前記ソースプログラムの前記ライブラリに登録された関数以外の処理を前記データフローグラフに変換する変換ステップと、
前記登録関数抽出ステップで抽出された関数のデータフローグラフを、前記ライブラリから読み出すライブラリ読み出しステップと、
前記変換ステップで変換したデータフローグラフと、前記ライブラリ読み出しステップで読み出したデータフローグラフとを結合して、前記リコンフィギュラブル回路に前記所期の処理機能の動作を設定するために必要なデータフローグラフを生成する結合ステップと、
を備えることを特徴とするデータフローグラフ生成方法。 - 前記結合ステップで生成するデータフローグラフが、所定の評価基準に照らして最適となるように、前記変換ステップで変換したデータフローグラフと前記ライブラリ読み出しステップで読み出したデータフローグラフとの配置を、前記リコンフィギュラブル回路の範囲内で調節する最適化ステップを備える、
ことを特徴とする請求項1に記載のデータフローグラフ生成方法。 - 前記ライブラリは、少なくとも1つの関数について、該関数に対応する異なる形態の複数のデータフローグラフを含み、
前記登録関数抽出ステップで抽出された関数について、前記ライブラリに異なる形態の複数のデータフローグラフが登録されている場合に、
前記ライブラリ読み出しステップは、前記異なる形態の複数のデータフローグラフを読み出し、
前記異なる形態の複数のデータフローグラフから、前記結合ステップで生成するデータフローグラフが、所定の評価基準に照らして最適となるデータグラフを選択する選択ステップを備える、
ことを特徴とする請求項1または2に記載のデータフローグラフ生成方法。 - 前記リコンフィギュラブル回路が、前記論理回路の1以上の列からなる段を1つ以上備える接続構造を有する場合に、
前記所定の評価基準は、前記リコンフィギュラブル回路の列数の範囲で、前記論理回路の段数が最小であることを特徴とする請求項2または3に記載のデータフローグラフ生成方法。 - それぞれが複数の算術論理演算機能を選択的に実行可能な複数の論理回路から構成される演算部と、前記複数の論理回路の間の接続関係を保持する接続部と、を備えるリコンフィギュラブル回路と、
前記リコンフィギュラブル回路に、所期の処理機能の動作を設定するために必要なデータフローグラフを生成するデータフローグラフ生成手段と、
前記データフローグラフ生成手段で生成したデータフローグラフに基づいて、前記リコンフィギュラブル回路に前記所期の処理機能の動作を行う回路を構成するための設定データを生成する設定データ生成手段と、
を含む処理装置であって、
前記データフローグラフ生成手段は、
前記リコンフィギュラブル回路に所定の関数の動作を行わせる少なくとも1つのデータフローグラフを登録したライブラリに登録された前記関数を、前記所期の処理機能の動作を記述したソースプログラムから抽出する登録関数抽出ステップと、
前記ソースプログラムの前記ライブラリに登録された関数以外の処理を前記データフローグラフに変換する変換ステップと、
前記登録関数抽出ステップで抽出された関数のデータフローグラフを、前記ライブラリから読み出すライブラリ読み出しステップと、
前記変換ステップで変換したデータフローグラフと、前記ライブラリ読み出しステップで読み出したデータフローグラフとを結合して、前記リコンフィギュラブル回路に前記所期の処理機能の動作を設定するために必要なデータフローグラフを生成する結合ステップと、
によって前記データフローグラフを生成することを特徴とする処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006063742A JP4601567B2 (ja) | 2006-03-09 | 2006-03-09 | データフローグラフの生成方法、及び処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006063742A JP4601567B2 (ja) | 2006-03-09 | 2006-03-09 | データフローグラフの生成方法、及び処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007241695A true JP2007241695A (ja) | 2007-09-20 |
JP4601567B2 JP4601567B2 (ja) | 2010-12-22 |
Family
ID=38587173
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006063742A Active JP4601567B2 (ja) | 2006-03-09 | 2006-03-09 | データフローグラフの生成方法、及び処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4601567B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009199175A (ja) * | 2008-02-19 | 2009-09-03 | Sanyo Electric Co Ltd | プログラム分割装置および方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006065787A (ja) * | 2004-08-30 | 2006-03-09 | Sanyo Electric Co Ltd | データフローグラフ処理方法、リコンフィギュラブル回路 |
-
2006
- 2006-03-09 JP JP2006063742A patent/JP4601567B2/ja active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006065787A (ja) * | 2004-08-30 | 2006-03-09 | Sanyo Electric Co Ltd | データフローグラフ処理方法、リコンフィギュラブル回路 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009199175A (ja) * | 2008-02-19 | 2009-09-03 | Sanyo Electric Co Ltd | プログラム分割装置および方法 |
Also Published As
Publication number | Publication date |
---|---|
JP4601567B2 (ja) | 2010-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4275013B2 (ja) | データフローグラフ処理装置、処理装置、リコンフィギュラブル回路。 | |
JP4104538B2 (ja) | リコンフィギュラブル回路、リコンフィギュラブル回路を備えた処理装置、リコンフィギュラブル回路における論理回路の機能決定方法、回路生成方法および回路 | |
JP4893309B2 (ja) | 再構成可能な論理回路を有するデータ処理装置 | |
US20220261248A1 (en) | Encoding and Decoding Variable Length Instructions | |
US8138788B2 (en) | Reconfigurable device | |
WO2010107114A1 (ja) | パターンマッチング装置 | |
JP4484756B2 (ja) | リコンフィギュラブル回路および処理装置 | |
JP2014506693A (ja) | オートマトンの入次数および/または出次数を制御するための数量化の展開 | |
JP2010102716A (ja) | マスクプログラム可能なロジックデバイスをプログラムする方法およびその方法によってプログラムされたデバイス | |
US8106679B2 (en) | Data processing system | |
Chattopadhyay et al. | High-level modelling and exploration of coarse-grained re-configurable architectures | |
JP4601567B2 (ja) | データフローグラフの生成方法、及び処理装置 | |
JP4208751B2 (ja) | データフローグラフ処理装置。 | |
JP4669781B2 (ja) | 処理装置 | |
JP4673739B2 (ja) | リコンフィギュラブル回路 | |
JP2005276854A (ja) | 処理装置 | |
JP4597075B2 (ja) | リコンフィギュラブル回路への演算マッピング方法、リコンフィギュラブル回路、及びデータフローグラフ | |
JP4156010B2 (ja) | 処理装置 | |
JP4562679B2 (ja) | データフローグラフ生成装置 | |
JPH096821A (ja) | 論理回路の合成方法、半導体装置の製造方法および二分決定グラフの最適化方法 | |
JP4413052B2 (ja) | データフローグラフ処理装置および処理装置 | |
Hentati et al. | Software Defined Radio Equipment: What's the Best Design Approach to Reduce Power Consumption and Increase Reconfigurability? | |
JP4357326B2 (ja) | リコンフィギュラブル回路および処理装置 | |
JP2005128709A (ja) | リコンフィギュラブル回路を備えた処理装置 | |
JP4330472B2 (ja) | 処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20081110 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100831 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100928 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131008 Year of fee payment: 3 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4601567 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131008 Year of fee payment: 3 |