JP2005505030A - 複数のハードウェア構成を有する再構成可能なハードウェア・アーキテクチャにおけるスケジューリング方法 - Google Patents
複数のハードウェア構成を有する再構成可能なハードウェア・アーキテクチャにおけるスケジューリング方法 Download PDFInfo
- Publication number
- JP2005505030A JP2005505030A JP2003529342A JP2003529342A JP2005505030A JP 2005505030 A JP2005505030 A JP 2005505030A JP 2003529342 A JP2003529342 A JP 2003529342A JP 2003529342 A JP2003529342 A JP 2003529342A JP 2005505030 A JP2005505030 A JP 2005505030A
- Authority
- JP
- Japan
- Prior art keywords
- scheduler
- configuration
- time
- reconfigurable
- reconfigurable chip
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/22—Microcontrol or microprogram arrangements
- G06F9/24—Loading of the microprogram
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Logic Circuits (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
単一のファンクションのための複数の構成が記憶されている、再構成可能チップのためのスケジューラが説明されている。スケジューラは、構成のいずれか1つを選択するオプションを有する。本システムは、再構成チップ・オペレーションの効率性を向上させる。
Description
【0001】
(技術分野)
本発明は、アルゴリズムを実施するために使用されうる再構成可能なチップに関する。
【0002】
(背景技術)
再構成可能チップに有用な1つのソフトウェア・エレメントは、スケジューラである。スケジューラは、プログラムのセクションを解釈し、および再構成可能チップの様々なリソースにロードされるべきファンクションをスケジュールする。1つの実施態様において、ファンクションは、再構成可能チップ使用法に最適化され、およびスケジューラは、このファンクションの構成をどこにロードするべきかを決定する。
【0003】
再構成可能チップとの使用のための改良されたスケジューラを有することが望まれる。
【0004】
(発明の開示)
本発明の1つの実施態様は、再構成可能チップで特定のファンクションを実施するための複数の可能な構成を使用することを含む。単一の最適化されたファンクションの実施よりも、それぞれが異なる時間およびリソース要件を有する複数の構成が決定される。スケジューラは、構成の時間ならびにリソース要件、および再構成可能チップで利用可能な時間の期間ならびにリソースに基づいて、再構成可能チップへロードされるべきこれらの構成の1つを選択することができる。
【0005】
再構成可能チップのいつでも利用可能なリソースは変化する。例えば、ある場合には、大量のリソースを使うが、比較的長い時間ではこれらのリソースを使用しない構成を使用することが望ましい。別の場合では、より少ないリソースを使うが、より長い時間がかかる構成を採用することがより有用である。
【0006】
これら複数の構成へのアクセスを有することによって、スケジューラは、より効率的な方法で再構成可能チップにファンクションを割り当てることができ、どのようなときでも、使われないままのリソースがほとんどなくなるため、チップのオペレーションの速度を上げることができる。
【0007】
本発明のシステムは、構成の時間ならびにリソースの要件および時間の期間ならびにリソースのスケジュールに関する情報を与える指示を好適には使用する。スケジュールは、構成の時間およびリソースの要件の指示に基づいて、スケジュールに構成の1つを適合させる。
【0008】
スケジューラは、プログラムのオペレーションに基づいて変化する、ランタイムに動作する動的スケジューラになるか、またはコンパイル中に作られる静的スケジューラになりうる。
【0009】
1つの実施態様において、本発明は、再構成可能チップのためのスケジューラを具備する。スケジューラは、1つ以上の構成の群から1つの構成を選択するように適応している。異なる時間およびリソース要件を有する構成の各々は、再構成可能チップで同じファンクションを実施するように適応させられており、スケジューラは、再構成可能チップにロードされるべき構成を選択するために、利用可能なリソースのスケジュール、並びにその構成の時間及びリソースの要件の指示を用いる。
【0010】
(発明を実施するための最良の形態)
図1は、再構成可能チップ20の図である。再構成可能チップ20は、再構成可能ロジックおよびメモリ装置を含む多くのスライス32,34,36,38を含む。再構成可能ロジックは好ましくは、多くの様々なファンクションを実施することができる再構成可能ロジック・ブロックに分割される。再構成可能ロジック・ブロックは好ましくは演算ロジック装置(ALU arithmetic logic unit)を含む。スライスは、関連する構成メモリを有する。構成メモリは、スライスに関する様々な構成を記憶する。
【0011】
“構成(configuration)”という用語は、本発明に関して2つの異なる可能性のある意味を有する。それは、いつでも再構成可能ロジックの構成を意味しうるが、所定のファンクションに関しては、ファンクションを実施するために必要とされる時間に亘る構成のセットも意味しうる。
【0012】
1つの実施態様において、構成は、構成バッファおよびインターフェースを通して、システム・データ・バスおよびシステム・アドレス・バスへとロードされる。構成は、外部メモリに記憶され、およびメモリ・コントローラを通してロードされる。再構成可能チップは、ARCプロセッサなどのCPUも含む。CPUは、再構成可能ファブリックで効率的に実行されることができないアルゴリズムのセクションを実行する。動的スケジューリング環境にもあるCPUは、好ましくはスケジューラを実行する。
【0013】
図2Aは、特定のファンクションに関して作られうる1つの構成の1つの実施例を示す。この実施例は、3つのリソースを使用するが、1つの時間ブロックがかかる。図2Bは、別の構成を示している。この構成は、1つのリソースを使用するが4つの時間ブロックがかかる。前記リソースは、例えば、再構成可能スライス全体となりえ、または再構成可能チップでの、いくらかより詳細なレベルのリソースにもなりうる。リソース時間ブロックの数は、異なる実施態様に関しては異なりうることが注記されるべきである。例えば、図2Bに記載の実施態様は、図2Aに記載の実施態様よりも多くのリソース時間ブロックを使用する。従来技術は、最適な構成として、図2Aに記載の構成のスケジューラを選択しがちであった。
【0014】
図3Aは、5つの図2Aに記載の構成が、再構成可能チップにロードされるシステムを示す。これは、5つの時間の期間がかかり、およびリソースに、4とラベルを付けられたリソースを未使用のまま残す。
【0015】
図3Bは、図2Bの構成が排他的に使用されるシステムを示す。この実施例においては、最後のファンクションが完了するのに8つの時間の期間がかかる。
【0016】
図4は、スケジューラが、再構成可能チップをスケジュールするための2つの異なる構成、すなわち図2Aおよび図2Bに記載の構成の中から選択することができるシステムを示す。この実施例において、ファンクション1,2,3,4は、図2Aに記載の構成を用いて実施され、および構成5は、図2Bに記載の実施例によって実施される。これは4つの時間の期間の中で5つのすべてのファンクションを終わらせる。図4に記載のスケジュールは、図3Aまたは図3Bに記載のスケジュールのいずれよりも効果的である。図2Bに記載の構成が図2Aに記載の構成よりも多くのリソース時間ブロックを使用するとしても、この実施例においては、図2Bに記載の構成を使用できることは、再構成可能チップの効率性を向上させる。
【0017】
図5は、本発明の方法を示す。この実施例において、アルゴリズムのセクションは、再構成可能ファブリック上に配置されるために割り当てられる。1つの実施態様において、C言語などの高いレベルの言語で書かれたプログラムなどのコンピュータ・プログラムは、再構成可能チップにロードされるべきセクションに分割される。これは、手動で、またはコンピュータ・プログラムを使用して行うことができる。ステップ62において、アルゴリズムのセクションを実施するための、時間およびリソース使用に関して異なっている複数の構成が決定される。1つの実施態様において、アルゴリズムのセクションの、ハードウェア・ベース記述が作られる。ハードウェア・ベース記述は、再構成可能チップに関する構成へとマッピングされる。構成は好ましくは構成ライブラリに記憶される。
【0018】
本発明のシステムを使用することができる、2つの異なる主要な種類のスケジューラがある。静的スケジューラは、アルゴリズムが実行される前に動作し、およびアルゴリズムによって生成されるデータを考慮に入れることができない。動的スケジューラは、ランタイム(実行時)に動作し、およびアルゴリズムによって生成されるデータを考慮に入れることができる。ステップ64の静的スケジューラにおいて、再構成可能ファブリックがスケジュールされ、利用可能なリソースおよび時間に関する最善の構成を選択する。ステップ66において、アルゴリズムは再構成可能チップで実行される。動的スケジューラに関しては、ステップ68において、アルゴリズムが再構成可能チップで実行され、およびスケジューラは、リソース利用可能性に基づいて、構成の群から最善の構成を選択する。
【0019】
図6および7は、本発明のシステムのさらなる実施態様を示す。図7は、図6に記載の実施例に関するスケジュールを示す。この実施例において、ファンクション1、2および3が実施される必要がある。これらのファンクションの各々は、異なる時間およびリソースの値を有する複数の構成と関連している。ファンクション1は1スライス、3時間単位の構成、または3スライス、2時間単位の構成を用いて実施されうる。ファンクション2は、2スライス、5時間単位の構成、または1スライス10時間単位の構成を用いて実施されうる。ファンクション3は、2スライス、2時間単位の構成、または1スライス、6時間単位の構成を用いて実施されうる。
【0020】
この実施例において、ファンクション1は、1スライス、3時間単位の構成を用いて実施され;およびファンクション2は、2スライス、5時間単位の構成を用いて実施される。これは、ファンクション3に、2スライス、2時間単位の構成;または1スライス、6時間単位の構成の中からの選択肢を残す。
【0021】
図7を見ると、ファンクション1はブロック70において実施される。ファンクション2は、ブロック72において実施される。次に1スライス、6時間単位を選択することは、それがより多くのスライス時間単位を有しているとしても、実際には2スライス、2時間単位よりも、ファンクションを実施するためにより良好に稼動することが注記されるべきである。図7に記載の通り、ファンクション3は、ブロック76ではなくブロック74において実施される。
【0022】
スケジューラは、好ましくは、2つの構成のうちの1つをリソース・スケジュールに適合させるために、リソースおよび時間の指示を用いるソフトウェアである。図6および7に記載の構成の実施例のそれは、リソースのすべてが時間単位の各々において使用されるという点で長方形であることが注記されるべきである。これは必ずしもそうではない。
【0023】
スケジューラは、動作するために、システム全体の効率性に関する問題を考慮する。効率性を管理する1つの方法は、特定のアルゴリズムによって使用される時間単位の数を減らすことである。異なる構成を異なるスケジュールに供給することによって、システムは、より効率的に再構成可能チップのオペレーションの時間の速度を上げることができる。スケジューラに関与する他の問題は、依存性を含む。他のファンクションが完了する前に、特定のファンクションが終了する必要がある場合、当然、より少ないリソース時間ブロックを使用する構成とは対照的であるが、より速い構成が選択されることもある。
【0024】
通常の当業者は、本発明が、その精神または特徴から逸脱することなく、他の特定の形式で実施されうることを理解するだろう。ここに開示された実施態様は、そのため、すべての点において説明的であり、制約的ではないと考えられる。本発明の範囲は、前述の説明よりもむしろ添付の特許請求の範囲によって説明され、およびその同等のものの意味ならびに範囲内に入るすべての変更は、ここに含まれることを意図する。
【図面の簡単な説明】
【図1】
図1は、再構成可能チップの図である。
【図2A】
図2Aは、再構成可能チップで実施されるべきファンクションに関する2つの異なる構成によって必要とされるリソースおよび時間を示している。
【図2B】
図2Bは、再構成可能チップで実施されるべきファンクションに関する2つの異なる構成によって必要とされるリソースおよび時間を示している。
【図3A】
図3Aは、それぞれ図2Aまたは図2Bのファンクションの5つの実行を実施するスケジュールを示す。
【図3B】
図3Bは、それぞれ図2Aまたは図2Bのファンクションの5つの実行を実施するスケジュールを示す。
【図4】
図4は、図2Aに記載の構成または図2Bに記載の構成の使用を可能にするスケジュールを示す。
【図5】
図5は、本発明の1つの実施態様の1つの方法を示す流れ図である。
【図6】
図6は、本発明のスケジューラの1つの実施態様のオペレーションを示す図である。
【図7】
図7は、図6に記載の実施例に関するスケジュールの図である。
(技術分野)
本発明は、アルゴリズムを実施するために使用されうる再構成可能なチップに関する。
【0002】
(背景技術)
再構成可能チップに有用な1つのソフトウェア・エレメントは、スケジューラである。スケジューラは、プログラムのセクションを解釈し、および再構成可能チップの様々なリソースにロードされるべきファンクションをスケジュールする。1つの実施態様において、ファンクションは、再構成可能チップ使用法に最適化され、およびスケジューラは、このファンクションの構成をどこにロードするべきかを決定する。
【0003】
再構成可能チップとの使用のための改良されたスケジューラを有することが望まれる。
【0004】
(発明の開示)
本発明の1つの実施態様は、再構成可能チップで特定のファンクションを実施するための複数の可能な構成を使用することを含む。単一の最適化されたファンクションの実施よりも、それぞれが異なる時間およびリソース要件を有する複数の構成が決定される。スケジューラは、構成の時間ならびにリソース要件、および再構成可能チップで利用可能な時間の期間ならびにリソースに基づいて、再構成可能チップへロードされるべきこれらの構成の1つを選択することができる。
【0005】
再構成可能チップのいつでも利用可能なリソースは変化する。例えば、ある場合には、大量のリソースを使うが、比較的長い時間ではこれらのリソースを使用しない構成を使用することが望ましい。別の場合では、より少ないリソースを使うが、より長い時間がかかる構成を採用することがより有用である。
【0006】
これら複数の構成へのアクセスを有することによって、スケジューラは、より効率的な方法で再構成可能チップにファンクションを割り当てることができ、どのようなときでも、使われないままのリソースがほとんどなくなるため、チップのオペレーションの速度を上げることができる。
【0007】
本発明のシステムは、構成の時間ならびにリソースの要件および時間の期間ならびにリソースのスケジュールに関する情報を与える指示を好適には使用する。スケジュールは、構成の時間およびリソースの要件の指示に基づいて、スケジュールに構成の1つを適合させる。
【0008】
スケジューラは、プログラムのオペレーションに基づいて変化する、ランタイムに動作する動的スケジューラになるか、またはコンパイル中に作られる静的スケジューラになりうる。
【0009】
1つの実施態様において、本発明は、再構成可能チップのためのスケジューラを具備する。スケジューラは、1つ以上の構成の群から1つの構成を選択するように適応している。異なる時間およびリソース要件を有する構成の各々は、再構成可能チップで同じファンクションを実施するように適応させられており、スケジューラは、再構成可能チップにロードされるべき構成を選択するために、利用可能なリソースのスケジュール、並びにその構成の時間及びリソースの要件の指示を用いる。
【0010】
(発明を実施するための最良の形態)
図1は、再構成可能チップ20の図である。再構成可能チップ20は、再構成可能ロジックおよびメモリ装置を含む多くのスライス32,34,36,38を含む。再構成可能ロジックは好ましくは、多くの様々なファンクションを実施することができる再構成可能ロジック・ブロックに分割される。再構成可能ロジック・ブロックは好ましくは演算ロジック装置(ALU arithmetic logic unit)を含む。スライスは、関連する構成メモリを有する。構成メモリは、スライスに関する様々な構成を記憶する。
【0011】
“構成(configuration)”という用語は、本発明に関して2つの異なる可能性のある意味を有する。それは、いつでも再構成可能ロジックの構成を意味しうるが、所定のファンクションに関しては、ファンクションを実施するために必要とされる時間に亘る構成のセットも意味しうる。
【0012】
1つの実施態様において、構成は、構成バッファおよびインターフェースを通して、システム・データ・バスおよびシステム・アドレス・バスへとロードされる。構成は、外部メモリに記憶され、およびメモリ・コントローラを通してロードされる。再構成可能チップは、ARCプロセッサなどのCPUも含む。CPUは、再構成可能ファブリックで効率的に実行されることができないアルゴリズムのセクションを実行する。動的スケジューリング環境にもあるCPUは、好ましくはスケジューラを実行する。
【0013】
図2Aは、特定のファンクションに関して作られうる1つの構成の1つの実施例を示す。この実施例は、3つのリソースを使用するが、1つの時間ブロックがかかる。図2Bは、別の構成を示している。この構成は、1つのリソースを使用するが4つの時間ブロックがかかる。前記リソースは、例えば、再構成可能スライス全体となりえ、または再構成可能チップでの、いくらかより詳細なレベルのリソースにもなりうる。リソース時間ブロックの数は、異なる実施態様に関しては異なりうることが注記されるべきである。例えば、図2Bに記載の実施態様は、図2Aに記載の実施態様よりも多くのリソース時間ブロックを使用する。従来技術は、最適な構成として、図2Aに記載の構成のスケジューラを選択しがちであった。
【0014】
図3Aは、5つの図2Aに記載の構成が、再構成可能チップにロードされるシステムを示す。これは、5つの時間の期間がかかり、およびリソースに、4とラベルを付けられたリソースを未使用のまま残す。
【0015】
図3Bは、図2Bの構成が排他的に使用されるシステムを示す。この実施例においては、最後のファンクションが完了するのに8つの時間の期間がかかる。
【0016】
図4は、スケジューラが、再構成可能チップをスケジュールするための2つの異なる構成、すなわち図2Aおよび図2Bに記載の構成の中から選択することができるシステムを示す。この実施例において、ファンクション1,2,3,4は、図2Aに記載の構成を用いて実施され、および構成5は、図2Bに記載の実施例によって実施される。これは4つの時間の期間の中で5つのすべてのファンクションを終わらせる。図4に記載のスケジュールは、図3Aまたは図3Bに記載のスケジュールのいずれよりも効果的である。図2Bに記載の構成が図2Aに記載の構成よりも多くのリソース時間ブロックを使用するとしても、この実施例においては、図2Bに記載の構成を使用できることは、再構成可能チップの効率性を向上させる。
【0017】
図5は、本発明の方法を示す。この実施例において、アルゴリズムのセクションは、再構成可能ファブリック上に配置されるために割り当てられる。1つの実施態様において、C言語などの高いレベルの言語で書かれたプログラムなどのコンピュータ・プログラムは、再構成可能チップにロードされるべきセクションに分割される。これは、手動で、またはコンピュータ・プログラムを使用して行うことができる。ステップ62において、アルゴリズムのセクションを実施するための、時間およびリソース使用に関して異なっている複数の構成が決定される。1つの実施態様において、アルゴリズムのセクションの、ハードウェア・ベース記述が作られる。ハードウェア・ベース記述は、再構成可能チップに関する構成へとマッピングされる。構成は好ましくは構成ライブラリに記憶される。
【0018】
本発明のシステムを使用することができる、2つの異なる主要な種類のスケジューラがある。静的スケジューラは、アルゴリズムが実行される前に動作し、およびアルゴリズムによって生成されるデータを考慮に入れることができない。動的スケジューラは、ランタイム(実行時)に動作し、およびアルゴリズムによって生成されるデータを考慮に入れることができる。ステップ64の静的スケジューラにおいて、再構成可能ファブリックがスケジュールされ、利用可能なリソースおよび時間に関する最善の構成を選択する。ステップ66において、アルゴリズムは再構成可能チップで実行される。動的スケジューラに関しては、ステップ68において、アルゴリズムが再構成可能チップで実行され、およびスケジューラは、リソース利用可能性に基づいて、構成の群から最善の構成を選択する。
【0019】
図6および7は、本発明のシステムのさらなる実施態様を示す。図7は、図6に記載の実施例に関するスケジュールを示す。この実施例において、ファンクション1、2および3が実施される必要がある。これらのファンクションの各々は、異なる時間およびリソースの値を有する複数の構成と関連している。ファンクション1は1スライス、3時間単位の構成、または3スライス、2時間単位の構成を用いて実施されうる。ファンクション2は、2スライス、5時間単位の構成、または1スライス10時間単位の構成を用いて実施されうる。ファンクション3は、2スライス、2時間単位の構成、または1スライス、6時間単位の構成を用いて実施されうる。
【0020】
この実施例において、ファンクション1は、1スライス、3時間単位の構成を用いて実施され;およびファンクション2は、2スライス、5時間単位の構成を用いて実施される。これは、ファンクション3に、2スライス、2時間単位の構成;または1スライス、6時間単位の構成の中からの選択肢を残す。
【0021】
図7を見ると、ファンクション1はブロック70において実施される。ファンクション2は、ブロック72において実施される。次に1スライス、6時間単位を選択することは、それがより多くのスライス時間単位を有しているとしても、実際には2スライス、2時間単位よりも、ファンクションを実施するためにより良好に稼動することが注記されるべきである。図7に記載の通り、ファンクション3は、ブロック76ではなくブロック74において実施される。
【0022】
スケジューラは、好ましくは、2つの構成のうちの1つをリソース・スケジュールに適合させるために、リソースおよび時間の指示を用いるソフトウェアである。図6および7に記載の構成の実施例のそれは、リソースのすべてが時間単位の各々において使用されるという点で長方形であることが注記されるべきである。これは必ずしもそうではない。
【0023】
スケジューラは、動作するために、システム全体の効率性に関する問題を考慮する。効率性を管理する1つの方法は、特定のアルゴリズムによって使用される時間単位の数を減らすことである。異なる構成を異なるスケジュールに供給することによって、システムは、より効率的に再構成可能チップのオペレーションの時間の速度を上げることができる。スケジューラに関与する他の問題は、依存性を含む。他のファンクションが完了する前に、特定のファンクションが終了する必要がある場合、当然、より少ないリソース時間ブロックを使用する構成とは対照的であるが、より速い構成が選択されることもある。
【0024】
通常の当業者は、本発明が、その精神または特徴から逸脱することなく、他の特定の形式で実施されうることを理解するだろう。ここに開示された実施態様は、そのため、すべての点において説明的であり、制約的ではないと考えられる。本発明の範囲は、前述の説明よりもむしろ添付の特許請求の範囲によって説明され、およびその同等のものの意味ならびに範囲内に入るすべての変更は、ここに含まれることを意図する。
【図面の簡単な説明】
【図1】
図1は、再構成可能チップの図である。
【図2A】
図2Aは、再構成可能チップで実施されるべきファンクションに関する2つの異なる構成によって必要とされるリソースおよび時間を示している。
【図2B】
図2Bは、再構成可能チップで実施されるべきファンクションに関する2つの異なる構成によって必要とされるリソースおよび時間を示している。
【図3A】
図3Aは、それぞれ図2Aまたは図2Bのファンクションの5つの実行を実施するスケジュールを示す。
【図3B】
図3Bは、それぞれ図2Aまたは図2Bのファンクションの5つの実行を実施するスケジュールを示す。
【図4】
図4は、図2Aに記載の構成または図2Bに記載の構成の使用を可能にするスケジュールを示す。
【図5】
図5は、本発明の1つの実施態様の1つの方法を示す流れ図である。
【図6】
図6は、本発明のスケジューラの1つの実施態様のオペレーションを示す図である。
【図7】
図7は、図6に記載の実施例に関するスケジュールの図である。
Claims (22)
- 再構成可能チップでファンクションを実施するための、異なる時間およびリソースの要件を有する複数の可能な構成を供給するステップ;
スケジューラにおいて、再構成可能チップでファンクションを実施するための構成を選択するために前記構成の前記時間ならびにリソースの要件を用いるステップ;および
この構成を前記再構成可能チップにロードするステップ
を含む方法。 - 前記異なる構成は構成のライブラリに記憶されることを特徴とする請求項1に記載の方法。
- 前記構成は、アルゴリズムの全体の演算の速度を上げるように選択されることを特徴とする請求項1に記載の方法。
- 前記リソースはスライスであることを特徴とする請求項1に記載の方法。
- 前記時間およびリソースの要件の前記指示は、各構成に関して記憶されることを特徴とする請求項1に記載の方法。
- 前記スケジューラは動的スケジューラであることを特徴とする請求項1に記載の方法。
- 前記スケジューラは静的スケジューラであることを特徴とする請求項1に記載の方法。
- スケジュールは、前記再構成可能チップに関して利用可能な時間の期間およびリソースを決定するために使用されることを特徴とする請求項1に記載の方法。
- 前記スケジューラは、前記スケジュールにおける前記利用可能なリソースおよび時間の期間を調べることを特徴とする請求項1に記載の方法。
- 前記再構成可能チップは、再構成可能ファブリックを含むことを特徴とする請求項1に記載の方法。
- 前記再構成可能チップは多くのスライスを含むことを特徴とする請求項1に記載の方法。
- 前記再構成可能チップはプロセッサを含むことを特徴とする請求項1に記載の方法。
- 前記プロセッサは、動的スケジューラを実行することを特徴とする請求項12に記載の方法。
- 再構成可能チップのためのスケジューラであって、異なる時間およびリソースの要件を有し、その各々が再構成可能チップで同じファンクションを実施するように適応した1つ以上の構成の群から1つの構成を選択するように適応したスケジューラであり、前記再構成可能チップにロードされるべき構成を選択するために、前記構成の利用可能なリソース、並びに時間及びリソースの要件のスケジュールの指示を使用する前記スケジューラ。
- 前記スケジューラは、単一のファンクションに関する複数の構成を含むライブラリへのアクセスを有することを特徴とする請求項14に記載のスケジューラ。
- 前記スケジューラは、前記再構成可能チップの全体の演算の速度を上げることを特徴とする請求項14に記載のスケジューラ。
- 前記リソースは、前記再構成可能チップ上のスライスであることを特徴とする請求項14に記載のスケジューラ。
- 前記構成の時間およびリソースの要件の指示が記憶されることを特徴とする、請求項14に記載のスケジューラ。
- 前記スケジューラは、動的スケジューラであることを特徴とする請求項14に記載のスケジューラ。
- 前記スケジューラは、静的スケジューラであることを特徴とする請求項14に記載のスケジューラ。
- 前記スケジューラは、このスケジュールから利用可能な時間の期間ならびにリソースを決定し、および前記利用可能なリソースならびに時間の期間を調べることを特徴とする請求項14に記載のスケジューラ。
- 前記スケジューラは、前記再構成可能チップのプロセッサ上の動的スケジューラとして実行されることを特徴とする請求項14に記載のスケジューラ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/953,568 US20030056091A1 (en) | 2001-09-14 | 2001-09-14 | Method of scheduling in a reconfigurable hardware architecture with multiple hardware configurations |
PCT/US2002/029479 WO2003025784A2 (en) | 2001-09-14 | 2002-09-16 | Method of scheduling in a reconfigurable hardware architecture with multiple hardware configurations |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005505030A true JP2005505030A (ja) | 2005-02-17 |
JP2005505030A5 JP2005505030A5 (ja) | 2006-01-05 |
Family
ID=25494199
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003529342A Pending JP2005505030A (ja) | 2001-09-14 | 2002-09-16 | 複数のハードウェア構成を有する再構成可能なハードウェア・アーキテクチャにおけるスケジューリング方法 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20030056091A1 (ja) |
EP (1) | EP1461698A2 (ja) |
JP (1) | JP2005505030A (ja) |
KR (1) | KR20040069257A (ja) |
CN (1) | CN1568460A (ja) |
AU (1) | AU2002341686A1 (ja) |
WO (1) | WO2003025784A2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012089154A (ja) * | 2005-09-30 | 2012-05-10 | Coware Inc | マルチコアアーキテクチャにおけるスケジューリング |
JP2017117204A (ja) * | 2015-12-24 | 2017-06-29 | 富士通株式会社 | プロセッサ、再構成可能回路の制御方法及びプログラム |
JP2020530175A (ja) * | 2017-08-03 | 2020-10-15 | ネクスト シリコン リミテッドNext Silicon Ltd | 構成可能なハードウェアの実行時の最適化 |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7266725B2 (en) * | 2001-09-03 | 2007-09-04 | Pact Xpp Technologies Ag | Method for debugging reconfigurable architectures |
DE19651075A1 (de) * | 1996-12-09 | 1998-06-10 | Pact Inf Tech Gmbh | Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen |
DE19654595A1 (de) | 1996-12-20 | 1998-07-02 | Pact Inf Tech Gmbh | I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen |
JP3961028B2 (ja) | 1996-12-27 | 2007-08-15 | ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト | データフロープロセッサ(dfp)の自動的なダイナミックアンロード方法並びに2次元または3次元のプログラミング可能なセルストラクチャを有するモジュール(fpga,dpga等) |
DE19654846A1 (de) * | 1996-12-27 | 1998-07-09 | Pact Inf Tech Gmbh | Verfahren zum selbständigen dynamischen Umladen von Datenflußprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o. dgl.) |
US6542998B1 (en) * | 1997-02-08 | 2003-04-01 | Pact Gmbh | Method of self-synchronization of configurable elements of a programmable module |
DE19704742A1 (de) * | 1997-02-11 | 1998-09-24 | Pact Inf Tech Gmbh | Internes Bussystem für DFPs, sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen, zur Bewältigung großer Datenmengen mit hohem Vernetzungsaufwand |
US8686549B2 (en) | 2001-09-03 | 2014-04-01 | Martin Vorbach | Reconfigurable elements |
DE19861088A1 (de) * | 1997-12-22 | 2000-02-10 | Pact Inf Tech Gmbh | Verfahren zur Reparatur von integrierten Schaltkreisen |
US7003660B2 (en) | 2000-06-13 | 2006-02-21 | Pact Xpp Technologies Ag | Pipeline configuration unit protocols and communication |
DE10081643D2 (de) | 1999-06-10 | 2002-05-29 | Pact Inf Tech Gmbh | Sequenz-Partitionierung auf Zellstrukturen |
US20040015899A1 (en) * | 2000-10-06 | 2004-01-22 | Frank May | Method for processing data |
US8058899B2 (en) | 2000-10-06 | 2011-11-15 | Martin Vorbach | Logic cell array and bus system |
US7844796B2 (en) | 2001-03-05 | 2010-11-30 | Martin Vorbach | Data processing device and method |
US7210129B2 (en) * | 2001-08-16 | 2007-04-24 | Pact Xpp Technologies Ag | Method for translating programs for reconfigurable architectures |
US9037807B2 (en) | 2001-03-05 | 2015-05-19 | Pact Xpp Technologies Ag | Processor arrangement on a chip including data processing, memory, and interface elements |
US7444531B2 (en) | 2001-03-05 | 2008-10-28 | Pact Xpp Technologies Ag | Methods and devices for treating and processing data |
WO2002103532A2 (de) | 2001-06-20 | 2002-12-27 | Pact Xpp Technologies Ag | Verfahren zur bearbeitung von daten |
US7996827B2 (en) | 2001-08-16 | 2011-08-09 | Martin Vorbach | Method for the translation of programs for reconfigurable architectures |
US7434191B2 (en) | 2001-09-03 | 2008-10-07 | Pact Xpp Technologies Ag | Router |
US8686475B2 (en) | 2001-09-19 | 2014-04-01 | Pact Xpp Technologies Ag | Reconfigurable elements |
EP1483682A2 (de) | 2002-01-19 | 2004-12-08 | PACT XPP Technologies AG | Reconfigurierbarer prozessor |
EP1514193B1 (de) | 2002-02-18 | 2008-07-23 | PACT XPP Technologies AG | Bussysteme und rekonfigurationsverfahren |
US8914590B2 (en) | 2002-08-07 | 2014-12-16 | Pact Xpp Technologies Ag | Data processing method and device |
US7657861B2 (en) | 2002-08-07 | 2010-02-02 | Pact Xpp Technologies Ag | Method and device for processing data |
WO2004021176A2 (de) | 2002-08-07 | 2004-03-11 | Pact Xpp Technologies Ag | Verfahren und vorrichtung zur datenverarbeitung |
JP4388895B2 (ja) * | 2002-09-06 | 2009-12-24 | ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト | リコンフィギュアラブルなシーケンサ構造 |
JP4665760B2 (ja) * | 2003-06-25 | 2011-04-06 | 日本電気株式会社 | 電子計算機、半導体集積回路、制御方法、プログラムの生成方法、及びプログラム |
JP4700611B2 (ja) | 2003-08-28 | 2011-06-15 | ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト | データ処理装置およびデータ処理方法 |
KR100731976B1 (ko) * | 2005-06-30 | 2007-06-25 | 전자부품연구원 | 재구성 가능 프로세서의 효율적인 재구성 방법 |
JP4720436B2 (ja) * | 2005-11-01 | 2011-07-13 | 株式会社日立製作所 | リコンフィギュラブルプロセッサまたは装置 |
US7281942B2 (en) * | 2005-11-18 | 2007-10-16 | Ideal Industries, Inc. | Releasable wire connector |
US8250503B2 (en) | 2006-01-18 | 2012-08-21 | Martin Vorbach | Hardware definition method including determining whether to implement a function as hardware or software |
EP1868094B1 (en) | 2006-06-12 | 2016-07-13 | Samsung Electronics Co., Ltd. | Multitasking method and apparatus for reconfigurable array |
KR100883655B1 (ko) * | 2006-12-04 | 2009-02-18 | 삼성전자주식회사 | 재구성 가능한 프로세서를 갖는 문맥 교환 시스템 및 방법 |
KR100893527B1 (ko) * | 2007-02-02 | 2009-04-17 | 삼성전자주식회사 | 재구성 가능 멀티 프로세서 시스템에서의 매핑 및 스케줄링방법 |
KR100940362B1 (ko) | 2007-09-28 | 2010-02-04 | 고려대학교 산학협력단 | 모드 집합을 사용하는 명령어 처리기에서의 모드 명령어최적화 방법 |
KR101511273B1 (ko) | 2008-12-29 | 2015-04-10 | 삼성전자주식회사 | 멀티 코어 프로세서를 이용한 3차원 그래픽 렌더링 방법 및시스템 |
KR101553655B1 (ko) * | 2009-01-19 | 2015-09-17 | 삼성전자 주식회사 | 재구성가능 프로세서에 대한 명령어 스케줄링 장치 및 방법 |
CN101788931B (zh) * | 2010-01-29 | 2013-03-27 | 杭州电子科技大学 | 一种硬件实时容错的动态局部可重构系统 |
CN101853178B (zh) * | 2010-04-30 | 2012-07-04 | 西安交通大学 | 一种调度时可重构硬件资源的描述方法 |
CN103559154B (zh) * | 2013-11-06 | 2016-03-23 | 东南大学 | 一种可重构系统中隐藏存储访问延时的方法 |
JP6960479B2 (ja) | 2017-03-14 | 2021-11-05 | アズールエンジン テクノロジーズ ヂュハイ インク.Azurengine Technologies Zhuhai Inc. | 再構成可能並列処理 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5418953A (en) * | 1993-04-12 | 1995-05-23 | Loral/Rohm Mil-Spec Corp. | Method for automated deployment of a software program onto a multi-processor architecture |
US6077315A (en) * | 1995-04-17 | 2000-06-20 | Ricoh Company Ltd. | Compiling system and method for partially reconfigurable computing |
US5966534A (en) * | 1997-06-27 | 1999-10-12 | Cooke; Laurence H. | Method for compiling high level programming languages into an integrated processor with reconfigurable logic |
US6658564B1 (en) * | 1998-11-20 | 2003-12-02 | Altera Corporation | Reconfigurable programmable logic device computer system |
US6662302B1 (en) * | 1999-09-29 | 2003-12-09 | Conexant Systems, Inc. | Method and apparatus of selecting one of a plurality of predetermined configurations using only necessary bus widths based on power consumption analysis for programmable logic device |
US6633181B1 (en) * | 1999-12-30 | 2003-10-14 | Stretch, Inc. | Multi-scale programmable array |
US6438737B1 (en) * | 2000-02-15 | 2002-08-20 | Intel Corporation | Reconfigurable logic for a computer |
US6637017B1 (en) * | 2000-03-17 | 2003-10-21 | Cypress Semiconductor Corp. | Real time programmable feature control for programmable logic devices |
US6483343B1 (en) * | 2000-12-29 | 2002-11-19 | Quicklogic Corporation | Configurable computational unit embedded in a programmable device |
-
2001
- 2001-09-14 US US09/953,568 patent/US20030056091A1/en not_active Abandoned
-
2002
- 2002-09-16 CN CNA028033221A patent/CN1568460A/zh active Pending
- 2002-09-16 JP JP2003529342A patent/JP2005505030A/ja active Pending
- 2002-09-16 AU AU2002341686A patent/AU2002341686A1/en not_active Abandoned
- 2002-09-16 KR KR10-2003-7006945A patent/KR20040069257A/ko not_active Application Discontinuation
- 2002-09-16 EP EP02775836A patent/EP1461698A2/en not_active Withdrawn
- 2002-09-16 WO PCT/US2002/029479 patent/WO2003025784A2/en not_active Application Discontinuation
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012089154A (ja) * | 2005-09-30 | 2012-05-10 | Coware Inc | マルチコアアーキテクチャにおけるスケジューリング |
US8732439B2 (en) | 2005-09-30 | 2014-05-20 | Synopsys, Inc. | Scheduling in a multicore processor |
US8751773B2 (en) | 2005-09-30 | 2014-06-10 | Synopsys, Inc. | Scheduling in a multicore architecture |
US9164953B2 (en) | 2005-09-30 | 2015-10-20 | Synopsys, Inc. | Scheduling in a multicore architecture |
US9286262B2 (en) | 2005-09-30 | 2016-03-15 | Synopsys, Inc. | Scheduling in a multicore architecture |
US9442886B2 (en) | 2005-09-30 | 2016-09-13 | Synopsys, Inc. | Scheduling in a multicore architecture |
JP2017117204A (ja) * | 2015-12-24 | 2017-06-29 | 富士通株式会社 | プロセッサ、再構成可能回路の制御方法及びプログラム |
JP2020530175A (ja) * | 2017-08-03 | 2020-10-15 | ネクスト シリコン リミテッドNext Silicon Ltd | 構成可能なハードウェアの実行時の最適化 |
JP7245833B2 (ja) | 2017-08-03 | 2023-03-24 | ネクスト シリコン リミテッド | 構成可能なハードウェアの実行時の最適化 |
Also Published As
Publication number | Publication date |
---|---|
WO2003025784A2 (en) | 2003-03-27 |
WO2003025784A3 (en) | 2004-07-01 |
CN1568460A (zh) | 2005-01-19 |
AU2002341686A1 (en) | 2003-04-01 |
EP1461698A2 (en) | 2004-09-29 |
US20030056091A1 (en) | 2003-03-20 |
KR20040069257A (ko) | 2004-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2005505030A (ja) | 複数のハードウェア構成を有する再構成可能なハードウェア・アーキテクチャにおけるスケジューリング方法 | |
Kato et al. | Semi-partitioned fixed-priority scheduling on multiprocessors | |
JP5509107B2 (ja) | 再構成可能なプログラマブルロジックデバイスコンピュータシステム | |
KR101626378B1 (ko) | 병렬도를 고려한 병렬 처리 장치 및 방법 | |
EP2620840B1 (en) | Multiprocessor system | |
JP4185103B2 (ja) | 実行可能プログラムをスケジューリングするためのシステム及び方法 | |
JP4057989B2 (ja) | スケジューリング方法および情報処理システム | |
US8028286B2 (en) | Methods and apparatus for scheduling threads on multicore processors under fair distribution of cache and other shared resources of the processors | |
US9465663B2 (en) | Allocating resources in a compute farm to increase resource utilization by using a priority-based allocation layer to allocate job slots to projects | |
RU2530345C2 (ru) | Экземпляры планировщика в процессе | |
US20070300231A1 (en) | System and method for using performance monitor to optimize system performance | |
KR100893527B1 (ko) | 재구성 가능 멀티 프로세서 시스템에서의 매핑 및 스케줄링방법 | |
KR20120058605A (ko) | Gpu 워크의 하드웨어 기반 스케쥴링 | |
Huang et al. | A workflow for runtime adaptive task allocation on heterogeneous MPSoCs | |
WO2000031652A9 (en) | Reconfigurable programmable logic device computer system | |
JP2009528610A (ja) | タスクの実行フェーズに基づいてキャッシュパーティションを動的にリサイズする方法及び装置 | |
Tang et al. | Combining hard periodic and soft aperiodic real-time task scheduling on heterogeneous compute resources | |
JP2010044784A (ja) | システムにおける要求のスケジューリング | |
JP2022509170A (ja) | プロセッサにおける余裕認識(laxity-aware)型動的優先度変更 | |
Resano et al. | Specific scheduling support to minimize the reconfiguration overhead of dynamically reconfigurable hardware | |
JP4409568B2 (ja) | 帯域制御プログラム及びマルチプロセッサシステム | |
JP2006099579A (ja) | 情報処理装置及び情報処理方法 | |
Ayala-Barbosa et al. | A new preemptive task scheduling framework for heterogeneous embedded systems | |
Gotz et al. | Deterministic mechanism for run-time reconfiguration activities in an rtos | |
WO2008026142A1 (en) | Dynamic cache partitioning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050916 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050916 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080507 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20081222 |