JP2000101421A - Programmable device - Google Patents

Programmable device

Info

Publication number
JP2000101421A
JP2000101421A JP10268081A JP26808198A JP2000101421A JP 2000101421 A JP2000101421 A JP 2000101421A JP 10268081 A JP10268081 A JP 10268081A JP 26808198 A JP26808198 A JP 26808198A JP 2000101421 A JP2000101421 A JP 2000101421A
Authority
JP
Japan
Prior art keywords
programmable logic
circuit configuration
circuit
signal
configuration
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.)
Withdrawn
Application number
JP10268081A
Other languages
Japanese (ja)
Inventor
Hiroyuki Miyazaki
博之 宮崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP10268081A priority Critical patent/JP2000101421A/en
Publication of JP2000101421A publication Critical patent/JP2000101421A/en
Withdrawn legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide a self-reconfiguration function to the programmable device. SOLUTION: This programmable device is provided with a programmable logic section 20, a trigger condition discriminating section 31, that counts number of times of basic triggers having a prescribed value of signals from the programmable logic section 20 synchronously with a clock and generates a final trigger signal when the counted number of times reaches a setting value, a circuit information selecting section 32 that decides revision of the circuit configuration, based on the current circuit configuration of the programmable logic section 20 and on the generation of the final trigger signal or its sequence, and a configuration control section 33 that reads configuration information, based on the decision so as to revise the circuit configuration of the programmable logic section 20. The state of the programmable logic section 20 is stored in a variable storage section before the revision of the circuit configuration of the programmable logic section 20 and the initial state of the programmable logic section 20 after the revision of the circuit configuration of the programmable logic section 20 is set, based on the stored value.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【発明の属する技術分野】本発明は、FPGA(Field
Programable Gate Array)やPLD(Programable Logi
c Device)などのようにハードウエア構成をプログラム
可能なプログラマブルデバイスに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an FPGA (Field
Programmable Gate Array (PLD) and Programmable Logi (PLD)
c)), and a programmable device having a programmable hardware configuration.

【従来の技術】この種のプログラマブルデバイスは、コ
ンピュータのようにプログラムに応じて異なる機能を実
現することができるので、用途が広く、また、設計変更
が容易である。プログラマブルデバイスのプログラム
は、コンピュータのそれと異なり、要素の接続を変える
ことによりハードウエアを構成する(コンフィギュレー
ションする)ためのものであるので、プログラマブルデ
バイスで構成された回路は高速処理を行うことができ
る。例えば乗算回路を備えていないマイクロプロセッサ
にFPGAデバイスを接続し、プログラム実行中におい
てソウフトウエアによる乗算実行回数を計数し、計数値
が設定値以上になるとFPGAデバイスにプログラムを
ロードしてハードウエア乗算回路を構成し、その後、ソ
フトウエアによる乗算をFPGAデバイスによる乗算に
切り換えることにより乗算を高速に実行し、他の演算に
ついても同様のことを行う装置が提案されている(特開
平8−46509号公報)。このようにFPGAデバイ
スなどのプログラマブルデバイスをダイナミックにコン
フィギュレーションすることにより、1つのプログラマ
ブルデバイスで多くの機能を高速に実行することが可能
となる。
2. Description of the Related Art Since a programmable device of this kind can realize different functions according to a program like a computer, it is versatile and its design can be easily changed. Unlike a computer program, a program of a programmable device is for configuring hardware by changing the connection of elements, so that a circuit configured with a programmable device can perform high-speed processing. . For example, an FPGA device is connected to a microprocessor without a multiplication circuit, the number of multiplications executed by software is counted during execution of the program, and when the counted value exceeds a set value, the program is loaded into the FPGA device and a hardware multiplication circuit is executed. Then, an apparatus has been proposed which executes multiplication at high speed by switching multiplication by software to multiplication by an FPGA device and performs the same for other operations (Japanese Patent Laid-Open No. 8-46509). ). Thus, by dynamically configuring a programmable device such as an FPGA device, it becomes possible to execute many functions at high speed with one programmable device.

【発明が解決しようとする課題】しかし、プログラマブ
ルデバイス自体でリコンフィギュレーションを判断した
りリコンフィグレーションを実行することができない。
これが可能になれば、プログラマブルデバイスそれ自体
で多機能になり、プログラマブルデバイスを含むシステ
ムが簡単化されると共にコストダウンを図ることがで
き、プログラマブルデバイスの用途が拡大される。本発
明の目的は、このような問題点に鑑み、セルフリコンフ
ィグレーション機能を備えたプログラマブルデバイスを
提供することにある。
However, it is not possible to judge reconfiguration or execute reconfiguration by the programmable device itself.
If this becomes possible, the programmable device itself becomes multifunctional, the system including the programmable device can be simplified, the cost can be reduced, and the use of the programmable device is expanded. An object of the present invention is to provide a programmable device having a self-reconfiguration function in view of such a problem.

【課題を解決するための手段及びその作用効果】請求項
1のプログラマブルデバイスでは、プログラマブルロジ
ック部と、該プログラマブルロジック部から、該プログ
ラマブルロジック部の回路構成変更決定に必要な信号が
供給され、該信号に基づいて回路構成変更を決定する回
路構成変更決定部と、該決定に基づきコンフィグレーシ
ョン情報を読み込んで該プログラマブルロジック部の回
路構成を変更するコンフィグレーション制御部とを有す
る。このプログラマブルデバイスによれば、プログラマ
ブルデバイス自体でリコンフィグレーションの判断とリ
コンフィグレーションとが行われるので、プログラマブ
ルデバイスを用いたシステムが簡単化されると共にコス
トダウンが達成され、プログラマブルデバイスの用途拡
大に寄与するところが大きい。請求項2のプログラマブ
ルデバイスでは、請求項1において、上記回路構成変更
決定部は、上記信号が所定値である基本トリガの回数を
クロックに同期して計数し、計数した該回数が設定値に
なったとき最終トリガ信号を生成するトリガ条件判定部
と、該最終トリガ信号の生成に基づいて、上記回路構成
変更の決定を行う回路情報選択部とを有する。請求項3
のプログラマブルデバイスでは、請求項2において、上
記クロックは、上記プログラマブルロジック部の動作ク
ロック又はタイマクロックである。請求項4では、請求
項2又は3において、上記回路情報選択部は、現在の上
記プログラマブルロジック部の回路構成と上記最終トリ
ガ信号の生成とに基づいて、どの回路構成に変更すべき
かを決定する。このプログラマブルデバイスによれば、
より一層の多機能化が達成される。請求項5では、請求
項2又は3において、上記回路情報選択部は、現在の上
記プログラマブルロジック部の回路構成と複数の上記最
終トリガ信号の生成順とに基づいて、どの回路構成に変
更すべきかを決定する。請求項6のプログラマブルデバ
イスでは、請求項1乃至5のいずれか1つにおいて、上
記プログラマブルロジック部の回路構成変更前にこの回
路の状態を記憶しておきその記憶値で該プログラマブル
ロジック部の回路構成変更後の回路の初期状態を設定す
るための変数格納部をさらに有する。このプログラマブ
ルデバイスによれば、初期状態設定に応じて回路動作を
適当に変えることができるので、一層細かな処理を行う
ことが可能となる。請求項7のプログラマブルデバイス
では、請求項1乃至6のいずれか1つにおいて、上記コ
ンフィグレーション制御部は、外部からの信号に応答し
て所定のコンフィグレーション情報を読み込み上記プロ
グラマブルロジック部の回路構成を強制的に所定の回路
構成にする。このプログラマブルデバイスによれば、よ
りフレキシブルにプログラマブルデバイスの機能を変更
することが可能となる。請求項8のプログラマブルデバ
イスでは、請求項7において、上記外部からの信号は、
電源投入に応答して生成される。請求項9のプログラマ
ブルデバイスでは、請求項3において、上記トリガ条件
判定部は、上記信号の値が設定値に一致しているかどう
かを判定して一致信号を出力する比較器と、該一致信号
が一致を示している場合に上記クロックを計数しその計
数値が所定値になったとき上記最終トリガ信号を出力す
るカウンタとを有する。請求項10のプログラマブルデ
バイスでは、請求項9において、上記カウンタは、上記
動作クロックを計数するサイクルカウンタと、上記タイ
マクロックを計数するタイマカウンタとを有し、上記一
致信号を該サイクルカウンタと該タイマカウンタとの一
方に選択的に供給させる第1切換スイッチと、該第1切
換スイッチと連動して該サイクルカウンタの出力と該タ
イマカウンタの出力との一方を選択し上記最終トリガ信
号として出力する第2切換スイッチとを有する。
According to a first aspect of the present invention, there is provided a programmable device comprising: a programmable logic unit; and a signal necessary for determining a change in the circuit configuration of the programmable logic unit is supplied from the programmable logic unit. The circuit includes a circuit configuration change determination unit that determines a circuit configuration change based on a signal, and a configuration control unit that reads configuration information based on the determination and changes the circuit configuration of the programmable logic unit. According to this programmable device, the reconfiguration judgment and reconfiguration are performed by the programmable device itself, so that the system using the programmable device is simplified and the cost is reduced, and the use of the programmable device is expanded. The contribution is great. In the programmable device according to the second aspect, in the first aspect, the circuit configuration change determination unit counts the number of basic triggers in which the signal is a predetermined value in synchronization with a clock, and the counted number becomes a set value. A trigger condition judging unit for generating a final trigger signal at the time of occurrence, and a circuit information selecting unit for deciding the circuit configuration change based on the generation of the final trigger signal. Claim 3
In claim 2, the clock is an operation clock or a timer clock of the programmable logic unit. According to a fourth aspect, in the second or third aspect, the circuit information selection unit determines which circuit configuration should be changed based on the current circuit configuration of the programmable logic unit and the generation of the final trigger signal. . According to this programmable device,
Further multifunctionalization is achieved. According to a fifth aspect of the present invention, in the second or third aspect, the circuit information selecting unit is configured to select a circuit configuration to be changed based on a current circuit configuration of the programmable logic unit and a generation order of the plurality of final trigger signals. To determine. According to a sixth aspect of the present invention, there is provided the programmable device according to any one of the first to fifth aspects, wherein a state of the programmable logic unit is stored before the circuit configuration of the programmable logic unit is changed, and a stored value of the state of the circuit is stored. There is further provided a variable storage unit for setting an initial state of the circuit after the change. According to this programmable device, the circuit operation can be appropriately changed according to the initial state setting, so that more detailed processing can be performed. According to a seventh aspect of the present invention, in the programmable device according to any one of the first to sixth aspects, the configuration control unit reads predetermined configuration information in response to an external signal to change a circuit configuration of the programmable logic unit. A predetermined circuit configuration is forcibly set. According to this programmable device, the function of the programmable device can be changed more flexibly. In the programmable device according to claim 8, in claim 7, the external signal is:
Generated in response to power up. In the programmable device according to the ninth aspect, in the third aspect, the trigger condition determination unit determines whether or not the value of the signal matches a set value and outputs a match signal. A counter that counts the clock when it indicates a match and outputs the final trigger signal when the count reaches a predetermined value. 11. The programmable device according to claim 10, wherein the counter has a cycle counter for counting the operation clock and a timer counter for counting the timer clock, and outputs the coincidence signal to the cycle counter and the timer. A first switch for selectively supplying one of the counters and an output of the cycle counter and an output of the timer counter in conjunction with the first switch to output the final trigger signal. 2 changeover switch.

【発明の実施の形態】以下、図面に基づいて本発明の実
施形態を説明する。 [第1実施形態]図1は、セルフリコンフィグレーショ
ン機能を備えたFPGAデバイス10と、FPGAデバ
イス10の各機能を達成するためのプログラム(コンフ
ィグレーション情報)が格納されたコンフィグレーショ
ンメモリ40とを示す機能ブロック図である。このFP
GAデバイス10は例えば、データ処理又は制御に用い
られ、コンピュータシステムに組み込まれている。FP
GAデバイス10内には、プログラムにより機能が可変
のプログラマブルロジック部20と、機能が固定された
固定回路部30とが構成されている。固定回路部30
は、プログラマブルロジック部20と同様にプログラマ
ブルであっても、なくてもよい。プログラマブルロジッ
ク部20には、外部から信号SI1〜SIpが供給さ
れ、プログラマブルロジック部20から外部へ信号SO
1〜SOqが出力される。プログラマブルロジック部2
0内の信号のうち、回路構成変更決定に必要なM点の信
号が取り出され、固定回路部30のトリガ条件判定部3
1に供給される。トリガ条件判定部31は、例えば図2
に示す如く、入力信号Aが低レベル(L)のとき基本ト
リガ1であると判定し、これが100回繰り返されたと
き最終トリガ1の信号を生成して回路情報選択部32に
供給する。トリガ条件判定部31はまた、入力信号Bが
高レベル(H)のとき基本トリガ2であると判定し、H
の合計時間が250μSになったとき最終トリガ2の信
号を生成して回路情報選択部32に供給する。トリガ条
件判定部31はさらに、バスC上の値が3Fh(hは1
6進数であることを示す)のとき基本トリガ3であると
判定し、これが50回繰り返されたとき最終トリガ3の
信号を生成して回路情報選択部32に供給する。図2に
は、基本トリガ4及び5についても同様の内容が記載さ
れている。トリガ条件判定部31は、各入力信号につい
て、図4に示すようなトリガ条件判定ユニット31Uを
備えている。基本トリガ設定値311は、例えば図1の
基本トリガ1の条件であるLレベル(‘0’)である。
この設定値は、フリップフロップの内容又はグランド配
線の電位である。比較器312は、基本トリガ設定値3
11の出力とプログラマブルロジック部20からの信号
とを比較し、両者が一致しているときには、出力を高レ
ベルにした一致信号を基本トリガとして出力する。図2
の最終トリガ条件がサイクル数である場合には、切換ス
イッチ313A及び313Bがサイクルカウンタ314
側に切り換えられてサイクルカウンタ314が使用され
る。最終トリガ条件が合計時間である場合には、切換ス
イッチ313A及び313Bがタイマカウンタ315側
に切り換えられてタイマカウンタ315が使用される。
最終トリガ条件がサイクル数である場合には、サイクル
数設定値316が用いられ、最終トリガ条件が合計時間
である場合には、タイマ設定値317が用いられる。サ
イクルカウンタ314及びタイマカウンタ315のクロ
ック入力端CKにはそれぞれ、アンドゲート318及び
319の出力が供給される。アンドゲート318の一方
の入力端には、プログラマブルロジック部20の動作ク
ロック(又はシステムクロック)が供給され、アンドゲ
ート319の一方に入力端にはタイマクロックが供給さ
れる。比較器312の出力は切換スイッチ313Aを介
し、サイクルカウンタ314が使用される場合にはアン
ドゲート318の他方の入力端に供給され、タイマカウ
ンタ315が使用される場合にはアンドゲート319の
他方の入力端に供給される。プログラマブルロジック部
20のコンフィグレーションが完了すると、サイクルカ
ウンタ314が使用される場合にはサイクル数設定値3
16が初期値としてサイクルカウンタ314にロードさ
れ、タイマカウンタ315が使用される場合にはタイマ
設定値317が初期値としてタイマカウンタ315にロ
ードされる。サイクルカウンタ314及びタイマカウン
タ315はいずれも、ダウンカウンタである。サイクル
カウンタ314が使用される場合、比較器312の出力
が一致を示していると、動作クロックがアンドゲート3
18を介してサイクルカウンタ314のクロック入力端
CKに供給され、その計数値がデクリメントされる。サ
イクルカウンタ314の計数値が0になり、次に−1に
なると、オーバフロー信号が切換スイッチ313Bを介
し最終トリガ信号として取り出される。同様に、タイマ
カウンタ315が使用される場合、比較器312の出力
が一致を示していると、タイマクロックがアンドゲート
319を介してタイマカウンタ315のクロック入力端
CKに供給され、その計数値がデクリメントされる。タ
イマカウンタ315の計数値が0になり、次に−1にな
ると、オーバフロー信号が切換スイッチ313Bを介し
最終トリガ信号として取り出される。図1に戻って、回
路情報選択部32は、プログラマブルロジック部20の
現在機能している回路構成が回路1〜回路Nのいずれで
あるかという条件と、最終トリガの発生又はそのシーケ
ンスの条件とに基づいて、プログラマブルロジック部2
0をどの回路構成に変更すべきかを決定する。例えば図
2に示す如く、プログラマブルロジック部20が現在回
路1であり、最終トリガ2又は3が発生し、次に最終ト
リガ1が発生した場合には、回路情報選択部32は回路
5に変更すべきことを決定する。また、プログラマブル
ロジック部20が現在回路1であり、最終トリガ4又は
5が発生た場合には、回路情報選択部32は回路3に変
更すべきことを決定する。図2にはその他の回路構成変
更についても記載されている。図3は、図2に関する回
路構成間の状態遷移図である。図3は、FPGAデバイ
ス10がデータ処理に用いられた場合を示しており、回
路1はファイル検索処理を行い、回路2は検索したファ
イルの転送処理を行い、回路3はエラー処理を行い、回
路5は検索結果表示処理を行うためのものである。回路
情報選択部32は、回路i(iは1〜Nのいずれか)に
変更すべきことを決定すると、回路i決定信号を活性化
してコンフィグレーション制御部33に供給する。コン
フィグレーション制御部33は、回路iに変更すべきこ
とが決定されると、コンフィグレーションメモリ40か
ら回路情報#iを読み出し、これをプログラマブルロジ
ック部20にロードさせることにより、プログラマブル
ロジック部20をリコンフィグレーションさせる。固定
回路部30がプログラマブルである場合には、固定回路
部30のコンフィグレーションに影響を与えないよう
に、プログラマブルロジック部20にコンフィグレーシ
ョン情報をロードする。以上のようなFPGAデバイス
によれば、FPGAデバイス自体でリコンフィグレーシ
ョンの判断とリコンフィグレーションとが行われるの
で、FPGAデバイスを用いたシステムが簡単化される
と共にコストダウンが達成され、FPGAデバイスの用
途拡大に寄与するところが大きい。コンフィグレーショ
ン中には、入出力処理を行うことができないので、コン
フィグレーション制御部33は例えば、不図示のメイン
CPUに対しビジー信号BUSYを供給して処理を一時
中断させる。プログラマブルロジック部20のコンフィ
グレーション後の初期状態を設定する必要がある場合に
は、コンフィグレーション直前にプログラマブルロジッ
ク部20の状態を変数格納部34に格納しておき、その
情報をコンフィグレーション直後にプログラマブルロジ
ック部20にロードして、プログラマブルロジック部2
0を初期設定する。このようにすれば、初期状態設定に
応じて回路動作を適当に変えることができるので、一層
細かな処理を行うことが可能となる。また、電源投入に
より又は上記メインCPUからの要求により、コンフィ
グレーション制御部33にロード信号LOADが供給さ
れると、所定の回路情報がプログラマブルロジック部2
0に供給されてコンフィグレーションが強制的に行われ
る。この際、回路j決定信号(jは1〜Nのいずれか)
も同時にコンフィグレーション制御部33へメインCP
Uから供給して、回路jのコンフィグレーションを行わ
せてもよい。このようにすれば、よりフレキシブルにF
PGAデバイスの機能を変更することが可能となる。コ
ンフィグレーションメモリ40は、ROM又はRAMで
あり、RAMの場合には例えばCPUのワークRAMを
共用してもよい。コンフィグレーションメモリ40に
は、例えば図5に示す如く、分割された各記憶領域に回
路情報が格納されている。FPGAデバイス10からコ
ンフィグレーションメモリ40にはチップセレクト信号
CS、出力イネーブル信号OE及びアドレスADRが供
給され、コンフィグレーションメモリ40からFPGA
デバイス10にはデータDATAが供給される。チップ
セレクト信号CSが活性化されてコンフィグレーション
メモリ40が選択され、アドレスADRの供給によりデ
ータ読出動作が開始される。出力イネーブル信号OEが
活性化されると、並列データDATAがFPGAデバイ
ス10に供給される。並列データDATAは、FPGA
デバイス10内の並/直変換回路101により直列信号
に変換されて、プログラマブルロジック部20に対する
プログラム記憶部に供給される。図6は、図5の変形例
を示す。コンフィグレーションメモリ40Aは、コンフ
ィグレーションする回路構成毎のコンフィグレーション
ROM40A1〜40ANを備えている。i=1〜Nの
各々について、FPGAデバイス10からコンフィグレ
ーションROM40Aiにチップセレクト信号CSiが
供給される。また、FPGAデバイス10からコンフィ
グレーションROM40A1〜40ANに出力イネーブ
ル信号OE及びクロックCLKがバスを介して供給さ
れ、コンフィグレーションROM40A1〜40ANの
うち選択されたものからバスを介してFPGAデバイス
10へクロックCLKに同期したデータDATAが供給
される。なお、本発明には外にも種々の変形例が含まれ
る。例えば図4において、カウンタとアンドゲートとを
1対のみ用い、切換スイッチ313A及び313Bを用
いず、タイマクロックと動作クロックとの一方を選択的
にこのアンドゲートに供給する構成であってもよい。ま
た、アンドゲート318を用いずに比較器312の出力
を、切換スイッチ313Aを介してカウンタ314のク
ロック入力端CKに供給する非同期計数方式であっても
よい。また、FPGAデバイスの替わりに、ハードウエ
ア構成をプログラム可能な他のプログラマブルデバイス
を用いて上述の機能を達成するものであってもよい。さ
らに、固定回路部30はプログラマブル回路をプログラ
ムしたものでなくてもよいので、その一部又は全部を、
プログラマブルデバイスの外部に備えてこれとプログラ
マブルデバイスとを接続した構成(接続した構成全体と
してプログラマブルデバイス)であってもよい。この場
合、部品点数が増えるが、同一機能を達成することが可
能である。
Embodiments of the present invention will be described below with reference to the drawings. First Embodiment FIG. 1 shows an FPGA device 10 having a self-reconfiguration function and a configuration memory 40 storing a program (configuration information) for achieving each function of the FPGA device 10. It is a functional block diagram shown. This FP
The GA device 10 is used for data processing or control, for example, and is incorporated in a computer system. FP
The GA device 10 includes a programmable logic unit 20 whose function is variable by a program and a fixed circuit unit 30 whose function is fixed. Fixed circuit section 30
May or may not be programmable like the programmable logic unit 20. Signals SI1 to SIp are externally supplied to the programmable logic unit 20, and a signal SO
1 to SOq are output. Programmable logic unit 2
Among the signals in 0, a signal at M points necessary for determining the circuit configuration change is extracted, and the trigger condition determination unit 3 of the fixed circuit unit 30
1 is supplied. The trigger condition determination unit 31 is, for example, as shown in FIG.
As shown in (1), when the input signal A is at a low level (L), it is determined to be the basic trigger 1, and when this is repeated 100 times, a signal of the final trigger 1 is generated and supplied to the circuit information selection unit 32. The trigger condition determination unit 31 also determines that the input signal B is the basic trigger 2 when the input signal B is at a high level (H).
When the total time becomes 250 μS, a signal of the final trigger 2 is generated and supplied to the circuit information selection unit 32. The trigger condition determination unit 31 further determines that the value on the bus C is 3Fh (h is 1
When it is a hexadecimal number), it is determined to be the basic trigger 3, and when this is repeated 50 times, a signal of the final trigger 3 is generated and supplied to the circuit information selection unit 32. FIG. 2 shows the same contents for the basic triggers 4 and 5. The trigger condition determination unit 31 includes a trigger condition determination unit 31U as shown in FIG. 4 for each input signal. The basic trigger set value 311 is, for example, an L level ('0') which is a condition of the basic trigger 1 in FIG.
This set value is the content of the flip-flop or the potential of the ground wiring. The comparator 312 has the basic trigger set value 3
11 is compared with the signal from the programmable logic unit 20, and when they match, a matching signal whose output is set to a high level is output as a basic trigger. FIG.
When the last trigger condition of the is the number of cycles, the changeover switches 313A and 313B
And the cycle counter 314 is used. When the final trigger condition is the total time, the changeover switches 313A and 313B are switched to the timer counter 315 side, and the timer counter 315 is used.
When the final trigger condition is the number of cycles, the cycle number setting value 316 is used, and when the final trigger condition is the total time, the timer setting value 317 is used. Outputs of AND gates 318 and 319 are supplied to a clock input terminal CK of the cycle counter 314 and the timer counter 315, respectively. An operation clock (or system clock) of the programmable logic unit 20 is supplied to one input terminal of the AND gate 318, and a timer clock is supplied to one input terminal of the AND gate 319. The output of the comparator 312 is supplied via a changeover switch 313A to the other input terminal of the AND gate 318 when the cycle counter 314 is used, and to the other input terminal of the AND gate 319 when the timer counter 315 is used. It is supplied to the input end. When the configuration of the programmable logic unit 20 is completed, when the cycle counter 314 is used, the cycle number setting value 3
16 is loaded into the cycle counter 314 as an initial value, and when the timer counter 315 is used, the timer set value 317 is loaded into the timer counter 315 as an initial value. Both the cycle counter 314 and the timer counter 315 are down counters. If the cycle counter 314 is used and the output of the comparator 312 indicates a match, the operation clock is
The clock signal is supplied to the clock input terminal CK of the cycle counter 314 via 18 and its count value is decremented. When the count value of the cycle counter 314 becomes 0 and then becomes -1, an overflow signal is taken out as a final trigger signal via the changeover switch 313B. Similarly, when the timer counter 315 is used, if the output of the comparator 312 indicates a match, the timer clock is supplied to the clock input terminal CK of the timer counter 315 via the AND gate 319, and the count value is output. Is decremented. When the count value of the timer counter 315 becomes 0 and then becomes -1, the overflow signal is taken out as the final trigger signal via the changeover switch 313B. Returning to FIG. 1, the circuit information selection unit 32 determines whether the currently functioning circuit configuration of the programmable logic unit 20 is any of the circuits 1 to N, the condition of generation of the final trigger or the sequence thereof. Based on the programmable logic unit 2
It is determined which circuit configuration should be changed to 0. For example, as shown in FIG. 2, when the programmable logic unit 20 is the current circuit 1 and the last trigger 2 or 3 occurs, and then the last trigger 1 occurs, the circuit information selecting unit 32 changes to the circuit 5. Decide what to do. When the programmable logic unit 20 is the current circuit 1 and the final trigger 4 or 5 is generated, the circuit information selecting unit 32 determines that the circuit 3 should be changed. FIG. 2 also shows other circuit configuration changes. FIG. 3 is a state transition diagram between circuit configurations related to FIG. FIG. 3 shows a case where the FPGA device 10 is used for data processing. The circuit 1 performs a file search process, the circuit 2 performs a transfer process of the searched file, the circuit 3 performs an error process, and Reference numeral 5 is for performing a search result display process. When determining that the circuit i should be changed to the circuit i (i is any one of 1 to N), the circuit information selection unit 32 activates a circuit i determination signal and supplies it to the configuration control unit 33. When it is determined that the circuit i should be changed to the circuit i, the configuration control unit 33 reads the circuit information #i from the configuration memory 40 and loads the circuit information #i into the programmable logic unit 20 to reload the programmable logic unit 20. Configure. When the fixed circuit unit 30 is programmable, the configuration information is loaded into the programmable logic unit 20 so as not to affect the configuration of the fixed circuit unit 30. According to the above-described FPGA device, the reconfiguration determination and the reconfiguration are performed by the FPGA device itself, so that the system using the FPGA device is simplified and the cost is reduced, and the FPGA device is used. It greatly contributes to expanding applications. During the configuration, input / output processing cannot be performed, so the configuration control unit 33 supplies a busy signal BUSY to a main CPU (not shown) to temporarily suspend the processing. When it is necessary to set the initial state after the configuration of the programmable logic unit 20, the state of the programmable logic unit 20 is stored in the variable storage unit 34 immediately before the configuration, and the information is stored in the programmable storage immediately after the configuration. The logic unit 20 is loaded into the programmable logic unit 2
Initialize 0. With this configuration, the circuit operation can be appropriately changed according to the initial state setting, so that more detailed processing can be performed. When the load signal LOAD is supplied to the configuration control unit 33 upon power-on or in response to a request from the main CPU, predetermined circuit information is stored in the programmable logic unit 2.
0 to force the configuration. At this time, a circuit j determination signal (j is any one of 1 to N)
To the configuration control unit 33 at the same time
The configuration of the circuit j may be supplied from U. In this way, F
The function of the PGA device can be changed. The configuration memory 40 is a ROM or a RAM. In the case of the RAM, for example, the work RAM of the CPU may be shared. In the configuration memory 40, for example, as shown in FIG. 5, circuit information is stored in each divided storage area. The chip select signal CS, the output enable signal OE, and the address ADR are supplied from the FPGA device 10 to the configuration memory 40.
The device 10 is supplied with data DATA. The chip select signal CS is activated, the configuration memory 40 is selected, and the data read operation is started by the supply of the address ADR. When the output enable signal OE is activated, the parallel data DATA is supplied to the FPGA device 10. Parallel data DATA is FPGA
The signal is converted into a serial signal by the parallel / serial conversion circuit 101 in the device 10 and supplied to the program storage unit for the programmable logic unit 20. FIG. 6 shows a modification of FIG. The configuration memory 40A includes configuration ROMs 40A1 to 40AN for each circuit configuration to be configured. For each of i = 1 to N, the chip select signal CSi is supplied from the FPGA device 10 to the configuration ROM 40Ai. An output enable signal OE and a clock CLK are supplied from the FPGA device 10 to the configuration ROMs 40A1 to 40AN via the bus, and a clock CLK is supplied from the selected one of the configuration ROMs 40A1 to 40AN to the FPGA device 10 via the bus. Synchronized data DATA is supplied. The present invention also includes various modified examples. For example, in FIG. 4, only one pair of a counter and an AND gate may be used, and one of the timer clock and the operating clock may be selectively supplied to the AND gate without using the changeover switches 313A and 313B. Further, an asynchronous counting method may be used in which the output of the comparator 312 is supplied to the clock input terminal CK of the counter 314 via the changeover switch 313A without using the AND gate 318. Further, instead of the FPGA device, the function described above may be achieved by using another programmable device whose hardware configuration is programmable. Further, since the fixed circuit unit 30 does not have to be programmed with a programmable circuit, a part or all of the
A configuration in which the device is provided outside the programmable device and connected to the programmable device (a programmable device as a whole connected configuration) may be used. In this case, although the number of components increases, the same function can be achieved.

【図面の簡単な説明】[Brief description of the drawings]

【図1】セルフリコンフィグレーション機能を備えたF
PGAデバイスとコンフィグレーションメモリとを示す
機能ブロック図である。
FIG. 1 shows an F with a self-reconfiguration function
FIG. 2 is a functional block diagram illustrating a PGA device and a configuration memory.

【図2】図1中のトリガ条件判定部と回路情報選択部の
機能を示す図表である。
FIG. 2 is a table showing functions of a trigger condition determination unit and a circuit information selection unit in FIG.

【図3】図2に関する回路構成間の状態遷移図である。FIG. 3 is a state transition diagram between circuit configurations related to FIG. 2;

【図4】トリガ条件判定ユニットの構成例を示す回路図
である。
FIG. 4 is a circuit diagram illustrating a configuration example of a trigger condition determination unit.

【図5】FPGAデバイスとコンフィグレーションメモ
リとの接続図である。
FIG. 5 is a connection diagram between an FPGA device and a configuration memory.

【図6】図5の変形例を示す図である。FIG. 6 is a diagram showing a modification of FIG. 5;

【符号の説明】[Explanation of symbols]

10 FPGAデバイス 20 プログラマブルロジック部 30 固定回路部 31 トリガ条件判定部 32 回路情報選択部 33 コンフィグレーション制御部 34 変数格納部 40、40A コンフィグレーションメモリ 40A1、40Ai コンフィグレーションROM 31U トリガ条件判定ユニット 311 基本トリガ設定値 312 比較器 313A、313B 切換スイッチ 314 サイクルカウンタ 315 タイマカウンタ 316 サイクル数設定値 317 タイマ設定値 318、319 アンドゲート ADR アドレス DATA データ CS、CS1 チップセレクト信号 OE 出力イネーブル信号 101 並/直変換回路 CK クロック入力端 Reference Signs List 10 FPGA device 20 Programmable logic unit 30 Fixed circuit unit 31 Trigger condition determination unit 32 Circuit information selection unit 33 Configuration control unit 34 Variable storage unit 40, 40A Configuration memory 40A1, 40Ai Configuration ROM 31U Trigger condition determination unit 311 Basic trigger Set value 312 Comparator 313A, 313B Changeover switch 314 Cycle counter 315 Timer counter 316 Number of cycles set value 317 Timer set value 318, 319 AND gate ADR Address DATA data CS, CS1 Chip select signal OE Output enable signal 101 Parallel / direct conversion circuit CK clock input terminal

Claims (10)

【特許請求の範囲】[Claims] 【請求項1】 プログラマブルロジック部と、 該プログラマブルロジック部から、該プログラマブルロ
ジック部の回路構成変更決定に必要な信号が供給され、
該信号に基づいて回路構成変更を決定する回路構成変更
決定部と、 該決定に基づきコンフィグレーション情報を読み込んで
該プログラマブルロジック部の回路構成を変更するコン
フィグレーション制御部と、 を有することを特徴とするプログラマブルデバイス。
1. A programmable logic unit, and a signal required for determining a change in circuit configuration of the programmable logic unit is supplied from the programmable logic unit.
A circuit configuration change determination unit that determines a circuit configuration change based on the signal; and a configuration control unit that reads configuration information based on the determination and changes the circuit configuration of the programmable logic unit. Programmable device.
【請求項2】 上記回路構成変更決定部は、 上記信号が所定値である基本トリガの回数をクロックに
同期して計数し、計数した該回数が設定値になったとき
最終トリガ信号を生成するトリガ条件判定部と、 該最終トリガ信号の生成に基づいて、上記回路構成変更
の決定を行う回路情報選択部と、 を有することを特徴とする請求項1記載のプログラマブ
ルデバイス。
2. The circuit configuration change determining section counts the number of basic triggers whose signal is a predetermined value in synchronization with a clock, and generates a final trigger signal when the counted number reaches a set value. The programmable device according to claim 1, further comprising: a trigger condition determination unit; and a circuit information selection unit that determines the change of the circuit configuration based on the generation of the final trigger signal.
【請求項3】 上記クロックは、上記プログラマブルロ
ジック部の動作クロック又はタイマクロックであること
を特徴とする請求項2記載のプログラマブルデバイス。
3. The programmable device according to claim 2, wherein the clock is an operation clock or a timer clock of the programmable logic unit.
【請求項4】 上記回路情報選択部は、現在の上記プロ
グラマブルロジック部の回路構成と上記最終トリガ信号
の生成とに基づいて、どの回路構成に変更すべきかを決
定することを特徴とする請求項2又は3記載のプログラ
マブルデバイス。
4. The circuit information selector according to claim 1, wherein a circuit configuration to be changed is determined based on a current circuit configuration of the programmable logic unit and generation of the final trigger signal. 4. The programmable device according to 2 or 3.
【請求項5】 上記回路情報選択部は、現在の上記プロ
グラマブルロジック部の回路構成と複数の上記最終トリ
ガ信号の生成順とに基づいて、どの回路構成に変更すべ
きかを決定することを特徴とする請求項2又は3記載の
プログラマブルデバイス。
5. The circuit information selecting section determines which circuit configuration should be changed based on the current circuit configuration of the programmable logic section and the generation order of the plurality of final trigger signals. The programmable device according to claim 2 or 3, wherein:
【請求項6】 上記プログラマブルロジック部の回路構
成変更前にこの回路の状態を記憶しておきその記憶値で
該プログラマブルロジック部の回路構成変更後の回路の
初期状態を設定するための変数格納部、 をさらに有することを特徴とする請求項1乃至5のいず
れか1つに記載のプログラマブルデバイス。
6. A variable storage unit for storing a state of the circuit before changing the circuit configuration of the programmable logic unit, and setting an initial state of the circuit after changing the circuit configuration of the programmable logic unit using the stored value. The programmable device according to any one of claims 1 to 5, further comprising:
【請求項7】 上記コンフィグレーション制御部は、外
部からの信号に応答して所定のコンフィグレーション情
報を読み込み上記プログラマブルロジック部の回路構成
を強制的に所定の回路構成にすることを特徴とする請求
項1乃至6のいずれか1つに記載のプログラマブルデバ
イス。
7. The configuration control section reads predetermined configuration information in response to an external signal and forcibly changes the circuit configuration of the programmable logic section to a predetermined circuit configuration. Item 7. The programmable device according to any one of Items 1 to 6.
【請求項8】 上記外部からの信号は、電源投入に応答
して生成されることを特徴とする請求項7記載のプログ
ラマブルデバイス。
8. The programmable device according to claim 7, wherein said external signal is generated in response to power-on.
【請求項9】 上記トリガ条件判定部は、 上記信号の値が設定値に一致しているかどうかを判定し
て一致信号を出力する比較器と、 該一致信号が一致を示している場合に上記クロックを計
数しその計数値が所定値になったとき上記最終トリガ信
号を出力するカウンタと、 を有することを特徴とする請求項3記載のプログラマブ
ルデバイス。
9. The trigger condition determination section determines whether or not the value of the signal matches a set value and outputs a match signal. If the match signal indicates a match, 4. The programmable device according to claim 3, further comprising: a counter that counts a clock and outputs the final trigger signal when the count value reaches a predetermined value.
【請求項10】 上記カウンタは、上記動作クロックを
計数するサイクルカウンタと、上記タイマクロックを計
数するタイマカウンタとを有し、 上記一致信号を該サイクルカウンタと該タイマカウンタ
との一方に選択的に供給させる第1切換スイッチと、 該第1切換スイッチと連動して該サイクルカウンタの出
力と該タイマカウンタの出力との一方を選択し上記最終
トリガ信号として出力する第2切換スイッチと、 を有することを特徴とする請求項9記載のプログラマブ
ルデバイス。
10. The counter has a cycle counter that counts the operation clock and a timer counter that counts the timer clock, and selectively outputs the coincidence signal to one of the cycle counter and the timer counter. A first changeover switch to be supplied, and a second changeover switch that selects one of the output of the cycle counter and the output of the timer counter in conjunction with the first changeover switch and outputs the selected output as the final trigger signal. The programmable device according to claim 9, wherein:
JP10268081A 1998-09-22 1998-09-22 Programmable device Withdrawn JP2000101421A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10268081A JP2000101421A (en) 1998-09-22 1998-09-22 Programmable device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10268081A JP2000101421A (en) 1998-09-22 1998-09-22 Programmable device

Publications (1)

Publication Number Publication Date
JP2000101421A true JP2000101421A (en) 2000-04-07

Family

ID=17453632

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10268081A Withdrawn JP2000101421A (en) 1998-09-22 1998-09-22 Programmable device

Country Status (1)

Country Link
JP (1) JP2000101421A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007179358A (en) * 2005-12-28 2007-07-12 Nec Corp Information processor and method of using reconfiguration device
JP2009187478A (en) * 2008-02-08 2009-08-20 Sanyo Electric Co Ltd Information processor, information processing method and processor
US8436644B2 (en) 2010-03-12 2013-05-07 Fujitsu Limited Configuration method and FPGA circuit re-executing configuration based on adjusted configuration data

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007179358A (en) * 2005-12-28 2007-07-12 Nec Corp Information processor and method of using reconfiguration device
JP2009187478A (en) * 2008-02-08 2009-08-20 Sanyo Electric Co Ltd Information processor, information processing method and processor
US8436644B2 (en) 2010-03-12 2013-05-07 Fujitsu Limited Configuration method and FPGA circuit re-executing configuration based on adjusted configuration data
EP2365632A3 (en) * 2010-03-12 2013-09-25 Fujitsu Limited Configuration method and FPGA circuit

Similar Documents

Publication Publication Date Title
US6434735B1 (en) Method for programming an FPGA and implementing an FPGA interconnect
EP0180196B1 (en) Programmable counter/timer device
JP3961028B2 (en) Data flow processor (DFP) automatic dynamic unloading method and modules with 2D or 3D programmable cell structure (FPGA, DPGA, etc.)
US6088795A (en) Process for automatic dynamic reloading of data flow processors (DFPs) and units with two or three-dimensional programmable cell architectures (FPGAs, DPGAs and the like)
USRE36482E (en) Data processor and data processing system and method for accessing a dynamic type memory using an address multiplexing system
JP2501874B2 (en) IC card
JPS63148346A (en) Information processor
US5652906A (en) Data driven processor with improved initialization functions because operation data shares address space with initialization data
JPH05108195A (en) Portable computer
US4942559A (en) Counter/timer circuit for a microcontroller
JP2000101421A (en) Programmable device
US5089955A (en) Programmable counter/timer device with programmable registers having programmable functions
JPS63155336A (en) Data processor
US5872961A (en) Microcomputer allowing external monitoring of internal resources
US20040221078A1 (en) Programmable state machine interface
CN100517260C (en) Marginless status determination circuit
CN112187233A (en) Reset device, method, clock system and electronic equipment
US20060015709A1 (en) Reconfigurable state machine architecture and related method of execution
EP0335502A2 (en) Microcontroller and associated method
KR0164128B1 (en) Multi-waiting state for low speed peripheral equipment
KR100192541B1 (en) Timer
JPS6312022A (en) Section control circuit for sorter
JP3789448B2 (en) Microcontroller with system resource prescaler
JPS63268032A (en) Loop control circuit
KR20010075331A (en) Program-controlled unit

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060110