(57)【要約】【課題】  ＪＴＡＧなどのデバッグ専用インターフェイスのコネクターが省略されていても簡単な作業でデバッグを可能とする。【解決手段】  ファイヤーウォールブロック１６が、内部バス１２と汎用周辺機器インターフェイスコントローラー１１との間に配置されている。ファイヤーウォールブロック１６は、汎用周辺機器インターフェイスコントローラー１１のコネクター１１ａに接続されたデバッグシステム２から認証キー３１を受け付け、デバッグシステム２から受け付けた認証キー３１と正規認証キーとを比較して認証を実行し、認証に成功した場合、デバッグアクセスを許可し、認証に失敗した場合、デバッグアクセスを禁止する。【選択図】  図１
2018128874.tif 000002
【特許請求の範囲】
【請求項１】
汎用周辺機器インターフェイスコントローラーと、
前記汎用周辺機器インターフェイスコントローラーのコネクターと、
内部バスと、
前記内部バスに接続されたプロセッサーと、
前記内部バスと前記汎用周辺機器インターフェイスコントローラーとの間に配置されたファイヤーウォールブロックとを備え、
前記ファイヤーウォールブロックは、前記コネクターに接続されたデバッグシステムから認証キーを受け付け、前記デバッグシステムから受け付けた前記認証キーと正規認証キーとを比較して認証を実行し、前記認証に成功した場合、デバッグアクセスを許可し、前記認証に失敗した場合、前記デバッグアクセスを禁止し、
前記デバッグアクセスは、前記デバッグシステムによる前記コネクターおよび前記汎用周辺機器インターフェイスコントローラーを介した、前記内部バスへ接続されているすべてのリソースに対するリードおよびライトであること、
を特徴とする電子機器。
【請求項２】
前記内部バスは、高速バスと、前記高速バスより低速な低速バスと、前記高速バスと前記低速バスとの間に配置されるバスブリッジとを備え、
前記プロセッサーは、前記高速バスに接続されており、
前記ファイヤーウォールブロックは、（ａ）前記高速バスと前記低速バスとに接続されており、（ｂ）前記高速バス、前記バスブリッジおよび前記低速バスを介して前記プロセッサーから正規認証キーを取得すること、
を特徴とする請求項１記載の電子機器。
【請求項３】
ネットワークに接続されるネットワークインターフェイスをさらに備え、
前記プロセッサーは、前記正規認証キーを保持しており、前記ネットワークインターフェイスを介して、前記ネットワーク上の所定のサーバーから正規認証キーを取得して、取得した前記正規認証キーで、保持している前記正規認証キーを更新すること、
を特徴とする請求項１または請求項２記載の電子機器。
【請求項４】
ネットワークに接続されるネットワークインターフェイスをさらに備え、
前記プロセッサーは、前記認証の認証結果を、前記ネットワークインターフェイスを介して、前記ネットワーク上の所定のサーバーへ通知すること、
を特徴とする請求項１または請求項２記載の電子機器。
【請求項５】
前記汎用周辺機器インターフェイスコントローラーは、ユニバーサルシリアルバスまたはＰＣＩエクスプレスのインターフェイスであることを特徴とする請求項１から請求項４のいずれか１項記載の電子機器。
【請求項６】
デバッグ専用インターフェイスのコネクターを備えていないことを特徴とする請求項１から請求項５のいずれか１項記載の電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器に関するものである。
【背景技術】
【０００２】
ある組み込みシステムは、ＪＴＡＧ（Joint Test Action Group）インターフェイス回路を備え、外部装置による当該組み込みシステムのデバッグを可能にしている（例えば特許文献１参照）。さらに、この組み込みシステムでは、デバッグモードにおいて、ユーザープログラムが高速シリアル通信インターフェイスにより受信されダイレクトメモリーコントローラーにより特定のメモリー領域（ユーザーモードにおいて実行されるユーザープログラムが格納される領域）に格納される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２００５／０２２３９０号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述のシステムでは、プログラムの転送に高速シリアル通信インターフェイスが使用されるものの、デバッグについては、ＪＴＡＧインターフェイス回路が使用される。
【０００５】
開発段階では、このようなＪＴＡＧインターフェイス回路にはＪＴＡＧコネクターが設けられており、デバッグ時には、外部装置（デバッグシステム）がＪＴＡＧコネクターに接続される。
【０００６】
しかしながら、市場に出荷される電子機器においては、このようなＪＴＡＧコネクターはコスト削減のために実装されていない。そのため、出荷後の電子機器のデバッグを行う場合には、電子機器を分解し、ＪＴＡＧコネクターを組み込みシステムの基板に半田付けしてから、デバッグシステムをそのＪＴＡＧコネクターに接続する必要がある。このように、ＪＴＡＧコネクターが省略されている電子機器のデバッグには大規模な作業が要求される。
【０００７】
本発明は、上記の問題に鑑みてなされたものであり、デバッグ専用インターフェイスのコネクターが省略されていても、簡単な作業でデバッグを可能にする電子機器を得ることを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係る電子機器は、汎用周辺機器インターフェイスコントローラーと、前記汎用周辺機器インターフェイスコントローラーのコネクターと、内部バスと、前記内部バスに接続されたプロセッサーと、前記内部バスと前記汎用周辺機器インターフェイスコントローラーとの間に配置されたファイヤーウォールブロックとを備える。前記ファイヤーウォールブロックは、前記コネクターに接続されたデバッグシステムから認証キーを受け付け、前記デバッグシステムから受け付けた前記認証キーと正規認証キーとを比較して認証を実行し、前記認証に成功した場合、デバッグアクセスを許可し、前記認証に失敗した場合、前記デバッグアクセスを禁止する。前記デバッグアクセスは、前記デバッグシステムによる前記コネクターおよび前記汎用周辺機器インターフェイスコントローラーを介した、前記内部バスへ接続されているすべてのリソースに対するリードおよびライトである。
【発明の効果】
【０００９】
本発明によれば、電子機器において、デバッグ専用インターフェイスのコネクターが省略されていても、簡単な作業でデバッグが可能となる。
【００１０】
本発明の上記又は他の目的、特徴および優位性は、添付の図面とともに以下の詳細な説明から更に明らかになる。
【図面の簡単な説明】
【００１１】
【図１】図１は、本発明の実施の形態に係る電子機器の構成を示すブロック図である。
【図２】図２は、図１に示す電子機器の動作について説明するフローチャートである。
【発明を実施するための形態】
【００１２】
以下、図に基づいて本発明の実施の形態を説明する。
【００１３】
図１は、本発明の実施の形態に係る電子機器の構成を示すブロック図である。
【００１４】
図１に示す電子機器１は、組み込みシステムを内蔵している。具体的には、電子機器１は、汎用周辺機器インターフェイスコントローラー１１と、汎用周辺機器インターフェイスコントローラー１１のコネクター１１ａと、内部バス１２，１３と、内部バス１２に接続されたプロセッサー１４と、内部バス１２に接続されたメモリーコントローラー１５と、メモリーコントローラー１５に接続されたメモリー１５ａと、内部バス１２と汎用周辺機器インターフェイスコントローラー１１との間に配置されたファイヤーウォールブロック１６とを備える。
【００１５】
この実施の形態では、汎用周辺機器インターフェイスコントローラー１１は、ユニバーサルシリアルバスまたはＰＣＩ（Peripheral Component Interconnect ）エクスプレスのインターフェイスである。
【００１６】
また、この実施の形態では、電子機器１は、ＪＴＡＧなどのデバッグ専用インターフェイスのコネクターを備えていない。
【００１７】
この実施の形態では、内部バス１２は、例えばＡＸＩ（Advanced eXtensible Interface）などといった高速バス（つまり、内部バス１３より高速なバス）であり、内部バス１３は、例えばＡＰＢ（Advanced Peripheral Bus）などといった低速バス（つまり、内部バス１２より低速なバス）である。
【００１８】
プロセッサー１４は、ＣＰＵ（Central Processing Unit）などを内蔵し、プログラムを実行する。メモリーコントローラー１５は、メモリー１５ａに対するリードライトを行う。メモリー１５ａは、データやプログラムを格納する例えばＤＲＡＭ（Dynamic Random Access Memory）である。
【００１９】
ファイヤーウォールブロック１６は、内部バス１２に対するリードまたはライトのコマンドまたはデータを中継する回路であり、コネクター１１ａに接続されたデバッグシステム２から認証キー３１を受け付け、デバッグシステム２から受け付けた認証キー３１と正規認証キーとを比較して認証を実行し、認証に成功した場合、デバッグアクセスを許可し、認証に失敗した場合、デバッグアクセスを禁止する。
【００２０】
ここでいうデバッグアクセスは、デバッグシステム２によるコネクター１１ａおよび汎用周辺機器インターフェイスコントローラー１１を介した、内部バス１２，１３へ接続されているすべてのリソース（図１におけるプロセッサー１４、メモリー１５ａ（メモリーコントローラー１５、ネットワークインターフェイス１８、ＧＰＩＯ（General Purpose Input/Output）コントローラー１９、省電力管理コントローラー２０、割り込みコントローラー２１など）に対するリードおよびライトである。
【００２１】
なお、この実施の形態１では、ファイヤーウォールブロック１６は、内部バス１２と内部バス１３とに接続されており、内部バス１２、バスブリッジ１７および内部バス１３を介してプロセッサー１４から正規認証キーを取得する。つまり、ファイヤーウォールブロック１６は、内部バス１２からアクセス可能な領域を有さず、コマンドやデータの透過または遮断を行い、他方、内部バス１３からアクセス可能な領域を有し、プロセッサー１４は、その領域に正規認証キーを書き込む。
【００２２】
また、デバッグシステム２は、例えばデバッグプログラムがインストールされた端末装置であり、認証キー３１を予め取得し保持している。なお、正規ユーザーの場合、認証キー３１は、例えば電子機器１のベンダーから配布された正規認証キーである。
【００２３】
バスブリッジ１７は、内部バス１２と内部バス１３との間に配置され、両者を互いに接続し、両者間でリードまたはライトのコマンドやデータを中継する。
【００２４】
ネットワークインターフェイス１８は、インターネットなどのネットワーク３に接続可能となっている。
【００２５】
この実施の形態では、プロセッサー１４は、上述の正規認証キーをメモリー１５ａまたは図示せぬ記憶装置において保持しており、ネットワークインターフェイス１８を介して、ネットワーク３上の所定のサーバーから正規認証キーを取得して、取得した正規認証キーで、保持している正規認証キーを更新する。定期的にあるいは所定のタイミングで繰り返し正規認証キーを更新するようにしてもよい。
【００２６】
また、この実施の形態では、プロセッサー１４は、上述の認証の認証結果を、ネットワークインターフェイス１８を介して、ネットワーク３上の所定のサーバーへ通知する。これにより、遠隔のサーバーにおいて、当該電子機器１への不正アクセスを検出することができる。
【００２７】
さらに、内部バス１３には、ＧＰＩＯコントローラー１９、省電力管理コントローラー２０、割り込みコントローラー２１などが接続されている。
【００２８】
次に、上記電子機器１の動作について説明する。図２は、図１に示す電子機器１の動作について説明するフローチャートである。
【００２９】
電子機器１のプロセッサー１４は、上述のように正規認証キーを予め保持している。また、デバッグシステム２は、配布された認証キー３１を保持している。
【００３０】
デバッグを実行する場合、デバッグシステム２は、まず、ケーブルなどでコネクター１１ａに接続される。そして、デバッグシステム２は、認証キー３１を汎用周辺機器インターフェイスコントローラー１１へ出力する。
【００３１】
他方、ファイヤーウォールブロック１６は、上述のようにプロセッサー１４から正規認証キーを取得する。そして、ファイヤーウォールブロック１６は、汎用周辺機器インターフェイスコントローラー１１を介して認証キー３１を受け付け（ステップＳ１）、受け付けた認証キー３１と正規認証キーとを比較して認証を実行し、両者が一致した場合、認証が成功したと判定し、両者が一致しない場合、認証が失敗したと判定する（ステップＳ２）。
【００３２】
そして、認証が成功した場合、ファイヤーウォールブロック１６は、コネクター１１ａへのデバッグシステム２の接続が解除されるまで、当該電子機器１内の全リソース領域へのデバッグアクセスを許可する（ステップＳ３）。つまり、コネクター１１ａへのデバッグシステム２の接続の解除が汎用周辺機器インターフェイスコントローラー１１により検出された時点で、メモリー１５ａ以外のリソース領域へのデバッグアクセスが禁止される。その後、デバッグアクセスのリードコマンドやライトコマンドが、デバッグシステム２から供給されると、そのコマンドやリードライトのデータがファイヤーウォールブロック１６により中継される（ステップＳ４）。したがって、認証が成功した場合、デバッグシステム２は、電子機器１内の特定領域の値のダンプデータを作成したり、その値の書き換えを実行できる。
【００３３】
一方、認証が失敗した場合、ファイヤーウォールブロック１６は、デバッグアクセスの禁止を継続する（ステップＳ５）。これにより、通常の周辺機器からのアクセスと同様に、デバッグシステム２からメモリー１５ａ以外のリソースへのアクセスが禁止される。したがって、認証が失敗した場合、デバッグシステム２は、電子機器１内の特定領域の値のダンプデータを作成しても、無効値のダンプデータとなり、値の書き換えも、ファイヤーウォールブロック１６により遮断され実行されない。
【００３４】
以上のように、上記実施の形態によれば、ファイヤーウォールブロック１６が、内部バス１２と汎用周辺機器インターフェイスコントローラー１１との間に配置されている。ファイヤーウォールブロック１６は、汎用周辺機器インターフェイスコントローラー１１のコネクター１１ａに接続されたデバッグシステム２から認証キー３１を受け付け、デバッグシステム２から受け付けた認証キー３１と正規認証キーとを比較して認証を実行し、認証に成功した場合、デバッグアクセスを許可し、認証に失敗した場合、デバッグアクセスを禁止する。
【００３５】
これにより、ＪＴＡＧなどのデバッグ専用インターフェイスのコネクターが省略されていても、ＵＳＢやＰＣＩＥｘｐｒｅｓｓなどの汎用機器インターフェイスを使用してデバッグが行えるため、簡単な作業でデバッグが可能となる。さらに、認証キー３１に基づく認証によって、その汎用機器インターフェイスを利用した内部リソースへの不正アクセスが抑制される。
【００３６】
なお、上述の実施の形態に対する様々な変更および修正については、当業者には明らかである。そのような変更および修正は、その主題の趣旨および範囲から離れることなく、かつ、意図された利点を弱めることなく行われてもよい。つまり、そのような変更および修正が請求の範囲に含まれることを意図している。
【００３７】
例えば、上記実施の形態において、正規認証キー（および認証キー３１）は、電子機器１に固有なものとしてもよい。例えば、電子機器１に固有な識別子（例えばＭＡＣ（Media Access Control）アドレスなど）から正規認証キーが電子機器１により生成され、上述のサーバーへ通知され、上述のサーバーからユーザーへ認証キー３１として配布されるようにしてもよい。
【産業上の利用可能性】
【００３８】
本発明は、例えば、組み込みシステムを内蔵する電子機器に適用可能である。
【符号の説明】
【００３９】
１  電子機器
２  デバッグシステム
３  ネットワーク
１１  汎用周辺機器インターフェイスコントローラー
１１ａ  コネクター
１２，１３  内部バス
１４  プロセッサー
１６  ファイヤーウォールブロック
１７  バスブリッジ
１８  ネットワークインターフェイス
【図１】
2018128874.tif 000003
【図２】
2018128874.tif 000004