説明

デバイス搭載基板及びコンフィグレーションデバイス決定方法

【課題】 搭載するプログラマブル論理デバイスを異なる論理格納容量のプログラマブル論理デバイスに交換したり、コンフィグレーションデバイスを異なる論理データ記憶容量のコンフィグレーションデバイスに交換した場合でも、基板を改修することなく対応することができるデバイス搭載基板を提供すること目的とする。
【解決手段】 デバイス搭載基板1は、プログラマブル論理デバイス2に格納する論理回路のデータを記憶し、プログラマブル論理デバイス2の論理回路を格納する論理格納容量に応じて選択的に用いられる2以上の個数のコンフィグレーションデバイスを備えることとした。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、格納した論理回路を動作させるプログラマブル論理デバイスとプログラマブル論理デバイスに格納する論理回路のデータを記憶するコンフィグレーションデバイスを搭載するデバイス搭載基板と、デバイス搭載基板で実行するコンフィグレーションデバイスの決定方法に関する。
【背景技術】
【0002】
従来、外部からコンフィグレーションにより論理回路を格納して、所望の論理回路を動作させるプログラマブル論理デバイスを搭載するデバイス搭載基板がある。このデバイス搭載基板の開発に際しては、設計段階で使用するプログラマブル論理デバイスを選定し、その論理格納容量に応じて必要となるコンフィグレーションデバイスの論理データ記憶容量を算出する。そして、算出した論理格納容量以上の論理データ記憶容量を備えるコンフィグレーションデバイスを利用するか、もしくは算出した論理データ記憶容量を満たさない複数のコンフィグレーションデバイスをカスケード接続して利用するかを選定する。算出した論理データ記憶容量を満たさない複数のコンフィグレーションデバイスをカスケード接続して利用することを選定した場合、複数のコンフィグレーションデバイスの論理データ記憶容量の合計が、プログラマブル論理デバイスの論理格納容量以上になるように、コンフィグレーションデバイスの個数と論理データ記憶容量を選定する。
【0003】
このように選定したプログラマブル論理デバイスとコンフィグレーションデバイスを搭載した基板では、異なる論理格納容量のプログラマブル論理デバイスに交換することが困難な場合が多い。なぜならば、プログラマブル論理デバイスの論理格納容量に応じた個数のコンフィグレーションデバイスが搭載され、プログラマブル論理デバイスとコンフィグレーションデバイスとの間が配線により接続されている基板では、プログラマブル論理デバイスの論理格納容量の変更に応じて、使用するコンフィグレーションデバイスの個数や論理データ記憶容量も変える必要が生じる。このため、プログラマブル論理デバイスと各コンフィグレーションデバイスの実装やプログラマブル論理デバイスとコンフィグレーションデバイスとの間の配線をやり直さなければならない。しかし、通常、基板はこのような再実装や再配線が非常に困難であり、このような場合は、基板自体の再製作や基板接続の改修を行う必要がある。
【0004】
また、小規模なプログラマブル論理デバイスで大規模な論理回路を動作させる方法が提案されている(特許文献1を参照)。特許文献1では、用途の異なる論理回路を記憶したコンフィグレーションデバイスをそれぞれ用意して、必要な用途に応じてプログラマブル論理デバイスに論理回路をコンフィグレーションするコンフィグレーションデバイスを選択し、切換える方法を採用している。
【特許文献1】特開2003−198361号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
従来のデバイス搭載基板は、基板の設計段階で決定した論理格納容量以外の論理格納容量を備えるプログラマブル論理デバイスを搭載しようとしたとき、コンフィグレーションデバイスの個数も変更し、また、配線を改めなければならず、基板そのものの改修が必要となる。通常、基板そのものの改修は非常に困難なため、1枚の基板で異なる容量のプログラマブル論理デバイスに対応できない。
【0006】
また、小規模なプログラマブル論理デバイスで大規模な論理回路を動作させるために、複数のコンフィグレーションデバイスを切り換えて利用する方法はあるが、この方法を用いても上記の課題は解決されていない。
【0007】
そこで、搭載するプログラマブル論理デバイスを異なる論理格納容量のプログラマブル論理デバイスに交換したり、コンフィグレーションデバイスを異なる論理データ記憶容量のコンフィグレーションデバイスに交換した場合でも、基板を改修することなく対応することができるデバイス搭載基板を提供すること目的とする。
【課題を解決するための手段】
【0008】
デバイス搭載基板は、プログラマブル論理デバイスに格納する論理回路のデータを記憶し、プログラマブル論理デバイスの論理回路を格納する論理格納容量に応じて選択的に用いられる2以上の個数のコンフィグレーションデバイスを備えることとした。
【発明の効果】
【0009】
本発明のよればデバイス搭載基板は、プログラマブル論理デバイスに格納する論理回路のデータを記憶し、プログラマブル論理デバイスの論理回路を格納する論理格納容量に応じて選択的に用いられる2以上の個数のコンフィグレーションデバイスを備えることができる。
【発明を実施するための最良の形態】
【0010】
実施の形態1.
実施の形態1では、プログラマブル論理デバイスの論理格納容量とコンフィグレーションデバイスの論理データ記憶容量を比較することにより、使用するコンフィグレーションデバイスを選択し、選択したコンフィグレーションデバイスへの配線をスイッチにより切り換える実施の形態について説明する。
【0011】
ここで、「論理格納容量」とは、プログラマブル論理デバイスの論理回路を格納することができる容量である。また、「論理データ記憶容量」とは、コンフィグレーションデバイスの論理回路のデータを記憶することができる容量である。論理格納容量の単位は、例えば、ゲート(Gate:G)であり、また、論理データ記憶容量の単位は、例えば、バイト(Byte:B)である。
【0012】
なお、プログラマブル論理デバイスとコンフィグレーションデバイスとの種類によっては、プログラマブル論理デバイスの論理格納容量とコンフィグレーションデバイスの論理データ記憶容量とをそのまま比較することができない場合がある。その場合には、論理格納容量を論理データ記憶容量に、または、論理データ記憶容量を論理格納容量に換算した上でそれらを比較する。これは実施の形態2から実施の形態4までにおいても同様である。
【0013】
図1は、実施の形態1におけるデバイス搭載基板1の構成を示す図である。
デバイス搭載基板1は、プログラマブル論理デバイス2に格納する論理回路のデータを記憶し、プログラマブル論理デバイス2の論理回路を格納する論理格納容量に応じて選択的に用いられる2以上の個数のコンフィグレーションデバイス、すなわち、コンフィグレーションデバイス3とコンフィグレーションデバイス4とを備える。
【0014】
デバイス搭載基板1は、さらに、格納した論理回路を動作させるプログラマブル論理デバイス2と、コンフィグレーションデバイス3とコンフィグレーションデバイス4とを選択するスイッチ6とを備える。
【0015】
また、デバイス搭載基板1は、外部からコンフィグレーションデバイスへ論理回路を入力するためのケーブルを接続するコネクタ5を備えている。
【0016】
デバイス搭載基板1は、格納した論理回路を動作させるプログラマブル論理デバイス2を搭載するソケットなどの搭載部7を備える。なお、この搭載部7がなくてもデバイス搭載基板1を実現することはできる。
【0017】
図1に示すデバイス搭載基板1は、カスケード接続されたコンフィグレーションデバイス3と、必要に応じてコンフィグレーションデバイス4とに、デバイス搭載基板1の外部から論理回路のデータがダウンロードされ、ダウンロードされた論理回路のデータが、マスターシリアルモードにより、コンフィグレーションデバイスからプログラマブル論理デバイスに入力されるように構成されている。
【0018】
プログラマブル論理デバイス2は、コンフィグレーションデバイス3から、必要に応じてコンフィグレーションデバイス4から論理回路のデータを入力し、入力した論理回路を動作させる。コンフィグレーションデバイス3とコンフィグレーションデバイス4は、デバイス搭載基板1の外部からダウンロードされた論理回路のデータを記憶している。コネクタ5は、外部からコンフィグレーションデバイス3と、必要に応じてコンフィグレーションデバイス4とに論理回路のデータをダウンロードするためのケーブルを接続する。スイッチ6は、3つのピン6aとピン6bとピン6cとを備えており、ピン6aとピン6bとを短絡、もしくはピン6bとピン6cとを短絡することにより、コンフィグレーションデバイス3に加えて、コンフィグレーションデバイス4を使用するか否かを選択することができる。
【0019】
プログラマブル論理デバイス2は、例えば、FPGA(Field Programable Gate Array)である。コンフィグレーションデバイス3とコンフィグレーションデバイス4とは、例えば、EPROM(Erasable Programable Read Only Memory)である。コネクタ5は、例えば、JTAG(Join Test Action Group)コネクタである。スイッチ6は、例えば、ジャンパポストによる切り替えスイッチである。
【0020】
次に、実施の形態1におけるデバイス搭載基板1でのコンフィグレーションデバイスの選択の動作を説明する。
【0021】
デバイス搭載基板1は、プログラマブル論理デバイス2の論理回路を格納する論理格納容量に応じた個数のコンフィグレーションデバイスを選択的に用いる。
【0022】
また、デバイス搭載基板1は、コンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量の合計が、プログラマブル論理デバイス2の論理回路を格納する論理格納容量以上となるような個数のコンフィグレーションデバイスを選択する。
【0023】
図2に示すフローチャートを用いてさらに詳しく説明する。
一般的に、プログラマブル論理デバイス2への論理回路のデータの入力は、次のような方法により行われることが多い。専用ケーブルをデバイス搭載基板1のコネクタ5に接続し、デバイス搭載基板1の外部のPC(Personal Computer)などからコンフィグレーションデバイス3とコンフィグレーションデバイス4に論理回路のデータをダウンロードする。次に、デバイス搭載基板1が備える図示しない電源スイッチを用いてデバイス搭載基板1に電源を投入することによって、コンフィグレーションデバイス3とコンフィグレーションデバイス4に記憶された論理回路のデータが、プログラマブル論理デバイス2に格納される。
【0024】
コンフィグレーションデバイス3とコンフィグレーションデバイス4への論理回路のデータのダウンロードに先立って、デバイス搭載基板1の利用者は、プログラマブル論理デバイス2の論理格納容量と、コンフィグレーションデバイス3の論理データ記憶容量を比較し、プログラマブル論理デバイス2の論理格納容量がコンフィグレーションデバイス3の論理データ記憶容量以下であるか否かを判断する(ステップS100)。その結果、プログラマブル論理デバイス2の論理格納容量がコンフィグレーションデバイス3の論理データ記憶容量以下であった場合(ステップS100でYesの場合)、コンフィグレーションデバイス3が、プログラマブル論理デバイス2へ格納する全ての論理回路のデータを記憶することができるため、コンフィグレーションデバイス4は不必要となる。この場合、利用者はスイッチ6のピン6aと6bを短絡させ、論理回路のデータがコンフィグレーションデバイス3のTDOからコンフィグレーションデバイス4のTDIへ入力されないようにすることにより、コネクタ5を介してコンフィグレーションデバイス3のみに論理回路のデータがダウンロードされるように配線を切り換える(ステップS101)。
【0025】
一方、プログラマブル論理デバイス2の論理格納容量がコンフィグレーションデバイス3の論理データ記憶容量以下でない場合、つまり、プログラマブル論理デバイス2の論理格納容量がコンフィグレーションデバイス3の論理データ記憶容量より大きい場合(ステップS100でNoの場合)、コンフィグレーションデバイス3だけでは、プログラマブル論理デバイス2へ入力する全ての論理回路のデータを記憶することができないため、コンフィグレーションデバイス3に加えてコンフィグレーションデバイス4を使用する必要がある。この場合、利用者はスイッチ6はピン6bと6cを短絡させ、論理回路のデータがコンフィグレーションデバイス3のTDOからコンフィグレーションデバイス4のTDIへ入力されるようにすることにより、コネクタ5を介してコンフィグレーションデバイス3とコンフィグレーションデバイス4の両方に論理回路のデータがダウンロードされるように配線を切り換える(ステップS102)。
【0026】
この実施の形態によればデバイス搭載基板1は、プログラマブル論理デバイス2に格納する論理回路のデータを記憶し、プログラマブル論理デバイス2の論理回路を格納する論理格納容量に応じて選択的に用いられる2以上の個数のコンフィグレーションデバイスを備えるので、一つのコンフィグレーションデバイスでは、プログラマブル論理デバイス2に格納する全ての論理回路のデータを記憶できない場合であっても、さらにもう一つのコンフィグレーションデバイスを選択して用いることにより、プログラマブル論理デバイス2に格納する全ての論理回路のデータを記憶することができる。
【0027】
この実施の形態によればデバイス搭載基板1は、さらに、格納した論理回路を動作させるプログラマブル論理デバイス2を備えるので、コンフィグレーションデバイスが記憶している論理回路のデータをプログラマブル論理デバイス2に格納し、格納した論理回路を動作させることができる。
【0028】
この実施の形態によればデバイス搭載基板1は、さらに、格納した論理回路を動作させるプログラマブル論理デバイス2を搭載する搭載部7を備えるので、プログラマブル論理デバイス2を容易に交換することができる。
【0029】
この実施の形態によればデバイス搭載基板1は、さらに、コンフィグレーションデバイスを選択するスイッチ6を備えるので、コンフィグレーションデバイス3のみを使用するか、コンフィグレーションデバイス3に加えてコンフィグレーションデバイス4をも使用するかを選択することができる。
【0030】
この実施の形態によればデバイス搭載基板1は、プログラマブル論理デバイス2の論理回路を格納する論理格納容量に応じた個数のコンフィグレーションデバイスを選択して用いるので、さらに、コンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量の合計が、プログラマブル論理デバイス2の論理回路を格納する論理格納容量以上となるような個数のコンフィグレーションデバイスを選択するので、プログラマブル論理デバイス2に格納する全ての論理回路のデータをコンフィグレーションデバイスに記憶させることができる。
【0031】
この実施の形態によれば、デバイス搭載基板1が搭載するプログラマブル論理デバイス2を論理格納容量の異なるプログラマブル論理デバイスに交換したり、搭載するコンフィグレーションデバイス3とコンフィグレーションデバイス4とを論理データ記憶容量の異なるコンフィグレーションデバイスに交換した場合であっても、スイッチ6を用いて配線を切り換えることにより、使用するコンフィグレーションデバイスを変更することができる。その結果、デバイス搭載基板1を改修することなく、1枚のデバイス搭載基板1で規模の異なる複数の論理回路の動作の実行に対応することができる。
【0032】
実施の形態2.
実施の形態2では、搭載するコンフィグレーションデバイスを交換した場合でも、交換した各コンフィグレーションデバイスから、それらのデバイス情報であるIDCODE情報を読み取ることにより、各コンフィグレーションデバイスの論理データ記憶容量を取得し、それから実装されているプログラマブル論理デバイスに必要となるコンフィグレーションデバイスの個数を求め、その結果から使用するコンフィグレーションデバイスを選択する実施の形態について説明する。なお、実施の形態2においては、プログラマブル論理デバイスは、予め定められたものを用いている。
【0033】
図3は、実施の形態2におけるデバイス搭載基板1の構成を示す図である。
実施の形態2におけるデバイス搭載基板1は、実施の形態1におけるデバイス搭載基板1の構成に加えて、さらに、2以上の個数のコンフィグレーションデバイスのデバイス情報を取得するバウンダリスキャン制御回路20と、バウンダリスキャン制御回路20が取得した2以上の個数のコンフィグレーションデバイスのデバイス情報であるIDCODE情報を用いて、2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量を取得し、2以上の個数のコンフィグレーションデバイスの中から取得した論理データ記憶容量にもとづいて使用するコンフィグレーションデバイスを決定するコンフィグレーションデバイス決定回路21とを備える。
【0034】
また、実施の形態2においては、実施の形態1のスイッチ6に代えてセレクタ16を用いる。セレクタ16は、入力されるイネーブル(enable)信号とディスエーブル(disable)信号にしたがって、コンフィグレーションデバイス3に加えてコンフィグレーションデバイス4を使用するか否かを切り換える。
【0035】
バウンダリスキャン制御回路20は、バウンダリスキャンを行いコンフィグレーションデバイス3とコンフィグレーションデバイス4のIDCODE情報を読み取る。コンフィグレーションデバイス決定回路21は、バウンダリスキャン制御回路20が読み取ったコンフィグレーションデバイス3とコンフィグレーションデバイス4のIDCODE情報から使用するコンフィグレーションデバイスを決定する。なお、プログラマブル論理デバイス2とコンフィグレーションデバイス3とコンフィグレーションデバイス4とコネクタ5は、実施の形態1と同様であるので説明を省略する。
【0036】
バウンダリスキャン制御回路20は、JTAG(Join Test Action Group)コントローラ回路22、コンフィグレーションデバイスIDCODE保持回路23とを備える。
【0037】
JTAGコントローラ回路22は、テストアクセスポート(Test Access Port:TAP)と呼ばれるバウンダリスキャンに用いる入出力信号(TDI、TMS、TCK、TDO)を制御することにより、各コンフィグレーションデバイスからIDCODE情報を読み取る回路である。コンフィグレーションデバイスIDCODE保持回路23は、JTAGコントローラ回路22が読み込んだ各コンフィグレーションデバイスのIDCODE情報を保持する回路である。表1に各コンフィグレーションデバイスのIDCODE情報の例を示す。コンフィグレーションデバイスIDCODE保持回路23は、例えば、表1に記載されたIDCODE情報のいずれかを保持している。
【0038】
【表1】

【0039】
コンフィグレーションデバイス決定回路21は、デバイスデータ情報記憶メモリ24とコンフィグレーションデバイスメモリ演算回路25とから構成される。
【0040】
コンフィグレーションデバイス決定回路21は、取得した論理データ記憶容量の合計が、プログラマブル論理デバイス2の論理回路を格納する論理格納容量以上となるようにコンフィグレーションデバイスを決定する。
【0041】
デバイスデータ情報記憶メモリ24は、デバイス搭載基板1に搭載されているコンフィグレーションデバイス3とコンフィグレーションデバイス4とを含む様々な種類のコンフィグレーションデバイスのIDCODE情報と、それらコンフィグレーションデバイスの論理データ記憶容量とをそれぞれ対応させて記憶している。表2に、デバイスデータ情報記憶メモリ24が記憶するIDCODE情報と論理データ記憶容量との対応の例を示す。また、デバイスデータ情報記憶メモリ24は、デバイス搭載基板1が搭載しているプログラマブル論理デバイス2の論理格納容量を記憶している。
【0042】
【表2】

【0043】
具体的には、コンフィグレーションデバイスメモリ演算回路25は、デバイスデータ情報記憶メモリ24から、コンフィグレーションデバイスIDCODE保持回路23が保持するコンフィグレーションデバイス3とコンフィグレーションデバイス4のIDCODE情報に対応するコンフィグレーションデバイス3とコンフィグレーションデバイス4の論理データ記憶容量を取得する。
【0044】
コンフィグレーションデバイスメモリ演算回路25は、取得した論理データ記憶容量を用いてコンフィグレーションデバイス3とコンフィグレーションデバイス4の論理データ記憶容量の合計を算出した上で、プログラマブル論理デバイス2の論理格納容量と、コンフィグレーションデバイス3とコンフィグレーションデバイス4及びそれらを合計した論理データ記憶容量それぞれとの比較を行い、プログラマブル論理デバイス2へ入力する論理回路のデータをコンフィグレーションデバイス3が全て記憶することができるか、それともコンフィグレーションデバイス3に加えてコンフィグレーションデバイス4がなければ記憶することができないのかを判断する。
【0045】
次に、実施の形態2におけるデバイス搭載基板1でのコンフィグレーションデバイスの選択の動作を図4に示すフローチャートを用いて説明する。
デバイス搭載基板1の電源投入後、JTAGコントローラ回路22はテストアクセスポートの信号を用いてコンフィグレーションデバイス3とコンフィグレーションデバイス4のIDCODE情報を順に読み取り、コンフィグレーションデバイスIDCODE保持回路23へ格納する(ステップS200)。この結果、コンフィグレーションデバイスIDCODE保持回路23は、JTAGコントローラ回路22が読み込んだコンフィグレーションデバイス3とコンフィグレーションデバイス4とのIDCODE情報を保持することとなる。
【0046】
テストアクセスポートを用いたコンフィグレーションデバイス3とコンフィグレーションデバイス4とJTAGコントローラ回路22とのインターフェースは、IEEE1149.1のバウンダリスキャンに準拠しているものとする。
【0047】
コンフィグレーションデバイスメモリ演算回路25は、デバイスデータ情報記憶メモリ24から、コンフィグレーションデバイスIDCODE保持回路23が保持するコンフィグレーションデバイス3とコンフィグレーションデバイス4のIDCODE情報に対応するコンフィグレーションデバイス3とコンフィグレーションデバイス4の論理データ記憶容量を取得する(ステップS201)。また、コンフィグレーションデバイスメモリ演算回路25は、デバイスデータ情報記憶メモリ24からプログラマブル論理デバイス2の論理格納容量を取得する(ステップS202)。コンフィグレーションデバイスメモリ演算回路25は、取得したプログラマブル論理デバイス2の論理格納容量とコンフィグレーションデバイス3の論理データ記憶容量とを比較し、プログラマブル論理デバイス2の論理格納容量がコンフィグレーションデバイス3の論理データ記憶容量以下であるか否かを判断する(ステップS203)。
【0048】
その結果、プログラマブル論理デバイス2の論理格納容量がコンフィグレーションデバイス3の論理データ記憶容量以下であった場合(ステップS203のYesの場合)、コンフィグレーションデバイス3が、プログラマブル論理デバイス2へ入力する全ての論理回路のデータを記憶することができるため、コンフィグレーションデバイス4は不必要となる。
【0049】
この場合、セレクタ16は、コンフィグレーションデバイス3のみをプログラマブル論理デバイス2のコンフィグレーションデバイスとして使用するように配線を切り換える(ステップS204)。図3の場合、コンフィグレーションデバイスメモリ演算回路25からセレクタ16にdisable信号を出力することによって、コンフィグレーションデバイス3のみをプログラマブル論理デバイス2のコンフィグレーションデバイスとして使用するように配線を切り換える。
【0050】
ステップS203で判断した結果、プログラマブル論理デバイス2の論理格納容量がコンフィグレーションデバイス3の論理データ記憶容量以下でない場合、つまり、プログラマブル論理デバイス2の論理格納容量がコンフィグレーションデバイス3の論理データ記憶容量より大きい場合(ステップS203のNoの場合)、コンフィグレーションデバイス3だけでは、プログラマブル論理デバイス2へ入力する全ての論理回路のデータを記憶することができないため、コンフィグレーションデバイス3に加えてコンフィグレーションデバイス4を使用する必要がある。
【0051】
この場合、セレクタ16はコンフィグレーションデバイス3とコンフィグレーションデバイス4の両方をプログラマブル論理デバイス2のコンフィグレーションデバイスとして使用するように配線を切り換える(ステップS205)。図3の場合、コンフィグレーションデバイスメモリ演算回路25からセレクタ16にenable信号を出力することによってコンフィグレーションデバイス3とコンフィグレーションデバイス4の両方をプログラマブル論理デバイス2のコンフィグレーションに使用するように配線を切り換える。
【0052】
この実施の形態によればデバイス搭載基板1は、さらに、2以上の個数のコンフィグレーションデバイスのデバイス情報を取得するバウンダリスキャン制御回路20と、バウンダリスキャン制御回路20が取得した2以上の個数のコンフィグレーションデバイスのデバイス情報を用いて、2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量を取得し、2以上の個数のコンフィグレーションデバイスの中から取得した論理データ記憶容量にもとづいて使用するコンフィグレーションデバイスを決定するコンフィグレーションデバイス決定回路21とを備えるので、バウンダリスキャン制御回路20が取得したコンフィグレーションデバイスのデバイス情報を用いて、コンフィグレーションデバイス決定回路21が、対応するコンフィグレーションデバイスの論理データ記憶容量を取得し、取得した論理データ記憶容量にもとづいて使用するコンフィグレーションデバイスを決定することができる。
【0053】
この実施の形態によればコンフィグレーションデバイス決定回路21は、取得した論理データ記憶容量の合計が、プログラマブル論理デバイス2の論理回路を格納する論理格納容量以上となるようにコンフィグレーションデバイスを決定することができる。
【0054】
この実施の形態によれば、デバイス搭載基板1に搭載するコンフィグレーションデバイスを論理データ記憶容量が異なるコンフィグレーションデバイスに交換した場合でも、セレクタ16を制御して配線を切り換えることにより、使用するコンフィグレーションデバイスを選択することができる。その結果、デバイス搭載基板1を改修することなく、1枚のデバイス搭載基板で種類の異なるプログラマブル論理デバイスを搭載して対応することができる。
【0055】
実施の形態3.
実施の形態3では、デバイス搭載基板1に搭載されたコンフィグレーションデバイス3とコンフィグレーションデバイス4のIDCODE情報に加えて、プログラマブル論理デバイス2のIDCODE情報を読み取り、読み取ったIDCODE情報を用いてプログラマブル論理デバイスの論理格納容量とコンフィグレーションデバイスの論理データ記憶容量とを取得し、取得した論理格納容量と論理データ記憶容量とを比較することより、必要なコンフィグレーションデバイスの個数を求め、その結果から使用するコンフィグレーションデバイスを選択する実施に形態について説明する。なお、実施の形態3においては、プログラマブル論理デバイス2は交換可能である。
【0056】
図5は、実施の形態3におけるデバイス搭載基板1の構成を示す図である。
実施の形態3におけるデバイス搭載基板1は、実施の形態2におけるデバイス搭載基板1の構成と基本的には同じである。具体的には、実施の形態3におけるデバイス搭載基板1は、実施の形態2と同様に、実施の形態1におけるデバイス搭載基板1の構成に加えて、さらに、プログラマブル論理デバイス2のデバイス情報を取得するバウンダリスキャン制御回路20と、バウンダリスキャン制御回路20が取得したプログラマブル論理デバイス2のデバイス情報を用いて、プログラマブル論理デバイス2の論理回路を格納する論理格納容量を取得し、2以上の個数のコンフィグレーションデバイスの中から取得した論理格納容量にもとづいて使用するコンフィグレーションデバイスを決定するコンフィグレーションデバイス決定回路21とを備える。
【0057】
または、プログラマブル論理デバイス2のデバイス情報の取得に加えて、2以上の個数のコンフィグレーションデバイスのデバイス情報を取得する形態であってもよいことから、実施の形態3におけるデバイス搭載基板1は、実施の形態1におけるデバイス搭載基板1の構成に加えて、さらに、2以上の個数のコンフィグレーションデバイスのデバイス情報とプログラマブル論理デバイス2のデバイス情報とを取得するバウンダリスキャン制御回路20と、バウンダリスキャン制御回路20が取得した2以上の個数のコンフィグレーションデバイスのデバイス情報を用いて、2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量を取得し、バウンダリスキャン制御回路20が取得したプログラマブル論理デバイス2のデバイス情報を用いて、プログラマブル論理デバイス2の論理回路を格納する論理格納容量を取得し、2以上の個数のコンフィグレーションデバイスの中から、取得した論理データ記憶容量と論理格納容量とにもとづいて使用するコンフィグレーションデバイスを決定するコンフィグレーションデバイス決定回路21とを備えるものとしてもよい。
【0058】
ここでは、後者のバウンダリスキャン制御回路20が2以上の個数のコンフィグレーションデバイスのデバイス情報とプログラマブル論理デバイス2のデバイス情報とを取得する形態について説明する。
【0059】
実施の形態3におけるデバイス搭載基板1は、前記した構成に加えて、さらに、コンフィグレーションデバイス決定回路21が決定したコンフィグレーションデバイスを選択するスイッチを備える。
【0060】
実施の形態3においては実施の形態2と同様に、スイッチとしてセレクタ16を用いている。セレクタ16は、入力されるイネーブル(enable)信号とディスエーブル(disable)信号にしたがって、コンフィグレーションデバイス3に加えてコンフィグレーションデバイス4を使用するか否かを切り換える。
【0061】
バウンダリスキャン制御回路20は、バウンダリスキャンを行いコンフィグレーションデバイス3とコンフィグレーションデバイス4とプログラマブル論理デバイス2とのIDCODE情報を読み取る。コンフィグレーションデバイス決定回路21は、バウンダリスキャン制御回路20が読み取ったコンフィグレーションデバイス3とコンフィグレーションデバイス4とプログラマブル論理デバイス2とのIDCODE情報から使用するコンフィグレーションデバイスを決定する。なお、プログラマブル論理デバイス2とコンフィグレーションデバイス3とコンフィグレーションデバイス4とコネクタ5は、実施の形態1と同様であるので説明を省略する。
【0062】
バウンダリスキャン制御回路20は、JTAGコントローラ回路22、コンフィグレーションデバイスIDCODE保持回路23、プログラマブル論理デバイスIDCODE保持回路36を備える。表3にプログラマブル論理デバイスのIDCODE情報の例を示す。プログラマブル論理デバイスIDCODE保持回路36は、例えば、表3に記載されたIDCODE情報のいずれかを保持している。なお、コンフィグレーションデバイスのIDCODE情報の例は表1と同じである。
【0063】
【表3】

【0064】
プログラマブル論理デバイスIDCODE保持回路36は、JTAGコントローラ回路22が読み込んだプログラマブル論理デバイス2のIDCODE情報を保持する回路である。JTAGコントローラ回路22とコンフィグレーションデバイスIDCODE保持回路23とについては、実施の形態2と同様であるので説明を省略する。
【0065】
コンフィグレーションデバイス決定回路21は、デバイスデータ情報記憶メモリ24とコンフィグレーションデバイスメモリ演算回路25とから構成される。
【0066】
コンフィグレーションデバイス決定回路21は、取得した論理データ記憶容量の合計が取得した論理格納容量以上となるようにコンフィグレーションデバイスを決定する。
【0067】
デバイスデータ情報記憶メモリ24は、デバイス搭載基板1に搭載されたプログラマブル論理デバイス2を含む様々な種類のプログラマブル論理デバイスのIDCODE情報とそれらプログラマブル論理デバイスの論理格納容量とを対応させて記憶している。また、デバイスデータ情報記憶メモリ24は、デバイス搭載基板1に搭載されたコンフィグレーションデバイス3とコンフィグレーションデバイス4を含む様々な種類のコンフィグレーションデバイスのIDCODE情報とそれらコンフィグレーションデバイスの論理データ記憶容量とを対応させて記憶している。
【0068】
具体的には、コンフィグレーションデバイスメモリ演算回路25は、デバイスデータ情報記憶メモリ24から、プログラマブル論理デバイスIDCODE保持回路36が保持するプログラマブル論理デバイス2のIDCODE情報に対応するプログラマブル論理デバイスの論理格納容量を取得する。
【0069】
また、コンフィグレーションデバイスメモリ演算回路25は、デバイスデータ情報記憶メモリ24から、コンフィグレーションデバイスIDCODE保持回路23が保持するコンフィグレーションデバイス3とコンフィグレーションデバイス4のIDCODE情報に対応するコンフィグレーションデバイス3とコンフィグレーションデバイス4の論理データ記憶容量を取得する。
【0070】
コンフィグレーションデバイスメモリ演算回路25は、取得した論理データ記憶容量を用いてコンフィグレーションデバイス3とコンフィグレーションデバイス4の論理データ記憶容量の合計を算出した上で、コンフィグレーションデバイス3とコンフィグレーションデバイス4及びそれらを合計した論理データ記憶容量それぞれとの比較を行い、プログラマブル論理デバイス2へ入力する論理回路のデータをコンフィグレーションデバイス3が全て記憶することができるか、それともコンフィグレーションデバイス3に加えてコンフィグレーションデバイス4がなければ記憶することができないのかを判断する。
【0071】
デバイス搭載基板1に搭載されたその他の回路や部品は、実施の形態2と同様であるので説明を省略する。
【0072】
なお、この実施の形態では具体的には説明しないものとしたが、前記したバウンダリスキャン制御回路20がプログラマブル論理デバイス2のデバイス情報のみを取得する場合には、コンフィグレーションデバイス決定回路21は、取得した論理格納容量が2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量の合計以下となるようにコンフィグレーションデバイスを決定するものとなる。
【0073】
次に、実施の形態3におけるデバイス搭載基板1でのコンフィグレーションデバイスを決定するコンフィグレーションデバイス決定方法の動作を説明する。
【0074】
コンフィグレーションデバイス決定方法は、2以上の個数のコンフィグレーションデバイスとプログラマブル論理デバイス2とを備えたデバイス搭載基板1において、2以上の個数のコンフィグレーションデバイスからコンフィグレーションデバイスのデバイス情報であるIDCODE情報を取得し、プログラマブル論理デバイス2からプログラマブル論理デバイスのデバイス情報であるIDCODE情報を取得するデバイス情報取得工程と、取得した2以上の個数のコンフィグレーションデバイスのデバイス情報であるIDCODE情報を用いて、2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量を取得し、取得したプログラマブル論理デバイス2のデバイス情報であるIDCODE情報を用いて、プログラマブル論理デバイス2の論理回路を格納する論理格納容量を取得し、取得した2以上の個数の論理データ記憶容量の合計が、取得した論理格納容量以上となるように2以上の個数のコンフィグレーションデバイスの中から使用するコンフィグレーションデバイスを決定するコンフィグレーションデバイス決定工程とを実行する。
【0075】
コンフィグレーションデバイス決定方法は、さらに、決定されたコンフィグレーションデバイスをスイッチであるセレクタ16により選択するコンフィグレーションデバイス選択工程を実行する。
【0076】
コンフィグレーションデバイス決定方法の詳しい動作を図6と図7に示すフローチャートを用いて説明する。なお、図7に示すフローチャートは図6のフローチャートから継続して実行される。
デバイス搭載基板1の電源投入後、JTAGコントローラ回路22は、テストアクセスポートの信号を用いてコンフィグレーションデバイス3とコンフィグレーションデバイス4とからIDCODE情報を順に読み取り、コンフィグレーションデバイスIDCODE保持回路23に格納する(ステップS300)。また、JTAGコントローラ回路22は、テストアクセスポートの信号を用いてプログラマブル論理デバイス2からIDCODE情報を読み取り、プログラマブル論理デバイスIDCODE保持回路36に格納する(ステップS301)。以上、ステップS300とステップS301がデバイス情報取得工程である。なお、ステップS300とステップS301との順序は、逆であってもよい。
【0077】
その結果、コンフィグレーションデバイスIDCODE保持回路23は、JTAGコントローラ回路22が読み込んだコンフィグレーションデバイス3とコンフィグレーションデバイス4のIDCODE情報を保持する。また、プログラマブル論理デバイスIDCODE保持回路36は、JTAGコントローラ回路22が読み込んだプログラマブル論理デバイス2のIDCODE情報を保持する。
【0078】
テストアクセスポートを用いたプログラマブル論理デバイス2とコンフィグレーションデバイス3とコンフィグレーションデバイス4とJTAGコントローラ回路22とのインターフェースは、IEEE1149.1のバウンダリスキャンに準拠しているものとする。
【0079】
デバイスデータ情報記憶メモリ24は、コンフィグレーションデバイス3とコンフィグレーションデバイス4を含むデバイス搭載基板1に搭載可能な全てのコンフィグレーションデバイスのIDCODE情報とそれらコンフィグレーションデバイスの論理データ記憶容量とを対応させて記憶している。また、デバイスデータ情報記憶メモリ24は、プログラマブル論理デバイス2を含めデバイス搭載基板1に搭載可能な全てのプログラマブル論理デバイスのIDCODE情報とそれらプログラマブル論理デバイスの論理格納容量とを対応させて記憶している。表4にデバイスデータ情報記憶メモリ24が記憶するIDCODE情報と論理格納容量との対応の例を示す。なお、IDCODE情報と論理データ記憶容量との対応の例は表2と同じである。
【0080】
【表4】

【0081】
コンフィグレーションデバイスメモリ演算回路25は、デバイスデータ情報記憶メモリ24から、コンフィグレーションデバイスIDCODE保持回路23に保持されたコンフィグレーションデバイス3とコンフィグレーションデバイス4のIDCODE情報に対応するコンフィグレーションデバイス3とコンフィグレーションデバイス4の論理データ記憶容量を取得する(ステップS302)。さらに、コンフィグレーションデバイスメモリ演算回路25は、デバイスデータ情報記憶メモリ24から、プログラマブル論理デバイスIDCODE保持回路36に保持されたプログラマブル論理デバイス2のIDCODE情報に対応するプログラマブル論理デバイス2の論理格納容量を取得する(ステップS303)。
【0082】
コンフィグレーションデバイスメモリ演算回路25は、取得したプログラマブル論理デバイス2の論理格納容量とコンフィグレーションデバイス3の論理データ記憶容量とを比較し、プログラマブル論理デバイス2の論理格納容量がコンフィグレーションデバイス3の論理データ記憶容量以下であるか否かを判断する(ステップS304)。
【0083】
その結果、プログラマブル論理デバイス2の論理格納容量がコンフィグレーションデバイス3の論理データ記憶容量以下であった場合(ステップS304のYesの場合)、コンフィグレーションデバイス3は、コンフィグレーションデバイス4がなくてもプログラマブル論理デバイス2へ入力する全ての論理回路のデータを記憶することができるため、コンフィグレーションデバイスメモリ演算回路25は、コンフィグレーションデバイス3のみを使用することを決定する(ステップS305)。
【0084】
この場合、セレクタ16は、コンフィグレーションデバイス3のみをプログラマブル論理デバイス2のコンフィグレーションデバイスとして使用するように配線を切り換える(ステップS306)。図5の場合、コンフィグレーションデバイスメモリ演算回路25からセレクタ16にdisable信号を出力することによってコンフィグレーションデバイス3のみをプログラマブル論理デバイス2のコンフィグレーションデバイスとして使用するように配線を切り換える。
【0085】
ステップS304で判断した結果、プログラマブル論理デバイス2の論理格納容量がコンフィグレーションデバイス3の論理データ記憶容量以下でない場合、つまり、プログラマブル論理デバイス2の論理格納容量がコンフィグレーションデバイス3の論理データ記憶容量より大きい場合(ステップS304のNoの場合)、コンフィグレーションデバイス3だけでは、プログラマブル論理デバイス2へ入力する全ての論理回路のデータを記憶することができないため、コンフィグレーションデバイスメモリ演算回路25は、コンフィグレーションデバイス3に加えてコンフィグレーションデバイス4を使用することを決定する(ステップS307)。
【0086】
この場合、セレクタ16は、コンフィグレーションデバイス3とコンフィグレーションデバイス4との両方をプログラマブル論理デバイス2のコンフィグレーションデバイスとして使用するように配線を切り換える(ステップS308)。図5の場合、コンフィグレーションデバイスメモリ演算回路25からセレクタ16にenable信号を出力することによってコンフィグレーションデバイス3とコンフィグレーションデバイス4の両方をプログラマブル論理デバイス32のコンフィグレーションデバイスとして使用するように配線を切り換える。以上、ステップS302からステップS305までとステップS307とが、コンフィグレーションデバイス決定工程である。また、ステップS306とステップS308とが、コンフィグレーションデバイス選択工程である。
【0087】
この実施の形態によればデバイス搭載基板1は、さらに、2以上の個数のコンフィグレーションデバイスのデバイス情報とプログラマブル論理デバイス2のデバイス情報とを取得するバウンダリスキャン制御回路20と、バウンダリスキャン制御回路20が取得した2以上の個数のコンフィグレーションデバイスのデバイス情報を用いて、2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量を取得し、バウンダリスキャン制御回路20が取得したプログラマブル論理デバイス2のデバイス情報を用いて、プログラマブル論理デバイス2の論理回路を格納する論理格納容量を取得し、2以上の個数のコンフィグレーションデバイスの中から、取得した論理データ記憶容量と論理格納容量とにもとづいて使用するコンフィグレーションデバイスを決定するコンフィグレーションデバイス決定回路21とを備えるので、バウンダリスキャン制御回路20が取得したコンフィグレーションデバイスのデバイス情報を用いて、コンフィグレーションデバイス決定回路21が、対応するコンフィグレーションデバイスの論理データ記憶容量を取得し、また、バウンダリスキャン制御回路20が取得したプログラマブル論理デバイス2のデバイス情報を用いて、コンフィグレーションデバイス決定回路21が、対応するプログラマブル論理デバイスの論理格納容量を取得し、取得した論理データ記憶容量と論理格納容量とにもとづいて使用するコンフィグレーションデバイスを決定することができる。
【0088】
この実施の形態によれば、コンフィグレーションデバイス決定回路21は、取得した論理データ記憶容量の合計が取得した論理格納容量以上となるようにコンフィグレーションデバイスを決定することができる。
【0089】
この実施の形態によればデバイス搭載基板1は、さらに、コンフィグレーションデバイス決定回路21が決定したコンフィグレーションデバイスを選択するスイッチを備えるので、コンフィグレーションデバイス3のみを使用するか、コンフィグレーションデバイス3に加えてコンフィグレーションデバイス4をも使用するかを選択することができる。
ことができる。
【0090】
この実施の形態によればコンフィグレーションデバイス決定方法は、2以上の個数のコンフィグレーションデバイスとプログラマブル論理デバイス2とを備えたデバイス搭載基板において、2以上の個数のコンフィグレーションデバイスからコンフィグレーションデバイスのデバイス情報を取得し、プログラマブル論理デバイス2からプログラマブル論理デバイスのデバイス情報を取得するデバイス情報取得工程と、取得した2以上の個数のコンフィグレーションデバイスのデバイス情報を用いて、2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量を取得し、取得したプログラマブル論理デバイス2のデバイス情報を用いて、プログラマブル論理デバイスの論理回路を格納する論理格納容量を取得し、取得した2以上の個数の論理データ記憶容量の合計が、取得した論理格納容量以上となるように2以上の個数のコンフィグレーションデバイスの中から使用するコンフィグレーションデバイスを決定するコンフィグレーションデバイス決定工程とを実行するので、デバイス情報取得工程において取得したコンフィグレーションデバイスのデバイス情報を用いて、コンフィグレーションデバイス決定工程において、対応するコンフィグレーションデバイスの論理データ記憶容量を取得し、デバイス情報取得工程において取得したプログラマブル論理デバイス2のデバイス情報を用いて、コンフィグレーションデバイス決定工程において、対応するプログラマブル論理デバイスの論理格納容量を取得し、取得した論理データ記憶容量と論理格納容量とにもとづいて使用するコンフィグレーションデバイスをコンフィグレーションデバイス決定工程において決定することができる。
【0091】
コンフィグレーションデバイス決定方法は、さらに、決定されたコンフィグレーションデバイスをスイッチにより選択するコンフィグレーションデバイス選択工程を実行するので、コンフィグレーションデバイス決定工程において決定したコンフィグレーションデバイスをコンフィグレーションデバイス選択工程においてスイッチを用いて選択することができる。
【0092】
この実施の形態では具体的には説明しなかったが、デバイス搭載基板1は、さらに、プログラマブル論理デバイス2のデバイス情報を取得するバウンダリスキャン制御回路20と、バウンダリスキャン制御回路20が取得したプログラマブル論理デバイス2のデバイス情報を用いて、プログラマブル論理デバイス2の論理回路を格納する論理格納容量を取得し、2以上の個数のコンフィグレーションデバイスの中から取得した論理格納容量にもとづいて使用するコンフィグレーションデバイスを決定するコンフィグレーションデバイス決定回路21とを備えるとすることもできるので、バウンダリスキャン制御回路20が取得したプログラマブル論理デバイス2のデバイス情報を用いて、コンフィグレーションデバイス決定回路21が、対応するプログラマブル論理デバイスの論理格納容量を取得し、取得した論理格納容量とにもとづいて、デバイス搭載基板1が搭載している2以上の個数のコンフィグレーションデバイスの中から、使用するコンフィグレーションデバイスを決定することができる。
【0093】
この場合には、コンフィグレーションデバイス決定回路21は、取得した論理格納容量が、2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量の合計以下となるようにコンフィグレーションデバイスを決定することができる。
【0094】
この実施の形態によれば、搭載するプログラマブル論理デバイスを容量の異なるプログラマブル論理デバイスに交換した場合や、搭載するコンフィグレーションデバイスをメモリ容量の異なるコンフィグレーションデバイスに交換した場合であっても、セレクタを制御して配線を切り換えることにより、使用するコンフィグレーションデバイスを選択することができる。その結果、デバイス搭載基板1を改修することなく、1枚のデバイス搭載基板で種類の異なるプログラマブル論理デバイスを搭載して対応することができる。
【0095】
実施の形態4.
実施に形態4では、プログラマブル論理デバイスの論理格納容量と各コンフィグレーションデバイスの論理データ記憶容量と各コンフィグレーションデバイスの個数によっては、デバイス搭載基板1に搭載されている全てのコンフィグレーションデバイスを用いてもプログラマブル論理デバイスに格納する全ての論理回路のデータを記憶することができない場合、警告を出力する実施の形態について説明する。
【0096】
この実施の形態は、実施の形態2のデバイス搭載基板1もしくは実施の形態3のデバイス搭載基板1に回路を付加することにより実現可能であるが、ここでは実施の形態3のデバイス搭載基板1に回路を付加した場合について説明する。
【0097】
図8は、実施の形態4におけるデバイス搭載基板1の構成を示す図である。
この実施の形態におけるデバイス搭載基板1は、実施の形態3におけるデバイス搭載基板1の構成に加えて、さらに、2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量の合計とプログラマブル論理デバイス2の論理回路を格納する論理格納容量とを比較する容量比較回路53と、容量比較回路53が比較を行い、2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量の合計が、プログラマブル論理デバイス2の論理回路を格納する論理格納容量より小さい場合、警告を出力する警告出力部とを備える。
【0098】
警告出力部は、ランプとブザーと振動発生器との少なくともいずれか一つを備えてもよいが、ここではランプ(警告ランプ)42を備えるものとする。なお、デバイス搭載基板1に搭載するその他の回路や部品は、実施の形態3と同様であるので説明を省略する。
【0099】
容量比較回路53は、デバイスデータ情報記憶メモリ24から、コンフィグレーションデバイスIDCODE保持回路23が保持するコンフィグレーションデバイス3とコンフィグレーションデバイス4のIDCODE情報に対応する論理データ記憶容量を取得し、取得した論理データ記憶容量の合計を取得する。また、容量比較回路53は、デバイスデータ情報記憶メモリ24から、プログラマブル論理デバイスIDCODE保持回路36が保持するプログラマブル論理デバイス2のIDCODE情報に対応する論理格納容量を取得する。
【0100】
容量比較回路53は、取得した論理データ記憶容量の合計と取得した論理格納容量とを比較する。比較した結果、論理格納容量が論理データ記憶容量の合計よりも大きい場合、デバイス搭載基板1に搭載されているコンフィグレーションデバイス3とコンフィグレーションデバイス4とを用いてもプログラマブル論理デバイス2に入力する全ての論理回路のデータを記憶することができないと判断し、デバイス搭載基板1に搭載された警告ランプ42を点灯する。
【0101】
プログラマブル論理デバイス2の論理格納容量がコンフィグレーションデバイス3とコンフィグレーションデバイス4との論理データ記憶容量の合計以下の場合、少なくともデバイス搭載基板1に搭載されているコンフィグレーションデバイス3とコンフィグレーションデバイス4とを用いればプログラマブル論理デバイスに入力する全ての論理回路のデータを記憶できるという判断になり、デバイス搭載基板1に搭載された警告ランプ42は点灯しない。
【0102】
この実施の形態によればデバイス搭載基板1は、さらに、2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量の合計とプログラマブル論理デバイス2の論理回路を格納する論理格納容量とを比較する容量比較回路53と、容量比較回路53が比較を行い、2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量の合計が、プログラマブル論理デバイス2の論理回路を格納する論理格納容量より小さい場合、警告を出力する警告出力部である警告ランプ42とを備えるので、容量比較回路53が、コンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量の合計とプログラマブル論理デバイス2の論理回路を格納する論理格納容量とを比較した結果、論理データ記憶容量の合計が論理格納容量より小さいことが判明した場合、コンフィグレーションデバイスによりプログラマブル論理デバイス2に格納する全ての論理回路のデータを記憶することができないため、警告出力部である警告ランプ42が警告を出力することができる。
【0103】
この実施の形態によれば警告出力部は、ランプとブザーと振動発生器との少なくともいずれか一つを備えるので、利用者に対して光や音や振動で警告を出力し、注意を促すことができる。
【0104】
この実施の形態によればデバイス搭載基板1に搭載されているすべてのコンフィグレーションデバイスを用いてもプログラマブル論理デバイス2に入力することができる全ての論理回路のデータを記憶することができない場合、そのことを示す警告を出力し、注意を促すことができる。
【0105】
以上、実施の形態1から実施の形態4に記載したデバイス搭載基板は、外部からコンフィグレーションを設定して所望の論理動作を可能にするプログラマブル論理デバイスを搭載し、該プログラマブル論理デバイスのコンフィグレーションに用いるコンフィグレーションデバイスを複数個搭載する情報処理装置において、該プログラマブル論理デバイスの容量に応じたコンフィグレーションデバイスの個数を使用しコンフィグレーションを行うことを特徴とするプログラマブル論理デバイス搭載装置である。
【0106】
前記したプログラマブル論理デバイス搭載装置において、該プログラマブル論理デバイスの容量に応じて使用するコンフィグレーションデバイスの個数の変更を手動スイッチによって行うことを特徴とするプログラマブル論理デバイス搭載装置である。
【0107】
前記したプログラマブル論理デバイス搭載装置において、該コンフィグレーションデバイス個々に対して容量の情報を取得し、取得した情報に応じて使用するコンフィグレーションデバイスの個数の変更を自動的に行うことを特徴とするプログラマブル論理デバイス搭載装置である。
【0108】
前記したプログラマブル論理デバイス搭載装置において、該プログラマブル論理デバイスの容量の情報を取得し、取得した情報に応じて使用するコンフィグレーションデバイスの個数の変更を自動的に行うことを特徴とするプログラマブル論理デバイス搭載装置である。
【0109】
前記したプログラマブル論理デバイス搭載装置において、所得した該コンフィグレーションデバイス個々に対して容量の情報と所得した該プログラマブル論理デバイスの容量の情報から搭載された該コンフィグレーションデバイスすべてを用いても該プログラマブル論理デバイスのコンフィグレーションを実施する容量に満たない場合警告を示すことを特徴とするプログラマブル論理デバイス搭載装置である。
【図面の簡単な説明】
【0110】
【図1】実施の形態1におけるデバイス搭載基板の構成を示す図である。
【図2】実施の形態1におけるデバイス搭載基板でのコンフィグレーションデバイスの選択の動作を説明するフローチャートである。
【図3】実施の形態2におけるデバイス搭載基板の構成を示す図である。
【図4】実施の形態2におけるデバイス搭載基板でのコンフィグレーションデバイスの選択の動作を説明するフローチャートである。
【図5】実施の形態3におけるデバイス搭載基板の構成を示す図である。
【図6】実施の形態3におけるデバイス搭載基板でのコンフィグレーションデバイスの選択の動作を説明するフローチャートである。
【図7】実施の形態3におけるデバイス搭載基板でのコンフィグレーションデバイスの選択の動作を説明するフローチャートの続きである。
【図8】実施の形態4におけるデバイス搭載基板の構成を示す図である。
【符号の説明】
【0111】
1 デバイス搭載基板、2 プログラマブル論理デバイス、3 コンフィグレーションデバイス、4 コンフィグレーションデバイス、5 コネクタ、6 スイッチ、7 搭載部、16 セレクタ、20 バウンダリスキャン制御回路、21 コンフィグレーションデバイス決定回路、22 JTAGコントローラ回路、23 コンフィグレーションデバイスIDCODE保持回路、24 デバイスデータ情報記憶メモリ、25 コンフィグレーションデバイスメモリ演算回路、36 プログラマブル論理デバイスIDCODE保持回路、42 警告ランプ、53 容量比較回路。

【特許請求の範囲】
【請求項1】
プログラマブル論理デバイスに格納する論理回路のデータを記憶し、前記プログラマブル論理デバイスの論理回路を格納する論理格納容量に応じて選択的に用いられる2以上の個数のコンフィグレーションデバイスを備えることを特徴とするデバイス搭載基板。
【請求項2】
前記デバイス搭載基板は、
前記プログラマブル論理デバイスの論理回路を格納する論理格納容量に応じた個数のコンフィグレーションデバイスを選択的に用いること
を特徴とする請求項1に記載のデバイス搭載基板。
【請求項3】
前記デバイス搭載基板は、
前記コンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量の合計が、前記プログラマブル論理デバイスの論理回路を格納する論理格納容量以上となるような個数のコンフィグレーションデバイスを選択すること
を特徴とする請求項1に記載のデバイス搭載基板。
【請求項4】
前記デバイス搭載基板は、さらに
格納した論理回路を動作させるプログラマブル論理デバイスを備えることを特徴とする請求項1の記載のデバイス搭載基板。
【請求項5】
前記デバイス搭載基板は、さらに
格納した論理回路を動作させるプログラマブル論理デバイスを搭載する搭載部を備えることを特徴とする請求項1の記載のデバイス搭載基板。
【請求項6】
前記デバイス搭載基板は、さらに
前記コンフィグレーションデバイスを選択するスイッチを備えること
を特徴とする請求項1に記載のデバイス搭載基板。
【請求項7】
前記デバイス搭載基板は、さらに
前記2以上の個数のコンフィグレーションデバイスのデバイス情報を取得するバウンダリスキャン制御回路と、
前記バウンダリスキャン制御回路が取得した2以上の個数のコンフィグレーションデバイスのデバイス情報を用いて、前記2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量を取得し、前記2以上の個数のコンフィグレーションデバイスの中から取得した論理データ記憶容量にもとづいて使用するコンフィグレーションデバイスを決定するコンフィグレーションデバイス決定回路と
を備えることを特徴とする請求項1に記載のデバイス搭載基板。
【請求項8】
前記コンフィグレーションデバイス決定回路は、
取得した論理データ記憶容量の合計が、前記プログラマブル論理デバイスの論理回路を格納する論理格納容量以上となるようにコンフィグレーションデバイスを決定すること
を特徴とする請求項7に記載のデバイス搭載基板。
【請求項9】
前記デバイス搭載基板は、さらに
前記プログラマブル論理デバイスのデバイス情報を取得するバウンダリスキャン制御回路と、
前記バウンダリスキャン制御回路が取得したプログラマブル論理デバイスのデバイス情報を用いて、前記プログラマブル論理デバイスの論理回路を格納する論理格納容量を取得し、前記2以上の個数のコンフィグレーションデバイスの中から取得した論理格納容量にもとづいて使用するコンフィグレーションデバイスを決定するコンフィグレーションデバイス決定回路と
を備えることを特徴とする請求項3に記載のデバイス搭載基板。
【請求項10】
前記コンフィグレーションデバイス決定回路は、
取得した論理格納容量が、前記2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量の合計以下となるようにコンフィグレーションデバイスを決定すること
を特徴とする請求項9に記載のデバイス搭載基板。
【請求項11】
前記デバイス搭載基板は、さらに
前記2以上の個数のコンフィグレーションデバイスのデバイス情報と前記プログラマブル論理デバイスのデバイス情報とを取得するバウンダリスキャン制御回路と、
前記バウンダリスキャン制御回路が取得した2以上の個数のコンフィグレーションデバイスのデバイス情報を用いて、前記2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量を取得し、前記バウンダリスキャン制御回路が取得したプログラマブル論理デバイスのデバイス情報を用いて、前記プログラマブル論理デバイスの論理回路を格納する論理格納容量を取得し、前記2以上の個数のコンフィグレーションデバイスの中から、取得した論理データ記憶容量と論理格納容量とにもとづいて使用するコンフィグレーションデバイスを決定するコンフィグレーションデバイス決定回路と
を備えることを特徴とする請求項3に記載のデバイス搭載基板。
【請求項12】
前記コンフィグレーションデバイス決定回路は、
取得した論理データ記憶容量の合計が取得した論理格納容量以上となるようにコンフィグレーションデバイスを決定すること
を特徴とする請求項11に記載のデバイス搭載基板。
【請求項13】
前記デバイス搭載基板は、さらに
前記コンフィグレーションデバイス決定回路が決定したコンフィグレーションデバイスを選択するスイッチを備えること
を特徴とする請求項7と請求項9と請求項11とのうちのいずれか一つに記載のデバイス搭載基板。
【請求項14】
前記デバイス搭載基板は、さらに
前記2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量の合計と前記プログラマブル論理デバイスの論理回路を格納する論理格納容量とを比較する容量比較回路と、
前記容量比較回路が比較を行い、前記2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量の合計が、前記プログラマブル論理デバイスの論理回路を格納する論理格納容量より小さい場合、警告を出力する警告出力部と
を備えることを特徴とする請求項1に記載のデバイス搭載基板。
【請求項15】
前記警告出力部は、
ランプとブザーと振動発生器との少なくともいずれか一つを備えたこと
を特徴とする請求項14に記載のデバイス搭載基板。
【請求項16】
2以上の個数のコンフィグレーションデバイスとプログラマブル論理デバイスとを備えたデバイス搭載基板のコンフィグレーションデバイス決定方法において、
前記2以上の個数のコンフィグレーションデバイスからコンフィグレーションデバイスのデバイス情報を取得し、プログラマブル論理デバイスからプログラマブル論理デバイスのデバイス情報を取得するデバイス情報取得工程と、
取得した2以上の個数のコンフィグレーションデバイスのデバイス情報を用いて、前記2以上の個数のコンフィグレーションデバイスの論理回路のデータを記憶する論理データ記憶容量を取得し、取得したプログラマブル論理デバイスのデバイス情報を用いて、前記プログラマブル論理デバイスの論理回路を格納する論理格納容量を取得し、取得した2以上の個数の論理データ記憶容量の合計が、取得した論理格納容量以上となるように前記2以上の個数のコンフィグレーションデバイスの中から使用するコンフィグレーションデバイスを決定するコンフィグレーションデバイス決定工程と
を実行することを特徴とするコンフィグレーションデバイス決定方法。
【請求項17】
前記コンフィグレーションデバイス決定方法は、さらに
決定されたコンフィグレーションデバイスをスイッチにより選択するコンフィグレーションデバイス選択工程を実行することを特徴とする請求項16に記載のコンフィグレーションデバイス決定方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate