(57)【特許請求の範囲】
【請求項１】
狭域無線通信（ＤＳＲＣ）用の車載器に搭載され、道路側に設置されている路側無線装置からの情報に含まれる暗号情報を復号化し、前記車載器から前記路側無線装置に送信する情報の一部または全部を暗号化するセキュリティモジュールにおいて、
取得したコマンドに従って前記復号化及び暗号化を含む演算処理を実行する演算処理手段と、
前記演算処理手段が現在実行中の処理に対応するコマンドと新たに取得したコマンドとのどちらを優先させるか判断する優先順位判断手段と、
前記優先順位判断手段により前記新たなコマンドが優先すると判断された場合に該新たなコマンドに応じた演算処理を前記演算処理手段に優先実行させる優先処理手段と
を備えることを特徴とするセキュリティモジュール。
【請求項２】
請求項１記載のセキュリティモジュールにおいて、
前記車載器には前記路側無線装置との通信を行う無線通信手段と、
ユーザによって該車載器に装着されるリムーバブルな記憶媒体との通信を行う媒体通信手段とが備えられており、
優先順位判断手段は、前記路側無線装置とのＤＳＲＣ無線通信に関わる前記コマンド（ＤＳＲＣコマンドという）と前記記憶媒体との通信に伴う前記コマンド（媒体側コマンドという）とでは、前記ＤＳＲＣコマンドを優先とする
ことを特徴とするセキュリティモジュール。
【請求項３】
請求項２記載のセキュリティモジュールにおいて、
前記暗号化する情報は前記記憶媒体から読み取られたユーザ情報である
ことを特徴とするセキュリティモジュール。
【請求項４】
請求項１ないし３のいずれか記載のセキュリティモジュールにおいて、
前記車載器は自動料金収受システム（ＥＴＣ）用の車載器であることを特徴とするセキュリティモジュール。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＥＴＣ用のセキュリティモジュールの技術分野に属する。
【０００２】
【従来の技術】
有料道路での料金徴収システムとして、ノンストップ自動料金収受システム（ＥＴＣ：Ｅｌｅｃｔｒｏｎｉｃ  Ｔｏｌｌ  Ｃｏｌｌｅｃｔｉｏｎ  Ｓｙｓｔｅｍ  ）がある。このＥＴＣにおける料金所側と車両側との通信は狭域無線通信（ＤＳＲＣ）にて行われる。そのＤＳＲＣ無線を実行するための概要は図１に例示するようなもので、料金所の入口側には路側機（路側アンテナや路側無線装置と呼ぶこともある。）１００が設置されており、通行する車両には車載器１１０が搭載されている。なお、通信エリアの直径は３〜３０ｍの範囲で設定可能であるが、普通は広め（大抵は３０ｍ）に設定されている。
【０００３】
図２に示すように、路側機１００には路側ホスト１０１とＤＳＲＣ無線アンテナ１０２とが含まれている。ＤＳＲＣ無線アンテナ１０２は、ＤＳＲＣ無線プロトコル（ＡＲＩＢ規格）に基づいての通信が可能で、路側ホスト１０１は、ＤＳＲＣ無線アンテナ１０２を制御し、アプリケーション情報を管理して、車載器１１０と情報のやり取りを行う。なお、図示は省略しているが、路側ホスト１０１は料金計算等を行う管理コンピュータと接続されており、路側ホスト１０１が車載器１１０から取得した情報は管理コンピュータに送信される。
【０００４】
一方、車載器１１０にはＤＳＲＣ無線（インタフェース）Ｉ／Ｆ１０３、制御処理部（マイコン）１０４、セキュリティモジュール（ＳＡＭ）１０５、ヒューマンマシンインタフェース（ＨＭＩ）１０６、ＩＣカード１０７用のスロット（図示は省略）等が備わっている。ＤＳＲＣ無線Ｉ／Ｆ１０３は、路側機１００のＤＳＲＣ無線アンテナ１０２に対応する機能ブロックであり、ＤＳＲＣ無線プロトコル（ＡＲＩＢ規格）に基づいての通信が可能である。マイコンである制御処理部１０４は、ＤＳＲＣ無線Ｉ／Ｆ１０３を介してのＤＳＲＣ無線通信情報の処理、ＨＭＩ１０６の制御等を行う。さらに、制御処理部１０４は、ＤＳＲＣ無線通信で路側機１００から取得した情報に処理コマンドを付加してＳＡＭ１０５に入力して、例えば暗号情報の復号化を要求し、また路側機１００に送信するためにＩＣカード１０７から情報を取得してこれを暗号化する処理などを要求する。ＳＡＭ１０５は、制御処理部１０４からの要求に応じて、暗号情報の復号化、ＩＣカード１０７からの情報の読み込み、情報の暗号化等を行う。
【０００５】
路側機１００と車載器１１０との通信シーケンスの一例を図１５に例示する。車載器１１０（即ち車両）が路側機１００の通信エリアに進入すると、ＤＳＲＣ無線プロトコルに従って通信が開始される。
まず、路側機１００から車載器１１０に対してフレームコントロールメッセージ（ＦＣＭ：Ｆｒａｍｅ  Ｃｏｎｔｒｏｌｅ  Ｍｅｓｓａｇｅ）が発信され、これを受けて車載器１１０はアクティベーションチャンネル（ＡＣＴＣ：Ａｃｔｉｖａｔｉｏｎ  Ｃｈａｎｎｅｌ）を送信する。次に路側機１００はＦＣＭを送信し、続いてビーコンサービステーブル（ＢＳＴ：Ｂｅａｃｏｎ  Ｓｅｒｖｉｃｅ  Ｔａｂｌｅ）を送信し、再びＦＣＭを送信する。これに応じて車載器１１０がビークルサービステーブル（ＶＳＴ：Ｖｅｈｉｃｌｅ  Ｓｅｒｖｉｃｅ  Ｔａｂｌｅ  ）を送信すると、路側機１００からＦＣＭが送信される。なお、ＦＣＭ、ＡＣＴＣ、ＢＳＴ及びＶＳＴは、いずれもＡＲＩＢ規格にて定められており、リンクシーケンスに使用されるフレームである。
【０００６】
ここまでの手順で路側機１００と車載器１１０とのリンク接続が済んだことになり、次に実体的な情報のやり取りが行われる。図１５では、説明を簡明にするために、路側機１００から暗号文が含まれた情報Ａが送られ、車載器１１０からも暗号文が含まれた情報Ｂが送られる例を示している。
【０００７】
路側機１００から情報Ａ（暗号文）が送られて、これを取得した車載器１１０の制御処理部１０４は、情報Ａに復号要求のコマンドを付加してＳＡＭ１０５に入力する。ＳＡＭ１０５は、このコマンドに従って情報Ａを復号して制御処理部１０４に送る。次に、制御処理部１０４が情報Ｂの暗号化を要求すると、ＳＡＭ１０５は、例えば予めＩＣカード１０７から読み取られてＲＡＭに記憶されていた情報や車載器の固有情報等が含まれる情報Ｂに暗号化を施して制御処理部１０４に送る。制御処理部１０４は、路側機１００からのＦＣＭを待って、暗号化された情報Ｂを路側機１００に送信する。
【０００８】
双方からの情報の送受が済めば通信が完了し、車載器１１０はやがて通信エリア外へと移動する。
この例は路側機１００と車載器１１０との通信が正常に行われた例である。
【０００９】
【発明が解決しようとする課題】
ところで、例えば車載器１１０が通信エリアに進入する直前にＩＣカード１０７がカードスロットに差し込まれた場合のように、路側機１００との通信時にＳＡＭ１０５とＩＣカード１０７との通信がおこなわれていることがある。
【００１０】
図１６に示すように、車載器１１０にＩＣカード１０７が差し込まれると、ＳＡＭ１０５からＩＣカード１０７に電源が供給され、ＡＴＲ、セレクトファイル１、認証、リードデータと順次通信と処理が実行される。こうした一連の処理（ＩＣカードアクセス）には、ＩＣカード１０７自身の処理速度と通信速度が遅いこともあってかなりの時間を要する。車両の速度にもよるが、通常は車載器１１０が通信エリアに進入してから抜けるまでの時間を超えてしまう。
【００１１】
このようにＳＡＭ１０５がＩＣカード１０７にアクセスしているときに、上述のように路側機１００と制御処理部１０４との通信が行われて、制御処理部１０４からＳＡＭ１０５に情報Ａの複合要求があっても、ＳＡＭ１０５はＩＣカード１０７にアクセス中なので制御処理部１０４からの要求に応じられない（ビジーを返す。したがって、制御処理部１０４は情報Ａの復号結果が得られず、路側機１００に応答できない。車載器１１０からの応答がないため、路側機１００は情報Ａの再送を繰り返す。そして、その状態のまま、走行する車両が通信エリア外に出てしまい、通信未完了となってしまう。
【００１２】
この図１６に示すのはＩＣカード１０７の挿入に起因する例であるが、他の状況、例えばＩＣカード１０７の利用履歴などを読出しているときにも同様の不具合（路側機１００との通信未完了）が生じる。
このような状況が、例えばＥＴＣアプリケーションの料金所（例えば出口）で発生すると、次のような大きな問題が多々生じる。
【００１３】
一つ目、通信ができなかった、即ち料金を支払うことができなかったので、ゲートが閉じられて車両は止められてしまい、ＥＴＣの一番のメリットであるノンストップ通過ができなくなる。また、その後続車も通過できないから渋滞を引き起こすことになる。
【００１４】
二つ目、路側機から見たとき、車載器からの応答が無いので、通信ログを見ても何も解らない。つまり、ＥＴＣの管理者側による原因究明ができない。
三つ目、車載器に対する原因調査は、現場では処置できないし、車載器を取り外す必要もある。よって、一般ユーザでは処置が困難であるから専門店に出向かねばならない。
【００１５】
四つ目、いくら原因調査しても、正常な車載器であるから通信エラーは再現されず、結局原因不明とされる。
五つ目、上記の対処の手間は何も問題のない車載器に対して行われるわけで、まったっく無駄な大きな費用が発生する。
【００１６】
六つ目、ＥＴＣは多くの車両に取り付け普及させることにより料金所での渋滞緩和の効果が現れるが、このような問題が発生すると、ユーザはシステムに不信感を抱き、普及の障害となる。
これらの問題について次のような対策が考えられる。
（対策１）
車載器は、無応答を回避するために、ＩＣカード処理中は暗号処理をせずに、ＩＣカード処理中を含め車載器の状況（ステータス）を応答する。路側機は、車載器のステータスを判断して、リトライ処理を行い、通信ログとして残すことが可能となる。しかし、ＩＣカードの処理時間が長い場合には車両が通信エリアを通過してしまうので、ＩＣカードが正常に挿入されているにも関わらず、ノンストップで通過できないという問題は残る。
（対策２）
ＩＣカード処理中にＤＳＲＣ無線が始まった場合は、ＩＣカード処理を中断させてＤＳＲＣ無線処理を行う。この場合、ノンストップでの通過は可能になるが、ＩＣカード処理については不具合が発生することがある。例えば、ユーザが利用履歴を読み出そうとした時、読み出せなくなったり、反応が遅くなったりする。しかし、対策１に比べれば、不具合の程度は小さくなり効果的ではある。
（対策３）
ＳＡＭ内部での同時処理を可能にする。これは、誰もが考えることであろう。しかし、ＤＳＲＣ無線通信の通信速度は１ＭＢＰＳと速く、暗号処理までも必要とするので、路側機からのコマンドを処理しながら、これとＩＣカード通信処理とを同時処理するのはきわめて難しい。単純に言ってしまえば、処理能力の高いマイコン（ＣＰＵ）で構築すれば可能であるが、ＤＳＲＣ無線機器にパーソナルコンピュータに搭載されるような高級なＣＰＵを使用したのでは、コストが高くなり普及促進を妨げかねない。
【００１７】
本発明は、上に例示したＥＴＣシステム等の狭域無線通信（ＤＳＲＣ）用の車載器に搭載されるセキュリティモジュール（ＳＡＭ）において、現状で使用されている程度の機能のＣＰＵすなわち安価なＣＰＵで、対策３と同等の同時処理を可能にすることを目的としている。
【００１８】
【課題を解決するための手段および発明の効果】
上記課題を解決するための請求項１記載のセキュリティモジュールは、狭域無線通信（ＤＳＲＣ）用の車載器に搭載され、道路側に設置されている路側無線装置からの情報に含まれる暗号情報を復号化し、前記車載器から前記路側無線装置に送信する情報の一部または全部を暗号化するセキュリティモジュールにおいて、取得したコマンドに従って前記復号化及び暗号化を含む演算処理を実行する演算処理手段と、前記演算処理手段が現在実行中の処理に対応するコマンドと新たに取得したコマンドとのどちらを優先させるか判断する優先順位判断手段と、前記優先順位判断手段により前記新たなコマンドが優先すると判断された場合に該新たなコマンドに応じた演算処理を前記演算処理手段に優先実行させる優先処理手段とを備えるので、現在実行中の処理よりも優先順位の高いコマンドが入力された場合には、そのコマンドを優先処理できる。
【００１９】
新たなコマンドを優先処理する場合、演算処理手段に、現在実行中の処理を中断させて新たなコマンドに応じた演算処理を実行させる構成を採用できる。また、例えば演算処理手段がアイドル（例えば応答待ち等で、形式的には処理を実行中だが実質的な処理を何もしていない状態）のときに新たなコマンドを処理させる等、システム上許される時間内（現在実行中の処理に支障を来さない範囲）で割り込み的に処理させる構成とすることもできる。この割り込みによる処理にすれば実質的に新旧両コマンドに応じた処理を並行処理するのと同じになる。
【００２０】
具体的には、例えば復号化コマンド及び暗号化コマンドの優先順位をＩＣカードアクセスに関わるコマンドよりも高く設定しておけば、図４に例示したような状況下でもＩＣカードアクセスに関わる処理のアイドル時（ＩＣカードからのデータ受信待ちの時など）に、或いはＩＣカードアクセスに関わる処理を一時中断して、復号化処理及び暗号化処理を実行できる。このため、路側機との通信が未了となることを防止できる。
【００２１】
また、路側機からのコマンドを処理しながら、これとＩＣカード通信処理とを同時処理するわけではないから、処理能力の高い高級なＣＰＵ（高価なＣＰＵ）を使用する必要はなく、コストアップも回避できる。
コマンドの優先順位は個別のコマンド毎に設定することができる。また、様々な状況に応じて、例えば状況１ではコマンドＡがコマンドＢに優先するが、状況２ではコマンドＢがコマンドＡに優先する、といった設定も可能である。
【００２２】
そうした状況や個別のコマンドの種類等に応じて精密な優先順位を設定するのが理想的ではある。しかし、あまり細かく設定するのも設定作業が大がかりとなるし、精密すぎて不具合が生じるおそれもある。
そこで、請求項２記載のセキュリティモジュールは、請求項１記載のセキュリティモジュールにおいて、前記車載器には前記路側無線装置との通信を行う無線通信手段と、ユーザによって該車載器に装着されるリムーバブルな記憶媒体との通信を行う媒体通信手段とが備えられており、優先順位判断手段は、優先順位判断手段は、前記路側無線装置とのＤＳＲＣ無線通信に関わる前記コマンド（ＤＳＲＣコマンドという）と前記記憶媒体との通信に伴う前記コマンド（媒体側コマンドという）とでは、前記ＤＳＲＣコマンドを優先とする構成を採用している。
【００２３】
一般にＤＳＲＣでは路側機（路側無線装置）との通信の方が記憶媒体（例えばＩＣカード、もちろん他の形態の記憶媒体でもかまわない。）との通信よりも重要となる場面が多い。
請求項２記載のセキュリティモジュールでは、路側無線装置とのＤＳＲＣ無線通信に関わるＤＳＲＣコマンドを記憶媒体との通信に伴う媒体側コマンドよりも優先とするので、コマンドに対する優先順位の設定は比較的単純となり、設定作業も簡単である。そして、より重要と考えられるＤＳＲＣコマンド（路側無線装置との通信）を優先するので、路側無線装置との通信が未了になることを防止できる。
【００２４】
なお、車載器の処理はＤＳＲＣ無線通信に関わるコマンド、ＩＣカード処理、表示、音声、スイッチ入力等のＨＭＩ処理と複数の処理を行うので、そうした各種の処理に伴ってセキュリティモジュールに入力されるさまざまなコマンドの中でもＤＳＲＣ無線通信に関わるコマンドを最優先に設定しておけばよい。そうすれば、セキュリティモジュールがＤＳＲＣコマンド以外のどの種類のコマンドを実行中であっても、路側無線装置との通信が未了になることを防止できる。
【００２５】
ところで、セキュリティモジュールは路側無線装置に送信する情報の全てを暗号化してもよいのだが、それでは処理量が増大するし無駄でもある。
このため、請求項３記載のセキュリティモジュールは、請求項２記載のセキュリティモジュールにおいて、前記暗号化する情報は前記記憶媒体から読み取られたユーザ情報としている。具体的な例を挙げると、ユーザのクレジット番号や口座番号等のユーザに独特で且つ漏洩した場合に悪用されるおそれのある情報やユーザのプライバシーに関わる情報のみを暗号化する構成である。よって、処理量が増大することはなく、無駄な処理にもならない。
【００２６】
また、ＥＴＣでは車載器の固有情報（例えば車検情報）も路側無線装置に送信されるので、車載器の固有情報もセキュリティモジュールにおいて暗号化するのが好ましい。つまり、記憶媒体から読み取られたユーザ情報と車載器の固有情報とを暗号化する構成が好ましい。車載器の固有情報も暗号化しても、それによって処理量が大幅に増えるわけではないから、上記の効果は保たれる。
【００２７】
上述の請求項１ないし３のいずれか記載のセキュリティモジュールは、広くＤＳＲＣ無線に適用できるが、特に請求項４記載の構成、すなわち自動料金収受システム（ＥＴＣ）に適用するのが好ましい。
【００２８】
【発明の実施の形態】
次に、本発明のいくつか実施例により発明の実施の形態を説明する。
【００２９】
【実施例１】
本実施例のハードウェア構成は図２に示すとおりであるので、ここでの説明は省略する。ＳＡＭ１０５の構成は図３に示すとおりで、各種の処理を実行するＣＰＵ１２０、制御処理部１０４との通信制御を行うＨＯＳＴインタフェース１２１、実行プログラムが書き込まれたＲＯＭ１２２、ＩＣカード１０７の暗号処理を行うＩＣカード暗号処理回路１２３、ＤＳＲＣ無線の情報の暗号処理を行うＤＳＲＣ無線用暗号処理回路１２４、ＩＣカード１０７との通信制御を行うＩＣカードインタフェース１２５、ＣＰＵ１２０のワークエリアとなるＲＡＭ１２６、時間管理をするためのタイマー１２７等を備えている。なお、ＣＰＵ１２０には、ＨＯＳＴインタフェース１２１からの割り込みＩＲＱ０とＩＣカードインタフェース１２５からの割り込みＩＲＱ１が入力される。
【００３０】
ＲＯＭ１２２に書き込まれているプログラムには、オペレーティングシステム（ＯＳ）、制御処理部１０４からのコマンドを処理するためのＨＯＳＴ処理タスク、ＩＣカード１０７の通信処理とコマンドを処理するためのＩＣカード処理用タスク及びリアルタイムモニターがあり、ＨＯＳＴ処理タスクにはＨＯＳＴコマンド監視、ＨＯＳＴコマンド解析及びコマンド処理が含まれ、ＩＣカード処理用タスクにはＩＣカード監視、ＩＣカード通信制御及びＩＣカード暗号処理が含まれている。また、ＯＳはリアルタイムモニターによってＩＲＱ０及びＩＲＱ１の入力を監視している。
【００３１】
ＣＰＵ１２０は、ＤＳＲＣ無線用暗号処理回路１２４を制御して路側機１００からの暗号情報や車載器の固有情報を復号し、ＩＣカード暗号処理回路１２３を制御してＩＣカード１０７からの情報を暗号化する。つまり、ＣＰＵ１２０はＤＳＲＣ無線用暗号処理回路１２４及びＩＣカード暗号処理回路１２３と共同して演算処理手段として機能する。なお、ＤＳＲＣ無線用暗号処理回路１２４及びＩＣカード暗号処理回路１２３をソフトウェアに置き換えることもできる。
【００３２】
また、ＣＰＵ１２０は、ＲＯＭ１２２に書き込まれているプログラムを実行することにより、優先順位判断手段及び優先処理手段としても機能する。次に、これらについて詳述する。
図４に示すように、ＩＲＱ０信号によりＨＯＳＴ処理用タスクが実行され、ＩＲＱ１信号によりＩＣカード処理用タスクが実行される。ＩＲＱ０信号とＩＲＱ１信号が同時に入力された場合は、ＨＯＳＴ処理用タスクが実行される設定である。
【００３３】
ＨＯＳＴ処理用タスクは、まずコマンド待ちし（Ｓ１）、コマンドを取得するとその優先度を判断し（Ｓ２）、そのコマンドを実行するか否かを決める（Ｓ３）。具体的には、優先度がＩＣカード処理用タスクで実行中のコマンドよりも上位の場合にはＩＣカード処理用タスクを一時中断させて、或いはＩＣカード処理用タスクが動作していないときには、コマンド実行と決めて（Ｓ３：ＹＥＳ）、コマンドを解析し（Ｓ４）、コマンドに従った処理（例えば暗号化や復号化の暗号処理）を行い（Ｓ５）、その処理結果を制御処理部１０４に通知する（Ｓ６）。また、実行可否の決定（Ｓ３）で実行しない（優先度が低い）と決めた場合にはコマンド待ち（Ｓ１）に回帰する。
【００３４】
ＩＣカード処理用タスクでは、まずコマンド待ちし（Ｓ１１）、コマンドを取得するとその優先度を判断し（Ｓ１２）、そのコマンドを実行するか否かを決める（Ｓ１３）。具体的には、優先度がＨＯＳＴ処理用タスクで実行中のコマンドよりも上位の場合にはＨＯＳＴ処理用タスクを一時中断させて、或いはＨＯＳＴ処理用タスクが動作していないときには、コマンド実行と決めて（Ｓ１３：ＹＥＳ）、コマンドを解析し（Ｓ１４）、コマンドに従った処理（具体的にはＩＣカード１０７との通信処理）を行い（Ｓ１５）、その処理結果を制御処理部１０４に通知する（Ｓ１６）。また、実行可否の決定（Ｓ１３）で実行しない（優先度が低い）と決めた場合にはコマンド待ち（Ｓ１１）に回帰する。
【００３５】
このように、コマンドの優先度の判断（Ｓ２、Ｓ１２）に基づいて、そのコマンドを実行するか否か（他の処理用タスクが処理を実行中ならこれを一時中断させるか否か）を決める（Ｓ３、Ｓ１３）。
本実施例の場合、ＨＯＳＴ処理用タスクにおける暗号処理（暗号化、復号化）のコマンドの優先順位をＩＣカード処理用タスクで実行されるコマンドよりも高く設定してあるので、暗号処理を要求するコマンドが入力されたときには、たとえＩＣカード処理用タスクでなんらかの処理を実行中であってもこれを中断させて、暗号処理を実行する。したがって、ＳＡＭ１０５がＩＣカード１０７にアクセスしている最中に路側機１００との通信が開始されても、路側機１００との通信が未完了となるおそれはない。その具体的な例を図５により説明する。
【００３６】
車載器１１０にＩＣカード１０７が差し込まれると、ＳＡＭ１０５又は制御処理部１０４により制御されてＩＣカード１０７に電源供給され、ＡＴＲ、セレクトファイル、認証、リードデータと順次通信と処理が実行される。
こうした処理中に（ＩＣカードアクセス中に）、車載器１１０が通信エリアに進入すると、ＤＳＲＣ無線プロトコルに従って路側機１００と車載器１１０との通信が開始される。
【００３７】
まず前述したとおり、ＦＣＭ、ＡＣＴＣ、ＦＣＭ、ＢＳＴ、ＦＣＭ、ＶＳＴ、ＦＣＭが送受信されてリンクが確立し、路側機１００から暗号文が含まれた情報Ａが送られてくると、これを取得した車載器１１０の制御処理部１０４は、ＩＲＱ０信号をＳＡＭ１０５に入力し、続いて情報Ａに復号要求のコマンド（復号コマンド）を付加してＳＡＭ１０５に入力する。ＳＡＭ１０５では、ＩＲＱ０信号によってＨＯＳＴ処理用タスクが開始され、復号コマンドの優先度を判断し（Ｓ２）、この復号コマンドがＩＣカード処理用タスクにて実行中のコマンドよりも優位にあるからこれを優先実行すると決めて、ＩＣカード処理用タスクを一時中断させて（Ｓ３：ＹＥＳ）、コマンド解析（Ｓ４）、復号処理（Ｓ５）を実行し、情報Ａを復号して制御処理部１０４に送る（Ｓ６）。
【００３８】
次に、制御処理部１０４が情報Ｂの暗号化を要求すると（暗号化コマンド）、これもＩＣカード処理用タスクで実行されるコマンドよりも優位にあるから、復号化の場合と同様に優先処理して、結果（暗号文）を制御処理部１０４に送り、コマンド待ちになる。
【００３９】
制御処理部１０４は、路側機１００からのＦＣＭを待って、暗号化された情報Ｂを路側機１００に送信し、通信を完了する。
ＳＡＭ１０５では、ＨＯＳＴ処理用タスクがコマンド待ちになるとＩＣカード処理用タスクでの処理が再開され、例えばセレクトファイル２、応答、リードコマンド、応答、セレクトファイル３・・・とＩＣカード１０７アクセスが行われる。
【００４０】
このようにＳＡＭ１０５がＩＣカード１０７にアクセスしているときに、路側機１００と制御処理部１０４との通信が行われて、制御処理部１０４からＳＡＭ１０５に情報Ａの複合要求や情報Ｂの暗号化要求があっても、ＳＡＭ１０５はＩＣカード１０７のアクセスを一時中断して、制御処理部１０４からの要求に応じることができる。したがって、路側機１００との通信が未完了となることは防止され、通信未完了によって引き起こされる様々な不都合をすべて回避できる。
【００４１】
なお、ＩＣカード１０７のアクセスを一時中断すると言っても、ＩＣカード１０７の応答速度が遅いために、実質的な処理の中断（例えばＩＣカード１０７からの応答を取得できないような場面）はほとんど起こらない。
【００４２】
【実施例２】
この実施例は、ＨＯＳＴコマンド（制御処理部１０４からのコマンド）を優先させる例である。なお、車載器１１０（制御処理部１０４、ＳＡＭ１０５等）の構成は実施例１と同じであるので、実施例１と同じ符号を用いて装置構成の説明は省略する。
【００４３】
図６に示すように、この実施例では、ＣＰＵ１２０は、まずＨＯＳＴコマンドが入力されているか否かを判断し（Ｓ３１）、ＨＯＳＴコマンドが有れば（Ｓ３１：ＹＥＳ）、ＨＯＳＴコマンドを解析し（Ｓ３２）、ＨＯＳＴコマンド処理（例えば暗号処理）を実行する（Ｓ３３）。そして、ＩＣカード処理中フラグの有無を判断して（Ｓ３４）、否定判断ならＳ３１に回帰する。
【００４４】
Ｓ３１で否定判断の場合（ＨＯＳＴコマンドが無いとき）、ＩＣカードインタフェース１２５からの要求であるＩＣカードコマンドの有無を判断する（Ｓ３５）。
否定判断ならＳ３１に戻るが、肯定判断（ＩＣカードコマンド有り）なら、ＩＣカード処理中フラグをセットし（Ｓ３６）、ＩＣカードコマンドを解析し（Ｓ３７）、ＩＣカード１０７との通信処理を行い（Ｓ３８）、ＩＣカード１０７に例えばリードコマンド等を送信する（Ｓ３９）。
【００４５】
このリードコマンド等に対するＩＣカード１０７からの応答には制御処理部１０４とのやり取り等に比べれば比較的長時間を要するので、ここで新たなＨＯＳＴコマンドの有無を判断する（Ｓ４０）。ＨＯＳＴコマンドが有れば（Ｓ４０：ＹＥＳ）、上述と同様にＳ３２、Ｓ３３、Ｓ３４を実行する。
【００４６】
ＨＯＳＴコマンドがなければ（Ｓ４０：ＮＯ）、ＩＣカード１０７からの受信の完了を待って（Ｓ４１：ＹＥＳ）、ＩＣカード処理中フラグをリセットして（Ｓ４２）、Ｓ３１に回帰する。
この実施例の場合、ＨＯＳＴコマンドが有れば（Ｓ３１またはＳ４０：ＹＥＳ）、Ｓ３２、Ｓ３３、Ｓ３４を即座に実行するので、実施例１と同様に、ＳＡＭ１０５がＩＣカード１０７にアクセスしているときに、路側機１００と制御処理部１０４との通信が行われて、制御処理部１０４からＳＡＭ１０５に情報Ａの複合要求や情報Ｂの暗号化要求があっても、ＳＡＭ１０５はＩＣカード１０７のアクセスを一時中断して、制御処理部１０４からの要求に応じることができる。したがって、路側機１００との通信が未完了となることは防止され、通信未完了によって引き起こされる様々な不都合をすべて回避できる。
【００４７】
なお、ＩＣカード１０７のアクセスを一時中断すると言っても、ＩＣカード１０７の応答速度が遅いために、実質的な処理の中断（例えばＩＣカード１０７からの応答を取得できないような場面）はほとんど起こらない。
なお、この実施例において、Ｓ４０〜Ｓ３２の間に図６（ｂ）に示すように、ＨＯＳＴコマンドと実行中のＩＣカードコマンドとの優先度を比較し（Ｓ４０ａ）、ＨＯＳＴコマンドの方が優先順位が高ければこれを優先実行すると決めて（Ｓ４０ｂ：ＹＥＳ）、Ｓ３２に移行する処理を介在させてもよい。このようにすれば、ＨＯＳＴコマンドが実行中のＩＣカードコマンドよりも優先度が高いときだけ、ＩＣカードアクセスが中断されるので、ＩＣカードアクセスの中断頻度を低減できる。
【００４８】
【実施例３】
この実施例は、常時はＩＣカード処理を実行していて、ＩＲＱ０信号またはタイマ割り込みでＨＯＳＴコマンドを実行する例である。なお、車載器１１０（制御処理部１０４、ＳＡＭ１０５等）の構成は実施例１と同じであるので、共通の部分については実施例１と同じ符号を用いて装置構成の説明は省略する。
【００４９】
この実施例では、ＣＰＵ１２０は、通常は、図７（ａ）に示すＩＣカード処理用タスクを実行している。この処理では、ＩＣカードインタフェース１２５からの要求であるＩＣカードコマンドが入力されるのを待ち（Ｓ５１）、ＩＣカードコマンドが有れば（Ｓ５１：ＹＥＳ）、ＩＣカード処理中フラグをセットし（Ｓ５２）、ＩＣカードコマンドを解析し（Ｓ５３）、ＩＣカード１０７との通信処理を行い（Ｓ５４）、ＩＣカード１０７に例えばリードコマンド等を送信する（Ｓ５５）。そして、ＩＣカード１０７からの受信の完了を待って（Ｓ５６：ＹＥＳ）、ＩＣカード処理中フラグをリセットして（Ｓ５７）、Ｓ５１に回帰する。
【００５０】
一方、タイマ割り込みまたは制御処理部１０４からのＩＲＱ０信号により図７（ｂ）に示す割込処理を実行する。この割込処理においては、ＨＯＳＴコマンドが入力されているか否かを判断し（Ｓ６１）、ＨＯＳＴコマンドが有れば（Ｓ６１：ＹＥＳ）、そのＨＯＳＴコマンドと実行中のＩＣカードコマンドとの優先度を比較し（Ｓ６２）、ＨＯＳＴコマンドの方が優先順位が高ければこれを優先実行すると決めて（Ｓ６３：ＹＥＳ）、Ｓ６４に移行する。Ｓ６４ではＨＯＳＴコマンドを解析し、続くＳ６５ではＨＯＳＴコマンド処理（例えば暗号処理）を実行し、割込処理からリターンする。また、ＨＯＳＴコマンドが入力されていないとき（Ｓ６１：ＮＯ）及びＳ６３で否定判断のときにも割込処理からリターンする。
【００５１】
この実施例の場合も、ＨＯＳＴコマンドが有って（Ｓ６１：ＹＥＳ）、そのＨＯＳＴコマンドの優先順位が実行中のＩＣカードコマンドよりも高ければ（Ｓ６３：ＹＥＳ）、ＨＯＳＴコマンドを優先実行するので、実施例１と同様に、ＳＡＭ１０５がＩＣカード１０７にアクセスしているときに、路側機１００と制御処理部１０４との通信が行われて、制御処理部１０４からＳＡＭ１０５に情報Ａの複合要求や情報Ｂの暗号化要求があっても、ＳＡＭ１０５はＩＣカード１０７のアクセスを一時中断して、制御処理部１０４からの要求に応じることができる。したがって、路側機１００との通信が未完了となることは防止され、通信未完了によって引き起こされる様々な不都合をすべて回避できる。
【００５２】
【実施例４】
この実施例は、ＩＲＱ０信号でＨＯＳＴ処理用タスクを実行する例である。なお、車載器１１０（制御処理部１０４、ＳＡＭ１０５等）の構成は実施例１とほぼ同じであるので、共通の部分については実施例１と同じ符号を用いて装置構成の説明は省略する。ただし、ＩＲＱ０信号の経路は本実施例に独特であるので、図８、９を参照して説明する。
【００５３】
図８に示すように、制御処理部１０４の入力ポートＡには、ＳＡＭ１０５がコマンドを受け付け可能であることを示すＲＥＡＤＹ信号が、入力ポートＢには、ＳＡＭ１０５がコマンド処理を実行中であることを示すＢＵＳＹ信号が、それぞれ入力される。制御処理部１０４とＳＡＭ１０５との間のデータの読み書きは、公知のものと同様に、ＳＡＭ１０５へのリードライト信号Ｒ／Ｗ、ＳＡＭ１０５へのチップセレクト信号ＣＳ及びデータバス（ＤＡＴＡ  ＢＵＳ）が使用される。
【００５４】
ＳＡＭ１０５のリードライト信号入力ポート（Ｒ／Ｗ）及びチップセレクト信号入力ポート（ＣＳ）にはゲート９０１が接続されており、そのゲート９０１の出力はもう一つのゲート９０２に入力される。このゲート９０２の他方の入力端は、制御処理部１０４のＩＲＱ出力ポート（ＩＲＱｏｕｔ）からの信号が入力されるＩＲＱ入力ポート（ＩＲＱｉｎ）に接続されている。制御処理部１０４がＳＡＭ１０５に要求をライトする場合、リードライト信号Ｒ／Ｗ、チップセレクト信号ＣＳ及びＩＲＱｏｕｔをローにする。すると、リードライト信号Ｒ／Ｗとチップセレクト信号ＣＳが入力されるゲート９０１の出力がローになるので、ゲート９０２からＣＰＵ１２０へのＩＲＱ０信号が発生する。なお、図９に示すように、ゲート９０１をＳＡＭ１０５の外部に配することも可能である。このようにするとＳＡＭ１０５を特注品とする必要がない（汎用ＳＡＭを使用できる）ので、ＳＡＭのコストアップを避けることができる。
【００５５】
次に、この車載器１１０の動作を図１０、１１のタイミングチャートを参照して説明する。
図１０のタイミングチャートは、ＩＣカード１０７からデータが送信されているときに制御処理部１０４からＤＳＲＣ無線の復号要求コマンドを入力した場合の例であり、図５の情報Ａの復号要求の場面に相当している。なお、ＩＣカードインタフェース１２５はＩＣカード１０７からの送信信号（データ）をハードで処理し、ＳＡＭ１０５のＣＰＵ１２０は、図４に示す処理（ＯＳを使用する処理）と同様の処理を行う。
【００５６】
また、図中○内にＩＣはＩＣカード処理用タスクを、同ＯＳはＯＳを、同ＨＴはＨＯＳＴ処理用タスクを、それぞれ意味する。また、ＳＡＭソフトとあるのは、ＳＡＭ１０５のＣＰＵ１２０がＯＳ、ＩＣカード処理用タスク、ＨＯＳＴ処理用タスクによって処理することを示している。
【００５７】
図１０では、まずＳＡＭソフト（ＣＰＵ１２０）が、ＩＣカード１０７の送信信号を受信するためにＩＣカードインタフェース１２５に対して受信準備を行う。ＩＣカードインタフェース１２５では、ＩＣカード１０７からの送信信号を受信して、バッファに記録し、予定のデータ量分だけ受信した時点でＩＲＱ１信号を出して、受信完了をＣＰＵ１２０に知らせる。
【００５８】
ＩＣカードインタフェース１２５がハードウエアであるので、ＩＣカード１０７からのデータの受信中はＣＰＵ１２０（ＳＡＭソフト）はアイドル（＝実質的な処理を何もしていない状態）となる。また、ＩＣカードインタフェース１２５によりＩＣカード１０７にデータを送信するときも同様である。これはＩＣカード１０７の通信速度は９６００ＢＰＳが一般的で、ＤＳＲＣ無線（約１ＭＢＰＳ）に比べて非常に遅いことによる。
【００５９】
こうしたアイドル状態にある時に制御処理部１０４から例えば復号要求がライトされると、上述のとおりＩＲＱ０信号がＣＰＵ１２０に入力され、ＯＳがＨＯＳＴ処理用タスクを動作させる。ＣＰＵ１２０はＨＯＳＴ処理用タスクによって復号処理を行って、復号結果を制御処理部１０４に送信する。
【００６０】
次に、ＣＰＵ１２０がＩＣカード処理（例えばデータ解析）を実行中に制御処理部１０４から処理要求（例えば復号要求）を受けた場合を、図１１に従って説明する。
ＩＣカード１０７からの送信が終わり、受信を完了したＩＣカードインタフェース１２５がＩＲＱ１信号をＣＰＵ１２０に入力すると、ＣＰＵ１２０はＩＣカード処理用タスクでデータ解析を実行する。このとき制御処理部１０４から復号要求がライトされると、上述のとおりＩＲＱ０信号がＣＰＵ１２０に入力される。この実施例ではＨＯＳＴ処理の方がＩＣカード処理よりも優先順位が高く設定されているので、ＩＲＱ０信号を受けたＯＳは、ＩＣカード処理用タスクを中断してＨＯＳＴ処理用タスクに切り替え、復号処理を実行し、復号結果を制御処理部１０４に送信する。そして、ＣＰＵ１２０の処理をＩＣカード処理用タスクに戻し、中断していた処理（この例ではデータ解析）の続きを行う。
【００６１】
このようにＳＡＭ１０５がＩＣカード１０７にアクセスしているときに、路側機１００と制御処理部１０４との通信が行われて、制御処理部１０４からＳＡＭ１０５に情報の複合要求や暗号化要求があっても、ＳＡＭ１０５はＩＣカード１０７のアクセス処理を一時中断して、制御処理部１０４からの要求に応じることができる。したがって、路側機１００との通信が未完了となることは防止され、通信未完了によって引き起こされる様々な不都合をすべて回避できる。
【００６２】
【実施例５】
この例は、車載器の構成をよりコンパクトにした例である。
実施例の説明に先立って現状の車載器について説明する。その概要は図２により説明したとおりであるが、より詳しくは図１２に示すようにＤＳＲＣ無線Ｉ／Ｆ、制御処理部、ＳＡＭの３ブロックからなり、各ブロックにＣＰＵが搭載されている。本実施例は、これら３つのＣＰＵを共通化したものである。
【００６３】
図１３に示すように、この車載器１１０ａは、ＣＰＵ１３０、外部入力端子１３１、外部出力端子１３２、外部入力割り込み端子１３３、ＤＳＲＣ無線Ｉ／Ｆ１３４、ＩＣカードＩ／Ｆ１３５、ＤＭＡ１３６、暗号処理部１３７、フラッシュＲＯＭ１３８ａ、１３８ｂ、ＲＡＭ１３９、タイマ１４０、割り込みコントローラ１４１等からなるワンチップ構成である。
【００６４】
そして、フラッシュＲＯＭ１３８ａ、１３８ｂには図１４に示す構造のＯＳ、ＤＳＲＣ処理用タスク、ＩＣカード処理用タスク、ＨＭＩ処理用タスクが格納されている。ＤＳＲＣ処理用タスクは上述の各実施例におけるＨＯＳＴ処理用タスクに相当し、ＩＣカード処理用タスクも上述の各実施例におけるＩＣカード処理用タスクと同様である。ＨＭＩ処理用タスクはＨＭＩ（ヒューマンマシンインタフェース）からのコマンドを処理する。
【００６５】
この実施例においても、上述した各実施例のようにコマンドの優先順位を判断して優先順位の低い方を中断して優先順位の高い方を即座に実行する構成としたり、ＤＳＲＣ無線に伴うコマンドを優先する設定にすることで、上記の各実施例と同様の効果を発揮できる。
【００６６】
しかも、１個のＣＰＵ１３０を使用するだけなのでコストの大幅な低下が可能となるから、車載器の普及に貢献できる。
さらに、ワンチップ構成により一層の小型化が可能になる。
車載器のアンテナ部周辺に障害物となるような物を配置すると無線が遮られて通信できなくなるおそれがあるため、車載器は、通常車両室内のダッシュボードやフロントウインドウ付近に配置される。ただし、運転手の視界を妨げないように、安全性を考慮することも重要である。本実施例のようにすれば車載器を小型化できるので、安全性が高まり、設置場所を選択する際の自由度も高くなる。
【００６７】
以上、実施例に従って、本発明の実施の形態について説明したが、本発明はこれらの実施例に限定されるものではなく、本発明の要旨を逸脱しない範囲でさまざまに実施できることは言うまでもない。
なお、上記各実施例では説明を省略しているが、制御処理部１０４からはＤＳＲＣ無線通信に関するコマンドの他にＩＣカード処理に関するコマンドがＳＡＭ１０５に入力されることもある。
【図面の簡単な説明】
【図１】ＤＳＲＣ無線における路側機と車載器の概要図である。
【図２】ＤＳＲＣ無線の路側機及び車載器の概略構成のブロック図である。
【図３】実施例１のＳＡＭのブロック図である。
【図４】実施例１のＯＳによるＨＯＳＴ用タスクとＩＣカード用タスクの切替を説明するフローチャートである。
【図５】実施例１の車載器による通信処理のタイミングチャートである。
【図６】実施例２のＳＡＭのＣＰＵが実行する処理のフローチャートである。
【図７】実施例３のＳＡＭのＣＰＵが実行する処理のフローチャートである。
【図８】実施例４のＳＡＭのＣＰＵへのＩＲＱ０信号の入力経路の説明図である。
【図９】図８の変形例の説明図である。
【図１０】実施例４においてＳＡＭソフトがアイドル状態にある時に復号要求が入力された場合の処理例のタイミングチャートである。
【図１１】実施例４においてＳＡＭソフトがＩＣカード処理中に復号要求が入力された場合の処理例のタイミングチャートである。
【図１２】従来の車載器の概略構成のブロック図である。
【図１３】実施例５の車載器の概略構成のブロック図である。
【図１４】実施例５の実行プログラムの説明図である。
【図１５】従来の車載器による通信が正常に行われた例のタイミングチャートである。
【図１６】従来の車載器による通信が未完了となる例のタイミングチャートである。
【符号の説明】
１００・・・路側機（路側無線装置）、
１０３・・・ＤＳＲＣ無線Ｉ／Ｆ（無線通信手段）、
１０４・・・制御処理部、
１０５・・・ＳＡＭ（セキュリティモジュール）
１０７・・・ＩＣカード（記憶媒体）、
１１０、１１０ａ・・・車載器、
１２０・・・ＣＰＵ（演算処理手段、優先順位判断手段、優先処理手段）、
１２３・・・ＩＣカード暗号処理回路（演算処理手段）、
１２４・・・ＤＳＲＣ無線用暗号処理回路（演算処理手段）、
１２５・・・ＩＣカードインタフェース（媒体通信手段）、
１３４・・・ＤＳＲＣ無線Ｉ／Ｆ（無線通信手段）、
１３５・・・ＩＣカードＩ／Ｆ（媒体通信手段）、
１３７・・・暗号処理部（演算処理手段）。
【図１】
0003582422.tif 000002
【図２】
0003582422.tif 000003
【図３】
0003582422.tif 000004
【図４】
0003582422.tif 000005
【図５】
0003582422.tif 000006
【図６】
0003582422.tif 000007
【図７】
0003582422.tif 000008
【図８】
0003582422.tif 000009
【図９】
0003582422.tif 000010
【図１０】
0003582422.tif 000011
【図１１】
0003582422.tif 000012
【図１２】
0003582422.tif 000013
【図１３】
0003582422.tif 000014
【図１４】
0003582422.tif 000015
【図１５】
0003582422.tif 000016
【図１６】
0003582422.tif 000017