(57)【要約】【課題】  最適なアクセス制限を行なうことができるバスシステム及びアクセス制御方法を提供すること。【解決手段】  本発明にかかるバスシステムは、複数のマスタ１と、複数のスレーブ３と、マルチレイヤスイッチ２とを備えている。このバスシステムは、さらに予め定められたセキュアマスタ１によってアクセス制限情報を設定可能なアクセス制限レジスタ４を備えている。マルチレイヤスイッチ２は、スイッチ内マスタ部２０と、スイッチ内スレーブ部２１とを備えている。セキュアマスタ以外のマスタと対応するスイッチ内マスタ部は、当該マスタよりスレーブに対してアクセスがあった場合に、アクセス先のアドレス情報とアクセス制限レジスタに格納されたアクセス制限情報に基いてアクセス制限領域へのアクセスか否かを判定する。そして、アクセス制限領域へのアクセスであると判断した場合には、当該アクセスを制限する。【選択図】  図１
2005250833.tif 000002
【特許請求の範囲】
【請求項１】
複数のマスタと、複数のスレーブと、前記マスタと前記スレーブ間に設けられ複数のマスタからの命令の同時処理を可能にするマルチレイヤスイッチとを備えたバスシステムであって、
このバスシステムは、さらに予め定められたセキュアマスタによってアクセス制限情報を設定可能なアクセス制限レジスタを備え、
前記マルチレイヤスイッチは、前記マスタに対応したスイッチ内マスタ部と、前記スレーブに対応したスイッチ内スレーブ部とを備え、
前記セキュアマスタ以外のマスタと対応する前記スイッチ内マスタ部は、当該マスタより前記スレーブに対してアクセスがあった場合に、アクセス先のアドレス情報と前記アクセス制限レジスタに格納されたアクセス制限情報に基いてアクセス制限領域へのアクセスか否かを判定し、アクセス制限領域へのアクセスであると判断した場合には、当該アクセスを制限するバスシステム。
【請求項２】
複数のマスタと、複数のスレーブと、前記マスタと前記スレーブが接続されたシステムバスと、前記システムバスの使用権を設定するアービタを備えたバスシステムであって、
予め定められたセキュアマスタによってアクセス制限情報を設定可能なアクセス制限レジスタと、
前記セキュアマスタ以外のマスタと前記システムバスとの間に設けられたスイッチとをさらに備え、
前記アービタは、前記セキュアマスタ以外のマスタより前記スレーブに対してアクセスがあった場合に、アクセス先のアドレス情報と前記アクセス制限レジスタに格納されたアクセス制限情報に基いてアクセス制限領域へのアクセスか否かを判定し、アクセス制限領域へのアクセスであると判断した場合には、当該アクセスを前記スイッチによって制限するバスシステム。
【請求項３】
前記セキュアマスタと前記アクセス制限レジスタに対しては、常時電源が供給されることを特徴とする請求項１又は２記載のバスシステム。
【請求項４】
前記セキュアマスタを除く他のマスタ、及び／又はスレーブは、前記セキュアマスタによって電源制御されることを特徴とする請求項３記載のバスシステム。
【請求項５】
前記アクセス制限レジスタは、アクセス制限領域を設定する範囲設定情報を格納する範囲設定レジスタと、制限対象となるマスタを特定する制限対象情報を格納する制限対象レジスタを含むことを特徴とする請求項１乃至３いずれかに記載のバスシステム。
【請求項６】
複数のマスタと、複数のスレーブと、前記マスタと前記スレーブ間に設けられ複数のマスタからの命令の同時処理を可能にするマルチレイヤスイッチとを備えたバスシステムにおけるアクセス制御方法であって、
予め定められたセキュアマスタによってアクセス制限情報をアクセス制限レジスタに対して設定するステップと、
前記セキュアマスタ以外のマスタから前記スレーブに対してアクセスがあった場合に、アクセス先のアドレス情報と、アクセス制限レジスタに対して設定されたアクセス制限情報を比較して、アクセス制限領域へのアクセスか否かを判定するステップと、
アクセス制限領域へのアクセスであると判断した場合には、前記マルチレイヤシステムにおけるスイッチ内マスタ部によって当該アクセスを制限するステップとを備えたアクセス制御方法。
【請求項７】
複数のマスタと、複数のスレーブと、前記マスタと前記スレーブが接続されたシステムバスと、前記システムバスの使用権を設定するアービタを備えたバスシステムにおけるアクセス制御方法であって、
予め定められたセキュアマスタによってアクセス制限情報をアクセス制限レジスタに対して設定するステップと、
前記セキュアマスタ以外のマスタから前記スレーブに対してアクセスがあった場合に、前記アービタによってアクセス先のアドレス情報と、前記アクセス制限レジスタに設定されたアクセス制限情報に基いてアクセス制限領域へのアクセスか否かを判定するステップと、
前記アービタによってアクセス制限領域へのアクセスであると判断した場合には、前記マスタと前記システムバス間に設けられたスイッチによって当該アクセスを制限するステップとを備えたアクセス制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のマスタやスレーブと接続されたバスシステム及びアクセス制御方法に関する。
【背景技術】
【０００２】
複数のマスタやスレーブと接続されたバスシステムにおいて、特定のマスタ以外のマスタから特定のスレーブに対するアクセスを禁止しなければならない場合がある。例えば、所定のメモリに秘密情報やキー情報が格納されているときに、ＣＰＵ等の演算処理装置から当該メモリへのアクセスは許可される一方で、他のマスタから当該メモリへのアクセスは禁止しなければならない場合である。
【０００３】
かかるアクセス制限に関する技術が、例えば特許文献１に記載されている。特許文献１においては、複数のマスタそれぞれにマスタ識別信号発生回路を設け、さらにマスタ識別信号を識別するマスタ識別回路を設けている。デコーダは、識別結果に基づき所定の制御信号を生成するとともにアクセスが有効か否かをアクセスを行なったマスタに知らせる。そして生成した制御信号によりＩ／Ｏを制御し、かつアクセスが有効か否かをアクセスを行なったマスタに対して知らせて、データ入出力回路への不正なアクセスを規制している。
【０００４】
しかしながら、特許文献１に記載された技術によれば、データ入力出力回路にマスタ識別回路とデコーダがあり、デコーダはマスタ識別回路から出力されるアクセス許可信号が接続されて、この信号に基づきアクセスの可否を決定する構成となっているので、次のような欠点が生じる。まず、アクセス制限する領域がハードウェアで決まってしまうので、システムの中で制限できる領域がマスタ識別回路を実装したデータ入出力回路部分に固定されてしまう。また、データ入出力回路のＩ／Ｏの一部だけをアクセス制限することはできない。さらに、アクセスの保護をデータ入出力側で行うので、一つのマスタが保護された部分をアクセスすると、システムバスにトランザクションが発生してしまう。このため、マスタが偶然にあるいは故意にアクセス制限のかかったデータ入出力回路を連続してアクセスすると、システムバスの性能がそのトランザクションにより著しく劣化してしまう。
【０００５】
他方、近年、携帯電話機においては、本来の電話機能のみならず、インターネット接続機能やカメラ機能も備えており、多機能化が進んでいる。また、携帯電話機においては、小型化、軽量化、低消費電力化の観点から、複数の機能を１チップ上で実現するＳｏＣ（システム  オン  チップ）技術が開発されている。
【０００６】
かかる携帯電話機では、高速に各種の処理を同時に行う必要がある。そのため、複数のスレーブに対して同時にアクセス可能なマルチレイヤスイッチが提案されている。
【０００７】
このマルチレイヤスイッチを用いると、例えば、カメラで撮影した画像データを所定のメモリ領域に書き込む処理と、メモリに格納された画像データを読み出してディスプレイに表示する処理とを同時に行なうことができる。かかるマルチレイヤスイッチにおいても、特許文献１において説明したような問題点が発生しうる。
【特許文献１】特開平５−２５７５１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述のように、従来のバスシステムにおいては、アクセス制限がかかったスレーブに対する連続アクセスにより、バスの性能が著しく低下する等といった問題点があった。
【０００９】
本発明の目的は、かかる問題を解消し、最適なアクセス制限を行なうことができるバスシステム及びアクセス制御方法を提供することである。
【課題を解決するための手段】
【００１０】
本発明にかかるバスシステムは、複数のマスタと、複数のスレーブと、前記マスタと前記スレーブ間に設けられ複数のマスタからの命令の同時処理を可能にするマルチレイヤスイッチとを備えたバスシステムであって、このバスシステムは、さらに予め定められたセキュアマスタによってアクセス制限情報を設定可能なアクセス制限レジスタを備え、前記マルチレイヤスイッチは、前記マスタに対応したスイッチ内マスタ部と、前記スレーブに対応したスイッチ内スレーブ部とを備え、前記セキュアマスタ以外のマスタと対応する前記スイッチ内マスタ部は、当該マスタより前記スレーブに対してアクセスがあった場合に、アクセス先のアドレス情報と前記アクセス制限レジスタに格納されたアクセス制限情報に基いてアクセス制限領域へのアクセスか否かを判定し、アクセス制限領域へのアクセスであると判断した場合には、当該アクセスを制限するものである。
【００１１】
本発明にかかる他のバスシステムは、複数のマスタと、複数のスレーブと、前記マスタと前記スレーブが接続されたシステムバスと、前記システムバスの使用権を設定するアービタを備えたバスシステムであって、予め定められたセキュアマスタによってアクセス制限情報を設定可能なアクセス制限レジスタと、前記セキュアマスタ以外のマスタと前記システムバスとの間に設けられたスイッチとをさらに備え、前記アービタは、前記セキュアマスタ以外のマスタより前記スレーブに対してアクセスがあった場合に、アクセス先のアドレス情報と前記アクセス制限レジスタに格納されたアクセス制限情報に基いてアクセス制限領域へのアクセスか否かを判定し、アクセス制限領域へのアクセスであると判断した場合には、当該アクセスを前記スイッチによって制限するものである。
【００１２】
ここで、前記セキュアマスタと前記アクセス制限レジスタに対しては、常時電源が供給されることが望ましい。
【００１３】
また、前記セキュアマスタを除く他のマスタ、及び／又はスレーブは、前記セキュアマスタによって電源制御されることが好ましい。
【００１４】
さらに、前記アクセス制限レジスタには、アクセス制限領域を設定する範囲設定情報を格納する範囲設定レジスタと、制限対象となるマスタを特定する制限対象情報を格納する制限対象レジスタが含まれる。
【００１５】
本発明にかかるアクセス制御方法は、複数のマスタと、複数のスレーブと、前記マスタと前記スレーブ間に設けられ複数のマスタからの命令の同時処理を可能にするマルチレイヤスイッチとを備えたバスシステムにおけるアクセス制御方法であって、予め定められたセキュアマスタによってアクセス制限情報をアクセス制限レジスタに対して設定するステップと、前記セキュアマスタ以外のマスタから前記スレーブに対してアクセスがあった場合に、アクセス先のアドレス情報と、アクセス制限レジスタに対して設定されたアクセス制限情報を比較して、アクセス制限領域へのアクセスか否かを判定するステップと、アクセス制限領域へのアクセスであると判断した場合には、前記マルチレイヤシステムにおけるスイッチ内マスタ部によって当該アクセスを制限するステップとを備えたものである。
【００１６】
本発明にかかる他のアクセス制御方法は、複数のマスタと、複数のスレーブと、前記マスタと前記スレーブが接続されたシステムバスと、前記システムバスの使用権を設定するアービタを備えたバスシステムにおけるアクセス制御方法であって、予め定められたセキュアマスタによってアクセス制限情報をアクセス制限レジスタに対して設定するステップと、  前記セキュアマスタ以外のマスタから前記スレーブに対してアクセスがあった場合に、前記アービタによってアクセス先のアドレス情報と、前記アクセス制限レジスタに設定されたアクセス制限情報に基いてアクセス制限領域へのアクセスか否かを判定するステップと、前記アービタによってアクセス制限領域へのアクセスであると判断した場合には、前記マスタと前記システムバス間に設けられたスイッチによって当該アクセスを制限するステップとを備えたものである。
【発明の効果】
【００１７】
本発明によれば、最適なアクセス制限を行なうことができるバスシステム及びアクセス制御方法を提供することができる。
【発明を実施するための最良の形態】
【００１８】
発明の実施の形態１．
本発明の実施の形態１にかかるバスシステムの構成を図１に示す。発明の実施の形態１におけるバスシステムは、マルチレイヤシステムである。当該マルチレイヤシステムは、複数のマスタ１（Ｍ０、Ｍ１、Ｍ２）と、複数のスレーブ３（Ｓ０、Ｓ１、Ｓ２）と、マスタ１とスレーブ３の間に設けられたマルチレイヤスイッチ２を基本的な構成としている。この例では、さらに、アクセス制限レジスタ４を備えている。
【００１９】
マスタ１は、システムを制御するモジュールである。例えば、ＣＰＵ（Central Processor Unit）、ＤＳＰ（Digital Signal Processor）、画像回転器、カメラ画像処理回路、ＬＣＤ（Liquid Crystal Display）コントローラ等がある。この例におけるＭ０は、常時動作しているＣＰＵ又はＤＳＰ等の演算処理回路である。Ｍ１、Ｍ２は、Ｍ０からの指示により必要な時だけ動作するモジュールである。
【００２０】
マルチレイヤスイッチ２は、複数のマスタから出される命令の同時処理を可能にするものである。マルチレイヤスイッチ２は、システム内の複数のマスタ−スレーブ間でパラレル・アクセス・パスの使用を可能にする相互接続バスシステムである。このバスシステムは、より複雑な相互接続マトリックスを使用することによって実現され、システム・アーキテクチャの選択肢や全体のバス帯域幅が広がるといったメリットを提供する。かかるマルチレイヤスイッチ２は、例えば、アーム株式会社よりマルチレイヤＡＨＢ（Advanced High-performance Bus）、ＡＨＢ−Ｌｉｔｅ（商標）として提供されている。
【００２１】
スレーブ３は、マスタ１からの制御対象となるモジュールである。例えば、スレーブ３には、メモリ、レジスタ、タイマ、シリアルインターフェース回路等が含まれる。
【００２２】
マルチレイヤスイッチ２の構成についてさらに詳細に説明する。マルチレイヤスイッチ２は、個々のマスタ１（Ｍ０、Ｍ１、Ｍ２）に接続されたスイッチ内マスタ部２０（ＳＷＭ０、ＳＷＭ１、ＳＷＭ２）及び個々のスレーブ３に接続されたスイッチ内スレーブ部２１（ＳＷＳ０、ＳＷＳ１、ＳＷＳ２）を備えている。
【００２３】
スイッチ内マスタ部２０は、マスタ１からのアクセスがどのスレーブ３への接続かをアクセス先を特定するアドレス情報に基づき判別し、接続先のスレーブ３に対応するスイッチ内スレーブ部２１に対してアクセス要求を出す機能を有する。さらに、この例にかかるスイッチ内マスタ部２０は、アドレス比較回路（図示せず）を備えている。アドレス比較回路は、アクセス制限レジスタ４からアクセス制限情報に含まれるアドレス情報と、マスタ１からのアクセスに含まれるアドレス情報とを比較し、一致する場合にアドレス情報により特定されるスレーブへのアクセスを制限する。
【００２４】
スイッチ内スレーブ部２１は、各スイッチ内マスタ部２０からのアクセス信号の調停を行い、一つのアクセスを選択して、選択したスレーブ３に対して接続することをその主要な機能とする。
【００２５】
アクセス制限レジスタ４は、範囲設定レジスタ４０と制限対象レジスタ４１を備え、アクセス制限情報を格納する。アクセス制限情報には、これらの制限範囲情報と制限対象情報が含まれる。制限範囲情報は、スレーブ３におけるアクセス制限領域を特定する情報であり、制限設定レジスタ４０に格納される。また、制限対象情報は、どのマスタ１に対してアクセス制限を有効とするかを特定する情報であり、制限対象レジスタ４１に格納される。
【００２６】
範囲設定レジスタ４０及び制限対象レジスタ４１への情報の設定は、セキュアなマスタ（以下、セキュアマスタ）であるＭ０のみが行なうことができ、他のマスタ（Ｍ１、Ｍ２等）はできない。このとき、ハードウェア構成により、範囲設定レジスタ４０及び制限対象レジスタ４１への情報の設定は、セキュアマスタであるＭ０のみが行なうことができるように作りこむことが好ましい。具体的には、セキュアマスタであるＭ０のローカルバスへの接続や、アドレス比較回路へデフォルトでＭ０以外のマスタがアクセスできない領域を作成する。
【００２７】
範囲設定レジスタ４０及び制限対象レジスタ４１は、信号線によりＳＷＭ１及びＳＷＭ２に接続されている。より具体的には、ＳＷＭ１及びＳＷＭ２に含まれるアドレス比較回路は、信号線を介して範囲設定レジスタ４０及び制限対象レジスタ４１と接続されており、かかる信号線の電位を検出することにより範囲設定レジスタ４０及び制限対象レジスタ４１に格納されたアドレス制限情報を認識することができる。
【００２８】
続いて、本発明の実施の形態１にかかるマルチレイヤシステムにおける処理動作について説明する。ここでは、Ｓ２は、メモリであり、かかるメモリの８０００番地からＦＦＦＦ番地に秘密情報が格納されており、Ｍ０以外のマスタ１（例えば、Ｍ１、Ｍ２）はアクセスを制限されている。そして、アクセス制限対象であるＭ１から当該Ｓ２の８０００番地からＦＦＦＦ番地に含まれる８０００番地の情報に対してアクセスが行なわれた場合を想定する。
【００２９】
Ｍ１は、アクセス先（ここではＳ２）のアドレス信号（８０００番地）や、リード／ライト信号等の制御信号を、マルチレイヤスイッチ２のスイッチ内マスタ部２０であるＳＷＭ１に対して出力する
【００３０】
ＳＷＭ１は、Ｍ１から入力したアドレス信号に基づいて、どのスレーブ３に対してアクセスするかを判別する。ＳＷＭ１では、さらに、アドレス比較回路によって、Ｍ１から入力したアドレス信号に含まれるアドレス情報と範囲設定レジスタ４０に設定された制限範囲情報に含まれるアドレス情報とを比較する。この場合、範囲レジスタ４０に８０００番地からＦＦＦＦ番地の領域をアクセス制限範囲として設定しているので、ＳＷＭ１はＭ１のアクセスしようとしている８０００番地が制限範囲内であるとして処理を行う。即ち、ＳＷＭ１は、Ｍ１が、設定されたアクセス制限領域へのアクセスを行なったものと判定する。この場合に、ＳＷＭ１は、トランザクションをマルチレイヤスイッチ２のＳＷＳ２には伝達せずに、Ｍ１に対してエラーレスポンスを返して、アドレス制限領域へのアクセスを禁止する。
【００３１】
このように本発明の実施の形態においては、スイッチ内マスタ部２０において、アクセス制限レジスタ４を参照して、アクセス制限を行なうようにしたので、仮に特定のマスタからアクセス制限が行なわれているスレーブに対してアクセスが繰り返されたとしても、スイッチ内スレーブ部２１やスレーブ３に対するアクセスは発生しないため、マルチレイヤスイッチ２に接続されている前記特定マスター以外のマスターのバスアクセスの性能の低下は発生しない。
【００３２】
また、本発明の実施の形態においては、アクセス制限領域をシステムのメモリマップの任意の領域に設定することができる。そして、設定した領域へのアクセス制限を、どのマスタに対して適用するかを設定することができる。
【００３３】
本発明の実施の形態１におけるセキュアなマスタであるＭ０及びアクセス制限レジスタ４に関しては、他の回路等とは別の電源制御が行なわれることが好ましい。図２にチップ１００のレイアウト例及び電源関連の回路構成例を示す。図２に示されるように、Ｍ０及びアクセス制限レジスタ４に対しては、常時、電源５１から電源が供給される。その一方で、Ｍ１を含む他の回路に対しては、電源制御回路５２を介して電源が供給される。この電源制御回路５２は、Ｍ０の制御に基いて動作し、必要としない状態においては各マスタ１やスレーブ３等の電源供給が制限される。これによって、チップ１００における省電力化を達成できる。
【００３４】
電源制御回路５２によってＭ１等の他の回路の電源がオフされた状態でも、アクセス制限レジスタ４に対しては電源がオン状態にあるため、当該アクセス制限レジスタ４に設定されたデータは消去されない。
【００３５】
発明の実施の形態２．
発明の実施の形態２では、マルチレイヤシステムではなく、通常のバスを用いている。図３に当該発明の実施の形態２にかかるバスシステムの構成を示す。図に示されるように、システムバス８の接続ポイントと、マスタ１との間には、スイッチ６が設けられている。そして、Ｍ１のアクセス先のアドレスは、アービタ７（調停回路）に対して入力される。また、範囲設定レジスタ４０や制限対象レジスタ４１に格納されたアクセス制限情報も、アービタ７に対して入力される。アクセス制限レジスタ４へのアクセス制限情報の設定は、セキュアなマスタであるＭ０のみが行なうことができる。アービタ７は、バス１によるシステムバス８の使用権を設定する機能を有する。
【００３６】
続いて、本発明の実施の形態２にかかるバスシステムにおける処理動作について説明する。Ｍ１は、アクセス先のアドレス信号をアービタ７に対して出力する。アービタ７は、当該アドレス信号に含まれるアドレス情報と、アクセス制限レジスタ４に格納されたアクセス制限情報に含まれるアドレス情報とを比較し、比較結果を出力する。この例では、アービタ７は、Ｍ１が、設定されたアクセス制限領域へのアクセスを行なったものと判定する。この場合に、アービタ７は、Ｍ１とシステムバス８の接続ポイントとの間にあるスイッチ６に対して、Ｍ１によるシステムバス８へのアクセスの制限を要求する。スイッチ６は、この要求に対して、アクセスが不可能であることを示すエラー応答信号をマスターに対して返す。これにより、Ｍ１のアクセス制限領域へのアクセスは制限される。
【００３７】
このように本発明の実施の形態においては、アービタ７において、アクセス制限レジスタ４を参照して、システムバス８の接続ポイントとマスタ１との間に設けられたスイッチ６によってアクセス制限を行なうようにしたので、仮に特定のマスタからアクセス制限が行なわれているスレーブに対してアクセスが繰り返されたとしても、システムバス８に対するアクセスは発生しないため、システムバスの性能低下は無い。
【００３８】
また、本発明の実施の形態においては、アクセス制限領域をシステムのメモリマップの任意の領域に設定することができる。そして、設定した領域へのアクセス制限を、どのマスタに対して適用するかを設定することができる。
【図面の簡単な説明】
【００３９】
【図１】本発明によるバスシステムの構成図である。
【図２】本発明によるバスシステムを適用したチップのレイアウト例及び電源関連の回路構成例を示す図である。
【図３】本発明による他のバスシステムの構成図である。
【符号の説明】
【００４０】
１  マスタ
２  マルチレイヤスイッチ
３  スレーブ
４  アクセス制限レジスタ
６  スイッチ
７  アービタ
８  システムバス
２０  スイッチ内マスタ部
２１  スイッチ内スレーブ部
【図１】
2005250833.tif 000003
【図２】
2005250833.tif 000004
【図３】
2005250833.tif 000005