(57)【特許請求の範囲】
【請求項１】
データ処理を行うマイクロプロセッサ本体と、外部デバイスにアドレス情報を出力するためのアドレスバスと、前記外部デバイスとデータをやり取りするためのデータバスとを備え、少なくとも前記アドレスバスを介して、前記マイクロプロセッサ本体から前記外部デバイスへ出力される信号の暗号化処理と前記外部デバイスから前記マイクロプロセッサ本体に入力される信号の復号化処理を行うことを特徴とするマイクロプロセッサ。
【請求項２】
マイクロプロセッサで実行されるプログラムを作成するプログラム作成部と、外部デバイスにプログラムを書き込むプログラム書込み部と、前記プログラム作成部から前記プログラム書込み部へアドレス情報を出力するためのアドレスバスと、前記プログラム作成部と前記プログラム書込み部とでデータをやり取りするためのデータバスとを備え、少なくとも前記アドレスバスを介して、前記プログラム作成部から前記プログラム書込み部へ出力される信号の暗号化処理と前記プログラム書込み部から前記プログラム作成部に入力される信号の復号化処理を行うことを特徴とするプログラム作成装置。
【請求項３】
マイクロプロセッサで実行されるプログラムをデバックするプログラムデバック部と、外部デバイスにアドレス情報を出力するためのアドレスバスと、前記外部デバイスとデータをやり取りするためのデータバスとを備え、少なくとも前記アドレスバスを介して、前記プログラムデバック部から前記外部デバイスへ出力される信号の暗号化処理と前記外部デバイスから前記プログラムデバック部に入力される信号の復号化処理を行うことを特徴とするプログラムデバック装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はマイクロプロセッサに関し、詳細には、外部デバイスのセキュリティを確保するマイクロプロセッサに関する。
【０００２】
【従来の技術】
図９は、従来のマイクロプロセッサの構成を示すブロック図である。図９において、マイクロプロセッサは、データ処理を行うマイクロプロセッサ本体７１と、外部メモリ装置にアドレス情報を出力するためのアドレスバス７２と、外部メモリ装置とデータをやり取りするためのデータバス７３とを備えている。
【０００３】
このようなマイクロプロセッサは、アドレスバス７２に出力するアドレス情報に基づくアドレスのデータを、データバス７３を介して外部メモリ装置とやり取りするようになっている。
【０００４】
また、図１０は、従来のマイクロプロセッサで処理するプログラムを作成するためのプログラム作成装置の構成を示すブロック図である。図１０において、プログラム作成装置は、プログラムを作成するプログラム作成部８１と、プログラムのアドレス情報を出力するためのアドレスバス８２と、作成したプログラムのデータをやり取りするためのデータバス８３と、プログラム作成部８１で作成したプログラムを外部メモリ装置に書き込むプログラム書込み部８４とを備えている。
【０００５】
このようなプログラム作成装置は、プログラム作成部８１で作成したプログラムのデータをアドレスバス７２に出力するアドレス情報に基づくアドレスごとにデータバス８３を介してプログラム書込み部８４に転送し、プログラム書込み部８４が外部メモリ装置にプログラムを書き込むようになっている。
【０００６】
また、図１１は、従来のマイクロプロセッサで処理するプログラムをデバックするプログラムデバック装置の構成を示すブロック図である。図１１において、プログラムデバック装置は、プログラムをデバックするプログラムデバック部９１と、外部メモリ装置にアドレス情報を出力するためのアドレスバス９２と、外部メモリ装置とデータをやり取りするためのデータバス９３とを備えている。
【０００７】
このようなプログラムデバック装置は、アドレスバス９２に出力するアドレス情報に基づくアドレスのデータを、データバス９３を介して外部メモリ装置とやり取りして外部メモリ装置に格納されたプログラムのデバックを行うようになっている。
【０００８】
【発明が解決しようとする課題】
しかし、このような従来のマイクロプロセッサでは、外部メモリ装置にプログラムやデータを格納し、アドレスバスとデータバスを介してそのデータを読み出したり書き込んだりしているので、外部メモリ装置の内容を読み取ることにより、プログラムやデータの内容を容易に取得することができ、機密性の高いプログラムやデータの処理には使用できないという問題があった。
【０００９】
本発明はこのような問題を解決するためになされたもので、機密性の高いプログラムやデータの処理をセキュリティを確保しつつ行うことができるマイクロプロセッサを提供するものである。
【００１０】
【課題を解決するための手段】
本発明のマイクロプロセッサは、データ処理を行うマイクロプロセッサ本体と、外部デバイスにアドレス情報を出力するためのアドレスバスと、前記外部デバイスとデータをやり取りするためのデータバスとを備え、少なくとも前記アドレスバスを介して、前記マイクロプロセッサ本体から前記外部デバイスへ出力される信号の暗号化処理と前記外部デバイスから前記マイクロプロセッサ本体に入力される信号の復号化処理を行う構成を有している。この構成により、外部デバイスへ出力するアドレス情報が暗号化されることとなる。
【００１１】
また、本発明のプログラム作成装置は、マイクロプロセッサで実行されるプログラムを作成するプログラム作成部と、外部デバイスにプログラムを書き込むプログラム書込み部と、前記プログラム作成部から前記プログラム書込み部へアドレス情報を出力するためのアドレスバスと、前記プログラム作成部と前記プログラム書込み部とでデータをやり取りするためのデータバスとを備え、少なくとも前記アドレスバスを介して、前記プログラム作成部から前記プログラム書込み部へ出力される信号の暗号化処理と前記プログラム書込み部から前記プログラム作成部に入力される信号の復号化処理を行う構成を有している。
この構成により、外部デバイスへ出力するアドレス情報が暗号化されることとなる。
【００１２】
また、本発明のプログラムデバック装置は、マイクロプロセッサで実行されるプログラムをデバックするプログラムデバック部と、外部デバイスにアドレス情報を出力するためのアドレスバスと、前記外部デバイスとデータをやり取りするためのデータバスとを備え、少なくとも前記アドレスバスを介して、前記プログラムデバック部から前記外部デバイスへ出力される信号の暗号化処理と前記外部デバイスから前記プログラムデバック部に入力される信号の復号化処理を行う構成を有している。この構成により、外部デバイスへ出力するアドレス情報が暗号化されることとなる。
【００１６】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照して説明する。
図１から図４は本発明の第１の実施の形態のマイクロプロセッサとそのプログラム作成装置及びプログラムデバック装置を示す図である。
【００１７】
図１は、本実施の形態のマイクロプロセッサの構成を示すブロック図である。図１に示すように、本実施の形態のマイクロプロセッサは、データ処理を行うマイクロプロセッサ本体２１と、マイクロプロセッサ本体２１から外部メモリ装置へ出力するデータの暗号化処理と外部メモリ装置からマイクロプロセッサ本体２１に入力されるデータの復号化処理を行うデータバス暗号処理手段１１と、外部メモリ装置にアドレス情報を出力するためのアドレスバス２２と、マイクロプロセッサ本体２１とデータバス暗号処理手段１１とを接続してデータをやり取りするためのデータバス２３ａと、データバス暗号処理手段１１と外部メモリ装置とを接続してデータをやり取りするためのデータバス２３ｂとを備えている。
【００１８】
このようなマイクロプロセッサにおいて、マイクロプロセッサ本体２１が処理するプログラムは、後述するプログラム作成装置などにより外部メモリ装置に周知の暗号化処理により暗号化されて格納されており、外部メモリ装置からデータバス２３ｂを介してデータバス暗号処理手段１１に入力され、データバス暗号処理手段１１で暗号から復号化され、データバス２３ａを介してマイクロプロセッサ本体２１に渡され、そのプログラムに従ってマイクロプロセッサ本体２１が処理を行う。
【００１９】
また、マイクロプロセッサ本体２１が処理したデータは、データバス２３ａを介してデータバス暗号処理手段１１に入力され、データバス暗号処理手段１１で周知の暗号化処理により暗号化され、データバス２３ｂを介して外部メモリ装置に格納される。
【００２０】
このように本実施の形態のマイクロプロセッサにおいては、外部メモリ装置とデータのやり取りを行うデータバス上にデータバス暗号処理手段１１を設け、このデータバス暗号処理手段１１により、外部メモリ装置からのデータを復号化し、また外部メモリ装置へ出力するデータを暗号化しているので、外部メモリ装置に格納されている暗号化されたプログラムを読み込んで処理することができるとともに、処理したデータを暗号化して外部メモリ装置に格納することができる。
【００２１】
次に、図２は本実施の形態のプログラム作成装置の構成を示すブロック図である。このプログラム作成装置は、本実施の形態のマイクロプロセッサに処理を行わせるプログラムを作成するためのものである。
【００２２】
図２に示すように、本実施の形態のプログラム作成装置は、上述のマイクロプロセッサと同じデータバス暗号処理手段１１と、プログラムを作成するプログラム作成部３１と、プログラムのアドレス情報を出力するためのアドレスバス３２と、プログラム作成部３１とデータバス暗号処理手段１１とを接続して作成したプログラムのデータをやり取りするためのデータバス３３ａと、データバス暗号処理手段１１とプログラム書込み部３４とを接続して作成したプログラムのデータをやり取りするためのデータバス３３ｂと、プログラム作成部３１で作成したプログラムを外部メモリ装置に書き込むプログラム書込み部３４とを備えている。
【００２３】
このようなプログラム作成装置において、プログラム作成部３１が作成したプログラムは、データバス３３ａを介してデータバス暗号処理手段１１に入力され、データバス暗号処理手段１１で周知の暗号化処理により暗号化され、データバス３３ｂを介してプログラム書込み部３４に入力され、プログラム書込み部３４が暗号化されたプログラムデータを外部メモリ装置に格納する。
【００２４】
このように本実施の形態のプログラム作成装置においては、プログラム作成部３１とプログラム書込み部３４との間でデータのやり取りを行うデータバス上にデータバス暗号処理手段１１を設け、このデータバス暗号処理手段１１により、プログラム書込み部３４が外部メモリ装置へ書き込むプログラムデータを暗号化しているので、外部メモリ装置に暗号化されたプログラムを格納することができ、該外部メモリ装置を本実施の形態のマイクロプロセッサに接続して、格納したプログラムによってマイクロプロセッサに処理を行わせることができる。
【００２５】
次に、図３は本実施の形態のプログラムデバック装置の構成を示すブロック図である。このプログラムデバック装置は、本実施の形態のマイクロプロセッサに処理を行わせるプログラムをデバックするためのものである。
【００２６】
図３に示すように、本実施の形態のプログラムデバック装置は、上述のマイクロプロセッサと同じデータバス暗号処理手段１１と、プログラムをデバックするプログラムデバック部４１と、外部メモリ装置にアドレス情報を出力するためのアドレスバス４２と、プログラムデバック部４１とデータバス暗号処理手段１１とを接続してデータをやり取りするためのデータバス４３ａと、データバス暗号処理手段１１と外部メモリ装置とを接続してデータをやり取りするためのデータバス４３ｂとを備えている。
【００２７】
このようなプログラムデバック装置において、プログラムデバック部４１がデバックするプログラムは、上述のプログラム作成装置などにより外部メモリ装置に周知の暗号化処理により暗号化されて格納されており、外部メモリ装置からデータバス４３ｂを介してデータバス暗号処理手段１１に入力され、データバス暗号処理手段１１で暗号から復号化され、データバス４３ａを介してプログラムデバック部４１に渡され、プログラムデバック部４１が所定の手順に従ってそのプログラムのデバックを行う。
【００２８】
また、プログラムデバック部４１が処理したデータは、データバス４３ａを介してデータバス暗号処理手段１１に入力され、データバス暗号処理手段１１で周知の暗号化処理により暗号化され、データバス４３ｂを介して外部メモリ装置に格納される。
【００２９】
このように本実施の形態のプログラムデバック装置においては、外部メモリ装置とデータのやり取りを行うデータバス上にデータバス暗号処理手段１１を設け、このデータバス暗号処理手段１１により、外部メモリ装置からのデータを復号化し、また外部メモリ装置へ出力するデータを暗号化しているので、外部メモリ装置に格納されている暗号化されたプログラムを読み込んでデバックすることができるとともに、処理したデータを暗号化して外部メモリ装置に格納することができる。
【００３０】
図４は、このようにして外部メモリ装置に格納されたデータと従来の格納データを示した図である。従来のデータは、そのまま格納されているので外部メモリ装置から読み出しただけでその内容が分かってしまうが、本実施形態のマイクロプロセッサに接続する外部メモリ装置では、暗号化されたデータを格納するので、外部メモリ装置から読み出しても復号化しないとデータの内容は分からない。
【００３１】
次に、図５から図８は本発明の第２の実施の形態のマイクロプロセッサとそのプログラム作成装置及びプログラムデバック装置を示す図である。なお、本実施の形態は、上述の第１の実施の形態と略同様に構成されているので、同様な構成には同一の符号を付して特徴部分のみ説明する。
【００３２】
本実施の形態のマイクロプロセッサは、図５に示すように、マイクロプロセッサ本体２１にアドレスバス２２ａを介してアドレスバス暗号処理手段１２を接続し、このアドレスバス暗号処理手段１２を、アドレスバス２２ｂを介して外部メモリ装置に接続し、マイクロプロセッサ本体２１から出力されるアドレス情報を暗号化することを特徴とする。
【００３３】
このようなマイクロプロセッサにおいて、マイクロプロセッサ本体２１が、処理するプログラムを外部メモリ装置から読み込むためにアドレスバス２２ａにアドレス信号を出力すると、このアドレス信号はアドレスバス暗号処理手段１２に入力され、アドレスバス暗号処理手段１２で周知の暗号化処理により暗号化され、アドレスバス２２ｂを介して外部メモリ装置に入力される。
【００３４】
外部メモリ装置は、暗号化処理されたアドレスを入力されると、暗号化処理されたアドレスをそのままアドレスとして、そのアドレスに保存されているプログラムを、データバス２３を介してマイクロプロセッサ本体２１に出力する。
【００３５】
このように本実施の形態のマイクロプロセッサにおいては、外部メモリ装置にアドレス情報を出力するアドレスバス上にアドレスバス暗号処理手段１２を設け、このアドレスバス暗号処理手段１２により外部メモリ装置へ出力するアドレス情報を暗号化しているので、暗号化処理されたアドレスで外部メモリ装置にアクセスすることができる。
【００３６】
次に、図６は本実施の形態のプログラム作成装置の構成を示すブロック図である。このプログラム作成装置は、本実施の形態のマイクロプロセッサで処理を行わせるプログラムを作成するためのものである。
【００３７】
図６に示すように、本実施の形態のプログラム作成装置は、プログラム作成部３１にアドレスバス３２ａを介してアドレスバス暗号処理手段１２を接続し、このアドレスバス暗号処理手段１２を、アドレスバス３２ｂを介してプログラム書込み部３４に接続し、プログラム作成部３１から出力されるアドレス情報を暗号化することを特徴とする。
【００３８】
このようなプログラム作成装置において、プログラム作成部３１が、作成したプログラムを外部メモリ装置に格納するためにアドレスバス３２ａにアドレス信号を出力すると、このアドレス信号はアドレスバス暗号処理手段１２に入力され、アドレスバス暗号処理手段１２で周知の暗号化処理により暗号化され、アドレスバス３２ｂを介してプログラム書込み部３４に入力される。
【００３９】
プログラム書込み部３４は、暗号化処理されたアドレスを入力されると、暗号化処理されたアドレスをそのままアドレスとして、外部メモリ装置のそのアドレスにデータバス３３を介して入力されたデータを書き込む。
【００４０】
このように本実施の形態のプログラム作成装置においては、外部メモリ装置にプログラムを書き込むプログラム書込み部３４へアドレス情報を出力するアドレスバス上にアドレスバス暗号処理手段１２を設け、このアドレスバス暗号処理手段１２によりプログラム書込み部３４へ出力するアドレス情報を暗号化しているので、外部メモリ装置の暗号化処理されたアドレスにプログラムを書き込むことができる。
【００４１】
次に、図７は本実施の形態のプログラムデバック装置の構成を示すブロック図である。このプログラムデバック装置は、本実施の形態のマイクロプロセッサで処理を行わせるプログラムをデバックするためのものである。
【００４２】
図７に示すように、本実施の形態のプログラムデバック装置は、プログラムデバック部４１にアドレスバス４２ａを介してアドレスバス暗号処理手段１２を接続し、このアドレスバス暗号処理手段１２をアドレスバス４２ｂを介して外部メモリ装置に接続し、プログラムデバック部４１から出力されるアドレス情報を暗号化することを特徴とする。
【００４３】
このようなプログラムデバック装置において、プログラムデバック部４１が、デバックするプログラムを外部メモリ装置から読み込むためにアドレスバス４２ａにアドレス信号を出力すると、このアドレス信号はアドレスバス暗号処理手段１２に入力され、アドレスバス暗号処理手段１２で周知の暗号化処理により暗号化され、アドレスバス４２ｂを介して外部メモリ装置に入力される。
【００４４】
外部メモリ装置は、暗号化処理されたアドレスを入力されると、暗号化処理されたアドレスをそのままアドレスとして、そのアドレスに保存されているプログラムを、データバス４３を介してプログラムデバック部４１に出力する。
【００４５】
このように本実施の形態のプログラムデバック装置においては、外部メモリ装置にアドレス情報を出力するアドレスバス上にアドレスバス暗号処理手段１２を設け、このアドレスバス暗号処理手段１２により外部メモリ装置へ出力するアドレス情報を暗号化しているので、暗号化処理されたアドレスで外部メモリ装置にアクセスすることができる。
【００４６】
図８は、このようにして外部メモリ装置に格納されたデータと従来の格納データを示した図である。従来の外部メモリ装置には、連続したアドレスに関連した一連のプログラムやデータが格納されているので、外部メモリ装置から読み出しただけでその処理内容やデータの内容が分かってしまうが、本実施形態のマイクロプロセッサに接続する外部メモリ装置では、暗号化されたアドレスにデータを格納するので、外部メモリ装置から読み出してもアドレスを復号化してデータを並べ替えないと処理内容やデータの内容は分からない。
【００４７】
なお、上述の各実施の形態の暗号化処理は、元のデータと暗号化後のデータが１対１に対応し、暗号化後のデータから元のデータへの復号化が可能なものでなければならないことはいうまでもない。
【００４８】
【発明の効果】
以上説明したように、本発明によれば、外部デバイスへアクセスする際のアドレスや外部デバイスとやり取りするデータを暗号化することにより、暗号化されたプログラムやデータを格納した外部デバイスと接続して処理を行うことができ、機密性の高いプログラムやデータの処理をセキュリティを確保しつつ行うことができる。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態のマイクロプロセッサを示す概略ブロック図
【図２】本発明の第１の実施の形態のプログラム作成装置を示す概略ブロック図
【図３】本発明の第１の実施の形態のプログラムデバック装置を示す概略ブロック図
【図４】本発明の第１の実施の形態によるデータの格納状態を示す図
【図５】本発明の第２の実施の形態のマイクロプロセッサを示す概略ブロック図
【図６】本発明の第２の実施の形態のプログラム作成装置を示す概略ブロック図
【図７】本発明の第２の実施の形態のプログラムデバック装置を示す概略ブロック図
【図８】本発明の第２の実施の形態によるデータの格納状態を示す図
【図９】従来のマイクロプロセッサを示す概略ブロック図
【図１０】従来のプログラム作成装置を示す概略ブロック図
【図１１】従来のプログラムデバック装置を示す概略ブロック図
【符号の説明】
１１  データバス暗号処理手段
１２  アドレスバス暗号処理手段
２１  マイクロプロセッサ本体
２２、２２ａ、２２ｂ  アドレスバス
２３、２３ａ、２３ｂ  データバス
３１  プログラム作成部
３２、３２ａ、３２ｂ  アドレスバス
３３、３３ａ、３３ｂ  データバス
３４  プログラム書込み部
４１  プログラムデバック部
４２、４２ａ、４２ｂ  アドレスバス
４３、４３ａ、４３ｂ  データバス
７１  マイクロプロセッサ本体
７２  アドレスバス
７３  データバス
８１  プログラム作成部
８２  アドレスバス
８３  データバス
８４  プログラム書込み部
９１  プログラムデバック部
９２  アドレスバス
９３  データバス
【図１】
0004247311.tif 000002
【図２】
0004247311.tif 000003
【図３】
0004247311.tif 000004
【図４】
0004247311.tif 000005
【図５】
0004247311.tif 000006
【図６】
0004247311.tif 000007
【図７】
0004247311.tif 000008
【図８】
0004247311.tif 000009
【図９】
0004247311.tif 000010
【図１０】
0004247311.tif 000011
【図１１】
0004247311.tif 000012