JP2003523077A - 専用のオンチッププロセッサを用いる複数のfpga構成モードのサポート - Google Patents
専用のオンチッププロセッサを用いる複数のfpga構成モードのサポートInfo
- Publication number
- JP2003523077A JP2003523077A JP2001558887A JP2001558887A JP2003523077A JP 2003523077 A JP2003523077 A JP 2003523077A JP 2001558887 A JP2001558887 A JP 2001558887A JP 2001558887 A JP2001558887 A JP 2001558887A JP 2003523077 A JP2003523077 A JP 2003523077A
- Authority
- JP
- Japan
- Prior art keywords
- configuration
- processor
- integrated circuit
- programmable integrated
- program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/34—Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Logic Circuits (AREA)
- Stored Programmes (AREA)
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
Description
に関する。より特定的には、この発明は、メモリベースのフィールドプログラマ
ブルゲートアレイ(FPGA)を構成することに関する。
のユーザ専用回路を実現するためにカスタマイズ可能である汎用のプログラマブ
ルデバイスである。基本的なデバイスアーキテクチャは、構成可能配線構造に埋
込まれかつ構成可能なI/Cブロック(IOB)によって取囲まれるコンフィギ
ュラブルロジックブロック(CLB)のアレイを含む。各IOBは、出力バッフ
ァ、入力バッファまたは双方向バッファとなるよう構成可能である。IOBは、
入力データを登録し、出力データを登録し、かつ/またはトライステート出力を
与えるよう構成可能である。CLBは、多くのロジック機能の1つを行なうよう
構成可能である。たとえば、CLBは、組合せ論理素子、順次論理素子、ルック
アップテーブル、および/または制御マルチプレクサの組合せを実現するよう構
成されてもよい。所望のユーザ専用の回路を実現するために、エンドユーザは、
複数の構成されたCLBおよび複数の構成されたIOBの回路構成を互いに接続
することにより結果としてできた回路が所望のユーザ専用の回路となるよう構成
可能配線構造を構成する。
AのIOB、CLBおよびプログラム可能配線構造は、構成データを関連付けら
れた構成メモリセルにロードすることにより構成される。各IOBおよびCLB
は、関連付けられた構成メモリセルを有し、その内容が、IOBまたはCLBが
どのように構成されるかを決定する。同様に、プログラム可能配線構造は、構成
メモリセルを含む。プログラム可能配線構造は、プログラム可能配線構造におい
てワイヤリングセグメントの接続を制御するプログラム可能点を含む。各プログ
ラム可能配線点は、関連付けられた構成メモリセルによって制御されるパストラ
ンジスタであり得る。パストランジスタの各側のワイヤセグメントは、トランジ
スタが関連付けられた構成メモリセルによってオンにされるかどうかに依存して
接続されたり接続されなかったりする。FPGAに関するさらなる情報は、95
124 カリフォルニア州、サン・ノゼ、ロジック・ドライブ、2100(2100
Logic Drive, San Jose, California 95124)のザイリンクス・インコーポレイ
テッド(Xilinx, Inc.)から入手可能であって、ザイリンクス・インコーポレイ
テッドによる著作権1999年、「プログラマブルロジックデータブック199
9」(“The Programmable Logic Data Book 1999”)に見られる(このデータ
ブックの主題はここに引用により援用される)。
セルに構成データをロードするプロセスである。ザイリンクス・インコーポレイ
テッドから入手可能なFPGAは、一般的に2つ以上の構成モードをサポートす
る。「マスタシリアルモード」と呼ばれる第1の構成モードにおいて、構成デー
タは典型的には外部ROMなどの外部メモリに記憶される。FPGAは、オンチ
ップの発振器を用いて、構成データの連続ビットが外部メモリのデータ端子に読
出されるようにするクロック信号を放出する。外部メモリのデータ端子は、構成
データの連続ビットが直列の態様で一度に1ビットずつFPGAに読出されるよ
うに、FPGAの入力端子(入力端子となるよう構成されるIOB)に結合され
る。それぞれの構成データビットの各々が書込まれる構成メモリセルは、構成デ
ータビットの直列ストリームにおける構成データビットの場所によって決定され
る。あるモードでは、構成データは、フレームと呼ばれるデータのパケットに分
割される。各フレームが受けられると、それはフレームレジスタが一杯になるま
でフレームレジスタにシフトされる。フレームレジスタ中の構成データは次に、
構成メモリセルの1行に並列にロードされる。この場合には、構成メモリセルは
、2次元アレイとしてロードする目的で編成される。第1のフレームのロードに
続いて、構成データの後続フレームがFPGAにシフトされ、構成メモリセルの
別の行がロードされる。このようにして、構成データは、一度に1ビットずつ直
列の態様でFPGAにロードされるが、構成メモリセルの2次元アレイは並列に
一度に1フレームずつロードされる。
くないことがある。したがって、ザイリンクスのFPGAは典型的には、「マス
タパラレルモード」と呼ばれる第2の構成モードをサポートする。この第2のモ
ードでは、構成データは、並列の態様で一度に8ビットずつ外部メモリ(たとえ
ばROM)からFPGAにロードされる。FPGAは、22ビットアドレスをF
PGAの22個のアドレス端子(出力端子として用いられる22個のIOB)に
出力する。FPGAのこれらの22個のアドレス端子は、外部ROMの対応の2
2個のアドレス端子に結合される。FPGAがアドレスをインクリメントするこ
とにより、連続した8ビット構成データ値が外部ROMから8個のデータ入力端
子(入力端子として用いられる8個のIOB)でFPGAに読出される。構成デ
ータビットの複数のそのような8ビット値は、構成データのフレームを形成する
よう組立てられる。次に、このフレームの構成データビットは、構成メモリセル
の2次元アレイの行に並列に書込まれる。次に、構成ビットの第2のフレームが
FPGAに読出され、構成メモリセルの2次元アレイの第2の行に並列の形で書
込まれる。このように、構成データビットは、一連の8ビット値としてFPGA
にロードされ、構成メモリセルの2次元アレイには一度に1フレームずつロード
される。
行のファミリーによってサポートされる(「レガシーな構成モード」と呼ばれる
)構成モードをサポートすることが望ましい。新しい構成モードが時々新しいF
PGAファミリーに追加されてもよい。したがって、ますます増えていく「レガ
シーな構成モード」をサポートするためにますます多くのハードウェアが一般的
には必要とされてきている。複数の構成モードをサポートするために必要とされ
るハードウェアの量を低減する解決が所望される。
いるのではなく、この目的のためにFPGA上にプロセッサが設けられる。電力
投入後、プロセッサは、FPGAの予め定められた端子上にある構成モードコー
ドを読出す。これらの端子から読出された構成モードコードは、構成データをF
PGAにロードするために用いられる構成モードを決定する。
を実行する。第1のプログラムの実行により、プロセッサは、第1の構成モード
に従って構成データをFPGA上におよび構成メモリセルにロードするようにF
PGAのIOBおよび他のハードウェアを制御する。一方で、構成モードコード
が第2の値を有するならば、プロセッサは第2のプログラムを実行する。第2の
プログラムの実行により、プロセッサは、第2の構成モードに従って構成データ
をFPGA上におよび構成メモリセルにロードするようにFPGAのIOBおよ
び他のハードウェアを制御する。プロセッサによって実行される第1および第2
のプログラムは、オンチップのメタルマスク・リードオンリメモリ(ROM)に
記憶され得るので、FPGAの残りの部分を再配置することなしに、かつ多くの
コストを招くことなしに、プログラムを変更することができる。同じプロセッサ
上で実行可能な複数の構成プログラムを設けることにより、FPGAは同じプロ
セッサのハードウェアを用いて複数の構成モードをサポートすることができる。
入後に読出された構成モードコードが特定の値を有するならば、プロセッサはロ
ーダプログラムを実行する。ローダプログラムの実行により、プロセッサは、ユ
ーザ供給構成プログラムがFPGAに読出され、かつプロセッサによって使用さ
れるプログラムメモリにロードされるように、FPGAのIOBを制御する。そ
のようなユーザ供給構成プログラムは、たとえば、一度に8ビットバイトずつF
PGAに読出されてもよい。ユーザ供給構成プログラムがFPGAに読出された
後、ローダプログラムは終了し、プロセッサは新しくロードされた構成プログラ
ムを実行する。新しくロードされた構成プログラムの実行により、構成データは
ユーザ定義の構成モードに従ってFPGAにロードされ構成メモリセルにロード
される。このようにして、FPGAはユーザ定義の構成モードをサポートするよ
うプログラムされる。
を定義することを意図するものでない。この発明は、特許請求の範囲によって定
義される。
PGA)集積回路1の簡素化されたトップダウンの図である。FPGA1は、I
/Oブロック(IOB)2のリングと、4個のコーナブロック(CB)3〜6と
、コンフィギュラブルロジックブロック(CLB)7の、内側2次元アレイと、
プログラム可能配線構造8とを含む。IOB、CLBおよびプログラム可能配線
構造は、構成メモリセルを含み、その内容が、IOB、CLBおよびプログラム
可能配線構造がどのように構成されるかを決定する。これらの構成メモリセルは
、概念上のおよびロードする目的のために、2次元のアレイに編成される。
という意味で端子を含む。この場所は、通常はIOBのボンディングパッドであ
り、ボンディングパッドへの接続は、通常は、ボンディングパッドからFPGA
集積回路1を含む集積回路パッケージへの電気的接続を形成するボンディングワ
イヤである。IOB2、CLB7およびプログラム可能配線構造8の構造および
動作を含む、一般的なFPGA1の構造に関するさらなる情報については、95
124 カリフォルニア州、サン・ノゼ、ロジック・ドライブ、2100のザイ
リンクス・インコーポレイテッドから入手可能な、ザイリンクス・インコーポレ
イテッドによる著作権1999年の「プログラマブルロジックデータブック19
99」、「XC4000EおよびXC4000Xシリーズフィールドプログラマ
ブルゲートアレイ」("XC4000E and XC4000X Series Field Programmable Gate
Arrays")第6−5から6−68頁、を参照されたい(これらのデータブックの
頁の主題はここに引用により援用される)。
、オンチップ発振器10と、いくらかの不揮発性メモリ11(たとえばROMま
たはFLASHメモリ)と、いくらかのランダムアクセスメモリ(RAM)12
と、デコーディング回路13と、構成中に選択されたIOB端子とインターフェ
イスするためのインターフェイスロジック14と、残りのIOB2、CLB7お
よびプログラム可能配線構造8の構成メモリセルとの書込および読出のためのイ
ンターフェイスロジック15とを含む。
不揮発性メモリ11に記憶されたプログラムがRAM12にロードされる。プロ
セッサ9がRAM12の予め定められた場所から第1の命令をフェッチしそこに
記憶されたプログラムの実行を開始するように、プロセッサ9はオンチップ発振
器10からのクロック信号によってクロック動作する。このプログラムの実行に
より、プロセッサ9はロジック14を用いてIOB16〜18の端子に3ビット
の「構成モードコード」を読出す(ステップ200)。これらの端子は、それぞ
れM0、M1およびM2と指定される。構成モードコードは、FPGA1の外部
の手段によってユーザにより端子M0、M1およびM2上に置かれる。
1の構成モードプログラムを実行し始める(ステップ201)。この構成モード
プログラムは、第1の構成モードをサポートするために適切に構成されるよう複
数のIOBを制御する。これらの特定のIOBは、以下に記載するようにインタ
ーフェイスロジック14を用いてプロセッサ9によってこの態様で構成される。
0:0>であり、第1の構成モードは、ザイリンクスの「プログラマブルロジッ
クデータブック1999」の第6−61頁に述べられる「マスタシリアルモード
」である。したがって、IOB19は、入力直列データのための入力端子DIN
として用いられ、IOB20は、FPGA1からクロック信号CCLKを出力す
るための出力端子として使用される。クロック信号CCLKは、オンチップ発振
器10から生成され、IOB20の端子CCLKを介して直列外部PROM(図
示せず)のクロック入力端子に供給される。FPGAによって出力されたCCL
K信号の連続したクロックパルスの各々により、別の構成データビットが外部P
ROMのデータ出力端子から読出される。このデータ出力端子は、連続した構成
データビットが直列の態様で端子DIN上で受けられるようにFPGAの外部の
接続によりIOB19のDIN端子に結合される。プロセッサ9は、構成データ
のこの入力直列ビットストリームを端子DINから読出し、インターフェイスロ
ジック15を用いて構成データを構成メモリセルに書込む。
続ビットに並列にロードされる。別の代替として、構成データビットは1個のピ
ンに直列に与えられるが、フレームレジスタにロードするために8ビットの並列
シーケンスに内部で変換される。
トリームのさまざまな構成データビットを構成ビットのフレームに組立てる。次
に、第1のプログラムにより、フレームのビットは、FPGA1の構成メモリセ
ルの第1の行に並列に書込まれる。次に、プロセッサ9は、端子DINから次の
構成データビットを読出し、これらの構成データビットを別のフレームに組立て
、そしてこの次のフレームをFPGA1の構成メモリセルの第2の行に書込む。
このように、構成データビットは、ソフトウェアの制御下で入力端子DINから
直列の態様でFPGA1にロードされ、第1の構成モードに従って一度に1フレ
ームずつ並列にFPGAの構成メモリセルに書込まれる。
12中の第2の構成モードプログラムを実行し始める(ステップ202)。この
構成モードプログラムは、第2の構成モードをサポートするよう複数のIOBを
制御する。ある例では、<M2:M1:M0>のための第2の構成モードコード
は<1:0:0>であり、第2の構成モードは、「プログラマブルロジックデー
タブック1999」の第6−62頁に述べられる「マスタパラレルアップモード
」である。8個のIOB(IOB19および7個の他のIOB)が、構成データ
の8ビットバイトを受けるためのデータ入力端子DI0〜DI7として用いられ
る。IOB21は、FPGAからクロック信号RCLKを出力するための出力端
子RCLKとして使用される。22個の他のIOB(図示せず)が、22ビット
アドレスA0〜A21を出力するために使用される。
0〜A21から22ビットアドレスを出力する。このアドレスは、FPGAのR
CLK端子から供給されるクロック信号RCLKの立上がりエッジにおいて有効
である。22ビットアドレスおよびクロック信号RCLKは、アドレスに供給さ
れ、構成データの第1の8ビットバイトが外部PROMの8個のデータ出力端子
に出力されるように外部PROM(図示せず)の端子を可能化する。これらの8
個のデータ出力端子は、FPGA1の8個のデータ入力端子DI0〜DI7に結
合される。プロセッサ9は、インターフェイスロジック14を用いて、データ入
力端子DI0〜DI7から構成データのこのバイトを読出す。次に、プロセッサ
9は22ビットアドレスをインクリメントして、外部PROM中の構成データの
次のバイトをアドレスし、クロック信号RCLKのパルスを取り、FPGA1の
データ入力端子DI0〜DI7から構成データの次のバイトを読出す。このよう
に、プロセッサ9は、22ビットアドレスをインクリメントすることにより外部
PROMから構成データの連続8ビットバイトを読出す。プロセッサ9は、構成
データのこれらのバイトを組立てて構成データのフレームを形成し、そしてFP
GA1の構成メモリセルの第1の行に並列にフレームのビットを書込む。次に、
プロセッサ9は、22ビットアドレスをインクリメントし、構成データの次のバ
イトを受け、その構成データを第2のフレームに組立て、そしてこの第2のフレ
ームをFPGA1の構成メモリセルの第2の行に書込む。このように、構成デー
タビットは、ソフトウェアの制御下で一度に1バイトずつFPGA1にロードさ
れ、第2の構成モードに従って一度に1フレームずつ並列にFPGAの構成メモ
リセルに書込まれる。第1および第2の構成モードのこの例では、構成データは
同じ態様で構成メモリセルに書込まれる。この例では、構成データビットストリ
ームはプロセッサ命令を含まない。
いわゆる「スタートアップ」シーケンスが生じ、FPGA動作は構成プロセスか
ら意図されたユーザ動作に遷移する。構成データをロードするために用いられた
いずれのIOBも、ユーザ専用回路での使用が可能となり、すべての構成データ
がこれらのIOBによりロードされてしまった構成プロセスの終わりに、その使
用のために構成され得る。そして、IOB22の端子DONE上の信号は、ロー
からハイに遷移し、構成プロセスの完了およびスタートアップシーケンスを示す
。スタートアップシーケンスの一例のさらなる情報については、「プログラマブ
ルロジックデータブック1999」の第6−51から6−54頁を参照されたい
。
ス回路14および15のある可能な実現化例のさらなる詳細を示す簡素化された
回路図である。破線の長方形100は、ある構成メモリセルを表わす。この場合
には、構成メモリセルは、プログラム可能配線構造8の構成メモリセルである。
交差結合されたラッチ101が、デジタルの1がパストランジスタ102のゲー
トに存在するようにロードされるならば、構成メモリセルは、ワイヤセグメント
103および104が接続されるように構成される。ラッチ101が、デジタル
の0がパストランジスタ102のゲートに存在するようにロードされるならば、
構成メモリセルは、ワイヤセグメント103および104が接続されないように
構成される。
構成メモリセルの2次元アレイを形成するY行×Xの構成メモリセルがある。構
成メモリセルのいくつかはIOBのためのものであり、いくつかはCLBのため
のものであり、いくつかはプログラム可能配線構造のためのものである。
05は、構成メモリセル100の行と関連付けられるYアドレス線である。各列
は、関連付けられるXアドレス線を有する。図3の線106は、構成メモリセル
100の列と関連付けられるXアドレス線である。デジタルハイが構成メモリセ
ルのXアドレス線上に存在し、かつデジタルハイが構成メモリセルのYアドレス
線上に存在し、かつグローバルイネーブル線107がハイパルスでパルスされる
ならば、構成メモリセルのANDゲート108が、デジタルハイパルスを出力し
、アクセストランジスタ109を可能化する。フレームバッファ110がデジタ
ル値を構成メモリセルのデータ線111に出力するならば、このデジタル値は、
構成メモリセルにロードされ、ラッチにより記憶される。フレームバッファ11
0が出力可能化されなければ、ラッチ101は、記憶された構成データを可能化
されたアクセストランジスタ109を介してデータライン111に出力する。次
に、このデータは、リードバックバッファ112を介してプロセッサ9によって
読出可能となる。
スタメモリセルとして図3に示される。他の実施例では、メモリセル100の等
価が6個のトランジスタを使用する、すなわちあるアクセストランジスタがビッ
ト線からラッチ101の一方の端子に接続し、別のアクセストランジスタが横ビ
ット線からラッチ101の相補の端子に接続する。そのような6トランジスタメ
モリセルは周知であるので、ここには説明されない。
特定の行をアドレスする。この値は、Yアドレス線に出力される複数ビット値に
デコーダ114によりデコードされる。ある実施例では、プロセッサ9は、1行
のみが一度にアドレスされるように、Yレジスタに値を書込む。
適切な値をXレジスタ115に書込むことによりアドレスすることができる。X
レジスタ115中の値が、デコーダ116によってデコードされ、Xアドレス線
に出力される複数ビット値を生成する。構成メモリセルのフレーム全体(1行)
が書込まれるべきならば、すべてのXアドレス線がデジタル1で駆動されるよう
にデコードされる値がXレジスタ115に書込まれる。したがって、1行のうち
のすべてのメモリセルがアドレスされる。(「フレームバッファ」は実際には、
1つが連続8列の各々と関連付けられる、複数の8ビットDINレジスタを含み
得る。同様に、「リードバックバッファ」は実際には、1つが連続8列の各々と
関連付けられる、複数の8ビットDOUTバッファを含み得る。) Yレジスタ113、Xレジスタ115、フレームバッファ110およびリード
バックバッファ112は、対応するアドレスから読出し対応するアドレスに書込
むことにより、プロセッサ9によりアクセスされる。DORDBは、データ出力
(リードバック)バッファ読出ストローブバー(アクティブロー)である。DI
WRBは、データ入力(フレームバッファ)バッファ書込ストローブバー(アク
ティブロー)である。XWRBは、Xレジスタ書込ストローブバー(アクティブ
ロー)である。YWRBは、Yレジスタ書込ストローブバー(アクティブロー)
である。GEは、すべての構成メモリセルに供給されるグローバルイネーブルス
トローブである。プロセッサ9は、メモリ読出ストローブバーMRDB(アクテ
ィブロー)およびメモリ書込ストローブバーMWRB(アクティブロー)を用い
てRAM12にアクセスする。アドレスデコーダ13は、アドレスバス線A0〜
A15上のアドレス、プロセッサ9によって出力される書込ストローブWRB、
プロセッサ9によって出力される読出ストローブRDB、およびプロセッサ9に
よって出力されるプログラムメモリ読出ストローブPSENBを含むアドレス信
号および制御信号を用いてこれらのストローブ信号を生成する。アドレスラッチ
118が、アドレス/データ線AD0〜AD7から下位アドレスをラッチするた
めに設けられる。
IOBに書込む、インターフェイスロジック14の簡素化された図である。プロ
セス9は、端子M0、M1およびM2から入力バッファ119および読出ストロ
ーブ信号MPRDB(アクティブロー)により構成モードコードを読出す。プロ
セッサ9は、レジスタ120およびストローブ信号CLKCB(アクティブロー
)により、端子CCLKがクロック信号を出力するかまたはクロック信号を受け
るか、および内部発振器10が可能化されるかを制御する。プロセッサ9は、出
力バッファ122〜124ならびにアドレス出力書込ストローブA0WRB、A
1WRBおよびA2WRB(アクティブロー信号)により端子A0〜A21に2
2ビットアドレスを出力する。プロセッサ9は、入力バッファ121およびデー
タ読出バッファストローブDRDB(アクティブロー)によりデータ入力端子D
0〜D7を読出す。
それほど柔軟でない)を用いるか、またはプログラマブルハードウェア(柔軟で
あるが遅くなる)を用いて実現することができる。専用ハードウェアの実施例で
は、図4Aおよび図4Bに示すような回路が、FPGAに専用ハードウェアとし
て設けられる。
ドのそれぞれのIOBにメモリセルをロードして、FPGAの残りの部分の構成
を管理するためにそれらのIOBを構成することにより実現される。モードが、
図4Bのシフトレジスタ44などのより複雑な特徴を使用するならば、配線およ
びCLBもプログラムする必要があるかもしれない。
列入力直列出力インターフェイスについては、図4Bに示すように、回路41は
、データ入力ピンDINから直列ビットストリームを受け、直列出力信号をライ
ンD0に与える。直列入力並列出力インターフェイスについては、第2の回路4
2が、直列ビットストリームを受け、直列ビットストリームはシフトレジスタ4
4を通過し、8個の並列出力信号としてラインD0からD7に周期的に出力され
る。バイト幅転送インターフェイスについては、第3の回路43が、ラインDI
N0からDIN7の8個の並列入力信号を受け、ラインD0からD7に8個の並
列出力信号を与える。
ることを可能にする。図4Aに示す第2の実施例では、端子M0〜M2、CCL
K、D0〜D7およびA0〜A21のIOBが適切に初期化される。第2の実施
例では、この初期化は、構成動作中にそのそれぞれの構成メモリセルデータをF
PGA内の一時記憶装置にロードすることによりソフトウェアの制御下で行なわ
れ、すべての構成データがこれらのIOBによりロードされてしまうと、IOB
は、一時記憶装置からIOB構成メモリセルにデータをロードすることにより、
FPGAの動作中に使用されるように構成される。
のレジスタおよびバッファからプロセッサ9のデータバスおよびデコーダ13へ
の接続とは、構成プログラムの開始時にプログラム可能配線構造のある構成メモ
リセルをプログラムすることにより実現される。図3のXレジスタ115、Yレ
ジスタ113、デコーダ114および116、フレームバッファ(フレームレジ
スタ)110ならびにリードバックバッファ112は、専用のハードワイヤード
ロジックを用いて実現されるのに対し、図4Aのレジスタおよびバッファ119
〜124は、この実施例においては、適切に構成されたCLBの構成可能回路を
用いて実現される。IOB接続のために必要とされる構成ビットを上書きするこ
とを回避するために、プロセッサ9へのIOB接続のために使用されるすべての
構成ビットは最終フレームにおいて構成されなければならないか、または、IO
B接続のための構成ビットは、すべての構成データがこれらのIOBを介してロ
ードされてしまうまで内部FPGAメモリに記憶されなければならない。
ッサ9は、端子M0、M1およびM2から構成モードコードを読出す(ステップ
300)。構成モードコードが特定の値を有するならば、プロセッサ9はRAM
12中のローダプログラムを実行する(ステップ301)。このローダプログラ
ムの実行により、プロセッサ9は、構成プログラムがFPGA1に読出されRA
M12にロードされるようにIOBを構成する。構成プログラムは、いくとおり
の態様でFPGAにロードされてもよい。ある態様は、上述の「マスタパラレル
モード」においてなされるように、一度に1バイトずつ外部PROMから構成プ
ログラムを読出すことである。
9は、新しくロードされた構成プログラムを実行する(ステップ302)。この
構成プログラムの実行により、プロセッサ9は、FPGAに構成データを読出し
、その構成データをFPGAの構成メモリセルにロードして、所望のユーザ専用
回路として使用されるFPGAを構成する。したがって、ユーザは、カスタマイ
ズされた構成プログラムをFPGAにロードし、そしてプロセッサ9にそのカス
タマイズされた構成プログラムを実行させることにより、カスタマイズされた構
成モードを設けることができる。
るが、この発明はこれに限られるものでない。プロセッサをIOBおよび構成メ
モリセルにインターフェイスするインターフェイスロジック14および15のア
ーキテクチャはある可能な実現化例にすぎない。プロセッサを他のIOB、CL
Bおよびプログラム可能配線構造のアーキテクチャにインターフェイスするため
に、標準のプロセッサ設計技術を用いて他のタイプのインターフェイスロジック
を提供することができる。ある実施例では、そのようなインターフェイス回路は
、「構成ビットストリームにプログラミング命令を有するフィールドプログラマ
ブルゲートアレイ」(“A Field Programmable Gate Array Having Programming
Instructions in the Configuration Bitstream”)と題する米国特許番号5,
892,961号にトリムバーガー(Trimberger)によって述べられるものなど
の行ポインタを含む。この行ポインタは、構成メモリセルの行を指す。行ポイン
タはプロセッサ9の制御下でインクリメント可能である。そのような行ポインタ
は、ある実施例では、シフトレジスタの1ビットが構成メモリセルの1行を特定
するためにデジタルの1を含むシフトレジスタとして実現される。行ポインタは
、シフトレジスタを1ビットシフトすることによりインクリメントされる。
ッサが、SRAMベースのFPGAアーキテクチャと関連付けて記載されるが、
オンチッププロセッサは、FLASHベースのPLDおよびFPGAを含む他の
メモリベースのプログラマブルロジックデバイスにおいて使用可能である。
は代替的に、プロセッサは、FPGAに構成されるユーザ専用回路において使用
可能である。命令が入力構成データビットストリームに含まれてもよい。これら
の命令は、プロセッサ9のための命令であってもよく、代替的に、実際のプロセ
ッサ命令自体ではないが一連のプロセッサ命令としてプロセッサ9によって行な
われる高次の機能を示す高次の命令であってもよい。したがって、特許請求の範
囲に述べられるこの発明の範囲から逸脱することなしに、さまざまな変形、改造
および記載された実施例のさまざまな特徴の組合せを実施することができる。
(FPGA)の簡素化されたトップダウンの図である。
の簡素化された回路図である。
例の簡素化された回路図である。
例の簡素化された回路図である。
して構成プログラムを実行する、この発明の別の実施例に従う方法の流れ図であ
る。
Claims (10)
- 【請求項1】 プログラム可能集積回路のプログラマブルロジック構造を構
成する方法であって、前記プログラム可能集積回路は、プログラマブルロジック
構造と、複数個の端子と、プロセッサと、複数個の構成プログラムとを含み、前
記方法は、 (a) プロセッサが複数個の端子から複数個の構成モードコードの1つを読
出し、構成モードコードが複数個の構成プログラムの1つを示すステップと、 (b) プロセッサ上で、プロセッサによって読出された構成モードコードに
よって決定される複数個の構成プログラムの前記1つを実行し、複数個の構成プ
ログラムの前記1つの実行により、構成データがプログラム可能集積回路に読出
されかつプログラマブルロジック構造を構成するステップとを含む、方法。 - 【請求項2】 複数個の構成プログラムの前記1つおよびプロセッサは合わ
せて、第1のフォーマットの構成データがプログラム可能集積回路に読出される
ようにするための手段であり、複数個の構成プログラムの別のものおよびプロセ
ッサは合わせて、第2のフォーマットの構成データがプログラム可能集積回路に
読出されるようにするための手段である、請求項1に記載の方法。 - 【請求項3】 複数個の構成プログラムの前記1つおよびプロセッサは合わ
せて、構成データがプログラム可能集積回路の単一の端子を介して直列の態様で
プログラム可能集積回路に読出されるようにするための手段であり、複数個の構
成プログラムの別のものおよびプロセッサは合わせて、構成データがプログラム
可能集積回路の複数個の端子を介して並列の態様でプログラム可能集積回路に読
出されるようにするための手段である、請求項1に記載の方法。 - 【請求項4】 複数個の構成プログラムの前記1つおよびプロセッサは合わ
せて、構成データがプログラム可能集積回路の単一の端子を介して直列の態様で
プログラム可能集積回路に読出され、かつ構成メモリセルに与えるための直列デ
ータストリームに変換されるようにするための手段である、請求項1に記載の方
法。 - 【請求項5】 複数個の構成プログラムの前記1つおよびプロセッサは合せ
て、構成データがシフトレジスタの直列入力端子に与えられかつシフトレジスタ
の並列出力端子に読出されるようにする、請求項4に記載の方法。 - 【請求項6】 複数個の構成プログラムの前記1つの実行中に、プロセッサ
は、プログラム可能集積回路の端子が入力端子としてまたは出力端子として構成
されるかを制御する、請求項1に記載の方法。 - 【請求項7】 プロセッサによる構成モードコードの前記読出は、プログラ
ム可能集積回路の電力投入後自動的に起こる、請求項1に記載の方法。 - 【請求項8】 プログラム可能集積回路を構成する方法であって、前記プロ
グラム可能集積回路は、プログラマブルロジック構造と、プロセッサと、第1の
プログラムおよび第2のプログラムを含むメモリとを含み、前記方法は、 構成モードコードをプログラム可能集積回路で受けるステップと、 構成モードコードが第1の値を有するならば、第1のプログラムをプロセッサ
上で実行して第1のフォーマットの第1の構成データをプログラム可能集積回路
に読出すステップと、 構成モードコードが第1の値を有するならば、第1の構成データを用いてプロ
グラマブルロジック構造を構成するステップと、 構成モードコードが第2の値を有するならば、第2のプログラムをプロセッサ
上で実行して第2のフォーマットの第2の構成データをプログラム可能集積回路
に読出すステップと、 構成モードコードが第2の値を有するならば、第2の構成データを用いてプロ
グラマブルロジック構造を構成するステップとを含む、方法。 - 【請求項9】 プログラマブルロジック構造と、 少なくとも1つのコード端子と、 第1の構成プログラムおよび第2の構成プログラムを記憶するメモリと、 プロセッサとを含み、前記プロセッサは、少なくとも1つのコード端子を読出
し、前記コード端子上の構成モードコードに基づいて、第1の構成プログラムを
実行すべきかまたは第2の構成プログラムを実行すべきかを判断し、第1の構成
プログラムの実行により、第1の構成データがプログラム可能集積回路に読出さ
れプログラマブルロジック構造を構成し得、第2の構成プログラムの実行により
、第2の構成データがプログラム可能集積回路に読出されプログラマブルロジッ
ク構造を構成し得る、プログラム可能集積回路。 - 【請求項10】 第1の構成プログラムを用いてプログラム可能集積回路に
読出される構成データは、プログラム可能集積回路の単一の端子を介して直列の
態様でプログラム可能集積回路で受取られ得、第2の構成プログラムを用いてプ
ログラム可能集積回路に読出される構成データは、プログラム可能集積回路の複
数個の端子を介して並列の態様でプログラム可能集積回路で受取られ得る、請求
項9に記載のプログラム可能集積回路。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/499,499 | 2000-02-07 | ||
US09/499,499 US6496971B1 (en) | 2000-02-07 | 2000-02-07 | Supporting multiple FPGA configuration modes using dedicated on-chip processor |
PCT/US2001/000367 WO2001059629A1 (en) | 2000-02-07 | 2001-01-05 | Supporting multiple fpga configuration modes using dedicated on-chip processor |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003523077A true JP2003523077A (ja) | 2003-07-29 |
JP5183845B2 JP5183845B2 (ja) | 2013-04-17 |
Family
ID=23985488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001558887A Expired - Lifetime JP5183845B2 (ja) | 2000-02-07 | 2001-01-05 | 専用のオンチッププロセッサを用いる複数のfpga構成モードのサポート |
Country Status (6)
Country | Link |
---|---|
US (1) | US6496971B1 (ja) |
EP (1) | EP1256075B1 (ja) |
JP (1) | JP5183845B2 (ja) |
CA (1) | CA2399384C (ja) |
DE (1) | DE60100476T2 (ja) |
WO (1) | WO2001059629A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005297561A (ja) * | 2004-04-15 | 2005-10-27 | Agilent Technol Inc | プログラマブル・インタフェース |
JP2013217865A (ja) * | 2012-04-11 | 2013-10-24 | Taiyo Yuden Co Ltd | 再構成可能な半導体装置 |
KR20160133546A (ko) * | 2014-03-18 | 2016-11-22 | 인터내셔널 비지네스 머신즈 코포레이션 | 컴퓨팅 시스템에서 아키텍처 모드 구성 |
Families Citing this family (112)
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等) |
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 |
US7003593B2 (en) * | 1997-12-17 | 2006-02-21 | Src Computers, Inc. | Computer system architecture and memory controller for close-coupling within a hybrid processing system utilizing an adaptive processor interface port |
DE19861088A1 (de) | 1997-12-22 | 2000-02-10 | Pact Inf Tech Gmbh | Verfahren zur Reparatur von integrierten Schaltkreisen |
US7146441B1 (en) * | 1998-03-16 | 2006-12-05 | Actel Corporation | SRAM bus architecture and interconnect to an FPGA |
WO2000077652A2 (de) | 1999-06-10 | 2000-12-21 | Pact Informationstechnologie Gmbh | Sequenz-partitionierung auf zellstrukturen |
US6675306B1 (en) * | 2000-03-10 | 2004-01-06 | Ricoh Company Ltd. | Method and apparatus for phase-lock in a field programmable gate array (FPGA) |
EP2226732A3 (de) | 2000-06-13 | 2016-04-06 | PACT XPP Technologies AG | Cachehierarchie für einen Multicore-Prozessor |
US8058899B2 (en) | 2000-10-06 | 2011-11-15 | Martin Vorbach | Logic cell array and bus system |
US8103496B1 (en) | 2000-10-26 | 2012-01-24 | Cypress Semicondutor Corporation | Breakpoint control in an in-circuit emulation system |
US8160864B1 (en) | 2000-10-26 | 2012-04-17 | Cypress Semiconductor Corporation | In-circuit emulator and pod synchronized boot |
US8176296B2 (en) | 2000-10-26 | 2012-05-08 | Cypress Semiconductor Corporation | Programmable microcontroller architecture |
US6724220B1 (en) | 2000-10-26 | 2004-04-20 | Cyress Semiconductor Corporation | Programmable microcontroller architecture (mixed analog/digital) |
US8149048B1 (en) | 2000-10-26 | 2012-04-03 | Cypress Semiconductor Corporation | Apparatus and method for programmable power management in a programmable analog circuit block |
ITRM20010298A1 (it) * | 2001-05-31 | 2002-12-02 | Micron Technology Inc | Interfaccia di comando di utilizzatore con decodificatore programmabile. |
US7844796B2 (en) | 2001-03-05 | 2010-11-30 | Martin Vorbach | Data processing device and method |
US7444531B2 (en) | 2001-03-05 | 2008-10-28 | Pact Xpp Technologies Ag | Methods and devices for treating and processing data |
US9037807B2 (en) | 2001-03-05 | 2015-05-19 | Pact Xpp Technologies Ag | Processor arrangement on a chip including data processing, memory, and interface elements |
EP1402382B1 (de) | 2001-06-20 | 2010-08-18 | Richter, Thomas | Verfahren zur bearbeitung von daten |
US6912706B1 (en) * | 2001-08-15 | 2005-06-28 | Xilinx, Inc. | Instruction processor and programmable logic device cooperative computing arrangement and method |
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 |
US7406674B1 (en) | 2001-10-24 | 2008-07-29 | Cypress Semiconductor Corporation | Method and apparatus for generating microcontroller configuration information |
US8078970B1 (en) | 2001-11-09 | 2011-12-13 | Cypress Semiconductor Corporation | Graphical user interface with user-selectable list-box |
US8042093B1 (en) | 2001-11-15 | 2011-10-18 | Cypress Semiconductor Corporation | System providing automatic source code generation for personalization and parameterization of user modules |
US8069405B1 (en) | 2001-11-19 | 2011-11-29 | Cypress Semiconductor Corporation | User interface for efficiently browsing an electronic document using data-driven tabs |
US6971004B1 (en) | 2001-11-19 | 2005-11-29 | Cypress Semiconductor Corp. | System and method of dynamically reconfiguring a programmable integrated circuit |
US7844437B1 (en) | 2001-11-19 | 2010-11-30 | Cypress Semiconductor Corporation | System and method for performing next placements and pruning of disallowed placements for programming an integrated circuit |
GB2382175A (en) * | 2001-11-20 | 2003-05-21 | Hewlett Packard Co | Reconfigurable processor |
DE10392560D2 (de) | 2002-01-19 | 2005-05-12 | Pact Xpp Technologies Ag | Reconfigurierbarer Prozessor |
DE10390689D2 (de) | 2002-02-18 | 2005-02-10 | Pact Xpp Technologies Ag | Bussysteme und Rekonfigurationsverfahren |
US6976160B1 (en) * | 2002-02-22 | 2005-12-13 | Xilinx, Inc. | Method and system for controlling default values of flip-flops in PGA/ASIC-based designs |
US7047465B1 (en) | 2002-02-28 | 2006-05-16 | Xilinx, Inc. | Methods for using defective programmable logic devices by customizing designs based on recorded defects |
US8914590B2 (en) | 2002-08-07 | 2014-12-16 | Pact Xpp Technologies Ag | Data processing method and device |
US8103497B1 (en) | 2002-03-28 | 2012-01-24 | Cypress Semiconductor Corporation | External interface for event architecture |
US7406573B2 (en) * | 2002-05-09 | 2008-07-29 | Src Computers, Inc. | Reconfigurable processor element utilizing both coarse and fine grained reconfigurable elements |
US20030212853A1 (en) * | 2002-05-09 | 2003-11-13 | Huppenthal Jon M. | Adaptive processor architecture incorporating a field programmable gate array control element having at least one embedded microprocessor core |
FI20021379A (fi) * | 2002-07-12 | 2004-01-13 | Plustech Oy | Sahalaitteisto ja sen turvajärjestelmä katkeavan sahaketjun varalle |
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 |
AU2003289844A1 (en) | 2002-09-06 | 2004-05-13 | Pact Xpp Technologies Ag | Reconfigurable sequencer structure |
US6891753B2 (en) * | 2002-09-24 | 2005-05-10 | Sandisk Corporation | Highly compact non-volatile memory and method therefor with internal serial buses |
US6983428B2 (en) | 2002-09-24 | 2006-01-03 | Sandisk Corporation | Highly compact non-volatile memory and method thereof |
FI115256B (fi) * | 2002-11-08 | 2005-03-31 | Nokia Corp | Suljetun järjestelmän toimintotietojen määrittäminen |
US7283591B2 (en) * | 2003-03-28 | 2007-10-16 | Tarari, Inc. | Parallelized dynamic Huffman decoder |
US7237106B1 (en) * | 2003-07-18 | 2007-06-26 | Altera Corporation | System for loading configuration data into a configuration word register by independently loading a plurality of configuration blocks through a plurality of configuration inputs |
US7170315B2 (en) | 2003-07-31 | 2007-01-30 | Actel Corporation | Programmable system on a chip |
EP1676208A2 (en) | 2003-08-28 | 2006-07-05 | PACT XPP Technologies AG | Data processing device and method |
US7086025B1 (en) * | 2003-10-23 | 2006-08-01 | Adaptec, Inc. | Programmable logic device partitioning method for application specific integrated circuit prototyping |
US7653820B1 (en) * | 2003-10-31 | 2010-01-26 | Xilinx, Inc. | System and method for securing using decryption keys during FPGA configuration using a microcontroller |
US7219325B1 (en) | 2003-11-21 | 2007-05-15 | Xilinx, Inc. | Exploiting unused configuration memory cells |
US7295049B1 (en) | 2004-03-25 | 2007-11-13 | Cypress Semiconductor Corporation | Method and circuit for rapid alignment of signals |
US8183881B1 (en) | 2004-03-29 | 2012-05-22 | Xilinx, Inc. | Configuration memory as buffer memory for an integrated circuit |
US7353374B1 (en) * | 2004-06-22 | 2008-04-01 | Xilinx, Inc. | Integrated circuit with supervisory control circuit |
US7853799B1 (en) * | 2004-06-24 | 2010-12-14 | Xilinx, Inc. | Microcontroller-configurable programmable device with downloadable decryption |
US7623660B1 (en) | 2004-07-20 | 2009-11-24 | Xilinx, Inc. | Method and system for pipelined decryption |
US7328335B1 (en) * | 2004-10-01 | 2008-02-05 | Xilinx, Inc. | Bootable programmable logic device for internal decoding of encoded configuration data |
US7284229B1 (en) | 2004-10-01 | 2007-10-16 | Xilinx, Inc. | Multiple bitstreams enabling the use of partially defective programmable integrated circuits while avoiding localized defects therein |
US7689726B1 (en) | 2004-10-01 | 2010-03-30 | Xilinx, Inc. | Bootable integrated circuit device for readback encoding of configuration data |
US7412635B1 (en) | 2004-10-01 | 2008-08-12 | Xilinx, Inc. | Utilizing multiple bitstreams to avoid localized defects in partially defective programmable integrated circuits |
US7424655B1 (en) | 2004-10-01 | 2008-09-09 | Xilinx, Inc. | Utilizing multiple test bitstreams to avoid localized defects in partially defective programmable integrated circuits |
US7251804B1 (en) | 2004-10-01 | 2007-07-31 | Xilinx, Inc. | Structures and methods of overcoming localized defects in programmable integrated circuits by routing during the programming thereof |
US7149997B1 (en) * | 2004-10-15 | 2006-12-12 | Xilinx, Inc. | Routing with frame awareness to minimize device programming time and test cost |
US7314174B1 (en) * | 2004-10-22 | 2008-01-01 | Xilinx, Inc. | Method and system for configuring an integrated circuit |
US7332976B1 (en) * | 2005-02-04 | 2008-02-19 | Cypress Semiconductor Corporation | Poly-phase frequency synthesis oscillator |
US7400183B1 (en) | 2005-05-05 | 2008-07-15 | Cypress Semiconductor Corporation | Voltage controlled oscillator delay cell and method |
JP4940464B2 (ja) * | 2005-09-16 | 2012-05-30 | 独立行政法人産業技術総合研究所 | ネットワーク機器試験装置 |
US7282949B2 (en) * | 2005-09-30 | 2007-10-16 | International Business Machines Corporation | FPGA powerup to known functional state |
US7304493B2 (en) * | 2005-09-30 | 2007-12-04 | International Business Machines Corporation | FPGA powerup to known functional state |
FR2895106A1 (fr) | 2005-12-20 | 2007-06-22 | Thomson Licensing Sas | Procede de telechargement d'un fichier de configuration dans un circuit programmable, et appareil comportant ledit composant. |
US8250503B2 (en) | 2006-01-18 | 2012-08-21 | Martin Vorbach | Hardware definition method including determining whether to implement a function as hardware or software |
US8067948B2 (en) | 2006-03-27 | 2011-11-29 | Cypress Semiconductor Corporation | Input/output multiplexer bus |
US8407658B2 (en) | 2007-02-01 | 2013-03-26 | International Business Machines Corporation | Methods, systems, and computer program products for using direct memory access to initialize a programmable logic device |
US7737724B2 (en) | 2007-04-17 | 2010-06-15 | Cypress Semiconductor Corporation | Universal digital block interconnection and channel routing |
US8130025B2 (en) | 2007-04-17 | 2012-03-06 | Cypress Semiconductor Corporation | Numerical band gap |
US9564902B2 (en) * | 2007-04-17 | 2017-02-07 | Cypress Semiconductor Corporation | Dynamically configurable and re-configurable data path |
US8026739B2 (en) | 2007-04-17 | 2011-09-27 | Cypress Semiconductor Corporation | System level interconnect with programmable switching |
US8040266B2 (en) | 2007-04-17 | 2011-10-18 | Cypress Semiconductor Corporation | Programmable sigma-delta analog-to-digital converter |
US8516025B2 (en) | 2007-04-17 | 2013-08-20 | Cypress Semiconductor Corporation | Clock driven dynamic datapath chaining |
US9720805B1 (en) | 2007-04-25 | 2017-08-01 | Cypress Semiconductor Corporation | System and method for controlling a target device |
US8049569B1 (en) | 2007-09-05 | 2011-11-01 | Cypress Semiconductor Corporation | Circuit and method for improving the accuracy of a crystal-less oscillator having dual-frequency modes |
US7810059B1 (en) | 2007-10-11 | 2010-10-05 | Xilinx, Inc. | Methods of enabling the validation of an integrated circuit adapted to receive one of a plurality of configuration bitstreams |
US7853916B1 (en) | 2007-10-11 | 2010-12-14 | Xilinx, Inc. | Methods of using one of a plurality of configuration bitstreams for an integrated circuit |
US7619438B1 (en) | 2007-10-11 | 2009-11-17 | Xilinx, Inc. | Methods of enabling the use of a defective programmable device |
US7974124B2 (en) | 2009-06-24 | 2011-07-05 | Sandisk Corporation | Pointer based column selection techniques in non-volatile memories |
US20110082994A1 (en) * | 2009-10-06 | 2011-04-07 | Utah State University | Accelerated relocation circuit |
CN102622044B (zh) * | 2011-01-28 | 2014-04-02 | 微盟电子(昆山)有限公司 | 主机板及其pcie端口动态配置方法 |
JP2013030906A (ja) * | 2011-07-27 | 2013-02-07 | Fujitsu Ltd | プログラマブルロジックデバイス |
US8842473B2 (en) | 2012-03-15 | 2014-09-23 | Sandisk Technologies Inc. | Techniques for accessing column selecting shift register with skipped entries in non-volatile memories |
CN102662780B (zh) * | 2012-03-22 | 2015-06-10 | 中兴通讯股份有限公司 | 多可编程器件***中电源保护方法及装置 |
JP5890733B2 (ja) * | 2012-04-09 | 2016-03-22 | 太陽誘電株式会社 | 再構成可能な半導体装置の配置配線方法、そのプログラム、及び配置配線装置 |
US10270709B2 (en) | 2015-06-26 | 2019-04-23 | Microsoft Technology Licensing, Llc | Allocating acceleration component functionality for supporting services |
US9754133B2 (en) * | 2013-03-14 | 2017-09-05 | Microchip Technology Incorporated | Programmable device personalization |
US9916185B2 (en) | 2014-03-18 | 2018-03-13 | International Business Machines Corporation | Managing processing associated with selected architectural facilities |
US9588774B2 (en) * | 2014-03-18 | 2017-03-07 | International Business Machines Corporation | Common boot sequence for control utility able to be initialized in multiple architectures |
US9792154B2 (en) | 2015-04-17 | 2017-10-17 | Microsoft Technology Licensing, Llc | Data processing system having a hardware acceleration plane and a software plane |
US10511478B2 (en) | 2015-04-17 | 2019-12-17 | Microsoft Technology Licensing, Llc | Changing between different roles at acceleration components |
US10296392B2 (en) | 2015-04-17 | 2019-05-21 | Microsoft Technology Licensing, Llc | Implementing a multi-component service using plural hardware acceleration components |
US10198294B2 (en) | 2015-04-17 | 2019-02-05 | Microsoft Licensing Technology, LLC | Handling tenant requests in a system that uses hardware acceleration components |
US10216555B2 (en) | 2015-06-26 | 2019-02-26 | Microsoft Technology Licensing, Llc | Partially reconfiguring acceleration components |
US9819542B2 (en) | 2015-06-26 | 2017-11-14 | Microsoft Technology Licensing, Llc | Configuring acceleration components over a network |
US11119835B2 (en) | 2017-08-30 | 2021-09-14 | Intel Corporation | Technologies for providing efficient reprovisioning in an accelerator device |
CN108536455B (zh) * | 2018-03-06 | 2021-08-27 | 湖南汉拓物联科技有限公司 | 芯片控制方法及终端设备 |
CN109783434B (zh) * | 2018-10-25 | 2023-05-09 | 西安空间无线电技术研究所 | 低代价高可靠的星载单机多片sram型fpga在轨重构***及方法 |
KR20200053886A (ko) | 2018-11-09 | 2020-05-19 | 삼성전자주식회사 | 뉴럴 프로세싱 유닛, 뉴럴 프로세싱 시스템, 및 어플리케이션 시스템 |
CN112532207B (zh) * | 2020-11-19 | 2024-01-26 | 浙江集速合芯科技有限公司 | 一种片上可变滤波器快速调谐的方法 |
EP4198750A1 (de) * | 2021-12-17 | 2023-06-21 | dSPACE GmbH | Verfahren zur datenkommunikation zwischen teilbereichen eines fpgas |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10240561A (ja) * | 1997-02-27 | 1998-09-11 | Kokusai Electric Co Ltd | Fpgaブート用エミュレータ及びfpgaブート方法 |
JPH118547A (ja) * | 1997-06-17 | 1999-01-12 | Fuji Xerox Co Ltd | 再構成可能演算装置 |
JPH1174360A (ja) * | 1997-08-27 | 1999-03-16 | Nec Kansai Ltd | 半導体論理回路装置 |
JPH11122095A (ja) * | 1997-10-09 | 1999-04-30 | Hitachi Ltd | データ処理装置 |
JPH11214520A (ja) * | 1998-01-22 | 1999-08-06 | Advantest Corp | 半導体集積回路 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5321840A (en) * | 1988-05-05 | 1994-06-14 | Transaction Technology, Inc. | Distributed-intelligence computer system including remotely reconfigurable, telephone-type user terminal |
US5109503A (en) | 1989-05-22 | 1992-04-28 | Ge Fanuc Automation North America, Inc. | Apparatus with reconfigurable counter includes memory for storing plurality of counter configuration files which respectively define plurality of predetermined counters |
US5438672A (en) | 1990-12-18 | 1995-08-01 | National Semiconductor Corporation | Microcontroller emulator for plural device architecture configured by mode control data and operated under control code transmitted via same switching bus |
US5263168A (en) * | 1991-06-03 | 1993-11-16 | Motorola, Inc. | Circuitry for automatically entering and terminating an initialization mode in a data processing system in response to a control signal |
US5479618A (en) * | 1991-07-24 | 1995-12-26 | Allen-Bradley Company, Inc. | I/O module with reduced isolation circuitry |
JPH07154241A (ja) * | 1993-11-29 | 1995-06-16 | Olympus Optical Co Ltd | プログラマブル集積回路を用いた電子回路 |
US5892961A (en) | 1995-02-17 | 1999-04-06 | Xilinx, Inc. | Field programmable gate array having programming instructions in the configuration bitstream |
WO1996034346A1 (en) * | 1995-04-28 | 1996-10-31 | Xilinx, Inc. | Microprocessor with distributed registers accessible by programmable logic device |
US5646545A (en) | 1995-08-18 | 1997-07-08 | Xilinx, Inc. | Time multiplexed programmable logic device |
US5794033A (en) * | 1995-10-24 | 1998-08-11 | International Business Machines Corporation | Method and system for in-site and on-line reprogramming of hardware logics with remote loading in a network device |
US5956518A (en) * | 1996-04-11 | 1999-09-21 | Massachusetts Institute Of Technology | Intermediate-grain reconfigurable processing device |
US6178494B1 (en) * | 1996-09-23 | 2001-01-23 | Virtual Computer Corporation | Modular, hybrid processor and method for producing a modular, hybrid processor |
US6134707A (en) * | 1996-11-14 | 2000-10-17 | Altera Corporation | Apparatus and method for in-system programming of integrated circuits containing programmable elements |
US6078736A (en) * | 1997-08-28 | 2000-06-20 | Xilinx, Inc. | Method of designing FPGAs for dynamically reconfigurable computing |
US6141756A (en) * | 1998-04-27 | 2000-10-31 | Motorola, Inc. | Apparatus and method of reading a program into a processor |
US6255849B1 (en) * | 2000-02-04 | 2001-07-03 | Xilinx, Inc. | On-chip self-modification for PLDs |
-
2000
- 2000-02-07 US US09/499,499 patent/US6496971B1/en not_active Expired - Lifetime
-
2001
- 2001-01-05 CA CA002399384A patent/CA2399384C/en not_active Expired - Lifetime
- 2001-01-05 DE DE60100476T patent/DE60100476T2/de not_active Expired - Lifetime
- 2001-01-05 WO PCT/US2001/000367 patent/WO2001059629A1/en active IP Right Grant
- 2001-01-05 JP JP2001558887A patent/JP5183845B2/ja not_active Expired - Lifetime
- 2001-01-05 EP EP01901787A patent/EP1256075B1/en not_active Expired - Lifetime
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10240561A (ja) * | 1997-02-27 | 1998-09-11 | Kokusai Electric Co Ltd | Fpgaブート用エミュレータ及びfpgaブート方法 |
JPH118547A (ja) * | 1997-06-17 | 1999-01-12 | Fuji Xerox Co Ltd | 再構成可能演算装置 |
JPH1174360A (ja) * | 1997-08-27 | 1999-03-16 | Nec Kansai Ltd | 半導体論理回路装置 |
JPH11122095A (ja) * | 1997-10-09 | 1999-04-30 | Hitachi Ltd | データ処理装置 |
JPH11214520A (ja) * | 1998-01-22 | 1999-08-06 | Advantest Corp | 半導体集積回路 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005297561A (ja) * | 2004-04-15 | 2005-10-27 | Agilent Technol Inc | プログラマブル・インタフェース |
JP2013217865A (ja) * | 2012-04-11 | 2013-10-24 | Taiyo Yuden Co Ltd | 再構成可能な半導体装置 |
KR20160133546A (ko) * | 2014-03-18 | 2016-11-22 | 인터내셔널 비지네스 머신즈 코포레이션 | 컴퓨팅 시스템에서 아키텍처 모드 구성 |
KR101884544B1 (ko) * | 2014-03-18 | 2018-08-01 | 인터내셔널 비지네스 머신즈 코포레이션 | 컴퓨팅 시스템에서 아키텍처 모드 구성 |
Also Published As
Publication number | Publication date |
---|---|
DE60100476T2 (de) | 2004-04-15 |
EP1256075A1 (en) | 2002-11-13 |
EP1256075B1 (en) | 2003-07-16 |
US6496971B1 (en) | 2002-12-17 |
CA2399384A1 (en) | 2001-08-16 |
JP5183845B2 (ja) | 2013-04-17 |
CA2399384C (en) | 2008-03-04 |
WO2001059629A1 (en) | 2001-08-16 |
DE60100476D1 (de) | 2003-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5183845B2 (ja) | 専用のオンチッププロセッサを用いる複数のfpga構成モードのサポート | |
US6255848B1 (en) | Method and structure for reading, modifying and writing selected configuration memory cells of an FPGA | |
US6278289B1 (en) | Content-addressable memory implemented using programmable logic | |
US6429682B1 (en) | Configuration bus interface circuit for FPGAs | |
US6748456B1 (en) | PLD configuration port architecture and logic | |
JP5048972B2 (ja) | プログラマブル・デバイスの構成エラー検出の偽陽性の低減 | |
US7653895B1 (en) | Memory arrangement for message processing by a plurality of threads | |
US7143332B1 (en) | Methods and structures for providing programmable width and error correction in memory arrays in programmable logic devices | |
JP6517626B2 (ja) | 再構成可能な半導体装置 | |
US7489163B2 (en) | FPGA powerup to known functional state | |
US7454556B1 (en) | Method to program non-JTAG attached devices or memories using a PLD and its associated JTAG interface | |
JPH11353300A (ja) | 半導体素子のためのプログラム可能ピンの指定 | |
JP6564186B2 (ja) | 再構成可能な半導体装置 | |
WO2014080872A2 (ja) | 再構成可能な半導体装置の論理構成方法 | |
US20070171101A1 (en) | Reconfigurable switching device parallel calculation of any particular algorithms | |
JPWO2014163099A1 (ja) | 再構成可能な論理デバイス | |
US7683660B1 (en) | Programmable logic device with a microcontroller-based control system | |
US6078735A (en) | System and method for generating memory initialization logic in a target device with memory initialization bits from a programmable logic device | |
JP2005044329A (ja) | 半導体集積回路 | |
US6665766B1 (en) | Adaptable configuration interface for a programmable logic device | |
JP4468452B2 (ja) | グローバルセルオートマトンを組み込むためのリコンフィギュアラブルなアーキテクチャをもつコンピュータ装置 | |
JPH1117524A (ja) | プログラマブル論理回路システムおよびプログラマブル論理回路装置の再構成方法 | |
US7908465B1 (en) | Hardware emulator having a selectable write-back processor unit | |
JP2016152523A (ja) | 再構成可能な論理デバイス | |
Sundararajan et al. | XVPI: A portable hardware/software interface for virtex |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20071107 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081003 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110517 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110714 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110809 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111115 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20111122 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20111216 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121210 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130116 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5183845 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160125 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |