(57)【要約】【課題】  異なるプログラムを異なる格納者がメモリにインストールしてもプログラム間のセキュリティを確保できるマイクロコンピュータを提供する。【解決手段】  マイクロコンピュータは、所定プログラム２２ａ〜２２ｎを格納するメモリ１２と、所定の命令１５ｂに基づきメモリに格納されたプログラムを読出して所定の演算を処理するＣＰＵ１３と、メモリ１２からのプログラムの読出しを制御する読出し制御部１７とを備えるマイクロコンピュータにおいて、メモリ１２に設けられた判別標識をそれぞれ有する複数のメモリエリア１２ａ〜１２ｎと、異なる判別標識を用いてメモリエリアを判別する判別手段２３と、判別手段２３の判別結果に基づいて他のプログラムが格納されたメモリエリアの読出しを禁止する読出し制御手段２４と、を備える。【選択図】  図１
2005129041.tif 000002
【特許請求の範囲】
【請求項１】
所定のプログラムを格納するメモリと、所定の命令に基づき前記メモリに格納されたプログラムを読出して所定の演算を処理するＣＰＵと、前記メモリからの前記プログラムの読出しを制御する読出し制御部とを備えるマイクロコンピュータにおいて、
前記メモリに設けられた判別符号をそれぞれ有する複数のメモリエリアと、
異なる前記判別符号を用いてメモリエリアを判別する判別手段と、
前記判別手段の判別結果に基づいて、他のプログラムが格納されたメモリエリアの読出しを禁止する読出し制御手段と、
を備えることを特徴とするマイクロコンピュータ。
【請求項２】
前記命令を受けたときのアドレスにより前記メモリのアドレス空間へのアクセスを許可するアドレスデコーダと、前記メモリへのアクセスが許可されたときに前記メモリからの前記プログラムの読出しを制御する読出し制御部と、をさらに備え、前記複数のメモリエリアは、前記メモリに設けられてプログラム毎に異なる判別符号をそれぞれ有する複数のプログラムをそれぞれのプログラム毎に記憶し、前記判別手段は、それぞれのプログラム毎に異なる前記判別符号を用いてそれぞれのプログラムが格納されるメモリエリアを判別し、読出し制御手段は、前記判別符号が対応するプログラムのものであると判別されたときのみそのプログラムの格納されたメモリエリアへのアクセスを許可すると共に、あるプログラム用の判別符号により他のプログラムの格納されたメモリエリアへのアクセスを禁止するようにプログラムの読み出しを制御することを特徴とする請求項１に記載のマイクロコンピュータ。
【請求項３】
前記読出し制御手段は前記読出し制御部に設けられると共に、前記判別手段は前記ＣＰＵまたは前記読出し制御部の何れか内に設けられていることを特徴とする請求項１に記載のマイクロコンピュータ。
【請求項４】
前記判別手段は前記アドレスデコーダ内に設けられると共に、前記読出し制御手段は前記読出し制御部に設けられていることを特徴とする請求項１に記載のマイクロコンピュータ。
【請求項５】
内部メモリと外部メモリとの間のアクセスを直接制御するダイレクトメモリアクセスコントローラをさらに備え、前記判別手段は前記ダイレクトメモリアクセスコントローラに設けられると共に、前記読出し制御手段は前記読出し制御部に設けられていることを特徴とする請求項１に記載のマイクロコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マイクロプロセッサとプログラム格納メモリを備えたマイクロコンピュータに係り、特に複数のユーザによって異なるプログラムをインストールする際のユーザ間のセキュリティを保持することのできるマイクロコンピュータに関する。
【背景技術】
【０００２】
近年、マイクロコンピュータを製造して出荷する際に、複数のプログラムを予めメモリにインストールして提供するような状況が多くなってきている。このような状況において予めインストールされるプログラムは、異なる複数のソフトウェア販売者により著作権を保有されているので、マイクロコンピュータが複数のプログラムユーザの手を介して順次インストールされる際に、プログラムのセキュリティを確保できるか否かが問題となる。
【０００３】
特許文献１は、外部にプログラムメモリを増設できるマイクロコンピュータであり、命令フェッチのアドレスが内蔵アドレス空間に存在しない場合には内蔵アドレスからの読出しを禁止するように構成されたマイクロコンピュータを開示している。
【０００４】
特許文献２は、各プログラムに、他のプログラムからのアクセスを禁止する禁止エリアと他のプログラムからのアクセスを許可する許可エリアの少なくとも１つを設定する設定手段を設けたマルチプログラム実行制御装置および方法を開示している。
【０００５】
特許文献３は、プログラム可能な第１の領域とこの第１の領域へのプログラムの可否を指定する第２の領域とを備えるフラッシュメモリと、外部からのプログラミング要求があったときにフラッシュメモリの第２の領域を参照して第１の領域のプログラミングの実行の可否を判断するマイクロプロセッサとを備えるマイクロコンピュータを開示している。
【０００６】
特許文献４は、割り込み信号の発生を契機としてＣＰＵにより起動され、ソフトウェアによるアクセスが不当なものである場合に不揮発性記憶装置の書換えを禁止する書き換え制御手段を備える情報処理装置を開示している。
【０００７】
これらの特許文献１〜４は、何れもプログラムセキュリティ機能付きのマイクロコンピュータを開示しているが、何れのものにおいても、アクセスを実行するための命令列に対して、その命令列の保管場所が特定のメモリエリアであるか否かを判別する判別手段を設け、この判別手段を用いて命令実行時のメモリからのデータの読み出しの実行可否を判断していた。
【０００８】
すなわち、図１３に示す従来のマイクロコンピュータ１は、所定のプログラムを格納するメモリ２と、所定の命令列の入力に基づいて所定の演算処理を実行する中央処理装置（以下、ＣＰＵ ―Central Processing Unit―）３と、命令バスを介してＣＰＵ１にデバッグ・サポート・ユニット（以下、ＤＳＵ―Debug Support Unit―）命令を供給するＤＳＵ命令保持部４と、ＣＰＵ３内で処理される判別ビット５ａおよび命令列５ｂと、メモリ２に格納されたプログラムのアドレスを管理するアドレスデコーダ６と、ＣＰＵ３からの読出し許可信号に基づいてメモリからのプログラムの読み出しを制御する読出し制御部７を備えている。
【０００９】
マイクロコンピュータ１はさらに、システム外部のメモリから内部のメモリへの直接アクセスを制御するダイレクトメモリアクセス（以下、ＤＭＡ―Direct Memory Access―）制御部８と、チップ外部とのアクセスを可能にするチップ外部インターフェース９を備えている。
【００１０】
従来のマイクロコンピュータ１においては、命令バスを介してＣＰＵ３に供給されたアクセス実行用の命令列５ｂに対して、命令列の格納場所がメモリ２の何れのメモリエリアであるかを判別する判別ビット５ａを付与している。この命令列格納場所の判別手段としての判別ビット５ａを付与しておくことにより、コンピュータシステムの内部メモリに格納されたプログラムやデータを保護することができ、一応のプログラムセキュリティ機能を果たしていた。
【特許文献１】特開平７−２００４１３号公報
【特許文献２】特開平８−２７２６２５号公報
【特許文献３】特開２０００−１８１８９８号公報
【特許文献４】特開２００２−７２１４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、従来のマイクロコンピュータにおいては、プログラムを格納するメモリエリアがメモリ内に１つだけ設けられている。また、命令列格納場所の判別手段としての判別ビットも１つ設けられているだけである。このため、複数のプログラム提供者達が１つのメモリに対してそれぞれのプログラムを複数インストールする場合でも、１つの判別ビットを使い回して、１つのメモリエリアにアクセスしてプログラムを内部メモリにインストールしていた。
【００１２】
したがって、判別ビットが一致してメモリへのアクセスが許可されると、他のプログラム提供者の格納したプログラムの読出しが可能となり、コンピュータシステムにおける内部メモリに対する基本的なプログラムセキュリティ機能は確保していながら、既にインストールされた特定のプログラムに対するプログラムセキュリティ機能を担保することができないという問題点があった。
【００１３】
すなわち、近年はメモリ容量の増加と高性能化による多機能化が進んでいる反面、製品サイクルの早さにより開発期間の短縮が非常に重要になっている。そのため、短い開発期間の中で複数の高度なコア技術を搭載させるにあたり、それぞれのコア技術をそれぞれの専門技術者に委託しなければならないような状況が増えてきている。このような状況においては各々のソフトウェアが順次メモリにプログラムされていかなければならないが、ソフトウェア相互間の機密性を保持させるためには、従来のように１つの判別ビットしか有さないマイクロコンピュータの場合、複数のマイクロコンピュータを使用して相互の通信によりアクセスを制御するか、オペレーティングシステム（ＯＳ―Operating System―）を用いるかしか方法がないという問題点があった。
【００１４】
このような状況においては各々のソフトウェアが順次メモリにプログラム（または、インストール）されていかなくてはならないが、１つの判別ビットしか用いない場合には、前の販売者が特定のプログラムをインストールしたメモリを受け取った次の販売者が、同一の判別ビットによりアクセスを許容されて異なるプログラムをインストールした際に、既に格納されているプログラムの内容が異なるプログラム販売者により読み出されてしまうという問題点があった。
【００１５】
そのため、ソフトウェアの機密性を保持するためには、重ライン用に１つの判別ビットしか有しないマイクロコンピュータを複数使用して相互の通信によりアクセスを制御するか、オペレーティングシステム（ＯＳ）を用いるというのが一般的な手法であった。
【００１６】
本発明の目的は、異なる複数のプログラムを異なる格納者がメモリにインストールする場合であっても、プログラム間のセキュリティを確保することのできるマイクロコンピュータを提供することにある。
【課題を解決するための手段】
【００１７】
上記目的を達成するため、本発明の基本構成に係るマイクロコンピュータは、所定のプログラムを格納するメモリと、所定の命令に基づき前記メモリに格納されたプログラムを読出して所定の演算を処理するＣＰＵと、前記メモリからの前記プログラムの読出しを制御する読出し制御部とを備えるマイクロコンピュータにおいて、前記メモリに設けられた判別符号をそれぞれ有する複数のメモリエリアと、異なる前記判別符号を用いてメモリエリアを判別する判別手段と、前記判別手段の判別結果に基づいて、他のプログラムが格納されたメモリエリアの読出しを禁止する読出し制御手段と、を備えることを特徴としている。
【発明の効果】
【００１８】
本発明によるマイクロコンピュータによれば、内部メモリをプログラム毎のメモリエリアに分割すると共に、各プログラムを判別標識（例えば、アドレスなど）により判別する判別手段を設けたので、異なる複数のプログラムを異なる格納者がメモリにインストールする場合であっても、プログラム間のセキュリティを確保することのできるマイクロコンピュータを提供することができる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明に係るマイクロコンピュータの実施形態について、添付図面を参照しながら詳細に説明する。
【００２０】
第１実施形態
まず、図１を用いて、本発明の基本概念を示す第１実施形態に係るマイクロコンピュータについて説明する。
【００２１】
図１において、第１実施形態に係るマイクロコンピュータ１１は、複数のメモリエリア毎にそれぞれ所定のプログラムを格納する内部メモリ１２と、所定の命令に基づき内部メモリ１２に格納されたプログラムを読出して所定の演算を処理するＣＰＵ１３と、命令を受けたときのアドレスによりメモリ１２のアドレス空間へのアクセスを許可するアドレスデコーダ１６と、メモリ１２へのアクセスが許可されたときにメモリ１２からのプログラムの読出しを制御する読出し制御部１７とを備え、全体としてチップ化されている。
【００２２】
このような基本構成を有するマイクロコンピュータ１１において、内部メモリ１２に設けられてプログラム毎に判別符号としての異なる判別標識（例えば、アドレスなど）２１ａ，２１ｂ，…，２１ｎをそれぞれ有する複数のプログラム２２ａ，２２ｂ，…，２２ｎをそれぞれのプログラム毎に記憶する複数のメモリエリア１２ａ，１２ｂ，…，１２ｎと、それぞれのプログラム２２ａ，２２ｂ，…，２２ｎ毎に異なる判別標識２１ａ，２１ｂ，…，２１ｎを用いてそれぞれのプログラム２２ａ，２２ｂ，…，２２ｎが格納されるメモリエリア１２ａ，１２ｂ，…，１２ｎを判別する判別手段２３と、それぞれの判別標識２１ａ，２１ｂ，…，２１ｎに対応するプログラムのものであると判別されたときのみそのプログラムの格納されたメモリエリアへのアクセスを許可すると共にあるプログラム例えば２２ａ用の判別標識２１ａにより他のプログラム例えば２２ｂ〜２２ｎの格納されたメモリエリア１２ｂ〜１２ｎへのアクセスを禁止するようにプログラムの読み出しを制御する読出し制御手段２４とを備えている。
【００２３】
マイクロコンピュータ１１のその他の構成としては、従来のマイクロコンピュータ１と同様に、入力された命令に対して各種の処理を行なうＣＰＵ１３と、ＣＰＵ１３内で処理される判別ビット１５ａおよび命令列１５ｂと、メモリ１２内のメモリエリア１２ａ〜１２ｎに格納されたプログラム２２ａ〜２２ｎのアドレスを管理するアドレスデコーダ１６と、ＣＰＵ１３からの読出し許可信号に基づいてメモリ１２からのプログラムの読み出しを制御する読出し制御部１７を備えている。
【００２４】
マイクロコンピュータ１１はさらに、システム外部のメモリから内部のメモリへの直接アクセスを制御するＤＭＡ制御部１８と、チップ外部とのアクセスを可能にするチップ外部インターフェース１９と、マイクロコンピュータ１１内の命令を伝達する命令バス２０と、内部メモリ１２とＣＰＵ１３との間でのデータの送受を仲介するデータバス２５とを備えている。なお、読出し制御手段２４は、読出し制御部１７に設けられているが、判別手段２３は、図１に点線で表示したように、ＣＰＵ１３に設けるようにしても良いし、アドレスデコーダ１６，読出し制御部１７、ＤＭＡ制御部１８の何れかに設けるようにしても良い。
【００２５】
第２実施形態
次に、図２を参照しながら、本発明の第２実施形態に係るマイクロコンピュータについて説明する。図２において、図１と同一符号を付した構成要素は、第１実施形態に係るマイクロコンピュータの構成要素と同一または相当する構成要素を示している。図２では、明確に表示していないが、判別ビット１〜ｎのアドレスとの一致をみてから読出し許可信号１〜ｎを読出し制御部１７の読出し制御手段２４へ出力する判別手段２３が、ＣＰＵ１３内に設けられている。
【００２６】
格納用メモリエリア１２ａ〜１２ｎにはそれぞれの判別標識と共にプログラムが格納されている。アドレスデコーダ１６より送出されたセレクト信号１〜セレクト信号ｎがメモリ１２に入力されると共にＣＰＵ１３にも入力されて、ＤＳＰ命令保持部１４からの命令に付加された判別ビット１ないし判別ビットｎとの間で判別を行ない、判別手段２３がセレクト信号１と判別ビット１の一致からセレクト信号ｎと判別ビットｎの一致までについて判別すると、それぞれのメモリエリア１２ａないし１２ｎの何れかへのアクセスが許可される。判別手段２３が一致を検出しなかったものについてはアクセスが許可されない。
【００２７】
これにより、メモリエリア１２ａ〜１２ｎにそれぞれ格納されているプログラム２２ａ〜２２ｎが読出し制御部１７を介して、ＣＰＵ１３またはＤＭＡ制御部１８やチップ外部インターフェース１９などに読み出される。この第２実施形態に係るマイクロコンピュータ１１は、判別手段２３がＣＰＵ１３内に設けられた構成を有している。以下、概略的な動作について説明する。
【００２８】
ＣＰＵ１３からメモリ１２に接続されたアドレス線２６は、アドレスデコーダ１６にも接続されている。アドレスデコーダ１６は、セレクト信号１〜ｎをメモリ１２のメモリエリア１２ａ〜１２ｎに出力すると共に、同じセレクト信号１〜ｎをＣＰＵ１３の判別手段２３にも出力する。判別手段２３が判別ビットとセレクト信号との一致を判別すると読出し許可信号１〜ｎが読出し制御部１７に出力されて、データバスＡ１〜Ａｎを介してデータが読み出され、次いでデータバスＢを介して、ＣＰＵ１３，ＤＭＡ制御部１８，チップ外部インターフェース１９の何れかに読み出されたデータが供給される。
【００２９】
以上、動作を中心にして、第２実施形態に係るマイクロコンピュータの構成について説明した。この第２実施形態は、判別手段２３がＣＰＵ１３内に設けられているものとして説明したが、第１実施形態でも説明したように、判別手段２３は、アドレスデコーダ１６内に設けられていても良く、さらに、読出し制御部１７に設けられていてもＤＭＡ制御部１８に設けられていても良い。なお、本発明は上記実施形態に限定されず、種々の変形を行なうことが可能である。
【００３０】
第３実施形態
次に、判別標識としてアドレスを使用した場合の最も単純な構成としての第３実施形態に係るマイクロコンピュータについて図３を用いて説明する。図３に示す第３実施形態に係るマイクロコンピュータは、図２に示す第２実施形態のマイクロコンピュータと比較すると、ＤＳＵ命令保持部１４、ＤＭＡ制御部１８、チップ外部インターフェース１９が設けられている必要がなく、ＣＰＵ１３内の判別手段が命令アドレス１５ａとデータアドレス２７とを判別する構成となっている。
【００３１】
第３実施形態に係るマイクロコンピュータの動作について説明する。ＣＰＵ１３内に所定の命令が設定されたときに、この命令が単なる処理を実行する命令であるかメモリ１２のプログラム格納用のメモリエリア１２ａ〜１２ｎへのアクセス命令であるか否かにより、動作が異なる。単なる処理を実行する命令である場合には、そのまま処理が実行される。メモリエリアへのアクセス命令である場合には、プログラム読出し命令であるのでアクセスするメモリエリアが所定のメモリエリアであるか否かが判断される。
【００３２】
この場合、ＣＰＵ１３内の判別手段２３によって、命令列１５ｂが格納されていた命令アドレス１５ａと、その命令列１５ｂの読出し先のデータアドレス２７とを同一の領域からの読出しであるか否かが判断される。ＣＰＵ１３内の判別手段２７が命令列１５ｂを同一領域からの読出しであるものと判断した場合、読出し許可信号１〜ｎが読出し制御部１７へ出力され、データバス２５を介してデータが読み出される。
【００３３】
この第３実施形態に係るマイクロコンピュータにおいては、判別手段２３がＣＰＵ１３内に設けられるものとして説明されているが、図１に示した第１実施形態でも説明したように、読出し制御部１７内に設けられていても良く、また、メモリ１２の内部に設けられていても良い。
【００３４】
第４実施形態
次に、第４実施形態に係るマイクロコンピュータについて、図４を参照しながら説明する。第４実施形態のマイクロコンピュータは、図４に示すように、第３実施形態に係るマイクロコンピュータのデータバス２５およびアドレス線２６を、命令列用の命令アドレス線２８／命令バス２０と、データ用のデータアドレス線２６／データバス２５と、に分けた場合の構成例を示している。
【００３５】
第３実施形態と同様に、ＣＰＵ１３内の判別手段２３によって、命令列１５ｂが格納されていた命令アドレス１５ａとその命令列１５ｂの読出し先のデータアドレスとを同一の領域からの読出しであるか否かが判断される。同一領域からの読出しであるものと判断された場合には、読出し許可信号１〜ｎが読出し制御部１７に出力されて、データバス２５を介してデータが読み出される。
【００３６】
この第４実施形態に係るマイクロコンピュータにおいてもまた、判別手段２３がＣＰＵ１３内に設けられるものとして説明されているが、図１に示した第１実施形態でも説明したように、読出し制御部１７内に設けられていても良く、また、メモリ１２の内部に設けられていても良い。
【００３７】
第５実施形態
第５実施形態に係るマイクロコンピュータは、図４に示した第４実施形態に係るマイクロコンピュータのメモリ１２、ＣＰＵ１３、読出し制御部１７の構成に対して、ＤＳＵ命令保持部、アドレスデコーダ、ＤＭＡ制御部、チップ外部インターフェースを追加した構成となっている。
【００３８】
第５実施形態のマイクロコンピュータは具体的には、図５に示すように、命令バス２０に対してＤＳＵ（デバッグ・サポート・ユニット）命令を保持させるＤＳＵ命令保持部１４と、読出し制御部１７よりデータバスＢ２５を介して供給された読出し制御信号に基づいてデータアドレス線２６にアドレス制御信号を出力するＤＭＡ制御部１８と、アドレスデコーダ１６と読出し制御部１７からの信号に基づいてチップ外部とのアクセスを可能にするチップ外部インターフェース１９とを備えている。
【００３９】
図５に示す第５実施形態に係るマイクロコンピュータの動作について、図６ないし図８を参照して説明する。図６および図７は第５実施形態のマイクロコンピュータのタイミングチャートを示し、図８は図５のハードウェア構成の動作を説明するためのフローチャートを示している。図６および図７は、ＤＳＵ命令保持部１４より命令バス２０を介してＣＰＵ１３に送られる命令が、あるブロック１のアドレスにプログラムされているあるブロック２のアドレスのデータ読出し命令である命令コード１の場合の動作を示しており、図６は読出し許可信号２が読出しを禁止する場合を示し、図７は読出し許可信号２が読出しを許可する場合を示している。
【００４０】
図６において、内部クロックはシステムに固有のクロック信号であり、このクロック信号に基づいてシステム内の処理が行なわれる。命令アドレス線２８を介してＣＰＵ１３に入力される命令アドレス１５ａはブロック１（例えば、メモリエリア１）であり、命令バス２０を介して入力される命令列１５ｂは命令コード１である。命令コード１の読出し命令によりデータアドレス２７は、ブロック２（例えば、メモリエリアｎ）である場合、命令の内容が格納されているデータへのアクセスであったならば、図６に示す命令バスは命令アドレスとデータアドレスとが一致しないときには読出しを禁止するように制御される。
【００４１】
したがって、データアドレス２７がブロック２である場合、読出し許可信号２に所定のタイミングで立ち下がって読出しを禁止して、データバス２５に設けられた読出し制御部１７が例えばダミーデータを送出して格納されたプログラムをＣＰＵ１３内に読み出すことができないようにしている。
【００４２】
これに対して、図７に示すタイミングチャートの場合には、読出しを指示された命令列が例えばプログラム格納エリアへのアクセスではなく、例えば単なる命令の実行であるようなときであり、このときには命令アドレスがブロック１でデータアドレスがブロック２であっても読出し許可信号２は、読出しを禁止するために立ち下がることはない。したがって、データバス２５にはデータが出力される。
【００４３】
このようなタイミングで動作する図５のマイクロコンピュータにおけるハードウェアに基づく動作を図８のフローチャートを参照して説明する。図８のステップＳＴ１において、ＣＰＵ１３は例えばメモリ等から読み出された命令が命令バス２０を介してフェッチされる。ステップＳＴ２においては、命令列１５ｂに含まれる命令コード等により命令の内容がメモリ読出し命令であるか否かが判断され、メモリ読出し命令でないものと判断された場合にはステップＳＴ３において、命令が実行される。このとき、図７に示すタイミングチャートにおいては、読出し許可信号２が変化しないために、命令アドレスとデータアドレスとが一致しなくても読出しが禁止されない。
【００４４】
ステップＳＴ２でフェッチされた命令がメモリ読出し命令であるものと判断された場合には、ステップＳＴ４において、読み出す対象が格納されているメモリエリアが同一であるか否かが判断される。具体的には、命令アドレス１５ａとデータアドレス２７とが同一であるか否かが判断される。図６に示すタイミングチャートの例では、命令アドレスにはブロックＢＬＫ１が立ち、データアドレスにはブロックＢＬＫ２が立っているので、命令アドレス１５ａは例えば格納用メモリエリア１２ａに格納されているプログラムを読み出すように命令しているのに対して、判別されるデータアドレス２７は例えば格納用メモリエリア１２ｂに格納されているデータを読み出すことを示している。したがって、ステップＳＴ４はＳＴ５に進んで図６における命令アドレスおよびデータアドレスのＢＬＫ１とＢＬＫ２との不一致により読出し許可信号２は読出しを禁止したままとなり、ステップＳＴ６で読出しが制御され、ステップＳＴ８で例えばダミーデータが出力される。
【００４５】
この場合、図７に示すタイミングチャートのように、データアドレスにブロックＢＬＫ１が立っていると、判別手段２３は命令アドレス１５ａとデータアドレス２７がＢＬＫ１で一致しているものと判別するので、図８のステップＳＴ７において読出し許可信号を許可に設定し、ステップＳＴ８の命令の実行において正規のデータを読み出すという命令が実行される。
【００４６】
上述した第５実施形態に係るマイクロコンピュータは、命令アドレス１５ａとその命令列１５ｂの読出し先のデータアドレス２７とを同一領域からの読出しであるか否かを判別する判別手段２３が、ＣＰＵ１３内に設けられるものとして説明したが、判別手段２３はＣＰＵ１３内に設けられる構成に限定されず、アドレスデコーダ１６内や、読出し制御部１７内、またはＤＭＡ制御部１８内に設けるようにしても良い。以下、これらの構成について、図９ないし図１２に示すブロック図に示す第６ないし第９実施形態に係るマイクロコンピュータとして説明する。
【００４７】
第６実施形態
図９に示す第６実施形態のマイクロコンピュータは、判別手段２３がアドレスデコーダ１６に設けられている構成を有している。ＣＰＵ１３内には命令アドレス１５ａと命令列１５ｂを含む命令がフェッチされ、このフェッチされた命令の命令アドレス１５ａと命令の読出し先のデータアドレス２７とが、命令アドレス線２８およびデータアドレス線２６を介してメモリ１２に送られる。
【００４８】
アドレスデコーダ１６に設けられた判別手段２３は、２つのアドレス線１８，２６のアドレスを判別し、命令の読み出し対象が同一のメモリエリアに格納されているデータである場合には読出し許可信号１〜ｎを許可にすると共に、異なるメモリエリアに格納されているデータである場合には読出し許可信号１〜ｎの何れかを禁止にする。読出し許可信号１〜ｎは読出し制御部１７に出力されて、データバス２５を介してメモリ１２からＣＰＵ１３へ送られる格納データの読出しを許可したり禁止したりしている。
【００４９】
このメモリ格納データの読み出しの許可と禁止の具体的な動作は、図６ないし図８を用いて説明しているので、重複説明を省略する。
【００５０】
第７実施形態
図１０に示す第７実施形態のマイクロコンピュータも、判別手段２３がアドレスデコーダ１６に設けられている構成を有している。この構成は、図９に示す第６実施形態と異なり、読出し制御部１７が、判別手段２３と共にアドレスデコーダ１６内に設けられた構成となっている。
【００５１】
この第７実施形態のマイクロコンピュータは、判別手段２３が命令アドレス１５ａとデータアドレス２７との判別により、読出し許可信号１〜ｎを読出し制御部１７に出力しており、読出し制御部１７は受け入れた読出し許可信号１〜ｎに基づいてセレクト信号１〜ｎをメモリ１２に対して出力している。したがって、判別手段２３の判別結果がセレクト信号１〜ｎとしてメモリに対して送られている点で他の実施形態と異なっている。
【００５２】
第８実施形態
図１１に示す第８実施形態のマイクロコンピュータは、判別手段２３が、読出し制御部１７に設けられている構成を有している。ＣＰＵ１３内には命令アドレス１５ａと命令列１５ｂを含む命令がフェッチされ、このフェッチされた命令に関する命令アドレス１５ａと命令の読出し先のデータアドレス２７とが、命令アドレス線２８およびデータアドレス線２６を介してメモリ１２に送られる。
【００５３】
読出し制御部１７に設けられた判別手段２３は、２つのアドレス線１８，２６のアドレスを判別し、命令の読み出し対象が同一のメモリエリアに格納されているデータである場合には読出し許可信号１〜ｎを許可にすると共に、異なるメモリエリアに格納されているデータである場合には読出し許可信号１〜ｎの何れかを禁止にする。読出し許可信号１〜ｎは読出し制御部１７内に設けられた読出し制御手段２４に出力され、データバス２５を介してメモリ１２からＣＰＵ１３へ送られる格納データの読出しを許可したり禁止したりしている。
【００５４】
このメモリ格納データの読み出しの許可と禁止の具体的な動作は、図６ないし図８を用いて説明しているので、重複説明を省略する。
【００５５】
第９実施形態
図１２に示す第９実施形態のマイクロコンピュータは、判別手段２３が、ＤＭＡ制御部１８に設けられている構成を有している。ＣＰＵ１３内には命令アドレス１５ａと命令列１５ｂを含む命令がフェッチされ、このフェッチされた命令に関する命令アドレス１５ａと命令の読出し先のデータアドレス２７とが、命令アドレス線２８およびデータアドレス線２６を介してメモリ１２に送られる。
【００５６】
ＤＭＡ制御部１７に設けられた判別手段２３は、２つのアドレス線１８，２６のアドレスを判別し、命令の読み出し対象が同一のメモリエリアに格納されているデータである場合には読出し許可信号１〜ｎを許可にすると共に、異なるメモリエリアに格納されているデータである場合には読出し許可信号１〜ｎの何れかを禁止にする。読出し許可信号１〜ｎは読出し制御部１７に出力され、データバス２５を介してメモリ１２からＣＰＵ１３へ送られる格納データの読出しを許可したり禁止したりしている。
【００５７】
このメモリ格納データの読み出しの許可と禁止の具体的な動作は、図６ないし図８を用いて説明しているので、重複説明を省略する。
【図面の簡単な説明】
【００５８】
【図１】本発明の第１実施形態に係るマイクロコンピュータの構成を示すブロック図である。
【図２】本発明の第２実施形態に係るマイクロコンピュータの構成を示すブロック図である。
【図３】本発明の第３実施形態に係るマイクロコンピュータの構成を示すブロック図である。
【図４】本発明の第４実施形態に係るマイクロコンピュータの構成を示すブロック図である。
【図５】本発明の第５実施形態に係るマイクロコンピュータの構成を示すブロック図である。
【図６】第５実施形態のマイクロコンピュータの動作を示すタイミングチャートである。
【図７】第５実施形態のマイクロコンピュータの動作を示すタイミングチャートである。
【図８】第５実施形態のマイクロコンピュータの動作を示すフローチャートである。
【図９】本発明の第６実施形態に係るマイクロコンピュータの構成を示すブロック図である。
【図１０】本発明の第７実施形態に係るマイクロコンピュータの構成を示すブロック図である。
【図１１】本発明の第８実施形態に係るマイクロコンピュータの構成を示すブロック図である。
【図１２】本発明の第９実施形態に係るマイクロコンピュータの構成を示すブロック図である。
【図１３】従来のマイクロコンピュータの構成を示すブロック図である。
【符号の説明】
【００５９】
１１  マイクロコンピュータ
１２  内部メモリ
１２ａ〜１２ｎ  メモリエリア
１３  ＣＰＵ
１５ａ  識別ビット
１５ｂ  命令列
１６  アドレスデコーダ
１７  読出し制御部
１８  ＤＭＡ制御部
２０  命令バス
２１ａ〜２１ｎ  判別標識（アドレス）
２２ａ〜２２ｎ  プログラム
２３  判別手段
２４  読出し制御手段
２５  データバス
【図１】
2005129041.tif 000003
【図２】
2005129041.tif 000004
【図３】
2005129041.tif 000005
【図４】
2005129041.tif 000006
【図５】
2005129041.tif 000007
【図６】
2005129041.tif 000008
【図７】
2005129041.tif 000009
【図８】
2005129041.tif 000010
【図９】
2005129041.tif 000011
【図１０】
2005129041.tif 000012
【図１１】
2005129041.tif 000013
【図１２】
2005129041.tif 000014
【図１３】
2005129041.tif 000015