JP5056644B2 - データ変換装置、データ変換方法及びプログラム - Google Patents
データ変換装置、データ変換方法及びプログラム Download PDFInfo
- Publication number
- JP5056644B2 JP5056644B2 JP2008187620A JP2008187620A JP5056644B2 JP 5056644 B2 JP5056644 B2 JP 5056644B2 JP 2008187620 A JP2008187620 A JP 2008187620A JP 2008187620 A JP2008187620 A JP 2008187620A JP 5056644 B2 JP5056644 B2 JP 5056644B2
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- flow graph
- data flow
- data
- divisions
- 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.)
- Expired - Fee Related
Links
- 238000006243 chemical reaction Methods 0.000 title claims description 56
- 238000000034 method Methods 0.000 title claims description 21
- 238000012545 processing Methods 0.000 claims description 88
- 238000013468 resource allocation Methods 0.000 claims 5
- 230000015654 memory Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000015556 catabolic process Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000006731 degradation reaction Methods 0.000 description 4
- 230000001934 delay Effects 0.000 description 4
- 238000003780 insertion Methods 0.000 description 4
- 230000037431 insertion Effects 0.000 description 4
- 230000007704 transition Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- KNMAVSAGTYIFJF-UHFFFAOYSA-N 1-[2-[(2-hydroxy-3-phenoxypropyl)amino]ethylamino]-3-phenoxypropan-2-ol;dihydrochloride Chemical compound Cl.Cl.C=1C=CC=CC=1OCC(O)CNCCNCC(O)COC1=CC=CC=C1 KNMAVSAGTYIFJF-UHFFFAOYSA-N 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011112 process operation Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/34—Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Logic Circuits (AREA)
Description
(2)物理的なコンテキストに応じて、分割数と切替えサイクルを決めなくてはならない。
(3)調整なしに分割されたデータフローグラフは、そのままでは単一のコンテキストに収まらないこともあり、またそれぞれの使用PEの偏りも生じる。そのため、分割数を変更するか、コンテキスト間での使用プロセッシングエレメント数を平均化するようにデータフローグラフに変更を加える必要がある。
(4)対象とするリコンフィグ回路や周辺アーキテクチャに依存する制御とのタイミング的な整合性を保つようスケジュールする、又はデータフローグラフを変更する必要がある。
(5)前記(1)〜(4)での操作や変更に伴って、データの合流(データ入力やデータ出力に係るタイミング)や依存関係(データの順序等)に不整合が生じないようにデータフローグラフのタイミング調整が必要になる。
データ変換装置10は、図2に示すように、CPU201と、ROM202と、RAM203と、操作部(CONS)209のコントローラ(CONSC)205と、表示部としてのディスプレイ(DISP)210のディスプレイコントローラ(DCONT)206と、ハードディスク(HD)211及びフレキシブルディスク等の記憶デバイス(STD)212のコントローラ(DCONT)207と、ネットワークインタフェースカード(NIC)208とが、システムバス204を介して互いに通信可能に接続された構成としている。
例えば、C言語やRTL等によるユーザ高位設計記述のデータフローグラフへの変換は、既存のリコンフィグ回路向けコンパイラを利用可能である。
論理データフローグラフ304が物理的なコンテキストに収まらない場合には時分割多重化を行うがこのときデータフローグラフをいくつに分割するか、すなわちデータフローグラフを何面に折り畳むかを決めなければならない。例えば、論理データフローグラフ304が物理的なコンテキストの2倍のプロセッシングエレメントの使用を要求する場合には、少なくとも2面以上に折り畳まなくてはならない。設計記述301から後述の物理データフローグラフ305への変換では、回路の配置配線問題を含むため、分割数を多くとると解を得られる可能性が高まる。よって、例えば、分割数の計算は最低必要とされるプロセッシングエレメントのリソース数を満たす数以上になるように係数をかけて算出するか、又はユーザによって分割数を指定する方法をとってもよい。
まず、CPU201は、ユーザが分割数を指定するか否かを判断する(S21)。その結果、ユーザが分割数を指定する場合には、ユーザ指定の数値を分割数として(S31)、処理を終了する。
分割数計算S1で得られた分割数が、コンテキスト切替可能面数以下であるか(コンテキストをコンフィギュレーションメモリに格納可能であるか)を判定する。その結果、分割数計算S1で得られた分割数がコンテキスト切替可能面数より大きい場合には、物理的に収まらないのでエラー処理S14を行い、処理を終了する。
論理データフローグラフ304にループバックがある場合には、データフローグラフの合流点とそのときのサブコンテキスト(以下、合流面)を一致させなくてはならない。そのため、分割数とコンテキスト実行サイクルは、パイプラインループの実行周期に依存する。そこで、ループ周期計算では、合流面を一致させるようにサブコンテキストの実行周期を決定する。
(1−a)分割数がパイプラインループの周期の約数の場合
1サイクル毎にコンテキストを切替える。折り畳みサイクル(全てのサブコンテキストを一巡するのに掛かるサイクル数)は分割数と同じとする。例えば、パイプラインループの周期が8サイクルで、分割数が4の場合には、折り畳みサイクルは4となる。
(1−b)分割数がパイプラインループの周期の1より大きい約数よりも少ない場合
パイプラインループの周期の約数のうち最小の数、ただし分割数より大きい数とする。例えば、パイプラインループの周期が8サイクルで、分割数が3の場合には、折り畳みサイクルは4となる。このとき、3サブコンテキスト中どれか1つは2サイクル実行されることになる。このようにサブコンテキスト毎に実行時間を調整する場合もある。
(1−c)分割数がパイプラインループの周期よりも多い場合
パイプラインループの周期を分割数に合わせた上で、1サイクル毎にコンテキストを切替える。例えば、分割数が7の場合には、パイプラインループの周期が6サイクル以下であっても7サイクルになるように調整を施す。
(2−a)分割数が公約数の場合
1サイクル毎にコンテキストを切替える。後は、(1−a)と同様である。
(2−b)分割数が1より大きい公約数よりも少ない場合
分割数より大きなものの中で最小の公約数を折り畳みサイクルとする。後は、(1−a)と同様である。
(2−c)それ以外
一番周期の長いループに他のループの周期を合わせる。後は、(1)の処理を行う。
一番周期の長いループに他のループの周期を合わせる。後は、(1)を適用する。
ターゲットマシンは、ターゲットとするリコンフィグ回路のアーキテクチャ情報のことで、主に動的再構成に必要な情報を含む。仮想ターゲットマシン306はプロセッシングエレメントやその配線(ネットワーク)を細分化コンテキスト切替によって期待される仮想的に大きな空間として定義したターゲットマシンであり、物理的なターゲットマシンと分割数から算出する。単純には、分割数倍の仮想ターゲットマシンが得られる。
物理データフローグラフ変換では仮想ターゲットマシン306に対して動作するデータフローグラフを生成する(仮想ターゲットマシン306を用いてコンパイルするとも言う)。物理データフローグラフ変換では、論理データフローグラフ変換と違い、配置配線を行うために、配置配線が完了しない、すなわち解が得られないことがある。その場合には、分割数を増やしてさらに大きな仮想ターゲットマシンを作成して物理コンパイル305を行えば解が得られやすくなる。
プロセッシングエレメント(PE)サイクル割り当ては、プロセッシングエレメントの動作サイクルのスケジューリング、すなわち物理データフローグラフ307の個々のプロセッシングエレメントに対し、どのサブコンテキストで実行されるかを指定するものである。これは先に決定した分割数と切替周期から一意に決定する。
動作サイクルが割り当てられた物理データフローグラフを見ると、合流点でサイクルが一致しない、つまりデータの入出力タイミングに不整合が生じることがある。これを調整するために遅延などを挿入し調整する。
サブコンテキストは、現実のターゲットマシン(実ターゲットマシン)のプロセッシングエレメントのリソースしか使用できないため、PE動作サイクル割り当てS5の結果、プロセッシングエレメントが足りなくなるサブコンテキストが発生する場合がある。これは、使用プロセッシングエレメントがコンテキスト間で偏ってしまった結果である。この場合にも、遅延を挿入することで別のサブコンテキストへプロセッシングエレメントを移動させることができるので、遅延によって調整を行う。
上述した調整によって、もとの物理データフローグラフに変更が加えられたこととなるので、それに伴い、配線等の調整も必要となってくる(S8)。合流面調整、PE調整、配線調整によって改めてハードウェア制約を満足しているか判定し(S9)、制約を満たさなかった場合には、仮想ターゲットマシンを大きくとる(分割数を増加させる)(S13)などして再コンパイルする。
PEリセット動作設定では、サブコンテキストで使用していないプロセッシングエレメントは誤動作がないようにリセット状態に設定する。
シーケンサ設定では、上述のように各種調整を施したデータフローグラフとPEリセット設定をシーケンサの制御として設定する。すなわち、ハードウェアが実現するときに、どの部分で情報を書き込むかを設定する。
アセンブラ生成では、シーケンサ設定をリコンフィグ回路用のアセンブラが解釈可能なアセンブリ言語へと変換する。
あるリコンフィグ回路が図5に示すプロセッシングエレメント501、502、503、504、505からなる実ターゲットマシン500をひとつのコンテキストとして持つと想定する。図5(A)に示すプロセッシングエレメント501〜505はすべて1サイクルで処理結果を出力するものとし、特にDelayと表記したものは1サイクル遅延させる1入力1出力のプロセッシングエレメントとする。図5(B)に示す実ターゲットマシン500は図5(A)に示す各種プロセッシングエレメント501〜505を一つずつ搭載していることを表している。
なお、ここまでの調整では遅延にDelayを用いるが、これが足りなくなり調整ができなくなった場合には分割数を増やして仮想ターゲットマシンを再度作り直せばよい。
最後に上述したすべての動作設定をシーケンサに設定するようなアセンブラを生成する。
プロセッシングエレメントの種類は、上述したループバックがない例と同様とする。以下の例では、実ターゲットマシンを図13(A)に示すように2個のPE1(1301、1302)、1個のPE2(1303)、2個のPE3(1304、1305)、1個のPE4(1306)、3個のDelay(1307、1308、1309)からなる実ターゲットマシン1300とする。なお、Delay(1307、1308、1309)は図の上では重ねて表示してある。
また、コンピュータがプログラムを実行し処理を行うことにより、前記実施形態の機能が実現されるプログラムプロダクトは、本発明の実施形態に含まれる。前記プログラムプロダクトとしては、前記実施形態の機能を実現するプログラム自体、前記プログラムが読み込まれたコンピュータ、ネットワークを介して通信可能に接続されたコンピュータに前記プログラムを提供可能な送信装置、及び当該送信装置を備えるネットワークシステム等がある。
また、コンピュータが供給されたプログラムを実行することにより前記実施形態の機能が実現されるだけでなく、そのプログラムがコンピュータにおいて稼働しているOS(オペレーティングシステム)又は他のアプリケーションソフト等と共同して前記実施形態の機能が実現される場合や、供給されたプログラムの処理の全て又は一部がコンピュータの機能拡張ボードや機能拡張ユニットにより行われて前記実施形態の機能が実現される場合も、かかるプログラムは本発明の実施形態に含まれる。また、本発明をネットワーク環境で利用するべく、全部又は一部のプログラムが他のコンピュータで実行されるようになっていても良い。
20 ローダ
30 リコンフィグ回路
31 コンフィギュレーションメモリ
32 シーケンサ
33 処理回路
34 内部メモリ/レジスタ
201 CPU
202 ROM
203 RAM
204 システムバス
205 コントローラ(CONSC)
206 ディスプレイコントローラ(DCONT)
207 コントローラ(DCONT)
208 ネットワークインタフェースカード
209 操作部
210 ディスプレイ
211 ハードディスク
212 記憶デバイス
213 外部ネットワーク
301 ユーザ高位設計記述
302 ターゲットマシン(TM)
303 論理コンパイル
304 論理データフローグラフ(DFG)
305 物理コンパイル
306 仮想ターゲットマシン(TM)
307 物理データフローグラフ(DFG)
500 プロセッシングエレメント(PE1〜PE5)からなる実ターゲットマシン
501 プロセッシングエレメント(PE1)
502 プロセッシングエレメント(PE2)
503 プロセッシングエレメント(PE3)
504 プロセッシングエレメント(PE4)
505 プロセッシングエレメント(Delay)
600 論理データフローグラフ(DFG)
700 仮想ターゲットマシン(TM)
910 コンテキストに収まらないプロセッシングエレメント
600A 細分化コンテキスト切替適用後のデータフローグラフ(DFG)
1300 実ターゲットマシン(TM)
1310 仮想ターゲットマシン(TM)
1400 論理データフローグラフ(DFG)
1800 Context #0のコンテキスト
1801 Context #1のコンテキスト
1900 データフローグラフ
Claims (8)
- 動的に再構成可能な回路に係る入力される回路記述を回路構成情報に変換するデータ変換装置であって、
前記回路記述からデータフローグラフを生成する第1の生成部と、
前記第1の生成部により生成されたデータフローグラフを分割する分割数を決定する分割数決定部と、
前記動的に再構成可能な回路のリソースを前記分割数決定部により決定された分割数倍分有する仮想回路を作成する仮想回路作成部と、
前記回路記述から前記仮想回路作成部により作成された仮想回路に対するデータフローグラフを生成する第2の生成部と、
前記第2の生成部により生成されたデータフローグラフに従って、前記仮想回路のリソースの割り当て及び調整を行い、前記回路構成情報を生成する変換部とを有し、
前記第2の生成部により得られたデータフローグラフに従って、前記仮想回路のリソースの割り当て及び調整を行った結果、前記動的に再構成可能な回路の制約を満たさない場合には、前記変換部が前記分割数を増加させ、前記分割数決定後の処理を再度行うことを特徴とするデータ変換装置。 - 前記変換部が、前記第2の生成部により得られたデータフローグラフに従って行う調整には、前記仮想回路のリソースに対するデータ入出力に係るタイミング調整、使用するリソースの配置調整、及びリソースに係る配線調整の少なくとも1つを含むことを特徴とする請求項1記載のデータ変換装置。
- 前記変換部は、前記第2の生成部により得られたデータフローグラフに従って、前記仮想回路のリソースの割り当て及び調整を行った結果、前記動的に再構成可能な回路の制約を満たす場合には前記回路構成情報を生成することを特徴とする請求項1又は2記載のデータ変換装置。
- 前記分割数決定部は、前記動的に再構成可能な回路のリソースに応じて、前記分割数を決定することを特徴とする請求項1〜3の何れか1項に記載のデータ変換装置。
- 前記分割数決定部は、外部から前記分割数の指定を受けた場合には、当該分割数に決定することを特徴とする請求項4記載のデータ変換装置。
- 前記回路記述から生成したデータフローグラフは、フィードバックループを含むことを特徴とする請求項1〜5の何れか1項に記載のデータ変換装置。
- 動的に再構成可能な回路に係る入力される回路記述を回路構成情報に変換するデータ変換装置のデータ変換方法であって、
前記データ変換装置が有する第1の生成部が、前記回路記述をコンパイルしてデータフローグラフを生成する第1の生成工程と、
前記データ変換装置が有する分割数決定部が、前記第1の生成工程で生成されたデータフローグラフを分割する分割数を決定する分割数決定工程と、
前記データ変換装置が有する仮想回路作成部が、前記動的に再構成可能な回路のリソースを前記分割数決定工程で決定された分割数倍分有する仮想回路を作成する仮想回路作成工程と、
前記データ変換装置が有する第2の生成部が、前記回路記述をコンパイルして前記仮想回路作成工程で作成された仮想回路に対するデータフローグラフを生成する第2の生成工程と、
前記データ変換装置が有する変換部が、前記第2の生成工程で生成されたデータフローグラフに従って、前記仮想回路のリソースの割り当て及び調整を行い、前記回路構成情報を生成する変換工程とを有し、
前記第2の生成工程にて得られたデータフローグラフに従って、前記仮想回路のリソースの割り当て及び調整を行った結果、前記動的に再構成可能な回路の制約を満たさない場合には、前記変換部が前記分割数を増加させ、前記分割数決定後の処理を再度行うことを特徴とするデータ変換方法。 - 入力される動的に再構成可能な回路に係る回路記述からデータフローグラフを生成する第1の生成ステップと、
前記第1の生成ステップにて生成されたデータフローグラフを分割する分割数を決定する分割数決定ステップと、
前記動的に再構成可能な回路のリソースを前記分割数決定ステップにて決定された分割数倍分有する仮想回路を作成する仮想回路作成ステップと、
前記回路記述から前記仮想回路作成ステップにて作成された仮想回路に対するデータフローグラフを生成する第2の生成ステップと、
前記第2の生成ステップにて生成されたデータフローグラフに従って、前記仮想回路のリソースの割り当て及び調整を行い、前記動的に再構成可能な回路の回路構成情報を生成する変換ステップとをコンピュータに実行させるとともに、
前記第2の生成ステップにて得られたデータフローグラフに従って、前記仮想回路のリソースの割り当て及び調整を行った結果、前記動的に再構成可能な回路の制約を満たさない場合には、前記分割数を増加させ、前記分割数決定後の処理を再度実行させるためのプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008187620A JP5056644B2 (ja) | 2008-07-18 | 2008-07-18 | データ変換装置、データ変換方法及びプログラム |
US12/503,455 US8291360B2 (en) | 2008-07-18 | 2009-07-15 | Data conversion apparatus, method, and computer-readable recording medium storing program for generating circuit configuration information from circuit description |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008187620A JP5056644B2 (ja) | 2008-07-18 | 2008-07-18 | データ変換装置、データ変換方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010026806A JP2010026806A (ja) | 2010-02-04 |
JP5056644B2 true JP5056644B2 (ja) | 2012-10-24 |
Family
ID=41531384
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008187620A Expired - Fee Related JP5056644B2 (ja) | 2008-07-18 | 2008-07-18 | データ変換装置、データ変換方法及びプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8291360B2 (ja) |
JP (1) | JP5056644B2 (ja) |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8555265B2 (en) | 2010-05-04 | 2013-10-08 | Google Inc. | Parallel processing of data |
US9116751B2 (en) * | 2011-02-08 | 2015-08-25 | Canon Kabushiki Kaisha | Reconfigurable device, processing assignment method, processing arrangement method, information processing apparatus, and control method therefor |
JP5751669B2 (ja) * | 2011-07-08 | 2015-07-22 | ルネサスエレクトロニクス株式会社 | 言語変換処理方法及び言語変換処理プログラム |
US10157060B2 (en) | 2011-12-29 | 2018-12-18 | Intel Corporation | Method, device and system for control signaling in a data path module of a data stream processing engine |
US9731456B2 (en) | 2013-03-14 | 2017-08-15 | Sabic Global Technologies B.V. | Method of manufacturing a functionally graded article |
JP5971214B2 (ja) * | 2013-08-16 | 2016-08-17 | 富士ゼロックス株式会社 | データ処理装置及びデータ処理プログラム |
US10331583B2 (en) | 2013-09-26 | 2019-06-25 | Intel Corporation | Executing distributed memory operations using processing elements connected by distributed channels |
US10042966B2 (en) * | 2014-10-31 | 2018-08-07 | Wave Computing, Inc. | Computing resource allocation based on flow graph translation |
US10402168B2 (en) | 2016-10-01 | 2019-09-03 | Intel Corporation | Low energy consumption mantissa multiplication for floating point multiply-add operations |
US10416999B2 (en) | 2016-12-30 | 2019-09-17 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator |
US10558575B2 (en) | 2016-12-30 | 2020-02-11 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator |
US10572376B2 (en) | 2016-12-30 | 2020-02-25 | Intel Corporation | Memory ordering in acceleration hardware |
US10474375B2 (en) | 2016-12-30 | 2019-11-12 | Intel Corporation | Runtime address disambiguation in acceleration hardware |
US10467183B2 (en) * | 2017-07-01 | 2019-11-05 | Intel Corporation | Processors and methods for pipelined runtime services in a spatial array |
US10445234B2 (en) | 2017-07-01 | 2019-10-15 | Intel Corporation | Processors, methods, and systems for a configurable spatial accelerator with transactional and replay features |
US10515046B2 (en) | 2017-07-01 | 2019-12-24 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator |
US10469397B2 (en) | 2017-07-01 | 2019-11-05 | Intel Corporation | Processors and methods with configurable network-based dataflow operator circuits |
US10445451B2 (en) | 2017-07-01 | 2019-10-15 | Intel Corporation | Processors, methods, and systems for a configurable spatial accelerator with performance, correctness, and power reduction features |
US10387319B2 (en) | 2017-07-01 | 2019-08-20 | Intel Corporation | Processors, methods, and systems for a configurable spatial accelerator with memory system performance, power reduction, and atomics support features |
US10515049B1 (en) | 2017-07-01 | 2019-12-24 | Intel Corporation | Memory circuits and methods for distributed memory hazard detection and error recovery |
US11086816B2 (en) | 2017-09-28 | 2021-08-10 | Intel Corporation | Processors, methods, and systems for debugging a configurable spatial accelerator |
US10496574B2 (en) | 2017-09-28 | 2019-12-03 | Intel Corporation | Processors, methods, and systems for a memory fence in a configurable spatial accelerator |
US10445098B2 (en) | 2017-09-30 | 2019-10-15 | Intel Corporation | Processors and methods for privileged configuration in a spatial array |
US10380063B2 (en) | 2017-09-30 | 2019-08-13 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator having a sequencer dataflow operator |
US10445250B2 (en) | 2017-12-30 | 2019-10-15 | Intel Corporation | Apparatus, methods, and systems with a configurable spatial accelerator |
US10565134B2 (en) | 2017-12-30 | 2020-02-18 | Intel Corporation | Apparatus, methods, and systems for multicast in a configurable spatial accelerator |
US10417175B2 (en) | 2017-12-30 | 2019-09-17 | Intel Corporation | Apparatus, methods, and systems for memory consistency in a configurable spatial accelerator |
US10564980B2 (en) | 2018-04-03 | 2020-02-18 | Intel Corporation | Apparatus, methods, and systems for conditional queues in a configurable spatial accelerator |
US11307873B2 (en) | 2018-04-03 | 2022-04-19 | Intel Corporation | Apparatus, methods, and systems for unstructured data flow in a configurable spatial accelerator with predicate propagation and merging |
US10891240B2 (en) | 2018-06-30 | 2021-01-12 | Intel Corporation | Apparatus, methods, and systems for low latency communication in a configurable spatial accelerator |
US11200186B2 (en) | 2018-06-30 | 2021-12-14 | Intel Corporation | Apparatuses, methods, and systems for operations in a configurable spatial accelerator |
US10459866B1 (en) | 2018-06-30 | 2019-10-29 | Intel Corporation | Apparatuses, methods, and systems for integrated control and data processing in a configurable spatial accelerator |
US10853073B2 (en) | 2018-06-30 | 2020-12-01 | Intel Corporation | Apparatuses, methods, and systems for conditional operations in a configurable spatial accelerator |
US10678724B1 (en) | 2018-12-29 | 2020-06-09 | Intel Corporation | Apparatuses, methods, and systems for in-network storage in a configurable spatial accelerator |
US10965536B2 (en) | 2019-03-30 | 2021-03-30 | Intel Corporation | Methods and apparatus to insert buffers in a dataflow graph |
US11029927B2 (en) | 2019-03-30 | 2021-06-08 | Intel Corporation | Methods and apparatus to detect and annotate backedges in a dataflow graph |
US10817291B2 (en) | 2019-03-30 | 2020-10-27 | Intel Corporation | Apparatuses, methods, and systems for swizzle operations in a configurable spatial accelerator |
US10915471B2 (en) | 2019-03-30 | 2021-02-09 | Intel Corporation | Apparatuses, methods, and systems for memory interface circuit allocation in a configurable spatial accelerator |
US11037050B2 (en) | 2019-06-29 | 2021-06-15 | Intel Corporation | Apparatuses, methods, and systems for memory interface circuit arbitration in a configurable spatial accelerator |
US11907713B2 (en) | 2019-12-28 | 2024-02-20 | Intel Corporation | Apparatuses, methods, and systems for fused operations using sign modification in a processing element of a configurable spatial accelerator |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10256383A (ja) | 1997-03-12 | 1998-09-25 | Toshiba Corp | 半導体装置及びその回路構成方法 |
JP2002123563A (ja) | 2000-10-13 | 2002-04-26 | Nec Corp | コンパイル方法および合成装置ならびに記録媒体 |
JP4029959B2 (ja) * | 2001-08-31 | 2008-01-09 | シャープ株式会社 | 演算器アロケーション設計装置および演算器アロケーション設計方法 |
JP4204039B2 (ja) * | 2003-04-24 | 2009-01-07 | シャープ株式会社 | 動作合成システム、動作合成方法、制御プログラム、可読記録媒体、論理回路の製造方法および論理回路 |
JP4275013B2 (ja) | 2004-06-21 | 2009-06-10 | 三洋電機株式会社 | データフローグラフ処理装置、処理装置、リコンフィギュラブル回路。 |
US7353162B2 (en) * | 2005-02-11 | 2008-04-01 | S2C, Inc. | Scalable reconfigurable prototyping system and method |
US20080092113A1 (en) * | 2006-10-12 | 2008-04-17 | Weinstein Randall K | System and method for configuring a programmable electronic device to include an execution engine |
JP4156010B2 (ja) | 2007-03-19 | 2008-09-24 | 三洋電機株式会社 | 処理装置 |
JP2009157440A (ja) * | 2007-12-25 | 2009-07-16 | Toshiba Corp | 高位合成装置、高位合成システム、及び高位合成方法 |
-
2008
- 2008-07-18 JP JP2008187620A patent/JP5056644B2/ja not_active Expired - Fee Related
-
2009
- 2009-07-15 US US12/503,455 patent/US8291360B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US8291360B2 (en) | 2012-10-16 |
JP2010026806A (ja) | 2010-02-04 |
US20100017761A1 (en) | 2010-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5056644B2 (ja) | データ変換装置、データ変換方法及びプログラム | |
JP5509107B2 (ja) | 再構成可能なプログラマブルロジックデバイスコンピュータシステム | |
JP2005182654A (ja) | リコンフィギュラブル回路、リコンフィギュラブル回路を備えた処理装置、リコンフィギュラブル回路における論理回路の機能決定方法、回路生成方法および回路 | |
WO2015026233A1 (en) | A computing platform, a reconfigurable hardware device and a method for simultaneously executing processes on dynamically reconfigurable hardware device, such as an fpga, as well as instruction set processors, such as a cpu, and a related computer readable medium. | |
JP3722351B2 (ja) | 高位合成方法およびその実施に使用される記録媒体 | |
Zha et al. | Hetero-ViTAL: A virtualization stack for heterogeneous FPGA clusters | |
US20070028198A1 (en) | Method and apparatus for allocating data paths to minimize unnecessary power consumption in functional units | |
US10671429B2 (en) | Circuit assignment within reconfigurable device based on predicted shortest processing completion time | |
Gokhale et al. | Co-synthesis to a hybrid RISC/FPGA architecture | |
US9740529B1 (en) | High throughput synchronous resource-constrained scheduling for model-based design | |
Planas et al. | AMA: Asynchronous management of accelerators for task-based programming models | |
JP4158458B2 (ja) | 情報処理装置、その情報処理方法 | |
US10983947B2 (en) | Method and dynamically reconfigurable processor adapted for management of persistence of information across multiple instruction cycles | |
JP5229716B2 (ja) | 動作合成システム、動作合成方法および動作合成用プログラム | |
Curtis et al. | Rapid prototyping on the Georgia Tech digital signal multiprocessor | |
Kovačević et al. | A solution for automatic parallelization of sequential assembly code | |
Hao et al. | Network simplex method based multiple voltage scheduling in power-efficient high-level synthesis | |
Jaber et al. | Reconfigurable and adaptive spark applications | |
Uddin | Microgrid-The microthreaded many-core architecture | |
Chauhan et al. | Reconfiguration of fpga for domain specific applications using embedded system approach | |
Abi Farraj et al. | Reconfigurable and Adaptive Spark Applications | |
CN117725862A (zh) | 基于多层中间表示的芯片硬件综合方法 | |
Bazargan et al. | Fast scheduling and placement methods for C to hardware/software compilation | |
PRANJUL | ANALYSIS OF COMPUTE KERNELS AND IMPLEMENTATION ON FPGA OVERLAY ARCHITECTURES | |
Hermenier | Online Management of Jobs in Clusters using Virtual Machines |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110408 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120327 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120528 |
|
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: 20120703 |
|
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: 20120716 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150810 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5056644 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |