(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023161625
(43)【公開日】2023-11-08
(54)【発明の名称】電子回路及びシステム
(51)【国際特許分類】
G06F 21/62 20130101AFI20231031BHJP
G06F 11/22 20060101ALI20231031BHJP
【FI】
G06F21/62
G06F11/22 606B
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2022072067
(22)【出願日】2022-04-26
(71)【出願人】
【識別番号】000001487
【氏名又は名称】フォルシアクラリオン・エレクトロニクス株式会社
(74)【代理人】
【識別番号】100078880
【弁理士】
【氏名又は名称】松岡 修平
(74)【代理人】
【識別番号】100183760
【弁理士】
【氏名又は名称】山鹿 宗貴
(72)【発明者】
【氏名】中村 浩之
【テーマコード(参考)】
5B048
【Fターム(参考)】
5B048AA11
5B048BB01
(57)【要約】
【課題】コンピュータへの不正アクセスを防止するための電子回路を提供すること。
【解決手段】電子回路は、複数の第1端子と、複数の第2端子と、各第1端子と各第2端子との配線パターンを記憶する記憶部と、ユーザにより入力された入力キーを取得する取得部と、取得部により取得された入力キーが予め設定されたキーと一致する場合、記憶部に記憶された配線パターンに従って、対応する各第1端子と各第2端子とを接続する接続部と、を含む。
【選択図】
図2
【特許請求の範囲】
【請求項1】
複数の第1端子と、
複数の第2端子と、
各前記第1端子と各前記第2端子との配線パターンを記憶する記憶部と、
ユーザにより入力された入力キーを取得する取得部と、
前記取得部により取得された入力キーが予め設定されたキーと一致する場合、前記記憶部に記憶された配線パターンに従って、対応する前記各第1端子と前記各第2端子とを接続する接続部と、を含む、
電子回路。
【請求項2】
前記複数の第1端子がデバッガ装置と接続され、
前記複数の第2端子が前記デバッガ装置によりデバッグが行われるコンピュータと接続される、
請求項1に記載の電子回路。
【請求項3】
複数の物理スイッチを含み、
前記取得部は、前記複数の物理スイッチのそれぞれのオンオフ状態に応じた値を前記入力キーとして取得する、
請求項1又は請求項2に記載の電子回路。
【請求項4】
前記複数の第1端子と前記複数の第2端子とを接続するスイッチマトリクス回路を含み、
前記取得部により取得された入力キーが予め設定されたキーと一致する場合、前記接続部は、前記記憶部に記憶された配線パターンに従って前記スイッチマトリクス回路の接続を制御することにより、対応する前記各第1端子と前記各第2端子とを接続する、
請求項1又は請求項2に記載の電子回路。
【請求項5】
一対の電子回路を含むシステムであって、
前記電子回路は、
複数の第1端子と、
複数の第2端子と、
各前記第1端子と各前記第2端子との配線パターンを記憶する記憶部と、
ユーザにより入力された入力キーを取得する取得部と、
前記取得部により取得された入力キーが予め設定されたキーと一致する場合、前記記憶部に記憶された配線パターンに従って、対応する前記各第1端子と前記各第2端子とを接続する接続部と、を含み、
一方の前記電子回路は、
前記複数の第1端子がデバッガ装置と接続され、
前記複数の第2端子が他方の前記電子回路と接続され、
前記他方の電子回路は、
前記複数の第1端子が前記一方の電子回路と接続され、
前記複数の第2端子が前記デバッガ装置によりデバッグが行われるコンピュータと接続される、
システム。
【請求項6】
前記記憶部は、複数の前記入力キーのそれぞれに対応する複数の前記配線パターンを記憶し、
前記一方の電子回路において、前記複数の入力キーのうちの第1の入力キーに対応する配線パターンに従って前記各第1端子と前記各第2端子とが接続された場合に、前記他方の電子回路において、前記取得部が、前記複数の入力キーのうち、前記第1の入力キーと対となる第2の入力キーを取得すると、前記他方の電子回路において、前記接続部が、前記第2の入力キーに対応する配線パターンに従って、対応する前記各第1端子と前記各第2端子とを接続する、
請求項5に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子回路及びシステムに関する。
【背景技術】
【0002】
ソフトウェア開発者がデバッガ装置を用いてマイクロコンピュータのデバッグを行うことがある。ソフトウェア開発者は、例えば特許文献1に示されるように、JTAG(Joint Text Action Group)プロトコルでマイクロコンピュータにアクセスする。これにより、マイクロコンピュータのデバッグを行うことができる。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
例えば、権限の無いユーザや第三者(以下「第三者等」と記す。)が、デバッガ装置のような、マイクロコンピュータへのアクセスを可能にする装置を用いて、マイクロコンピュータに実装されるソフトウェアを改変することが考えられる。このような不正アクセスによるソフトウェアの改変を防止する仕組みが求められる。
【0005】
本発明は上記の事情に鑑み、コンピュータへの不正アクセスを防止するための電子回路及びシステムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の一実施形態に係る電子回路は、複数の第1端子と、複数の第2端子と、各第1端子と各第2端子との配線パターンを記憶する記憶部と、ユーザにより入力された入力キーを取得する取得部と、取得部により取得された入力キーが予め設定されたキーと一致する場合、記憶部に記憶された配線パターンに従って、対応する各第1端子と各第2端子とを接続する接続部と、を含む。
【発明の効果】
【0007】
本発明の一実施形態によれば、コンピュータへの不正アクセスを防止するための電子回路及びシステムが提供される。
【図面の簡単な説明】
【0008】
【
図1】本発明の一実施形態に係るシステムを含む各装置の接続構成例を示す図である。
【
図2】本発明の一実施形態に係る電子回路の構成を示す図である。
【
図3】本発明の一実施形態において、キーが不一致の場合の、スイッチマトリクス回路の接続例を示す図である。
【
図4】本発明の一実施形態において、キーが不一致の場合の、スイッチマトリクス回路の接続例を示す図である。
【
図5】本発明の別の一実施形態に係る内部メモリを示す図である。
【
図6】本発明の別の一実施形態に係る内部メモリを示す図である。
【
図7A】本発明の別の一実施形態において、正しい組合せのキーが入力された場合の、スイッチマトリクス回路の接続例を示す図である。
【
図7B】本発明の別の一実施形態において、正しい組合せのキーが入力されない場合の、スイッチマトリクス回路の接続例を示す図である。
【発明を実施するための形態】
【0009】
以下、本発明の一実施形態に係る電子回路及びシステムについて説明する。
【0010】
本発明の一実施形態に係る電子回路及びシステムは、コンピュータへの不正アクセスを防止するための構成を含む。不正アクセス防止の対象となるコンピュータは、例えば、ECU(Engine Control Unit)に含まれるマイクロコンピュータであり、集積回路上にSoC(System-on-a-chip)として実装される。
【0011】
なお、不正アクセス防止の対象となるコンピュータは、車両に搭載されるECU用のマイクロコンピュータに限らず、他の装置(例えば、スマートフォン、フィーチャフォン、タブレット端末、PC(Personal Computer)、PDA(Personal Digital Assistant)、PND(Portable Navigation Device)、携帯ゲーム機等)に搭載されるマイクロコンピュータであってもよい。上記において「コンピュータ」は、例えば、プロセッサ、MPU(Micro Processor Unit)、MCU(Micro Controller Unit)、CPU(Central Processing Unit)に読み替えてもよい。
【0012】
図1は、本実施形態に係るシステム1を含む各装置の接続構成例を示す図である。この接続構成例に含まれるシステム1は、一対の電子回路100、200を含む。電子回路100は、一方の電子回路の一例であり、電子回路200は、他方の電子回路の一例である。
【0013】
図1に示される接続構成例において、符号10、20、30は、それぞれ、ECU、治具、ソフトウェア開発用PCを示す。
【0014】
ECU10は、マイクロコンピュータ12及びコネクタ14(例えば6ピンのコネクタ)を備える。ECU10の集積回路上にオンチップ化されたマイクロコンピュータ12は、メモリ12Mを含む。
【0015】
メモリ12Mは、例えば、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)等の不揮発性の半導体メモリである。メモリ12Mには、ECU10の動作を制御するプログラム12Pが格納される。
【0016】
治具20は、デバッグ用治具であり、JTAGコントローラ22及びコネクタ24(例えば6ピンのコネクタ)を備える。JTAGコントローラ22は、JTAGフォーマットに準拠したコントローラであり、例えば、TDI(Test Data In)、TDO(Test Data Out)、TCK(Test Clock)、TMS(Test Mode Select)、TRST(Test Reset)等の信号線を有する。すなわち、JTAGコントローラ22は、デバッグを行うデバッガ装置の一例である。
【0017】
コネクタ24がコネクタ14と接続されることにより、JTAGコントローラ22とマイクロコンピュータ12とが通信可能に接続される。
【0018】
ソフトウェア開発用PC30は、例えばUSB(Universal Serial Bus)ケーブルを介して治具20と接続される。ソフトウェア開発用PC30は、例えば汎用のPCであり、JTAGコントローラ22の動作を制御するデバッグ用ソフトウェアがインストールされる。
【0019】
オペレータ(例えばソフトウェア開発者)は、ソフトウェア開発用PC30を操作してJTAGコントローラ22を動作させることにより、メモリ12Mに格納されたプログラム12Pに対する書き込み等を行うことができる。すなわち、オペレータは、マイクロコンピュータ12のデバッグを行うことができる。
【0020】
例えば、第三者等が、ソフトウェア開発用PC30を操作してJTAGコントローラ22を動作させることにより、メモリ12Mに格納されたプログラム12Pを改変することが考えられる。
【0021】
このような不正アクセスを防止するため、
図1に示される接続構成例では、治具20においてJTAGコントローラ22とコネクタ24との間に電子回路100が設置されるとともに、ECU10においてマイクロコンピュータ12とコネクタ14との間に電子回路200が設置される。
【0022】
JTAGコントローラ22とマイクロコンピュータ12との間の経路に電子回路100及び200を設置することにより、例えば、第三者等がマイクロコンピュータ12にアクセスすることが難しくなる。
【0023】
なお、
図1に示される接続構成例はあくまで一例である。別の例として、電子回路100は、治具20に実装されず、ECU10と治具20との間の経路に設置されてもよい。
【0024】
以下、電子回路100及び200を設置したことで不正アクセスが難しくなることの具体的説明を行う。
【0025】
図2は、主に、電子回路100及び200の構成を示す図である。本実施形態において、電子回路100と電子回路200は同一の構成を有する。そのため、電子回路100の説明をもって、電子回路200の説明は適宜省略する。
【0026】
図2に示されるように、電子回路100は、スイッチマトリクス回路110、スイッチ120、レジスタ130及びマイクロコンピュータ140を備える。マイクロコンピュータ12と区別しやすくする都合上、マイクロコンピュータ140を「制御回路140」と記す。
【0027】
スイッチ120は、例えばn個のスイッチが並べて配置されたディップスイッチ(Dual In-line Package switch)である。すなわち、スイッチ120は、複数(n個)の物理スイッチを含む。オペレータは、各物理スイッチをオン又はオフすることができる。
【0028】
レジスタ130は、スイッチ120と接続される。レジスタ130には、スイッチ120に設けられたn個のスイッチのそれぞれから、オンオフ状態に応じた値(0又は1)が入力される。すなわち、レジスタ130は、n個の値(nビットのデータ列)を保持するnビットのレジスタである。
【0029】
なお、レジスタ130に接続される要素はスイッチ120に限らない。別の実施形態では、所定のコントローラがレジスタ130に接続されてもよい。このコントローラは、例えば、オペレータの操作に応じてnビットのデータ列を発生させるソフトウェア治具が組み込まれた回路基板であり、発生されたnビットのデータ列をレジスタ130に供給する。
【0030】
制御回路140は、レジスタ130に保持されたnビットのデータ列を、スイッチマトリクス回路110の接続を制御するためのキーとして取得する。すなわち、制御回路140は、ユーザにより入力された入力キーを取得する取得部として動作する。より詳細には、取得部として動作する制御回路140は、複数の物理スイッチのそれぞれのオンオフ状態に応じた値(nビットのデータ列)を入力キーとして取得する。
【0031】
スイッチマトリクス回路110は、入出力ポートとして、複数の第1ポート112及び複数の第2ポート114を有する。一例として、第1ポート112は6つあり、また、第2ポート114も6つある。便宜上、6つの第1ポート112のそれぞれに、符号「112A」、「112B」、「112C」、「112D」、「112E」、「112F」を付す。また、図中、第1ポート112を示すブロック内に、対応するアルファベット(A~F)を付す。
【0032】
JTAGコントローラ22は、第1ポート112A~112Fと接続される6ピンのコネクタ22Cを備える。コネクタ22Cの各ピンは、TDI、TDO、TCK、TMS、TRST等の各信号線に接続される。
【0033】
第1ポート112A~112Fの配列は、JTAGコントローラ22のコネクタ22Cのピン配列に従って決まる。例えば、コネクタ22CのTDIピンに対してTDIをアサインした第1ポート212が接続され、また、TDOピンに対してTDOをアサインした第1ポート212が接続されるように、第1ポート212の配列が決まる。
【0034】
図2の例では、上から順に、第1ポート112A、112B、112C、112D、112E、112Fが配列される。例えば、第1ポート112A、112B、112C、112D、112E、112Fがそれぞれ、TDI、TDO、TCK、TMS、TRST、V
Refに対応する。以下、このピン配列を「規定ピン配列」と記す。
【0035】
スイッチマトリクス回路110は、制御回路140より入力される制御信号に従い、マトリクス状に配置された各スイッチのオンとオフを設定する。これにより、第1ポート112と第2ポート114との接続が、制御信号に応じた接続に設定される。このように、スイッチマトリクス回路110は、第1ポート112と第2ポート114とを接続する構成の一例である。
【0036】
第1ポート112は、第1端子の一例であり、第2ポート114は、第2端子の一例である。電子回路100において、第1ポート112は、デバッガ装置の一例であるJTAGコントローラ22と接続される。第2ポート114は、コネクタ24、14及び電子回路200を介して、JTAGコントローラ22によりデバッグが行われるマイクロコンピュータ12と接続される。
【0037】
制御回路140は、内部メモリ142を備える。内部メモリ142には、配線パターンCP1及びキーK1が記憶される。配線パターンCP1は、各第1ポート112と各第2ポート114とを接続するための配線パターンの一例である。すなわち、内部メモリ142は、各第1端子と各第2端子との配線パターンを記憶する記憶部として動作する。
【0038】
キーK1は、予め設定されたnビットのデータ列である。制御回路140は、レジスタ130に保持されたnビットのデータ列とキーK1とを照合する。制御回路140は、このデータ列とキーK1とが一致する場合、内部メモリ142に記憶された配線パターンCP1に従ってスイッチマトリクス回路110を制御し、第1ポート112A~112Fのそれぞれを第2ポート114のそれぞれに接続する。
【0039】
便宜上、第1ポート112Aと接続される第2ポート114に符号「114a」を付す。第1ポート112Bと接続される第2ポート114に符号「114b」を付す。第1ポート112Cと接続される第2ポート114に符号「114c」を付す。第1ポート112Dと接続される第2ポート114に符号「114d」を付す。第1ポート112Eと接続される第2ポート114に符号「114e」を付す。第1ポート112Fと接続される第2ポート114に符号「114f」を付す。また、図中、第2ポート114を示すブロック内に、対応するアルファベット(a~f)を付す。
【0040】
図3は、レジスタ130に保持されたnビットのデータ列とキーK1とが一致しない場合の、第1ポート112と第2ポート114との接続例を示す図である。
【0041】
制御回路140は、レジスタ130に保持されたnビットのデータ列とキーK1とを照合し、双方が一致しない場合、例えば
図3に示される配線パターンでスイッチマトリクス回路110の接続を制御する。
【0042】
図3の例によれば、各第1ポート112A~112Fに入力される信号が第2ポート114側で検出されない。そのため、キーK1を知らない第三者等は、マイクロコンピュータ12にアクセスすることができない。また、例えばJTAGコントローラ22の出力ラインに正しい信号が流れないため、第三者等が例えば測定器を用いて出力ラインの通信状態を解析した場合にも、その解析データをもとにマイクロコンピュータ12にアクセスしてプログラム12Pを改変することは難しい。
【0043】
このように、本実施形態によれば、JTAGコントローラ22とマイクロコンピュータ12との間の経路に電子回路100を設置することで、第三者等による不正アクセスを防止することができる。
【0044】
電子回路200も電子回路100と同様に、スイッチマトリクス回路210、スイッチ220、レジスタ230及び制御回路240を備える。スイッチマトリクス回路210も、スイッチマトリクス回路110と同様に、入出力ポートとして、複数(例えば6つ)の第1ポート212及び複数(例えば6つ)の第2ポート214を有する。
【0045】
電子回路200において、第1ポート212は、コネクタ14、24及び電子回路100を介して、デバッガ装置の一例であるJTAGコントローラ22と接続される。第2ポート214は、JTAGコントローラ22によりデバッグが行われるマイクロコンピュータ12と接続される。
【0046】
電子回路100の第2ポート114a~114fは、それぞれ、コネクタ24及び14を介して電子回路200の各第1ポート212に接続される。便宜上、第2ポート114aと接続される第1ポート212に符号「212a」を付す。第2ポート114bと接続される第1ポート212に符号「212b」を付す。第2ポート114cと接続される第1ポート212に符号「212c」を付す。第2ポート114dと接続される第1ポート212に符号「212d」を付す。第2ポート114eと接続される第1ポート212に符号「212e」を付す。第2ポート114fと接続される第1ポート212に符号「212f」を付す。また、図中、第1ポート212を示すブロック内に、対応するアルファベット(a~f)を付す。
【0047】
また、便宜上、6つの第2ポート214のそれぞれに、符号「214A」、「214B」、「214C」、「214D」、「214E」、「214F」を付す。また、図中、第2ポート214を示すブロック内に、対応するアルファベット(A~F)を付す。
【0048】
マイクロコンピュータ12は、第2ポート214A~214Fと接続される6ピンのコネクタ12Cを備える。コネクタ12Cの各ピンも、JTAGコントローラ22のコネクタ22Cと同様に、TDI、TDO、TCK、TMS、TRST等の各信号線に接続される。
【0049】
第2ポート214A~214Fの配列も、第1ポート112A~112Fと同様に、マイクロコンピュータ12のコネクタ12Cのピン配列に従って決まる。コネクタ12Cのピン配列は、JTAGコントローラ22のコネクタ22Cと同じ規定ピン配列である。そのため、第1ポート112A~112Fと同様に、上から順に、第2ポート214A、214B、214C、214D、214E、214Fが配列される。
【0050】
制御回路240の内部メモリ242にも、配線パターンCP1及びキーK1と同様の、配線パターンCP2及びキーK2が記憶される。
【0051】
制御回路240は、レジスタ230に保持されたnビットのデータ列(言い換えると、スイッチ220に含まれる各スイッチのオンオフ状態に応じた値)とキーK2とを照合する。制御回路240は、このデータ列とキーK2とが一致する場合、内部メモリ242に記憶された配線パターンCP2に従ってスイッチマトリクス回路210を制御し、第1ポート212a~212fのそれぞれを、対応する第2ポート214A~214Fのそれぞれに接続する。
【0052】
すなわち、制御回路240は、取得部により取得された入力キー(例えばnビットのデータ列)が予め設定されたキー(例えばキーK2)と一致する場合、記憶部(例えば内部メモリ242)に記憶された配線パターン(配線パターンCP2)に従ってスイッチマトリクス回路210の接続を制御することにより、対応する各第1端子と各第2端子とを接続する接続部として動作する。
【0053】
キーK1とキーK2は、同一のデータ列であってもよく、また、異なるデータ列であってもよい。
【0054】
このように、電子回路100側で入れ替えられたピン配列が電子回路200側で元のピン配列である規定ピン配列に復元される。すなわち、規定ピン配列を有する装置(JTAGコントローラ22とマイクロコンピュータ12)間に一対の電子回路100、200を設置することにより、経路中の信号線の配列が入れ替えられつつもJTAGコントローラ22とマイクロコンピュータ12との間の正常な通信が担保される。
【0055】
図4は、レジスタ230に保持されたnビットのデータ列とキーK2とが一致しない場合の、第1ポート212と第2ポート214との接続例を示す図である。
【0056】
制御回路240は、レジスタ230に保持されたnビットのデータ列とキーK2とを照合し、双方が一致しない場合、例えば
図4に示される配線パターンでスイッチマトリクス回路210の接続を制御する。
【0057】
図4の例によれば、各第1ポート212a~212fに入力される信号が第2ポート214側で検出されない。例えば、TDOが入力される第1ポート212bは、TCKをアサインした第2ポート214Cと接続される。そのため、第2ポート214Cでは、正常な波形が検出されない。マイクロコンピュータ12に正しい信号が流れないため、キーK2を知らない第三者等は、マイクロコンピュータ12にアクセスすることができない。
【0058】
このように、本実施形態によれば、JTAGコントローラ22とマイクロコンピュータ12との間の経路に電子回路200を設置することで、第三者等による不正アクセスを防止することができる。
【0059】
また、本実施形態によれば、JTAGコントローラ22とマイクロコンピュータ12との間の経路中の信号線の接続をハードウェア的に撹乱する構成を採用するため、JTAGコントローラ22側の制御にもマイクロコンピュータ12側の制御にも影響を及ぼすことなく、第三者等による不正アクセスを防止することができる。そのため、上記経路中に電子回路100及び200を設置したことに伴うJTAGコントローラ22やマイクロコンピュータ12での不具合の発生が低く抑えられ、また、電子回路100及び200を、不正アクセス防止のための汎用の回路として種々の製品に適用することができる。そのため、不正アクセス防止のための仕組みを導入したことによるコストの増加が低く抑えられる。
【0060】
以上が本発明の例示的な実施形態の説明である。本発明の実施形態は、上記に説明したものに限定されず、本発明の技術的思想の範囲において様々な変形が可能である。例えば明細書中に例示的に明示される実施形態等又は自明な実施形態等を適宜組み合わせた内容も本願の実施形態に含まれる。
【0061】
上記の実施形態では、電子回路100、200のそれぞれに、配線パターンCP1、CP2が1つずつしか記憶されていないが、本発明の構成はこれに限らない。
【0062】
図5は、別の実施形態に係る内部メモリ142を示す図である。
図6は、別の実施形態に係る内部メモリ242を示す図である。
【0063】
図5及び
図6に示されるように、別の実施形態では、内部メモリ142、242のそれぞれ、テーブル144、244が格納される。テーブル144には、キーK1と配線パターンP1とを関連付けたレコードが複数登録される。テーブル244には、キーK2と配線パターンP2とを関連付けたレコードが複数登録される。
【0064】
例えば、レジスタ130に保持されたnビットのデータ列がキーK1aと一致する場合、制御回路140は、キーK1aに関連付けられたパターンCP1aを読み出し、読み出されたパターンCP1aに従ってスイッチマトリクス回路110を制御し、第1ポート112A~112Fのそれぞれを第2ポート114のそれぞれに接続する。
【0065】
また、例えば、レジスタ230に保持されたnビットのデータ列がキーK2aと一致する場合、制御回路240は、キーK2aに関連付けられたパターンCP2aを読み出し、読み出されたパターンCP2aに従ってスイッチマトリクス回路210を制御し、第1ポート212のそれぞれを第2ポート214A~214Fのそれぞれに接続する。
【0066】
オペレータは、電子回路100のスイッチ120にキーK1を入力するとともに、入力されたキーK1に対応するキーK2を電子回路200のスイッチ220に入力することにより、JTAGコントローラ22とマイクロコンピュータ12とを通信可能に接続することができる。一例として、キーK1aとキーK2aとが対応し、また、キーK1bとキーK2bとが対応する。
【0067】
図7A及び
図7Bは、スイッチマトリクス回路110及び210の接続例を示す図である。
【0068】
図7Aの例では、電子回路100のスイッチ120にキーK1aが入力され、且つ、キーK1aに対応するキーK2aが電子回路200のスイッチ220に入力されたものとする。この場合、スイッチマトリクス回路110側で入れ替えられたピン配列がスイッチマトリクス回路210側で元のピン配列である規定ピン配列に復元される。そのため、JTAGコントローラ22とマイクロコンピュータ12とが通信可能に接続される。
【0069】
図7Bの例では、電子回路100のスイッチ120にキーK1aが入力され、且つ、キーK1aに対応しないキーK2bが電子回路200のスイッチ220に入力されたものとする。この場合、スイッチマトリクス回路110側で入れ替えられたピン配列がスイッチマトリクス回路210側で元のピン配列である規定ピン配列に復元されない。
【0070】
この結果、第2ポート214A(TDIポート)にTCKが入力され、第2ポート214B(TDOポート)にTRSTが入力され、第2ポート214C(TCKポート)にTDIが入力され、第2ポート214D(TMSポート)にVRefが入力され、第2ポート214E(TRSTポート)にTMSが入力され、第2ポート214F(VRefポート)にTDOが入力される。そのため、JTAGコントローラ22とマイクロコンピュータ12とが正常に通信することができない。
【0071】
このように、別の実施形態では、正しい組合せのキーK1とキーK2が入力されなければ、JTAGコントローラ22とマイクロコンピュータ12とが正常に通信することができない。
【0072】
別の実施形態において、記憶部として動作する内部メモリ142及び242は、複数の入力キーのそれぞれに対応する複数の配線パターンを記憶する。一方の電子回路(例えば電子回路100)において、複数の入力キーのうちの第1の入力キー(例えばキーK1a)に対応する配線パターン(例えばパターンCP1a)に従って各第1端子と各第2端子とが接続された場合に、他方の電子回路(例えば電子回路200)において、取得部として動作する制御回路240が、複数の入力キーのうち、第1の入力キーと対となる第2の入力キー(例えばキーK2a)を取得すると、接続部として動作する制御回路240が、第2の入力キーに対応する配線パターン(例えばパターンCP2a)に従って、対応する各第1端子と各第2端子とを接続する。
【0073】
なお、第1の入力キーとこれに対応する第2の入力キーは、同一のデータ列であってもよく、また、異なるデータ列であってもよい。
【0074】
また、別の実施形態において、有効なキーK1とキーK2との組合せが製品毎(例えば車種毎)に変えられてもよい。
【0075】
例えば、製品A向けのECU10に備えられる電子回路200では、キーK2aが入力されたときだけキーの照合が成功となる。また、製品B向けのECU10に備えられる電子回路200では、キーK2bが入力されたときだけキーの照合が成功となる。
【0076】
製品Aの例では、電子回路100、200のそれぞれにおいて、キーK1a、K2aが入力されたときに限り、JTAGコントローラ22とマイクロコンピュータ12とが通信可能に接続される。製品Bの例では、電子回路100、200のそれぞれにおいて、キーK1b、K2bが入力されたときに限り、JTAGコントローラ22とマイクロコンピュータ12とが通信可能に接続される。
【0077】
このように、製品毎に設定されたキー(キーK1とキーK2)が入力されない限り、JTAGコントローラ22とマイクロコンピュータ12とが正常に通信できないようにしてもよい。
【符号の説明】
【0078】
1 :システム
10 :ECU
12 :マイクロコンピュータ
12M :メモリ
12P :プログラム
20 :治具
22 :JTAGコントローラ
100 :電子回路
110 :スイッチマトリクス回路
112 :第1ポート
114 :第2ポート
120 :スイッチ
130 :レジスタ
140 :制御回路
142 :内部メモリ
200 :電子回路
210 :スイッチマトリクス回路
212 :第1ポート
214 :第2ポート
220 :スイッチ
230 :レジスタ
240 :制御回路
242 :内部メモリ