JP2006510125A5 - - Google Patents

Download PDF

Info

Publication number
JP2006510125A5
JP2006510125A5 JP2005502182A JP2005502182A JP2006510125A5 JP 2006510125 A5 JP2006510125 A5 JP 2006510125A5 JP 2005502182 A JP2005502182 A JP 2005502182A JP 2005502182 A JP2005502182 A JP 2005502182A JP 2006510125 A5 JP2006510125 A5 JP 2006510125A5
Authority
JP
Japan
Prior art keywords
loop
node
pipelined
valid
loop structure
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
Application number
JP2005502182A
Other languages
Japanese (ja)
Other versions
JP4330582B2 (en
JP2006510125A (en
Filing date
Publication date
Priority claimed from US10/285,299 external-priority patent/US6983456B2/en
Application filed filed Critical
Priority claimed from PCT/US2003/033171 external-priority patent/WO2004042503A2/en
Publication of JP2006510125A publication Critical patent/JP2006510125A/en
Publication of JP2006510125A5 publication Critical patent/JP2006510125A5/ja
Application granted granted Critical
Publication of JP4330582B2 publication Critical patent/JP4330582B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Claims (21)

制御フローデータフローのパイプライン化されたループ構造を含む再構成可能なコンピュータシステムであって、前記システムは
マルチアダプティブプロセッサを含み、前記マルチアダプティブプロセッサはフィールドプログラマブルゲートアレイを含み、さらに、
マルチアダプティブプロセッサ上で実行可能なコードを生成することができるマルチアダプティブプロセッサコンパイラを含み、前記マルチアダプティブプロセッサコンパイラは、パイプライン化されたループ構造を形成するコードを生成し、前記パイプライン化されたループ構造は
ループ本体の連続的反復の中で入力値を処理し出力値を生成するループ本体を含み、前記出力値は前記ループ本体に結合される循環ノードに捉えられ、前記構造はさらに、
前記ループ本体に結合される、最終のループ反復を判断するループ有効ノードと、
前記循環ノードに結合される出力値記憶ノードとを含み、前記出力値記憶ノードは、ループ有効ノードが前記最終のループ反復が起ったと判断した後生成される出力値を無視し、前記最終のループ反復に基づいた最終ループ値を保存する、再構成可能なコンピュータシステム。
A reconfigurable computer system including a pipelined loop structure of control flow data flow, the system comprising :
A multi-adaptive processor, wherein the multi-adaptive processor includes a field programmable gate array;
Including a multi-adaptive processor compiler capable of generating code executable on a multi-adaptive processor, wherein the multi-adaptive processor compiler generates code that forms a pipelined loop structure and the pipelined The loop structure is
A loop body that processes input values and generates output values in successive iterations of the loop body, wherein the output values are captured by a circular node coupled to the loop body, the structure further comprising:
A loop valid node coupled to the loop body to determine a final loop iteration;
And an output value storage node coupled to the circulation node, said output value storing node ignores the output value of the loop valid node is generated after determining that loop iterations of the final ensued, the final A reconfigurable computer system that stores final loop values based on loop iterations.
前記ループ有効ノードは、前記最終のループ反復が起ったと判断するとループ有効終了信号を出力する、請求項1に記載のパイプライン化されたループ構造。   The pipelined loop structure of claim 1, wherein the loop valid node outputs a loop valid end signal upon determining that the final loop iteration has occurred. 前記ループ有効ノードは、前記最終のループ反復が起った後前記ループが再開されるまで各ループ反復において前記ループ有効終了信号を出力する、請求項2に記載のパイプライン化されたループ構造。   3. The pipelined loop structure of claim 2, wherein the loop valid node outputs the loop valid end signal at each loop iteration until the loop is resumed after the final loop iteration occurs. 前記ループ有効終了信号はデータビットを含む、請求項2に記載のパイプライン化されたループ構造。   The pipelined loop structure of claim 2, wherein the loop valid end signal includes a data bit. 前記ループ有効ノードおよび前記出力値記憶ノードに結合される終了ノードを含む、請求項1に記載のパイプライン化されたループ構造。   The pipelined loop structure of claim 1 including an end node coupled to the loop valid node and the output value storage node. 前記終了ノードは、前記ループ有効ノードからループ有効終了信号を受取るための終了入力を含む、請求項5に記載のパイプライン化されたループ構造。   6. The pipelined loop structure of claim 5, wherein the end node includes an end input for receiving a loop valid end signal from the loop valid node. 前記終了ノードは、記憶ノード終了信号を前記出力値記憶ノードに送るための終了出力を含む、請求項6に記載のパイプライン化されたループ構造。   7. The pipelined loop structure of claim 6, wherein the end node includes an end output for sending a storage node end signal to the output value storage node. 前記循環ノードに結合されるループドライバノードを含み、前記ループドライバノードは前記ループ本体の各反復に周期を設定する、請求項1に記載のパイプライン化されたループ構造。   The pipelined loop structure of claim 1 including a loop driver node coupled to the circular node, wherein the loop driver node sets a period for each iteration of the loop body. クロックレイテンシは、前記ループドライバノードに入力される周期値に基づく、請求項8に記載のパイプライン化されたループ構造。   The pipelined loop structure of claim 8, wherein clock latency is based on a period value input to the loop driver node. マルチアダプティブプロセッサおよびマルチアダプティブコンパイラを含む再構成可能なコンピュータシステムであって、前記マルチアダプティブコンパイラは、高レベル命令をマルチアダプティブプロセッサで実行可能なコードに変換することができ、制御フローデータフローのパイプライン化されたループ構造を形成するための命令を含み、前記パイプライン化された構造は
ループ本体の連続的反復の中で入力値を処理し出力値を生成するループ本体を含み、前記出力値は前記ループ本体に結合される循環ノードに捉えられ、前記構造はさらに、
前記循環ノードに結合されるループドライバノードを含み、前記ループドライバノードは前記ループ本体の各反復に対して周期を設定し、そのため1つ以上のクロック周期は前記ループ本体が第2の入力値を処理する前に経過し、前記ループドライブノードは状態を持つ機能ユニットに関連する信号を出力する、再構成可能なコンピュータシステム
A reconfigurable computer system including a multi-adaptive processor and a multi-adaptive compiler, wherein the multi-adaptive compiler is capable of converting high-level instructions into code that can be executed by the multi-adaptive processor. Including instructions for forming a lined loop structure, the pipelined structure comprising :
A loop body that processes input values and generates output values in successive iterations of the loop body, wherein the output values are captured by a circular node coupled to the loop body, the structure further comprising:
A loop driver node coupled to the circular node, wherein the loop driver node sets a period for each iteration of the loop body, so that one or more clock periods are generated by the loop body at a second input value. A reconfigurable computer system that elapses before processing and wherein the loop drive node outputs a signal associated with a functional unit having a state .
前記ループドライバノードは、ループが開始していることを前記循環ノードに告げるためのCIRC_TRIGGER信号を出力する、請求項10に記載のパイプライン化されたループ構造。   The pipelined loop structure of claim 10, wherein the loop driver node outputs a CIRC_TRIGGER signal to inform the circular node that a loop has started. 前記ループドライバノードは、ループの開始をトリガするためのSTART信号を出力する
、請求項10に記載のパイプライン化されたループ構造。
The pipelined loop structure of claim 10, wherein the loop driver node outputs a START signal for triggering the start of a loop.
前記ループドライバノードは、リセットパルスを必要とするノードの状態をクリアするためのLOOP_STARTING信号を出力する、請求項10に記載のパイプライン化されたループ
構造。
The pipelined loop structure of claim 10, wherein the loop driver node outputs a LOOP_STARTING signal for clearing a state of a node that requires a reset pulse.
前記ループドライバノードは、値をロードするよう定期的入力ノードに告げるためのLEADING信号を出力する、請求項10に記載のパイプライン化されたループ構造。   The pipelined loop structure of claim 10, wherein the loop driver node outputs a LEADING signal to tell a periodic input node to load a value. 周期値は、前記パイプライン化されたループ構造におけるループ運搬される最長のスカラサイクルの周期に等しい、請求項10に記載のパイプライン化されたループ構造。   The pipelined loop structure of claim 10, wherein a period value is equal to a period of a longest scalar cycle carried in the pipelined loop structure. 前記周期は、前記ループドライバノードに入力される周期値に基づく、請求項10に記載のパイプライン化されたループ構造。   The pipelined loop structure of claim 10, wherein the period is based on a period value input to the loop driver node. 前記ループ本体に結合される、最終のループ反復を判断するループ有効ノードを含む、請求項10に記載のパイプライン化されたループ構造。   The pipelined loop structure of claim 10 including a loop valid node coupled to the loop body to determine a final loop iteration. 前記ループ有効ノードは、前記最終のループ反復が起ったと判断するとループ有効終了信号を出力する、請求項17に記載のパイプライン化されたループ構造。   18. The pipelined loop structure of claim 17, wherein the loop valid node outputs a loop valid end signal upon determining that the final loop iteration has occurred. 前記循環ノードに結合される出力値記憶ノードを含む、請求項18に記載のパイプライン化されたループ構造。   The pipelined loop structure of claim 18 including an output value storage node coupled to the circular node. 前記出力値記憶ノードは、前記ループ有効ノードが前記最終のループ反復が起ったと判断した後生成される出力値を無視する、請求項19に記載のパイプライン化されたループ構造。   20. The pipelined loop structure of claim 19, wherein the output value storage node ignores output values generated after the loop valid node determines that the final loop iteration has occurred. 前記ループ有効ノードおよび前記出力値記憶ノードに結合される終了ノードを含む、請求項20に記載のパイプライン化されたループ構造。   21. The pipelined loop structure of claim 20 including an end node coupled to the loop valid node and the output value storage node.
JP2005502182A 2002-10-31 2003-10-17 Pipelined loop structure by MAP compiler Expired - Fee Related JP4330582B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/285,299 US6983456B2 (en) 2002-10-31 2002-10-31 Process for converting programs in high-level programming languages to a unified executable for hybrid computing platforms
US10/345,082 US7134120B2 (en) 2002-10-31 2003-01-14 Map compiler pipelined loop structure
PCT/US2003/033171 WO2004042503A2 (en) 2002-10-31 2003-10-17 Map compiler pipelined loop structure

Publications (3)

Publication Number Publication Date
JP2006510125A JP2006510125A (en) 2006-03-23
JP2006510125A5 true JP2006510125A5 (en) 2006-11-24
JP4330582B2 JP4330582B2 (en) 2009-09-16

Family

ID=32314353

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005502182A Expired - Fee Related JP4330582B2 (en) 2002-10-31 2003-10-17 Pipelined loop structure by MAP compiler

Country Status (5)

Country Link
EP (1) EP1573461A4 (en)
JP (1) JP4330582B2 (en)
AU (1) AU2003284288A1 (en)
CA (1) CA2498866A1 (en)
WO (1) WO2004042503A2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8276120B2 (en) * 2007-10-30 2012-09-25 Coreworks, S.A. Reconfigurable coprocessor architecture template for nested loops and programming tool

Similar Documents

Publication Publication Date Title
JP5917592B2 (en) Loop control system and method
JP2003296096A5 (en)
JP2011526045A5 (en)
JP2006508430A5 (en)
TW442753B (en) Data processor system having branch control and method thereof
JP2013218708A (en) Register-based shifts for unidirectional rotator
JP2006285990A (en) Method, processor and computer program product (system and method for processing multicycle non-pipelined command sequencing)
JP2007257549A (en) Semiconductor device
NO20051940L (en) Device and dynamic program decompression device.
JP5341194B2 (en) System and method for executing a linear feedback shift instruction
EP1913468B1 (en) Method and system for providing an energy efficient register file
JP2008518355A5 (en)
CN114242138A (en) Time delay controller, memory controller and time sequence control method
JP2006510125A5 (en)
JP2001022582A5 (en)
US9323540B2 (en) Task execution determinism improvement for an event-driven processor
TW200717539A (en) Internal signal generator for use in semiconductor memory device
GB2442908A (en) Computer having dynamically-changeable instruction set in real time
TWI249129B (en) Trace buffer circuit, pipelined processor, method for assigning instruction addresses of a trace buffer and associated apparatus
US9378782B1 (en) Apparatus with write-back buffer and associated methods
JP2006293741A (en) Processor
Henzinger The Fixed Logical Execution Time Assumption
WO2017024798A1 (en) Instruction processing method and apparatus for very long instruction word instruction set
JP4330582B2 (en) Pipelined loop structure by MAP compiler
Finkel bgclang: Creating an Alternative, Customizable, Toolchain for the Blue Gene/Q