(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-08-15
(45)【発行日】2022-08-23
(54)【発明の名称】配線トポロジの識別方法
(51)【国際特許分類】
G01R 31/56 20200101AFI20220816BHJP
H03K 19/177 20200101ALI20220816BHJP
【FI】
G01R31/56
H03K19/177
【外国語出願】
(21)【出願番号】P 2018088626
(22)【出願日】2018-05-02
【審査請求日】2020-12-10
(32)【優先日】2017-05-05
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】506012213
【氏名又は名称】ディスペース ゲー・エム・ベー・ハー
【氏名又は名称原語表記】dSPACE GmbH
【住所又は居所原語表記】Rathenaustr.26,D-33102 Paderborn, Germany
(74)【代理人】
【識別番号】100114890
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100135633
【氏名又は名称】二宮 浩康
(74)【代理人】
【識別番号】100162880
【氏名又は名称】上島 類
(72)【発明者】
【氏名】ドミニク ルーベライ
(72)【発明者】
【氏名】マーク シュレンガー
(72)【発明者】
【氏名】ハイコ カルテ
【審査官】田口 孝明
(56)【参考文献】
【文献】特開2006-005708(JP,A)
【文献】特表平08-508599(JP,A)
【文献】米国特許第05596742(US,A)
【文献】特開2003-050258(JP,A)
【文献】特表2005-500625(JP,A)
【文献】米国特許出願公開第2008/0092001(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
IPC G01R 31/50-31/74、
31/28、
31/30、
31/302、
31/316、
31/317、
31/3183、
31/3185、
31/319、
H03K 19/098-19/23
(57)【特許請求の範囲】
【請求項1】
少なくとも2つのFPGA(1,2)間の配線トポロジを識別する方法であって、
第1のFPGA(1)は
、第1のインタフェースピン(5)を含む複数のインタフェースピン(3,4,5,6
)を備えており、
第2のFPGA(2)は
、第2のインタフェースピン(8)を含む複数のインタフェースピン(7,8,9,10
)を備えており、
複数の線路(11,12)が前記第1のFPGA(1)のインタフェースピン(3,4,5,6)の少なくとも一部と前記第2のFPGA(2)のインタフェースピン(7,8,9,10)の少なくとも一部とを接続し、
前記第1のインタフェースピン(5)に第1のドライバ(13)が設けられており、
前記第2のインタフェースピン(8)に第1の受信レジスタ(14)が実装され、
前記第1のドライバ(13)に第1の送信レジスタ(15)が実装され、
前記
第1の送信レジスタ(15)によって、前記第1のドライバ(13)から出力される信号(17)が決定され、
前記第1のドライバ(13)は
、第1のアクティブ化信号(16)によってアクティブ化され、
前記第1のドライバ(13)は
、第1の信号(17)を送信し、
前記第1の受信レジスタ(14)を用いて、前記第1の信号(17)が前記第2のインタフェースピン(
8)において受信されるか否かを読出し、前記第1のドライバ(13)の前記第1の信号(17)が前記第2のインタフェースピン(8)において受信される場合、前記第2のインタフェースピン(8)を前記第1のインタフェースピン(5)に割り当てる、
方法。
【請求項2】
前記第1のアクティブ化信号(16)を前記第1のドライバ(13)へ送る第1のアクティブ化レジスタ(20)を、
前記第1のドライバ(13)に実装する、
請求項1記載の方法。
【請求項3】
前記
第1のアクティブ化信号(16)を制御インスタンスによって前記
第1のドライバ(13)へ直接伝送する、
請求項1記載の方法。
【請求項4】
制御インスタンスを介して前記
第1の受信レジスタ(14
)、前記第1の送信レジスタ(15)および第1のアクティブ化レジスタ(20)を呼び出す、
請求項1から3までのいずれか1項記載の方法。
【請求項5】
前記第1のインタフェースピン(5)を前記第2のインタフェースピン(8)に接続すべきとの情報が既知であり、
前記第1の信号(17)が前記第2のインタフェースピン(8)において受信されない場合、警告を出力する、
請求項1から4までのいずれか1項記載の方法。
【請求項6】
前記第1のドライバ(13)
のために複数のアクティブ化信号(16)を実装し、
前
記アクティブ化信号(16)は
、それぞれ個別に
前記第1のドライバ(13)をアクティブ化し、
アクティブな
前記第1のドライバ(13)の信号を受信する全てのインタフェースピン(3,4,5,6,7,8,9,10)を
、アクティブな
前記第1のドライバ(13)のインタフェースピン(3,4,5,6,7,8,9,10)に割り当てる、
請求項1から5までのいずれか1項記載の方法。
【請求項7】
第1のFPGAプログラム(30)についての第1の情報が既知であり、
前記第1のFPGA(1)のどのインタフェースピン(3,4,5,6)についてアクティブ化信号(16)、送信レジスタ(15)および/または受信レジスタ(14)を実装するかを、前記第1の情報が特定する、
請求項1から6までのいずれか1項記載の方法。
【請求項8】
前記第1のFPGAプログラム(30)を前記第1の送信レジスタ(15)と共に前記第1のFPGA(1)上に実装し、
前記第1のFPGA(1)上に第1の送信マルチプレクサ(40)を実装し、
前記第1の送信マルチプレクサ(40)は
、前記第1のドライバ(13)を前記第1の送信レジスタ(15)および前記第1のFPGAプログラム(30)に接続し、
前記第1の送信マルチプレクサ(40)を介して、前記第1のドライバ(13)によって出力すべき信号(17)を前記第1の送信レジスタ(15)が決定するかまたは前記第1のFPGAプログラム(30)が決定するかを制御する、
請求項7記載の方法。
【請求項9】
第2のFPGAプログラム(30)についての第2の情報が既知であり、
前記第2のFPGA(2)のどのインタフェースピン(7,8,9,10)についてアクティブ化信号(16)、送信レジスタ(15)および/または受信レジスタ(14)を実装するかを、前記第2の情報が特定する、
請求項1から8までのいずれか1項記載の方法。
【請求項10】
前記第2のFPGAプログラム(30)を第2の送信レジスタ(15)と共に前記第2のFPGA(2)上に実装し、
前記第2のFPGA(2)上に第2の送信マルチプレクサ(40)を実装し、
前記第2の送信マルチプレクサ(40)は
、第2のドライバ(13)を前記第2の送信レジスタ(15)および前記第2のFPGAプログラム(30)に接続し、
前記第2の送信マルチプレクサ(40)を介して、前記第2のドライバ(13)によって出力すべき信号(17)を前記第2の送信レジスタ(15)が決定するかまたは前記第2のFPGAプログラム(30)が決定するかを制御する、
請求項9記載の方法。
【請求項11】
第3のインタフェースピン(50)に第2の受信レジスタ(14)を実装し、
前記第2の受信レジスタ(14)を用いて、前記第1の信号(17)が前記第3のインタフェースピン(50)において受信されるか否かを読出し、
前記第1の信号(17)が前記第3のインタフェースピン(50)において受信される場合、前記第3のインタフェースピン(50)を前記第1のインタフェースピン(5)に割り当てる、
請求項1から10までのいずれか1項記載の方法。
【請求項12】
前記第2のインタフェースピン(8)に第2のアクティブ化信号(16)を実装し、
前記第1の信号(17)が前記第2のインタフェースピン(8)において受信される場合、警告を出力する、
請求項1から11までのいずれか1項記載の方法。
【請求項13】
全てのインタフェースピン(3,4,5,6,7,8,9,10,50,51,52)にそれぞれアクティブ化信号(16)、送信レジスタ(15)および受信レジスタ(14)を実装する、
請求項1から6までのいずれか1項記載の方法。
【請求項14】
配線トポロジの全部を特定する、
請求項13記載の方法。
【請求項15】
前記
第1のアクティブ化信号(16)ごとに
第1のアクティブ化レジスタ(20)を実装する、
請求項1から14までのいずれか1項記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、少なくとも2つのFPGA間の配線トポロジを識別する方法に関する。
【0002】
ディスペース(dSPACE)社の2017年の製品カタログのDS5203についての第451頁から、32ビット幅のバスを介したFPGA間通信が公知である。
【0003】
この従来技術の欠点は、通信に必要な線路が適正に配線されて無傷であるか否かの検査が非常に面倒であることである。不具合のある配線は、FPGAの通信エラーまたは破壊の原因になり得る。
【0004】
このことを背景として本発明の課題は、従来技術を改良した方法を実現することである。
【0005】
前記課題は、請求項1記載の発明特定事項を具備する方法によって解決される。従属請求項に本発明の有利な実施形態が記載されている。
【0006】
本発明の対象は、少なくとも2つのFPGA間の配線トポロジを識別する方法であって、
第1のFPGAは複数のインタフェースピン、特に第1のインタフェースピンを備えており、
第2のFPGAは複数のインタフェースピン、特に第2のインタフェースピンを備えており、
複数の線路が第1のFPGAのインタフェースピンの少なくとも一部と第2のFPGAのインタフェースピンの少なくとも一部とを接続し、
第1のインタフェースピンに第1のドライバが設けられており、
第2のインタフェースピンに第1の受信レジスタが実装され、
第1のドライバに第1の送信レジスタが実装され、
送信レジスタによって、第1のドライバから出力される信号が決定され、
第1のドライバは第1のアクティブ化信号によってアクティブ化され、
第1のドライバは第1の信号を送信し、
第1の受信レジスタを用いて、第1の信号が第2のインタフェースピンにおいて受信されるか否かを読出し、
第1のドライバの信号が第2のインタフェースピンにおいて受信される場合、第2のインタフェースピンを第1のインタフェースピンに割り当てる
方法である。
【0007】
ここで留意すべき点は、2つのFPGAの異なるピン間の接続について本方法を複数回実施できることである。また、本発明をさらに、第1のFPGAの1つまたは複数のピンと第3のFPGAの1つまたは複数のピンとの間においても実施することができる。第1のドライバの信号を複数のインタフェースピンにおいて受信することができ、その際には、第1のドライバの信号を受信した全てのインタフェースピンを第1のインタフェースピンに割り当てる。
【0008】
FPGAには典型的には、インタフェースピンごとにIOドライバが設けられている。かかるIOドライバは
図1に示されており、後で詳細に説明する。
【0009】
本発明では、第2のインタフェースピンに設けられた読出ドライバの出力端が第1の受信レジスタの入力端に接続されている。本発明では、第1の送信レジスタの出力端を第1のドライバの書込ドライバの入力信号に接続する。
【0010】
第1のインタフェースピンへの第2のインタフェースピンの割り当てを記憶するか、またはユーザへ直接出力することができる。記憶はたとえば、表、データベースの形態で、または他の形態のファイルもしくは情報構造で行うことができる。出力は、グラフィック形式もしくはテキスト形式のモニタ出力として、または印刷として行うことができる。
【0011】
本発明の方法の利点は、上述の割り当てを介して、第1のインタフェースピンと第2のインタフェースピンとの間に機能する接続が成立していることが直接分かることである。よって、手動の検査が不要となる。第1のインタフェースピンと第2のインタフェースピンとの間に接続が成立しているか否かが検査され、なおかつ、当該接続が適正に機能しているか否かも検査される。このことによって、肉眼では見えない接続の損傷も検出することができる。
【0012】
第1の信号は、信号値列とすることもできる。既知の信号値列が適正に接続部を介して伝送されるか否かを検査することにより、送信された信号と受信された信号との偶然の同一性を回避することができる。
【0013】
一実施形態では、第1のアクティブ化信号をドライバへ送る第1のアクティブ化レジスタを第1のドライバに実装する。
【0014】
本実施形態では、アクティブ化信号をドライバへ直接送信するのではなく、アクティブ化レジスタに一時記憶する。
【0015】
代替的な一実施形態では、アクティブ化信号を制御インスタンスによってドライバへ直接伝送する。
【0016】
有利な一実施形態では、制御インスタンスを介してレジスタを呼び出す。
【0017】
制御インスタンスはFPGA上に実装することができ、または別のユニットとすることもできる。制御インスタンスはたとえばプロセッサコアの形態で第1および/または第2のFPGA上に実装することができる。制御インスタンスはまた、第1および第2のFPGAに接続されたコンピュータとすることもできる。レジスタは制御インスタンスによって、たとえばアドレスバスを介して呼び出されることができる。これに代えて、レジスタを制御インスタンスに直接接続すること、または、たとえばマルチプレクサを介して間接的に制御インスタンスに接続することもできる。
【0018】
他の一実施形態では、第1のインタフェースピンを第2のインタフェースピンに接続すべきとの情報が既知であり、第1の信号が第2のインタフェースピンにおいて受信されない場合に警告を出力する。
【0019】
本実施形態の利点は、ユーザがインタフェースピンの割り当てを手動で検査する必要がないことである。上述の情報はたとえば、第1のFPGAと第2のFPGAとの間の通信を規定するモデリングツールに由来するものとすることができる。警告の出力は、割り当てと同様に記憶として、またはユーザへの直接出力として行うことができる。
【0020】
もちろん上述の情報は、複数のインタフェースピン間の複数の接続について存在することができる。かかる場合には、各接続を個別に検査し、少なくともエラーのある1つの接続について、有利にはエラーのある全ての接続について、警告を出力する。
【0021】
一改良形態では、各1つのドライバごとに複数のアクティブ化信号を実装し、各アクティブ化信号はそれぞれ個別に1つのドライバをアクティブ化し、各アクティブなドライバの信号を受信する全てのインタフェースピンを、当該アクティブなドライバのインタフェースピンに割り当てる。
【0022】
有利なのは、検査の合間にFPGAを新たにコンフィギュレーションする必要なく、複数の接続を検査できることである。
【0023】
一実施形態において有利なのは、第1のFPGAプログラムについての第1の情報が既知であり、第1のFPGAのどのインタフェースピンについてアクティブ化信号、送信レジスタおよび/または受信レジスタを実装するかを第1の情報が特定することである。
【0024】
このようにして、第1のFPGAプログラムが通信しようとしているインタフェースピンの接続を特別に検査することができる。第1のFPGAプログラムが情報を送信するために使用しようとしているインタフェースピンには、アクティブ化信号および送信レジスタを実装する。第1のFPGAプログラムが情報を受け取るために使用しようとしているインタフェースピンには、受信レジスタを実装する。
【0025】
一改良形態では、第1のFPGAプログラムを第1の送信レジスタと共に第1のFPGA上に実装し、第1の送信マルチプレクサを第1のFPGA上に実装し、第1の送信マルチプレクサは第1のドライバを第1の送信レジスタおよび第1のFPGAプログラムに接続し、第1の送信マルチプレクサを介して、第1のドライバによって出力すべき信号を第1の送信レジスタが決定するかまたは第1のFPGAプログラムが決定するかを制御する。
【0026】
よって送信マルチプレクサは、第1の送信レジスタを第1のドライバの書込ドライバの入力信号に接続するか、または、第1のFPGAプログラムを第1のドライバの書込ドライバの入力信号に接続する。有利には、先に第1の送信レジスタをドライバに接続して、第1のインタフェースピンと第2のインタフェースピンとの間の接続を検査してから、その後に第1のFPGAプログラムを第1のインタフェースピンに接続する。このようにして、エラーのある可能性のある接続を第1のFPGAプログラムが使用する前に接続が検査される。送信レジスタとFPGAプログラムとを共に実装することにより、FPGAを検査後に再コンフィギュレーションする必要なく、FPGAプログラムを検査後に使用することができる。このことによって時間が削減され、正に第1のFPGAプログラムによって使用される接続について接続検査がなされることが保証される。
【0027】
送信マルチプレクサの制御は、制御インスタンスによるものとすることができる。その制御信号は、送信マルチプレクサへ直接伝送することができ、またはFPGAにレジスタを実装することができる。このレジスタは、レジスタの値が送信マルチプレクサのスイッチングを決定し、また、レジスタの値が制御インスタンスによって当該レジスタに書込まれる、というものである。他の一改良形態では、第2のFPGAプログラムについての第2の情報が既知であり、第2のFPGAのどのインタフェースピンについてアクティブ化信号、送信レジスタおよび/または受信レジスタを実装するかを第2の情報が特定する。
【0028】
このようにして、第2のFPGAプログラムが通信しようとしているインタフェースピンの接続を特別に検査することができる。第2のFPGAプログラムが情報を送信するために使用しようとしているインタフェースピンには、アクティブ化信号および送信レジスタを実装する。第2のFPGAプログラムが情報を受け取るために使用しようとしているインタフェースピンには、受信レジスタを実装する。
【0029】
一改良形態では、第2のFPGAプログラムを第2の送信レジスタと共に第2のFPGA上に実装し、第2の送信マルチプレクサを第2のFPGA上に実装し、第2の送信マルチプレクサは第2のドライバを第2の送信レジスタおよび第2のFPGAプログラムに接続し、第2の送信マルチプレクサを介して、第2のドライバによって出力すべき信号を第2の送信レジスタが決定するかまたは第2のFPGAプログラムが決定するかを制御する。
【0030】
第2の送信レジスタは有利には、第1の受信レジスタとは異なるインタフェースピンに対して実装される。このインタフェースピンは第2の線路を介して、同様に受信レジスタの実装対象となり得るFPGAの他のインタフェースピンに接続される。このようにして、第2のFPGAプログラムが信号を送信しようとしているインタフェースピンの接続を検査することができる。
【0031】
第2のドライバの書込ドライバは、アクティブ化信号を介してアクティブ化されることができる。有利には、第1のドライバと第2のドライバとを同時にはアクティブ化しない。このことによって、両ドライバが同一の接続に接続されている場合に両ドライバが互いに競合して駆動することが防止される。
【0032】
一改良形態では、第2のFPGAプログラムを第1の受信レジスタと共に第1のFPGA上に実装し、第1の受信マルチプレクサを第2のFPGA上に実装し、第1の受信マルチプレクサは第2のFPGAプログラムをドライバおよび定数に接続し、第1の受信マルチプレクサを介して、第2のFPGAプログラムがドライバの出力を受信するかまたは定数の値を受信するかを制御する。
【0033】
このようにして、接続の検査に使用される信号に依存せずに、第2のFPGAプログラムを制御下の状態に維持することができる。
【0034】
他の一実施形態では、第3のインタフェースピンに第2の受信レジスタを実装し、第2の受信レジスタを用いて、第1の信号が第3のインタフェースピンにおいて受信されるか否かを読出し、第1の信号が第3のインタフェースピンにおいて受信される場合、第3のインタフェースピンを第1のインタフェースピンに割り当てる。
【0035】
このようにして、第1のインタフェースピンに対して第2のインタフェースピンおよび第3のインタフェースピンのいずれも割り当てることができる。よって、ポイント・トゥ・マルチポイント接続を検査することができる。この割り当ても、FPGAプログラムに関する情報と比較することによって、所望の接続が機能可能であるか否かを特定することができる。
【0036】
他の一実施形態では、第2のインタフェースピンに第2のアクティブ化信号を実装し、第1の信号が第2のインタフェースピンにおいて受信される場合に警告を出力する。
【0037】
1つの線路においてアクティブとなり得る送信ドライバは、常に1つのみである。そうしないと、複数のドライバが互いに競合して駆動した場合に短絡のおそれが生じるからである。にもかかわらず、1つの接続を介して互いに接続されたインタフェースピンに複数のアクティブ化信号が実装された場合には、警告を出力する。この警告によって、ユーザは接続を変更するか、または他のインタフェースピンにアクティブ化信号を実装することができる。第1のアクティブ化信号が第1のFPGAプログラムについての情報に基づいて第1のインタフェースピンに実装され、かつ、第2のアクティブ化信号が第2のFPGAプログラムについての情報に基づいて第2のインタフェースピンに実装された場合には、両プログラムが互いに両立しない可能性があり、または、接続はエラーを有する。警告によって、ユーザはこの非両立性または接続のエラーに対して対応することができる。
【0038】
他の一実施形態では、全てのインタフェースピンにそれぞれアクティブ化信号、送信レジスタおよび受信レジスタを実装する。
【0039】
全てのインタフェースピンにアクティブ化信号およびレジスタが存在することにより、全てのインタフェースピン間の全ての接続を検査することができる。
【0040】
一発展形態では、配線トポロジの全部を特定する。
【0041】
各送信ドライバをそれぞれ各アクティブ化信号によって個別にアクティブ化し、かつ、送信された信号を受信する全てのインタフェースピンを、各アクティブな送信ドライバのインタフェースピンに割り当てることにより、配線トポロジが特定される。その後、各FPGA上で実行すべきFPGAプログラムによって通信のために使用されるインタフェースピンを特定するために、この配線トポロジを使用することができる。
【0042】
一実施形態では、アクティブ化信号ごとに1つのアクティブ化レジスタを実装する。
【0043】
その後、アクティブ化レジスタはアクティブ化信号を受け取る。このようにして、レジスタの簡単な書込みにより、アクティブ化信号をアクティブ化ないしは非アクティブ化することができる。
【0044】
以下、図面を参照して本発明を詳細に説明する。図面中、同種の要素には同一の符号を付している。図中の実施形態は非常に概略化されている。すなわち、距離および垂直方向ならびに横方向の寸法は実寸の比率通りではなく、特記しない限りは、互いに導出可能な幾何学的関係も有しない。
【図面の簡単な説明】
【0045】
【
図2】複数の線路を介して互いに接続された2つのFPGAの概略図である。
【
図3】受信レジスタを備えたIOドライバの概略図である。
【
図4】送信レジスタを備えたIOドライバの概略図である。
【
図6】送信レジスタおよびアクティブ化レジスタを備えたIOドライバの概略図である。
【
図7】受信レジスタと送信レジスタとアクティブ化レジスタとFPGAプログラムとを備えたIOドライバの概略図である。
【
図8】複数の線路を介して互いに接続された3つのFPGAの概略図である。
【0046】
図1は、FPGAに設けられている公知のIOドライバを示している。IOドライバ13は読出ドライバ60と書込ドライバ70とから構成されている。読出ドライバ60は常にアクティブ状態である。読出ドライバ60はインタフェースピンに印加された信号17を処理し、論理値61をFPGA内の機能へ供給する。書込ドライバ70はアクティブ化信号16を介してアクティブ化することができる。書込ドライバ70がアクティブ状態である場合、書込ドライバ70は印加された論理信号71を固定の電圧に変換し、これを書込ドライバ70はインタフェースピンを介して出力する。書込ドライバの入力信号によって、書込ドライバがインタフェースピンを介してどのような信号17を出力するかが決定される。
【0047】
図2は、第1のインタフェースピン5を備えた第1のFPGA1と、第2のインタフェースピン8を備えた第2のFPGA2とを示している。複数の線路11,12が、第1のFPGA1のインタフェースピン3,4,5,6の一部と第2のFPGA2のインタフェースピン7,8,9,10の一部とを接続している。第1の線路12は、第1のインタフェースピン5と第2のインタフェースピン8とを接続している。
【0048】
図3は、第2のインタフェースピン8に実装されたドライバ13を示している。第2のFPGA2に受信レジスタ14が実装され、かつ、読出ドライバ60に接続されている。第2のインタフェースピン8に印加された信号17が読出ドライバ60によって処理され、論理値61として受信レジスタ14に書込まれる。もちろん、受信レジスタ14を各IOドライバ13に実装し、ひいては各インタフェースピン3,4,5,6,7,8,9,10,50,51,52に実装することができる。
【0049】
図4は、第1のインタフェースピン5に実装されたドライバ13を示している。書込ドライバ70に送信レジスタ15が接続される。アクティブ化信号16が書込ドライバ70をアクティブ化すると、書込ドライバ16は送信レジスタ15の論理値71を、第1のインタフェースピン5を介して出力すべき信号17に変換する。もちろん、送信レジスタ15を各IOドライバ13に実装することができる。
【0050】
受信レジスタ14および送信レジスタ15に書込み、ないしはこれらから読出すために使用できる公知技術は、種々存在する。そのために必要な線路および論理回路は、ここでは図示していない。
【0051】
図5は、
図2に示されたFPGAを用いて実施できる方法を示している。同図では、第1のステップ110において第2のFPGA2上にて、
図3に示されている受信レジスタ14を第2のインタフェースピン8に実装する。第2のステップ120において、第1のFPGA1上に、
図4に示されている送信レジスタ15を第1のインタフェースピン5に実装する。第3のステップ130において、送信レジスタ15をセットする。第4のステップ140においてアクティブ化信号16をセットし、これにより、第1のインタフェースピン5の書込ドライバ70をアクティブ化する。第5のステップ150において、受信レジスタ14を読出す。第3のステップ130において送信レジスタ15にセットされた値71が第5のステップ150において受信レジスタ14から読出された場合には、第6のステップ160において両インタフェースピン5,8を互いに割り当てる。その後、この割り当てを第7のステップ170において記憶するか、またはユーザに対して出力する。第3のステップ130において送信レジスタ15にセットされた値71が第5のステップ150において受信レジスタ14から読出されなかった場合には、本方法は終了し、または、割り当てを行うことができなかったとの通知を出力する。
【0052】
各1つのドライバ13に複数の受信レジスタ14および/または送信レジスタ15を実装する場合には、複数の線路11,12を検査することができる。かかる場合には、第4~第7のステップを繰り返し実施する。アクティブ化信号16は第4のステップ140では、一度に1つの書込ドライバ70に対してのみセットされる。第5のステップ150では、全ての受信レジスタ14を読出す。第3のステップ130においてセットされた値71が第5のステップ150において読出された受信レジスタ14の全てのインタフェースピン3,4,5,6,7,8,9,10,50,51,52が、第6のステップ160において、現時点でアクティブなドライバ13を備えたインタフェースピン3,4,5,6,7,8,9,10,50,51,52に割り当てられる。その後、この割り当てを第7のステップ170において記憶するか、またはユーザに対して出力する。第4~第7のステップは、全ての各書込ドライバ70がそれぞれ1回アクティブ状態になるまで繰り返される。
【0053】
図6は、第1のインタフェースピン5に実装された他の代替的なドライバ13を示している。
図4との相違点は、第1のFPGA1にアクティブ化レジスタ20が実装されることである。アクティブ化レジスタ20は、書込ドライバ70に対するアクティブ化信号16を受け取る。本実施形態では、アクティブ化レジスタ20をセットすることによって書込ドライバ70をアクティブ化することができる。
【0054】
図7は、受信レジスタ14および送信レジスタ15をFPGAプログラム30と共にIOドライバ13に実装した図である。FPGA1,2,80上に送信マルチプレクサ40が実装される。送信マルチプレクサ40は、送信レジスタ15を書込ドライバ70に接続するか、または、FPGAプログラム30を書込ドライバ70に接続する。接続を検査するためには、最初に送信マルチプレクサ40を介して送信レジスタ15を書込ドライバに接続する。1つの送信レジスタに接続された全てのドライバについて検査が終了した後、送信マルチプレクサ40を切り替えてFPGAプログラム30を書込ドライバに接続する。さらに、受信マルチプレクサ41および定数42をFPGA上に実装する。受信マルチプレクサは定数42をFPGAプログラムに接続するか、または、読出ドライバ60から出力された信号61をFPGAプログラムへ供給する。受信レジスタはドライバに固定的に接続されており、読出ドライバによって出力された信号を受け取る。接続を検査するためには、FPGAプログラム30を定数42に接続する。検査が終了した後、受信マルチプレクサ41を切り替えて読出ドライバ60をFPGAプログラム30に接続する。受信マルチプレクサ41がFPGAプログラム30をドライバ13に接続する場合、読出ドライバ60によって出力された値61をFPGAプログラム30において使用すること、および、受信レジスタ14を介して読出すことの双方が可能である。もちろん、複数のインタフェースピンの受信レジスタおよび受信マルチプレクサを、FPGAプログラムと共に1つのFPGA上に実装することができる。
【0055】
図8は、複数の線路11,12,81,82を介して互いに接続された3つのFPGAの概略図である。第2の線路81は第1のFPGA1のインタフェースピン4を第3のFPGA80のインタフェースピン52に接続し、第3の線路82は第2のFPGA2のインタフェースピン7を第3のFPGA80のインタフェースピン51に接続する。第4の線路11は、第1のFPGA1のインタフェースピン3を第2のFPGA2のインタフェースピン10に接続する。第1の線路12は本実施例では、第1のFPGA1の第1のインタフェースピン5を、第2のFPGA2の第2のインタフェースピン8と第3のFPGA80の第3のインタフェースピン50とに接続する。もちろん、これらの接続は単なる一例である。原則的にはどのインタフェースピンも、全ての他のインタフェースピンと接続することができる。全てのインタフェースピンに送信レジスタ15および受信レジスタ14を実装する場合、全ての線路11,12,81,82を検査して配線トポロジの全部を作成することができる。一部のインタフェースピンにのみ送信レジスタ15および/または受信レジスタ14を実装する場合、配線トポロジの一部のみを作成することができる。