JP3944639B2 - Programmable logic device - Google Patents
Programmable logic device Download PDFInfo
- Publication number
- JP3944639B2 JP3944639B2 JP2002175354A JP2002175354A JP3944639B2 JP 3944639 B2 JP3944639 B2 JP 3944639B2 JP 2002175354 A JP2002175354 A JP 2002175354A JP 2002175354 A JP2002175354 A JP 2002175354A JP 3944639 B2 JP3944639 B2 JP 3944639B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- output
- block
- input
- external device
- 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.)
- Expired - Lifetime
Links
- 238000012545 processing Methods 0.000 claims description 15
- 230000010365 information processing Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 7
- 238000000034 method Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Landscapes
- Logic Circuits (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、プログラム書き換えが可能なプログラマブル論理装置に関する。
【0002】
【従来の技術】
近年、IC(集積回路)設計技術、及び製造技術の急速な発達により、回路設計をプログラム可能なPLD(Programmable Logic Device:プログラマブル論理回路)が開発されている。このようなプログラマブル論理回路では、論理回路の構成情報を含む回路情報を読み込ませることにより、内部の論理回路間の配線を自由に構成できるとともに一度作成した回路を必要に応じて何度でも再構成することが可能である。
【0003】
また、FPGA(Field Programmable Gate Array)と呼ばれるプログラマブル論理装置は、論理ブロック間及び配線間を接続するスイッチマトリクスを制御するビットストリームを外部から書き込むことによって、所望の論理回路を再構成することができるデバイスであり、内部回路構成の情報や論理ブロック間のスイッチマトリクス制御データを含む回路情報を記憶するメモリがデバイス内に設けられて、この回路情報により様々な動作特性を持たせることが可能である。
【0004】
【発明が解決しようとする課題】
従来、情報処理システム等に搭載された上記FPGAにおいてプログラムを書き換える際には、図4に示すように一部の論理ブロックのみを書き換える場合でも、FPGA全体の書き換えが必要であり、書き換える必要が無い論理ブロック部分にも影響を及ぼす場合があった。また再構成の後には、電源を再投入してFPGAを初期化する必要があり、システムの動作を一旦停止しなければならなかった。
【0005】
そのような問題を解消するために、図5に示すように書き換えを行う一部の論理ブロックのみを再構成する技術が開発されたが、一部の書き換えであっても、FPGAのI/O(Input/Output)をハイインピーダンス状態又はプルアップにしてFPGAのデータ入出力を停止するため、再構成後にこのI/Oを初期化してシステムの不正な動作を防ぐ必要があった。そのため、やはり電源再投入の必要が生じるとともに再構成時にはFPGAに接続される外部装置に影響を与えないためにシステム制御しなければならず、FPGAがオープンシステムに接続されている場合、複雑な制御が必要となり不都合が生じることとなっていた。
【0006】
また、金融システムや交通システム、警備システム、航空管制システム等、常に稼働していなければならない各種情報処理システムにおいては、一旦電源を落として再投入することによりシステム稼働を一時停止することはシステムの運営に非常に大きな支障をきたすこととなる。
【0007】
本発明は、上記問題を鑑みてプログラマブル論理装置が外部装置との接続状態をアクティブに保持したまま、部分的な再構成を行うことができるように構成している。
【0008】
【課題を解決するための手段】
請求項1に記載の発明は、
回路構成情報を含む回路情報に基づいて再構成が可能な論理ブロックを複数備えたプログラマブル論理装置において、
接続規格が定められた外部装置と接続する接続手段と、
前記回路情報を取得し、この取得した回路情報に基づいて前記論理ブロックを再構成する再構成手段と、
前記接続手段により接続された外部装置と、前記論理ブロックとの間で、データの入出力を調整する調整手段と、を備え、
前記調整手段は、前記外部装置からの入力データに対応する出力データを生成するバッファ論理ブロックと、
前記論理ブロックの再構成中は、前記外部装置と前記バッファ論理ブロックとの間でデータの入出力を行い、再構成していない間は前記外部装置と前記論理ブロックとの間でデータの入出力を行うよう、データの入出力先を切り替える切替手段と、
を備えることを特徴とする。
【0009】
請求項2に記載の発明は、請求項1に記載のプログラマブル論理装置において、
前記調整手段は、前記再構成手段により前記論理ブロックが再構成される間、前記接続手段により接続された外部装置から入力データを入力されると、この入力データに対応し、外部装置に前記論理ブロックによる論理処理を一時待機させる出力データを前記バッファ論理ブロックにより生成し、当該外部装置に出力することを特徴とする。
【0010】
この請求項1、2記載の発明によれば、外部装置と再構成する論理ブロックとの間でデータの入出力を調整し、論理ブロックが再構成している間は、外部装置からの入力データに対する論理処理を外部装置に待機させる出力データを生成して外部装置に出力するので、外部装置との接続状態をアクティブに保持したまま、再構成対象の論理ブロックのみを再構成することができる。
【0011】
請求項3に記載の発明は、請求項2に記載のプログラマブル論理装置において、
前記出力データは、前記外部装置の接続規格に従った出力データであることを特徴としている。
【0012】
この請求項3記載の発明によれば、外部装置の接続規格に従った出力データであるので、外部装置側で不正な動作が発生することを防止することができる。
【0015】
請求項4に記載の発明は、請求項1〜3の何れか一項に記載のプログラマブル論理装置において、
回路の再構成が不可能な論理ブロックを備え、
前記調整手段は、前記回路の再構成が不可能な論理ブロックに備えられることを特徴としている。
【0016】
この請求項4記載の発明によれば、回路の再構成が不可能な論理ブロックに調整手段が備えられるので、再構成可能な論理ブロックが再構成中であっても、調整手段は再構成を受けることなく、安定な調整動作を実行することができる。
【0017】
【発明の実施の形態】
以下、図を参照して本発明の実施の形態を詳細に説明する。
まず、構成を説明する。
図1は、本発明に係るFPGA1を含む情報処理システム100の構成を示す図である。
図1において、情報処理システム100は、CPU20、RAM30、HDD40、FPGA1から構成され、各部はPCIバス50により接続されている。また、FPGA1はPCII/F6を介してPCIバス50に接続されている。すなわち、CPU20、RAM30、HDD40、PCI(Peripheral Component Interconnect)バス50は、請求項で記載したプログラマブル論理装置であるFPGA1が接続する外部装置である。
【0018】
なお、図1に示した情報処理システム100は、情報処理を行うコンピュータシステムであり、本発明に係るFPGA1をシステムに搭載した一例を示すものである。従って、例えばさらに記憶装置や表示装置等を備える等、情報処理システム100を構成する各構成装置は適宜変更可能である。
【0019】
CPU(Central Processing Unit)20は、情報処理システム100の各構成装置の動作を制御する情報処理システム100のメインコントローラであり、HDD40に格納される各種制御プログラムを読み出して各種処理を実行する。
【0020】
RAM(Random Access Memory)30は、書き換え可能な半導体メモリから構成され、CPU10によって実行される各種プログラムやこれら各種プログラムによって処理されたデータ等を一時的に記憶するワークエリアを形成する。
【0021】
HDD(Hard Disk Drive)40は、プログラムやデータ等が予め記憶されている記録媒体(図示せず)から構成され、この記録媒体には、システムプログラム、各種制御プログラム及び各種制御プログラムで処理されたデータ等を記憶する。また、HDD40は、FPGA1の回路情報を複数記憶している。
【0022】
次に、本発明に係るFPGA1について詳細に説明する。
図2は、本実施の形態におけるFPGA1の構成を示す模式図である。
図2において、FPGA1は、論理ブロック21〜24、内部I/O2a、I/Oブロック31〜38、コンフィグレーションブロック4から構成され、その外周にユーザI/F5、外部装置のインターフェイスであるPCII/F6が接続されている。
【0023】
FPGA1は、論理ゲートを組み合わせた論理ブロック21〜24の集合体であり、マトリクス状に配置された論理ブロック21〜24間に図示しない配線が格子状に敷設されており、スイッチマトリクス8によりその配線接続が制御される。すなわち、FPGA1は、請求項に記載したプログラマブル論理装置である。なお、FPGA1は、多数の論理ブロックの集合体であるが、図1では説明の簡略化のため、4つの論理ブロック21〜24のみを図示した。
【0024】
また、論理ブロック21〜23は、I/Oブロック31〜35を介してユーザI/F5に接続され、再構成が可能に設定されているが、論理ブロック24は、I/Oブロック36〜38を介して外部インターフェイスであるPCII/F6と接続されてPCI規格に従ったデータの入出力を行うため、回路の再構成が不可能に設定されている。つまり、図2の斜線部で示す論理ブロック24及びI/Oブロック36〜38において再構成は行われない。
【0025】
I/Oブロック31〜38は、それぞれ複数の入力端子及び出力端子から構成され、I/Oブロック31〜35はユーザI/F5と接続されて、ユーザI/F5を介して接続される外部装置とデータの入出力を行い、I/Oブロック36〜38はPCIIF6と接続されて、PCII/F6を介して接続される外部装置とデータの入出力を行う。I/Oブロック36〜38は、再構成が行われないため論理ブロック21〜23及びI/Oブロック31〜35が再構成中でもPCII/F6とデータの入出力を行う。すなわち、I/Oブロック36〜38は、請求項に記載した接続手段としての機能を有する。
【0026】
コンフィグレーションブロック4は、SRAM(Static RAM)又はDRAM(Dynamic RAM)等の書き換え可能な記憶素子を内蔵し、この記憶素子にFPGA1の回路情報を格納して、格納した回路情報に基づいてFPGA1における回路の再構成制御を行う。すなわち、コンフィグレーションブロック4は、請求項に記載した再構成手段としての機能を有する。なお、回路情報は、論理ブロック2の回路構成データ、各論理ブロック21〜23間の配線接続を制御する配線接続データ及びI/Oブロック31〜35の端子構成データを含むこととする。
【0027】
また、コンフィグレーションブロック4に格納する回路情報は、回路構成を行う際に、ユーザが所望する回路情報がPCII/F6を介して接続されるHDD40からコンフィグレーションブロック4に出力される。コンフィグレーションブロック4はHDD40から取得した回路情報を内蔵する記憶素子に格納する。
【0028】
ユーザI/F5は、ユーザが設定するアーキテクチャ(図示せず)のインターフェイスであり、PCII/F6は、PCI規格に従ったPCIバス50のインターフェイスである。なお、本実施の形態では、PCI規格に従ったインターフェイスとして説明するが、情報処理システム100に採用されている接続バスの規格に従ったインターフェイスであればその規格はUSB(Universal Serial Bus)やSCSI(Small Computer System Interface)を適用してもよく、特に限定しない。
【0029】
論理ブロック24は、バッファブロック7及び他の論理ブロック21〜23とデータの入出力を行う内部I/O2aをその内部に有している。
【0030】
図2を参照してバッファブロック7について詳細に説明する。
バッファブロック7は、図2に示すように、I/Oブロック36〜38と、再構成可能な論理ブロック21〜23に接続される内部I/O2aとの間で、データ入出力の調整を行う緩衝回路である。すなわち、バッファブロック7は、請求項に記載した調整手段としての機能を有する。バッファブロック7は、マルチプレクサー71、デマルチプレクサー72、バッファ論理ブロック73から構成される。
【0031】
マルチプレクサー71は、コンフィグレーションブロック4から入力された制御信号に基づいて、内部I/O2a又はバッファ論理回路73から入力された入力データを論理ブロック24に出力し、デマルチプレクサー72は、コンフィグレーションブロック4から入力された制御信号に基づいて、論理ブロック24から入力されたデータを内部I/O2a又はバッファ論理回路73のどちらか一方の出力先を選択して出力する。
【0032】
バッファ論理ブロック73は、デマルチプレクサー72から入力された入力データを論理処理し、PCII/F6側の外部装置がFPGA1による論理処理を待機するアイドル状態となるようなPCI規格に従った出力データをマルチプレクサー71に出力する。具体的には例えば、入力データにFPGA1による論理処理が行われなかったことを示すエラーコードを付加して出力データとして出力する等して再度入力データを入力させるようにする。つまり、FPGA1が再構成している間、PCII/F6側の外部装置からの入力データを再構成中の論理ブロック21〜23へ出力せずにバッファ論理ブロック73がPCII/F6側の外部装置からの入力データに対応することにより、PCII/F6側の外部装置との接続状態をアクティブに保持する。
【0033】
次に、本実施の形態の動作を説明する。
以下に、上述したFPGA1による再構成処理を図2を参照して説明する。
説明の前提として、現在、FPGA1は再構成中ではなく、論理ブロック21〜24により論理処理を行っており、図2において、PCII/F6から入力された入力データは、論理ブロック24により論理処理されてデマルチプレクサー72に出力され、デマルチプレクサー72は入力データの出力先として内部I/O2aを選択して出力している。また、論理ブロック21〜23から内部I/O2aに入力されたデータは、マルチプレクサー71を介して論理ブロック24に出力されて論理処理された後、I/Oブロック36〜38を介してPCII/F6にFPGA1による論理処理結果として出力される。
【0034】
再構成処理において、まず、コンフィグレーションブロック4に再構成指示とともに回路情報が入力されると、コンフィグレーションブロック4は、入力された回路情報を内蔵する記憶素子に格納し、回路の再構成を開始する制御信号をバッファブロック7のマルチプレクサー71、デマルチプレクサー72に入力する。図2において、回路の再構成を開始する制御信号を入力されたデマルチプレクサー72は、入力データの出力先を内部I/O2aからバッファ論理ブロック73に切り換えて出力する。
【0035】
バッファ論理ブロック73は、デマルチプレクサー72から入力された入力データを論理処理して、PCII/F6側にFPGA1による論理処理結果を一時待機させる出力データを生成し、マルチプレクサー71に出力する。マルチプレクサー71は、バッファ論理ブロック73から入力されたデータを論理ブロック24及びI/Oブロック36〜38を介してPCII/F6に出力する。
【0036】
一方、コンフィグレーションブロック4は、各部に再構成を開始する制御信号を出力後、内蔵する記憶素子に格納した回路情報に基づいて、再構成対象の論理ブロック21〜23及びI/Oブロック31〜35の再構成を制御する。そして、再構成を終了すると、再構成が終了したことを示す制御信号をマルチプレクサー71、デマルチプレクサー72に出力する。図2において、再構成終了の制御信号を入力されたデマルチプレクサー72は、論理ブロック24からの入力データの出力先をバッファ論理ブロック73から内部I/O2aに切り換えて出力し、内部I/O2aは入力されたデータを論理ブロック21〜23に出力してFPGA1による論理処理を開始する。また、内部I/O2aは、論理ブロック21〜23により論理処理されて入力された入力データをマルチプレクサー71に出力し、マルチプレクサー71に出力された出力データは論理ブロック24により論理処理されて内部ブロック36〜38を介してPCII/F6に出力される。
【0037】
以上のように、書き換えが可能な論理ブロック21〜23及びI/Oブロック31〜35を再構成中は、PCII/F6からの入力データをバッファ論理ブロック73に出力し、バッファ論理ブロック73はPCII/F6に対して不正な動作を発生させないような出力データを生成してPCII/F6に出力し、FPGA1による論理処理を一時待機させるので、PCII/F6との接続をアクティブに保持したまま、再構成対象の論理ブロックのみを再構成することができる。すなわち、情報処理システム100が動作中であってもシステムを構成する各装置に影響を及ぼすことなくFPGA1の再構成が必要な機能の論理ブロックのみを再構成することができる。
【0038】
また、再構成のために情報処理システム100の電源を再投入する必要がないため、常に稼働しなければならない金融システムや交通システムなどの各種情報処理システムに対して本発明に係るFPGA1を導入することは非常に有効性が高い。
【0039】
なお、本実施の形態における記述は、本発明に係る好適な情報処理システム100及びFPGA1の一例であり、これに限定されるものではない。
例えば、本実施の形態では、情報処理システム100のHDD40にFPGA1の回路情報を複数記憶させておくこととしたが、これに限らず、例えばFPGA1にユーザI/F5を介してメモリを接続し、このメモリに上記回路情報を記憶させておくこととしてもよいし、情報処理システム100にネットワークインターフェイスカード等を備えて回路情報を複数備えたサーバとネットワーク通信を行い、ネットワークを介してユーザが所望する回路情報を取得することとしてもよい。
【0040】
その他、本実施の形態における情報処理システム及びFPGA1を構成する各装置又は構成部分の細部構成及び細部動作に関しても本発明の趣旨を逸脱することのない範囲で適宜変更可能である。
【0041】
【発明の効果】
請求項1、2記載の発明によれば、外部装置と再構成する論理ブロックとの間でデータの入出力を調整し、論理ブロックが再構成している間は、外部装置からの入力データに対する論理処理を外部装置に待機させる出力データを生成して外部装置に出力するので、外部装置との接続状態をアクティブに保持したまま、再構成対象の論理ブロックのみを再構成することができる。
【0042】
請求項3記載の発明によれば、外部装置の接続規格に従った出力データであるので、外部装置側で不正な動作が発生することを防止することができる。
【0044】
請求項4記載の発明によれば、回路の再構成が不可能な論理ブロックに調整手段が備えられるので、再構成可能な論理ブロックが再構成中であっても、調整手段は再構成を受けることなく、安定な調整動作を実行することができる。
【図面の簡単な説明】
【図1】本発明に係るFPGA1を含む情報処理システム100の構成を示す図である。
【図2】本発明を適用した実施の形態のFPGA1の内部構成を示す図である。
【図3】図2のバッファブロック7の内部構成を示す図である。
【図4】従来のFPGAにおける再構成方法を説明する図である。
【図5】従来のFPGAにおける再構成方法を説明する図である。
【符号の説明】
1 FPGA
21〜24 論理ブロック
2a 内部I/O
3 I/Oブロック
4 コンフィグレーションブロック
5 ユーザI/F
6 PCII/F
7 バッファブロック
71 マルチプレクサー
72 デマルチプレクサー
73 バッファ論理ブロック
8 スイッチマトリクス
20 CPU
30 RAM
40 HDD
50 PCIバス
100 情報処理システム[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a programmable logic device capable of rewriting a program.
[0002]
[Prior art]
In recent years, with the rapid development of IC (integrated circuit) design technology and manufacturing technology, PLD (Programmable Logic Device) capable of programming circuit design has been developed. In such a programmable logic circuit, the circuit information including the configuration information of the logic circuit can be read to freely configure the wiring between the internal logic circuits, and the circuit once created can be reconfigured as many times as necessary. Is possible.
[0003]
In addition, a programmable logic device called an FPGA (Field Programmable Gate Array) can reconfigure a desired logic circuit by externally writing a bit stream that controls a switch matrix that connects between logic blocks and between wirings. A device is provided with a memory for storing circuit information including internal circuit configuration information and switch matrix control data between logic blocks, and the circuit information can have various operating characteristics. .
[0004]
[Problems to be solved by the invention]
Conventionally, when a program is rewritten in the above-described FPGA mounted on an information processing system or the like, even when only a part of logical blocks are rewritten as shown in FIG. In some cases, the logical block portion was also affected. Further, after the reconfiguration, it is necessary to initialize the FPGA by turning on the power again, and the system operation has to be temporarily stopped.
[0005]
In order to solve such a problem, as shown in FIG. 5, a technique for reconfiguring only a part of logical blocks to be rewritten has been developed. Since (Input / Output) is set to a high impedance state or pulled up to stop data input / output of the FPGA, it is necessary to initialize this I / O after reconfiguration to prevent an illegal operation of the system. Therefore, it is necessary to turn on the power again, and the system must be controlled at the time of reconfiguration so as not to affect the external device connected to the FPGA. When the FPGA is connected to the open system, complicated control is required. Would be inconvenient.
[0006]
In addition, in various information processing systems such as financial systems, transportation systems, security systems, air traffic control systems, etc. that must always be in operation, temporarily turning off the power and turning it on again can temporarily stop the system operation. It will cause a huge hindrance to the operation.
[0007]
In view of the above problems, the present invention is configured such that the programmable logic device can perform partial reconfiguration while keeping the connection state with the external device active.
[0008]
[Means for Solving the Problems]
The invention described in claim 1
In a programmable logic device comprising a plurality of logic blocks that can be reconfigured based on circuit information including circuit configuration information,
A connection means for connecting to an external device for which a connection standard is defined;
Reconfiguration means for acquiring the circuit information and reconfiguring the logic block based on the acquired circuit information;
And an external device connected by said connecting means, between said logic blocks, comprising an adjusting means for adjusting the input and output of data, and
The adjustment means includes a buffer logic block that generates output data corresponding to input data from the external device;
While the logical block is being reconfigured, data is input / output between the external device and the buffer logical block, and when the logical block is not being reconfigured, data is input / output between the external device and the logical block. Switching means for switching the data input / output destination to perform
It is characterized by providing.
[0009]
The invention according to claim 2 is the programmable logic device according to claim 1,
When the input unit receives input data from the external device connected by the connection unit while the logical block is reconfigured by the reconfiguration unit, the adjustment unit corresponds to the input data and the logical unit is connected to the external device. Output data for temporarily waiting for logical processing by the block is generated by the buffer logical block and output to the external device.
[0010]
According to the first and second aspects of the present invention, input / output of data is adjusted between the external device and the logical block to be reconfigured, and input data from the external device is maintained while the logical block is being reconfigured. Since the output data for causing the external device to wait for the logical processing is generated and output to the external device, it is possible to reconfigure only the logical block to be reconfigured while keeping the connection state with the external device active.
[0011]
The invention according to claim 3 is the programmable logic device according to claim 2,
The output data is output data in accordance with a connection standard of the external device.
[0012]
According to the third aspect of the invention, since the output data conforms to the connection standard of the external device, it is possible to prevent an illegal operation from occurring on the external device side.
[0015]
The invention according to claim 4 is the programmable logic device according to any one of claims 1 to 3 ,
Includes logic blocks that cannot be reconfigured,
The adjusting means is provided in a logic block in which the circuit cannot be reconfigured.
[0016]
According to the fourth aspect of the present invention, since the adjustment means is provided in the logic block in which the circuit cannot be reconfigured, the adjustment means performs the reconfiguration even if the reconfigurable logic block is being reconfigured. A stable adjustment operation can be executed without receiving it.
[0017]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
First, the configuration will be described.
FIG. 1 is a diagram showing a configuration of an
In FIG. 1, the
[0018]
The
[0019]
A CPU (Central Processing Unit) 20 is a main controller of the
[0020]
A RAM (Random Access Memory) 30 is composed of a rewritable semiconductor memory, and forms a work area for temporarily storing various programs executed by the CPU 10, data processed by these various programs, and the like.
[0021]
An HDD (Hard Disk Drive) 40 includes a recording medium (not shown) in which programs, data, and the like are stored in advance. The recording medium is processed by a system program, various control programs, and various control programs. Store data etc. The
[0022]
Next, the FPGA 1 according to the present invention will be described in detail.
FIG. 2 is a schematic diagram showing the configuration of the FPGA 1 in the present embodiment.
In FIG. 2, the FPGA 1 is composed of
[0023]
The FPGA 1 is an aggregate of logic blocks 21 to 24 in which logic gates are combined. Wirings (not shown) are laid in a grid between the logic blocks 21 to 24 arranged in a matrix. Connection is controlled. That is, the FPGA 1 is a programmable logic device described in the claims. Note that the FPGA 1 is an aggregate of a large number of logical blocks, but only four
[0024]
The
[0025]
Each of the I / O blocks 31 to 38 includes a plurality of input terminals and output terminals. The I / O blocks 31 to 35 are connected to the user I /
[0026]
The configuration block 4 includes a rewritable storage element such as SRAM (Static RAM) or DRAM (Dynamic RAM), stores circuit information of the FPGA 1 in the storage element, and in the FPGA 1 based on the stored circuit information. Performs circuit reconfiguration control. That is, the configuration block 4 has a function as a reconfiguration unit described in the claims. The circuit information includes circuit configuration data of the logical block 2, wiring connection data for controlling the wiring connection between the
[0027]
The circuit information stored in the configuration block 4 is output to the configuration block 4 from the
[0028]
The user I /
[0029]
The
[0030]
The
As shown in FIG. 2, the
[0031]
The
[0032]
The
[0033]
Next, the operation of the present embodiment will be described.
Hereinafter, the reconfiguration processing by the FPGA 1 will be described with reference to FIG.
As a premise of explanation, the FPGA 1 is not currently being reconfigured, and logical processing is performed by the
[0034]
In the reconfiguration process, when circuit information is input to the configuration block 4 together with a reconfiguration instruction, the configuration block 4 stores the input circuit information in a built-in storage element and starts circuit reconfiguration. The control signal to be input is input to the
[0035]
The
[0036]
On the other hand, the configuration block 4 outputs a control signal for starting reconfiguration to each unit, and then, based on circuit information stored in a built-in storage element, the logic blocks 21 to 23 and I / O blocks 31 to 31 to be reconfigured 35 reconfigurations are controlled. When the reconfiguration is completed, a control signal indicating that the reconfiguration is completed is output to the
[0037]
As described above, during reconfiguration of the rewritable
[0038]
Further, since it is not necessary to turn on the
[0039]
Note that the description in the present embodiment is an example of a suitable
For example, in the present embodiment, a plurality of circuit information of the FPGA 1 is stored in the
[0040]
In addition, the detailed configuration and detailed operation of each device or component constituting the information processing system and FPGA 1 in the present embodiment can be changed as appropriate without departing from the spirit of the present invention.
[0041]
【The invention's effect】
According to the first and second aspects of the present invention, input / output of data is adjusted between the external device and the logical block to be reconfigured, and the input data from the external device is processed while the logical block is being reconfigured. Since output data for causing the external device to wait for the logical processing is generated and output to the external device, it is possible to reconfigure only the logical block to be reconfigured while keeping the connection state with the external device active.
[0042]
According to the third aspect of the invention, since the output data conforms to the connection standard of the external device, it is possible to prevent an illegal operation from occurring on the external device side.
[0044]
According to the fourth aspect of the present invention, since the adjusting means is provided in the logic block in which the circuit cannot be reconfigured, the adjusting means is reconfigured even if the reconfigurable logic block is being reconfigured. Therefore, a stable adjustment operation can be performed.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of an
FIG. 2 is a diagram showing an internal configuration of an FPGA 1 according to an embodiment to which the present invention is applied.
FIG. 3 is a diagram showing an internal configuration of the
FIG. 4 is a diagram for explaining a reconfiguration method in a conventional FPGA.
FIG. 5 is a diagram for explaining a reconfiguration method in a conventional FPGA.
[Explanation of symbols]
1 FPGA
21-24
3 I / O block 4
6 PCI / F
7
30 RAM
40 HDD
50
Claims (4)
接続規格が定められた外部装置と接続する接続手段と、
前記回路情報を取得し、この取得した回路情報に基づいて前記論理ブロックを再構成する再構成手段と、
前記接続手段により接続された外部装置と、前記論理ブロックとの間で、データの入出力を調整する調整手段と、を備え、
前記調整手段は、前記外部装置からの入力データに対応する出力データを生成するバッファ論理ブロックと、
前記論理ブロックの再構成中は、前記外部装置と前記バッファ論理ブロックとの間でデータの入出力を行い、再構成していない間は前記外部装置と前記論理ブロックとの間でデータの入出力を行うよう、データの入出力先を切り替える切替手段と、
を備えることを特徴とするプログラマブル論理装置。In a programmable logic device including a plurality of logic blocks that can be reconfigured based on circuit information including circuit configuration information,
Connection means for connecting to an external device for which a connection standard is defined;
Reconfiguration means for acquiring the circuit information and reconfiguring the logic block based on the acquired circuit information;
And an external device connected by said connecting means, between said logic blocks, comprising an adjusting means for adjusting the input and output of data, and
The adjustment means includes a buffer logic block that generates output data corresponding to input data from the external device;
While the logical block is being reconfigured, data is input / output between the external device and the buffer logical block, and when the logical block is not being reconfigured, data is input / output between the external device and the logical block. Switching means for switching the data input / output destination to perform
A programmable logic device comprising:
前記調整手段は、前記回路の再構成が不可能な論理ブロックに備えられることを特徴とする請求項1〜3の何れか一項に記載のプログラマブル論理装置。With logic blocks that cannot be reconfigured,
It said adjusting means includes a programmable logic device according to any one of claim 1 to 3, characterized in that provided in the reconstruction is not possible logic blocks of the circuit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002175354A JP3944639B2 (en) | 2002-06-17 | 2002-06-17 | Programmable logic device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002175354A JP3944639B2 (en) | 2002-06-17 | 2002-06-17 | Programmable logic device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004023417A JP2004023417A (en) | 2004-01-22 |
JP3944639B2 true JP3944639B2 (en) | 2007-07-11 |
Family
ID=31174029
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002175354A Expired - Lifetime JP3944639B2 (en) | 2002-06-17 | 2002-06-17 | Programmable logic device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3944639B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006244429A (en) * | 2005-03-07 | 2006-09-14 | Canon Inc | Data processor and its control method |
JP5277615B2 (en) * | 2007-11-22 | 2013-08-28 | 富士ゼロックス株式会社 | Data processing apparatus and data processing program |
JP5438358B2 (en) | 2009-04-13 | 2014-03-12 | キヤノン株式会社 | Data processing apparatus and control method thereof |
-
2002
- 2002-06-17 JP JP2002175354A patent/JP3944639B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2004023417A (en) | 2004-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5809281A (en) | Field programmable gate array with high speed SRAM based configurable function block configurable as high performance logic or block of SRAM | |
US5737766A (en) | Programmable gate array configuration memory which allows sharing with user memory | |
US6326806B1 (en) | FPGA-based communications access point and system for reconfiguration | |
US7328335B1 (en) | Bootable programmable logic device for internal decoding of encoded configuration data | |
US6907595B2 (en) | Partial reconfiguration of a programmable logic device using an on-chip processor | |
US7446561B2 (en) | I/O circuitry shared between processor and programmable logic portions of an integrated circuit | |
US6839888B2 (en) | Method for implementing bit-swap functions in a field programmable gate array | |
CN103370878B (en) | Power management in integrated circuit | |
JPH11353300A (en) | Designation of programmable pin for semiconductor device | |
JP4209771B2 (en) | General purpose computer architecture | |
EP0969290B1 (en) | A general port capable of implementing the JTAG protocol | |
US6029236A (en) | Field programmable gate array with high speed SRAM based configurable function block configurable as high performance logic or block of SRAM | |
CN114253602A (en) | Logic structure based on micro-sector infrastructure | |
US5633806A (en) | Semiconductor integrated circuit and method of designing same | |
JPH1049510A (en) | Integrated circuit processor | |
CN1333357C (en) | In-circuit configuration structure with non-volatile configuration storage | |
JPS6364088B2 (en) | ||
JP3944639B2 (en) | Programmable logic device | |
JPH0146946B2 (en) | ||
US7030646B1 (en) | Functional pre-configuration of a programmable logic device | |
US7080226B1 (en) | Field programmable gate array (FPGA) configuration data path for module communication | |
US7876125B1 (en) | Register data retention systems and methods during reprogramming of programmable logic devices | |
JP2006100991A (en) | Non-volatile logic circuit and system lsi having the same | |
JPH1117524A (en) | Programmable logic circuit system and re-configuration method for programmable logic circuit device | |
US7554358B1 (en) | Programmable logic devices with user non-volatile memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050520 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060926 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061219 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070219 |
|
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: 20070313 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070326 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3944639 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100420 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110420 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120420 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130420 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140420 Year of fee payment: 7 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |