JP2012252712A - 再構成可能なプログラマブルロジックデバイスコンピュータシステム - Google Patents
再構成可能なプログラマブルロジックデバイスコンピュータシステム Download PDFInfo
- Publication number
- JP2012252712A JP2012252712A JP2012163797A JP2012163797A JP2012252712A JP 2012252712 A JP2012252712 A JP 2012252712A JP 2012163797 A JP2012163797 A JP 2012163797A JP 2012163797 A JP2012163797 A JP 2012163797A JP 2012252712 A JP2012252712 A JP 2012252712A
- Authority
- JP
- Japan
- Prior art keywords
- programmable logic
- functions
- reconfigurable
- resource
- computer
- 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 OR CALCULATING; 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)
- Stored Programmes (AREA)
Abstract
る。
【解決手段】アプリケーションを作成するためにシステム設計言語を使用する。アプリケ
ーションは、ソフトウェア要素とプログラマブルロジックリソース要素とに自動的に分割
される。システムリソースをスケジューリングおよび配分するために仮想コンピュータオ
ペレーティングシステムが使用される仮想コンピュータオペレーティングシステムは、シ
ステム内のプログラマブルロジックリソースの能力を増加させるための仮想ロジックマネ
ージャを含んでいる。
【選択図】図1
Description
の能力を高められるように最適化して与えられたアプリケーションを実施するようプログ
ラマブルロジックが再構成されるコンピュータシステムに関する。
る。マイクロプロセッサは特定のアプリケーションに対応してカスタマイズすることがで
きない固定的な命令セットをもって構成されている。マイクロプロセッサは、アプリケー
ションのいずれのソフトウェア実行機能をも仮想的に実行させることができる点において
柔軟である。しかしながら、所与の機能の実行速度は、マイクロプロセッサ上において実
行すると一般的に低下する。これは、ソフトウェアで実行される機能はマイクロプロセッ
サの一般命令セットを使用するにはかなり複雑なものであるためである。
ム上でのみ動作する。アプリケーション技術者が所与のマイクロプロセッサ上で動作する
ようにアプリケーションを作成することを決定した場合、アプリケーション技術者が使用
することができる命令セットはマイクロプロセッサ上に永久的に常駐するものの1つとし
て限定される。従ってアプリケーション技術者は、アプリケーションがハードウェアプラ
ットフォームに適しているか、またはソフトウェアプラットフォームに適しているかを選
択する必要がある。ハードウェアに基づいたシステムが非柔軟かつ非効率的であるためし
ばしばソフトウェアプラットフォームが好まれるが、多くの場合において、マイクロプロ
セッサ上に常駐する一般命令セットが特定のタイプのアプリケーションソフトウェアに対
して不充分な性能をもたらす。例えば、グラフィックスを多用するアプリケーションは、
通常例えば3D処理等のアプリケーションのうちの特定のグラフィック要素に特別に適し
たハードウェアを必要とする。ハードウェアプラットフォーム用のプログラミングに関す
る複雑性を回避するため技術者はソフトウェアに頼るが、これによってアプリケーション
の速度が大幅に低下する危険性がある。
提案された。この種のシステムは、例えば、欧州特許第A−0801351号公報(イン
タナショナルコンピュータリミテッド)に記載されており、これは再構成可能な回路を有
する内蔵周辺機器コントローラを開示している。この種のシステムは、さらに国際特許出
願第WO94/10627号公報(ギガオペレーションズコーポレーション)にも記載さ
れており、これは再構成可能な回路を有する分散プロセッシングユニットを開示している
。“プログラマブルハードウェアデバイスソフトウェアアクセレーション”(エドワード
・M・D氏等によるIEE会報:コンピュータおよびデジタル技術、GB、IEE、19
96年第143刊第1号、第55−63頁、XP000554820号、ISSN:13
50−2387)および米国特許第5684984号公報には、ハードウェアに基づいた
機能を実行するために使用されるプログラマブルハードウェアが開示されている。再構成
可能なコンピュータの目的は、カスタマイズすることができるハードウェアを使用して並
行性ならびに高速実行時間を提供することによって従来のコンピュータより性能を向上さ
せることである。プログラマブルロジックデバイスを使用することによって柔軟性を増加
させることができ、これはこの種のプログラマブルロジックデバイスがデバイス内に新し
い構成データをロードすることによって再構成し得るためである。このことにより再構成
可能なコンピュータにおいて、従来のコンピュータのような単一の命令セットではなく多
数の命令セットを付加することができる。コンピュータが再構成可能なロジックを使用す
る場合、一定数のハードウェアを使用してより多くの機能を実行することができる。
するよう再プログラムすることができるプログラマブルロジックデバイスに基づいた、改
善された再構成可能なコンピュータを提供することである。
に基づいた再構成可能なコンピュータシステムを提供することによって解決される。
は、そのコンピュータ上でどのリソースが使用可能であるかについて配慮する必要はない
。単一のプログラマブルロジックデバイスのサイズまたはプログラマブルロジックデバイ
スの集合に基づいたハードウェア集約が使用される。アプリケーションがコンパイルされ
ると、ハードウェア内で実行されるアプリケーションの機能は、プログラマブルロジック
デバイスと同じサイズかまたはこれより小さいサイズの、構成データを含むブロックに分
割される。
ハードウェアリソースが追加された場合、システムの性能が向上する。増強された性能の
利点を得るためにアプリケーションを再度コンパイルする必要はない。
するために仮想のコンピュータオペレーティングシステムを使用する。アプリケーション
技術者が高レベルの言語を使用してプログラマブルロジックリソースを使用する再構成可
能なコンピュータシステム上で実行することができるアプリケーションのためのハードウ
ェア手段およびソフトウェア手段の両方を開発することを可能にするソフトウェア開発ツ
ールを提供することができる。これらのツールは関数からなるシステム設計言語によって
書かれた特性を自動的に分割しソフトウェア機能またはハードウェア機能に割り当てる分
割手段を備えることができる。ソフトウェア機能およびハードウェア機能は、スレッドな
らびにプログラマブルロジックリソース構成データにそれぞれコンパイルすることができ
る。これらのスレッドならびに構成データは、アプリケーションを実行するために実行時
間中において仮想コンピュータオペレーティングシステムによって使用することができる
。
ケーションのための性能要件を特定するメカニズムを提供する。例えば、グラフィックス
アプリケーションは、単位時間にディスプレイスクリーン上に描写される多辺形の数に応
じて特定の処理量を必要とする。秒当りに百万の多辺形を描写する必要がある場合、例え
ば、アプリケーション技術者は、仮想コンピュータオペレーティングシステムに対して、
多辺形を描写する機能が1μs以内のその動作を完了させる必要があることを特定するこ
とができる。
リケーションの性能(ならびに個々の機能)をモニタする能力と、特定のアプリケーショ
ンおよび個々の機能に対してより多くのリソースを再配分して性能要件を満たすことを保
持する能力を備えている。仮想コンピュータオペレーティングシステムは、特定の機能を
実行する際においてシステムの能力に従ってこの機能をソフトウェアバージョンで実行す
るかまたはハードウェアバージョンで実行するかを決定することもできる。例えば、別の
集中的な演算を要するアプリケーションを実行している際に多辺形描写機能を同時に実行
することがスケジュールされた場合、仮想コンピュータオペレーティングシステムによっ
て実行される動的な構成が、いつリソースの配分を決定するか、およびソフトウェアバー
ジョンの多辺形描写機能を使用するかまたはハードウェアバージョンの多辺形描写機能を
使用するかを考慮することができる。
ピュータオペレーティングシステムが提供される。仮想コンピュータオペレーティングシ
ステムは、仮想コンピュータ核サービス要素を含むことができる。仮想コンピュータ核サ
ービス要素は仮想ロジックリソースマネージャを含む多様なリソースマネージャを含むこ
とができる。
オペレーティングシステムを有する場合、仮想ロジックマネージャはプログラマブルロジ
ックリソースと二次記憶デバイスとの間におけるプログラマブルロジック構成データおよ
びアプリケーション状態情報の交換を制御することができる。このことによって限られた
リソースしか持たない再構成可能なコンピュータシステムにおいて複雑なアプリケーショ
ンを実行することが可能になる。
記述する好適な実施例の詳細な説明によって明らかにされる。
図として示されている。再構成可能なコンピュータシステム5内のハードウェアリソース
は、プログラマブルロジックデバイス内で実行可能な中央演算装置(CPU)16、実在
のマイクロプロセッサ、またはこれらの要素の組み合わせと、メモリ12と、入力/出力
(I/O)デバイス18(プログラマブルロジックデバイスまたはその他の適宜なデバイ
スに基づくものとし得る)と、相互接続ネットワーク22とからなる。
構造、入力および出力領域、メモリ領域、ならびに構成記憶装置(すなわちプログラマブ
ルロジック領域内のロジック要素を構成するために使用される構成データを記憶するため
のメモリ)のアレーを備えている。プログラマブルロジックデバイスによって実行される
ロジック機能は、構成記憶装置内に蓄積された構成データ、構成記憶装置からロジック領
域、ルーティング構造、入力および出力領域、ならびにメモリ領域への接続によって決定
される。構成記憶装置は、例えば、実質的に無限回書き込むことができるスタティックR
AMに基づいたものとすることができる。他方、消去可能なプログラマブルROMデバイ
ス等のプログラマブルロジックデバイスの外部のデバイスを、プログラマブルロジックデ
バイスの内部スタティックRAMに代えて構成記憶装置として使用することもできる。必
要に応じて、実質的に回数を書き込むことができるその他のいずれかのメモリまたは記録
デバイスを使用することができる。従って、プログラマブルロジックデバイスによって実
行されるロジック機能は、無数回にわたって回路内で変更することができる。好適なプロ
グラマブルロジックデバイスの一例として、カリフォルニア州サンノゼ市アルテラ社によ
るフレックスEPF10K50デバイスが挙げられる。この型式のプログラマブルロジッ
クデバイスは単に例示的なものである。必要に応じて、その他の適宜な型式のプログラマ
ブルロジックデバイスをシステム5内において使用することができる。必要であれば、プ
ログラマブルロジックデバイスは1つまたは複数の構成記憶装置の部分的な再構成を補助
することができる。
なコンピュータシステムに初めて電源が付加された際、コンピュータを初期化するために
初期化情報を使用することができる。このプロセスは“ブートストラッピング”として知
られている。
、スタティックまたはダイナミック集積回路メモリ技術によって形成することができる。
スタティックまたはダイナミックメモリ技術の選択は、このメモリによって実行されるこ
とを必要とする演算機能に基づいて決定することができる。スタティックRAMデバイス
はダイナミックRAMに比べて高速なアクセス時間を有するが、記録セルごとにより多く
のトランジスタを使用する上に、同等な記録密度でもより高い製造コストを要する。所定
の演算機能に対する好適なメモリ技術の決定において、アクセス時間、密度、ならびにコ
ストの組み合わせが要素となる。
バス)として形成される。相互接続ネットワーク技術は、位相幾何を動的に再構成するこ
とができるプログラマブルロジックデバイスまたはプログラマブル相互接続デバイスを使
用して形成することができる。この技術は、特定の演算機能に対して最適化される。考え
られるネットワーク位相幾何の例としては、メッシュ、全または部分クロスバー、小集団
、ハイパーキューブ、分散または共有メモリ階層構造等が挙げられる。
部機器、ハードディスクドライブ等の大量記憶装置に結合するか、または他の再構成可能
または再構成不可能なコンピュータシステムを含んだコンピュータネットワークに接続す
るワイヤによって形成することができる。
み合わせあるいは連続ロジック機能か、マイクロプロセッサ16に対するマイクロプロセ
ッサ機能か、またはI/Oインタフェース18に対するI/O機能を実行するように使用
することができる。これらの機能のうちのどれか、例えばマイクロプロセッサ機能は、必
要に応じて固定されたハードウェアによって実行することができる。
ことができる。システムにプログラマブルロジックデバイスを追加するに従って、処理能
力が増加する。拡張性およびモジュール性によってプログラマブルロジックデバイスリソ
ースの増加が可能となり、結果としてシステム能力の増加がもたらされる。
ためのメモリ階層構造を補助する。アプリケーションおよびシステムプログラムは、マイ
クロプロセッサコードおよびプログラマブルロジックデバイス構成データを含むことがで
きる。
プリケーション固有のI/Oデバイス18を形成するよう構成することができる。この種
のデバイスは、イーザネットプロトコル、スモールコンピュータシステムズインタフェー
ス(SCSI)プロトコル、周辺機器相互接続(PCI)プロトコル、ビデオドライバプ
ロトコル等のプロトコルを含むことができる。
は:プログラマブルロジックデバイス構成バス、アプリケーションメモリバス、およびI
/Oバスである。各バスは独立して機能することができる。プログラマブルロジック構成
バスは、システム内において各プログラマブルロジックデバイスを形成するために使用す
ることができる。プログラマブルロジックデバイス構成アドレッシングモードに従って、
このデータはプログラマブルロジックデバイスのグループまたは個別のプログラマブルロ
ジックデバイスに同時に伝送することができる。アプリケーションメモリバスは、システ
ムがプログラマブルロジックデバイスのアレーとともに共有または分散メモリシステムを
形成することを可能にする。I/Oバスはプログラマブルロジックデバイスを外部のI/
Oデバイスに接続することを可能にする。
トラップするために使用される。ステップ30においてシステムに電源が投入されると、
演算に使用されるプログラマブルロジックデバイスおよびRAM12はいずれも前回の構
成からの情報を維持しない。不揮発メモリ10内に記録された情報の目的は、ブートスト
ラップマネージャをロードすることである(ステップ)ブートストラップマネージャは、
続いてステップ34においてベーシックI/Oサービス(BIOS)をロードし、ステッ
プ36においてパワーオン自己検査診断プログラムをロードおよび実行し、ステップ38
においてオペレーティングシステム核をロードおよび実行することができる。
6中において演算リソース上で実行することができる。このリソースは専用マイクロプロ
セッサ、マイクロプロセッサとして構成されたプログラマブルロジックデバイス、マイク
ロプロセッサと部分的にマイクロプロセッサとして構成されたプログラマブルロジックデ
バイスとの組み合わせ、またはプログラマブルロジックデバイスロジック回路とすること
ができる。リソースが専用のマイクロプロセッサである場合、不揮発メモリ10は単にブ
ートストラッププロセスを実行するために必要とされるマイクロプロセッサインストラク
ションのみを含んでいる。プログラマブルロジックデバイスをマイクロプロセッサとして
構成する必要がある場合、不揮発メモリ10はプログラマブルロジックデバイス構成デー
タならびにマイクロプロセッサインストラクションを含むことができる。その他の場合、
不揮発メモリ10はロジック回路のためのプログラマブルロジックデバイス構成データを
含むことができ、これはブートストラッププロセスを実行するために追加的なプログラム
インストラクション必要とするものかあるいは必要としないもののいずれでも可能である
。
ある。このローディングプロセスはプログラマブルロジックデバイスを使用して実行され
るマイクロプロセッサのインストラクションのローディングを含むか、またはプログラマ
ブルロジックデバイスに対する構成のローディングを含むことができる。いずれの構成(
マイクロプロセッサおよびインストラクション、またはインストラクションを伴っている
かあるいは伴わないロジック回路)を使用しても、オペレーティングシステムは仮想コン
ピュータオペレーティングシステム(VC−OS)と呼称することができる。
3の仮想コンピュータオペレーティングシステム40は、従来のオペレーティングシステ
ムがランタイムマネージメントに関して提供していた基本的なサービスを提供することが
できる。加えて、仮想コンピュータオペレーティングシステムは、プログラマブルロジッ
クの使用に関してシステム5のサービスを補助する。
実行されることを保証するランタイムマネージメントツールを含んでいる。例えば、ラン
タイムマネージメント機能は、システム設計レベルで特定された機能およびタイミング条
件が満たされていることを保証する。
ステムは、従来のコンピュータシステムにおいてランタイム中に使用可能なリソース上に
おいて実行される機能をスケジューリングする。この種の従来のコンピュータシステム内
のリソースは、アプリケーションプログラムの要求ならびにリソースの使用可能性に基づ
いてランタイム中に動的に再配分される。各リソースは、物理メモリの再配分を行う仮想
メモリマネージャ等のリソースマネージャを備える。従来のオペレーティングシステムに
おける最も一般的なリソースマネージャは、ファイルシステムマネージャ、グラフィック
スマネージャ、I/Oマネージャ(大容量記録アクセスまたはキーボードあるいはマウス
等のシンプルI/Oデバイスを操作するため)、ネットワークマネージャ、および仮想メ
モリマネージャである。
タオペレーティングシステム40とこの仮想コンピュータオペレーティングシステム40
のために書かれたアプリケーションとの間のインタフェースを提供するアプリケーション
プログラムインタフェース44を備えている。仮想コンピュータオペレーティングシステ
ム40は、さらにリソースマネージメント機能を提供する核サービス42を含んでいる。
システム内の各サービスはリソースマネージャを有することができる。例えば、ファイル
リソースはファイルシステムマネージャ46によって操作することができる。グラフィッ
クスリソースはグラフィックスマネージャ47によって操作し、I/OリソースはI/O
マネージャ48によって操作し、ネットワークリソースはネットワークマネージャマネー
ジャ50によって操作し、仮想メモリリソースは仮想メモリマネージャ52によって操作
することができる。再構成可能なコンピュータシステムは仮想ロジックを有することがで
き、これは仮想ロジックマネージャ54によって管理することができ、この仮想ロジック
マネージャはアプリケーションによって形成されシステム5内の限られたプログラマブル
ロジックリソースにアクセスする要求を処理するものである。
する。仮想メモリは、ランタイムデータを一時的に保存するために二次記憶装置(ハード
ディスク等)を使用することができ、そうでない場合このデータは一次記憶装置(RAM
等)に記録される。アプリケーションによって機能およびデータが要求されると、オペレ
ーティングシステムは要求されたデータがその時点で仮想メモリ内に記録されているかど
うかを判断し、もし記録されている場合、そのデータを物理メモリ内にある他のアプリケ
ーションのためのデータをその時点で仮想メモリから要求されている機能およびデータに
置き換える。
イスのランタイム配分を行うことができる。仮想ロジックマネージャは、多様なアプリケ
ーションが要求するプログラマブルロジック内で実行される機能のランタイム要件を満た
すものである。1つのアプリケーションは、要求を処理するために存在するプログラマブ
ルロジックデバイスを使用して処理される以上の機能を要求することがあり得る。従って
、仮想ロジックマネージャは、プログラマブルロジック内で実行される機能のランタイム
交換を管理する必要がある。
リとしてアプリケーションに対して提供していた。これは、物理メモリ内外のメモリペー
ジを二次記憶装置(通常はローカルハードディスク)に対して(またはここから)ランタ
イム交換することによって達成される。本発明に係る仮想ロジックマネージャ54を使用
すれば、比較的少ない量の物理プログラマブルロジックデバイスをアプリケーションに対
しては比較的大量の論理プログラマブルロジックデバイスとして提供することができる。
これは、仮想ロジックマネージャ54を使用してプログラマブルロジックデバイス構成メ
モリ(すなわち、構成ストア)内外のプログラマブルロジックデバイス構成データおよび
状態情報を二次記憶装置(通常ローカルハードディスクドライブ)に対して(またはここ
から)ランタイム交換することを実施することによって達成される。
セスは、機能が実行される時間に使用される最適の機能手段(ソフトウェアまたはハード
ウェア)を選択するために使用される。
ウェア処理バンド幅がステップ150において決定される。ソフトウェア処理バンド幅は
、システム内の全てのマイクロプロセッサが休止中で機能を実行していない時間の総量か
ら算出される。ハードウェア処理バンド幅は、システム内の非使用のプログラマブルロジ
ックリソースと使用されているプログラマブルロジックリソースがデータを処理していな
い時間の総量とに基づいて計算される。
るソフトウェア処理バンド幅は、ステップ152において決定される。これらの要求は、
アプリケーション技術者によって絶対要求として特定されるか、または前記の実行される
機能に並んで付加された追加的な小機能を実行する際のシステムの性能に基づいて特定す
ることができる。この小機能はステップ152で実施することができるとともにシステム
の性能を測定することができる。
能なバンド幅より小さいかどうかが判断される。要求されるソフトウェア処理バンド幅が
システム内で使用可能なバンド幅よりも小さい場合、ソフトウェア手段がシステムにロー
ドされステップ160においてマイクロプロセッサ上で実行される。ソフトウェア手段が
ハードウェア手段よりも少ないシステムリソースを使用するため、この選択がなされる。
段が評価される。使用可能なハードウェアバンド幅が許容可能である場合、ステップ16
2において機能がシステム上にロードされてプログラマブルロジックリソース上で直接的
に実行される。ステップ156において、使用可能なハードウェアのバンド幅が許容不可
能であると判断され、さらにステップ158において性能要求が“ハード”でありつまり
性能要求を満たす必要がある場合、ユーザに対してエラーメッセージが提供されステップ
164において機能(およびその親機能)のロードが中止される。要求が“ハード”でな
い場合、ステップ162において機能がロードされ、低減された性能レベルで実行される
。
りこの優先度の低い機能を必要に応じて除去するかどうかを決定するために通常の手段を
使用し)、システム内の機能の性能がステップ166でモニタされる。バンド幅を処理す
るシステムの機能に対して与えられた優先度は、要求されるバンド幅と実現される実際の
バンド幅との差に比例する。
リングされると、仮想コンピュータオペレーティングシステムのリソース再配分ルーチン
によって実施される第1のステップは、機能の拘束を満たすことができるリソースが存在
するかどうかを判断することである。このようなリソースが存在する場合、このリソース
が前記機能に対して配分される。存在しない場合、物理リソースのプール内に存在する最
適の候補が適宜な代替法則を使用して検索される。例えば、あるアプリケーションの所定
の機能を実行するために再構成することが可能なプログラマブルロジックリソースが不充
分であると判断された場合、仮想コンピュータオペレーティングシステムは再構成が不要
なハードウェアリソース(例えば、専用マイクロプロセッサまたはCPUとして動作する
よう構成されたプログラマブルロジックデバイス)を使用して所与の機能を実行し得るこ
とを保証するために使用することができる。仮想コンピュータオペレーティングシステム
は、マイクロプロセッサ上で機能を実行する前に適正なソフトウェアバージョンの機能が
アプリケーション技術者によって提供されているかどうかを保証することができる。
ウト、ラストリーセントリユースド、またはラストフリークェントリユースドを含んでい
る。ランタイムマネージメントシステムがリアルタイムインタラプト処理プロセス等の優
先度の高い機能を検出した際、極端なケースとして1番目の最適なリソースのオンデマン
ド交換があり得る。
ティングシステムによるランタイムリソースマネージメントは、CPUスケジューリング
のための種々の技術を含んでいる。ワンバイワンベーシック上のコンピュータシステム操
作アプリケーション(ならびに同じアプリケーション下の個々の機能)を有することは極
めて非効率的となり得る。与えられたいずれかの時間に処理される与えられたいずれかの
時間に処理されるタスクに応じて、いくつかのリソースが拘束され、一方その他のリソー
スはアイドルとなり得る。結果は極めて遅いコンピュータとなる。これに対応して、従来
のオペレーティングシステムの殆どにおいては徐々にCPUスケジューリングのコンセプ
トが適用されるようになってきた。
ステムによって処理される全ての機能の順序がスケジューリングされる。CPUスケジュ
ーリングの目的は、安定したマルチタスク環境を形成することである。この環境は、優先
度、I/O遅延による機能停止、または各機能を処理する順序を決定付けるために使用さ
れるその他の要因等の各要因の組み合わせに基づいてCPUリソースをアルゴリズム的に
配分することによって形成される。例えば、マイクロプロセッサがユーザの入力を待つ点
に到達している機能を処理する場合、従来のオペレーティングシステムのCPUスケジュ
ーリング特性は、ユーザの入力が可能になるまでの間マイクロプロセッサのリソース(同
様に他の使用可能なシステムリソース)を使用する可能性のある他の機能を提供すること
ができる。ユーザの入力が可能になった際、最初の機能がシステム内で休止状態になって
いた際に放棄していたリソースを再び使用する。
ックデバイスが完全または部分的に構成される再構成可能なコンピュータシステムにおい
て、スケジューリングシステムの機能は従来のCPUスケジューリングシステムと比べて
いくらか異なった作用をもたらす。従来のCPUスケジューリングはマイクロプロセッサ
リソースを各機能に対して配分し、プログラマブルロジックスケジューリングはプログラ
マブルロジックリソース(そのうちのいくつかとすることもできる)を各機能に配分する
。プログラマブルロジックリソースはマイクロプロセッサとしてプログラムする必要はな
いが、所要の機能、例えばI/O機能、グラフィックス機能、ネットワーク機能等を実行
するようにプログラムすることができる。再構成可能なコンピュータのオペレーティング
システム内のこの種の特徴の目的は、複数グループのプログラマブルロジックリソース中
において多様なタスクを同時に処理するタスクを管理することを補助することである。他
方、従来のコンピュータのオペレーティングシステムにおいて、CPUスケジューリング
能力の第一の目的は、与えられたある時点において能動である種々のタスクによって高い
処理能力が要求されるために生じるマイクロプロセッサの停止を削減することである。
ックリソースを各アプリケーション機能に配分することができるタイムマルチプレクシン
グを使用することができる。このことは、予め設定された時間間隔における異なった機能
間の切換えを含むことができる。重要な例外は、リアルタイムインタラプトとI/O機能
である。
る機能が1つもスケジューリングされていない場合、機能先取りが、機能が要求される前
にプログラマブルリソースを構成データとともにロードし得るようにするためのプログラ
マブルロジックリソース構成オーバヘッドに関連する時間コストを最小化することを補助
する。
されているプログラマブルロジックデバイスにおいてミリ秒の単位である。必要であれば
、プログラマブルロジックデバイスを構成するために必要とされる時間は、増加されたパ
イプラインおよび並列性をデバイス上において使用することによって縮小(例えば、ナノ
秒の単位まで)することができる。
システムは、システム内で使用することができるプログラマブルロジックの数が比較的大
きいため、比較的大きな処理能力を備えると言う利点を有する。再構成可能なシステムに
おいて、より多くの処理能力が必要とされる場合、単に相互接続ネットワーク上により多
くのプログラマブルロジックデバイスを追加すれば良い。システムにより多くのプログラ
マブルロジックデバイスを追加した後アプリケーションを再度コンパイルする必要はなく
、これはランタイムマネージャが新しいハードウェアを自動的に検出してランタイム実行
能力の中に組み込むからである。これらのデバイスの全てが仮想コンピュータオペレーテ
ィングシステムを使用して制御および監視される。
に対してスケジューリングされた次の機能を決定することができる。加えて、その時点で
実行している機能の優先度もスケジューリングされる次の機能の決定に使用される。
従来のコンピュータにおいて、ハードドライブ等の記憶装置はドライブ上のリソースが継
続的に配分および消去されることによって生じる問題を防止するためにデフラグメントす
ることが可能であった。従来のハードドライブ上の消去されたスペースは、連続する大き
なスペースを必要とする機能に対して再配分するために充分なスペースを有してないこと
があり得る。本発明によれば、単一のプログラマブルロジックデバイスの部分構成をデフ
ラグメントするためにプログラマブルロジックデフラグメンテーションを使用することが
できる。これによって、予め配分された多数の小さなプログラマブルロジックの領域を使
用可能なプログラマブルロジックのより大きな稼動領域を形成するために再配分すること
が可能になる。このことは、プログラマブルロジックの多様な部分への特定の各スイッチ
に対して再構成データを再配分して所要のプログラマブルロジックデバイス機能を提供す
ることを含んでいる。
スは、演算システムを使用する重要な部分である。複雑な機能を実行するとともにユーザ
が演算システムと相互交信するための複雑なインタフェースを形成することが重要である
。最も一般的な開発ツールは、JAVA(登録商標)、C++、ADA、LISP、CO
BOL、VISUAL BACIC等の高級プログラム言語を含んでいる。ソフトウェア
開発プロセス中における一貫性を保持するため、再構成可能なコンピュータシステムに対
する高級言語は、従来の高級プログラミング言語の原理を使用して設計されている。
アプリケーションは、ある機能をレンダリングサーフェイスのために使用し、その他の機
能を光線追跡のために使用することができる。仮想コンピュータオペレーティングシステ
ムは、プログラマブルロジックデバイスリソースをアプリケーションの機能に対して配分
する。
そのアプリケーションを実行するいずれかの特定のシステムがいくつのプログラマブルロ
ジックデバイスリソースを有しているかを考慮する必要はない。むしろ、少なくとも1つ
のプログラマブルロジックデバイスの最小リソース要求に従って、全てのリソースを使用
可能とする概念が形成される。
概念(すなわち、このアプリケーションに対するハードウェア描写言語は、ハードウェア
182のユニットとして示されているプログラマブルロジックリソースまたはプログラマ
ブルロジックリソースの集合体内で実行される構成データのブロックにコンパイルされる
と仮定する)に基づいてHDLコンパイラ180によってコンパイルされる。ユニットハ
ードウェア182は、例えば、単一のプログラマブルロジックデバイスまたは単一のプロ
グラマブルロジックデバイスの一部分とすることができる。HDLコンパイラ180は、
構成データを伴ったVC−OS184を構成データのブロックの形式で提供し、ここで各
ブロックはユニットハードウェア182に適合するものである。VC−OS184は必要
に応じてプログラマブルロジックデバイスリソースを前記のブロック(これらが機能を形
成し、さらにこれがアプリケーションを形成する)に配分する。
プログラマブルロジックリソース186を有し、アプリケーションのブロック2に配分さ
れたプログラマブルロジックリソース188を有し、・・・アプリケーションのブロック
nに配分されたプログラマブルロジックリソース190を有する。ロジックリソース18
0,188,および190等のロジックリソースは、それぞれ単一のプログラマブルロジ
ックデバイスに基づくか、それぞれプログラマブルロジックデバイスの一部分に基づくか
、それぞれそのようなデバイス構成組み合わせに基づくか、またはそれぞれ他の好適なロ
ジックリソースに基づくものとすることができる。配分されるリソースはシステム毎ある
いはあるシステムにおいてもランタイム毎に変化することができるが、HDLコンパイラ
180は不変のユニットハードウェア概念に基づいてアプリケーションをコンパイルする
ことができる。仮想ロジックマネージャは、特定のプログラマブルロジックリソースが限
られている場合、その中の構成データのブロックを交換することができる。さらに、図5
Bに示されているように、VC−OSは1つのプログラマブルロジックデバイスリソース
を複数の構成データのブロックに配分することができる。
なハードウェア構造上での実行が詳細に示されている。仕様(アルゴリズム)70、拘束
のセット74、およびリソースライブラリ76がソフトウェア開発ツール192上に入力
として提供される。仕様は、システム設計言語で書くことができる。仕様において、アプ
リケーション技術者はシステム設計言語によって提供されるツールを使用してアプリケー
ションを書くだけで良い。アプリケーション技術者は、システム設計言語によって作成さ
れた機能のソフトウェアバージョンならびにハードウェアバージョンを考慮する必要はな
い。分割手段72は仕様70をソフトウェア機能78およびハードウェア機能80に分割
することができる。その結果、各機能は完全にソフトウェア上(例えばマイクロプロセッ
サ)で実行するか、完全にハードウェア上(例えばプログラマブルロジックデバイス)で
実行するか、またはそれらの組み合わせとすることができる。それぞれの機能的分割部分
に対してソフトウェア操作およびハードウェア操作の両方が形成され、これは所要の部分
手段を実行する決定がランタイムが開始するまで遅延する可能性があるからである。シス
テム設計言語プロファイラは、システム設計言語コード上で実行され重要なパスの分析お
よび区分の割当てを行うこともできる。
る。第1に、システム設計言語仕様70の機能的限界は、機能間のタイミング関係を含む
ことができ、機能間に並行または連続的拘束が存在することも可能である。第2に、コス
ト関数はリソースライブラリ76内のハードウェアリソースを使用することに関連付けら
れる。リソースライブラリ76は、使用可能な各ハードウェアリソースついての詳細を含
んでいる(一般的にこれらはマイクロプロセッサ、メモリ、およびプログラマブルロジッ
クデバイス)。これらは、計算速度、待ち時間、ならびにリソースの応答時間あるいは時
間のコスト関数(通常はソフトウェア手段に対する)、エリア(通常はハードウェア手段
に対する)、または通信(時間およびエリアの両方にまたがる)等を含むことができる。
1例は、リアルタイムI/Oまたはインタラプトプロセスを含む拘束である。“ソフト”
拘束と定義される拘束もあり得る。ソフト拘束の1例は、スプレッドシート内の等差関数
に関連付けられた拘束である。これらの等差関数が特定の時間内に実行されることは重要
でなく、これらの機能が高速に実行されることと、アプリケーションの使用が簡便になる
ことが重要である。
ロセッサは特定のインストラクションセットおよびデータパス幅等の特性を有し、メモリ
は特定のデータパス幅を有し、プログラマブルロジックデバイスは特定のロジック容量な
らびにI/Oカウントを有することができる。分割ツール72はリソースライブラリ76
ならびに拘束74の特性を考慮するが、あるシステム内に各リソースがそれぞれ何個存在
するかは考慮することができない。ランタイムリソースマネージャは、実行中のアプリケ
ーションからの要求に従って機能分割を使用可能なハードウェアリソースにマッピングす
る必要がある。
割されると、これらの機能の間においてパラメータの伝送が可能になるようインタフェー
ス機能86が形成される。これらのインタフェース機能86は、メモリマッピングされた
ハードウェア機能80にパラメータを書き込むソフトウェア手段とするか、またはプログ
ラマブルロジックデバイス内にハードディスクインタフェース回路を構成してファイルシ
ステムの形成を可能にすることを含むことができる。
い。アプリケーション技術者は、ソフトウェアおよびハードウェアの全ての機能を作成す
ることができ、両方を作成できる人とどちらか一方のみを作成できる人が存在する。しか
しながら、最適な組み合わせの機能ならびに手段を選択する際にオペレーティングシステ
ムに柔軟性を与えるために両方のバージョンを有することが好適である。
マッピングする必要がある。このことは、高級言語コンパイラ82を使用してソフトウェ
ア機能78をスレッド88にコンパイルし、ハードウェア表記言語コンパイラ84を使用
してハードウェア機能80を構成パターン90にコンパイルすることを含んでいる。この
ステージにおいて、例えば一定増加(等差および幾何学の両方)、強度低下(例えば、a
+a=2*a、これは考え得るコスト積算段を除去する)、パイプライン化、またはリソ
ース共有等の多様な最適化および節約技術が適用される。
メータアドレスを有するリンカ92)は、主機能と動的に連結された機能を有し、それら
の全てがソフトウェアまたはハードウェア、あるいはその両方において実行される。シス
テム設計言語分割手段72によって形成されるこれらの機能および拘束74は、仮想コン
ピュータオペレーティングシステム94への入力である。
分割することによって、ユーザは設計の流れを単純化することができる。この流れは、機
能的タイミング拘束はまったく受け継がない(これはシステム設計言語によって書かれて
ないためである)。必要であれば、拘束を考慮に入れることも可能である。制御の主的な
流れはマイクロプロセッサ130(またはマイクロプロセッサとしてプログラムされたプ
ログラマブルロジックデバイス)上において実行され、これはプログラマブルロジック1
32上に存在する機能を呼び出すことができる。
目的とするアルゴリズム機能は、プログラマブルロジック132内で実行される機能のた
めに、高級言語114によって書くことができ、高級言語−ハードウェア記載言語コンパ
イラ118を使用してハードウェア記述言語に変換される。ソフトウェア機能とハードウ
ェア機能との間でパラメータを伝送するためのインタフェース機能112も高級言語で書
かれている。
ンカ124内のハードウェア記載言語コンパイラ120からの構成データ126に連結さ
れているスレッド122を形成する。これらの機能は、その後仮想コンピュータオペレー
ティングシステム128によって使用される。
づいて、仮想コンピュータオペレーティングシステムは、特定のアプリケーションを実行
するためにソフトウェア手段、ハードウェア手段、またはその組み合わせのいずれかを使
用するかを決定することができる(実行時間中またはソフトウェア実行中のいずれか)。
このことにより、ソフトウェア上で実行するためにより適した機能がソフトウェアを使用
して実行されるため極めて効果的な処理が可能となり、他方プログラマブルロジックハー
ドウェアデバイスに適した機能はプログラマブルロジックリソースを使用して実行される
。
の視点および概念を逸脱することなく種々の設計変更をなし得ることが理解されよう。
Claims (20)
- 所与のアプリケーションを実行するためにコンピュータシステムの能力を最適化するように再構成可能なプログラマブルロジックリソースを含む再構成可能なコンピュータのリソースを管理する方法であって、
該方法は、仮想ロジックマネージャを用いて該プログラマブルロジックリソースの配分を行う間に、二次記憶装置と該プログラマブルロジックリソースとの間で構成データを交換することを含む、方法。 - 前記再構成可能なコンピュータは、少なくとも1つのプログラマブルロジックデバイス上で実行される中央プロセッシングユニットと、該中央プロセッシングユニットに結合されたプログラマブルロジックとを備え、該プログラマブルロジックは、前記所与のアプリケーションを処理するために前記コンピュータシステムの能力を最適化するように再構成可能である、請求項1に記載の方法。
- 前記再構成可能なコンピュータは、マイクロプロセッサ上で実行される中央プロセッシングユニットと、該中央プロセッシングユニットに結合されたプログラマブルロジックとを備え、
該プログラマブルロジックは、前記所与のアプリケーションを処理するために前記コンピュータシステムの能力を最適化するように再構成可能である、請求項1に記載の方法。 - 前記再構成可能なコンピュータは、マイクロプロセッサ上で部分的に実行され、プログラマブルロジックデバイス上で部分的に実行される中央プロセッシングユニットと、該中央プロセッシングユニットに結合されたプログラマブルロジックとを備え、該プログラマブルロジックは、該所与のアプリケーションを処理するために該コンピュータシステムの能力を最適化するように再構成可能である、請求項1に記載の方法。
- 前記所与のアプリケーションは、複数の機能を含み、前記プログラマブルロジックリソースは、該複数の機能を実行するように配分されている、請求項1に記載の方法。
- 前記プログラマブルロジックリソースの配分は、リソースライブラリによって特定された前記再構成可能なコンピュータのリソースの拘束に基づいて実行される、請求項1に記載の方法。
- 前記配分は、ランタイム中に実行される、請求項6に記載の方法。
- 前記リソースライブラリは、前記プログラマブルロジックリソースの特性を特定する、請求項1に記載の方法。
- 前記所与のアプリケーションは、複数の機能を含み、前記配分を行うことは、該複数の機能をソフトウェア機能およびハードウェア機能に分割することを含む、請求項1に記載の方法。
- 前記ハードウェア機能に分割された前記アプリケーションの機能は、前記プログラマブルロジックリソースによって実行される、請求項9に記載の方法。
- 所与のアプリケーションを実行するためにコンピュータシステムの能力を最適化するように再構成可能なプログラマブルロジックリソースを含む再構成可能なコンピュータのリソースを管理するシステムであって、
該システムは、仮想ロジックマネージャを用いて該プログラマブルロジックリソースの配分を行う間に、二次記憶装置と該プログラマブルロジックリソースとの間で構成データを交換する手段を含む、システム。 - 前記再構成可能なコンピュータは、少なくとも1つのプログラマブルロジックデバイス上で実行される中央プロセッシングユニットと、該中央プロセッシングユニットに結合されたプログラマブルロジックとを備え、該プログラマブルロジックは、前記所与のアプリケーションを処理するために前記コンピュータシステムの能力を最適化するように再構成可能である、請求項11に記載のシステム。
- 前記再構成可能なコンピュータは、マイクロプロセッサ上で実行される中央プロセッシングユニットと、該中央プロセッシングユニットに結合されたプログラマブルロジックとを備え、
該プログラマブルロジックは、前記所与のアプリケーションを処理するために前記コンピュータシステムの能力を最適化するように再構成可能である、請求項11に記載のシステム。 - 前記再構成可能なコンピュータは、マイクロプロセッサ上で部分的に実行され、プログラマブルロジックデバイス上で部分的に実行される中央プロセッシングユニットと、該中央プロセッシングユニットに結合されたプログラマブルロジックとを備え、該プログラマブルロジックは、該所与のアプリケーションを処理するために該コンピュータシステムの能力を最適化するように再構成可能である、請求項11に記載のシステム。
- 前記所与のアプリケーションは、複数の機能を含み、前記プログラマブルロジックリソースは、該複数の機能を実行するように配分されている、請求項11に記載のシステム。
- 前記プログラマブルロジックリソースの配分は、リソースライブラリによって特定された前記再構成可能なコンピュータのリソースの拘束に基づいて実行される、請求項11に記載のシステム。
- 前記配分は、ランタイム中に実行される、請求項16に記載のシステム。
- 前記リソースライブラリは、前記プログラマブルロジックリソースの特性を特定する、請求項11に記載のシステム。
- 前記所与のアプリケーションは、複数の機能を含み、前記配分を行うことは、該複数の機能をソフトウェア機能およびハードウェア機能に分割する手段を含む、請求項11に記載のシステム。
- 前記ハードウェア機能に分割された前記アプリケーションの機能は、前記プログラマブルロジックリソースによって実行される、請求項19に記載のシステム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US10914298P | 1998-11-20 | 1998-11-20 | |
| US60/109,142 | 1998-11-20 |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2011003508A Division JP5509107B2 (ja) | 1998-11-20 | 2011-01-11 | 再構成可能なプログラマブルロジックデバイスコンピュータシステム |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2013246866A Division JP2014059905A (ja) | 1998-11-20 | 2013-11-29 | 再構成可能なプログラマブルロジックデバイスコンピュータシステム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2012252712A true JP2012252712A (ja) | 2012-12-20 |
Family
ID=22326022
Family Applications (5)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2000584401A Pending JP2002530780A (ja) | 1998-11-20 | 1999-11-19 | 再構成可能なプログラマブルロジックデバイスコンピュータシステム |
| JP2010059968A Expired - Fee Related JP5050069B2 (ja) | 1998-11-20 | 2010-03-16 | 再構成可能なプログラマブルロジックデバイスコンピュータシステム |
| JP2011003508A Expired - Fee Related JP5509107B2 (ja) | 1998-11-20 | 2011-01-11 | 再構成可能なプログラマブルロジックデバイスコンピュータシステム |
| JP2012163797A Pending JP2012252712A (ja) | 1998-11-20 | 2012-07-24 | 再構成可能なプログラマブルロジックデバイスコンピュータシステム |
| JP2013246866A Pending JP2014059905A (ja) | 1998-11-20 | 2013-11-29 | 再構成可能なプログラマブルロジックデバイスコンピュータシステム |
Family Applications Before (3)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2000584401A Pending JP2002530780A (ja) | 1998-11-20 | 1999-11-19 | 再構成可能なプログラマブルロジックデバイスコンピュータシステム |
| JP2010059968A Expired - Fee Related JP5050069B2 (ja) | 1998-11-20 | 2010-03-16 | 再構成可能なプログラマブルロジックデバイスコンピュータシステム |
| JP2011003508A Expired - Fee Related JP5509107B2 (ja) | 1998-11-20 | 2011-01-11 | 再構成可能なプログラマブルロジックデバイスコンピュータシステム |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2013246866A Pending JP2014059905A (ja) | 1998-11-20 | 2013-11-29 | 再構成可能なプログラマブルロジックデバイスコンピュータシステム |
Country Status (5)
| Country | Link |
|---|---|
| US (3) | US6658564B1 (ja) |
| EP (3) | EP1351154A2 (ja) |
| JP (5) | JP2002530780A (ja) |
| DE (1) | DE69910826T2 (ja) |
| WO (1) | WO2000031652A2 (ja) |
Families Citing this family (128)
| 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 |
| ATE243390T1 (de) | 1996-12-27 | 2003-07-15 | Pact Inf Tech Gmbh | Verfahren zum selbständigen dynamischen umladen von datenflussprozessoren (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 |
| 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 |
| US9195784B2 (en) * | 1998-08-31 | 2015-11-24 | Cadence Design Systems, Inc. | Common shared memory in a verification system |
| EP1351154A2 (en) | 1998-11-20 | 2003-10-08 | Altera Corporation | Reconfigurable programmable logic device computer system |
| 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 |
| GB0012773D0 (en) * | 2000-05-25 | 2000-07-19 | Radioscape Ltd | Programmable single-chip device and related development environment |
| US6732263B1 (en) * | 2000-06-12 | 2004-05-04 | Altera Corporation | Configuring both a programmable logic device and its embedded logic with a single serialized configuration bit stream |
| AU2001281164A1 (en) * | 2000-08-07 | 2002-02-18 | Altera Corporation | Inter-device communication interface |
| US7343594B1 (en) | 2000-08-07 | 2008-03-11 | Altera Corporation | Software-to-hardware compiler with symbol set inference analysis |
| JP2004512716A (ja) * | 2000-10-02 | 2004-04-22 | アルテラ・コーポレイション | 専用プロセッサ装置を含むプログラマブルロジック集積回路装置 |
| AU2002220600A1 (en) | 2000-10-06 | 2002-04-15 | Pact Informationstechnologie Gmbh | Cell system with segmented intermediate cell structure |
| US8058899B2 (en) | 2000-10-06 | 2011-11-15 | Martin Vorbach | Logic cell array and bus system |
| WO2002031678A2 (en) * | 2000-10-12 | 2002-04-18 | Celoxica Limited | System and method for an operating system in a reconfigurable logic device |
| NZ508052A (en) | 2000-11-09 | 2003-06-30 | Derek Ward | Programmable controller |
| GB0028079D0 (en) * | 2000-11-17 | 2001-01-03 | Imperial College | System and method |
| US7213231B1 (en) * | 2001-01-11 | 2007-05-01 | Cisco Technology, Inc. | Cross-spectrum application model for dynamic computing environments in software lifecycle |
| EP1229445A1 (de) * | 2001-02-02 | 2002-08-07 | Cluster Labs GmbH | Verfahren zum Betreiben eines Rechnersystems und Vorrichtung |
| US9141390B2 (en) | 2001-03-05 | 2015-09-22 | Pact Xpp Technologies Ag | Method of processing data with an array of data processors according to application ID |
| US9411532B2 (en) | 2001-09-07 | 2016-08-09 | Pact Xpp Technologies Ag | Methods and systems for transferring data between a processing device and external devices |
| US7844796B2 (en) | 2001-03-05 | 2010-11-30 | Martin Vorbach | Data processing device and method |
| US9552047B2 (en) | 2001-03-05 | 2017-01-24 | Pact Xpp Technologies Ag | Multiprocessor having runtime adjustable clock and clock dependent power supply |
| US7581076B2 (en) | 2001-03-05 | 2009-08-25 | Pact Xpp Technologies Ag | Methods and devices for treating and/or processing data |
| US9436631B2 (en) | 2001-03-05 | 2016-09-06 | Pact Xpp Technologies Ag | Chip including memory element storing higher level memory data on a page by page basis |
| US9037807B2 (en) | 2001-03-05 | 2015-05-19 | Pact Xpp Technologies Ag | Processor arrangement on a chip including data processing, memory, and interface elements |
| US9250908B2 (en) | 2001-03-05 | 2016-02-02 | Pact Xpp Technologies Ag | Multi-processor bus and cache interconnection system |
| US7444531B2 (en) | 2001-03-05 | 2008-10-28 | Pact Xpp Technologies Ag | Methods and devices for treating and processing data |
| US7840777B2 (en) * | 2001-05-04 | 2010-11-23 | Ascenium Corporation | Method and apparatus for directing a computational array to execute a plurality of successive computational array instructions at runtime |
| WO2002103532A2 (de) | 2001-06-20 | 2002-12-27 | Pact Xpp Technologies Ag | Verfahren zur bearbeitung von daten |
| US10031733B2 (en) | 2001-06-20 | 2018-07-24 | Scientia Sol Mentis Ag | Method for processing data |
| US20030033374A1 (en) * | 2001-07-24 | 2003-02-13 | Condor Engineering, Inc. | Method and system for implementing a communications core on a single programmable device |
| DE10139610A1 (de) | 2001-08-11 | 2003-03-06 | Daimler Chrysler Ag | Universelle Rechnerarchitektur |
| 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 |
| US7257815B2 (en) * | 2001-09-05 | 2007-08-14 | Microsoft Corporation | Methods and system of managing concurrent access to multiple resources |
| US20030056091A1 (en) * | 2001-09-14 | 2003-03-20 | Greenberg Craig B. | Method of scheduling in a reconfigurable hardware architecture with multiple hardware configurations |
| US8686475B2 (en) | 2001-09-19 | 2014-04-01 | Pact Xpp Technologies Ag | Reconfigurable elements |
| US7577822B2 (en) | 2001-12-14 | 2009-08-18 | Pact Xpp Technologies Ag | Parallel task operation in processor and reconfigurable coprocessor configured based on information in link list including termination information for synchronization |
| US7768522B2 (en) | 2002-01-08 | 2010-08-03 | Apple Inc. | Virtualization of graphics resources and thread blocking |
| US6809735B1 (en) * | 2002-01-08 | 2004-10-26 | Apple Computer, Inc. | Virtualization of graphics resources |
| US7015919B1 (en) * | 2002-01-08 | 2006-03-21 | Apple Computer, Inc. | Virtualization of graphics resources |
| US6809736B1 (en) * | 2002-01-08 | 2004-10-26 | Apple Computer, Inc. | Virtualization of graphics resources |
| AU2003208266A1 (en) * | 2002-01-19 | 2003-07-30 | Pact Xpp Technologies Ag | Reconfigurable processor |
| WO2003071432A2 (de) | 2002-02-18 | 2003-08-28 | Pact Xpp Technologies Ag | Bussysteme und rekonfigurationsverfahren |
| US8914590B2 (en) | 2002-08-07 | 2014-12-16 | Pact Xpp Technologies Ag | Data processing method and device |
| US9170812B2 (en) | 2002-03-21 | 2015-10-27 | Pact Xpp Technologies Ag | Data processing system having integrated pipelined array data processor |
| US7657861B2 (en) | 2002-08-07 | 2010-02-02 | Pact Xpp Technologies Ag | Method and device for processing data |
| AU2003286131A1 (en) | 2002-08-07 | 2004-03-19 | Pact Xpp Technologies Ag | Method and device for processing data |
| WO2004038599A1 (de) | 2002-09-06 | 2004-05-06 | Pact Xpp Technologies Ag | Rekonfigurierbare sequenzerstruktur |
| US7194615B2 (en) * | 2002-09-17 | 2007-03-20 | Nokia Corporation | Reconfigurable apparatus being configurable to operate in a logarithmic scale |
| US8276135B2 (en) * | 2002-11-07 | 2012-09-25 | Qst Holdings Llc | Profiling of software and circuit designs utilizing data operation analyses |
| US7424710B1 (en) * | 2002-12-18 | 2008-09-09 | Vmware, Inc. | TCP/IP offloading for virtual machines |
| US8639487B1 (en) * | 2003-03-25 | 2014-01-28 | Cadence Design Systems, Inc. | Method for multiple processor system-on-a-chip hardware and software cogeneration |
| JP4665760B2 (ja) * | 2003-06-25 | 2011-04-06 | 日本電気株式会社 | 電子計算機、半導体集積回路、制御方法、プログラムの生成方法、及びプログラム |
| JP4700611B2 (ja) | 2003-08-28 | 2011-06-15 | ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト | データ処理装置およびデータ処理方法 |
| GB2407178B (en) * | 2003-10-17 | 2006-07-12 | Toshiba Res Europ Ltd | Reconfigurable signal processing module |
| US7986328B2 (en) * | 2004-02-26 | 2011-07-26 | Hewlett-Packard Development Company, L.P. | Graphics optimization system and method |
| JP4497993B2 (ja) | 2004-04-16 | 2010-07-07 | 株式会社日立製作所 | 電子配付物の配付制御システム及び方法 |
| JP2005309644A (ja) | 2004-04-20 | 2005-11-04 | Hitachi Ltd | リソース制御方法及びそのシステム |
| US8719837B2 (en) * | 2004-05-19 | 2014-05-06 | Synopsys, Inc. | Microprocessor architecture having extendible logic |
| US7623660B1 (en) | 2004-07-20 | 2009-11-24 | Xilinx, Inc. | Method and system for pipelined decryption |
| ATE412932T1 (de) | 2004-09-03 | 2008-11-15 | Derek Ward | Verbesserungen an numerischen steuerungen und verwandten elektronischen geräten |
| US7328335B1 (en) | 2004-10-01 | 2008-02-05 | Xilinx, Inc. | Bootable programmable logic device for internal decoding of encoded configuration data |
| US7689726B1 (en) * | 2004-10-01 | 2010-03-30 | Xilinx, Inc. | Bootable integrated circuit device for readback encoding of configuration data |
| US7199608B1 (en) * | 2005-02-17 | 2007-04-03 | Xilinx, Inc. | Programmable logic device and method of configuration |
| US20060200603A1 (en) * | 2005-03-01 | 2006-09-07 | Naoto Kaneko | Dynamic resource allocation for a reconfigurable IC |
| US7805593B1 (en) * | 2005-03-24 | 2010-09-28 | Xilinx, Inc. | Real-time performance monitoring using a system implemented in an integrated circuit |
| US7774299B2 (en) * | 2005-05-09 | 2010-08-10 | Microsoft Corporation | Flow computing |
| DE102005021749A1 (de) * | 2005-05-11 | 2006-11-16 | Fachhochschule Dortmund | Verfahren und Vorrichtung zur programmgesteuerten Informationsverarbeitung |
| US9874923B1 (en) * | 2005-05-30 | 2018-01-23 | Invent.Ly, Llc | Power management for a self-powered device scheduling a dynamic process |
| US7650603B2 (en) * | 2005-07-08 | 2010-01-19 | Microsoft Corporation | Resource management for virtualization of graphics adapters |
| US7443196B2 (en) | 2005-07-15 | 2008-10-28 | Tabula, Inc. | Configuration network for a configurable IC |
| US9049243B2 (en) * | 2005-09-28 | 2015-06-02 | Photobucket Corporation | System and method for allowing a user to opt for automatic or selectively sending of media |
| US9009265B2 (en) * | 2005-09-28 | 2015-04-14 | Photobucket Corporation | System and method for automatic transfer of data from one device to another |
| KR20080068647A (ko) * | 2005-09-28 | 2008-07-23 | 온텔라, 인크. | 이형, 분산 컴퓨팅 시스템에 서비스 애플리케이션 실행환경을 형성하기 위한 방법 및 시스템, 그리고 상기 서비스애플리케이션 실행 환경에서 실행하는 사용자 친화적데이터 전달 서비스 애플리케이션 |
| JP5016807B2 (ja) * | 2005-10-07 | 2012-09-05 | 株式会社日立ハイテクノロジーズ | データ処理システム |
| US7769929B1 (en) * | 2005-10-28 | 2010-08-03 | Altera Corporation | Design tool selection and implementation of port adapters |
| US7779286B1 (en) | 2005-10-28 | 2010-08-17 | Altera Corporation | Design tool clock domain crossing management |
| JP4978006B2 (ja) | 2006-01-05 | 2012-07-18 | 日本電気株式会社 | データ処理装置及びデータ処理方法 |
| WO2007082730A1 (de) | 2006-01-18 | 2007-07-26 | Pact Xpp Technologies Ag | Hardwaredefinitionsverfahren |
| US7379777B2 (en) * | 2006-01-24 | 2008-05-27 | National Instruments Corporation | System and method for automatically updating the memory map of a programmable logic controller to customized hardware |
| JP2007207136A (ja) | 2006-02-06 | 2007-08-16 | Nec Corp | データ処理装置、データ処理方法、及びデータ処理プログラム |
| US7533362B1 (en) * | 2006-03-20 | 2009-05-12 | Altera Corporation | Allocating hardware resources for high-level language code sequences |
| US7636796B2 (en) * | 2006-09-15 | 2009-12-22 | Microsoft Corporation | Smart interconnect for modular multi-component embedded devices |
| US9665970B2 (en) * | 2006-09-19 | 2017-05-30 | Imagination Technologies Limited | Variable-sized concurrent grouping for multiprocessing |
| US9424270B1 (en) | 2006-09-28 | 2016-08-23 | Photobucket Corporation | System and method for managing media files |
| KR100883655B1 (ko) * | 2006-12-04 | 2009-02-18 | 삼성전자주식회사 | 재구성 가능한 프로세서를 갖는 문맥 교환 시스템 및 방법 |
| US8103987B2 (en) * | 2007-03-09 | 2012-01-24 | Mips Technologies, Inc. | System and method for managing the design and configuration of an integrated circuit semiconductor design |
| US20080222581A1 (en) * | 2007-03-09 | 2008-09-11 | Mips Technologies, Inc. | Remote Interface for Managing the Design and Configuration of an Integrated Circuit Semiconductor Design |
| US7839162B2 (en) | 2007-06-27 | 2010-11-23 | Tabula, Inc. | Configurable IC with deskewing circuits |
| US7595655B2 (en) | 2007-06-27 | 2009-09-29 | Tabula, Inc. | Retrieving data from a configurable IC |
| US8069425B2 (en) | 2007-06-27 | 2011-11-29 | Tabula, Inc. | Translating a user design in a configurable IC for debugging the user design |
| US8990651B2 (en) | 2007-09-19 | 2015-03-24 | Tabula, Inc. | Integrated circuit (IC) with primary and secondary networks and device containing such an IC |
| US20090106755A1 (en) * | 2007-10-19 | 2009-04-23 | Sundeep Chandhoke | Programmable Controller with Multiple Processors Using Scanning and Data Acquisition Architectures |
| US9336051B2 (en) * | 2007-10-19 | 2016-05-10 | National Instruments Corporation | Programmable controller with multiple processors using a scanning architecture |
| JP5119902B2 (ja) * | 2007-12-19 | 2013-01-16 | 富士通セミコンダクター株式会社 | 動的再構成支援プログラム、動的再構成支援方法、動的再構成回路、動的再構成支援装置および動的再構成システム |
| US8429394B1 (en) | 2008-03-12 | 2013-04-23 | Stone Ridge Technology | Reconfigurable computing system that shares processing between a host processor and one or more reconfigurable hardware modules |
| WO2009151445A1 (en) * | 2008-06-10 | 2009-12-17 | Hewlett-Packard Development Company, L.P. | Method and apparatus for configuring a hypervisor during a downtime state |
| WO2010016857A1 (en) | 2008-08-04 | 2010-02-11 | Tabula, Inc. | Trigger circuits and event counters for an ic |
| WO2010049910A2 (en) * | 2008-10-30 | 2010-05-06 | Nokia Corporation | Software defined radio |
| JP5507136B2 (ja) * | 2009-07-09 | 2014-05-28 | 株式会社日立製作所 | 管理装置及び方法並びに計算機システム |
| US8072234B2 (en) | 2009-09-21 | 2011-12-06 | Tabula, Inc. | Micro-granular delay testing of configurable ICs |
| US20110106522A1 (en) * | 2009-11-05 | 2011-05-05 | Chinya Gautham N | virtual platform for prototyping system-on-chip designs |
| JP5371109B2 (ja) * | 2010-02-23 | 2013-12-18 | 日本電気株式会社 | 移行方法 |
| US8364946B2 (en) * | 2010-03-22 | 2013-01-29 | Ishebabi Harold | Reconfigurable computing system and method of developing application for deployment on the same |
| DE102010035102A1 (de) * | 2010-08-23 | 2012-04-19 | Bürkert Werke GmbH | Steuergerät für fluidische Systeme |
| US9553590B1 (en) | 2012-10-29 | 2017-01-24 | Altera Corporation | Configuring programmable integrated circuit device resources as processing elements |
| KR102014721B1 (ko) * | 2013-01-29 | 2019-10-21 | 삼성전자 주식회사 | 어플리케이션과 비즈니스 요구에 기반한 프로그램 가능한 지능적 스토리지 아키텍처 |
| US9577643B1 (en) | 2013-11-26 | 2017-02-21 | Altera Corporation | Secure partial reconfiguration regions |
| US10452392B1 (en) | 2015-01-20 | 2019-10-22 | Altera Corporation | Configuring programmable integrated circuit device resources as processors |
| US9805152B1 (en) * | 2016-02-17 | 2017-10-31 | Xilinx, Inc. | Compilation of system designs |
| US10110233B2 (en) | 2016-06-23 | 2018-10-23 | Altera Corporation | Methods for specifying processor architectures for programmable integrated circuits |
| US10394990B1 (en) * | 2016-09-27 | 2019-08-27 | Altera Corporation | Initial condition support for partial reconfiguration |
| US11099894B2 (en) | 2016-09-28 | 2021-08-24 | Amazon Technologies, Inc. | Intermediate host integrated circuit between virtual machine instance and customer programmable logic |
| US10338135B2 (en) | 2016-09-28 | 2019-07-02 | Amazon Technologies, Inc. | Extracting debug information from FPGAs in multi-tenant environments |
| US10162921B2 (en) | 2016-09-29 | 2018-12-25 | Amazon Technologies, Inc. | Logic repository service |
| US10282330B2 (en) | 2016-09-29 | 2019-05-07 | Amazon Technologies, Inc. | Configurable logic platform with multiple reconfigurable regions |
| US10250572B2 (en) | 2016-09-29 | 2019-04-02 | Amazon Technologies, Inc. | Logic repository service using encrypted configuration data |
| US10642492B2 (en) | 2016-09-30 | 2020-05-05 | Amazon Technologies, Inc. | Controlling access to previously-stored logic in a reconfigurable logic device |
| US10423438B2 (en) * | 2016-09-30 | 2019-09-24 | Amazon Technologies, Inc. | Virtual machines controlling separate subsets of programmable hardware |
| US11115293B2 (en) | 2016-11-17 | 2021-09-07 | Amazon Technologies, Inc. | Networked programmable logic service provider |
| KR102559581B1 (ko) * | 2018-05-23 | 2023-07-25 | 삼성전자주식회사 | 재구성 가능 로직을 포함하는 스토리지 장치 및 상기 스토리지 장치의 동작 방법 |
| US10891132B2 (en) * | 2019-05-23 | 2021-01-12 | Xilinx, Inc. | Flow convergence during hardware-software design for heterogeneous and programmable devices |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH04355867A (ja) * | 1991-05-31 | 1992-12-09 | Oki Electric Ind Co Ltd | 分散処理方式 |
| JPH0784754A (ja) * | 1993-09-14 | 1995-03-31 | Toshiba Corp | 電子計算機 |
| JPH07503804A (ja) * | 1992-12-11 | 1995-04-20 | ナシヨナル テクノロジー,インコーポレイテッド | マイクロプロセッサと再構成可能命令実行手段とを備えた動的構成可能ゲートアレイで構成される集積回路演算装置およびその方法 |
| JPH08305547A (ja) * | 1995-05-11 | 1996-11-22 | Oki Electric Ind Co Ltd | Pldによるコンピュータおよびコンパイラおよびオペレーティングシステム |
| JPH1078932A (ja) * | 1996-09-04 | 1998-03-24 | Hitachi Ltd | リコンフィグラブル・ネットワークコンピュータ |
| JPH11232081A (ja) * | 1998-02-12 | 1999-08-27 | Fuji Xerox Co Ltd | 情報処理システムおよび情報処理方法 |
Family Cites Families (54)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB1444084A (en) | 1972-06-21 | 1976-07-28 | Honeywell Inf Systems | Generalized logic device |
| US5142625A (en) | 1985-06-12 | 1992-08-25 | Minolta Camera Kabushiki Kaisha | One-chip microcomputer including a programmable logic array for interrupt control |
| US5134884A (en) * | 1986-05-02 | 1992-08-04 | Forrest Anderson | Single pulse imaging device |
| US5068823A (en) * | 1988-07-11 | 1991-11-26 | Star Semiconductor Corporation | Programmable integrated circuit using topological and parametric data to selectively connect and configure different high level functional blocks thereof |
| DE69031257T2 (de) * | 1989-09-21 | 1998-02-12 | Texas Instruments Inc | Integrierte Schaltung mit einem eingebetteten digitalen Signalprozessor |
| US5128871A (en) | 1990-03-07 | 1992-07-07 | Advanced Micro Devices, Inc. | Apparatus and method for allocation of resoures in programmable logic devices |
| US5541849A (en) | 1990-04-06 | 1996-07-30 | Lsi Logic Corporation | Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including estimation and comparison of timing parameters |
| JPH04314133A (ja) * | 1991-04-11 | 1992-11-05 | Nec Corp | 情報処理装置 |
| US5579530A (en) * | 1992-06-11 | 1996-11-26 | Intel Corporation | Method and apparatus for dynamically allocating access time to a resource shared between a peripheral bus and a host bus by dynamically controlling the size of burst data transfers on the peripheral bus |
| US5684980A (en) * | 1992-07-29 | 1997-11-04 | Virtual Computer Corporation | FPGA virtual computer for executing a sequence of program instructions by successively reconfiguring a group of FPGA in response to those instructions |
| US5442792A (en) | 1992-08-07 | 1995-08-15 | Hughes Aircraft Company | Expert system compilation method |
| GB9223226D0 (en) * | 1992-11-05 | 1992-12-16 | Algotronix Ltd | Improved configurable cellular array (cal ii) |
| US5535342A (en) * | 1992-11-05 | 1996-07-09 | Giga Operations Corporation | Pld connector for module having configuration of either first PLD or second PLD and reconfigurable bus for communication of two different bus protocols |
| JPH06301522A (ja) * | 1993-04-09 | 1994-10-28 | Sony Corp | 計算機システム構成方法 |
| US5535406A (en) * | 1993-12-29 | 1996-07-09 | Kolchinsky; Alexander | Virtual processor module including a reconfigurable programmable matrix |
| US6044211A (en) | 1994-03-14 | 2000-03-28 | C.A.E. Plus, Inc. | Method for graphically representing a digital device as a behavioral description with data and control flow elements, and for converting the behavioral description to a structural description |
| US5761484A (en) | 1994-04-01 | 1998-06-02 | Massachusetts Institute Of Technology | Virtual interconnections for reconfigurable logic systems |
| US5484740A (en) * | 1994-06-06 | 1996-01-16 | Motorola, Inc. | Method of manufacturing a III-V semiconductor gate structure |
| US5548228A (en) * | 1994-09-28 | 1996-08-20 | Altera Corporation | Reconfigurable programmable logic device having static and non-volatile memory |
| GB9508931D0 (en) * | 1995-05-02 | 1995-06-21 | Xilinx Inc | Programmable switch for FPGA input/output signals |
| US5646545A (en) | 1995-08-18 | 1997-07-08 | Xilinx, Inc. | Time multiplexed programmable logic device |
| US5859878A (en) * | 1995-08-31 | 1999-01-12 | Northrop Grumman Corporation | Common receive module for a programmable digital radio |
| KR0180058B1 (ko) * | 1995-09-13 | 1999-04-01 | 이민화 | Cine메모리에 데이타를 압축 저장하는 초음파진단장치 |
| SE505783C2 (sv) | 1995-10-03 | 1997-10-06 | Ericsson Telefon Ab L M | Förfarande för att tillverka en digital signalprocessor |
| US5819064A (en) | 1995-11-08 | 1998-10-06 | President And Fellows Of Harvard College | Hardware extraction technique for programmable reduced instruction set computers |
| JP3075166B2 (ja) * | 1996-02-13 | 2000-08-07 | 日本電気株式会社 | 遠隔保守システム |
| GB9607528D0 (en) * | 1996-04-11 | 1996-06-12 | Int Computers Ltd | Integrated circuit processor |
| US5968161A (en) * | 1996-08-29 | 1999-10-19 | Altera Corporation | FPGA based configurable CPU additionally including second programmable section for implementation of custom hardware support |
| GB2317245A (en) | 1996-09-12 | 1998-03-18 | Sharp Kk | Re-timing compiler integrated circuit design |
| US5946219A (en) * | 1996-10-30 | 1999-08-31 | Atmel Corporation | Method and system for configuring an array of logic devices |
| US5822570A (en) * | 1996-10-30 | 1998-10-13 | Microsoft Corporation | System and method for parsing and executing a single instruction stream using a plurality of tightly coupled parsing and execution units |
| JPH10171645A (ja) * | 1996-12-12 | 1998-06-26 | Fujitsu Ltd | 情報処理装置 |
| DE19654593A1 (de) * | 1996-12-20 | 1998-07-02 | Pact Inf Tech Gmbh | Umkonfigurierungs-Verfahren für programmierbare Bausteine zur Laufzeit |
| US5835734A (en) * | 1997-03-07 | 1998-11-10 | California Institute Of Technology | Electronic processing and control system with programmable hardware |
| JP3125863B2 (ja) * | 1997-04-01 | 2001-01-22 | 富士ゼロックス株式会社 | 印刷処理装置 |
| US6219149B1 (en) | 1997-04-01 | 2001-04-17 | Fuji Xerox Co., Ltd. | Print processing apparatus |
| US6085317A (en) * | 1997-08-15 | 2000-07-04 | Altera Corporation | Reconfigurable computer architecture using programmable logic devices |
| 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 |
| US6608638B1 (en) | 2000-02-07 | 2003-08-19 | National Instruments Corporation | System and method for configuring a programmable hardware instrument to perform measurement functions utilizing estimation of the hardware implentation and management of hardware resources |
| US6219628B1 (en) * | 1997-08-18 | 2001-04-17 | National Instruments Corporation | System and method for configuring an instrument to perform measurement functions utilizing conversion of graphical programs into hardware implementations |
| US6226776B1 (en) | 1997-09-16 | 2001-05-01 | Synetry Corporation | System for converting hardware designs in high-level programming language to hardware implementations |
| US6011740A (en) * | 1998-03-04 | 2000-01-04 | Xilinx, Inc. | Structure and method for providing additional configuration memories on an FPGA |
| US5999990A (en) * | 1998-05-18 | 1999-12-07 | Motorola, Inc. | Communicator having reconfigurable resources |
| US6282627B1 (en) * | 1998-06-29 | 2001-08-28 | Chameleon Systems, Inc. | Integrated processor and programmable data path chip for reconfigurable computing |
| EP1351154A2 (en) | 1998-11-20 | 2003-10-08 | Altera Corporation | Reconfigurable programmable logic device computer system |
| GB9828381D0 (en) | 1998-12-22 | 1999-02-17 | Isis Innovation | Hardware/software codesign system |
| US6068823A (en) * | 1999-01-15 | 2000-05-30 | The University Of Houston System | Process for the benign direct fixation and conversion of nitrogen oxides |
| US6477683B1 (en) | 1999-02-05 | 2002-11-05 | Tensilica, Inc. | Automated processor generation system for designing a configurable processor and method for the same |
| WO2000063719A1 (en) | 1999-04-20 | 2000-10-26 | Synthes Ag Chur | Device for the percutaneous obtainment of 3d-coordinates on the surface of a human or animal organ |
| US6457173B1 (en) | 1999-08-20 | 2002-09-24 | Hewlett-Packard Company | Automatic design of VLIW instruction formats |
| US6745160B1 (en) | 1999-10-08 | 2004-06-01 | Nec Corporation | Verification of scheduling in the presence of loops using uninterpreted symbolic simulation |
| US6625797B1 (en) | 2000-02-10 | 2003-09-23 | Xilinx, Inc. | Means and method for compiling high level software languages into algorithmically equivalent hardware representations |
| US6510546B1 (en) * | 2000-07-13 | 2003-01-21 | Xilinx, Inc. | Method and apparatus for pre-routing dynamic run-time reconfigurable logic cores |
| AU2001281164A1 (en) | 2000-08-07 | 2002-02-18 | Altera Corporation | Inter-device communication interface |
-
1999
- 1999-11-19 EP EP03010241A patent/EP1351154A2/en not_active Withdrawn
- 1999-11-19 EP EP99962804A patent/EP1138001B1/en not_active Expired - Lifetime
- 1999-11-19 EP EP03010240A patent/EP1351153A3/en not_active Withdrawn
- 1999-11-19 DE DE69910826T patent/DE69910826T2/de not_active Expired - Fee Related
- 1999-11-19 US US09/443,971 patent/US6658564B1/en not_active Expired - Lifetime
- 1999-11-19 WO PCT/US1999/027485 patent/WO2000031652A2/en not_active Ceased
- 1999-11-19 JP JP2000584401A patent/JP2002530780A/ja active Pending
-
2003
- 2003-09-19 US US10/666,948 patent/US7171548B2/en not_active Ceased
-
2009
- 2009-01-30 US US12/322,325 patent/USRE42444E1/en not_active Expired - Lifetime
-
2010
- 2010-03-16 JP JP2010059968A patent/JP5050069B2/ja not_active Expired - Fee Related
-
2011
- 2011-01-11 JP JP2011003508A patent/JP5509107B2/ja not_active Expired - Fee Related
-
2012
- 2012-07-24 JP JP2012163797A patent/JP2012252712A/ja active Pending
-
2013
- 2013-11-29 JP JP2013246866A patent/JP2014059905A/ja active Pending
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH04355867A (ja) * | 1991-05-31 | 1992-12-09 | Oki Electric Ind Co Ltd | 分散処理方式 |
| JPH07503804A (ja) * | 1992-12-11 | 1995-04-20 | ナシヨナル テクノロジー,インコーポレイテッド | マイクロプロセッサと再構成可能命令実行手段とを備えた動的構成可能ゲートアレイで構成される集積回路演算装置およびその方法 |
| JPH0784754A (ja) * | 1993-09-14 | 1995-03-31 | Toshiba Corp | 電子計算機 |
| JPH08305547A (ja) * | 1995-05-11 | 1996-11-22 | Oki Electric Ind Co Ltd | Pldによるコンピュータおよびコンパイラおよびオペレーティングシステム |
| JPH1078932A (ja) * | 1996-09-04 | 1998-03-24 | Hitachi Ltd | リコンフィグラブル・ネットワークコンピュータ |
| JPH11232081A (ja) * | 1998-02-12 | 1999-08-27 | Fuji Xerox Co Ltd | 情報処理システムおよび情報処理方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2000031652A3 (en) | 2000-12-28 |
| WO2000031652A2 (en) | 2000-06-02 |
| EP1351153A3 (en) | 2008-11-05 |
| JP2014059905A (ja) | 2014-04-03 |
| EP1351154A2 (en) | 2003-10-08 |
| DE69910826T2 (de) | 2004-06-17 |
| USRE42444E1 (en) | 2011-06-07 |
| JP2002530780A (ja) | 2002-09-17 |
| US20040098569A1 (en) | 2004-05-20 |
| JP2011090710A (ja) | 2011-05-06 |
| EP1138001A2 (en) | 2001-10-04 |
| DE69910826D1 (de) | 2003-10-02 |
| JP2010170572A (ja) | 2010-08-05 |
| JP5509107B2 (ja) | 2014-06-04 |
| JP5050069B2 (ja) | 2012-10-17 |
| US6658564B1 (en) | 2003-12-02 |
| EP1351153A2 (en) | 2003-10-08 |
| EP1138001B1 (en) | 2003-08-27 |
| US7171548B2 (en) | 2007-01-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5050069B2 (ja) | 再構成可能なプログラマブルロジックデバイスコンピュータシステム | |
| WO2000031652A9 (en) | Reconfigurable programmable logic device computer system | |
| RU2569805C2 (ru) | Виртуальная архитектура неоднородной памяти для виртуальных машин | |
| CN103530187B (zh) | 为多处理器系统设计程序 | |
| RU2571366C2 (ru) | Виртуальная архитектура неоднородного доступа к памяти для виртуальных машин | |
| US6957435B2 (en) | Method and apparatus for allocating processor resources in a logically partitioned computer system | |
| JP7545211B2 (ja) | 多重経路ニューラルネットワークの複数のレイヤにリソースを割り当てる方法 | |
| US9542231B2 (en) | Efficient execution of parallel computer programs | |
| CN100487659C (zh) | 用于优化分段资源分配的方法和设备 | |
| CN100530079C (zh) | 用于在非均衡存储器存取计算机系统中调度任务的方法和设备 | |
| US20100017761A1 (en) | Data conversion apparatus, data conversion method, and computer-readable recording medium storing program | |
| US20160202999A1 (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 | |
| JP3355184B1 (ja) | エミュレーションシステム上における複数の回路設計の同時エミュレーションのための方法及び装置 | |
| EP1461698A2 (en) | Method of scheduling in a reconfigurable hardware architecture with multiple hardware configurations | |
| KR20090018068A (ko) | 컴퓨팅 장치 및 컴퓨팅 장치 상에서 가상 머신을 구현하기 위한 컴퓨터 실행 가능 명령들을 저장한 컴퓨터 판독 가능 매체 | |
| JP2013546106A (ja) | 分散型コンピューティングアーキテクチャ | |
| US9052957B2 (en) | Method and system for conducting intensive multitask and multiflow calculation in real-time | |
| CN102934081B (zh) | 运行空间方法、系统和装置 | |
| CN119248228A (zh) | 一种实现实时操作系统在嵌入式架构下的驻留方法 | |
| Resano et al. | Run-Time Scheduling for Multimedia Applications on Dynamically Reconfigurable Systems. | |
| Schuttenberg | Linux Kernel Support For Micro-Heterogeneous Computing | |
| Fukuda et al. | MULTIPLE PROGRAMMED |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130903 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130904 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131129 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20131217 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140328 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20140407 |
|
| A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20140620 |