JP4414297B2 - プログラマブルロジックデバイス、コンフィギュレーション装置、コンフィギュレーション方法 - Google Patents

プログラマブルロジックデバイス、コンフィギュレーション装置、コンフィギュレーション方法 Download PDF

Info

Publication number
JP4414297B2
JP4414297B2 JP2004203955A JP2004203955A JP4414297B2 JP 4414297 B2 JP4414297 B2 JP 4414297B2 JP 2004203955 A JP2004203955 A JP 2004203955A JP 2004203955 A JP2004203955 A JP 2004203955A JP 4414297 B2 JP4414297 B2 JP 4414297B2
Authority
JP
Japan
Prior art keywords
configuration
information
configuration information
rewrite
storage means
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 - Fee Related
Application number
JP2004203955A
Other languages
English (en)
Other versions
JP2006025379A (ja
Inventor
信一 丸井
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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co 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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2004203955A priority Critical patent/JP4414297B2/ja
Priority to US11/175,408 priority patent/US7348798B2/en
Priority to GB0514016A priority patent/GB2416059B/en
Priority to GB0711543A priority patent/GB2436481B/en
Priority to GB0711548A priority patent/GB2436482B/en
Publication of JP2006025379A publication Critical patent/JP2006025379A/ja
Application granted granted Critical
Publication of JP4414297B2 publication Critical patent/JP4414297B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic 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

Description

本発明は、プログラマブルロジックデバイス、及びそのコンフィギュレーション装置並びにコンフィギュレーション方法に関し、特に、プログラマブルロジックデバイスにおいて一部の論理エレメントが動作中であってもその動作を妨げることなく所望の論理エレメントのみの機能を変更する技術に関する。
近年、FPGA(Field Programmable Gate Array)に代表されるプログラマブルロジックデバイスが広く普及している。プログラマブルロジックデバイスは、複数の論理エレメントを内蔵しており、各論理エレメントの機能あるいは論理エレメント間の接続状態を変更することにより任意の機能を実現することができる集積回路である。以下に、従来のプログラマブルロジックデバイスを用いて、プログラマブルロジックデバイスの機能の変更について説明する。
図19は、従来のプログラマブルロジックデバイスの構成を示す図である。
この例では、プログラマブルロジックデバイス401は、16個の論理エレメントを備えている。各論理エレメントは、論理エレメントの機能を規定するコンフィギュレーション情報を記憶部41に記憶しており、当該コンフィギュレーション情報に応じた機能を実現する。したがって、コンフィギュレーション情報を書き換えることにより、各論理エレメントの機能を変更することができる。
各コンフィギュレーション情報は、コンフィギュレーション装置402からシリアルに入力され、シフトレジスタを構成する各記憶部41により、該当する論理エレメントまで転送される(例えば、特許文献1)。
米国特許5394031号
ところで、近年、プログラマブルロジックデバイスが組み込まれる機器本体がますます小型化される傾向にある。そこで、プログラマブルロジックデバイスを効率よく利用することで、機器本体の小型化に貢献させたいという要請がある。
プログラマブルロジックデバイスを最大限に利用するには、複数の論理エレメントにできるだけ多くの処理をマッピングし(空間的な効率の向上)、すべての時間でプログラマブルロジックデバイスのリソースである論理エレメントを使用すること(時間的な効率の向上)が必要である。例えば、一のプログラマブルロジックデバイスに、同時に複数の処理を実行させることで空間的な効率を向上することができ、そのうちの一の処理が終了したとき新たに別の処理を実行させることで時間的な効率を向上することができる。
そのため、一部の論理エレメントが動作中であってもその動作を妨げることなく所望の論理エレメントのみの機能を変更することができるプログラマブルロジックデバイスが要求される。
しかしながら、上述した従来のプログラマブルロジックデバイスは、全ての論理エレメントがコンフィギュレーション情報を書き換えつつ転送するため、所望の論理エレメントのみの機能を変更しようとしても、必然的に他の論理エレメントの機能も変更されることになる。したがって、上記要求を満たすことができない。
そこで、本発明は、一部の論理エレメントが動作中であってもその動作を妨げることなく所望の論理エレメントのみの機能を変更することができるプログラマブルロジックデバイス、及びそのコンフィギュレーション装置並びにコンフィギュレーション方法を提供することを目的とする。
本発明に係るプログラマブルロジックデバイスは、複数の論理エレメントを備えるプログラマブルロジックデバイスであって、各論理エレメントは、論理エレメントの機能を規定するコンフィギュレーション情報を記憶するコンフィギュレーション記憶手段と、前記コンフィギュレーション記憶手段に記憶されたコンフィギュレーション情報により自己の機能を規定する規定手段と、前記コンフィギュレーション記憶手段の記憶内容の書き換えを許可する許可指示を受けたときのみ、当該記憶内容を、入力されたコンフィギュレーション情報に書き換える書き換え手段と、前記許可指示を受けたとき、前記コンフィギュレーション記憶手段により記憶されているコンフィギュレーション情報を出力し、前記許可指示を受けていないとき、前記入力されたコンフィギュレーション情報を出力する出力手段とを備える。
上記構成によれば、論理エレメントは、コンフィギュレーション情報が入力されたとき、許可指示を受けたか否かによりその動作が異なる。許可指示を受けたときは、コンフィギュレーション記憶手段の記憶内容は書き換えられるが、許可指示を受けないときは、コンフィギュレーション記憶手段の記憶内容は書き換えられない。
ここで、機能が変更されるべき論理エレメントに許可指示が与えられ、動作中の論理エレメントには許可指示が与えられない運用を想定する。この場合、機能が変更されるべき論理エレメントは、コンフィギュレーション情報の書き換えによりその機能が変更される。一方、動作中の論理エレメントは、コンフィギュレーション情報が書き換わらないのでその機能が変更されない。
したがって、一部の論理エレメントが動作中であってもその動作を妨げることなく所望の論理エレメントのみの機能を変更することができる。
なお、論理エレメントは、許可指示を受けたときは入力されたコンフィギュレーション情報を書き換えてから出力し、さもなければそのまま出力する。いずれにしても、入力されたコンフィギュレーション情報が出力されることには変わりがない。したがって、コンフィギュレーション情報を論理エレメント間で転送させるプログラマブルロジックデバイスであれば、論理エレメントの接続形態(例えば、縦続接続、ツリー構造状の接続、ネットワーク状の接続)に関わらず、本発明が適用可能である。
また、前記出力手段は、前記コンフィギュレーション記憶手段から出力されるコンフィギュレーション情報が入力される第1入力端子と、前記コンフィギュレーション記憶手段に入力されるコンフィギュレーション情報と同じコンフィギュレーション情報が入力される第2入力端子とが備えられ、前記許可指示が受け付けられたとき前記第1入力端子に入力されたコンフィギュレーション情報が出力され、さもなければ前記第2入力端子に入力されたコンフィギュレーション情報が出力されるマルチプレクサであることとしてもよい。
上記構成によれば、各論理エレメントには、コンフィギュレーション記憶手段をバイパスするバイパス回路が形成される。マルチプレクサは、許可指示を受けていないときは、バイパス回路を経てコンフィギュレーション情報を出力させる。したがって、各論理エレメントは、入力されたコンフィギュレーション情報をそのまま出力することができる。
また、前記複数の論理エレメントのうちの全部又は一部は、コンフィギュレーション情報を受け渡すために縦続接続されていることとしてもよい。
上記構成によれば、各論理エレメントが個別に外部のコンフィギュレーション装置と接続される接続形態に比べて、プログラマブルロジックデバイスにおける配線コストを削減することができる。なお、その効果は、一部の論理エレメントが縦続接続されていれば得られ、全部の論理エレメントが縦続接続されているときには最大となる。
また、縦続接続されている論理エレメントのうちの最終段の論理エレメントにおける前記出力手段は、コンフィギュレーション情報をプログラマブルロジックデバイスの外部に出力することとしてもよい。
上記構成によれば、プログラマブルロジックデバイスは、コンフィギュレーションを実行する際に、以下のコンフィギュレーション装置を利用することができる。すなわち、コンフィギュレーション情報に先立って所定パターンをプログラマブルロジックデバイスに入力し、最終段の論理エレメントから所定パターンが出力されたことに基づいてコンフィギュレーション情報の入力を停止するコンフィギュレーション装置である。当該コンフィギュレーション装置は、後述するように、コンフィギュレーション毎に設定変更が必要なコンフィギュレーション装置に比べてその処理負担が小さい。
したがって、当該プログラマブルロジックデバイスを用いることにより、コンフィギュレーション装置を含めたシステム全体における処理負担を軽減することができる。
また、前記各論理エレメントは、さらに、前記コンフィギュレーション記憶手段の記憶内容の書き換えの可否を示す書き換え情報を記憶するとともに、当該書き換え情報が許可を示す場合に前記許可指示を前記書き換え手段及び前記出力手段に与え、当該書き換え情報が許可を示さない場合に前記許可指示を前記書き換え手段及び前記出力手段に与えない書き換え情報記憶手段を備えることとしてもよい。
上記構成によれば、書き換え情報は、コンフィギュレーション装置から一度与えられると変更されるまで記憶される。したがって、コンフィギュレーション装置は常時書き換え情報を与える必要がない。
また、前記複数の論理エレメントのうちの全部又は一部は、書き換え情報を受け渡すために縦続接続されていることとしてもよい。
上記構成によれば、各論理エレメントが個別に外部のコンフィギュレーション装置と接続される接続形態に比べて、プログラマブルロジックデバイスにおける配線コストを削減することができる。なお、その効果は、一部の論理エレメントが縦続接続されていれば得られ、全部の論理エレメントが縦続接続されているときには最大となる。
また、前記プログラマブルロジックデバイスは、さらに、前記各論理エレメントにおける書き換え情報の受け渡しが開始してから完了するまで前記書き換え手段の書き換えを禁止する禁止手段を備えることとしてもよい。
上記構成によれば、縦続接続された書き換え情報記憶手段において書き換え情報の受け渡しがされている間は、コンフィギュレーション記憶手段の記憶内容は書き換えられない。したがって、受け渡しのために書き換え情報記憶手段を単に通過するだけの書き換え情報に基づくコンフィギュレーション情報の書き換えを防止することができる。
本発明に係るプログラマブルロジックデバイスは、複数の論理エレメントを備えるプログラマブルロジックデバイスであって、各論理エレメントは、論理エレメントの機能を規定するコンフィギュレーション情報を記憶する第1記憶手段と、論理エレメントの機能を規定するコンフィギュレーション情報を記憶する第2記憶手段と、前記第1記憶手段及び前記第2記憶手段の一方に記憶されているコンフィギュレーション情報により自己の機能を規定する規定手段と、前記第1記憶手段及び前記第2記憶手段にそれぞれ記憶されているコンフィギュレーション情報のうち、前記規定手段により用いられていないコンフィギュレーション情報を書き換える書き換え手段とを備える。
上記構成によれば、各論理エレメントは、2つのコンフィギュレーション情報が与えられ、自己の機能を規定するコンフィギュレーション情報としてそのうちの一方を採用する。さらに、一方が採用されている間に、他方を書き換えることができる。
また、他方の書き換えが完了すれば、各論理エレメントは、自己の機能を規定するコンフィギュレーション情報として他方を採用することができる。このとき、他方が一方と同一のコンフィギュレーション情報であれば、他方を採用したとしても論理エレメントの機能は変更されない。また、他方が一方と異なるコンフィギュレーション情報であれば他方を採用したときに論理エレメントの機能が変更されることになる。
ここで、機能が変更されるべき論理エレメントでは他方を一方と異なるコンフィギュレーション情報とし、動作中の論理エレメントでは他方を一方と同一のコンフィギュレーション情報とする運用を想定する。この場合、機能が変更されるべき論理エレメントは他方を採用したときにその機能が変更される。一方、動作中の論理エレメントは他方を採用したときにその機能が変更されない。
したがって、一部の論理エレメントが動作中であってもその動作を妨げることなく所望の論理エレメントのみの機能を変更することができる。
また、各論理エレメントが備える前記第1記憶手段のうちの全部又は一部は、コンフィギュレーション情報の受け渡しのために縦続接続されており、各論理エレメントが備える前記第2記憶手段のうちの全部又は一部は、コンフィギュレーション情報の受け渡しのために縦続接続されており、前記書き換え手段は、前記第1記憶手段の記憶内容を前段の第1記憶手段から入力されたコンフィギュレーション情報に書き換え、又は前記第2記憶手段の記憶内容を前段の第2記憶手段から入力されたコンフィギュレーション情報に書き換えることとしてもよい。
上記構成によれば、各第1記憶手段及び各第2記憶手段が個別に外部のコンフィギュレーション装置と接続される接続形態に比べて、プログラマブルロジックデバイスにおける配線コストを削減することができる。なお、その効果は、一部の論理エレメントが縦続接続されていれば得られ、全部の論理エレメントが縦続接続されているときには最大となる。
本発明に係るプログラマブルロジックデバイスは、複数の論理エレメントを備えるプログラマブルロジックデバイスであって、各論理エレメントは、論理エレメントの機能を規定するコンフィギュレーション情報を記憶する本記憶手段と、前記本記憶手段により記憶されたコンフィギュレーション情報により自己の機能を規定する規定手段と、前記本記憶手段に記憶されるべきコンフィギュレーション情報を記憶する予備記憶手段と、前記予備記憶手段に記憶されているコンフィギュレーション情報を書き換える第1書き換え手段と、書き換えの指示を受けたとき、前記第1書き換え手段により書き換えられたコンフィギュレーション情報を前記本記憶手段に書き換える第2書き換え手段とを備える。
上記構成によれば、各論理エレメントは、書き換えの指示を受けたとき、本記憶手段の記憶内容が書き換えられることにより、その機能が更新される。このとき、予備記憶手段が本記憶手段と同一のコンフィギュレーション情報を記憶していれば、論理エレメントの機能は変更されず、予備記憶手段が本記憶手段と異なるコンフィギュレーション情報を記憶していれば論理エレメントの機能が変更される。
ここで、機能が変更されるべき論理エレメントには予備記憶手段が本記憶手段と異なるコンフィギュレーション情報が記憶され、動作中の論理エレメントには予備記憶手段が本記憶手段と同一のコンフィギュレーション情報が記憶される運用を想定する。この場合、機能が変更される論理エレメントは書き換え指示を受けたときにその機能が変更される。一方、動作中の論理エレメントは書き換え指示をうけたときにその機能が変更されない。
したがって、一部の論理エレメントが動作中であってもその動作を妨げることなく所望の論理エレメントのみの機能を変更することができる。
また、各論理エレメントが備える前記予備記憶手段のうち全部又は一部は、コンフィギュレーション情報の受け渡しのために縦続接続されており、前記第1書き換え手段は、前記予備記憶手段の記憶内容を前段の予備記憶手段から入力されたコンフィギュレーション情報に書き換えることとしてもよい。
上記構成によれば、各予備記憶手段が個別に外部のコンフィギュレーション装置と接続される接続形態に比べて、プログラマブルロジックデバイスにおける配線コストを削減することができる。なお、その効果は、一部の論理エレメントが縦続接続されていれば得られ、全部の論理エレメントが縦続接続されているときには最大となる。
本発明に係るコンフィギュレーション装置は、複数の論理エレメントを備え、各論理エレメントは、論理エレメントの機能を規定するコンフィギュレーション情報を記憶するコンフィギュレーション記憶手段と、当該コンフィギュレーション記憶手段の記憶内容の書き換えの可否を示す書き換え情報を記憶する書き換え情報記憶手段とを備えてなるプログラマブルロジックデバイスに対して、コンフィギュレーションを実行するコンフィギュレーション装置であって、各論理エレメントが備える書き換え情報記憶手段に、書き換え情報を記憶させる書き換え情報記憶制御手段と、前記書き換え情報制御手段により記憶された書き換え情報が記憶内容の書き換えを許可することを示すコンフィギュレーション記憶手段に、新たなコンフィギュレーション情報を記憶させるコンフィギュレーション記憶制御手段とを備える。
上記構成によれば、コンフィギュレーション装置は、プログラマブルロジックデバイスが備える複数の論理エレメントのうち、書き換えが許可された論理エレメントのみに新たなコンフィギュレーション情報を記憶させることができる。
したがって、プログラマブルロジックデバイスにおいて一部の論理エレメントが動作中であってもその動作を妨げることなく所望の論理エレメントのみの機能を変更させることができる。
また、前記複数の論理エレメントのうちの全部又は一部は、コンフィギュレーション情報を受け渡すために縦続接続されており、前記コンフィギュレーション記憶制御手段は、記憶内容の書き換えが許可されたコンフィギュレーション記憶手段に各々対応するコンフィギュレーション情報を、当該コンフィギュレーション記憶手段の配列に従って順次、縦続接続の初段の論理エレメントに入力することとしてもよい。
上記構成によれば、コンフィギュレーション装置が各論理エレメントに個別に接続される接続形態に比べて、コンフィギュレーション装置における配線コストを削減することができる。なお、その効果は、一部の論理エレメントが縦続接続されていれば得られ、全部の論理エレメントが縦続接続されているときには最大となる。
また、前記縦続接続の最終段の論理エレメントは、コンフィギュレーション情報をプログラマブルロジックデバイスの外部に出力し、前記コンフィギュレーション装置は、さらに、前記コンフィギュレーション記憶制御手段によるコンフィギュレーション情報のシリアル入力に先立って所定のパターンのコンフィギュレーション情報を入力する所定パターン入力手段と、前記所定パターン入力手段により入力されたコンフィギュレーション情報が前記最終段の論理エレメントから出力されたことに基づいて前記コンフィギュレーション記憶制御手段によるシリアル入力を停止させる停止手段とを備えることとしてもよい。
通常、入力されるべきコンフィギュレーション情報の数量は、コンフィギュレーション毎に異なる。例えば、1クロック毎に1のコンフィギュレーション情報を入力するコンフィギュレーション装置が、そのシリアル入力の停止をクロック数により管理する場合、クロックカウンタの設定をコンフィギュレーション毎に変更しなければならない。
しかしながら、上記構成によれば、入力されるべきコンフィギュレーション情報の数量がコンフィギュレーション毎に異なる場合でも、コンフィギュレーション装置は、コンフィギュレーション処理を画一的に実行することができる。ここで、画一的とは、コンフィギュレーション毎の設定変更が必要ないことを意味する。
したがって、当該コンフィギュレーション装置は、コンフィギュレーション毎に設定変更が必要なコンフィギュレーション装置に比べてその処理負担を軽減することができる。
本発明に係るコンフィギュレーション装置は、複数の論理エレメントを備え、各論理エレメントは、論理エレメントの機能を規定するコンフィギュレーション情報を記憶する第1記憶手段及び第2記憶手段を備えてなるプログラマブルロジックデバイスに対して、コンフィギュレーションを実行するコンフィギュレーション装置であって、各論理エレメントが備える第1記憶手段及び第2記憶手段のいずれかに、論理エレメントの機能を規定するコンフィギュレーション情報を記憶させる記憶制御手段と、前記コンフィギュレーション記憶制御手段により記憶させたコンフィギュレーション情報により各論理エレメントの機能を規定させる規定制御手段とを備える。
上記構成によれば、コンフィギュレーション装置は、第1記憶手段及び第2記憶手段の一方に記憶されたコンフィギュレーション情報により各論理エレメントの機能を規定させている間に、他方に新たなコンフィギュレーション情報を記憶させることができる。
したがって、プログラマブルロジックデバイスにおいて一部の論理エレメントが動作中であってもその動作を妨げることなく所望の論理エレメントのみの機能を変更させることができる。
また、各論理エレメントが備える前記第1記憶手段のうちの全部又は一部は、コンフィギュレーション情報の受け渡しのために縦続接続されるとともに、前記第2記憶手段のうちの全部又は一部は、コンフィギュレーション情報の受け渡しのために縦続接続されており、前記記憶制御手段は、第1記憶手段に記憶されるべきコンフィギュレーション情報を、第1記憶手段の配列に従って順次、縦続接続の初段の第1記憶手段に入力し、又は第2記憶手段に記憶されるべきコンフィギュレーション情報を、第2記憶手段の配列に従って順次、縦続接続の初段の第2記憶手段に入力することとしてもよい。
上記構成によれば、コンフィギュレーション装置が各第1記憶手段及び各第2記憶手段に個別に接続される接続形態に比べて、コンフィギュレーション装置における配線コストを削減することができる。
本発明に係るコンフィギュレーション装置は、複数の論理エレメントを備え、各論理エレメントは、論理エレメントの機能を規定するコンフィギュレーション情報を記憶する本記憶手段と、本記憶手段に記憶されるべきコンフィギュレーション情報を記憶する予備記憶手段とを備えてなるプログラマブルロジックデバイスに対して、コンフィギュレーションを実行するコンフィギュレーション装置であって、各論理エレメントが備える予備記憶手段に、コンフィギュレーション情報を記憶させる予備記憶制御手段と、前記予備記憶制御手段により記憶させたコンフィギュレーション情報を、本記憶手段に記憶させる本記憶制御手段とを備える。
上記構成によれば、コンフィギュレーション装置は、本記憶手段に記憶されたコンフィギュレーション情報により各論理エレメントの機能を規定させている間に、予備記憶手段に新たなコンフィギュレーション情報を記憶させることができる。
したがって、プログラマブルロジックデバイスにおいて一部の論理エレメントが動作中であってもその動作を妨げることなく所望の論理エレメントのみの機能を変更させることができる。
また、各論理エレメントが備える前記予備記憶手段のうちの全部又は一部は、コンフィギュレーション情報の受け渡しのために縦続接続されており、前記予備記憶制御手段は、予備記憶手段に記憶されるべきコンフィギュレーション情報を、予備記憶手段の配列に従って順次、縦続接続の初段の予備記憶手段に入力することとしてもよい。
上記構成によれば、コンフィギュレーション装置が各予備記憶手段に個別に接続される接続形態に比べて、コンフィギュレーション装置における配線コストを削減することができる。
本発明に係るコンフィギュレーション方法は、複数の論理エレメントを備え、各論理エレメントは、論理エレメントの機能を規定するコンフィギュレーション情報を記憶するコンフィギュレーション記憶手段と、当該コンフィギュレーション記憶手段の記憶内容の書き換えの要否を示す書き換え情報を記憶する書き換え情報記憶手段とを備えてなるプログラマブルロジックデバイスに対して、コンフィギュレーションを実行するコンフィギュレーション方法であって、各論理エレメントが備える書き換え情報記憶手段に、書き換え情報を記憶させる書き換え情報記憶制御ステップと、前記書き換え情報制御ステップにより記憶された書き換え情報が記憶内容の書き換えを許可することを示すコンフィギュレーション記憶手段に、コンフィギュレーション情報を記憶させるコンフィギュレーション記憶制御ステップとを含む。
上記構成によれば、上述したコンフィギュレーション装置と同様の効果を奏することができる。
本発明に係るコンフィギュレーション方法は、複数の論理エレメントを備え、各論理エレメントは、論理エレメントの機能を規定するコンフィギュレーション情報を記憶する第1記憶手段及び第2記憶手段を備えてなるプログラマブルロジックデバイスに対して、コンフィギュレーションを実行するコンフィギュレーション方法であって、各論理エレメントが備える第1記憶手段及び第2記憶手段のいずれかに、論理エレメントの機能を規定するコンフィギュレーション情報を記憶させる記憶制御ステップと、前記コンフィギュレーション記憶制御ステップにより記憶させたコンフィギュレーション情報により各論理エレメントの機能を規定させる規定制御ステップとを含む。
上記構成によれば、上述したコンフィギュレーション装置と同様の効果を奏することができる。
本発明に係るコンフィギュレーション方法は、複数の論理エレメントを備え、各論理エレメントは、論理エレメントの機能を規定するコンフィギュレーション情報を記憶する本記憶手段と、本記憶手段に記憶されるべきコンフィギュレーション情報を記憶する予備記憶手段とを備えてなるプログラマブルロジックデバイスに対して、コンフィギュレーションを実行するコンフィギュレーション方法であって、各論理エレメントが備える予備記憶手段に、コンフィギュレーション情報を記憶させる予備記憶制御ステップと、前記予備記憶制御ステップにより記憶させたコンフィギュレーション情報を、本記憶手段に記憶させる本記憶制御ステップとを含む。
上記構成によれば、上述したコンフィギュレーション装置と同様の効果を奏することができる。
(実施の形態1)
<構成>
図1は、実施の形態1に係るプログラマブルロジックデバイスの構成を示す図である。
プログラマブルロジックデバイス101は、16個の論理エレメント(LE0−LE15)を備えている。各論理エレメントは、コンフィギュレーション記憶部11を含む単位セル17と書き換え情報記憶部14を含む単位セル18を備える。コンフィギュレーション記憶部11は、論理エレメントの機能を規定するコンフィギュレーション情報を記憶する。書き換え情報記憶部14は、コンフィギュレーション記憶部11の記憶内容の書き換えの可否を示す書き換え情報を記憶する。
なお、各コンフィギュレーション記憶部11は、縦続接続されてシフトレジスタを構成している。また、各書き換え情報記憶部14も、縦続接続されてシフトレジスタを構成している。
実施の形態1の特徴は、各論理エレメントが、許可指示を受けたときは、コンフィギュレーション記憶部11の記憶内容を書き換え、許可指示を受けないときは、コンフィギュレーション記憶部11の記憶内容を書き換えないことである。
ここでは、機能が変更されるべき論理エレメントに許可指示が与えられ、動作中の論理エレメントには許可指示が与えられないように運用する。この場合、機能が変更されるべき論理エレメントは、コンフィギュレーション情報の書き換えによりその機能が変更される。一方、動作中の論理エレメントは、コンフィギュレーション情報が書き換わらないのでその機能が変更されない。
したがって、一部の論理エレメントが動作中であってもその動作を妨げることなく所望の論理エレメントのみの機能を変更することができる。
ここで、各論理エレメントが記憶内容を書き換えるか否かは、各書き換え情報記憶部14に記憶された書き換え情報により定められる。各書き換え情報は、端子t23からシリアル入力され、予め各書き換え情報記憶部14に行き渡っている。
なお、プログラマブルロジックデバイス101は、その他、制御信号S2及びS3、クロック信号CLKが入力される。また、最終段の論理エレメント(LE15)は、コンフィギュレーション情報を外部に出力する。
図2は、実施の形態1に係る論理エレメントの構成を示す図である。
図2には、16個の論理エレメントのうちの3個の論理エレメント(LE1、LE2、LE3)が記載されている。各論理エレメントは同一構成なので、論理エレメント(LE2)についてのみ説明する。
論理エレメント(LE2)は、コンフィギュレーション記憶部11b、マルチプレクサ12b、AND素子13b、書き換え情報記憶部14b、AND素子15b、バイパス回路16bを備える。
コンフィギュレーション記憶部11b及び書き換え情報記憶部14bは、それぞれDフリップフロップにより構成される。ここで、コンフィギュレーション情報は2ビットの情報であり、書き換え情報は1ビットの情報とする。
コンフィギュレーション記憶部11bの出力端子Qは、内部回路とマルチプレクサ12bに接続されている。ここで、内部回路とは、コンフィギュレーション情報に応じて異なる機能を実現する回路である。例えば、コンフィギュレーション情報が加算器を示す場合には加算器として働き、乗算器を示す場合に乗算器として働くALUである。出力端子Qが内部回路に接続されていることにより、コンフィギュレーション記憶部11bは、コンフィギュレーション情報を記憶するのみならず、当該コンフィギュレーション情報に従って内部回路の機能を規定することができる。
マルチプレクサ12bは、第1の入力端子にコンフィギュレーション記憶部11bの出力端子Qが接続され、第2の入力端子にバイパス回路16bが接続されている。また、マルチプレクサ12bは、その出力端子が後段の論理エレメント(LE3)のコンフィギュレーション記憶部11cの入力端子Dに接続されている。マルチプレクサ12bがいずれの入力端子を選択するかは、書き換え情報S4bにより定められる。
AND素子13bは、制御信号S2、クロック信号CLK、及び書き換え情報S4bの論理積を、コンフィギュレーション記憶部11bのクロック端子に出力する。
書き換え情報記憶部14bの出力端子Qは、マルチプレクサ12b及びAND素子13bに接続されているとともに、後段の論理エレメント(LE3)の書き換え情報記憶部14cの入力端子Dに接続されている。
AND素子15bは、制御信号S3及びクロック信号CLKの論理積を、書き換え情報記憶部14bのクロック端子に出力する。
図3は、論理エレメントの動作例を示す図である。
書き換え情報記憶部14a、14b、14cは、それぞれ書き換え情報「0」、「0」、「1」を予め記憶しているものとする。また、制御信号S2は「1」に設定されている。
まず、論理エレメント(LE1)に着目する。AND素子13aは、書き換え情報S4aが「0」なので、たとえ制御信号S2が「1」であってもクロック信号CLKを出力することはなく、常に「0」を出力する。即ち、AND素子13aは、コンフィギュレーション記憶部11aに記憶内容の書き換えを禁止する。したがって、コンフィギュレーション記憶部11aの記憶内容が書き換えられることはない。
また、マルチプレクサ12aは、書き換え情報S4aが「0」なので、第2の入力端子を選択する。したがって、論理エレメント(LE1)に入力されたコンフィギュレーション情報は、バイパス回路16aを通過して、後段の論理エレメント(LE2)に出力される。
論理エレメント(LE2)に着目すると、ここでも書き換え情報S4bが「0」なので、論理エレメント(LE1)と同様に動作する。
最後に、論理エレメント(LE3)に着目する。AND素子13cは、書き換え情報S4cが「1」なので、制御信号S2が「1」であればクロック信号CLKを出力する。即ち、AND素子13cは、コンフィギュレーション記憶部11cに記憶内容を書き換えさせる。
また、マルチプレクサ12cは、書き換え情報S4cが「1」なので、第1の入力端子を選択する。したがって、論理エレメント(LE3)に入力されたコンフィギュレーション情報は、コンフィギュレーション記憶部11cに記憶された後、後段の論理エレメント(LE4)に出力される。
次に、書き換え情報記憶部14a、14b、14cは、それぞれ書き換え情報「0」、「0」、「1」を予め記憶しているが、これらの設定方法について説明する。
書き換え情報の設定の際には、制御信号S3は「1」に設定され、制御信号S2は「0」に設定される。
AND素子15a、15b、15cは、制御信号S3が「1」であれば、それぞれクロック信号CLKを出力する。したがって、書き換え情報記憶部14a、14b、14cは、シフトレジスタとして動作する。各論理エレメントに記憶されるべき書き換え情報は、論理エレメントLE15からLE0までの配列に従って順次入力される。その結果、各書き換え情報は、1クロック毎に順次転送されて16クロックで全ての論理エレメントに行き渡る。その時点で、制御信号S3が「0」に設定され、シフト動作が停止する。このようにして、書き換え情報が設定される。
図4は、実施の形態1に係るコンフィギュレーション装置の構成を示す図である。
コンフィギュレーション装置102は、プログラマブルロジックデバイス101のコンフィギュレーションを実行する装置である。コンフィギュレーション装置102は、書き換え情報記憶制御部111、コンフィギュレーション記憶制御部112、所定パターン入力部113、停止部114、クロック部117を備える。
書き換え情報記憶制御部111は、プログラマブルロジックデバイス101内の各論理エレメントが備える書き換え情報記憶部14に、それぞれに対応する書き換え情報を記憶させる。具体的には、制御信号S3を「0」から「1」に設定するとともに、論理エレメントLE15からLE0までに各々対応する書き換え情報を、1クロック毎にプログラマブルロジックデバイス101に順次入力する。そして、16クロック後に制御信号S3を「1」から「0」に設定する。
コンフィギュレーション記憶制御部112は、書き換え情報「1」が記憶された論理エレメントに、コンフィギュレーション情報を記憶させる。具体的には、書き換え情報記憶制御部111による書き換え情報の入力が完了した後、制御信号S2を「0」から「1」に設定するとともに、1クロック毎に書き換え情報「1」が記憶された論理エレメントに各々対応するコンフィギュレーション情報をプログラマブルロジックデバイス101に順次入力する。その後、停止部114から出力された停止信号に基づいてコンフィグレーション情報の入力を停止する。
所定パターン入力部113は、コンフィギュレーション記憶制御部112がコンフィギュレーション情報を入力するのに先立って、2ビットの所定パターンを入力する。
停止部114は、論理エレメント(LE15)が出力するコンフィギュレーション情報を監視しており、所定パターンが出力されたときコンフィギュレーション記憶制御部112に停止信号を出力する。停止部114は、この機能を実現するために、所定パターンを保持している所定パターン保持部115と、論理エレメント(LE15)の出力と所定パターンとを比較して一致すれば停止信号を出力する比較部116を備える。
クロック部117は、プログラマブルロジックデバイス101にクロック信号CLKを供給するとともに、コンフィギュレーション装置102の各機能部にもクロック信号CLKを供給する。
<動作例>
以下に、実施の形態1に係るプログラマブルロジックデバイス101が、一部の論理エレメントを動作させつつ所望の論理エレメントの機能を変更する場合の動作例を示す。
図5は、全ての論理エレメントが書き換え情報を記憶した場面を示す図である。
ここでは、動作中の一部の論理エレメントを、LE14、LE13、LE12、LE11、LE10とする。また、機能の変更が所望される論理エレメントを、LE9、LE8、LE6、LE5、LE4、LE3、LE2とする。
なお、以下では、コンフィギュレーション情報を「A」、「B」、「N」で示し、「A」は機能1、「B」は機能2、「N」はNOP(ノーオペレーション)を意味するものとする。また、所定パターンを「X」で示す。
まず、コンフィギュレーション装置102は、LE15からLE0までの論理エレメントにそれぞれ記憶される書き換え情報を、論理エレメントの配列に従って順次出力する。ここで、書き換え情報は、機能の変更が所望される論理エレメントについては「1」、それ以外の論理エレメントについては「0」が設定される。プログラマブルロジックデバイス101は、それらの書き換え情報を順次転送して各論理エレメントに行き渡らせる。
これにより、図5に示すように、機能の変更が所望される論理エレメントには書き換え情報「1」が記憶され、それ以外の論理エレメントには書き換え情報「0」が記憶される。
図6は、コンフィギュレーション情報に先立って所定パターンが入力される場面を示す図である。
このとき、所定パターン「X」は、論理エレメントLE0、LE1を通過して、LE2が備えるコンフィギュレーション記憶部11の入力端子Dまで達している。
図7は、1クロック後の状態を示す図である。
1クロック目で、論理エレメントLE2が備えるコンフィギュレーション記憶部11は、その記憶内容を、入力端子Dに入力されている所定パターン「X」に書き換える。それとともに、論理エレメントLE9に記憶させるべきコンフィギュレーション情報「A」がプログラマブルロジックデバイス101に入力される。このとき、コンフィギュレーション情報「A」は、論理エレメントLE0、LE1を通過して、LE2が備えるコンフィギュレーション記憶部11の入力端子Dまで達している。
図8は、2クロック後の状態を示す図である。
2クロック目で、論理エレメントLE3が所定パターン「X」を記憶するとともに、論理エレメントLE2がコンフィギュレーション情報「A」を記憶する。
図9は、3クロック後の状態を示す図である。
3クロック目で、論理エレメントLE4が所定パターン「X」を記憶し、論理エレメントLE3がコンフィギュレーション情報「A」を記憶し、さらに、論理エレメントLE2がコンフィギュレーション情報「A」を記憶する。
その後、順次コンフィギュレーション情報が入力される。
図10は、6クロック後の状態を示す図である。
6クロック目で、所定パターン「X」は、論理エレメントLE8に記憶される。
図11は、7クロック後の状態を示す図である。
7クロック目で、所定パターン「X」は、論理エレメントLE9に記憶される。論理エレメントLE9以降の論理エレメントは、コンフィギュレーション情報をバイパスする。したがって、このとき、論理エレメントLE15から所定パターン「X」が出力される。
比較部116は、所定パターン「X」が出力されたことにより、停止信号を出力する。
図12は、8クロック後の状態を示す図である。
8クロック目で、機能の変更が所望される論理エレメントの全てにコンフィギュレーション情報が行き渡る。コンフィギュレーション記憶制御部112は、比較部116が出力した停止信号に基づいて、8クロック後にコンフィギュレーション情報の入力を停止する。
この後、コンフィギュレーション装置は、全ての論理エレメントに書き換え情報「0」を記憶させる。
(実施の形態2)
<構成>
図13は、実施の形態2に係るプログラマブルロジックデバイスの構成を示す図である。
プログラマブルロジックデバイス201は、16個の論理エレメント(LE)を備えている。各論理エレメントは、第1記憶部21を含む単位セル26と第2記憶部23を含む単位セル27とを備える。第1記憶部21及び第2記憶部23は、いずれも、論理エレメントの機能を規定するコンフィギュレーション情報を記憶する。
各第1記憶部21は、縦続接続されてシフトレジスタを構成しており、それと独立して、各第2記憶部23も、縦続接続されてシフトレジスタを構成している。
実施の形態2の特徴は、第1記憶部21及び第2記憶部23の一方に記憶されているコンフィギュレーション情報により各論理エレメントの機能を規定しておき、その間に他方のコンフィギュレーション情報を更新することである。
ここでは、機能が変更されるべき論理エレメントでは第2記憶部23と第1記憶部とが異なるコンフィギュレーション情報を記憶し、動作中の論理エレメントでは第2記憶部23と第1記憶部21とが同一のコンフィギュレーション情報を記憶するように運用する。この場合、機能が変更されるべき論理エレメントはコンフィギュレーション情報の入手先を切り替えたときにその機能が変更される。一方、動作中の論理エレメントはコンフィギュレーション情報の入手先を切り替えたときにその機能が変更されない。
したがって、一部の論理エレメントが動作中であってもその動作を妨げることなく所望の論理エレメントのみの機能を変更することができる。
なお、プログラマブルロジックデバイス201は、その他、制御信号S4、S5及びS6、クロック信号CLKが入力される。
図14は、実施の形態2に係る論理エレメントの構成を示す図である。
図14には、16個の論理エレメントのうちの3個の論理エレメント(LE1、LE2、LE3)が記載されている。各論理エレメントは同一構成なので、論理エレメント(LE2)についてのみ説明する。
論理エレメント(LE2)は、第1記憶部21b、AND素子22b、第2記憶部23b、AND素子24b、マルチプレクサ25bを備える。
第1記憶部21b及び第2記憶部23bは、それぞれDフリップフロップにより構成される。ここで、コンフィギュレーション情報は2ビットの情報とする。
第1記憶部21bの出力端子Qは、後段の第1記憶部21cの入力端子Dに接続されるとともに、マルチプレクサ25bに接続されている。
AND素子22bは、制御信号S4及びクロック信号CLKの論理積を、第1記憶部21bのクロック端子に出力する。
第2記憶部23bの出力端子Qは、後段の第2記憶部23cの入力端子Dに接続されるとともに、マルチプレクサ25bに接続されている。
AND素子24bは、制御信号S5及びクロック信号CLKの論理積を、第2記憶部23bのクロック端子に出力する。
マルチプレクサ25bは、第1の入力端子に第1記憶部21bの出力端子Qを接続し、第2の入力端子に第2記憶部23bの出力端子Qを接続している。また、マルチプレクサ25bは、その出力端子を内部回路に接続している。マルチプレクサ25bがいずれの入力端子を選択するかは、制御信号S6により定められる。
以下に、論理エレメントの動作例を示す。
当初、制御信号S6は「0」に設定されているものとする。したがって、各論理エレメントLE1、LE2、LE3は、それぞれ第1記憶部21a、21b、21cに記憶されているコンフィギュレーション情報により機能が規定される。
この間に、第2記憶部23a、23b、23cは、その記憶内容が書き換えられる。
AND素子24a、24b、24cは、制御信号S5が「1」であれば、それぞれクロック信号CLKを出力する。したがって、第2記憶部23a、23b、23cは、シフトレジスタとして動作する。
各第2記憶部に記憶されるべきコンフィギュレーション情報は、論理エレメントLE15からLE0までの配列に従って順次入力される。その結果、各コンフィギュレーション情報は、1クロック毎に順次転送されて16クロックで全ての第2記憶部に行き渡る。その時点で、制御信号S5が「0」に設定され、シフト動作が停止する。このようにして、コンフィギュレーション情報が書き換えられる。
第2記憶部23a、23b、23cの記憶内容の書き換えが完了した後、制御信号S6が「1」に設定される。その結果、各論理エレメントLE1、LE2、LE3は、それぞれ第2記憶部23a、23b、23cに記憶されているコンフィギュレーション情報により機能が規定されることとなる。
このとき、第2記憶部23及び第1記憶部21のコンフィギュレーション情報が同一であれば、第2記憶部23により規定されたとしても論理エレメントの機能は変更されない。また、第2記憶部23及び第1記憶部21のコンフィギュレーション情報が異なれば第2記憶部23により規定されたときに論理エレメントの機能が変更されることになる。
図15は、実施の形態2に係るコンフィギュレーション装置の構造を示す図である。
コンフィギュレーション装置202は、コンフィギュレーション記憶制御部211、規定制御部212、クロック部213を備える。
コンフィギュレーション記憶制御部211は、プログラマブルロジックデバイス201の各論理エレメントが備える第1記憶部21及び第2記憶部23に、それぞれに対応するコンフィギュレーション情報を記憶させる。
具体的には、第1記憶部21の記憶内容を書き換える場合、制御信号S4を「0」から「1」に設定するとともに、論理エレメントLE15からLE0までに各々対応するコンフィギュレーション情報を、1クロック毎にプログラマブルロジックデバイス201に順次入力する。そして、16クロック後に制御信号S4を「1」から「0」に設定する。
また、第2記憶部23の記憶内容を書き換える場合、制御信号S5を「0」から「1」に設定するとともに、論理エレメントLE15からLE0までに各々対応するコンフィギュレーション情報を、1クロック毎にプログラマブルロジックデバイス201に順次入力する。そして、16クロック後に制御信号S5を「1」から「0」に設定する。
規定制御部212は、各論理エレメントが第1記憶部21の記憶内容により規定されるべきときは制御信号S6を「0」に設定し、第2記憶部23の記憶内容により規定されるべきときは制御信号S6を「1」に設定する。
クロック部213は、プログラマブルロジックデバイス201にクロック信号CLKを供給するとともに、コンフィギュレーション装置202の各機能部にもクロック信号CLKを供給する。
(実施の形態3)
<構成>
図16は、実施の形態3に係るプログラマブルロジックデバイスの構成を示す図である。
プログラマブルロジックデバイス301は、16個の論理エレメント(LE)を備えている。各論理エレメントは、予備記憶部31を含む単位セル35と本記憶部33を含む単位セル36とを備える。予備記憶部31及び本記憶部33は、いずれも、論理エレメントの機能を規定するコンフィギュレーション情報を記憶する。
予備記憶部31は、縦続接続されてシフトレジスタを構成している。
本記憶部33は、書き換え指示を受けたとき、予備記憶部31に記憶されたコンフィギュレーション情報を記憶する。
実施の形態3の特徴は、コンフィギュレーション情報を転送する予備記憶部31と、各論理エレメントの内部回路との間に本記憶部33を介在させたことである。したがって、予備記憶部31が書き換えられても書き換え指示が与えられるまでは論理エレメントの機能が変更されない。
ここで、機能が変更されるべき論理エレメントには予備記憶部31が本記憶部33と異なるコンフィギュレーション情報が記憶され、動作中の論理エレメントには予備記憶部31が本記憶部33と同一のコンフィギュレーション情報が記憶されるように運用する。この場合、機能が変更される論理エレメントは書き換え指示を受けたときにその機能が変更される。一方、動作中の論理エレメントは書き換え指示をうけたときにその機能が変更されない。
したがって、一部の論理エレメントが動作中であってもその動作を妨げることなく所望の論理エレメントのみの機能を変更することができる。
なお、プログラマブルロジックデバイス301は、その他、制御信号S7及びS8、クロック信号CLKが入力される。
図17は、実施の形態3に係る論理エレメントの構成を示す図である。
図17には、16個の論理エレメントのうちの3個の論理エレメント(LE1、LE2、LE3)が記載されている。各論理エレメントは同一構成なので、論理エレメント(LE2)についてのみ説明する。
論理エレメント(LE2)は、予備記憶部31b、AND素子32b、本記憶部33b、AND素子34bを備える。
予備記憶部31b及び本記憶部33bは、それぞれDフリップフロップにより構成される。ここで、コンフィギュレーション情報は2ビットの情報とする。
予備記憶部31bの出力端子Qは、後段の予備記憶部31cの入力端子Dに接続されるとともに、本記憶部33bの入力端子Dに接続されている。
AND素子32bは、制御信号S7及びクロック信号CLKの論理積を、予備記憶部31bのクロック端子に出力する。
本記憶部33bの出力端子Qは、内部回路に接続されている。出力端子Qが内部回路に接続されていることにより、本記憶部33bは、コンフィギュレーション情報を記憶するのみならず、当該コンフィギュレーション情報に従って内部回路の機能を規定することができる。
AND素子34bは、制御信号S8及びクロック信号CLKの論理積を、本記憶部33bのクロック端子に出力する。
以下に、論理エレメントの動作例を示す。
各論理エレメントLE1、LE2、LE3は、それぞれ本記憶部33a、33b、33cに記憶されているコンフィギュレーション情報により機能が規定される。コンフィギュレーション情報の書き換えをしないときは、制御信号S8は「0」に設定される。
この間に、予備記憶部31a、31b、31cは、その記憶内容が書き換えられる。
AND素子32a、32b、32cは、制御信号S7が「1」であれば、それぞれクロック信号CLKを出力する。したがって、予備記憶部31a、31b、31cは、シフトレジスタとして動作する。
各予備記憶部に記憶されるべきコンフィギュレーション情報は、論理エレメントLE15からLE0までの配列に従って順次入力される。その結果、各コンフィギュレーション情報は、1クロック毎に順次転送されて16クロックで全ての予備記憶部に行き渡る。その時点で、制御信号S7が「0」に設定され、シフト動作が停止する。このようにして、コンフィギュレーション情報が書き換えられる。
予備記憶部31a、31b、31cの記憶内容の書き換えが完了した後、制御信号S8が「1」に設定される。これにより、本記憶部33a、33b、33cの記憶内容は、それぞれ予備記憶部31a、31b、31cに記憶されているコンフィギュレーション情報に書き換えられる。その結果、各論理エレメントLE1、LE2、LE3は、それぞれ機能が変更されることとなる。制御信号S8は、その後「0」に設定される。
このとき、本記憶部33及び予備記憶部31のコンフィギュレーション情報が同一であれば、本記憶部33が予備記憶部31のコンフィギュレーション情報を記憶したとしても論理エレメントの機能は変更されない。また、本記憶部33及び予備記憶部31のコンフィギュレーション情報が異なれば、本記憶部33が予備記憶部31のコンフィギュレーション情報を記憶したときに論理エレメントの機能が変更されることになる。
図18は、実施の形態3に係るコンフィギュレーション装置の構造を示す図である。
コンフィギュレーション装置302は、予備記憶制御部311、本記憶制御部312、クロック部313を備える。
予備記憶制御部311は、プログラマブルロジックデバイス301の各論理エレメントが備える予備記憶部31に、それぞれに対応するコンフィギュレーション情報を記憶させる。
具体的には、制御信号S7を「0」から「1」に設定するとともに、論理エレメントLE15からLE0までに各々対応するコンフィギュレーション情報を、1クロック毎にプログラマブルロジックデバイス301に順次入力する。そして、16クロック後に制御信号S7を「1」から「0」に設定する。
本記憶制御部312は、本記憶部33の記憶内容を、予備記憶部31の記憶内容に書き換えるとき、制御信号S8を「1」とし、それ以外のとき制御信号S8を「0」とする。
クロック部313は、プログラマブルロジックデバイス301にクロック信号CLKを供給するとともに、コンフィギュレーション装置302の各機能部にもクロック信号CLKを供給する。
以上、本発明に係るプログラマブルロジックデバイス及びそのコンフィギュレーション装置並びにコンフィギュレーション方法について、実施の形態に基づいて説明したが、本発明はこれらの実施の形態に限定されない。例えば、以下のような変形例が考えられる。
(1)各実施の形態では、16個の論理エレメントを備えたプログラマブルロジックデバイスで説明したが、論理エレメントの数量は16個に限らない。
(2)各実施の形態では、コンフィギュレーション情報を2ビットの情報としているが、これに限らず、論理エレメントが実現する各機能をそれぞれ指定することができるビット数であればよい。
(3)実施の形態1では、書き換え情報の変更が完了してからコンフィギュレーション情報が入力されるが、コンフィギュレーション情報を書き換えるコンフィギュレーション記憶部に先頭のコンフィギュレーション情報(実施の形態では、「X」)が到達する前に、対応する書き換え情報が変更されていればよい。
(4)実施の形態1では、コンフィギュレーションの後に使用しない論理エレメントには、コンフィギュレーション情報の書き換えを不可としているが、これに限らず、使用しない論理エレメントにもコンフィギュレーション情報の書き換えをさせてもよい。さらに、その際に、NOPを割り当ててもよい。
(5)実施の形態1では、書き換え情報記憶部は、コンフィギュレーション情報記憶部と1対1で対応しているが、これに限らない。例えば、一の書き換え情報記憶部が複数のコンフィギュレーション情報記憶部に書き換え情報を与えることとしてもよい。
(6)実施の形態1では、停止部は、コンフィギュレーション装置に設けられているが、これに限らず、プログラマブルロジックデバイスに設けてもよい。
(7)実施の形態1では、コンフィギュレーション情報の受け渡しに関して、論理エレメントは縦続接続されているが、これに限らない。例えば、ツリー構造状の接続、ネットワーク状の接続であっても構わない。
本発明は、FPGAに代表されるプログラマブルロジックデバイス及びそのコンフィギュレーション装置に適用できる。
実施の形態1に係るプログラマブルロジックデバイスの構成を示す図である。 実施の形態1に係る論理エレメントの構成を示す図である。 論理エレメントの動作例を示す図である。 実施の形態1に係るコンフィギュレーション装置の構成を示す図である。 全ての論理エレメントが書き換え情報を記憶した場面を示す図である。 コンフィギュレーション情報に先立って所定パターンが入力される場面を示す図である。 1クロック後の状態を示す図である。 2クロック後の状態を示す図である。 3クロック後の状態を示す図である。 6クロック後の状態を示す図である。 7クロック後の状態を示す図である。 8クロック後の状態を示す図である。 実施の形態2に係るプログラマブルロジックデバイスの構成を示す図である。 実施の形態2に係る論理エレメントの構成を示す図である。 実施の形態2に係るコンフィギュレーション装置の構造を示す図である。 実施の形態3に係るプログラマブルロジックデバイスの構成を示す図である。 実施の形態3に係る論理エレメントの構成を示す図である。 は、実施の形態3に係るコンフィギュレーション装置の構造を示す図である。 従来のプログラマブルロジックデバイスの構成を示す図である。
符号の説明
11 コンフィギュレーション記憶部
12 マルチプレクサ
13 AND素子
14 書き換え情報記憶部
15 AND素子
16 バイパス回路
21 第1記憶部
22 AND素子
23 第2記憶部
24 AND素子
25 マルチプレクサ
31 予備記憶部
32 AND素子
33 本記憶部
34 AND素子
101、201、301 プログラマブルロジックデバイス
102、202、302 コンフィギュレーション装置
111 書き換え情報記憶制御部
112、211 コンフィギュレーション記憶制御部
113 所定パターン入力部
114 停止部
115 所定パターン保持部
116 比較部
117、213、313 クロック部
212 規定制御部
311 予備記憶制御部
312 本記憶制御部

Claims (14)

  1. 複数の論理エレメントを備え、論理エレメントの機能を規定するコンフィギュレーション情報を、論理エレメント間の受け渡しにより目的の論理エレメントまで転送させるプログラマブルロジックデバイスであって、
    各論理エレメントは、
    ンフィギュレーション情報を記憶するコンフィギュレーション記憶手段と、
    前記コンフィギュレーション記憶手段に記憶されたコンフィギュレーション情報により自己の機能を規定する規定手段と、
    前記コンフィギュレーション記憶手段の記憶内容の書き換えを許可する許可指示を受けたときのみ、当該記憶内容を、入力されたコンフィギュレーション情報に書き換える書き換え手段と、
    前記許可指示を受けたとき、前記コンフィギュレーション記憶手段により記憶されているコンフィギュレーション情報を出力し、前記許可指示を受けていないとき、前記入力されたコンフィギュレーション情報を出力する出力手段と
    を備えることを特徴とするプログラマブルロジックデバイス。
  2. 前記出力手段は、
    前記コンフィギュレーション記憶手段から出力されるコンフィギュレーション情報が入力される第1入力端子と、前記コンフィギュレーション記憶手段に入力されるコンフィギュレーション情報と同じコンフィギュレーション情報が入力される第2入力端子とが備えられ、前記許可指示が受け付けられたとき前記第1入力端子に入力されたコンフィギュレーション情報が出力され、さもなければ前記第2入力端子に入力されたコンフィギュレーション情報が出力されるマルチプレクサであること
    を特徴とする請求項1に記載のプログラマブルロジックデバイス。
  3. 前記複数の論理エレメントのうちの全部又は一部は、コンフィギュレーション情報を受け渡すために縦続接続されていること
    を特徴とする請求項1に記載のプログラマブルロジックデバイス。
  4. 縦続接続されている論理エレメントのうちの最終段の論理エレメントにおける前記出力手段は、
    コンフィギュレーション情報をプログラマブルロジックデバイスの外部に出力すること
    を特徴とする請求項3に記載のプログラマブルロジックデバイス。
  5. 前記各論理エレメントは、さらに、
    前記コンフィギュレーション記憶手段の記憶内容の書き換えの可否を示す書き換え情報を記憶するとともに、当該書き換え情報が許可を示す場合に前記許可指示を前記書き換え手段及び前記出力手段に与え、当該書き換え情報が許可を示さない場合に前記許可指示を前記書き換え手段及び前記出力手段に与えない書き換え情報記憶手段を備えること
    を特徴とする請求項1に記載のプログラマブルロジックデバイス。
  6. 前記複数の論理エレメントのうちの全部又は一部は、書き換え情報を受け渡すために縦続接続されていること
    を特徴とする請求項5に記載のプログラマブルロジックデバイス。
  7. 前記プログラマブルロジックデバイスは、さらに、
    前記各論理エレメントにおける書き換え情報の受け渡しが開始してから完了するまで前記書き換え手段の書き換えを禁止する禁止手段を備えること
    を特徴とする請求項6に記載のプログラマブルロジックデバイス。
  8. 複数の論理エレメントを備え、各論理エレメントは、論理エレメントの機能を規定するコンフィギュレーション情報を記憶するコンフィギュレーション記憶手段と、前記コンフィギュレーション記憶手段に記憶されたコンフィギュレーション情報により自己の機能を規定する規定手段と、前記コンフィギュレーション記憶手段の記憶内容の書き換えを許可する許可指示を受けたときのみ、当該記憶内容を、入力されたコンフィギュレーション情報に書き換える書き換え手段と、前記許可指示を受けたとき、前記コンフィギュレーション記憶手段により記憶されているコンフィギュレーション情報を出力し、前記許可指示を受けていないとき、前記入力されたコンフィギュレーション情報を出力する出力手段と、前記コンフィギュレーション記憶手段の記憶内容の書き換えの可否を示す書き換え情報を記憶するとともに、当該書き換え情報が許可を示す場合に前記許可指示を前記書き換え手段及び前記出力手段に与え、当該書き換え情報が許可を示さない場合に前記許可指示を前記書き換え手段及び前記出力手段に与えない書き換え情報記憶手段を備え、コンフィギュレーション情報を、論理エレメント間の受け渡しにより目的の論理エレメントまで転送させるプログラマブルロジックデバイスに対して、コンフィギュレーションを実行するコンフィギュレーション装置であって、
    各論理エレメント備えられた書き換え情報記憶手段に、機能を変更する論理エレメントについては書き換えの許可を示す書き換え情報を記憶させ、機能を変更しない論理エレメントについては書き換えの許可を示さない書き換え情報を記憶させる書き換え情報記憶制御手段と、
    前記書き換え情報制御手段により書き換え情報が記憶された後に、論理エレメント間のコンフィギュレーション情報の受け渡しにより、前記機能を変更する論理エレメントのコンフィギュレーション記憶手段に、新たなコンフィギュレーション情報を記憶させるコンフィギュレーション記憶制御手段と
    を備えることを特徴とするコンフィギュレーション装置。
  9. 前記複数の論理エレメントのうちの全部又は一部は、コンフィギュレーション情報を受け渡すために縦続接続されており、
    前記コンフィギュレーション記憶制御手段は、
    記憶内容の書き換えが許可されたコンフィギュレーション記憶手段に各々対応するコンフィギュレーション情報を、当該コンフィギュレーション記憶手段の配列に従って順次、縦続接続の初段の論理エレメントに入力すること
    を特徴とする請求項8に記載のコンフィギュレーション装置。
  10. 前記縦続接続の最終段の論理エレメントは、コンフィギュレーション情報をプログラマブルロジックデバイスの外部に出力し、
    前記コンフィギュレーション装置は、さらに、
    前記コンフィギュレーション記憶制御手段によるコンフィギュレーション情報のシリアル入力に先立って所定のパターンのコンフィギュレーション情報を入力する所定パターン入力手段と、
    前記所定パターン入力手段により入力されたコンフィギュレーション情報が前記最終段の論理エレメントから出力されたことに基づいて前記コンフィギュレーション記憶制御手段によるシリアル入力を停止させる停止手段と
    を備えることを特徴とする請求項9に記載のコンフィギュレーション装置。
  11. 複数の論理エレメントを備え、各論理エレメントは、論理エレメントの機能を規定するコンフィギュレーション情報を記憶するコンフィギュレーション記憶手段と、前記コンフィギュレーション記憶手段に記憶されたコンフィギュレーション情報により自己の機能を規定する規定手段と、前記コンフィギュレーション記憶手段の記憶内容の書き換えを許可する許可指示を受けたときのみ、当該記憶内容を、入力されたコンフィギュレーション情報に書き換える書き換え手段と、前記許可指示を受けたとき、前記コンフィギュレーション記憶手段により記憶されているコンフィギュレーション情報を出力し、前記許可指示を受けていないとき、前記入力されたコンフィギュレーション情報を出力する出力手段と、前記コンフィギュレーション記憶手段の記憶内容の書き換えの可否を示す書き換え情報を記憶するとともに、当該書き換え情報が許可を示す場合に前記許可指示を前記書き換え手段及び前記出力手段に与え、当該書き換え情報が許可を示さない場合に前記許可指示を前記書き換え手段及び前記出力手段に与えない書き換え情報記憶手段を備え、コンフィギュレーション情報を、論理エレメント間の受け渡しにより目的の論理エレメントまで転送させるプログラマブルロジックデバイスに対して、コンフィギュレーションを実行するコンフィギュレーション方法であって、
    各論理エレメント備えられた書き換え情報記憶手段に、機能を変更する論理エレメントについては書き換えの許可を示す書き換え情報を記憶させ、機能を変更しない論理エレメントについては書き換えの許可を示さない書き換え情報を記憶させる書き換え情報記憶制御ステップと、
    前記書き換え情報制御ステップにより書き換え情報が記憶された後に、論理エレメント間のコンフィギュレーション情報の受け渡しにより、前記機能を変更する論理エレメントのコンフィギュレーション記憶手段に、新たなコンフィギュレーション情報を記憶させるコンフィギュレーション記憶制御ステップと
    を含むことを特徴とするコンフィギュレーション方法。
  12. 複数の論理エレメントを備え、論理エレメントの機能を規定するコンフィギュレーション情報を、論理エレメント間の受け渡しにより目的の論理エレメントまで転送させるプログラマブルロジックデバイスであって、
    各論理エレメントは、
    コンフィギュレーション情報を記憶するコンフィギュレーション情報記憶手段を介する第1転送経路と、
    前記コンフィギュレーション情報記憶手段を介さない第2転送経路と、
    前記コンフィギュレーション情報記憶手段に記憶されたコンフィギュレーション情報に応じた機能を実現する内部回路と、
    前記コンフィギュレーション情報の記憶内容の書き換えを許可するか否かを示す書き換え情報を記憶する書き換え情報記憶手段と、
    前記書き換え情報記憶手段に記憶された書き換え情報が書き換え許可を示していれば、前記第1転送経路をコンフィギュレーション情報の転送経路として選択し、書き換え許可を示していなければ、前記第2転送経路をコンフィギュレーション情報の転送経路として選択する選択手段と
    を備えることを特徴とするプログラマブルロジックデバイス。
  13. 各論理エレメントに含まれるコンフィギュレーション情報記憶手段が縦続接続されていること
    を特徴とする請求項12に記載のプログラマブルロジックデバイス。
  14. 各論理エレメントに含まれる書き換え情報記憶手段が縦続接続されていること
    を特徴とする請求項13に記載のプログラマブルロジックデバイス。
JP2004203955A 2004-07-09 2004-07-09 プログラマブルロジックデバイス、コンフィギュレーション装置、コンフィギュレーション方法 Expired - Fee Related JP4414297B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2004203955A JP4414297B2 (ja) 2004-07-09 2004-07-09 プログラマブルロジックデバイス、コンフィギュレーション装置、コンフィギュレーション方法
US11/175,408 US7348798B2 (en) 2004-07-09 2005-07-07 Programmable logic device, configuration apparatus, and configuration method
GB0514016A GB2416059B (en) 2004-07-09 2005-07-08 Programable logic device, configuration apparatus, and configuration method
GB0711543A GB2436481B (en) 2004-07-09 2005-07-08 Programmable logic device configuration apparatus, and configuration method
GB0711548A GB2436482B (en) 2004-07-09 2005-07-08 Programable logic device, configuration apparatus,and configuration method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004203955A JP4414297B2 (ja) 2004-07-09 2004-07-09 プログラマブルロジックデバイス、コンフィギュレーション装置、コンフィギュレーション方法

Publications (2)

Publication Number Publication Date
JP2006025379A JP2006025379A (ja) 2006-01-26
JP4414297B2 true JP4414297B2 (ja) 2010-02-10

Family

ID=34909573

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004203955A Expired - Fee Related JP4414297B2 (ja) 2004-07-09 2004-07-09 プログラマブルロジックデバイス、コンフィギュレーション装置、コンフィギュレーション方法

Country Status (3)

Country Link
US (1) US7348798B2 (ja)
JP (1) JP4414297B2 (ja)
GB (1) GB2416059B (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1933463A1 (en) * 2005-10-05 2008-06-18 Matsushita Electric Industrial Co., Ltd. Reconfigurable semiconductor integrated circuit and its processing allocation method
JP4861030B2 (ja) * 2006-03-24 2012-01-25 株式会社東芝 半導体装置
JP4444305B2 (ja) * 2007-03-28 2010-03-31 株式会社東芝 半導体装置
ES2382836T3 (es) * 2008-09-19 2012-06-13 Bombardier Transportation Gmbh Dispositivo verificable de monitorización de vibraciones y método
JP5336205B2 (ja) * 2009-01-14 2013-11-06 ローム株式会社 プログラマブルロジックデバイスを用いた信号処理回路
CA2782142A1 (en) * 2009-12-01 2011-06-09 Queen's University At Kingston Method and system for a run-time reconfigurable computer architecture
JP5704240B2 (ja) * 2011-08-12 2015-04-22 株式会社デンソー 集積回路
US8704548B1 (en) * 2012-10-19 2014-04-22 Altera Corporation Methods and apparatus for building bus interconnection networks using programmable interconnection resources
US9048827B2 (en) * 2013-09-27 2015-06-02 Scaleo Chip Flexible logic unit
US9077339B2 (en) * 2013-09-27 2015-07-07 Scaleo Chip Robust flexible logic unit
US9252778B2 (en) 2013-09-27 2016-02-02 Scaleo Chip Robust flexible logic unit
US10116311B2 (en) 2016-08-03 2018-10-30 Silicon Mobility Embedded FPGA with multiple configurable flexible logic blocks instantiated and interconnected by abutment
US10454480B2 (en) 2016-08-03 2019-10-22 Silicon Mobility Embedded FPGA with multiple configurable flexible logic blocks instantiated and interconnected by abutment
JP7325210B2 (ja) 2019-04-08 2023-08-14 キヤノン株式会社 情報処理装置及びその制御方法
JP7433931B2 (ja) 2020-01-27 2024-02-20 キヤノン株式会社 情報処理装置及びその制御方法及びプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5394031A (en) 1993-12-08 1995-02-28 At&T Corp. Apparatus and method to improve programming speed of field programmable gate arrays
GB9508932D0 (en) 1995-05-02 1995-06-21 Xilinx Inc FPGA with parallel and serial user interfaces
US5640106A (en) * 1995-05-26 1997-06-17 Xilinx, Inc. Method and structure for loading data into several IC devices
US6137307A (en) * 1998-08-04 2000-10-24 Xilinx, Inc. Structure and method for loading wide frames of data from a narrow input bus
US6411124B2 (en) 2000-04-28 2002-06-25 Altera Corporation Programmable logic device logic modules with shift register capabilities
GB0122477D0 (en) * 2001-09-18 2001-11-07 Anadigm Ltd Methods and apparatus for reconfiguring programmable devices

Also Published As

Publication number Publication date
JP2006025379A (ja) 2006-01-26
US20060006904A1 (en) 2006-01-12
GB2416059B (en) 2007-08-22
GB0514016D0 (en) 2005-08-17
GB2416059A (en) 2006-01-11
US7348798B2 (en) 2008-03-25

Similar Documents

Publication Publication Date Title
JP4414297B2 (ja) プログラマブルロジックデバイス、コンフィギュレーション装置、コンフィギュレーション方法
US20020143505A1 (en) Implementing a finite state machine using concurrent finite state machines with delayed communications and no shared control signals
US4472788A (en) Shift circuit having a plurality of cascade-connected data selectors
EP0668659A2 (en) Reconfigurable ASIC
US20070113054A1 (en) Component with a dynamically reconfigurable architecture
US5649069A (en) Neural net having a neural processor with distributed synaptic cells
US4521874A (en) Random access memory device
US20140244981A1 (en) Processor and control method for processor
JP2006018453A (ja) 半導体装置
US20060265571A1 (en) Processor with different types of control units for jointly used resources
US6912646B1 (en) Storing and selecting multiple data streams in distributed memory devices
US7301369B2 (en) Programmable gate array apparatus and method for switching circuits
US20080195839A1 (en) Reconfigurable, Modular and Hierarchical Parallel Processor System
US8761188B1 (en) Multi-threaded software-programmable framework for high-performance scalable and modular datapath designs
US10938620B2 (en) Configuration of a programmable device
US20040054818A1 (en) Flexible results pipeline for processing element
CN105009106B (zh) 可重配置指令单元阵列的并行配置
US20070260805A1 (en) Computer with a Reconfigurable Architecture for Integrating a Global Cellular Automaton
CN106293958A (zh) 用于内核间通信的信道大小调整
US6642743B2 (en) System for rapid configuration of a programmable logic device
US20090031119A1 (en) Method for the operation of a multiprocessor system in conjunction with a medical imaging system
US8060729B1 (en) Software based data flows addressing hardware block based processing requirements
US7512873B2 (en) Parallel processing apparatus dynamically switching over circuit configuration
GB2436482A (en) A programable logic device and associated configuration apparatus
GB2436481A (en) A programable logic device and associated configuration device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070509

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090714

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090804

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091005

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: 20091027

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091119

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121127

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4414297

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: 20121127

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131127

Year of fee payment: 4

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees