(57)【要約】【課題】  複数種の被制御回路と制御回路とからなる回路システムにおいて、被制御回路の種別に応じて制御回路が所望の動作を行えるようにする。【解決手段】  被制御回路３０には回路モジュール３１と、この被制御回路３０の識別情報を書き込んでいるシリアルＲＯＭ３２を備えている。制御回路４０には、複数種の被制御回路に応じたハードウェアデザインデータをあらかじめ書き込んだＲＯＭ４１、アドレスデコーダ４２、プログラマブルゲートアレイ（ＦＰＧＡ）４３などを備えている。制御回路４０の電源投入時、アドレスデコーダ４２がシリアルＲＯＭ３２の内容に応じたＲＯＭ４１のアドレス範囲を指定することによって、被制御回路３０の種別に応じたコンフィグレーションを行う。【選択図】  図１
2006215984.tif 000002
【特許請求の範囲】
【請求項１】
複数種の被制御回路と、該複数種の被制御回路のうちいずれかの被制御回路を接続した状態で当該被制御回路とともに所定動作する制御回路とから成る回路システムにおいて、
前記制御回路は、前記被制御回路に少なくとも制御信号を与えるプログラマブルゲートアレイと、該プログラマブルゲートアレイの動作内容を設定する動作内容設定手段とを備え、
前記被制御回路は、該被制御回路の種別情報を備え、
前記制御回路の前記動作内容設定手段は、前記被制御回路の種別に応じた複数のハードウェアデザインデータまたはファームウェアデザインデータを書き込んだメモリと、前記被制御回路の種別情報を前記被制御回路から読み取り、該種別情報に応じて前記ハードウェアデザインデータを読み取ってハードウェアデザインのコンフィグレーションを行うか、または前記ファームウェアデザインデータを読み出してファームウェアのロードを行うデータ設定手段とで構成したことを特徴とする回路システム。
【請求項２】
前記メモリには、前記被制御回路の種別毎に異なったアドレス範囲に前記ハードウェアデザインデータまたは前記ファームウェアデザインデータを書き込んでいて、前記データ設定手段は、前記種別情報に応じて前記メモリの前記アドレス範囲のハードウェアデザインデータまたは前記ファームウェアデザインデータのアドレスを指定するアドレスデコーダを備えた請求項１に記載の回路システム。
【請求項３】
前記ハードウェアデザインデータまたはファームウェアデザインデータは、前記プログラマブルゲートアレイが前記被制御回路を評価用に動作させるものである請求項１または２に記載の回路システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、複数種の被制御回路と制御回路とからなる回路システムに関し、特にプログラマブルゲートアレイを用いて被制御回路の制御を行う回路システムに関するものである。
【背景技術】
【０００２】
従来、プログラムによって論理回路を構成することのできるプログラマブルゲートアレイを用いた装置として特許文献１，２が開示されている。
【０００３】
特許文献１に示されている装置は、プログラマブルゲートアレイ（ＦＰＧＡ）の実装された環境要因に応じて、２種類のプログラムのうちいずれか一方を選択してＦＰＧＡのプログラム（ハードウェアデザインデータ）がＦＰＧＡにロードすることによってコンフィグレーションがなされる。
【０００４】
特許文献２に示されている装置は、所望のデータ処理を実行する際に、そのデータ処理に応じて必要なコンフィグレーションデータのみをＦＰＧＡ内のコンフィグレーション用メモリにダウンロードするものである。
【０００５】
ここで、特許文献１のプログラマブルゲートアレイ装置の構成例について、図７を参照して説明する。
図７において、プログラマブルゲートアレイ装置１は、ＦＰＧＡ１１、メモリ１２、コンフィグ指令回路１３、および選択部１４から構成される。メモリ１２は２つのＰＲＯＭ１２ａ，１２ｂからなる。選択部１４は、マルチプレクサ２１および選択指示部２２からなる。２つのＰＲＯＭ１２ａ，１２ｂには、２種類のプログラムＰＲ１，ＰＲ２が格納されている。各プログラムＰＲ１，ＰＲ２は、ＦＰＧＡ１１の論理回路を決定するためのプログラムＰＲ１ｒ，ＰＲ２ｒ、および入出力特性を決定するためのプログラムＰＲ１ｃ，ＰＲ２ｃから構成されている。
【０００６】
コンフィグ指令回路１３は、プログラマブルゲートアレイ装置１に電源が投入されたことを検出してコンフィグ指令信号Ｓ１をＦＰＧＡ１１に出力する。ＦＰＧＡ１１にコンフィグ指令信号Ｓ１が入力されると、ＰＲＯＭ１２ａ，１２ｂに格納されたプログラムＰＲ１，ＰＲ２がクロック信号Ｓ８に同期して読み出され、選択部１４によって選択されたいずれかのプログラムがＦＰＧＡ１１にローディングされ、これによってコンフィグレーションが行われる。
【特許文献１】特開平１１−９５９９４号公報
【特許文献２】特開２０００−８９９６３公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところが、特許文献１に示されている装置では、ＦＰＧＡの実装された温度や電圧などの環境要因に応じてどのプログラムをＦＰＧＡにコンフィグレーションさせるかを定めるようにしただけであり、単一の回路内での動作を設定するものであった。
【０００８】
そのため、特許文献１では、複数種の被制御回路とその被制御回路とともに所定の動作を行う制御回路とからなる回路システムにおいて、必要な処理に応じたコンフィグレーションデータをプログラマブルゲートアレイにコンフィグレーションするといったことはできなかった。
【０００９】
また、特許文献２に示されている装置では、必要なコンフィグレーションデータ（ハードウェアデザインデータ）をＦＰＧＡにコンフィグレーションさせるために、ＣＰＵがファイル記憶装置からプログラムを選択的に読み出してシステムメモリに転送するといった特別な処理が必要であった。また、そのためのＣＰＵを必要とするため、回路規模が大きなものとなって、小型・低コストに構成することができなかった。
【００１０】
そこで、この発明の目的は、複数種の被制御回路と制御回路とからなる回路システムにおいて、上記問題を解消して被制御回路の種別に応じて制御回路が所望の動作を行えるようにした回路システムを提供することにある。
【課題を解決するための手段】
【００１１】
この発明の回路システムは次のように構成する。
（１）複数種の被制御回路と、その複数種の被制御回路のうちいずれかの被制御回路を接続した状態でその被制御回路とともに所定動作する制御回路とからなり、前記制御回路は、前記被制御回路に少なくとも制御信号を与えるプログラマブルゲートアレイと、該プログラマブルゲートアレイの動作内容を設定する動作内容設定手段とを備え、
前記被制御回路は、該被制御回路の種別情報を備え、
前記制御回路の前記動作内容設定手段は、前記被制御回路の種別に応じた複数のハードウェアデザインデータまたはファームウェアデザインデータを書き込んだメモリと、前記被制御回路の種別情報を前記被制御回路から読み取り、該種別情報に応じて前記ハードウェアデザインデータを読み取ってハードウェアデザインのコンフィグレーションを行うか、または前記ファームウェアデザインデータを読み出してファームウェアのロードを行うデータ設定手段とで構成したことを特徴としている。
【００１２】
（２）前記メモリには、例えば前記被制御回路の種別毎に異なったアドレス範囲に前記ハードウェアデザインデータまたは前記ファームウェアデザインデータを書き込んでいて、前記データ設定手段は、例えば前記種別情報に応じて前記メモリの前記アドレス範囲のハードウェアデザインデータまたは前記ファームウェアデザインデータのアドレスを指定するアドレスデコーダを備えたものとする。
【００１３】
（３）前記ハードウェアデザインデータまたはファームウェアデザインデータは、前記プログラマブルゲートアレイが前記被制御回路をたとえば評価用に動作させるものとする。
【発明の効果】
【００１４】
（１）制御回路に対して、複数種の被制御回路のうちいずれかの被制御回路を接続した状態で、その被制御回路の種別情報が読み取られ、ハードウェアデザインデータまたはファームウェアデザインデータがあらかじめ書き込まれたメモリから被制御回路の種別情報に応じたデータが読み出されて、プログラマブルゲートアレイのコンフィグレーションまたはファームウェアのロードが行われるので、制御回路に対して被制御回路を接続するだけで、その被制御回路に応じた動作を実行させることができる。
【００１５】
（２）前記被制御回路の種別毎に異なったアドレス範囲で前記メモリにハードウェアデザインデータまたはファームウェアデザインデータをあらかじめ書き込んでおき、被制御回路の種別情報に応じてアドレスデコーダで前記アドレス範囲を指定することによって、簡単な回路構成で被制御回路の種別に応じたハードウェアデザインデータまたはファームウェアデザインデータの選択が可能となる。
【００１６】
（３）前記ハードウェアデザインデータまたはファームウェアデザインデータを、前記プログラマブルゲートアレイが前記被制御回路を評価用に動作させるものとすることによって、複数種の被制御回路を単一の制御回路で評価用に動作させることが可能となり、複数種の被制御回路の開発が容易となり、その開発コストを削減できる。
【発明を実施するための最良の形態】
【００１７】
この発明の第１の実施形態に係る回路システムについて図１・図２を参照して説明する。
図１は回路システム全体の構成を示すブロック図である。回路システムは被制御回路３０および制御回路４０からなる。この図１に示す例では、さらに被制御回路３０に測定器６０を接続し、制御回路４０にパーソナルコンピュータ５０を接続している。
【００１８】
被制御回路３０は回路モジュール３１およびシリアルＲＯＭ３２を備えている。この第１の実施形態で示す回路システムは回路モジュール３１の評価を行うためのシステムである。この回路モジュール３１とシリアルＲＯＭ３２はサブ基板としての回路基板に設けることによって被制御回路３０を構成している。この被制御回路３０にはコネクタ３６を介して測定器６０を接続している。
【００１９】
制御回路４０は、後述するように複数のハードウェアデザインデータおよびファームウェアデザインデータをあらかじめ書き込んだＲＯＭ４１、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）４３、アドレスデコーダ４２、およびインターフェース４４を備えている。
【００２０】
この制御回路４０はメイン基板に構成していて、コネクタ３４を介して被制御回路３０を接続している。またコネクタ４５を介して外部のパーソナルコンピュータ５０を接続している。ここで、ＲＯＭ４１、アドレスデコーダ４２、およびＦＰＧＡ４３とでこの発明に係る「動作内容設定手段」を構成している。
【００２１】
図２は図１に示したＲＯＭ４１の内容について示している。ＲＯＭ４１には被制御回路３０の種別に応じて複数のハードウェアデザインデータＨａ〜Ｈｃを書き込んでいる。この例では、アドレス１００００番地から始まる所定アドレス範囲にハードウェアデザインデータＨａを書き込んでいる。また２００００番地から始まる所定アドレス範囲にハードウェアデザインデータＨｂを書き込んでいる。同様に、３００００番地から始まる所定アドレス範囲にハードウェアデザインデータＨｃを書き込んでいる。
【００２２】
図１に示した制御回路４０は、その電源投入時にアドレスデコーダ４２が被制御回路３０のシリアルＲＯＭ３２から、被制御回路３０の種別情報を読み出し、ＲＯＭ４１に対するアドレスのオフセットを設定する。たとえば被制御回路３０の種別がＡであればアドレスオフセットとして１００００、種別がＢであればアドレスオフセットとして２００００、種別がＣであればアドレスオフセットとして３００００をそれぞれ設定する。ＦＰＧＡ４３はアドレスデコーダ４２に対して順次クロック信号を与えるとともにＲＯＭ４１から読み出したハードウェアデザインデータをＦＰＧＡ４３内部のＳＲＡＭに書き込む。
【００２３】
このことにより、例えば種別Ａの被制御回路３０が装着されている状態で制御回路４０の電源が投入されれば、図２に示したハードウェアデザインデータＨａの内容がＦＰＧＡ４３内部のＳＲＡＭに書き込まれ、種別Ａの被制御回路３０に応じたコンフィグレーションを行うことができる。同様に種別Ｂの被制御回路３０が装着された状態で制御回路４０の電源が投入されると、図２に示したハードウェアデザインデータＨｂの内容がＦＰＧＡ４３内部のＳＲＡＭに書き込まれ、種別Ｂの被制御回路３０に応じたコンフィグレーションを行うことができる。種別Ｃについても同様である。
【００２４】
このようにしてコンフィグレーションを行った後は、ＦＰＧＡ４３は被制御回路の種別に応じたハードウェアとして機能し、たとえばパーソナルコンピュータ５０からのコマンドを受けて被制御回路３０の回路モジュール３１の動作を制御する。そして、回路モジュール３１を所定動作させている状態で測定器６０がその回路モジュール３１の出力信号を測定することによって、その回路モジュール３１の動作特性を評価する。
【００２５】
次に、第２の実施形態に係る回路システムについて図３〜図５を参照して説明する。
図３は回路システム全体の構成を示すブロック図である。この回路システムも第１の実施形態の場合と同様に、被制御回路３０および制御回路４０を備え、被制御回路３０に測定器６０を接続し、制御回路４０にパーソナルコンピュータ５０を接続している。
【００２６】
図１に示した構成と異なるのは、ＦＰＧＡ４３がその内部にＣＰＵを備えたものであること、ＦＰＧＡ４３の外部に上記ＣＰＵが実行するプログラムを書き込むＳＲＡＭ４６を備えていること、ＦＰＧＡ４３が被制御回路３０のシリアルＲＯＭ３２の内容を読み取るようにしていること等である。
【００２７】
その他の構成は図１に示したものと同様である。
図４は図３に示したＲＯＭ４１の内容について示している。この例では、ＲＯＭ４１に被制御回路３０の種別に応じて複数のハードウェアデザインデータＨａ〜ＨｃおよびファームウェアデザインデータＦａ〜Ｆｃをそれぞれ書き込んでいる。ハードウェアデザインデータについては、図２に示した例と同様に、アドレス１００００番地から始まる所定アドレス範囲にハードウェアデザインデータＨａを、２００００番地から始まる所定アドレス範囲にハードウェアデザインデータＨｂを、３００００番地から始まる所定アドレス範囲にハードウェアデザインデータＨｃをそれぞれ書き込んでいる。また、１１００００番地から始まる所定アドレス範囲に種別Ａの被制御回路３０に応じたファームウェアデザインデータＦａを書き込んでいる。また、１２００００番地から始まる所定アドレス範囲に種別Ｂの被制御回路３０に応じたファームウェアデザインデータＦｂを書き込んでいる。同様に、１３００００番地から始まる所定アドレス範囲に種別Ｃの被制御回路３０に応じたファームウェアデザインデータＦｃを書き込んでいる。
【００２８】
図５は図３に示したＦＰＧＡ４３の処理手順を示すフローチャートである。まず制御回路４０の電源が投入されると、ＦＰＧＡ４３内部のＣＰＵは被制御回路３０に設けられているシリアルＲＯＭ３２から被制御回路３０の種別情報を読み取る（Ｓ１）。次に、その種別情報に応じたハードウェアデザインデータの格納されているアドレス範囲について、そのデータをＲＯＭ４１から順次読み出すとともに、ＦＰＧＡ４３内部のＳＲＡＭに書き込んで行く（Ｓ２）。これにより被制御回路３０の種別に応じたコンフィグレーションを行う。その後、同様にして被制御回路３０の種別に応じたファームウェアデザインデータが格納されているアドレス範囲のデータを順次ＲＯＭ４１から読み出してＳＲＡＭ４６にロードする（Ｓ３）。これにより被制御回路３０の種別に応じたファームウェアの書き換えを行う。
【００２９】
なお、第１・第２の実施形態では、被制御回路の種別をシリアルＲＯＭ３２にあらかじめ書き込んでおくようにしたが、たとえば図６に示すように、ディップスイッチ３２′を被制御回路３０を構成した基板上に設けておき、そのスイッチの状態によってハイレベルまたはローレベルの信号がアドレスデコーダ４２に与えられるように構成しておいてもよい。
【００３０】
また、以上に示した実施形態では、回路モジュール３１を搭載したサブ基板に被制御回路３０を構成したが、制御回路４０を構成する基板に対して回路モジュール３１を直接着脱可能なように構成しておいてもよい。その場合には、回路モジュール３１が被制御回路として作用するので、回路モジュール３１自体にその種別情報を持たせればよい。例えば回路モジュール３１に、その回路モジュール３１の固有情報（たとえば製造日、バージョン、製造者記号など）の一つとして種別情報を書き込んでおくようにすればよい。そして、アドレスデコーダ４２またはＦＰＧＡ４３がその情報を読み取れるように構成しておけばよい。また、専用の種別情報ではなく、上記バージョンデータなどによって回路モジュール３１の種別を判定するようにしてもよい。
【００３１】
また、図３に示した例では、ＦＰＧＡ４３が、その内部のＣＰＵの処理によって被制御回路３０から識別情報を読み取るようにしたが、ファームウェアデザインデータのロードの際にも図１に示した第１の実施形態の場合と同様に、ハードウェア的に（回路動作によって）その識別情報をアドレスデコーダ４２に与えるようにしてもよい。
【図面の簡単な説明】
【００３２】
【図１】第１の実施形態に係る回路システムの構成を示すブロック図
【図２】同回路システムにおける制御回路内のＲＯＭの内容を示す図
【図３】第２の実施形態に係る回路システムの構成を示すブロック図
【図４】同回路システムにおける制御回路内のＲＯＭの内容を示す図
【図５】同回路システムにおける制御回路内のＦＰＧＡ内部のＣＰＵの処理手順の例を示すフローチャート
【図６】被制御回路の種別情報を与える他の構成例を示す図
【図７】従来のプログラマブルゲートアレイ装置の構成例を示すブロック図
【符号の説明】
【００３３】
３０−被制御回路
４０−制御回路
３４，３６，４５−コネクタ
５０−パーソナルコンピュータ
【図１】
2006215984.tif 000003
【図２】
2006215984.tif 000004
【図３】
2006215984.tif 000005
【図４】
2006215984.tif 000006
【図５】
2006215984.tif 000007
【図６】
2006215984.tif 000008
【図７】
2006215984.tif 000009