JP2001028536A - プログラマブル論理回路装置、情報処理システム、プログラマブル論理回路装置への回路の再構成方法、プログラマブル論理回路装置用の回路情報の圧縮方法 - Google Patents
プログラマブル論理回路装置、情報処理システム、プログラマブル論理回路装置への回路の再構成方法、プログラマブル論理回路装置用の回路情報の圧縮方法Info
- Publication number
- JP2001028536A JP2001028536A JP11199964A JP19996499A JP2001028536A JP 2001028536 A JP2001028536 A JP 2001028536A JP 11199964 A JP11199964 A JP 11199964A JP 19996499 A JP19996499 A JP 19996499A JP 2001028536 A JP2001028536 A JP 2001028536A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- information
- circuit information
- programmable logic
- frame
- 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]
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17748—Structural details of configuration resources
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17748—Structural details of configuration resources
- H03K19/17758—Structural details of configuration resources for speeding up configuration or reconfiguration
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17748—Structural details of configuration resources
- H03K19/1776—Structural details of configuration resources for memories
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Physics & Mathematics (AREA)
- Logic Circuits (AREA)
- Microcomputers (AREA)
Abstract
の増加、製造コストの増加などをもたらす複数の回路情
報を格納するコンフィギュレーションメモリを用いるこ
となく、マルチコンテキスト技術と同等技術を実現す
る。 【解決手段】 プログラマブル論理回路装置に、コンフ
ィギュレーションメモリとは別の回路情報記憶手段10
2と、この回路情報記憶手段に記憶された回路情報を用
いて、指定された回路の回路情報を生成する回路情報編
集手段103とを設けておく。回路情報記憶手段には、
複数個の回路の回路情報を圧縮した状態で格納するよう
にする。プログラマブル論理回路部104に再構成する
回路の回路情報の指定情報が入力されたときに、回路情
報編集手段で、回路情報記憶手段から必要な回路情報を
読み出し、圧縮を解凍して、指定情報で指定された回路
情報を生成し、その生成した回路情報をコンフィギュレ
ーションメモリ106に転送して、回路を再構成する。
Description
ーションプログラムによる処理の一部分を分担するため
に、複数個の回路が順次に再構成されるように用いられ
る場合に好適なプログラマブル論理回路装置に関する。
特に、プログラマブル論理回路装置の再構成時間を短縮
する方法に関する。
ールドプログラマブルゲートアレイ(FPGA)やプロ
グラマブルロジックデバイス(PLD)などのプログラ
マブル論理回路装置が、特定用途向け集積回路(ASI
C)を作成する前の試作デバイスとして、または、数週
間から数ヶ月という長い作製期間を要するASICの代
替デバイスとして使われてきた。また、最近では、回路
装置作成後に仕様を変更したり、回路を修正することを
可能にするために、プログラマブル論理回路装置が使わ
れている。
造を図22に示す。プログラマブル論理回路装置1は、
回路情報を外部から読み込む回路情報入力制御部2と、
読み込まれた回路情報に従って回路機能を実現するプロ
グラマブル論理回路部3とから構成される。
細な構造は、図23に示すように、回路素子4と、回路
素子4に接続するコンフィギュレーションメモリ5とか
ら構成される。回路素子4は、入出力部、論理回路セ
ル、配線部からなるが、この回路素子4の接続形態によ
り、プログラマブル論理回路装置は、FPGA型とCP
LD型とに分けられる。
Aは、図24(A)に示すように、2次元格子状に配列
された論理回路セル6Aが、配線部7Aにより相互に接
続される。また、全体として矩形の配線部7Aの四辺に
接続された入出力部8Aを介して外部と信号の入出力を
行う。
路部3Bは、図24(B)に示すように、入出力部8B
と論理回路セル6Bが、ツリー構造状に配線部7Bに接
続される。
論理回路装置1に読み込まれた回路情報は、回路情報入
力制御部2によってコンフィギュレーションメモリ5に
書き込まれる。コンフィギュレーションメモリ5に書き
込まれた回路情報に従って、回路素子の機能と結線状態
が決められる。この操作をプログラマブル論理回路装置
の再構成またはコンフィギュレーションと呼ぶ。
グ技術の説明]ところで、最近では、アプリケーション
の処理に合わせた専用の処理回路を用いたハードウエア
処理により、汎用プロセッサを用いたソフトウエア処理
よりも高速な処理を実現するというリコンフィギュラブ
ルコンピューティングの分野で、プログラマブル論理回
路装置が活用され始めている。
では、アプリケーション処理で必要となる複数の処理回
路の回路情報を外部記憶装置へ事前に格納しておき、必
要に応じて、その外部記憶装置から読み出した回路情報
を、プログラマブル論理回路装置内のコンフィギュレー
ションメモリに書き込むことで、必要とする回路をプロ
グラマブル論理回路装置上に実現する。
ブル論理回路装置の外部に退避しておくという観点か
ら、キャッシュロジック技術と呼ばれたり、回路情報を
書き替えることにより、実際のプログラマブル論理回路
部の回路規模よりも大きな規模の回路を実現できるとい
う観点から、バーチャルロジック技術と呼ばれている。
以下の説明では、簡単のため、これらの技術を総称し
て、キャッシュロジック技術と呼ぶことにする。
マブル論理回路装置上に、必要に応じて異なる回路を構
成するという時分割駆動技術である。その結果、回路規
模の小さなプログラマブル論理回路装置を用いて、その
回路規模以上の回路を実現でき、回路装置の小型化と低
コスト化が可能となる。
置のコンフィギュレーションメモリに書き込む回路情報
の規模によっては、外部記憶装置からプログラマブル論
理回路装置のコンフィギュレーションメモリに回路情報
を書き込む時間が長くなり、専用のハードウエア処理回
路を用いて高速処理を実現しても、回路再構成時間を含
めた全体の処理時間が、ソフトウエア処理時間よりも長
くなるという問題がある。
ンテキスト技術と呼ばれるデバイス技術である。すなわ
ち、マルチコンテキスト技術においては、プログラマブ
ル論理回路装置内に複数の回路情報を格納することがで
きるように、複数個のコンフィギュレーションメモリを
設け、必要に応じてコンフィギュレーションメモリを切
り替えることにより、プログラマブル論理回路装置に回
路を再構成することで、回路の再構成時間を大幅に短縮
する。
マブル論理回路装置の説明]マルチコンテキスト技術に
よるプログラマブル論理回路装置の構造を、図25に示
す。マルチコンテキスト技術によるプログラマブル論理
回路装置10は、複数の回路情報を外部から読み込む回
路情報入力制御部11と、複数の回路情報から必要な回
路情報を選択する回路情報選択制御部12と、選択され
た回路情報に従って回路機能を実現するプログラマブル
論理回路部13から構成される。
ラマブル論理回路部13の詳細な構造は図26に示すよ
うなものとなり、プログラマブル論理回路部13は、前
述の場合と同様に、入出力部、論理回路セル、配線部か
らなる回路素子14と、この回路素子14に接続するコ
ンフィギュレーションメモリ15とから構成されるが、
このマルチコンテキスト技術によるプログラマブル論理
回路部13の場合のコンフィギュレーションメモリ15
は、複数個のメモリプレーンで構成される。
るプログラマブル論理回路部13の場合には、FPGA
型とCPLD型(図24参照)とのいずれの構造におい
ても、プログラマブル論理回路装置10に外部から読み
込まれた複数の回路情報は、回路情報入力制御部11に
よってコンフィギュレーションメモリ15の各メモリプ
レーンに一つの回路情報が書き込まれる状態で書き込ま
れる。
5の複数個のメモリプレーンに書き込まれた複数の回路
情報のうち、回路情報選択制御部12からの選択信号に
より選択されたメモリプレーンの回路情報に従って、回
路素子14の機能と結線状態が決められて、プログラマ
ブル論理回路装置10に回路が再構成される。
用いられる回路情報の形式には、シリアル形式とパラレ
ル形式とがあり、これら2つの回路情報形式によって、
コンフィギュレーション動作が異なる。そこで、以下
に、図22のプログラマブル論理回路装置1と、図25
のマルチコンテキスト技術を用いたプログラマブル論理
回路装置10とにおける各回路情報形式の場合のコンフ
ィギュレーション動作を、説明する。
回路情報]従来のプログラマブル論理回路装置で用いら
れているシリアル形式の回路情報の構造を図27に示
す。図27(A)に示すように、回路情報は、ヘッダ部
HDs、データ部DTs、フッタ部FTsから構成され
る。プログラマブル論理回路装置内では、シリアル形式
の回路情報は、シリアルデータとして扱われるが、適当
な単位(たとえば、8ビット)で区切ることにより、パ
ラレル伝送やパラレルメモリアクセスを行うことができ
る。
すプリアンブルコードと、回路情報のデータ量を表すレ
ングスカウントと、ヘッダ部HDsの終わりを示す区切
りコードとからなる。
る。ここで、フレームとは、コンフィギュレーションメ
モリに格納されるデータを、ある量(通常100から1
000ビット程度)で区切ったデータの一塊である。こ
のフレームの大きさは、プログラマブル論理回路部への
回路の再構成の容易さを考慮して決定され、例えば、図
24(A)のFPGA型の場合の縦方向の一列分の論理
回路分の回路情報とされる。
に、フレームの始まりを表すスタートフィールドビット
データSTBと、コンフィギュレーションメモリに格納
されるコンフィギュレーションデータCFGDと、フレ
ームの終わりを表すストップフィールドビットデータE
NBとからなる。
りを表すポストアンブルコードからなる。
ログラマブル論理回路装置1のコンフィギュレーショ
ン]図28は、図22に示した従来のプログラマブル論
理回路装置1へのシリアル形式の回路情報によるコンフ
ィギュレーション動作を説明するための機能ブロック図
である。この図28に示したブロック図を用いて、回路
情報のコンフィギュレーションメモリへの格納を説明す
る。
図28のコンフィギュレーションコントローラ2a、レ
ングスカウントレジスタ2b、セレクタ2c、複数個の
シフトレジスタ2dで構成される。
回路部3は、前述したように回路素子4とコンフィギュ
レーションメモリ5とで構成されるが、図28において
は、例えば、図24(A)のようなFPGA型であれ
ば、例えば縦一列の複数個の論理回路セルを単位とし
て、複数列分のコンフィギュレーションメモリ5sと、
回路素子4sとの組に分けられる。
ジスタは、各列のコンフィギュレーションメモリ5sの
各メモリセルに結線される。したがって、各シフトレジ
スタ2dは、例えば、図24(A)のようなFPGA型
であれば、縦一列の論理回路セル数への回路情報分の段
数を備えるもので構成されている。そして、一つのシフ
トレジスタが縦一列の複数個の論理回路セルに対して割
り当てられて、シフトレジスタ2dは、横方向の論理回
路セル数分だけ設けられる。
列〜数十列程度の複数列分について一つのシフトレジス
タ2dが設けられて、その複数列に共通に一つのシフト
レジスタ2dが使用されるように構成される場合もあ
る。
例えば、このシフトレジスタ2dの一つ分のデータ量と
されている。
9から回路情報が読み込まれると、コンフィギュレーシ
ョンコントローラ2aが、その回路情報のヘッダ部のプ
リアンブルコードを検知してコンフィギュレーション処
理を開始する。
トはレングスカウントレジスタ2bに格納される。レン
グスカウントレジスタ2bの値は、後述するシフトレジ
スタ2dのデータシフトごとに1を減じられ、レングス
カウントレジスタ2bの値が0になるまでシフトレジス
タ2dが動作する。このことによって、全てのデータが
シフトレジスタ2dに送り出される。
2cに送られる。初期状態では、セレクタ2cは、コン
フィギュレーションデータを第1列目のシフトレジスタ
2dに送り出す。シフトレジスタ2dは、セレクタ2c
から送り出されたデータを順次シフトする。データがシ
フトレジスタ2dの最後までシフトされると、セレクタ
2cは、次の列のシフトレジスタ2dに、データの送り
出しを切り替える。
グスカウンタ2bの値が0になるまで、シフトレジスタ
2dが動作することにより、全てのデータがシフトレジ
スタ2dに格納される。
ョンデータで満たされると、そのデータは同時並列的に
コンフィギュレーションメモリ5sのすべてに転送さ
れ、プログラマブル論理回路部3の再構成が行われる。
すなわち、例えば、図29に示すように、コンフィギュ
レーションメモリ5sの各メモリセルのラッチ5Lが、
シフトレジスタ2dの各レジスタに接続されており、ラ
ッチ5LへラッチクロックLCLKを送ることにより、
シフトレジスタ2dからコンフィギュレーションメモリ
5sへ同時並列的にデータが転送される。
ポストアンブルコードをコンフィギュレーションコント
ローラ2aが検知すると、コンフィギュレーション処理
が終了する。
ルチコンテキスト技術によるプログラマブル論理回路装
置10のコンフィギュレーション]図31は、図25に
示したマルチコンテキスト技術によるプログラマブル論
理回路装置10へのシリアル形式の回路情報によるコン
フィギュレーション動作を説明するための機能ブロック
図である。この図31に示したブロック図を用いて、従
来のマルチコンテキスト技術による場合の回路情報のコ
ンフィギュレーションメモリへの格納を説明する。
は、図31のコンフィギュレーションコントローラ11
a、レングスカウントレジスタ11b、セレクタ11
c、複数個のシフトレジスタ11dで構成される。
回路部は、前述の従来例と同様に、例えば図24(A)
のようなFPGA型であれば、例えば縦一列の複数個の
論理回路セルを単位として、複数列分のコンフィギュレ
ーションメモリ15sと、回路素子14sとの組に分け
られるが、この例の場合には、各列のコンフィギュレー
ションメモリ15sのそれぞれは、図31で破線で示す
ように、複数メモリプレーン分を備える。
レジスタは、各列のコンフィギュレーションメモリ15
sの各プレーンの各メモリセルに結線される。また、図
25で示した回路情報選択制御部12によるコンフィギ
ュレーションメモリプレーンの選択は、次に図30を用
いて示す各列のコンフィギュレーションメモリ15sの
メモリプレーンのワード線W1,W2,…,WNの選択
に対応する。
ィギュレーションメモリ15sとの接続を示すものであ
る。シフトレジスタ11dの各レジスタは、スイッチS
W1,SW2,…,SWNを介して、各コンフィギュレ
ーションメモリプレーンのメモリセル15s1,15s
2,…,15sNが接続される。ワード線W1,W2,
…,WNを選択制御することで、スイッチSW1,SW
2,…,SWNを開閉制御することができる。そして、
このスイッチSW1,SW2,…,SWNの開閉によ
り、いずれのコンフィギュレーションメモリプレーンの
回路情報により、回路素子14をコンフィギュレーショ
ンするかを選択制御することができる。
は、例えば、図24(A)のようなFPGA型であれ
ば、縦一列の論理セル数への回路情報分の段数を備える
もので構成されている。そして、一つのシフトレジスタ
が縦一列の複数個の論理回路セルに対して割り当てられ
て、シフトレジスタ11dは、横方向の論理セル数分だ
け設けられる。
〜数十列程度の複数列分について一つのシフトレジスタ
11dが設けられて、その複数列に共通に一つのシフト
レジスタ11dが使用されるように構成される場合もあ
る。
例えば、このシフトレジスタ11dの一つ分のデータ量
とされている。
置9には、例えばアプリケーションプログラムで必要と
なる複数の処理回路の回路情報、すなわち、複数個のコ
ンフィギュレーションメモリプレーンに記憶させる複数
個の回路情報が格納されている。そして、この外部記憶
装置9から最初の回路情報が読み込まれると、コンフィ
ギュレーションコントローラ11aが、その回路情報の
ヘッダ部のプリアンブルコードを検知してコンフィギュ
レーション処理を開始する。
トは、レングスカウントレジスタ11bに格納される。
レングスカウントレジスタ11bの値は、次に説明する
シフトレジスタのデータシフトごとに1を減じられ、レ
ングスカウントレジスタ11bの値が0になるまで、シ
フトレジスタ11dが動作する。このことによって、全
てのデータがシフトレジスタ11dに送り出される。
1cに送られる。初期状態では、セレクタ11cは、デ
ータを第1列目のシフトレジスタ11dに送り出す。デ
ータを受け取ったシフトレジスタ11dは、セレクタ1
1cから送り出されたデータを順次シフトする。データ
が、そのシフトレジスタ11dの最後までシフトされる
と、セレクタ11cは、次の列のシフトレジスタ11d
にデータの送り出しを切り替える。以上の動作を繰り返
し、先に述べたレングスカウンタの値が0になるまで、
シフトレジスタ11dが動作することにより、最初の回
路情報のコンフィギュレーションデータがシフトレジス
タ11dに格納される。
ると、図29に示したワード線W1が選択され、シフト
レジスタ11dから、第1のコンフィギュレーションメ
モリプレーンのメモリセル15s1へ最初の回路情報が
同時並列的に転送される。
Tsのポストアンブルコードをコンフィギュレーション
コントローラ11aが検知すると、最初の回路情報のコ
ンフィギュレーション処理が終了する。
初の回路情報の読み込みと同じ手順でシフトレジスタ1
1dがデータで満たされ、図29に示したワード線W2
が選択され、シフトレジスタ11dから第2のコンフィ
ギュレーションメモリプレーンのメモリセル2へ第2の
回路情報が同時並列的に転送される。
の回路情報のそれぞれが、コンフィギュレーションメモ
リ15のそれぞれ独立のメモリプレーンに格納される。
報に対応するワード線が選択され、次にラッチ15Lへ
ラッチクロックLCLKを送ることにより、選択された
メモリプレーンのメモリセルから、同時並列的にコンフ
ィギュレーションデータが転送されて再構成が行われ
る。
回路情報]従来のプログラマブル論理回路装置で用いら
れているパラレル形式の回路情報の構造を図32に示
す。図示のように、回路情報は、ヘッダ部HDp、デー
タ部DTp、フッタ部FTpから構成される。プログラ
マブル論理回路装置内では、あるビット幅、例えば32
ビットのパラレル形式の回路情報は、適当な単位、例え
ば、1ビット、64ビットなどで区切ることにより、プ
ログラマブル論理回路装置外で、シリアル転送、異なる
バス幅のパラレル伝送やパラレルメモリアクセスを行う
ことができる。
すプリアンブルコードと、回路情報の入力クロック速度
などのコンフィギュレーションパラメータを設定するオ
プションコードと、設定されたオプションを実行してデ
ータの読み込みを開始するスイッチコマンドとからな
る。
同様に、複数のフレームからなる。各フレームの内容
は、コンフィギュレーションデータCFGDを書き込む
コンフィギュレーションメモリ内のフレーム位置を表す
フレームアドレスFADRと、コンフィギュレーション
データCFGDの書き込みを指示するデータインコマン
ドDINと、コンフィギュレーションデータCFGDか
ら読み込むワード数を指示するワードカウントWCNT
と、コンフィギュレーションデータCFGDとからな
る。フッタ部FTpは、回路情報の終わりを指示するポ
ストアンブルコードからなる。
がデータとして扱われ、レングスカウントで指示された
クロック数だけシフトレジスタを動作することにより、
回路情報が受動的にコンフィギュレーションメモリ全体
に読み込まれる。一方、このパラレル形式の回路情報
は、データとコマンドとして扱われ、フレームアドレス
FADRで指示されるコンフィギュレーションメモリ部
分に、データインコマンドDINの起動により、コンフ
ィギュレーションデータCFGDが部分的に書き込まれ
る点が特徴である。
ログラマブル論理回路装置1のコンフィギュレーショ
ン]図33は、図22に示した従来のプログラマブル論
理回路装置1へのパラレル形式の回路情報によるコンフ
ィギュレーション動作を説明するための機能ブロック図
である。この図33と図34に示した従来のプログラマ
ブル論理回路装置のコンフィギュレーションメモリの一
部分のブロック図を用いて、回路情報のコンフィギュレ
ーションメモリへの格納を説明する。
図33のコンフィギュレーションコントローラ2e、ア
ドレス生成器2f、セレクタ2gで構成される。また、
図22で示したプログラマブル論理回路部3は、図33
においては、例えば、図24(A)のようなFPGA型
であれば、例えば縦一列の複数個の論理回路セルを単位
として、複数列分のコンフィギュレーションメモリ5s
と、回路素子4sとの組に分けられる。
の場合と同様に、一列分の複数個の論理回路セルへのコ
ンフィギュレーションデータを含むものとして構成され
る。
フィギュレーションメモリ5sのビット線が、セレクタ
2gに結線される。また、コンフィギュレーションメモ
リ5sのワード線は、アドレス生成器2fに結線され
る。
9から回路情報が読み込まれると、コンフィギュレーシ
ョンコントローラ2eが、その回路情報のヘッダ部HD
pのプリアンブルコードを検知してコンフィギュレーシ
ョン処理を開始する。
ョンコードで、コンフィギュレーションのためのパラメ
ータが設定される。次のスイッチコマンドにより、設定
されたオプションが実行され、データの読み込みが開始
される。
Rがアドレス生成器2fに読み込まれ、データを書き込
むコンフィギュレーションメモリ5sに対応するビット
線とワード線とが選択される。次に、データインコマン
ドDINが起動され、コンフィギュレーションデータC
FGDから、ワードカウントWCNTが示す数だけのデ
ータが読み出され、その読み出されたデータがセレクタ
2gを介してコンフィギュレーションメモリ5sに書き
込まれる。この手順を全てのフレームに対して繰り返
す。
Tpのポストアンブルコードをコンフィギュレーション
コントローラ2eが検知すると、コンフィギュレーショ
ン処理が終了する。
ルチコンテキスト技術によるプログラマブル論理回路装
置10のコンフィギュレーション]図36は、図25に
示したマルチコンテキスト技術によるプログラマブル論
理回路装置10へのパラレル形式の回路情報によるコン
フィギュレーション動作を説明するための機能ブロック
図である。この図36と図35に示した従来のマルチコ
ンテキスト技術によるプログラマブル論理回路装置のコ
ンフィギュレーションメモリの一部分のブロック図を用
いて、回路情報のコンフィギュレーションメモリへの格
納を説明する。
は、図36のコンフィギュレーションコントローラ11
e、アドレス生成器11f、セレクタ11gで構成され
る。また、図25で示したプログラマブル論理回路部1
3は、図36のコンフィギュレーションメモリ15s、
回路素子14sで構成される。
ギュレーションメモリ15sと回路素子14sの組は複
数の列に分けられる。そして、各列のコンフィギュレー
ションメモリ15sは、図36で破線で示すように、複
数メモリプレーン分を備える。
ても、シリアル形式の場合と同様に、1プレーン分のメ
モリセルアレイの一列分へのコンフィギュレーションデ
ータを含むものとして構成される。
フィギュレーションメモリ15s(複数個のメモリプレ
ーン(メモリセルアレイ)からなる)のビット線が、セ
レクタ11gに結線される。この場合、複数個のメモリ
プレーンのメモリセルアレイのビット線は、共通にセレ
クタ11gに結線される。また、コンフィギュレーショ
ンメモリ15sのワード線は、複数個のメモリプレーン
のメモリセルアレイについて共通とされ、アドレス生成
器11fに結線される。
部12は、図35に示すコンフィギュレーションメモリ
15sのコンテキスト選択に対応する。
置9から最初の回路情報が読み込まれると、コンフィギ
ュレーションコントローラ11eが、回路情報のヘッダ
部HDpのプリアンブルコードを検知してコンフィギュ
レーション処理を開始する。
ドでコンフィギュレーションのパラメータが設定され
る。次に、スイッチコマンドにより、設定されたオプシ
ョンが実行され、データの読み込みが開始される。
DRがアドレス生成器11fに読み込まれ、データを書
き込むコンフィギュレーションメモリ15sに対応する
ビット線とワード線とが選択される。このとき、図35
に示すように、ひとつの列に対して複数のメモリセルア
レイが配置されているので、たとえば、最初の回路情報
に対しては、第1のメモリセルアレイ15s1のビット
線がセレクタ11gによって選択される。
れ、コンフィギュレーションデータCFGDからワード
カウントWCNTが示す数だけのデータが読み出され
て、セレクタ11gを介してコンフィギュレーションメ
モリ15sに書き込まれる。この手順を全てのフレーム
に対して繰り返す。
ストアンブルコードを、コンフィギュレーションコント
ローラ11eが検知すると、最初の回路情報のコンフィ
ギュレーション処理が終了する。
最初の回路情報の読み込みと同じ手順で、セレクタ11
gで選択された第2のメモリセルアレイ15s2に回路
情報が格納される。以下、順次に、同じ手順を繰り返し
て、N個の回路情報がコンフィギュレーションメモリ1
5に格納される。
報に対応するコンテキスト選択線が選択され、回路素子
14sのコンフィギュレーションが行われる。
構成回路による処理動作]次に、以上説明したような従
来のマルチコンテキスト技術によるプログラマブル論理
回路装置を用いて、複数の回路を用いる一つの処理を行
なう場合の、当該プログラマブル論理回路装置への回路
情報の再構成動作手順を、図37の説明図および図38
のフローチャートを参照しながら、さらに説明する。
ムと呼ばれる単位で構成されるが、図37に示す例は、
一つの回路情報が5フレームで構成されるとともに、一
つの処理が、回路情報1、回路情報2、回路情報3の3
個の回路情報により行われる場合である。
て、前記3個の回路情報(回路情報1、回路情報2、回
路情報3)がコンフィギュレーションメモリ15に格納
される。例えばアプリケーションプログラムによって発
生する選択信号に従って回路情報選択制御部12によ
り、コンフィギュレーションメモリ15に格納された3
個の回路情報から、一つの回路情報が選択され、その回
路情報に従ってプログラマブル論理回路装置10が再構
成される。
と、図39のタイミングチャートを参照して説明する。
図39のタイミングチャートでは、回路情報1、回路情
報2、回路情報3の順にプログラマブル論理回路装置が
再構成されて、処理が終了するとしている。
は、外部記憶装置(図示せず)などに格納された回路情
報を、一つずつ読み込んでコンフィギュレーションメモ
リ15に格納する(ステップS101)。このとき、回
路情報を読み込むたびに、コンフィギュレーションメモ
リ15の残り容量を確認し(ステップS102、S10
3)、全ての回路情報を読み込む前に、コンフィギュレ
ーションメモリ15が一杯になったときは、エラーを検
知して動作を終了する(ステップS104)。
報のすべてをコンフィギュレーションメモリ15に格納
すると、回路情報選択制御部12が選択信号を監視する
(ステップS105)。回路情報選択制御部12が、例
えばアプリケーションプログラムに従って選択信号が切
り替えられたことを検知すると、3個の回路情報のうち
のどれが選択されたかを判別し(ステップS106)、
切り替えられた選択信号に応じた回路情報がコンフィギ
ュレーションメモリ15から読み出され、その回路情報
に従ってプログラマブル論理回路部(図示せず)が再構
成される(ステップS107またはステップS108ま
たはステップS109)。
による処理が継続する限り、回路情報選択制御部12に
よる選択信号の監視が続けられ、選択信号が切り替えら
れるごとに回路情報が切り換えられる。そして、プログ
ラマブル論理回路装置10による処理が終了すると、選
択信号の如何にかかわらず、上述の再構成の手順は終了
する。
理が終了した場合、プログラマブル論理回路装置10へ
の電源供給が遮断されたりしない限り、一般的には、プ
ログラマブル論理回路装置は、最後に選択された回路情
報で再構成された状態が保持される。
トについて、さらに説明する。すなわち、処理が実行状
態になると、まず、3個の回路情報1、2、3のコンフ
ィギュレーションメモリ15への読み込みが行われる。
読み込みが終了して、回路情報の選択指示が行われる
と、その選択指示された回路情報が記憶されているコン
フィギュレーションメモリプレーンが切り替え選択され
て、その回路情報が読み出され、その読み出された回路
情報によりプログラマブル論理回路部が再構成される。
されて続けているのは、前述したように、処理が終了し
た場合、電源供給が遮断されたりしない限り、一般的に
は、プログラマブル論理回路装置は、最後に選択された
回路情報で再構成された状態が保持されるからである。
例]以上説明したようなマルチコンテキスト技術の一つ
として、特開平2−130023号公報に開示される
「マルチファンクション・プログラマブル・ロジック・
デバイス」の例がある。これを従来例1として、図40
を参照しながら説明する。
ラマブル・ロジック・デバイスの構成図を示したもので
ある。このデバイスは、プログラマブル論理アレイ2
1、SRAMで構成されたスイッチ設定用PROM2
2、および選択回路23で構成される。
マブル論理アレイ21に構成される回路に対応したNビ
ットの回路情報をM組記憶することができる。プログラ
マブル論理アレイ21の回路構成は、スイッチ設定用P
ROM22に記憶されたM組の回路情報のうち、選択回
路23で選択された一組の回路情報によって決定され
る。すなわち、選択回路23によって選択する回路情報
を切り替えることにより、プログラマブル論理アレイ2
1の回路構成を再構成することができる。
FCCM’97(FPGAs for Custom
Computing Machines 1997)で
発表された“A Time−Multiplexed
FPGA”の例がある。これを従来例2として、図41
を参照しながら説明する。
の構成を示すものである。この時分割駆動FPGAは、
米国ザイリンクス(Xilinx)社のXC4000E
を改良したものであり、回路素子24の論理セルと内部
配線とを決定する、SRAMで構成されたコンフィギュ
レーションメモリ25を8組備えている。コンフィギュ
レーションメモリ25のそれぞれには、異なる回路構成
に対応する回路情報が格納されており、これらのコンフ
ィギュレーションメモリ25を切り替えることにより、
時分割でFPGAの回路構成を再構成することができ
る。
に、マルチコンテキスト技術は、事前に複数の回路情報
をコンフィギュレーションメモリに格納してあるので、
回路の再構成時間を短縮することを可能にする。
に、複数プレーンまたは複数個のコンフィギュレーショ
ンメモリがプログラマブル論理回路装置の内部に必要な
ため、プログラマブル論理回路部の回路規模が大きくな
る。回路規模が大きくなると、回路素子の負荷容量が大
きくなることにより、回路性能が低下したり、消費電力
が大きくなるという問題を引き起こす。また、回路規模
が大きくなると、プログラマブル論理回路装置の製造コ
ストが高くなるという問題も引き起こす。
MOSプロセスで製造されるので、同じCMOSプロセ
スで作製できるSRAMが、コンフィギュレーションメ
モリとして用いられる。従来例1と従来例2とでは、S
RAMがコンフィギュレーションメモリとして用いられ
ている。SRAMは、1ビットを記憶するために6個の
トランジスタを必要とするので、プログラマブル論理回
路装置内に記憶できる回路情報の数を増やすと、プログ
ラマブル論理回路部の回路規模が大幅に大きくなる。
題は、FPD’95(ThirdCanadian W
orkshop of Field Programm
able Devices 1995)で発表された
“A First Generation DPGA
Implementation”のように、1ビット当
たり3個のトランジスタで構成されるDRAMをコンフ
ィギュレーションメモリとして用いることにより、幾分
緩和される。これを従来例3として、図42を参照しな
がら説明する。
構造を示すものである。論理セルは、4組の構成を格納
できる4×32ビットのDRAM31、4つの8入力マ
ルチプレクサ32〜35、4入力ルックアップテーブル
36、フリップフロップ37、出力を切り替えるセレク
タ38で構成される。
12ビットが4つの8入力マルチプレクサ32〜35の
状態を、16ビットが4入力ルックアップテーブル36
の状態を、1ビットがセレクタ38の状態を決定し、残
り3ビットは保留とされている。4組のDRAM31に
は、それぞれ異なる回路情報が格納されており、メモリ
出力を切り替えることにより、異なる回路を構成するこ
とができる。
当たり3個のトランジスタで構成されるので、この従来
例3によれば、マルチコンテキスト技術における回路規
模が大きくなるという問題は軽減できる。
進展により、ひとつのデバイス上にCMOS回路と、1
ビット当たり1個のトランジスタで構成されるDRAM
を作製することが可能になった。この半導体作製技術
は、DRAM混載プロセスと呼ばれている。1ビットを
記憶するために、CMOSで構成されるSRAMが6個
のトランジスタを必要とし、CMOSで構成されるDR
AMが3個のトランジスタを必要とするのに対して、D
RAM混載プロセスによるDRAMは1個のトランジス
タで済むものである。
分なコンフィギュレーションメモリ領域が必要になると
いう上述したマルチコンテキスト技術の欠点は、コンフ
ィギュレーションメモリにDRAM混載プロセスによる
1トランジスタDRAMを用いることによって、さらに
改善することができる。
VLSI Circuit 1997で発表された
“An Embedded DRAM−FPGA Ch
ipwith Instantaneous Logi
c Reconfiguration”の例がある。こ
れを従来例4として図43を参照しながら説明する。
の論理エレメントと、DRAMエレメントの構造を示す
もので、256×256セルで構成されるDRAMエレ
メント41を、4つの論理エレメント42〜45が囲む
構成となっている。一つの論理エレメントは64ビット
の回路情報で再構成される。左右にセンスアンプを介し
て128ビットずつ引き出されたビット線の64ビット
分ずつが論理エレメント42〜45のそれぞれに接続さ
れる。
報は、上下にワードドライバを介して128ビットずつ
引き出されたワード線を選択することにより、切り替え
られる。すなわち、DRAM−FPGAは、メモリ回路
としてDRAMエレメント41を用いることにより、2
56組の回路構成を格納することを可能にした。
混載プロセスを用いて、メモリ回路を1トランジスタD
RAMで作製することにより、回路情報を格納するため
に余分なコンフィギュレーションメモリ回路領域が必要
となるというマルチコンテキスト技術の欠点を大幅に緩
和することが可能となる。
ランジスタのゲート酸化膜は、CMOS回路部で用いる
トランジスタのゲート酸化膜より厚い酸化膜が必要なの
で、別々に作製しなければならない。このため、製造工
程が増加し、プログラマブル論理回路装置の製造コスト
が高くなったり、製造歩留まりが低下するという新たな
問題を引き起こす。また、製造工程を増やさないため
に、製造工程を共通化して厚い酸化膜を用いると、CM
OS回路部の性能が悪くなるという別の問題を引き起こ
す。
キャッシュロジック技術を用いて、アプリケーションプ
ログラムによる処理の一部分を、プログラマブル論理回
路装置で構成した回路で処理するリコンフィギュラブル
コンピューティング技術を用いた情報処理システムで
は、回路を再構成する時間が長くなり、本来はソフトウ
エア処理に比べて処理速度の速いプログラマブル論理回
路装置によるハードウエア処理が、回路再構成時間を含
めた総処理時間で比べると、ソフトウエア処理よりも時
間を要することがあるという問題がある。
チコンテキスト技術は、回路の再構成時間を短縮するこ
とを可能にするが、複数の回路情報を格納するための余
分なコンフィギュレーションメモリ領域が必要なため、
プログラマブル論理回路部の回路規模が大きくなるとい
う欠点がある。
子の負荷容量が大きくなることにより、回路性能が低下
したり、消費電力が大きくなるという問題を引き起こ
す。また、回路規模が大きくなると、プログラマブル論
理回路装置の製造コストが高くなるという問題も引き起
こす。
を減らすために、そのメモリ回路として、CMOSプロ
セスで作成されるSRAM回路の代わりに、DARM混
載プロセスで作製した1トランジスタDRAM回路を用
いることなどが行われているが、上述したように、製造
工程が増加し、プログラマブル論理回路装置の製造コス
トが高くなったり、製造歩留まりが低下するという新た
な問題を引き起こす。また、製造工程を増やさないため
に、製造工程を共通化してDRAM部の厚い酸化膜をC
MOS回路部に用いると、CMOS回路部の性能が低下
するなるという別の問題を引き起こす。
能の低下、消費電力の増加、製造工程の増加、製造コス
トの増加などをもたらす複数の回路情報を格納するコン
フィギュレーションメモリを用いることなく、高速に回
路を再構成できるプログラマブル論理回路装置を提供す
ることを目的とする。
めに、請求項1の発明によるプログラマブル論理回路装
置においては、回路素子と、この回路素子に接続される
コンフィギュレーションメモリとを備え、前記コンフィ
ギュレーションメモリに書き込まれる回路情報に基づい
て回路が構成されるプログラマブル論理回路部と、前記
プログラマブル論理回路部に複数個の回路を順次に構成
するための複数個の回路情報を記憶するものであって、
前記コンフィギュレーションメモリとは別の回路情報記
憶手段と、前記回路情報記憶手段に、前記複数個の回路
情報を書き込むための回路情報書き込み手段と、指定情
報により指定される前記プログラマブル論理回路部に生
成しようとする一つの回路の回路情報を、前記回路情報
記憶手段に記憶された複数個の回路情報のうちの、一つ
または複数個の回路情報を用いて生成する回路情報編集
手段と、前記回路情報編集手段で生成された前記一つの
回路の回路情報を前記コンフィギュレーションメモリに
書き込むようにする制御手段と、を備えることを特徴と
する。
載のプログラマブル論理回路装置において、前記回路情
報記憶手段および前記回路情報編集手段は、前記プログ
ラマブル論理回路部とは別個に設けることを特徴とす
る。
のプログラマブル論理回路装置において、前記回路情報
記憶手段および前記回路情報編集手段は、そのための回
路情報を前記コンフィギュレーションメモリの一部に読
み込むことにより、前記プログラマブル論理回路部の回
路素子の一部に生成することを特徴とする。
いずれかに記載のプログラマブル論理回路装置におい
て、前記回路情報記憶手段に記憶される回路情報は圧縮
されており、前記回路情報編集手段により、前記圧縮が
解凍されて、前記指定情報で指定された回路情報が生成
されることを特徴とする。
の回路情報は、マルチコンテキスト技術のようにコンフ
ィギュレーションメモリに格納するのではなく、回路情
報記憶手段に一旦格納される。そして、再構成すべき回
路情報が回路情報記憶手段から読み出され、回路情報編
集手段でコンフィギュレーションメモリに書き込む形式
の回路情報に編集されて、コンフィギュレーションメモ
リに転送される。
コンフィギュレーションメモリ領域は、従来の一般的な
プログラマブル論理回路装置のように1つの回路情報を
格納できるメモリ領域を備えれば良いので、マルチコン
テキスト技術の場合のプログラマブル論理回路部の回路
規模が大きくなるという欠点を回避することができる。
なるが、請求項1の発明においては、この回路情報記憶
手段の回路情報は、回路情報編集手段で編集された後
に、コンフィギュレーションメモリに転送される構成で
あるので、回路情報記憶手段に記憶する回路情報は、コ
ンフィギュレーションメモリに直接的に格納する形式の
ものにする必要がなく、少ないデータ量とすることが可
能である。
報を圧縮しておき、その圧縮を回路情報編集手段で解凍
するようにすることにより、回路情報記憶手段のメモリ
容量を、より小さくすることができるものである。
は、請求項2の発明のように、プログラマブル論理回路
部の外部において構成することもできるし、請求項3の
発明のように、プログラマブル論理回路部内に、そのた
めの回路情報を読み込むことにより、構成することもで
きる。
プログラマブル論理回路装置を用いて、この発明による
プログラマブル論理回路装置を実現することができると
いう効果がある。
マブル論理回路装置の幾つかの実施の形態を、前述した
従来のマルチコンテキスト技術によるプログラマブル論
理回路装置と比較しながら、図を参照しながら説明す
る。
述したリコンフィギュラブルコンピューティング技術を
用いた情報処理システムにおいて、そのアプリケーショ
ンプログラムによる処理の一部分、あるいは全部を実行
するための複数の回路を、プログラマブル論理回路装置
で構成する場合の例である。
必要となる複数の処理回路の回路情報を、予め外部記憶
装置に格納しておき、必要に応じて、その外部記憶装置
から読み出した前記複数の回路情報を、プログラマブル
論理回路装置に読み込んで、必要とする回路を、プログ
ラマブル論理回路装置に順次に再構成して、必要な処理
を実行するものである。
構造]第1の実施の形態のプログラマブル論理回路装置
は、この発明によるプログラマブル論理回路装置の第1
の構造を備える。図1は、この第1の構造を備える、こ
の発明によるプログラマブル論理回路装置100の構成
を示すもので、複数の回路情報を、例えば外部記憶装置
(図示せず)から読み込む回路情報入力制御部101
と、読み込んだ複数の回路情報を一時的に記憶する回路
情報記憶部102と、複数の回路情報から必要な回路情
報を選択して編集する回路情報編集部103と、回路情
報入力制御部101を介して読み込まれる編集された回
路情報に従って回路機能を実現するプログラマブル論理
回路部104とから構成される。
装置100では、回路情報入力制御部101は、回路情
報記憶部102に、複数個の回路情報を書き込むための
回路情報書き込み手段の機能も有する。また、回路情報
入力制御部101は、回路情報編集手段で生成された一
つの回路の回路情報を、プログラマブル論理回路部10
4のコンフィギュレーションメモリに書き込むようにす
る制御手段の役割もする。
ル論理回路装置100は、図22に示した従来のプログ
ラマブル論理回路装置1の回路情報入力制御部2および
プログラマブル論理回路3と同様の回路情報入力制御部
101およびプログラマブル論理回路部104に加え
て、回路情報記憶部102と、回路情報編集部103
を、その内部に備えるものである。
の詳細な構造は、図22に示した従来のプログラマブル
論理回路装置のプログラマブル論理回路部と同じであっ
て、図23および図24に示したものとなる。すなわ
ち、プログラマブル論理回路部104は、図26に示し
た従来のマルチコンテキスト技術によるプログラマブル
論理回路部15のように、コンフィギュレーションメモ
リが、複数個のメモリプレーンを備えるものではない。
は、図24(A),(B)に示したような、入出力部、
論理回路セル、配線部からなる回路素子105と、この
回路素子105に接続され、一つの回路情報分を格納す
るようにするコンフィギュレーションメモリ106とか
ら構成される。
4に内蔵のコンフィギュレーションメモリが複数個のコ
ンフィギュレーションメモリあるいは複数個のメモリプ
レーンを持たないことから、この実施の形態のプログラ
マブル論理回路装置100は、図25に示した従来のマ
ルチコンテキスト技術によるプログラマブル論理回路装
置10のような回路情報選択制御部12は具備しない。
マブル論理回路装置100も、従来のプログラマブル論
理回路装置1と同じように、プログラマブル論理回路部
104の回路素子105の接続形態により、図24
(A)に示すようなFPGA型と、図24(B)に示す
ようなCPLD型とに分けられる。
の形態のプログラマブル論理回路装置100において
は、これに複数の回路情報が読み込まれると、その複数
の回路情報は、回路情報記憶部102に格納され、回路
情報編集部103で編集された後に、回路情報入力制御
部101によってコンフィギュレーションメモリ106
に書き込まれる。そして、コンフィギュレーションメモ
リ106に書き込まれた回路情報に従って、回路素子1
05の機能と結線状態が決められる。
レーション]次に、この第1の実施の形態におけるコン
フィギュレーションの方法を、従来のマルチコンテキス
ト技術によるプログラマブル論理回路装置の場合と比較
しながら説明する。なお、この第1の実施の形態では、
シリアル形式の回路情報によりコンフィギュレーション
を行なう場合である。
路情報およびその編集動作を説明するための図である。
この図2を参照しながら、第1の実施の形態のプログラ
マブル論理回路装置100の動作を説明する。この図2
の例は、前述の従来のマルチコンテキスト技術によるプ
ログラマブル論理回路装置10のコンフィギュレーショ
ンにおいて説明した図37に示したものと同じ3つの回
路情報1、2、3による3個の回路を再構成する手順の
例である。
1、2、3のフレーム構成を図2(A)に示す。この図
2(A)に示すように、回路情報1、2、3は、一つの
回路情報が5フレームで構成されているが、さらに詳し
く回路情報のフレーム構造をみると、次のような構成と
なっている。
レーム(1−B)との2種類のフレームから構成されて
おり、フレーム(1−A)の1個と、フレーム(1−
B)の4個の合計5フレームで構成されている。
A、2−A、2−B、2−C)から構成されているが、
そのうちのフレーム(1−A)は、回路情報1を構成す
るフレーム(1−A)と同じである。そして、回路情報
2は、フレーム(1−A)が2個で、他のフレームが、
それぞれ1個ずつの合計5フレームで構成される。
A、2−B、3−A)で構成されるが、そのうちのフレ
ーム(2−A)と、フレーム(2−B)は回路情報2を
構成するフレームと同じである。そして、回路情報3
は、フレーム(2−A)の3個と、フレーム(2−B)
およびフレーム(3−A)の1個ずつの合計5フレーム
で構成される。
たものと同じ回路を再構成する3個の回路情報1、2、
3が、フレームの繰り返しや、他の回路情報のフレーム
の参照を考慮して、従来より小さいフレーム数で構成さ
れるように圧縮される。
すように、フレーム(1−A)と、フレーム(1−B)
の2フレームで構成される。このとき、この回路情報1
のフレーム(1−B)には、当該フレームを3回繰り返
すという参照情報が付加されている。このように繰り返
しの参照情報を含むフレームを、この明細書ではリピー
トフレームと呼ぶことにする。
フレーム(2−A)、フレーム(1−A)、フレーム
(2−B)、フレーム(2−C)の4フレームで構成さ
れる。このとき、この回路情報2のフレーム(1−A)
には、当該フレームデータは回路情報1のフレーム(1
−A)と同じであるという参照情報が付加されている。
このように他の回路情報のフレームの参照情報を含むフ
レームを、この明細書ではリファレンスフレームと呼ぶ
ことにする。
フレーム(2−A)、フレーム(2−B)、フレーム
(3−A)の3フレームで構成される。そして、このと
き、この回路情報3のフレーム(2−A)とフレーム
(2−B)は、それぞれのフレームデータは回路情報2
のフレーム(2−A)、(2−B)と同じであるという
参照情報が付加されたリファレンスフレームの構成とな
っている。また、この回路情報3のフレーム(2−A)
は、当該フレームを3回繰り返すという参照情報が付加
されたリピートフレームの構成となっている。
の具体例]この発明によるシリアル形式の回路情報の構
造例を図3に示す。図27に示した従来のシリアル形式
の回路情報と同じように、この例のシリアル形式の回路
情報も、図3(A)に示すように、ヘッダ部HDs、デ
ータ部DTs、フッタ部FTsから構成される。前述も
したように、プログラマブル論理回路装置100内で
は、シリアル形式の回路情報は、シリアルデータとして
扱われるが、適当な単位(たとえば、8ビット)で区切
ることにより、パラレル伝送やパラレルメモリアクセス
を行うことができる。
は、回路情報の始まりを示すプリアンブルコードと、回
路情報のデータ量を表すレングスカウントと、ヘッダ部
の終わりを示す区切りコードとからなり、また、フッタ
FTsは、回路情報の終わりを表すポストアンブルコー
ドからなるのは、前述の図27の従来の場合と同様であ
る。
ル論理回路装置1の場合と同様に、シフトレジスタへの
転送のための情報として使用されるとともに、この実施
の形態の場合には、回路情報編集部103での編集を指
示する情報としても使用される。
sは、複数のフレームからなるが、その各フレームが、
3種類のフレームのいずれかにより構成される点が前述
の図27の従来の場合と異なる。このデータ部を構成す
るフレームの種類は、従来例と同じ構造のノーマルフレ
ームと、前述のリピートフレームと、前述のリファレン
スフレームの3種類である。
(B)に示すように、従来の回路情報で用いられるフレ
ームと全く同様に、フレームの始まりを表すスタートフ
ィールドビットデータSTBと、コンフィギュレーショ
ンメモリに格納されるコンフィギュレーションデータC
FGDと、フレームの終わりを表すストップフィールド
ビットデータENBとからなる。
うに、リピートフレームの始まりを表すスタートフィー
ルドリピートデータSTrpと、コンフィギュレーショ
ンメモリに格納されるコンフィギュレーションデータC
FGDと、同じフレームデータの繰り返し数を示すリフ
ァレンスカウントRCNTと、フレームの終わりを表す
ストップフィールドビットデータENBとからなる。ス
タートフィールドリピートデータSTrpには、リピー
トフレームであることを示す識別情報が含まれる。後で
説明する手順によって、このリピートフレームからリフ
ァレンスカウントRCNTで示される数のノーマルフレ
ームが生成される。
すように、フレームの始まりを表すスタートフィールド
リファレンスデータSTrefと、回路情報記憶部10
2内の参照先の別のフレームのアドレスを示すリファレ
ンスアドレスRADRと、参照の繰り返し数を示すリフ
ァレンスカウントRCNTと、参照先の別のフレーム内
でデータを読み出す相対アドレスを示すリファレンスオ
フセットROFSと、フレームの終わりを表すストップ
フィールドビットデータENBとからなる。スタートフ
ィールドリファレンスデータSTrefには、リファレ
ンスフレームであることを示す識別情報が含まれる。
ンスフレームから、リファレンスアドレスRADRとオ
フセットアドレスROFSとから計算された、回路情報
記憶部102に格納されたコンフィギュレーションデー
タを持ったノーマルフレームが、リファレンスカウント
RCNTで示された数だけ生成される。
ームとリファレンスフレームの2種類のフレームを持つ
ことが、この実施の形態で用いるシリアル形式の回路情
報の特徴である。これら3種類のフレームは、上述のよ
うに、それぞれ異なるスタートフィールドのコードを持
つことにより、回路情報編集部103において認識され
る。
報であっても、回路情報のデータサイズ(回路情報を構
成するフレーム数)が小さいことが、この発明の一つの
特徴である。このデータサイズの小さい回路情報を、圧
縮された回路情報と呼ぶことにする。
情報が5フレーム(ノーマルフレーム)で構成され、回
路情報入力制御部2を介して3回路情報(回路情報1、
回路情報2、回路情報3)がコンフィギュレーションメ
モリ15に格納される。よって、図25に示した従来の
マルチコンテキスト技術によるプログラマブル論理回路
装置10のコンフィギュレーションメモリ15は、この
例の場合には、少なくとも15フレームを記憶できる容
量を備えなければならない。
技術によるプログラマブル論理回路装置のコンフィギュ
レーションメモリは、図22に示したような通常の従来
のプログラマブル論理回路装置のコンフィギュレーショ
ンメモリに対して、「格納される回路情報数」倍の記憶
容量を必要とする。
は、例えば外部記憶装置から読み込まれた複数個の回路
情報は、一旦、回路情報記憶部102に記憶される。そ
して、回路情報編集部103が、回路情報の選択信号に
従って回路情報記憶部102から、圧縮された回路情報
を取り出し、取り出した回路情報を、一つの回路情報を
記憶する容量の従来と同様のコンフィギュレーションメ
モリ106に格納される回路情報に編集する。
編集後の回路情報をコンフィギュレーションメモリ10
6に格納し、その回路情報に従って回路素子105に選
択された回路が再構成される。
ィギュレーションメモリ106の容量が、プログラマブ
ル論理回路装置100に格納される回路情報数にかかわ
らず、従来のプログラマブル論理回路装置と同じ容量で
あることが、この発明の別の特徴である。ノーマルフレ
ームの形式の回路情報が5フレームからなる前述の例の
場合には、コンフィギュレーションメモリ106は、1
回路情報分である5フレームを記憶できる容量を備えて
いればよい。
術によるプログラマブル論理回路装置のコンフィギュレ
ーションメモリの回路規模が大きいことに起因して、回
路素子の負荷容量が大きくなることで、回路性能が低下
したり消費電力が大きくなるという問題が、この第1の
実施の形態により解決される。
報は、前述のようにして図2(B)に示したように圧縮
されるので、回路情報記憶部102は、ノーマルフレー
ムの構造で必要とする容量よりも少ない容量で、必要と
する複数個の回路情報を記憶することができる。因み
に、上述の例の場合には、ノーマルフレームの形式で記
憶する場合には、回路情報記憶部102では、15フレ
ーム分の容量を必要とするものが、図2(C)に示すよ
うに、9フレーム分を記憶する容量で済むものである。
施の形態のプログラマブル論理回路装置100のコンフ
ィギュレーション]図4は、図1に示した、第1の実施
の形態のプログラマブル論理回路装置へのシリアル形式
の回路情報によるコンフィギュレーション動作を説明す
るための機能ブロック図である。この図4に示したブロ
ック図を用いて、この場合の回路情報のコンフィギュレ
ーションメモリへの格納を説明する。
は、図4においては、コンフィギュレーションコントロ
ーラ101a、レングスカウントレジスタ101b、セ
レクタ101c、複数個のシフトレジスタ101dで構
成される。
路部104の回路素子105とコンフィギュレーション
メモリ106は、図4においては、例えば、図24
(A)のようなFPGA型であれば、例えば縦一列の複
数個の論理回路セル分を単位として、複数列分に分けら
れる。
分の回路情報を格納できる容量のコンフィギュレーショ
ンメモリ106sと、それに接続される回路素子105
sとからなる組として、複数列分で構成される。この場
合、1ノーマルフレームの回路情報は、縦一列の複数個
の論理回路セル分の回路情報の大きさとされる。
のレジスタは、各列のコンフィギュレーションメモリ1
06sの各メモリセルに結線される。したがって、各シ
フトレジスタ101dは、例えば、図24(A)のよう
なFPGA型であれば、縦一列の論理回路セル数への回
路情報分の段数を備えるもので構成されている。そし
て、一つのシフトレジスタが縦一列の複数個の論理回路
セルに対して割り当てられて、シフトレジスタ101d
は、横方向の論理回路セル数分だけ設けられる。
列〜数十列程度の複数列分について一つのシフトレジス
タ101dが設けられて、その複数列に共通に一つのシ
フトレジスタ101dが使用されるように構成される場
合もある。なお、回路情報のノーマルフレームの大きさ
は、シフトレジスタ101dの一つ分のデータ量とな
る。
は、コンフィギュレーションキャッシュメモリ102M
に対応し、回路情報編集部103の機能は、コンフィギ
ュレーションコントローラ101aに組み込まれてい
る。
から回路情報が読み込まれると、コンフィギュレーショ
ンコントローラ101aを介してコンフィギュレーショ
ンキャッシュメモリ102Mに格納される。
1aが、コンテキスト選択の指示を受けると、指示に対
応する回路情報が、コンフィギュレーションキャッシュ
メモリ102Mからコンフィギュレーションコントロー
ラ101aに読み込まれる。コンフィギュレーションコ
ントローラ101aは、読み込んだ回路情報のヘッダ部
HDsのプリアンブルコードを検知して回路情報編集処
理を開始する。
トは、レングスカウントレジスタ101bに格納され
る。レングスカウントレジスタ101bの値は、次に説
明するシフトレジスタ101dのデータシフトごとに1
を減じられ、レングスカウントレジスタ101bの値が
0になるまでシフトレジスタ101dが動作する。この
ことによって、全てのデータがシフトレジスタ101d
に送り出される。
述する手順により、リピートフレームやリファレンスフ
レームの状態として圧縮されたフレームから、圧縮が解
かれた状態のノーマルフレームに変換されて、セレクタ
101cに送られる。
タを第1列目のシフトレジスタ101dに送り出す。シ
フトレジスタ101dは、セレクタ101cから送り出
されたデータを順次シフトする。データがシフトレジス
タ101dの最後までシフトされると、セレクタ101
cは次の列のシフトレジスタ101dにデータの送り出
しを切り替える。先に述べたレングスカウンタの値が0
になるまで、シフトレジスタ101dが動作することに
より、全てのデータがシフトレジスタ101dに格納さ
れる。
れると、そのデータは同時並列的にコンフィギュレーシ
ョンメモリ106sに転送され、プログラマブル論理回
路部104の再構成が行われる。この場合、例えば、前
述の図29に示したように、コンフィギュレーションメ
モリ106sの各メモリセルのラッチが、シフトレジス
タの各レジスタに接続されており、ラッチへラッチクロ
ックLCLKを送ることによりシフトレジスタからコン
フィギュレーションメモリへ同時並列的にデータが転送
される。
ストアンブルコードをコンフィギュレーションコントロ
ーラ101aが検知するとコンフィギュレーション処理
が終了する。
様に、アプリケーションプログラムにより指示される処
理が、回路情報1、回路情報2、回路情報3の3個の回
路情報により行われる場合として、図5、図7、図8の
フローチャートと、図6のタイミングチャートを参照し
て説明する。なお、図6のタイミングチャートでは、回
路情報1、回路情報2、回路情報3の順にプログラマブ
ル論理回路装置が再構成されて、処理が終了するとし
た。
は、外部記憶装置(図1では図示せず)などに格納され
た回路情報を、一つずつ読み込んで回路情報記憶部10
2に格納する(ステップS201)。このとき、回路情
報を読み込むたびに、回路情報記憶部102(コンフィ
ギュレーションキャッシュメモリ102M)の残り容量
を確認し(ステップS202、203)、全ての回路情
報を読み込む前に回路情報記憶部102が一杯になった
ときは、エラーを検知して動作を終了する(ステップS
204)。
路情報を回路情報記憶部102に格納すると、回路情報
編集部103(コンフィギュレーションコントローラ1
01aの一部)が選択信号を監視する(ステップS20
5)。回路情報編集部103は、例えば使用者の選択操
作などにより選択信号が切り替えられたことを検知する
と、3個の回路情報のうちのどれが選択されたかを判別
し(ステップS206)、切り替えられた選択信号に応
じた回路情報を回路情報記憶部102から読み出す(ス
テップS207またはステップS208またはステップ
S209)。
の繰り返し(リピートフレーム)や他の回路情報のフレ
ームの参照(リファレンスフレーム)の有無を調べ、リ
ピートフレームやリファレンスフレームを、読み出した
回路情報が含むと判別したときには、それらのリピート
フレームやリファレンスフレームを、後述の図7、図8
のフローチャートに示すようにして解消することによ
り、回路情報の圧縮状態を解き、その圧縮状態を解いた
後の回路情報をコンフィギュレーションメモリ106に
転送する(ステップS210)。
(D)に示すように、回路情報1のように、フレーム
(1−B)が4回繰り返す場合は、フレーム(1−B)
の後に同じフレームデータを3回付加する。また、回路
情報2のように、回路情報1のフレーム(1−A)が、
その第2フレームに参照されている場合は、回路情報編
集部103が回路情報記憶部102から回路情報1のフ
レーム(1−A)のデータを取り出して、回路情報2の
第2フレームに挿入する。さらに、回路情報3のよう
に、回路情報2のフレーム(2−A)とフレーム(2−
B)が、その第1、第2、第3フレームと第4フレーム
に参照されている場合は、回路情報編集部103が回路
情報記憶部102から、回路情報2のフレーム(2−
A)とフレーム(2−B)のデータを取り出して、回路
情報3の第1、第2フレーム、第3フレームと、第4フ
レームとに挿入する。
ノーマルフレームからなる回路情報とされたフレームデ
ータが、全てコンフィギュレーションメモリ106に転
送されて、格納されると、プログラマブル論理回路部1
04への指定された回路の再構成が完了する。なお、読
み出した回路情報が、リピートフレームやリファレンス
フレームを含まない場合には、そのまま回路情報は順次
に、コンフィギュレーションメモリ106に転送され、
指定された回路の再構成が完了する。
0による処理が継続する限り、回路情報編集部103に
よる選択信号の監視が続けられる(ステップS211お
よびステップS205以降の処理)。プログラマブル論
理回路装置100による処理が終了すると(ステップS
211)、選択信号の如何にかかわらず再構成の手順は
終了する。
処理が終了した場合、プログラマブル論理回路装置10
0への電源供給が遮断されたりしない限り、一般的に
は、最後に選択された回路情報で再構成された状態が保
持される。
について、さらに説明する。すなわち、処理が実行状態
になると、まず、3個の回路情報1、2、3の回路情報
記憶部102への読み込みが行われる。読み込みが終了
して、回路情報の選択指示が行われると、その選択指示
された回路情報が、回路情報記憶部102から回路情報
編集部103に転送され、必要な編集が行われる。そし
て、その編集後の回路情報が、コンフィギュレーション
メモリ106に格納されて、その回路情報によりプログ
ラマブル論理回路部104が再構成される。
れて続けているのは、前述したように、処理が終了した
場合、電源供給が遮断されたりしない限り、一般的に
は、プログラマブル論理回路装置は、最後に選択された
回路情報で再構成された状態が保持されるからである。
6sと回路素子105sとの組のすべてにシフトレジス
タ101dが存在する場合であれば、編集後の回路情報
は、それらのシフトレジスタ101dに書き込まれるこ
とにより、コンフィギュレーションメモリ106に格納
される。
列(複数組)のコンフィギュレーションメモリ106s
と回路素子105sに対して共通となる場合には、回路
情報編集部103は、その編集結果を保持するメモリ部
を備える必要がある。
フレームおよびリファレンスフレームの解消処理]図7
および図8を参照しながら、図5のステップS210の
リピートフレームやリファレンスフレームの解消処理を
含む編集処理およびコンフィギュレーションメモリ10
6への転送処理について説明する。
レームを読み込み(ステップS301)、そのフレーム
の種類をフレームのスタートフィールド(ステップS3
02)で判別する。すなわち、スタートフィールドが、
スタートフィールドビットデータSTBであるときに
は、ノーマルフレームであると判別し、また、スタート
フィールドリピートデータSTrpであるときには、リ
ピートフレームであると判別し、さらに、スタートリフ
ァレンスデータSTrefであるときには、リファレン
スフレームであると判別する。
別の結果、読み込まれたフレームがノーマルフレームの
ときは、フレームのデータをそのまま送り出す(ステッ
プS303)。
別の結果、読み込まれたフレームがリピートフレームの
ときは、リファレンスカウントRCNTを読み込む(ス
テップS304)。つぎに、出力はノーマルフレームの
データとして送出するので、スタートフィールドビット
データSTB、コンフィギュレーションデータCFG
D、ストップフィールドビットデータENBを送り出し
て(ステップS305、S306、S307)、リファ
レンスカウントRCNTから1を減じる(ステップS3
08)。
値が0になったか否か判別し(ステップS309)、0
でなければ、ステップS305からステップS308の
手順を繰り返す。そして、リファレンスカウントRCN
Tが0になったら、全ての処理が終了したか否か判別し
(ステップS310)、終了していなければ、ステップ
S301に戻って、上述のステップを繰り返す。全ての
処理を終了すれば、この処理ルーチンを終了する。
ップS308の手順が、リファレンスカウントRCNT
が0になるまで繰り返されることにより、圧縮されたリ
ピートフレームからリファレンスカウントRCNTで指
示された数のノーマルフレームが生成される。
別の結果、読み込まれたフレームがリファレンスフレー
ムのときは、リファレンスカウントRCNT、リファレ
ンスアドレスRADR、リファレンスオフセットROF
Sを読み込む(図8のステップS311、S312,S
313)。
フレームの位置を示すリファレンスアドレスRADR
に、参照先のフレーム内での参照するコンフィギュレー
ションデータCFGDの相対位置を表すリファレンスオ
フセットROFSを加えて、参照するコンフィギュレー
ションデータの、回路情報記憶部102の絶対アドレス
を計算する(ステップS314)。
ィギュレーションデータを、回路情報記憶部102から
読み出して回路情報編集部103内に一時的に格納する
(ステップS315)。
に、出力はノーマルフレームのデータとして送出するの
で、スタートフィールドビットデータSTB、コンフィ
ギュレーションデータCFGD、ストップフィールドビ
ットデータENBを順次に送り出して(ステップS31
6、S317、S318)、リファレンスカウントRC
NTから1を減じる(ステップS319)。そして、リ
ファレンスカウントRCNTが0になるまで、ステップ
S316〜ステップS319の手順を繰り返す(ステッ
プS320)。
0になったら、全ての処理が終了したか否か判別し(ス
テップS310)、終了していなければ、ステップS3
01に戻って、上述のステップを繰り返す。全ての処理
を終了すれば、この処理ルーチンを終了する。
ップS319の手順が、リファレンスカウントRCNT
が0になるまで繰り返されることにより、圧縮されたリ
ファレンスフレームから、参照されたコンフィギュレー
ションデータを持ったノーマルフレームがリファレンス
カウントRCNTで指示された数だけ生成される。
ことにより、リピートフレームやリファレンスフレーム
により圧縮された回路情報から、圧縮が解かれた回路情
報(ノーマルフレームのみからなる回路情報)が生成さ
れる。
回路情報は、回路情報編集部103から回路情報入力制
御部101に送られることにより、従来のプログラマブ
ル論理回路装置のコンフィギュレーションと同じ手順
で、プログラマブル論理回路部104にコンフィギュレ
ーションされる。
るプログラマブル論理回路装置の第2の実施の形態を、
第1の実施の形態と比較しながら説明する。
理回路装置としては、前述の図1に示した第1の構造の
プログラマブル論理回路装置100を用いる。また、回
路情報は、図3に示したものと同一のシリアル形式の回
路情報を用いる。この第2の実施の形態で、第1の実施
の形態と異なるのは、コンフィギュレーションの方法で
ある。
路情報およびその編集動作を説明するための図である。
この図9の例も、図2の第1の実施の形態の場合と同様
に、前述の従来のマルチコンテキスト技術によるプログ
ラマブル論理回路装置のコンフィギュレーションにおい
て説明した図37に示したものと同じ3つの回路情報
1、2、3による3個の回路を再構成する手順の例であ
る。
構造は、図2に示したものと同じである。すなわち、図
9(A)〜図9(C)は、図2(A)〜図2(C)と全
く同一である。
示したタイミングチャートと同じように、回路情報1、
回路情報2、回路情報3、の順番で再構成されるとす
る。
報2によって再構成した後に、回路情報3によって再構
成するとき、回路情報3の第1フレームと第4フレーム
のフレームデータは、回路情報2の第1フレームと第4
フレームのフレームデータとそれぞれ同じであること
が、回路情報編集部103によって検知される。
ームのデータが同じであるということは、回路情報が異
なっても、プログラマブル論理回路部104において、
そのフレームに対応した回路素子の機能と結線状態は同
じであるということを意味する。すなわち、回路情報2
に従って再構成された後に、回路情報3に従って再構成
する場合は、第1フレームと第4フレームに対応する回
路情報は、改めてコンフィギュレーションメモリ106
に格納する必要は無いことが分かる。
情報編集部103は、編集により生成した回路情報が、
その前に生成された回路の回路情報と、同じフレーム位
置に同じフレームのデータを含む場合は、そのフレーム
のデータを回路情報入力制御部101に転送しない。
集部103での編集処理およびコンフィギュレーション
メモリ106への転送処理を、図10および図11のフ
ローチャートと、前述の図6のタイミングチャートを参
照して説明する。図6のタイミングチャートでは、回路
情報1、回路情報2、回路情報3の順にプログラマブル
論理回路装置が再構成されて、処理が終了するとしてい
る。
とんどは、第1の実施の形態における対応する図7およ
び図8のフローチャートと同一であるので、その同一部
分には、図7および図8のフローチャートと同じステッ
プ番号を付すことにする。
の図7および図8との違いは、次の通りである。すなわ
ち、ステップS302でのフレームの種類の判別の結
果、読み込まれたフレームが、リファレンスフレームで
あると判別されたときには、図11に示すように、その
フレームが、その直前に再構成された回路の回路情報の
同じ位置のフレームと同一であるか否か判別され(ステ
ップS330)、同一でなければ、前述と同様にして、
ステップS311以降の手順を実行する。
そのフレームが、その直前に再構成された回路の回路情
報の同じ位置のフレームと同一であると判別されたとき
には、そのフレームの回路情報のコンフィギュレーショ
ンメモリ106への転送は、スキップされ(ステップS
331)、リファレンスカウントRCNTから1を減じ
る(ステップS332)。
値が0になったか否か判別し(ステップS333)、0
でなければ、ステップS330に戻り、上述の動作を繰
り返す。そして、ステップS333でリファレンスカウ
ントRCNTが0になったと判別されたときには、全て
の処理が終了したか否か判別し(ステップS310)、
終了していなければ、ステップS301に戻って、上述
のステップを繰り返す。全ての処理を終了すれば、この
処理ルーチンを終了する。
8で説明したものと全く同一である。すなわち、図11
において、アンダーラインを付したステップが、この第
2の実施の形態において、図7および図8のフローチャ
ートに付加されている。
おいては、回路情報2のフレーム(2−A)が、回路情
報3の第1、第2、第3フレームに参照されており、ま
た、回路情報2のフレーム(2−B)が、回路情報3の
第4フレームに参照されている。そして、それらの参照
されているフレームのうち、第1フレームと第4フレー
ムのフレームデータが、回路情報2と、回路情報3とで
同一である。このため、この第2の実施の形態の場合に
は、回路情報3では、図9(D)でブランクで示すよう
に、第1フレームと第4フレームのフレームデータは、
コンフィギュレーションメモリ106には転送されな
い。
06の対応するフレームの部分には、既に、回路情報2
の各フレームデータが転送されて格納されていることか
ら、回路情報3で必要とするフレームデータが格納され
ている。
においては、既にコンフィギュレーションメモリ106
に存在している回路情報を有効利用することにより、不
必要なフレームデータの転送を回避することができるの
で、回路情報のコンフィギュレーションを、より高速化
することができるものである。
ログラマブル論理回路装置の第2の構造]この第3の実
施の形態のプログラマブル論理回路装置は、この発明に
よるプログラマブル論理回路装置の第2の構造を備え
る。図12は、この第2の構造を備える、この発明によ
るプログラマブル論理回路装置200の構成を示すもの
で、回路情報を外部から読み込む回路情報入力制御部2
01と、読み込まれた回路情報に従って回路機能を実現
するプログラマブル論理回路部202とから構成され
る。
路が再構成される回路素子2021と、この回路素子2
021に回路を再構成するための回路情報を格納するコ
ンフィギュレーションメモリ2022が設けられるの
は、前述の実施の形態と同様であるが、さらに、この第
2の構造においては、プログラマブル論理回路部202
には、処理に必要となる複数の回路情報を一時的に記憶
する回路情報記憶部2023と、これらの複数の回路情
報から必要な回路情報を選択して編集する回路情報編集
部2024とが再構成されて設けられる。
通常の構成のプログラマブル論理回路装置の構成要素で
ある回路情報入力制御部とプログラマブル論理回路部の
他に、回路情報記憶部と、回路情報編集部を新たに設け
る構成であって、従来の通常の構成のプログラマブル論
理回路装置を、そのまま用いることができない構成であ
るが、この発明によるプログラマブル論理回路装置の実
施の形態の第2の構造は、従来の通常の構成のプログラ
マブル論理回路装置のプログラマブル論理回路部202
内に、回路情報記憶部2023と回路情報編集部202
4とを再構成した構造とすることにより、従来の通常の
構成のプログラマブル論理回路装置をそのまま使用でき
るようにした場合である。
同じように、プログラマブル論理回路装置200に読み
込まれた複数の回路情報は、プログラマブル論理回路部
202の回路情報記憶部2023に格納され、回路情報
編集部2024で編集された後に、回路情報入力制御部
201によってコンフィギュレーションメモリ2022
に書き込まれる。コンフィギュレーションメモリ202
2に書き込まれた回路情報に従って、回路素子2021
の機能と結線状態が決められる。
は、まず最初に、プログラマブル論理回路装置200と
して一つの回路情報を読み込んで、そのプログラマブル
論理回路部202に、回路情報記憶部2023と回路情
報編集部2024の機能を備える回路部分を再構成する
ことにある。このときの回路情報は、回路情報入力制御
部201を介してコンフィギュレーションメモリ202
2に格納される。
の違いは、例えば外部記憶装置から複数の回路情報を読
み込んで回路情報記憶部2023に記憶するときに、回
路情報入力制御部201を介さず、プログラマブル論理
回路部202の入出力部を介して回路情報記憶部202
3に複数の回路情報を読み込むことにある。したがっ
て、この第2の構造においては、プログラマブル論理回
路部202の入出力部が、回路情報記憶部2023への
回路情報の書き込み手段を構成する。
の違いは、回路情報編集部2024で編集された回路情
報が、プログラマブル論理回路部202の入出力部を介
してプログラマブル論理回路装置200の外部に出力さ
れ、改めて回路情報入力制御部201に入力されること
である。回路情報入力制御部201が、コンフィギュレ
ーションメモリ2022に回路情報を転送してコンフィ
ギュレーションを実行するのは、従来と同様である。
ラマブル論理回路装置は複数の回路情報を読み込むこと
ができないこと、プログラマブル論理回路部に構成され
た回路は入出力部を介してデータを入出力しなければな
らないこと、により生じる。
レーション]この第3の実施の形態においては、プログ
ラマブル論理回路装置200が上述した第2の構造を備
える他は、シリアル形式で回路情報が構成されるととも
に、回路情報が前述の図3に示すような3種のフレーム
構成を取り得ることにより、前述と同様にして圧縮され
る点は、前述の第1および第2の実施の形態の場合と同
様である。
ブル論理回路装置200の構成要素のうち、回路情報入
力制御部201、回路情報記憶部2023、回路情報編
集部2024、コンフィギュレーションメモリ2022
に着目して、図13を参照しながら、この第3の実施の
形態のプログラマブル論理回路装置200の動作を説明
する。
理回路装置200のコンフィギュレーションメモリ20
22は、5フレーム分の回路情報が格納可能である。そ
して、このプログラマブル論理回路装置200において
は、最初の1フレーム(第1フレーム)で回路情報記憶
部2023と回路情報編集部2024を、プログラマブ
ル論理回路部202内に再構成し、残りの4フレーム
(第2フレームから第5フレーム)で、3種類の処理回
路を再構成する。
回路情報として、回路情報記憶部2023と回路情報編
集部2024とを再構成するための第1フレームのみの
回路情報0を用意する。そして、この回路情報0によ
り、プログラマブル論理回路部202に回路情報記憶部
2023と回路情報編集部2024とを再構成する。処
理に必要な回路情報1、2、3は、図13に示すよう
に、この第1フレームの部分は、再構成しないように、
第1フレーム部分はブランクとした4フレームで構成さ
れる。
の実施の形態と同様にして、3つの回路情報1、2、3
は、前述のような回路情報の圧縮により、より小さいフ
レーム数で構成される。
A)と、フレーム(1−B)の2フレームで構成され
る。フレーム(1−B)は、リピートフレームの構成で
あり、この例の場合には、同フレームを3回繰り返すと
いう参照情報が付加されている。
ーム(1−A)、フレーム(2−B)の3フレームで構
成される。回路情報2のフレーム(1−A)は、リファ
レンスフレームであり、そのフレームデータには回路情
報1のフレーム(1−A)と同じであるという参照情報
が付加されているとともに、同フレームを2回繰り返す
という参照情報が付加されている。
ーム(2−B)の2フレームで構成される。回路情報3
のフレーム(2−A)とフレーム(2−B)には、それ
ぞれ、フレームデータは回路情報2のフレーム(2−
A)とフレーム(2−B)と同じであるという参照情報
が付加され、また、フレーム(2−A)には、同フレー
ムを3回繰り返すという参照情報が付加されている。
路情報も、第1の実施の形態と同じようにして圧縮され
ている。したがって、回路情報記憶部2023に格納さ
れるフレーム数は、圧縮がない場合には、12フレーム
分が必要であるのに対して、7フレームというように、
少ないフレーム数で良くなる。
も、回路情報記憶部2023および回路情報編集部20
24の働きは、上述の実施の形態と同様であり、外部か
ら読み込まれた複数の回路情報、この例では回路情報
1、2、3は、回路情報記憶部2023に一時記憶され
る。そして、回路情報編集部2024は、使用者の選択
指示に応じた選択信号に従って、回路情報記憶部202
3から圧縮された回路情報を取り出し、取り出した回路
情報を従来のプログラマブル論理回路装置のコンフィギ
ュレーションメモリに格納される回路情報と同様の回路
情報に編集する。次に、回路情報入力制御部201が、
回路情報編集部2024からの回路情報をコンフィギュ
レーションメモリ2022に格納し、その回路情報に従
ってプログラマブル論理回路装置200が再構成され
る。
と図16のタイミングチャートを参照して説明する。図
16のタイミングチャートでは、回路情報1、回路情報
2、回路情報3の順にプログラマブル論理回路装置20
0に処理に必要な回路が再構成されて、処理が終了する
とした。
の実施の形態および第2の実施の形態の図5のフローチ
ャートと比較すると、最初に、ステップS400が挿入
されている点が異なるのみで、その後のステップは、全
く同一である。そこで、図15のフローチャートにおい
ても、図5のフローチャートと同一ステップには、同一
ステップ番号を付している。
は、プログラマブル論理回路部202に、回路情報記憶
部2023と回路情報編集部2024とを再構成する回
路情報0を読み込む。図13に示すように、回路情報0
は、その第1フレーム0に、回路情報記憶部2023と
回路情報編集部2024とを再構成する回路情報を有し
ている。そして、その第2フレームから第5フレーム
は、後に処理回路を再構成するために、空きフレームと
なっている。この手順は、従来のプログラマブル論理回
路装置で実現される手順と同じである。
テップS211の手順が実行されて、回路情報1、2、
3は、順次、圧縮が解凍されながら、コンフィギュレー
ションメモリ2022に格納され、プログラマブル論理
回路装置200に、処理に必要な回路が順次に再構成さ
れる。
に格納されている複数個の回路情報1、2、3を、プロ
グラマブル論理回路部202の入出力部を介して、一つ
ずつ読み込んで回路情報記憶部2023に格納する(ス
テップS201)。前述の実施の形態の場合と異なり、
この第2の実施の形態の場合には、回路情報入力制御部
を介して読み込むのではなく、プログラマブル論理回路
部202の入出力部を介して読み込む。
に、回路情報記憶部2023の残り容量を確認し、全て
の回路情報を読み込む前に回路情報記憶部2023が一
杯になったときは、エラーを検知して動作を終了する
(ステップS202、S203,204)。
レームは、図13に示すように、既に、コンフィギュレ
ーションメモリ2022に格納されて、プログラマブル
論理回路部202に再構成されている回路情報記憶部2
023と回路情報編集部2024の部分と干渉しないよ
うに、つまり、プログラマブル論理回路部202におい
て、これら回路情報記憶部2023と回路情報編集部2
024の回路構成が壊されないように、空きフレームと
なっている。
3に格納されると(ステップS202)、回路情報編集
部2024が選択信号を監視する(ステップS205、
ステップS206)。回路情報編集部2024が、選択
信号が切り替えられたことを検知すると、切り替えられ
た回路情報に従って、回路情報記憶部2023から、必
要な回路情報を取り出す(ステップS207〜ステップ
S209)。
の繰り返し(リピートフレーム)や他の回路情報のフレ
ームの参照(リファレンスフレーム)を調べ出し、それ
らのリピートフレームやリファレンスフレームを解消す
ることにより、回路情報の圧縮状態を解く(ステップS
210)。
いては、図14に示すように、回路情報1のように、フ
レーム(1−B)が3回繰り返す場合は、フレーム(1
−B)の後に同じフレームデータを2回付加する。
ム(1−A)が、その第3フレームに参照されている場
合は、回路情報編集部2024が回路情報記憶部202
3から回路情報1のフレーム(1−A)のデータを取り
出して、回路情報2の第3フレームに挿入する。
のフレーム(2−A)とフレーム(2−B)が、その第
2、第3、第4フレームと、第5フレームに参照されて
いる場合は、回路情報編集部2024が回路情報記憶部
2023から回路情報2のフレーム(2−A)とフレー
ム(2−B)のデータを取り出して、回路情報3の第
2、第3、第4フレームと第5フレームに挿入する。
入力制御部201に送られ、従来のプログラマブル論理
回路装置と同じように、コンフィギュレーションメモリ
2022に格納され、再構成が完了する(ステップS2
11)。
る処理が継続する限り、回路情報編集部による選択信号
の監視が続けられる。プログラマブル論理回路装置によ
る処理が終了すると、選択信号の如何にかかわらず再構
成の手順は終了する。
び回路情報の再構成動作のタイミングチャートである。
回路情報1、2、3の読み込みに先立ち、回路情報記憶
部2023および回路情報編集部2024をプログラマ
ブル論理回路部202に予め再構成するため、回路情報
0を読み込むようにする点が、第1および第2の実施の
形態の場合の図6のタイミングチャートと異なってい
る。
態は、第3の実施の形態において、前述した第2の実施
の形態と同様に、直前に既にプログラマブル論理回路部
202に再構成してある回路を有効利用するようにした
場合である。
は、回路情報編集部2024で、回路情報記憶部202
3から読み出した回路情報の編集を行なって、回路情報
入力制御部201を通じてコンフィギュレーションメモ
リ2022に回路情報を転送する際に、その直前にプロ
グラマブル論理回路部202に再構成されて生成された
回路の回路情報と、同じフレーム位置に同じフレームの
データを含む場合は、そのフレームのデータは、回路情
報入力制御部201を通じてコンフィギュレーションメ
モリ2022に転送しない。
2、3により、3つの回路を順次にプログラマブル論理
回路装置200に再構成して生成する場合を例にとる
と、図17に示すように、回路情報2によってプログラ
マブル論理回路部202を再構成した後に、回路情報3
によってプログラマブル論理回路部202を再構成する
とき、回路情報3の第2フレームと第5フレームのフレ
ームデータは、回路情報2の、同じ位置のフレームのデ
ータとそれぞれ同じであることが、回路情報編集部20
24によって検知される。
いて同じ位置のフレームのデータが同じであるというこ
とは、そのフレームに対応した回路素子の機能と結線状
態は同じであるということを意味するので、回路情報3
に従って再構成する場合は、第2フレームと第5フレー
ムに対応する回路情報を改めてコンフィギュレーション
メモリに格納する必要はなく、図10および図11に示
した場合と全く同様にして、そのフレームのデータ部分
は、スキップして、そのフレームデータを回路情報入力
制御部201に転送しない。
第4の実施の形態は、全て、回路情報は、シリアル形式
の場合としたが、この発明は、パラレル形式の回路情報
の場合にも、もちろん適用できる。この第5の実施の形
態は、パラレル形式の回路情報の場合である。
の回路情報の具体的な構造を示して、回路情報編集部1
03(第1および第2の実施の形態の場合)や回路情報
編集部2024(第3および第4の実施の形態の場合)
で行われる回路情報のリピートフレームやリファレンス
フレームの解消について説明する。
報]この第5の実施の形態に用いるパラレル形式の回路
情報の構造を図18に示す。図32に示した従来のパラ
レル形式の回路情報と同じように、この場合のパラレル
形式の回路情報も、図18(A)に示すように、ヘッダ
部HDp、データ部DTp、フッタ部FTpから構成さ
れる。
200内では、あるビット幅(例えば32ビット)のパ
ラレル形式の回路情報は、適当な単位(例えば、1ビッ
ト、64ビット)で区切ることにより、プログラマブル
論理回路装置100または200外で、シリアル転送、
異なるバス幅のパラレル伝送やパラレルメモリアクセス
を行うことができる。
すプリアンブルコードと、回路情報の入力クロック速度
などのコンフィギュレーションパラメータを設定するオ
プションコードと、設定されたオプションを実行してデ
ータの読み込みを開始するスイッチコマンドとからな
る。このスイッチコマンドは、この発明の各実施の形態
の回路情報編集部への編集指示情報ともなっている。
3種類の複数のフレームからなる。フッタ部FTpは、
回路情報の終わりを表すポストアンブルコードからな
る。
のパラレル形式においても、ノーマルフレーム、リピー
トフレーム、リファレンスフレームの3種類である。
ように、従来のパラレル形式の回路情報で用いられるフ
レームと同じ構造であり、データを書きこむコンフィギ
ュレーションメモリ内のフレーム位置を表すフレームア
ドレスFADR、データの書きこみを指示するデータイ
ンコマンドDIN、コンフィギュレーションデータCF
GDから読み込むワード数を指示するワードカウントW
CNT、コンフィギュレーションデータCFGDからな
る。
ように、データを書きこむコンフィギュレーションメモ
リ内のフレーム位置を表すフレームアドレスFADR、
データの繰り返しを指示するリピートコマンドREP
T、コンフィギュレーションデータCFGDから読み込
むワード数を指示するワードカウントWCNT、繰り返
し数を指示するリファレンスカウントRCNT、コンフ
ィギュレーションデータCFGDからなる。のちに説明
する手順で、圧縮されたリピートフレームからリファレ
ンスカウントRCNTで示された数のノーマルフレーム
が生成される。
すように、データを書きこむコンフィギュレーションメ
モリ内のフレーム位置を表すフレームアドレスFAD
R、データの参照を指示するリファレンスコマンドRE
FC、コンフィギュレーションデータCFGDから読み
込むワード数を指示するワードカウントWCNT、繰り
返し数を指示するリファレンスカウントRCNT、参照
先のフレーム内でデータを読み出す相対アドレスを示す
リファレンスオフセットROFS、回路情報記憶部10
2または2023内の参照先のフレームのアドレスを示
すリファレンスアドレスRADRからなる。のちに説明
する手順で、圧縮されたリファレンスフレームから、リ
ファレンスアドレスRADRとオフセットアドレスRO
FSから計算された回路情報記憶部102または202
3に格納されたコンフィギュレーションデータを持った
ノーマルフレームが、リファレンスカウントRCNTで
示された数だけ生成される。
ームとリファレンスフレームの2種類のフレームを持つ
ことが、この例のパラレル形式の回路情報の特徴であ
る。これら3種類のフレームは、それぞれ異なるコマン
ド(データインコマンドDIN、リピートコマンドRE
PT、リファレンスコマンドREFC)を持つことによ
り、それが回路情報編集部103または2024に認識
され、区別される。
造のプログラマブル論理回路装置100のコンフィギュ
レーション]図19は、図1に示した、第1の構造のプ
ログラマブル論理回路装置へのパラレル形式の回路情報
によるコンフィギュレーション動作を説明するための機
能ブロック図である。この図19に示したブロック図を
用いて、この場合の回路情報のコンフィギュレーション
メモリへの格納を説明する。
は、図19においては、コンフィギュレーションコント
ローラ101e、アドレス生成器101f、セレクタ1
01gで構成される。
路部104の回路素子105とコンフィギュレーション
メモリ106は、図19においては、例えば、図24
(A)のようなFPGA型であれば、例えば縦一列の複
数個の論理回路セル分を単位として、複数列分に分けら
れる。
の回路情報を格納できる容量のコンフィギュレーション
メモリ106sと、それに接続される回路素子105s
とからなる組として、複数列分で構成される。この場
合、1ノーマルフレームの回路情報は、縦一列の複数個
の論理回路部分の回路情報の大きさとされる。
て、各列のコンフィギュレーションメモリ106sのビ
ット線がセレクタ101gに結線される。また、コンフ
ィギュレーションメモリ106sのワード線は、アドレ
ス生成器101fに結線される。
は、図19ではコンフィギュレーションキャッシュメモ
リ102Mに対応し、回路情報編集部103の機能は、
コンフィギュレーションコントローラ101eに組み込
まれている。
9から回路情報が読み込まれると、コンフィギュレーシ
ョンコントローラ101eを介してコンフィギュレーシ
ョンキャッシュメモリ102Mに格納される。
1eが、コンテキスト選択の指示を受けると、指示に対
応する回路情報が、コンフィギュレーションキャッシュ
メモリ102Mからコンフィギュレーションコントロー
ラ101eに読み込まれる。そして、コンフィギュレー
ションコントローラ101eが、回路情報のヘッダ部H
Dpのプリアンブルコードを検知して回路情報編集処理
を開始する。
ンコードでコンフィギュレーションのパラメータが設定
される。そして、次のスイッチコマンドにより、設定さ
れたオプションが実行され、データDTpの読み込みが
開始される。
する手順により、リピートフレームやリファレンスフレ
ームにより圧縮されたフレームから、圧縮が解かれたノ
ーマルフレームに変換される。そして、各フレームのフ
レームアドレスFADRがアドレス生成器102fに読
み込まれ、データを書き込むコンフィギュレーションメ
モリ106sに対応するビット線とワード線が選択され
る。次に、データインコマンドDINが起動され、コン
フィギュレーションデータCFGDからワードカウント
WCNTに示される数だけのデータが読み出されて、セ
レクタ101gを介してコンフィギュレーションメモリ
106sに書き込まれる。この手順を全てのフレームに
対して繰り返す。
ストアンブルコードをコンフィギュレーションコントロ
ーラ101eが検知すると、コンフィギュレーション処
理が終了する。以上の処理は、図5のフローチャートに
示した手順と全く同様であるが、ステップS210での
回路情報編集部103での、圧縮解凍処理が、図20お
よび図21に示すようになる点が、前述のシリアル形式
の回路情報の場合(図7、図8)とは異なる。
図21を参照しながら、このパラレル形式の回路情報の
場合の実施の形態におけるリピートフレームやリファレ
ンスフレームの解消処理を説明する。
レームを読み込み、その種類を各フレームのフレームア
ドレスFADRに続くコマンドで判別する。そして、読
み込まれたフレームがノーマルフレームであると判別さ
れたときは、そのフレームのデータをそのまま送り出す
(ステップS503)。
レームであると判別されたときは、リファレンスカウン
トRCNTを読み込む。つぎに、フレームアドレスFA
DR、データインコマンドDIN、ワードカウントWC
NT、コンフィギュレーションデータCFGDを、順次
送り出して(ステップS504〜S508)、リファレ
ンスカウントRCNTから1を減じる(ステップS50
9)。この手順をリファレンスカウントが0になるまで
繰り返す(ステップS510)ことにより、圧縮された
リピートフレームから、リファレンスカウントRCNT
で指示された数のノーマルフレームを生成する。
スフレームであると判別されたときは、リファレンスカ
ウントRCNT、リファレンスアドレスRADR、リフ
ァレンスオフセットROFSを読み込む(図21のステ
ップS511〜S513)。次に、回路情報記憶部10
2内の参照先のフレームの位置を示すリファレンスアド
レスRADRに、参照先のフレーム内での参照するコン
フィギュレーションデータCFGDの相対位置を表すリ
ファレンスオフセットROFSを加えて、参照するコン
フィギュレーションデータCFGDの絶対アドレスを計
算する(ステップS514)。
ィギュレーションデータCFGDを読み出して回路情報
編集部103内に一時的に格納する(ステップS51
5)。次に、前述したリピートフレームの場合と同じよ
うに、リファレンスカウントRCNTが0になるまで、
フレームアドレスFADR、データインコマンドDI
N、ワードカウントWCNT、コンフィギュレーション
データCFGDを送り出して(ステップS516〜S5
21)、圧縮されたリファレンスフレームから、参照さ
れたコンフィギュレーションデータCFGDを持ったノ
ーマルフレームをリファレンスカウントRCNTで指示
された数だけ生成する。
とにより(ステップS522)、リピートフレームやリ
ファレンスフレームにより圧縮された回路情報から、圧
縮が解かれたノーマルフレームのみからなる回路情報が
生成される。
入力制御部101に送ることにより、従来のプログラマ
ブル論理回路装置のコンフィギュレーションと同じ手順
でコンフィギュレーションされる。
第1の構造のプログラマブル論理回路装置100のコン
フィギュレーションに、パラレル形式の回路情報を用い
た場合であるが、第2の構造のプログラマブル論理回路
装置200の場合にも、同様に適用できるとともに、第
2の実施の形態や第4の実施の形態の場合のように、プ
ログラマブル論理回路部に既に生成されている回路を有
効利用する場合にも、前述と同様にして、適用できるも
のである。
あって、回路情報の圧縮方法としては、どのようなもの
であっても良い。そして、回路情報編集部103は、そ
の回路情報の圧縮方法に対応する編集処理を行なう機能
を備えるように構成されるものである。
ば、従来のマルチコンテキスト技術のように複数の回路
情報を記憶するための余分なコンフィギュレーションメ
モリを必要としないプログラマブル論理回路部によるマ
ルチコンテキスト技術と同等の技術を実現することがで
き、これを用いてプログラマブル論理回路装置の再構成
時間を短縮し、回路再構成時間を含めた総処理時間で比
べても、ソフトウエア処理に比べて処理時間の短いハー
ドウエア処理を実現できる。その結果、キャッシュロジ
ック技術によるリコンフュギュラブルコンピューティン
グを用いた、高速で小型化された情報処理システムを実
現することができるようになる。
うにプログラマブル論理回路部に余分なコンフィギュレ
ーションメモリを必要としないので、余分なコンフィギ
ュレーションメモリを配置することで生じる配線負荷容
量の増大に起因する、回路性能の低下、消費電力の増加
をもたらすことなく、マルチコンテキスト技術によるも
のと同等のプログラマブル論理回路装置を実現すること
ができる。
部には圧縮された回路情報を格納するようにしたので、
同じ回路情報を従来のマルチコンテキスト技術よりも少
ないメモリ容量でプログラマブル論理回路装置内に格納
することができ、その結果、製造工程の増加、回路性能
の低下などをもたらすDRAM技術を用いることなく、
従来のマルチコンテキスト技術によるプロプログラマブ
ル論理回路装置より小さな回路規模でマルチコンテキス
ト技術と同等技術を実現することができる。
回路装置は、従来の通常のプログラマブル論理回路装置
と同じ構造のプログラマブル論理回路部を用いることが
できるので、従来のプログラマブル論理回路装置の設計
を用いて容易に実現することができる。
回路装置の回路情報記憶部と回路情報編集部を、回路情
報を読み込むことで従来のプログラマブル論理回路装置
に構成することにより、新たに回路装置を作製すること
なく、従来のプログラマブル論理回路装置を用いて、こ
の発明のプログラマブル論理回路装置を実現することが
できるというメリットもある。
実施の形態の第1の構造を説明するブロック図である。
第1の実施の形態を説明する図である。
回路情報の例を説明する図である。
レーションを行なう実施の形態のプログラマブル論理回
路装置を説明するブロック図である。
置の動作を説明するためのフローチャートである。
論理回路装置の動作を説明するためのタイミングチャー
トである。
論理回路装置におけるシリアル形式の回路情報の編集を
説明するためのフローチャートの一部である。
論理回路装置におけるシリアル形式の回路情報の編集を
説明するためのフローチャートの残部である。
第2の実施の形態を説明する図である。
ル論理回路装置におけるシリアル形式の回路情報の編集
を説明するためのフローチャートの一部である。
ル論理回路装置におけるシリアル形式の回路情報の編集
を説明するためのフローチャートの残部である。
の実施の形態の第2の構造を説明するブロック図であ
る。
の第3の実施の形態を説明するための図である。
の第3の実施の形態における編集動作を説明するための
図である。
装置の動作を説明するためのフローチャートである。
理回路装置の動作を説明するためのタイミングチャート
である。
マブル論理回路装置における編集動作を説明するための
図である。
の回路情報の例を説明する図である。
ュレーションを行なう実施の形態のプログラマブル論理
回路装置を説明するブロック図である。
式の回路情報を用いる場合の編集動作を説明するための
フローチャートの一部である。
式の回路情報を用いる場合の編集動作を説明するための
フローチャートの残部である。
説明するブロック図である。
ラマブル論理回路部の構造を説明するブロック図であ
る。
ル論理回路部の具体的構造例を示す図である。
ラマブル論理回路装置の構造を説明するブロック図であ
る。
ラマブル論理回路装置のプログラマブル論理回路部の構
造を説明するブロック図である。
である。
グラマブル論理回路装置を説明するブロック図である。
ブル論理回路装置のプログラマブル論理回路部の一部を
説明するブロック図である。
テキスト技術によるプログラマブル論理回路装置のプロ
グラマブル論理回路部の一部の構成を説明するブロック
図である。
テキスト技術によるプログラマブル論理回路装置を説明
するブロック図である。
である。
グラマブル論理回路装置を説明するブロック図である。
グラマブル論理回路装置のプログラマブル論理回路部の
一部の構成を説明する図である。
テキスト技術によるプログラマブル論理回路装置のプロ
グラマブル論理回路部の一部の構成を説明する図であ
る。
テキスト技術によるプログラマブル論理回路装置を説明
するブロック図である。
ラマブル論理回路装置の動作を説明するための図であ
る。
ラマブル論理回路装置の動作を説明するフローチャート
である。
ラマブル論理回路装置の動作を説明するタイミングチャ
ートである。
ラマブル論理回路装置の例1を説明するブロック図であ
る。
ラマブル論理回路装置の例2を説明するブロック図であ
る。
ラマブル論理回路装置の例3を説明するブロック図であ
る。
ラマブル論理回路装置の例4を説明するブロック図であ
る。
Claims (29)
- 【請求項1】回路素子と、この回路素子に接続されるコ
ンフィギュレーションメモリとを備え、前記コンフィギ
ュレーションメモリに書き込まれる回路情報に基づいて
回路が構成されるプログラマブル論理回路部と、 前記プログラマブル論理回路部に複数個の回路を順次に
構成するための複数個の回路情報を記憶するものであっ
て、前記コンフィギュレーションメモリとは別の回路情
報記憶手段と、 前記回路情報記憶手段に、前記複数個の回路情報を書き
込むための回路情報書き込み手段と、 指定情報により指定される前記プログラマブル論理回路
部に生成しようとする一つの回路の回路情報を、前記回
路情報記憶手段に記憶された複数個の回路情報のうち
の、一つまたは複数個の回路情報を用いて生成する回路
情報編集手段と、 前記回路情報編集手段で生成された前記一つの回路の回
路情報を前記コンフィギュレーションメモリに書き込む
ようにする制御手段と、 を備えることを特徴とするプログラマブル論理回路装
置。 - 【請求項2】前記回路情報記憶手段および前記回路情報
編集手段は、前記プログラマブル論理回路部とは別個に
設けることを特徴とする請求項1に記載のプログラマブ
ル論理回路装置。 - 【請求項3】前記回路情報記憶手段および前記回路情報
編集手段は、そのための回路情報を前記コンフィギュレ
ーションメモリの一部に読み込むことにより、前記プロ
グラマブル論理回路部の回路素子の一部に生成すること
を特徴とする請求項1に記載のプログラマブル論理回路
装置。 - 【請求項4】前記回路情報記憶手段に記憶される回路情
報は圧縮されており、前記回路情報編集手段により、前
記圧縮が解凍されて、前記指定情報で指定された回路情
報が生成されることを特徴とする請求項1〜請求項3の
いずれかに記載のプログラマブル論理回路装置。 - 【請求項5】請求項1〜請求項3のいずれかに記載のプ
ログラマブル論理回路装置において、 前記回路情報記憶手段に記憶される回路情報は、その回
路情報の一部または全部を他の回路情報で構成する場合
に、当該他の回路情報を前記回路情報記憶手段から読み
出すための参照情報を備えるものであり、 前記回路情報編集手段は、前記指定情報により指定され
る一つの回路の回路情報を、前記回路情報記憶手段から
前記指定情報された回路情報を入手するとともに、その
回路情報に前記参照情報が含まれている場合には、その
参照情報に基づいて、前記他の回路情報を入手して生成
することを特徴とするプログラマブル論理回路装置。 - 【請求項6】請求項1〜請求項3のいずれかに記載のプ
ログラマブル論理回路装置において、 前記回路情報記憶手段に記憶される回路情報は、その回
路情報の一部を自己の回路情報の他の一部で構成する場
合には、前記自己の回路情報の他の一部を参照するため
の参照情報を備えるものであり、 前記回路情報編集手段は、前記指定情報により指定され
る回路の回路情報を、前記指定された回路情報を前記回
路情報記憶手段から入手し、前記参照情報が含まれてい
る場合には、その参照情報をも用いて生成することを特
徴とするプログラマブル論理回路装置。 - 【請求項7】請求項1〜請求項3のいずれかに記載のプ
ログラマブル論理回路装置において、 前記回路情報記憶手段に記憶される複数個の回路情報の
それぞれは、回路データ部と、その付加情報部を含むも
のであり、 前記付加情報部は、前記回路データ部の編集を前記回路
情報編集手段へ指示する記述を含むものであり、 前記回路データ部は、前記プログラマブル論理回路部に
回路を構成するためのデータ部分であって、その一部ま
たは全部を、他の回路情報の回路データ部で構成する場
合には、その一部または全部の回路データ部は、前記回
路情報記憶手段に対して前記他の回路情報を参照するた
めの参照情報を記述したものであり、 前記回路情報編集手段は、前記指定情報により指定され
る回路情報を、前記指定された回路情報と前記参照情報
で参照される他の回路情報の回路データ部を、前記回路
情報記憶手段から入手して生成することを特徴とするプ
ログラマブル論理回路装置。 - 【請求項8】請求項1〜請求項3のいずれかに記載のプ
ログラマブル論理回路装置において、 前記回路情報記憶手段に記憶される複数個の回路情報の
それぞれは、回路データ部と、その付加情報部を含むも
のであり、 前記付加情報部は、前記回路データ部の編集を前記回路
情報編集手段へ指示する記述を含むものであり、 前記回路データ部は、前記プログラマブル論理回路部に
回路を構成するためのデータ部分であって、その一部を
自己の回路情報の他の回路データ部で構成する場合に
は、前記他の回路データ部を参照するための参照情報を
用いて記述したものであり、 前記回路情報編集手段は、指定情報により指定される回
路情報を、指定された回路情報を回路情報記憶手段から
入手し、前記参照情報が含まれている場合には、その参
照情報をも用いて生成することを特徴とするプログラマ
ブル論理回路装置。 - 【請求項9】請求項7または請求項8に記載のプログラ
マブル論理回路装置において、 前記回路情報記憶手段に記憶されている回路情報の前記
回路データ部は、前記コンフィギュレーションメモリに
格納されるデータを一定量ごとに区切ったものに相当す
るフレームの1〜複数個で記述され、 前記1〜複数個のフレームの一部のフレームまたは全部
のフレームが他の回路情報のフレームで構成される場合
には、前記参照情報が、当該回路情報において前記他の
回路情報のフレームの参照を行なうべきフレームの回路
データとして記述されていることを特徴とするプログラ
マブル論理回路装置。 - 【請求項10】請求項7または請求項8に記載のプログ
ラマブル論理回路装置において、 前記回路情報記憶手段に記憶されている回路情報の前記
回路データ部は、前記コンフィギュレーションメモリに
格納されるデータを一定量ごとに区切ったものに相当す
るフレームの1〜複数個で記述され、 前記1〜複数個のフレームの一部のフレームが、自己の
回路情報の他のフレームで構成される場合には、前記参
照情報が、当該回路情報において自己の回路情報のフレ
ームの参照を行なうべきフレームの回路データとして記
述されていることを特徴とするプログラマブル論理回路
装置。 - 【請求項11】請求項9または請求項10に記載のプロ
グラマブル論理回路装置において、 前記参照情報が、参照する前記他の回路情報のフレーム
または参照する自己の回路情報のフレームが記憶されて
いる前記回路情報記憶手段のメモリアドレスであること
を特徴とするプログラマブル論理回路装置。 - 【請求項12】請求項11に記載のプログラマブル論理
回路装置において、 前記回路情報編集手段は、前記指定情報により指定され
た回路の回路情報の回路データとして前記参照情報が記
載されたフレームに、前記参照情報で示される前記回路
情報記憶手段のメモリアドレスに記憶されたフレームを
挿入することを特徴とするプログラマブル論理回路装
置。 - 【請求項13】請求項9または請求項10に記載のプロ
グラマブル論理回路装置において、 前記参照情報が、参照する前記他の回路情報のフレーム
または参照する自己の回路情報のフレームが記憶されて
いる前記回路情報記憶手段のメモリアドレスと、参照回
数であることを特徴とするプログラマブル論理回路装
置。 - 【請求項14】請求項13に記載のプログラマブル論理
回路装置において、 前記回路情報編集手段は、前記指定情報により指定され
た回路の回路情報の回路データとして前記参照情報が記
載されたフレームに、前記参照情報で示される前記回路
情報記憶手段のメモリアドレスに記憶されたフレーム
を、前記参照情報で示される参照回数分挿入することを
特徴とするプログラマブル論理回路装置。 - 【請求項15】請求項9に記載のプログラマブル論理回
路装置において、 前記回路情報編集手段は、生成しようとする回路の回路
情報のフレームに前記参照情報が記述されている場合に
おいて、その参照情報が記述されているフレーム位置の
データが、その直前に前記プログラマブル論理回路部に
生成されている回路の回路情報の同一位置のフレームの
データと同一であると判別したときには、そのフレーム
のデータの、前記制御手段を介したコンフィギュレーシ
ョンメモリへの転送を行なわないことを特徴とするプロ
グラマブル論理回路装置。 - 【請求項16】アプリケーションプログラムによる処理
の少なくとも一部分を、プログラマブル論理回路装置で
処理する情報処理システムであって、 前記プログラマブル論理回路装置に、請求項1〜請求項
15のいずれかに記載のプログラマブル論理回路装置を
用いることを特徴とする情報処理システム。 - 【請求項17】回路素子と、この回路素子に接続される
コンフィギュレーションメモリとを備え、前記コンフィ
ギュレーションメモリに書き込まれる回路情報に基づい
て回路が構成されるプログラマブル論理回路部を備える
プログラマブル論理回路装置内に、前記プログラマブル
論理回路部に複数個の回路を順次に構成するための複数
個の回路情報を記憶するものであって前記コンフィギュ
レーションメモリとは別の回路情報記憶手段と、前記回
路情報記憶手段に記憶された回路情報を用いて、指定さ
れた回路の回路情報を生成する回路情報編集手段とを設
けておき、 前記回路情報記憶手段には、前記複数個の回路の回路情
報を圧縮した状態で格納するようにし、 前記プログラマブル論理回路部に再構成する回路の回路
情報の指定情報が入力されたときに、前記回路情報編集
手段で、前記回路情報記憶手段から必要な回路情報を読
み出し、前記圧縮を解凍して、前記指定情報で指定され
た回路情報を生成し、その生成した回路情報を前記コン
フィギュレーションメモリに転送して、回路を再構成す
ることを特徴とするプログラマブル論理回路装置への回
路の再構成方法。 - 【請求項18】前記回路情報記憶手段に記憶される回路
情報は、その回路情報の一部または全部を他の回路情報
で構成する場合に、当該他の回路情報を前記回路情報記
憶手段から読み出すための参照情報を記述することによ
り、圧縮されるものであり、 前記回路情報編集手段は、前記回路情報記憶手段から、
前記指定された回路情報を読み出したときに、その回路
情報に前記参照情報が含まれている場合には、前記参照
情報を元にして、必要な回路情報を前記回路情報記憶手
段から取得するようにすることを特徴とする請求項17
に記載のプログラマブル論理回路装置への回路の再構成
方法。 - 【請求項19】前記回路情報記憶手段に記憶される回路
情報は、その回路情報の一部を自己の回路情報の他の一
部で構成する場合には、前記自己の回路情報の他の一部
を参照するための参照情報を記述することにより、圧縮
されるものであり、 前記回路情報編集手段は、前記回路情報記憶手段から、
前記指定された回路情報を読み出したときに、その回路
情報に前記参照情報が含まれている場合には、前記参照
情報を元にして、必要な回路情報を前記読み出した回路
情報を用いて生成することを特徴とする請求項17に記
載のプログラマブル論理回路装置への回路の再構成方
法。 - 【請求項20】請求項18または請求項19に記載のプ
ログラマブル論理回路装置への回路の再構成方法におい
て、 前記回路情報記憶手段に記憶される複数個の回路情報の
それぞれは、回路データ部と、その付加情報部を含むも
のであり、 前記付加情報部は、前記回路データ部の編集を前記回路
情報編集手段へ指示する記述を含み、 前記回路データ部は、前記参照情報が用いられて圧縮さ
れることを特徴とするプログラマブル論理回路装置への
回路の再構成方法。 - 【請求項21】請求項18または請求項19に記載のプ
ログラマブル論理回路装置への回路の再構成方法におい
て、 前記回路データ部は、前記コンフィギュレーションメモ
リに格納されるデータを一定量ごとに区切ったものに相
当するフレームの1〜複数個で記述され、 前記1〜複数個のフレームの一部のフレームまたは全部
のフレームが他の回路情報のフレームで構成される場合
には、前記参照情報が、当該回路情報において前記他の
回路情報のフレームの参照を行なうべきフレームの回路
データとして記述されていることを特徴とするプログラ
マブル論理回路装置への回路の再構成方法。 - 【請求項22】請求項18または請求項19に記載のプ
ログラマブル論理回路装置への回路の再構成方法におい
て、 前記回路データ部は、前記コンフィギュレーションメモ
リに格納されるデータを一定量ごとに区切ったものに相
当するフレームの1〜複数個で記述され、 前記1〜複数個のフレームの一部のフレームが、自己の
回路情報の他のフレームで構成される場合には、前記参
照情報が、当該回路情報において自己の回路情報のフレ
ームの参照を行なうべきフレームの回路データとして記
述されていることを特徴とするプログラマブル論理回路
装置への回路の再構成方法。 - 【請求項23】請求項21または請求項22に記載のプ
ログラマブル論理回路装置への回路の再構成方法におい
て、 前記参照情報が、参照する前記他の回路情報のフレーム
または参照する自己の回路情報のフレームが記憶されて
いる前記回路情報記憶手段のメモリアドレスであること
を特徴とするプログラマブル論理回路装置への回路の再
構成方法。 - 【請求項24】請求項23に記載のプログラマブル論理
回路装置への回路の再構成方法において、 前記回路情報編集手段は、前記指定情報により指定され
た回路の回路情報の回路データとして前記参照情報が記
載されたフレームに、前記参照情報で示される前記回路
情報記憶手段のメモリアドレスに記憶されたフレームを
挿入することを特徴とするプログラマブル論理回路装置
への回路の再構成方法。 - 【請求項25】請求項21または請求項22に記載のプ
ログラマブル論理回路装置への回路の再構成方法におい
て、 前記参照情報が、参照する前記他の回路情報のフレーム
または参照する自己の回路情報のフレームが記憶されて
いる前記回路情報記憶手段のメモリアドレスと、参照回
数であることを特徴とするプログラマブル論理回路装置
への回路の再構成方法。 - 【請求項26】請求項25に記載のプログラマブル論理
回路装置への回路の再構成方法において、 前記回路情報編集手段は、前記指定情報により指定され
た回路の回路情報の回路データとして前記参照情報が記
載されたフレームに、前記参照情報で示される前記回路
情報記憶手段のメモリアドレスに記憶されたフレーム
を、前記参照情報で示される参照回数分挿入することを
特徴とするプログラマブル論理回路装置への回路の再構
成方法。 - 【請求項27】請求項21に記載のプログラマブル論理
回路装置への回路の再構成方法において、 前記回路情報編集手段は、生成しようとする回路の回路
情報のフレームに前記参照情報が記述されている場合に
おいて、その参照情報が記述されているフレーム位置の
データが、その直前に前記プログラマブル論理回路部に
生成されている回路の回路情報の同一位置のフレームの
データと同一であると判別したときには、そのフレーム
のデータの、前記制御手段を介したコンフィギュレーシ
ョンメモリへの転送を行なわないことを特徴とするプロ
グラマブル論理回路装置への回路の再構成方法。 - 【請求項28】プログラマブル論理回路装置に複数個の
回路を順次に構成するための複数個の回路情報の管理方
法であって、 前記回路情報のそれぞれを、前記プログラマブル論理回
路装置のコンフィギュレーションメモリに格納されるデ
ータを一定量ごとに区切ったものに相当するフレームの
1〜複数個で記述し、 前記回路情報の一部または全部が、他の回路情報または
自己の回路情報の他の一部で構成される場合には、参照
情報を、当該回路情報において他の回路情報または自己
の回路情報のフレームの参照を行なうべきフレームの回
路データとして記述するを特徴とする回路情報管理方
法。 - 【請求項29】プログラマブル論理回路装置に回路を構
成する回路情報の回路データ部を、前記プログラマブル
論理回路装置のコンフィギュレーションメモリに格納さ
れるデータを一定量ごとに区切ったものに相当するフレ
ームの集合で記述し、 前記回路情報の一部または全部が、他の回路情報または
自己の回路情報の他の一部で構成される場合には、参照
情報を、当該回路情報において他の回路情報または自己
の回路情報のフレームの参照を行なうべきフレームの回
路データとして記述することにより、回路情報のデータ
量を圧縮することを特徴とする回路情報の圧縮方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP19996499A JP3743487B2 (ja) | 1999-07-14 | 1999-07-14 | プログラマブル論理回路装置、情報処理システム、プログラマブル論理回路装置への回路の再構成方法、プログラマブル論理回路装置用の回路情報の圧縮方法 |
US09/585,447 US6304101B1 (en) | 1999-07-14 | 2000-06-02 | Programmable logic device, information processing system, method of reconfiguring programmable logic device and method compressing circuit information for programmable logic device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP19996499A JP3743487B2 (ja) | 1999-07-14 | 1999-07-14 | プログラマブル論理回路装置、情報処理システム、プログラマブル論理回路装置への回路の再構成方法、プログラマブル論理回路装置用の回路情報の圧縮方法 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005201056A Division JP2005323399A (ja) | 2005-07-11 | 2005-07-11 | プログラマブル論理回路装置、情報処理システム、プログラマブル論理回路装置への回路の再構成方法、プログラマブル論理回路装置用の回路情報の圧縮方法。 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001028536A true JP2001028536A (ja) | 2001-01-30 |
JP3743487B2 JP3743487B2 (ja) | 2006-02-08 |
Family
ID=16416541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP19996499A Expired - Fee Related JP3743487B2 (ja) | 1999-07-14 | 1999-07-14 | プログラマブル論理回路装置、情報処理システム、プログラマブル論理回路装置への回路の再構成方法、プログラマブル論理回路装置用の回路情報の圧縮方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6304101B1 (ja) |
JP (1) | JP3743487B2 (ja) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006351047A (ja) * | 2006-10-02 | 2006-12-28 | Nec Corp | データ処理装置および方法、コンピュータプログラム、情報記憶媒体、並列演算装置、データ処理システム |
JP2009200779A (ja) * | 2008-02-21 | 2009-09-03 | Nec Corp | 構成情報生成装置、構成情報生成制御方法、及びプログラム |
JP2012191455A (ja) * | 2011-03-10 | 2012-10-04 | Toshiba Corp | 半導体集積回路 |
KR20130126555A (ko) * | 2012-05-11 | 2013-11-20 | 삼성전자주식회사 | 재구성가능 프로세서 및 재구성가능 프로세서의 코드 압축해제 방법 |
JP2013251889A (ja) * | 2012-04-30 | 2013-12-12 | Semiconductor Energy Lab Co Ltd | 半導体装置 |
JP2014158250A (ja) * | 2012-05-25 | 2014-08-28 | Semiconductor Energy Lab Co Ltd | プログラマブルロジックデバイス及び半導体装置 |
JP2014212551A (ja) * | 2014-06-23 | 2014-11-13 | 株式会社東芝 | 半導体集積回路 |
KR20140147045A (ko) * | 2013-06-18 | 2014-12-29 | 가부시키가이샤 한도오따이 에네루기 켄큐쇼 | 반도체 장치 |
WO2015012406A1 (ja) * | 2013-07-26 | 2015-01-29 | 株式会社 東芝 | マルチコンテキストコンフィグレーションメモリ |
CN105703765A (zh) * | 2014-12-16 | 2016-06-22 | 三星电子株式会社 | 基于dram的可重构逻辑 |
WO2017175708A1 (ja) * | 2016-04-07 | 2017-10-12 | 日本電気株式会社 | 半導体装置、コンフィグレーション方法およびプログラムを記憶した記憶媒体 |
KR20190127773A (ko) * | 2017-03-08 | 2019-11-13 | 후라마통 | 전기 시설, 특히 핵 시설을 제어하기 위한 프로그래밍가능 논리 회로, 연관된 제어 디바이스 및 방법 |
Families Citing this family (70)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6493862B1 (en) * | 2000-07-25 | 2002-12-10 | Xilinx Inc. | Method for compressing an FPGA bitsream |
US6748456B1 (en) * | 2000-09-29 | 2004-06-08 | Cypress Semiconductor Corp. | PLD configuration port architecture and logic |
US8103496B1 (en) | 2000-10-26 | 2012-01-24 | Cypress Semicondutor Corporation | Breakpoint control in an in-circuit emulation system |
US6724220B1 (en) | 2000-10-26 | 2004-04-20 | Cyress Semiconductor Corporation | Programmable microcontroller architecture (mixed analog/digital) |
US7765095B1 (en) | 2000-10-26 | 2010-07-27 | Cypress Semiconductor Corporation | Conditional branching in an in-circuit emulation system |
US6603330B1 (en) | 2000-10-26 | 2003-08-05 | Cypress Semiconductor Corporation | Configuring digital functions in a digital configurable macro architecture |
US6825689B1 (en) | 2000-10-26 | 2004-11-30 | Cypress Semiconductor Corporation | Configurable input/output interface for a microcontroller |
US8149048B1 (en) | 2000-10-26 | 2012-04-03 | Cypress Semiconductor Corporation | Apparatus and method for programmable power management in a programmable analog circuit block |
US6507214B1 (en) * | 2000-10-26 | 2003-01-14 | Cypress Semiconductor Corporation | Digital configurable macro architecture |
US8176296B2 (en) | 2000-10-26 | 2012-05-08 | Cypress Semiconductor Corporation | Programmable microcontroller architecture |
US8160864B1 (en) | 2000-10-26 | 2012-04-17 | Cypress Semiconductor Corporation | In-circuit emulator and pod synchronized boot |
JP4125475B2 (ja) * | 2000-12-12 | 2008-07-30 | 株式会社東芝 | Rtl生成システム、rtl生成方法、rtl生成プログラム及び半導体装置の製造方法 |
US6567970B1 (en) * | 2000-12-27 | 2003-05-20 | Cypress Semiconductor Corp. | PLD configuration architecture |
US7111224B1 (en) * | 2001-02-28 | 2006-09-19 | Xilinx, Inc. | FPGA configuration memory with built-in error correction mechanism |
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 |
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 |
US7526422B1 (en) | 2001-11-13 | 2009-04-28 | Cypress Semiconductor Corporation | System and a method for checking lock-step consistency between an in circuit emulation and a microcontroller |
US8042093B1 (en) | 2001-11-15 | 2011-10-18 | Cypress Semiconductor Corporation | System providing automatic source code generation for personalization and parameterization of user modules |
US7774190B1 (en) | 2001-11-19 | 2010-08-10 | Cypress Semiconductor Corporation | Sleep and stall in an in-circuit emulation system |
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 |
US7770113B1 (en) | 2001-11-19 | 2010-08-03 | Cypress Semiconductor Corporation | System and method for dynamically generating a configuration datasheet |
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 |
US8103497B1 (en) | 2002-03-28 | 2012-01-24 | Cypress Semiconductor Corporation | External interface for event architecture |
US7308608B1 (en) | 2002-05-01 | 2007-12-11 | Cypress Semiconductor Corporation | Reconfigurable testing system and method |
US7024654B2 (en) | 2002-06-11 | 2006-04-04 | Anadigm, Inc. | System and method for configuring analog elements in a configurable hardware device |
US6661724B1 (en) | 2002-06-13 | 2003-12-09 | Cypress Semiconductor Corporation | Method and system for programming a memory device |
US6810514B1 (en) * | 2002-07-03 | 2004-10-26 | Xilinx, Inc. | Controller arrangement for partial reconfiguration of a programmable logic device |
US6978435B2 (en) * | 2002-08-29 | 2005-12-20 | Anadigm, Inc. | Apparatus for programming a programmable device, and method |
US20040122643A1 (en) * | 2002-08-29 | 2004-06-24 | Anderson Howard C. | Apparatus and method for simulating switched-capacitor circuits |
US7761845B1 (en) | 2002-09-09 | 2010-07-20 | Cypress Semiconductor Corporation | Method for parameterizing a user module |
US6907595B2 (en) * | 2002-12-13 | 2005-06-14 | Xilinx, Inc. | Partial reconfiguration of a programmable logic device using an on-chip processor |
US6920627B2 (en) * | 2002-12-13 | 2005-07-19 | Xilinx, Inc. | Reconfiguration of a programmable logic device using internal control |
US7216277B1 (en) * | 2003-11-18 | 2007-05-08 | Xilinx, Inc. | Self-repairing redundancy for memory blocks in programmable logic devices |
US20060171200A1 (en) * | 2004-02-06 | 2006-08-03 | Unity Semiconductor Corporation | Memory using mixed valence conductive oxides |
JP3836109B2 (ja) * | 2004-02-19 | 2006-10-18 | 東京エレクトロン株式会社 | プログラマブル論理回路制御装置、プログラマブル論理回路制御方法及びプログラム |
US7295049B1 (en) | 2004-03-25 | 2007-11-13 | Cypress Semiconductor Corporation | Method and circuit for rapid alignment of signals |
US7233532B2 (en) * | 2004-04-30 | 2007-06-19 | Xilinx, Inc. | Reconfiguration port for dynamic reconfiguration-system monitor interface |
US7126372B2 (en) * | 2004-04-30 | 2006-10-24 | Xilinx, Inc. | Reconfiguration port for dynamic reconfiguration—sub-frame access for reconfiguration |
US7218137B2 (en) * | 2004-04-30 | 2007-05-15 | Xilinx, Inc. | Reconfiguration port for dynamic reconfiguration |
JP4095576B2 (ja) * | 2004-05-17 | 2008-06-04 | 株式会社東芝 | プログラマブル論理回路を用いる汎用論理回路装置 |
US8069436B2 (en) | 2004-08-13 | 2011-11-29 | Cypress Semiconductor Corporation | Providing hardware independence to automate code generation of processing device firmware |
US8082531B2 (en) | 2004-08-13 | 2011-12-20 | Cypress Semiconductor Corporation | Method and an apparatus to design a processing system using a graphical user interface |
US8286125B2 (en) * | 2004-08-13 | 2012-10-09 | Cypress Semiconductor Corporation | Model for a hardware device-independent method of defining embedded firmware for programmable systems |
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 |
US8089461B2 (en) | 2005-06-23 | 2012-01-03 | Cypress Semiconductor Corporation | Touch wake for electronic devices |
US8085067B1 (en) | 2005-12-21 | 2011-12-27 | Cypress Semiconductor Corporation | Differential-to-single ended signal converter circuit and method |
US8067948B2 (en) | 2006-03-27 | 2011-11-29 | Cypress Semiconductor Corporation | Input/output multiplexer bus |
US7353474B1 (en) * | 2006-04-18 | 2008-04-01 | Xilinx, Inc. | System and method for accessing signals of a user design in a programmable logic device |
US8040266B2 (en) | 2007-04-17 | 2011-10-18 | Cypress Semiconductor Corporation | Programmable sigma-delta analog-to-digital converter |
US8130025B2 (en) | 2007-04-17 | 2012-03-06 | Cypress Semiconductor Corporation | Numerical band gap |
US8092083B2 (en) | 2007-04-17 | 2012-01-10 | Cypress Semiconductor Corporation | Temperature sensor with digital bandgap |
US8516025B2 (en) | 2007-04-17 | 2013-08-20 | Cypress Semiconductor Corporation | Clock driven dynamic datapath chaining |
US7737724B2 (en) | 2007-04-17 | 2010-06-15 | Cypress Semiconductor Corporation | Universal digital block interconnection and channel routing |
US8026739B2 (en) | 2007-04-17 | 2011-09-27 | Cypress Semiconductor Corporation | System level interconnect with programmable switching |
US9564902B2 (en) | 2007-04-17 | 2017-02-07 | Cypress Semiconductor Corporation | Dynamically configurable and re-configurable data path |
US8065653B1 (en) | 2007-04-25 | 2011-11-22 | Cypress Semiconductor Corporation | Configuration of programmable IC design elements |
US9720805B1 (en) | 2007-04-25 | 2017-08-01 | Cypress Semiconductor Corporation | System and method for controlling a target device |
US8266575B1 (en) | 2007-04-25 | 2012-09-11 | Cypress Semiconductor Corporation | Systems and methods for dynamically reconfiguring a programmable system on a chip |
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 |
US7902865B1 (en) * | 2007-11-15 | 2011-03-08 | Lattice Semiconductor Corporation | Compression and decompression of configuration data using repeated data frames |
US9448964B2 (en) | 2009-05-04 | 2016-09-20 | Cypress Semiconductor Corporation | Autonomous control in a programmable system |
US8176212B1 (en) * | 2009-08-18 | 2012-05-08 | Quickflex, Inc. | Method and system for hierarchical and joinable behavior containers for reconfigurable computing |
DE102010035102A1 (de) * | 2010-08-23 | 2012-04-19 | Bürkert Werke GmbH | Steuergerät für fluidische Systeme |
US9389841B2 (en) * | 2012-07-18 | 2016-07-12 | Micron Technology, Inc. | Methods and systems for using state vector data in a state machine engine |
JP6430858B2 (ja) * | 2015-02-27 | 2018-11-28 | 理想科学工業株式会社 | 基板接続システム及びインクジェット記録装置 |
US9740809B2 (en) * | 2015-08-27 | 2017-08-22 | Altera Corporation | Efficient integrated circuits configuration data management |
US10908817B2 (en) * | 2017-12-08 | 2021-02-02 | Sandisk Technologies Llc | Signal reduction in a microcontroller architecture for non-volatile memory |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02130023A (ja) | 1988-11-10 | 1990-05-18 | Fujitsu Ltd | マルチファンクション・プログラマブル・ロジック・デバイス |
US5694056A (en) * | 1996-04-01 | 1997-12-02 | Xilinx, Inc. | Fast pipeline frame full detector |
US6049222A (en) * | 1997-12-30 | 2000-04-11 | Xilinx, Inc | Configuring an FPGA using embedded memory |
-
1999
- 1999-07-14 JP JP19996499A patent/JP3743487B2/ja not_active Expired - Fee Related
-
2000
- 2000-06-02 US US09/585,447 patent/US6304101B1/en not_active Expired - Lifetime
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006351047A (ja) * | 2006-10-02 | 2006-12-28 | Nec Corp | データ処理装置および方法、コンピュータプログラム、情報記憶媒体、並列演算装置、データ処理システム |
JP2009200779A (ja) * | 2008-02-21 | 2009-09-03 | Nec Corp | 構成情報生成装置、構成情報生成制御方法、及びプログラム |
US8032853B2 (en) | 2008-02-21 | 2011-10-04 | Nec Corporation | Configuration information writing apparatus, configuration information writing method and computer program product |
JP2012191455A (ja) * | 2011-03-10 | 2012-10-04 | Toshiba Corp | 半導体集積回路 |
JP2013251889A (ja) * | 2012-04-30 | 2013-12-12 | Semiconductor Energy Lab Co Ltd | 半導体装置 |
JP2019088012A (ja) * | 2012-04-30 | 2019-06-06 | 株式会社半導体エネルギー研究所 | 半導体装置の動作方法 |
KR20130126555A (ko) * | 2012-05-11 | 2013-11-20 | 삼성전자주식회사 | 재구성가능 프로세서 및 재구성가능 프로세서의 코드 압축해제 방법 |
KR102070199B1 (ko) * | 2012-05-11 | 2020-01-28 | 삼성전자주식회사 | 재구성가능 프로세서 및 재구성가능 프로세서의 코드 압축해제 방법 |
JP2014158250A (ja) * | 2012-05-25 | 2014-08-28 | Semiconductor Energy Lab Co Ltd | プログラマブルロジックデバイス及び半導体装置 |
CN104321967A (zh) * | 2012-05-25 | 2015-01-28 | 株式会社半导体能源研究所 | 可编程逻辑装置及半导体装置 |
US10122364B2 (en) | 2012-05-25 | 2018-11-06 | Semiconductor Energy Laboratory Co., Ltd. | Programmable logic device and semiconductor device |
JP2016105595A (ja) * | 2013-06-18 | 2016-06-09 | 株式会社半導体エネルギー研究所 | プログラマブルロジックデバイス |
KR102270580B1 (ko) * | 2013-06-18 | 2021-06-28 | 가부시키가이샤 한도오따이 에네루기 켄큐쇼 | 반도체 장치 |
JP2015027080A (ja) * | 2013-06-18 | 2015-02-05 | 株式会社半導体エネルギー研究所 | プログラマブルロジックデバイス |
KR20140147045A (ko) * | 2013-06-18 | 2014-12-29 | 가부시키가이샤 한도오따이 에네루기 켄큐쇼 | 반도체 장치 |
WO2015012406A1 (ja) * | 2013-07-26 | 2015-01-29 | 株式会社 東芝 | マルチコンテキストコンフィグレーションメモリ |
US9691476B2 (en) | 2013-07-26 | 2017-06-27 | Kabushiki Kaisha Toshiba | Multi-context configuration memory |
JP2014212551A (ja) * | 2014-06-23 | 2014-11-13 | 株式会社東芝 | 半導体集積回路 |
JP2016123092A (ja) * | 2014-12-16 | 2016-07-07 | 三星電子株式会社Samsung Electronics Co.,Ltd. | Dram基盤の再構成可能なロジック装置及び方法 |
CN105703765A (zh) * | 2014-12-16 | 2016-06-22 | 三星电子株式会社 | 基于dram的可重构逻辑 |
JPWO2017175708A1 (ja) * | 2016-04-07 | 2019-02-14 | 日本電気株式会社 | 半導体装置、コンフィグレーション方法およびプログラム |
WO2017175708A1 (ja) * | 2016-04-07 | 2017-10-12 | 日本電気株式会社 | 半導体装置、コンフィグレーション方法およびプログラムを記憶した記憶媒体 |
KR20190127773A (ko) * | 2017-03-08 | 2019-11-13 | 후라마통 | 전기 시설, 특히 핵 시설을 제어하기 위한 프로그래밍가능 논리 회로, 연관된 제어 디바이스 및 방법 |
JP2020515130A (ja) * | 2017-03-08 | 2020-05-21 | フラマトムFramatome | 電気施設、特に核施設を制御するためのプログラマブル論理回路、関連する制御デバイスおよび方法 |
KR102471141B1 (ko) * | 2017-03-08 | 2022-11-28 | 후라마통 | 전기 시설, 특히 핵 시설을 제어하기 위한 프로그래밍가능 논리 회로, 연관된 제어 디바이스 및 방법 |
JP7282038B2 (ja) | 2017-03-08 | 2023-05-26 | フラマトム | 電気施設、特に核施設を制御するためのプログラマブル論理回路、関連する制御デバイスおよび方法 |
Also Published As
Publication number | Publication date |
---|---|
US6304101B1 (en) | 2001-10-16 |
JP3743487B2 (ja) | 2006-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2001028536A (ja) | プログラマブル論理回路装置、情報処理システム、プログラマブル論理回路装置への回路の再構成方法、プログラマブル論理回路装置用の回路情報の圧縮方法 | |
JP3444216B2 (ja) | プログラマブルデバイス | |
KR102438730B1 (ko) | 공간 다중화를 지원하는 디램 기초의 재설정 가능 논리 장치 | |
US7482836B2 (en) | High bandwidth reconfigurable on-chip network for reconfigurable systems | |
US6163168A (en) | Efficient interconnect network for use in FPGA device having variable grain architecture | |
US6053950A (en) | Layout method for a clock tree in a semiconductor device | |
US6844757B2 (en) | Converting bits to vectors in a programmable logic device | |
JP4484756B2 (ja) | リコンフィギュラブル回路および処理装置 | |
JPH09181599A (ja) | 時間多重書込可能論理装置 | |
JP6564186B2 (ja) | 再構成可能な半導体装置 | |
WO2014080872A2 (ja) | 再構成可能な半導体装置の論理構成方法 | |
JP2007508726A (ja) | コンフィギュレーション可能なロジック回路装置 | |
US6563437B1 (en) | Method and apparatus for using programmable logic device (PLD) logic for decompression of configuration data | |
JP4213044B2 (ja) | Lutベースのリコンフィギュラブル・ロジック・アーキテクチャのためのコンフィギュレーション・メモリの実装 | |
JP3351452B2 (ja) | プログラマブルゲートアレイ | |
JP2005323399A (ja) | プログラマブル論理回路装置、情報処理システム、プログラマブル論理回路装置への回路の再構成方法、プログラマブル論理回路装置用の回路情報の圧縮方法。 | |
CN104636290B (zh) | 基于多配置链组的fpga芯片配置结构和配置方法 | |
US7535253B1 (en) | Register data retention systems and methods during reprogramming of programmable logic devices | |
JPH1117524A (ja) | プログラマブル論理回路システムおよびプログラマブル論理回路装置の再構成方法 | |
EP1233517B1 (en) | A system for rapid configuration of a programmable logic device | |
JP2004200311A (ja) | 論理検証装置 | |
USRE43081E1 (en) | Method and device for configuration of PLDS | |
US7663401B1 (en) | Multiplexer initialization systems and methods | |
JP2004335686A (ja) | 高速低消費電力論理装置 | |
JP2002009613A (ja) | 回路機能の再構成方法、及びプログラマブル論理回路装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040423 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050511 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050711 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050810 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051005 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20051026 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051108 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091125 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101125 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111125 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111125 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121125 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121125 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131125 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |