(57)【要約】【課題】デバイスによって機密性が異なる機密情報処理装置においても、機密情報の漏洩を有効に防止し、他のデバイスからのデータ転送依頼に応じてデータ転送を行うことが可能なＤＭＡコントローラを提供する。【解決手段】マスターデバイス１０３、１０５とスレーブデバイス１０６〜１０８にバスで接続され、各マスターデバイスから送信される転送先及び転送元を指定する転送条件に基づいてデータ転送を行わせるＤＭＡコントローラ１００であって、各マスターデバイスと各スレーブデバイスは、アクセス判定ランクを保持し、ＤＭＡコントローラ１０４は、マスターデバイスのアクセス判定ランクと、転送条件の指定する転送先及び転送元のスレーブデバイスのアクセス判定ランクとの比較結果に基づくデータ転送可否判定結果が「転送可」である場合に、データ転送を行わせ、「転送不可」である場合にデータ転送を抑止させる。【選択図】図１
2006235982.tif 000002
【特許請求の範囲】
【請求項１】
マスターデバイスとデータ格納領域を有する複数のスレーブデバイスにバスで接続され、マスターデバイスから送信される転送先及び転送元のデータ格納領域を指定する転送条件に基づいてデータ転送を行わせるＤＭＡコントローラであって、
前記マスターデバイスと前記スレーブデバイスは、データ転送可否の判定基準となるアクセス判定ランクを保持し、
前記ＤＭＡコントローラは、
前記マスターデバイスのアクセス判定ランクと、前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクとの比較結果に基づくデータ転送可否判定結果が「転送可」である場合に、前記データ転送を行わせ、前記データ転送可否判定結果が「転送不可」である場合に前記データ転送を抑止させるデータ転送制御手段
を備えることを特徴とするＤＭＡコントローラ。
【請求項２】
前記データ転送制御手段は、
データ転送を行う対象となる転送元及び転送先のデータ格納領域の組と当該組の転送先及び転送元のデータ格納領域を有する前記スレーブデバイスのアクセス判定ランクの内、大きい方のアクセス判定ランクとの対応関係を示すスレーブデバイス間テーブルを記憶するテーブル記憶手段と、
前記スレーブデバイス間テーブルにおいて、前記転送条件において指定された転送元及び転送先のデータ格納領域の属する組と対応付けられているアクセス判定ランクと前記マスターデバイスのアクセス判定ランクとの比較をする比較手段と
前記比較結果に基づいて前記データ転送の可否判定を行う転送可否判定手段と
を有することを特徴とする請求項１記載のＤＭＡコントローラ。
【請求項３】
前記データ転送制御手段は、前記転送条件において指定された転送元及び転送先のデータ格納領域の組が、前記スレーブデバイス間テーブルに含まれるか否かを判定するテーブル判定手段を有し、
前記転送可否判定手段は、前記スレーブデバイス間テーブルに含まれない場合に、「転送不可」と判定する
ことを特徴とする請求項２記載のＤＭＡコントローラ。
【請求項４】
前記データ転送制御手段は、
前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスから、保持しているアクセス判定ランクを取得する取得手段と、
前記マスターデバイスのアクセス判定ランクと、取得したアクセス判定ランクとを比較する比較手段と、
前記比較結果に基づいて前記データ転送の可否判定を行う転送可否判定手段と
を有することを特徴とする請求項１記載のＤＭＡコントローラ。
【請求項５】
前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクと当該スレーブデバイスが保持しているアクセス判定ランクとの比較結果に基づいてアクセス要求元からのアクセスの許否を判定し、
前記データ転送制御手段は、前記マスターデバイスのアクセス判定ランクを前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに送信し、アクセスの許可を要求する要求手段を有し、
前記転送可否判定手段は、前記スレーブデバイスによるアクセス許否判定結果と前記比較手段による比較結果とに基づいて前記データ転送の可否判定を行う
ことを特徴とする請求項２〜４の何れかに記載のＤＭＡコントローラ。
【請求項６】
前記ＤＭＡコントローラは、複数のマスターデバイスと前記バスで接続され、
前記データ転送制御手段は、
自装置が前記マスターデバイスからの前記転送条件の送信に応じてデータ転送を許可できる状態にあるか否かを示すフラグを設定するためのフラグ値を格納しているフラグ格納手段と、
データ転送が行われている間、前記フラグを「不許可」に設定し、データ転送が完了すると、前記フラグを「許可」に設定するフラグ設定手段と
を有し、
前記転送可否判定手段は、前記マスターデバイスからの前記転送条件の送信時に前記フラグが、「不許可」に設定されている場合に、「転送不可」と判定する
ことを特徴とする請求項１記載のＤＭＡコントローラ。
【請求項７】
前記データ転送制御手段は、
前記フラグが「許可」に設定されている場合に、前記バスに接続されているマスターデバイスから転送条件の送信があると、当該マスターデバイスの識別子を記憶するマスターデバイス記憶手段と、
前記フラグが「不許可」に設定され、前記転送条件に基づくデータ転送が行われている間に、前記バスに接続されているマスターデバイスから新たな転送条件が送信された場合に、当該マスターデバイスの識別子がマスターデバイス記憶手段に記憶されているか否かを判定するマスターデバイス判定手段と
を有し、
前記転送可否判定手段は、前記マスターデバイスからの新たな転送条件の送信時に前記フラグが「不許可」に設定され、かつ、新たな転送条件を送信した前記マスターデバイスの識別子が前記マスターデバイス記憶手段に記憶されていない場合に、「転送不可」と判定する
ことを特徴とする請求項６記載のＤＭＡコントローラ。
【請求項８】
前記データ転送制御手段は、
前記データ転送を行わせている間に、前記バスに接続されている前記マスターデバイス及び前記スレーブデバイスからのデータ転送中断要求を受取る中断要求受取手段と、
データ転送中断要求の要求元がマスターデバイスであるか否かを判定する中断要求元判定手段と、
前記要求元がマスターデバイスである場合に、前記要求元のアクセス判定ランクを受取り、前記要求元のアクセス判定ランクと前記受取手段が受取った前記マスターデバイスのアクセス判定ランクとの比較結果に基づいて、前記データ転送を中断させるか否かを判定する中断判定手段と
中断させると判定された場合に、前記データ転送を中断させるデータ転送中断手段と
を有することを特徴とする請求項１〜７の何れかに記載のＤＭＡコントローラ。
【請求項９】
前記ＤＭＡコントローラは、予め設定された下限のアクセス判定ランクを記憶している下限ランク記憶手段と、
前記転送条件を送信した前記マスターデバイスからアクセス判定ランクを受取り、記憶するランク記憶手段と
前記転送条件を記憶する条件記憶手段と
を備え、
前記データ転送可否判定は、前記比較結果において、前記ランク記憶手段に記憶している前記マスターデバイスのアクセス判定ランクが前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクよりも小さくない場合に、「転送可」とされ、小さい場合に「転送不可」とされ、
前記中断判定手段は、前記要求元のアクセス判定ランクが前記ランク記憶手段に記憶しているアクセス判定ランクよりも小さくない場合に、前記データ転送を中断させると判定し、
前記データ転送制御手段は、
中断させると判定した場合に、前記条件記憶手段に記憶している転送条件を削除する削除手段と、
前記ランク記憶手段に記憶しているアクセス判定ランクに替えて下限のアクセス判定ランクを記憶させるランク切替手段と
を有することを特徴とする請求項８記載のＤＭＡコントローラ。
【請求項１０】
前記データ転送可否判定は、前記比較結果において、前記マスターデバイスのアクセス判定ランクが前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクよりも小さくない場合に、「転送可」とされ、小さい場合に「転送不可」とされ、
前記データ転送制御手段は、
予め設定された上限のアクセス判定ランクを記憶している上限ランク記憶手段と、
前記マスターデバイスのアクセス判定ランクと上限のアクセス判定ランクとを比較する比較手段と
を有し、
前記マスターデバイスのアクセス判定ランクの方が上限のアクセス判定ランクより大きくない場合に、前記データ転送可否判定結果が「転送可」である場合に、前記データ転送を行わせ、
前記マスターデバイスのアクセス判定ランクの方が上限のアクセス判定ランクより大きい場合に、上限のアクセス判定ランクが、前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクより小さくない場合に、前記データ転送を行わせる
ことを特徴とする請求項１記載のＤＭＡコントローラ。
【請求項１１】
前記ＤＭＡコントローラは、複数のマスターデバイスと前記バスで接続され、
前記データ転送制御手段は、前記マスターデバイスのアクセス判定ランクの方が上限のアクセス判定ランクより大きくない場合に、前記マスターデバイスのアクセス判定ランクを記憶し、
前記マスターデバイスのアクセス判定ランクの方が上限のアクセス判定ランクより大きい場合に、上限のアクセス判定ランクを記憶するランク記憶手段を有し、
前記データ転送制御手段は、前記バスに接続されている他のマスターデバイスのアクセス判定ランクが前記ランク記憶手段に記憶しているアクセス判定ランクよりも小さい場合に、前記バスに接続されている他のマスターデバイスから送信される転送条件に基づくデータ転送を抑止させる
ことを特徴とする請求項１０記載のＤＭＡコントローラ。
【請求項１２】
前記データ転送制御手段は、
前記バスに接続されている前記マスターデバイス及び前記スレーブデバイスからのデータ転送中断要求を受取る中断要求受取手段と、
データ転送中断要求の要求元がマスターデバイスであるか否かを判定する中断要求元判定手段と、
前記要求元がマスターデバイスである場合に、前記要求元のアクセス判定ランクを受取り、前記要求元のアクセス判定ランクと前記ランク記憶手段に記憶している前記マスターデバイスのアクセス判定ランクとの比較結果に基づいて、前記データ転送を中断させるか否かを判定する中断判定手段と、
中断させると判定された場合に、前記データ転送を中断させるデータ転送中断手段と
を有することを特徴とする請求項１１に記載のＤＭＡコントローラ。
【請求項１３】
前記ＤＭＡコントローラは、前記転送条件を記憶する条件記憶手段を備え、
前記中断判定手段は、前記要求元のアクセス判定ランクが記憶しているアクセス判定ランクよりも小さくない場合に、前記データ転送を中断させると判定し、
前記データ転送制御手段は、
中断させると判定した場合に、前記条件記憶手段に記憶している転送条件を削除する削除手段と、
前記ランク記憶手段に記憶しているアクセス判定ランクに替えて上限のアクセス判定ランクを記憶させるランク切替手段と
を有することを特徴とする請求項１２記載のＤＭＡコントローラ。
【請求項１４】
前記ＤＭＡコントローラは、前記マスターデバイスと前記スレーブデバイスの保持している各アクセス判定ランクよりも大きくない下限のアクセス判定ランクを記憶している下限ランク記憶手段を備え、
前記削除手段は、前記データ転送が完了した場合に、前記条件記憶手段に記憶している転送条件を削除し、
前記ランク切替手段は、前記ランク記憶手段に、記憶しているアクセス判定ランクに替えて下限のアクセス判定ランクを記憶させる
ことを特徴とする請求項１３記載のＤＭＡコントローラ。
【請求項１５】
前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクが、当該スレーブデバイスが保持しているアクセス判定ランクより小さくない場合に限り、アクセス要求元からのアクセスを許可し、
前記データ転送制御手段は、前記スレーブデバイスのアクセス判定ランクより小さくない上限のアクセス判定ランクを記憶するランク記憶手段と、
前記転送条件を記憶する条件記憶手段と、
ランク記憶手段に記憶されている上限のアクセス判定ランクを、記憶している前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに送信して、アクセスの許可を要求するアクセス要求手段と
を有し、
前記データ転送可否判定手段は、前記スレーブデバイスによるアクセス許否判定結果と前記比較手段による比較結果とに基づいて前記データ転送の可否判定を行う
ことを特徴とする請求項２〜４の何れかに記載のＤＭＡコントローラ。
【請求項１６】
前記データ転送制御手段は、
前記バスに接続されている前記マスターデバイス及び前記スレーブデバイスからのデータ転送中断要求を受取る中断要求受取手段と、
データ転送中断要求の要求元がマスターデバイスであるか否かを判定する中断要求元判定手段と、
前記要求元がマスターデバイスである場合に、前記要求元のアクセス判定ランクを受取り、前記要求元のアクセス判定ランクと記憶している上限のアクセス判定ランクとの比較結果に基づいて、前記データ転送を中断させるか否かを判定する中断判定手段と
中断させると判定された場合に、前記データ転送を中断させるデータ転送中断手段と
を有することを特徴とする請求項１５記載のＤＭＡコントローラ。
【請求項１７】
前記データ転送制御手段は、前記データ転送を中断させると判定した場合に、前記条件記憶手段に記憶している転送条件を削除する削除手段
を有することを特徴とする請求項１６記載のＤＭＡコントローラ。
【請求項１８】
前記データ転送制御手段は、
前記マスターデバイスからの認証要求に応じて認証処理を行う認証手段と、
前記マスターデバイスと前記スレーブデバイスの保持している各アクセス判定ランクよりも大きくない下限のアクセス判定ランクを記憶している下限ランク記憶手段と
を有し、
認証できた場合に、前記データ転送可否判定結果が「転送可」である場合に、前記データ転送を行わせ、
認証できなかった場合に、下限のアクセス判定ランクが、前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクよりも小さくない場合に限り、前記データ転送を行わせる
ことを特徴とする請求項１記載のＤＭＡコントローラ。
【請求項１９】
前記データ転送制御手段は、
前記データ転送を行わせている間に、前記バスに接続されている前記マスターデバイス及び前記スレーブデバイスからのデータ転送中断要求を受取る中断要求受取手段と、
データ転送中断要求の要求元がマスターデバイスであるか否かを判定する中断要求元判定手段と、
前記要求元がマスターデバイスである場合に、前記要求元のアクセス判定ランクを受取り、前記要求元のアクセス判定ランクと前記受取手段が受取った前記マスターデバイスのアクセス判定ランクとの比較結果に基づいて、前記データ転送を中断させるか否かを判定する中断判定手段と、
中断させると判定された場合に、前記データ転送を中断させるデータ転送中断手段と
を有することを特徴とする請求項１８記載のＤＭＡコントローラ。
【請求項２０】
前記ＤＭＡコントローラは、
前記マスターデバイスのアクセス判定ランクを記憶するランク記憶手段と
前記転送条件を記憶する条件記憶手段と
を備え、
前記データ転送可否判定は、前記比較結果において、前記ランク記憶手段に記憶している前記マスターデバイスのアクセス判定ランクが前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクよりも小さくない場合に、「転送可」とされ、小さい場合に、「転送不可」とされ、
前記中断判定手段は、前記要求元のアクセス判定ランクが記憶しているアクセス判定ランクよりも小さくない場合に、前記データ転送を中断させると判定し、
前記データ転送制御手段は、
中断させると判定された場合に、前記条件記憶手段に記憶している転送条件を削除する削除手段と、
前記ランク記憶手段に記憶しているアクセス判定ランクに替えて下限のアクセス判定ランクを記憶させるランク切替手段と
を有することを特徴とする請求項１９記載のＤＭＡコントローラ。
【請求項２１】
前記データ転送制御手段は、
データ転送を行う対象となる転送元及び転送先のデータ格納領域の組と当該組の転送先及び転送元のデータ格納領域を有する前記スレーブデバイスのアクセス判定ランクとの対応関係を示すスレーブデバイス間テーブルを記憶するテーブル記憶手段と、
前記スレーブデバイス間テーブルにおいて、前記転送条件において指定された転送元及び転送先のデータ格納領域の属する組と対応付けられているアクセス判定ランクと前記マスターデバイスのアクセス判定ランクとの比較をする比較手段と
前記比較結果に基づいて前記データ転送の可否判定を行う転送可否判定手段と
を有することを特徴とする請求項１記載のＤＭＡコントローラ。
【請求項２２】
前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクと当該スレーブデバイスが保持しているアクセス判定ランクとの比較結果に基づいてアクセス要求元からのアクセスの許否を判定し、
前記データ転送制御手段は、前記マスターデバイスのアクセス判定ランクを前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに送信し、アクセスの許可を要求する要求手段と、
前記スレーブデバイスによるアクセス許否判定結果に基づいて前記データ転送の可否判定を行う転送可否判定手段と
を有することを特徴とする請求項１記載のＤＭＡコントローラ。
【請求項２３】
マスターデバイスとデータ格納領域を有する複数のスレーブデバイスにバスで接続され、マスターデバイスから送信される転送先及び転送元のデータ格納領域を指定する転送条件に基づいてデータ転送を行わせるＤＭＡコントローラであって、
前記マスターデバイスからの認証要求に応じて認証処理を行う認証手段と、
認証できた場合に限り、前記データ転送を行わせるデータ転送制御手段と
を備えることを特徴とするＤＭＡコントローラ。
【請求項２４】
前記ＤＭＡコントローラは、認証できなかった前記マスターデバイスを記憶する認証不可マスターデバイス記憶手段を備え、
前記認証手段は、認証要求した前記マスターデバイスが前記認証不可マスターデバイス記憶手段に記憶されていない場合に限り、認証要求した前記マスターデバイスの認証処理を実行する
ことを特徴とする請求項２３記載のＤＭＡコントローラ。
【請求項２５】
マスターデバイスとデータ格納領域を有する複数のスレーブデバイスにバスで接続され、マスターデバイスから送信される転送先及び転送元のスレーブデバイスのデータ格納領域を指定する転送条件に基づいて、転送元のデータ格納領域から転送先のデータ格納領域へのデータ転送を行わせるＤＭＡコントローラに用いるデータ転送制御方法であって、
前記マスターデバイスと前記スレーブデバイスは、前記バスに接続されている他のデバイスからのアクセスを、前記スレーブデバイスが許可するか否かの判定基準となるアクセス判定ランクを保持し、
前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクと当該スレーブデバイスが保持しているアクセス判定ランクとの比較結果に基づいてアクセス要求元からのアクセスの許否を判定し、
前記ＤＭＡコントローラは、条件記憶手段を備え、
前記データ転送方法は、
前記マスターデバイスから送信された前記転送条件を前記条件記憶手段に格納する格納ステップと、
前記転送条件を送信した前記マスターデバイスに、前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに当該マスターデバイスが保持しているアクセス判定ランクを送信させて、アクセスの許可を要求させる送信要求ステップと、
前記スレーブデバイスによってアクセスを許可された場合に、前記データ転送を行わせるデータ転送制御ステップと
を含むことを特徴とするデータ転送制御方法。
【請求項２６】
マスターデバイスとデータ格納領域を有する複数のスレーブデバイスにバスで接続され、マスターデバイスから送信される転送先及び転送元のデータ格納領域を指定する転送条件に基づいてデータ転送を行わせるＤＭＡコントローラに用いるデータ転送制御方法であって、
前記マスターデバイスと前記スレーブデバイスは、データ転送可否の判定基準となるアクセス判定ランクを保持し、
前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクと当該スレーブデバイスが保持しているアクセス判定ランクとの比較結果に基づいてアクセス要求元からのアクセスの許否を判定し、
前記データ転送制御方法は、
前記マスターデバイスのアクセス判定ランクを前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに送信し、アクセスの許可を要求する要求ステップと、
前記スレーブデバイスによるアクセス許否判定結果に基づいて前記データ転送の可否判定を行い、判定結果が「転送可」である場合に、前記データ転送を行わせ、判定結果が「転送不可」である場合に前記データ転送を抑止させるデータ転送制御ステップと
を含むことを特徴とするデータ転送制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機密情報処理装置において、ＤＭＡ（Direct Memory Access）コントローラによるデバイス間のデータ転送を行う場合におけるセキュリティを確保するためのデータ転送制御技術に関する。
【背景技術】
【０００２】
ＤＭＡコントローラは、ＣＰＵの代わりにデバイス間のデータ転送を行う装置であり、
これにより、ＣＰＵは、処理負荷の大きいデータ転送処理をＤＭＡコントローラに依頼して、データ転送処理がＤＭＡコントローラによって行われている間、他の処理を実行することができる。
ＤＭＡコントローラによるデータ転送は、ＣＰＵから入力された転送元と転送先のアドレスを参照して行われるので、入力されるアドレス信号にノイズ等が不正に混入されると、ＤＭＡコントローラによってアドレスが誤って認識されて本来転送されるべきでないアドレスにデータが転送されて、重要なデータが上書きされて消失したり、破壊されてしまったりする恐れがある。
【０００３】
このようなＤＭＡコントローラによる不正転送を防止するための先行技術として、機密情報処理装置において、デバイス間でのデータ転送処理用レジスタに蓄えられたアドレスに関するデータに従って、一方のアドレスのストア領域に格納されたデータを順次読出して、他方のアドレスのストア領域に転送するＤＭＡコントローラであって、デバイス毎に個別的に割当てられた有効なアドレス範囲を予め格納するテーブルと、該データ転送処理用レジスタに蓄えられたデータが示すアドレス範囲が該テーブルに格納された有効なアドレス範囲を逸脱したと判定すると、転送処理を中断する監視部とを含むことを特徴とするＤＭＡコントローラが特許文献１に開示されている。
【０００４】
これにより、ノイズ等でアドレスに関するデータに誤りが発生すると、転送処理が中止されるので、誤ってメモリが割当てられていないアドレスからデータを読んだり、他の目的に割当てられているアドレスにデータを書込んだり、全く異なるサイズのデータが転送されてしまうような不具合を未然に防止することができる。
【特許文献１】特開２００１−２９７０５４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら上記従来技術では、デバイスによって機密性が異なる場合、例えば、特定の機密性の高いデバイスについては、特定のＣＰＵに限ってアクセスを容認しているような機密情報処理装置においては、当該デバイスについて割当てられたアドレス範囲を逸脱しない限り、特定のＣＰＵ以外のＣＰＵからのデータ転送依頼であっても、ＤＭＡコントローラによって、依頼元の如何にかかわらず当該デバイス間のデータ転送が行われてしまうという不具合が生じてしまう。
【０００６】
本発明は、上記の問題点に鑑み、デバイスによって機密性が異なるような機密情報処理装置においても、機密情報の漏洩を有効に防止しつつ、他のデバイスからのデータ転送依頼に応じてデータ転送を行うことが可能なＤＭＡコントローラを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明は、マスターデバイスとデータ格納領域を有する複数のスレーブデバイスにバスで接続され、マスターデバイスから送信される転送先及び転送元のデータ格納領域を指定する転送条件に基づいてデータ転送を行わせるＤＭＡコントローラであって、前記マスターデバイスと前記スレーブデバイスは、データ転送可否の判定基準となるアクセス判定ランクを保持し、前記ＤＭＡコントローラは、前記マスターデバイスのアクセス判定ランクと、前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクとの比較結果に基づくデータ転送可否判定結果が「転送可」である場合に、前記データ転送を行わせ、前記データ転送可否判定結果が「転送不可」である場合に前記データ転送を抑止させるデータ転送制御手段を備える。
【０００８】
又、本発明は、前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクと当該スレーブデバイスが保持しているアクセス判定ランクとの比較結果に基づいてアクセス要求元からのアクセスの許否を判定し、前記データ転送制御手段は、前記マスターデバイスのアクセス判定ランクを前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに送信し、アクセスの許可を要求する要求手段と、前記スレーブデバイスによるアクセス許否判定結果に基づいて前記データ転送の可否判定を行う転送可否判定手段とを有することとしてもよい。
【０００９】
又、本発明は、マスターデバイスとデータ格納領域を有する複数のスレーブデバイスにバスで接続され、マスターデバイスから送信される転送先及び転送元のスレーブデバイスのデータ格納領域を指定する転送条件に基づいて、転送元のデータ格納領域から転送先のデータ格納領域へのデータ転送を行わせるＤＭＡコントローラに用いるデータ転送制御方法であって、前記マスターデバイスと前記スレーブデバイスは、前記バスに接続されている他のデバイスからのアクセスを、前記スレーブデバイスが許可するか否かの判定基準となるアクセス判定ランクを保持し、前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクと当該スレーブデバイスが保持しているアクセス判定ランクとの比較結果に基づいてアクセス要求元からのアクセスの許否を判定し、
前記ＤＭＡコントローラは、条件記憶手段を備え、前記データ転送方法は、前記マスターデバイスから送信された前記転送条件を前記条件記憶手段に格納する格納ステップと、
前記転送条件を送信した前記マスターデバイスに、前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに当該マスターデバイスが保持しているアクセス判定ランクを送信させて、アクセスの許可を要求させる送信要求ステップと、前記スレーブデバイスによってアクセスを許可された場合に、前記データ転送を行わせるデータ転送制御ステップとを含むこととしてもよい。
【００１０】
又、本発明は、マスターデバイスとデータ格納領域を有する複数のスレーブデバイスにバスで接続され、マスターデバイスから送信される転送先及び転送元のデータ格納領域を指定する転送条件に基づいてデータ転送を行わせるＤＭＡコントローラに用いるデータ転送制御方法であって、前記マスターデバイスと前記スレーブデバイスは、データ転送可否の判定基準となるアクセス判定ランクを保持し、前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクと当該スレーブデバイスが保持しているアクセス判定ランクとの比較結果に基づいてアクセス要求元からのアクセスの許否を判定し、前記データ転送制御方法は、前記マスターデバイスのアクセス判定ランクを前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに送信し、アクセスの許可を要求する要求ステップと、前記スレーブデバイスによるアクセス許否判定結果に基づいて前記データ転送の可否判定を行い、判定結果が「転送可」である場合に、前記データ転送を行わせ、判定結果が「転送不可」である場合に前記データ転送を抑止させるデータ転送制御ステップとを含むことの構成としてもよい。
【発明の効果】
【００１１】
本発明は、上記構成を備えることにより、データ転送を要求するマスターデバイスの保持するアクセス判定ランクとアクセスを要求されたスレーブデバイスのアクセス判定ランクとの比較結果に基づいてデータ転送許否が決定されるので、データ転送の要求先のマスターデバイスの如何にかかわらず、無制限にデータ転送が行われ、機密情報が流出するのを有効に防止することができる。
【００１２】
ここで、前記データ転送制御手段は、データ転送を行う対象となる転送元及び転送先のデータ格納領域の組と当該組の転送先及び転送元のデータ格納領域を有する前記スレーブデバイスのアクセス判定ランクの内、大きい方のアクセス判定ランクとの対応関係を示すスレーブデバイス間テーブルを記憶するテーブル記憶手段と、前記スレーブデバイス間テーブルにおいて、前記転送条件において指定された転送元及び転送先のデータ格納領域の属する組と対応付けられているアクセス判定ランクと前記マスターデバイスのアクセス判定ランクとの比較をする比較手段と前記比較結果に基づいて前記データ転送の可否判定を行う転送可否判定手段とを有することとしてもよい。
【００１３】
これにより、ＤＭＡコントローラにおいて、迅速にデータ転送可否の決定を行うことができ、データ転送制御処理全体を効率よく実行することができる。
ここで、前記データ転送制御手段は、前記転送条件において指定された転送元及び転送先のデータ格納領域の組が、前記スレーブデバイス間テーブルに含まれるか否かを判定するテーブル判定手段を有し、前記転送可否判定手段は、前記スレーブデバイス間テーブルに含まれない場合に、「転送不可」と判定することとしてもよい。
【００１４】
これにより、スレーブデバイス間テーブルに含まれないデータ格納領域を指定したデータ転送が抑止されるので、本来データ転送を許可されていないデータ格納領域を指定して不正なデータ転送を行う行為を有効に防止することができる。
ここで、前記データ転送制御手段は、前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスから、保持しているアクセス判定ランクを取得する取得手段と、前記マスターデバイスのアクセス判定ランクと、取得したアクセス判定ランクとを比較する比較手段と、前記比較結果に基づいて前記データ転送の可否判定を行う転送可否判定手段とを有することとしてもよい。
【００１５】
これにより、ＤＭＡコントローラにおいて、データ転送要求されたスレーブデバイスのアクセス判定ランクを直接取得し、データ転送を要求するマスターデバイスの保持するアクセス判定ランクと比較することにより、迅速にデータ転送可否の決定を行うことができ、スレーブデバイスのアクセス判定ランクが可変である場合においてもデータ転送制御処理全体を効率よく実行することができる。
【００１６】
ここで、前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクと当該スレーブデバイスが保持しているアクセス判定ランクとの比較結果に基づいてアクセス要求元からのアクセスの許否を判定し、前記データ転送制御手段は、前記マスターデバイスのアクセス判定ランクを前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに送信し、アクセスの許可を要求する要求手段を有し、前記転送可否判定手段は、前記スレーブデバイスによるアクセス許否判定結果と前記比較手段による比較結果とに基づいて前記データ転送の可否判定を行う
こととしてもよい。
【００１７】
これにより、スレーブデバイス側においてアクセスが許可された場合に限り、データ転送を行わせることができるので、不正なデータ転送行為を効果的に防止することができる。
ここで、前記ＤＭＡコントローラは、複数のマスターデバイスと前記バスで接続され、
前記データ転送制御手段は、自装置が前記マスターデバイスからの前記転送条件の送信に応じてデータ転送を許可できる状態にあるか否かを示すフラグを設定するためのフラグ値を格納しているフラグ格納手段と、データ転送が行われている間、前記フラグを「不許可」に設定し、データ転送が完了すると、前記フラグを「許可」に設定するフラグ設定手段とを有し、前記転送可否判定手段は、前記マスターデバイスからの前記転送条件の送信時に前記フラグが、「不許可」に設定されている場合に、「転送不可」と判定する
こととしてもよい。
【００１８】
これにより、マスターデバイスからの転送条件に基づくデータ転送が行われている間、他のマスターデバイスからの転送条件に基づくデータ転送は行われないので、データ転送中における、他のマスターデバイスによる不正なデータ転送処理の実行を防止することができる。
ここで、前記データ転送制御手段は、前記フラグが「許可」に設定されている場合に、前記バスに接続されているマスターデバイスから転送条件の送信があると、当該マスターデバイスの識別子を記憶するマスターデバイス記憶手段と、前記フラグが「不許可」に設定され、前記転送条件に基づくデータ転送が行われている間に、前記バスに接続されているマスターデバイスから新たな転送条件が送信された場合に、当該マスターデバイスの識別子がマスターデバイス記憶手段に記憶されているか否かを判定するマスターデバイス判定手段とを有し、前記転送可否判定手段は、前記マスターデバイスからの新たな転送条件の送信時に前記フラグが「不許可」に設定され、かつ、新たな転送条件を送信した前記マスターデバイスの識別子が前記マスターデバイス記憶手段に記憶されていない場合に、「転送不可」と判定することとしてもよい。
【００１９】
これにより、同じマスターデバイスである場合には、マスターデバイスからの転送条件に基づくデータ転送が行われている間に、当該マスターデバイスは、別のデータ転送をＤＭＡコントローラに依頼し、複数のデータ転送を並行して実行することができるので、ＤＭＡコントローラを介したデータ転送の利用効率を高めることができる。
ここで、前記データ転送制御手段は、前記データ転送を行わせている間に、前記バスに接続されている前記マスターデバイス及び前記スレーブデバイスからのデータ転送中断要求を受取る中断要求受取手段と、データ転送中断要求の要求元がマスターデバイスであるか否かを判定する中断要求元判定手段と、前記要求元がマスターデバイスである場合に、前記要求元のアクセス判定ランクを受取り、前記要求元のアクセス判定ランクと前記受取手段が受取った前記マスターデバイスのアクセス判定ランクとの比較結果に基づいて、前記データ転送を中断させるか否かを判定する中断判定手段と中断させると判定された場合に、前記データ転送を中断させるデータ転送中断手段とを有することとしてもよい。
【００２０】
これにより、データ転送中断を要求元のデバイスの保持するアクセス判定ランクと実行中のデータ転送を要求したマスターデバイスの保持するアクセス判定ランクとの関係に基づいて中断可否が判定されるので、データ転送中にデータ転送が無制限に中断されるのを有効に防止することができる。
ここで、前記ＤＭＡコントローラは、予め設定された下限のアクセス判定ランクを記憶している下限ランク記憶手段と、前記転送条件を送信した前記マスターデバイスからアクセス判定ランクを受取り、記憶するランク記憶手段と前記転送条件を記憶する条件記憶手段とを備え、前記データ転送可否判定は、前記比較結果において、前記ランク記憶手段に記憶している前記マスターデバイスのアクセス判定ランクが前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクよりも小さくない場合に、「転送可」とされ、小さい場合に「転送不可」とされ、前記中断判定手段は、前記要求元のアクセス判定ランクが前記ランク記憶手段に記憶しているアクセス判定ランクよりも小さくない場合に、前記データ転送を中断させると判定し、前記データ転送制御手段は、中断させると判定した場合に、前記条件記憶手段に記憶している転送条件を削除する削除手段と、前記ランク記憶手段に記憶しているアクセス判定ランクに替えて下限のアクセス判定ランクを記憶させるランク切替手段とを有することとしてもよい。
【００２１】
これにより、中断時に設定されていた転送条件がクリアされ、転送先及び転送元のスレーブデバイスと比較対象となるアクセス判定ランクが下限に設定されるので、中断前に実行されていたデータ転送の条件が不正に利用されるのを有効に防止することができる。
ここで、前記データ転送可否判定は、前記比較結果において、前記マスターデバイスのアクセス判定ランクが前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクよりも小さくない場合に、「転送可」とされ、小さい場合に「転送不可」とされ、前記データ転送制御手段は、予め設定された上限のアクセス判定ランクを記憶している上限ランク記憶手段と、前記マスターデバイスのアクセス判定ランクと上限のアクセス判定ランクとを比較する比較手段とを有し、前記マスターデバイスのアクセス判定ランクの方が上限のアクセス判定ランクより大きくない場合に、前記データ転送可否判定結果が「転送可」である場合に、前記データ転送を行わせ、前記マスターデバイスのアクセス判定ランクの方が上限のアクセス判定ランクより大きい場合に、上限のアクセス判定ランクが、前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクより小さくない場合に、前記データ転送を行わせることとしてもよい。
【００２２】
これにより、データ転送要求をするマスターデバイスの保持しているアクセス判定ランクが不当に大きい場合には、そのアクセス判定ランクが上限のアクセス判定ランクに変更されるので、不当に大きいアクセス判定ランクを設定することによる不正なデータ転送行為の実行を防止することができる。
ここで、前記ＤＭＡコントローラは、複数のマスターデバイスと前記バスで接続され、
前記データ転送制御手段は、前記マスターデバイスのアクセス判定ランクの方が上限のアクセス判定ランクより大きくない場合に、前記マスターデバイスのアクセス判定ランクを記憶し、前記マスターデバイスのアクセス判定ランクの方が上限のアクセス判定ランクより大きい場合に、上限のアクセス判定ランクを記憶するランク記憶手段を有し、
前記データ転送制御手段は、前記バスに接続されている他のマスターデバイスのアクセス判定ランクが前記ランク記憶手段に記憶しているアクセス判定ランクよりも小さい場合に、前記バスに接続されている他のマスターデバイスから送信される転送条件に基づくデータ転送を抑止させることとしてもよい。
【００２３】
これにより、アクセス判定ランクの小さいマスターデバイスからのデータ転送要求に基づくデータ転送は行われなくなるので、ＤＭＡコントローラを介したデータ転送を行わせるマスターデバイスを制限することができる。
ここで、前記データ転送制御手段は、前記バスに接続されている前記マスターデバイス及び前記スレーブデバイスからのデータ転送中断要求を受取る中断要求受取手段と、
データ転送中断要求の要求元がマスターデバイスであるか否かを判定する中断要求元判定手段と、前記要求元がマスターデバイスである場合に、前記要求元のアクセス判定ランクを受取り、前記要求元のアクセス判定ランクと前記ランク記憶手段に記憶している前記マスターデバイスのアクセス判定ランクとの比較結果に基づいて、前記データ転送を中断させるか否かを判定する中断判定手段と、中断させると判定された場合に、前記データ転送を中断させるデータ転送中断手段とを有することとしてもよい。
【００２４】
これにより、データ転送中断を要求元のデバイスの保持するアクセス判定ランクと実行中のデータ転送を要求したマスターデバイスの保持するアクセス判定ランクとの関係に基づいて中断可否が判定されるので、データ転送中にデータ転送が無制限に中断されるのを有効に防止することができる。
ここで、前記ＤＭＡコントローラは、前記転送条件を記憶する条件記憶手段を備え、前記中断判定手段は、前記要求元のアクセス判定ランクが記憶しているアクセス判定ランクよりも小さくない場合に、前記データ転送を中断させると判定し、前記データ転送制御手段は、中断させると判定した場合に、前記条件記憶手段に記憶している転送条件を削除する削除手段と、前記ランク記憶手段に記憶しているアクセス判定ランクに替えて上限のアクセス判定ランクを記憶させるランク切替手段とを有することとしてもよい。
【００２５】
これにより、実行中のデータ転送を要求したマスターデバイスのアクセス判定ランクよりも小さくないマスターデバイスからのデータ転送中断要求に限り、データ転送が中断され、中断後は上限のアクセス判定ランクよりも小さいマスターデバイスからのデータ転送要求は拒否されるので、不正な中断行為や中断後の不正なデータ転送行為を有効に防止することができる。
【００２６】
ここで、前記ＤＭＡコントローラは、前記マスターデバイスと前記スレーブデバイスの保持している各アクセス判定ランクよりも大きくない下限のアクセス判定ランクを記憶している下限ランク記憶手段を備え、前記削除手段は、前記データ転送が完了した場合に、前記条件記憶手段に記憶している転送条件を削除し、前記ランク切替手段は、前記ランク記憶手段に、記憶しているアクセス判定ランクに替えて下限のアクセス判定ランクを記憶させることとしてもよい。
【００２７】
これにより、データ転送完了後は、その条件設定がクリアされるので、データ転送完了前に設定されていたデータ転送のための条件が不正に利用されるのを防止することができる。
ここで、前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクが、当該スレーブデバイスが保持しているアクセス判定ランクより小さくない場合に限り、アクセス要求元からのアクセスを許可し、前記データ転送制御手段は、前記スレーブデバイスのアクセス判定ランクより小さくない上限のアクセス判定ランクを記憶するランク記憶手段と、前記転送条件を記憶する条件記憶手段と、ランク記憶手段に記憶されている上限のアクセス判定ランクを、記憶している前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに送信して、アクセスの許可を要求するアクセス要求手段とを有し、前記データ転送可否判定手段は、前記スレーブデバイスによるアクセス許否判定結果と前記比較手段による比較結果とに基づいて前記データ転送の可否判定を行うこととしてもよい。
【００２８】
これにより、データ転送を依頼するスレーブデバイスからアクセス許可を得るために、依頼毎にデータ転送要求をしたマスターデバイスのアクセス判定ランクを記憶する必要がなくなるので、データ転送を行うために、スレーブデバイスからアクセス許可を得るための処理を軽減することができる。
ここで、前記データ転送制御手段は、前記バスに接続されている前記マスターデバイス及び前記スレーブデバイスからのデータ転送中断要求を受取る中断要求受取手段と、データ転送中断要求の要求元がマスターデバイスであるか否かを判定する中断要求元判定手段と、前記要求元がマスターデバイスである場合に、前記要求元のアクセス判定ランクを受取り、前記要求元のアクセス判定ランクと記憶している上限のアクセス判定ランクとの比較結果に基づいて、前記データ転送を中断させるか否かを判定する中断判定手段と中断させると判定された場合に、前記データ転送を中断させるデータ転送中断手段とを有することとしてもよい。
【００２９】
これにより、データ転送中断を要求元のデバイスの保持するアクセス判定ランクと上限のアクセス判定ランクとの関係に基づいて中断可否が判定されるので、データ転送中にデータ転送が無制限に中断されるのを有効に防止することができる。
ここで、前記データ転送制御手段は、前記データ転送を中断させると判定した場合に、前記条件記憶手段に記憶している転送条件を削除する削除手段を有することとしてもよい。
【００３０】
これにより、中断時に設定されていたデータ転送条件がクリアされるので、中断前に実行されていたデータ転送の条件が不正に流出するのを有効に防止することができる。
ここで、前記データ転送制御手段は、前記マスターデバイスからの認証要求に応じて認証処理を行う認証手段と、前記マスターデバイスと前記スレーブデバイスの保持している各アクセス判定ランクよりも大きくない下限のアクセス判定ランクを記憶している下限ランク記憶手段とを有し、認証できた場合に、前記データ転送可否判定結果が「転送可」である場合に、前記データ転送を行わせ、認証できなかった場合に、下限のアクセス判定ランクが、前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクよりも小さくない場合に限り、前記データ転送を行わせることとしてもよい。
【００３１】
これにより、マスターデバイスからのデータ転送要求に対し、当該マスターデバイスを認証できた場合には、当該マスターデバイスの保持するアクセス判定ランクに基づいてデータ転送許否が決定され、認証できなかった場合には、下限のアクセス判定ランクに基づいてデータ転送許否が決定されるので、ＤＭＡコントローラを介したデータ転送において、その利用効率を低下させることなく、機密保持性を高めることができる。
【００３２】
ここで、前記データ転送制御手段は、前記データ転送を行わせている間に、前記バスに接続されている前記マスターデバイス及び前記スレーブデバイスからのデータ転送中断要求を受取る中断要求受取手段と、データ転送中断要求の要求元がマスターデバイスであるか否かを判定する中断要求元判定手段と、前記要求元がマスターデバイスである場合に、前記要求元のアクセス判定ランクを受取り、前記要求元のアクセス判定ランクと前記受取手段が受取った前記マスターデバイスのアクセス判定ランクとの比較結果に基づいて、前記データ転送を中断させるか否かを判定する中断判定手段と、中断させると判定された場合に、前記データ転送を中断させるデータ転送中断手段とを有することとしてもよい。
【００３３】
これにより、データ転送中断を要求元のデバイスの保持するアクセス判定ランクと実行中のデータ転送を要求したマスターデバイスの保持するアクセス判定ランクとの関係に基づいて中断可否が判定されるので、データ転送中にデータ転送が無制限に中断されるのを有効に防止することができる。
ここで、前記ＤＭＡコントローラは、前記マスターデバイスのアクセス判定ランクを記憶するランク記憶手段と前記転送条件を記憶する条件記憶手段とを備え、前記データ転送可否判定は、前記比較結果において、前記ランク記憶手段に記憶している前記マスターデバイスのアクセス判定ランクが前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクよりも小さくない場合に、「転送可」とされ、小さい場合に、「転送不可」とされ、前記中断判定手段は、前記要求元のアクセス判定ランクが記憶しているアクセス判定ランクよりも小さくない場合に、前記データ転送を中断させると判定し、前記データ転送制御手段は、中断させると判定された場合に、前記条件記憶手段に記憶している転送条件を削除する削除手段と、前記ランク記憶手段に記憶しているアクセス判定ランクに替えて下限のアクセス判定ランクを記憶させるランク切替手段とを有することとしてもよい。
【００３４】
これにより、中断時に設定されていた転送条件がクリアされ、データ転送依頼時にスレーブデバイスに送信されるアクセス判定ランクが下限に設定されるので、中断前に実行されていたデータ転送の条件が不正に利用されるのを有効に防止することができる。
ここで、前記データ転送制御手段は、データ転送を行う対象となる転送元及び転送先のデータ格納領域の組と当該組の転送先及び転送元のデータ格納領域を有する前記スレーブデバイスのアクセス判定ランクとの対応関係を示すスレーブデバイス間テーブルを記憶するテーブル記憶手段と、前記スレーブデバイス間テーブルにおいて、前記転送条件において指定された転送元及び転送先のデータ格納領域の属する組と対応付けられているアクセス判定ランクと前記マスターデバイスのアクセス判定ランクとの比較をする比較手段と前記比較結果に基づいて前記データ転送の可否判定を行う転送可否判定手段とを有することとしてもよい。
【００３５】
これにより、ＤＭＡコントローラにおいて、迅速にデータ転送可否の決定を行うことができ、データ転送制御処理全体を効率よく実行することができる。
又、データ転送要求された転送元及び転送先のスレーブデバイスのアクセス判定ランクの大小関係に応じたきめの細かいデータ転送制御を行うことができる。
ここで、マスターデバイスとデータ格納領域を有する複数のスレーブデバイスにバスで接続され、マスターデバイスから送信される転送先及び転送元のデータ格納領域を指定する転送条件に基づいてデータ転送を行わせるＤＭＡコントローラであって、前記マスターデバイスからの認証要求に応じて認証処理を行う認証手段と、認証できた場合に限り、前記データ転送を行わせるデータ転送制御手段とを備えることとしてもよい。
【００３６】
これにより、マスターデバイスからのデータ転送要求に対し、当該マスターデバイスの認証ができなかった場合には、そのデータ転送は許可されないので、ＤＭＡコントローラを介したデータ転送における機密保持性を高めることができる。
ここで、前記ＤＭＡコントローラは、認証できなかった前記マスターデバイスを記憶する認証不可マスターデバイス記憶手段を備え、前記認証手段は、認証要求した前記マスターデバイスが前記認証不可マスターデバイス記憶手段に記憶されていない場合に限り、認証要求した前記マスターデバイスの認証処理を実行することとしてもよい。
【００３７】
これにより、認証できなかったマスターデバイスが登録されるので、登録されているマスターデバイスから認証要求があってもその要求を無視することができるので、無駄な認証処理に要する処理負荷を軽減することができる。
【発明を実施するための最良の形態】
【００３８】
以下本発明を実施するための最良の形態について、図面を参照しながら説明する。
（実施形態１）
＜構成＞
図１は本発明の実施形態１に係る機密情報処理装置１００の構成を示す機能ブロック図である。
【００３９】
機密情報処理装置１００は、データ・アドレスバス１０１、ランクバス１０２、マスターデバイス１０３、ＤＭＡコントローラ１０４、マスターデバイス１０５、汎用記憶装置１０６、暗号処理装置１０７、機密情報記憶装置１０８の各デバイスから構成される。
なお、機密情報処理装置１００は、外部インタフェースを介して外部装置と接続されることとしてもよい。
【００４０】
データ・アドレスバス１０１は、データとアドレスを送受信するためのバスである。
ランクバス１０２は、アクセス判定ランクを送受信するためのバスである。
ここで、「アクセス判定ランク」とは、機密情報処理装置１００内の各デバイスへのアクセスを許可するか否かの判断基準となるランクを示す情報のことをいい、機密情報処理装置１００内のＤＭＡコントローラ１０４を除く各デバイスには、それぞれ固有のアクセス判定ランクが予め設定されている。以降、全ての実施形態において、アクセス判定ランクを「ＡＲ」と呼ぶ。
【００４１】
マスターデバイス１０３及び１０５は、制御装置であり、ＣＰＵ、ＤＳＰ（Digital Signal Processor）、ランクレジスタ等から構成され、ランクレジスタ１０３１、１０５１にそれぞれ自装置のＡＲを格納している。
各マスターデバイスは、ＤＭＡコントローラ１０４にデータ転送要求を行うことにより、データ転送要求において、指定したデバイス間でのデータ転送をＤＭＡコントローラ１０４に依頼する。
【００４２】
ここで、「データ転送要求」とは、要求元のマスターデバイスの識別子、転送元のデバイスのデータ記憶領域における読出開始アドレス、転送先のデバイスのデータ記憶領域における書込開始アドレス、転送データのデータサイズをＤＭＡコントローラ１０４に送信することにより、データの転送を要求することをいう。
又、データ転送の対象となる各デバイス（具体的には、汎用記憶装置１０６、暗号処理装置１０７、機密情報記憶装置１０８であり、以降全ての実施形態において、これらを総称して「スレーブデバイス」と呼ぶ。）のデータ記憶領域には、アドレスが重複することなく、一意に付与され、ＤＭＡコントローラ１０４は、付与されているアドレスに基づいてスレーブデバイスを識別する。
【００４３】
スレーブデバイスは、メモリ、ハードディスク、演算装置等から構成される。
ＤＭＡコントローラ１０４は、ＤＭＡ設定レジスタ１０４１、ランク設定レジスタ１０４２、ランク下限レジスタ１０４３を有し、マスターデバイス１０３、１０５からのデータ転送要求に応じて、以下に説明するデータ転送制御処理Ａを行う。
１．前処理
ＤＭＡコントローラ１０４は、データ転送要求に含まれるデータ転送条件をＤＭＡ設定レジスタ１０４１に格納することにより、データ転送条件をＤＭＡ設定レジスタ１０４１に設定し、データ転送要求をしたマスターデバイスから当該マスターデバイスのＡＲを受取り、受取ったＡＲをランク設定レジスタ１０４２に格納し、データ転送要求をしたマスターデバイスからデータ・アドレスバス１０１を獲得する。
２．転送処理
ＤＭＡコントローラ１０４は、以下の処理をデータ転送要求の指定するデータサイズのデータの転送が完了するまで繰り返す。
【００４４】
ＤＭＡコントローラ１０４は、データ転送要求の指定する転送元及び転送先のスレーブデバイスに受取ったＡＲを送信してアクセスの許可を要求し、各スレーブデバイスからアクセスが許可されることにより、データ転送が許可されると、データ・アドレスバス１０１を介して一度に転送可能な所定サイズのデータの読出しを転送元のスレーブデバイスに指示し、読出されたデータがデータ・アドレスバス１０１に出力されると、出力されたデータの書込みを転送先のスレーブデバイスに指示し、当該データを転送先のスレーブデバイスのデータ記憶領域に書込ませる。
３．転送中断処理
ＤＭＡコントローラ１０４は、データ転送中に他のデバイスからの転送中断要求があると、要求元がマスターデバイスで、そのＡＲがランク設定レジスタ１０４２に格納しているＡＲよりも小さくない場合に限り、データ転送を中断し、ＤＭＡ設定レジスタ１０４１に設定されているデータ転送条件を初期化してクリアし、ランク設定レジスタ１０４２のＡＲを下限ＡＲに設定する。
【００４５】
ここで、「下限ＡＲ」とは、機密情報処理装置１００（他の実施形態においては、当該実施形態の対応する機密情報処理装置）の各デバイスに設定されているＡＲのうち、最小のＡＲより大きくないＡＲのことをいう。
ＤＭＡ設定レジスタ１０４１は、各マスターデバイスからのデータ転送要求に含まれるデータ転送条件（具体的には、転送元のデバイスのデータ記憶領域における読出開始アドレス、転送先のデバイスのデータ記憶領域における書込開始アドレス、転送データのデータサイズ）を格納する。
【００４６】
ランク設定レジスタ１０４２は、後述するデータ転送処理の過程で各マスターデバイスから送信される当該マスターデバイスのＡＲの示すランクを格納する。
ランク下限レジスタ１０４３は、予め定められた下限ＡＲを格納している。
汎用記憶装置１０６は、データ記憶領域とランクレジスタ１０６１を有し、データ記憶領域に機密性の低いデータを記憶している。
【００４７】
暗号処理装置１０７は、データ記憶領域とランクレジスタ１０７１を有し、暗号鍵を用いてデータを暗号化又は復号化し、暗号化又は復号化されたデータをデータ記憶領域に格納する。
機密情報記憶装置１０８は、データ記憶領域とランクレジスタ１０８１を有し、データ記憶領域に暗号鍵などの機密性の高いデータを記憶している。
＜動作＞
次に、機密情報処理装置１００の行うデータ転送処理Ａの動作について説明する。
【００４８】
図２は、上記動作を示すフローチャートである。以下、図２を参照して上記動作について説明する。
ＤＭＡコントローラ１０４は、マスターデバイス１０３、１０５の何れかのマスターデバイスからデータ転送要求を受取ると（ステップＳ２０１）、当該データ転送要求に含まれるデータ転送条件をＤＭＡ設定レジスタ１０４１に格納することにより、データ転送条件をＤＭＡ設定レジスタ１０４１に設定し（ステップＳ２０２）、データ転送要求をしたマスターデバイスに当該マスターデバイスのＡＲの送信を指示し、マスターデバイスからＡＲを受取ると（ステップＳ２０３）、受取ったＡＲをランク設定レジスタ１０４２に格納し（ステップＳ２０４）、データ転送要求をしたマスターデバイスにデータ・アドレスバス１０１の解放を要求し、マスターデバイスからデータ・アドレスバス１０１を獲得し（ステップＳ２０５）、受取ったＡＲをデータ転送要求の指定する転送元及び転送先のスレーブデバイスに送信してアクセスの許可を要求する（ステップＳ２０６）。
【００４９】
ＤＭＡコントローラ１０４からＡＲを送信された各スレーブデバイスは、送信されたＡＲが当該スレーブデバイスのＡＲよりも小さくないか否かを判定し（ステップＳ２０７）、小さくない場合には（ステップＳ２０７：Ｙ）、ＤＭＡコントローラ１０４にアクセスを許可して転送許可信号を送信し、小さい場合には（ステップＳ２０７：Ｎ）、ＤＭＡコントローラ１０４からのアクセスを拒否してＤＭＡコントローラ１０４に転送拒否信号を送信する（ステップＳ２０９）。
【００５０】
ＤＭＡコントローラ１０４は、各スレーブデバイスから、転送許可信号を受取ると、転送元のスレーブデバイスにＤＭＡ設定レジスタ１０４１に格納されている読出開始アドレスを通知して、当該スレーブデバイスに通知したアドレスに格納されている所定サイズのデータをデータ記憶領域から読出させてデータ・アドレスバス１０１に出力させ、さらに、転送先のスレーブデバイスに書込開始アドレスを通知し、当該スレーブデバイスのデータ記憶領域の通知した書込開始アドレスに出力されたデータを書込ませることにより、データ転送を開始させる（ステップＳ２０８）。
【００５１】
ここで、ＤＭＡコントローラ１０４は、後述するステップＳ２１０において、データ転送の中断要求がない場合には、ステップＳ２０８の処理をデータ転送要求の指定するデータサイズのデータの転送が完了するまで繰り返し、所定サイズのデータ転送が完了する毎に、転送したデータに相当する分だけ、ＤＭＡ設定レジスタに格納されている読出開始アドレス、書込開始アドレスの値をインクリメントし、転送データのデータサイズの値をデクリメントする。
【００５２】
これにより、所定サイズのデータ転送が完了する毎に、転送元に通知する読出開始アドレス及び転送先に通知する書込開始アドレスが更新される。
次にＤＭＡコントローラ１０４は、他のデバイスから中断要求が有ったか否かを監視し（ステップＳ２１０）、中断要求が無い場合には（ステップＳ２１０：Ｎ）には、その時点においてＤＭＡ設定レジスタに格納されている転送データのデータサイズの値に基づいて、要求されたデータ転送が完了したか否かを判定し（ステップＳ２１６）、完了していない場合には（ステップＳ２１６：Ｎ）、ステップＳ２０６の処理に移行し、完了している場合には（ステップＳ２１６：Ｙ）、処理を終了する。
【００５３】
ステップＳ２１０において、中断要求が有った場合には（ステップＳ２１０：Ｙ）、ＤＭＡコントローラ１０４は、要求元がマスターデバイスか否かを判定し（ステップＳ２１１）、マスターデバイスである場合には（ステップＳ２１１：Ｙ）、当該マスターデバイスのＡＲを受取り、受取ったＡＲがランク設定レジスタ１０４２に格納しているＡＲより小さくないか否かを判定し（ステップＳ２１２）、小さくない場合には（ステップＳ２１２：Ｙ）、データ転送を中断させ（ステップＳ２１３）、ＤＭＡ設定レジスタ１０４１に設定されているデータ転送条件を初期化してクリアし（ステップＳ２１４）、ランク設定レジスタ１０４２に格納しているＡＲをランク下限レジスタ１０４３に格納されている下限ＡＲに書き換えることにより、ランク設定レジスタ１０４２に格納しているＡＲを下限ＡＲに設定する（ステップＳ２１５）。
（実施形態２）
＜構成＞
図３は本発明の実施形態２に係る機密情報処理装置２００の構成を示す機能ブロック図である。
【００５４】
機密情報処理装置２００は、データ・アドレスバス１０１、ランクバス１０２、マスターデバイス１０３、ＤＭＡコントローラ２０４、マスターデバイス１０５、汎用記憶装置１０６、暗号処理装置１０７、機密情報記憶装置１０８の各デバイスから構成される。
図３の機能ブロック図において、実施形態１の機密情報処理装置１００と同一のデバイスについては、同一の番号を付している。以下、機密情報処理装置１００と同一のデバイスについては、実施形態１において説明済みであるので説明を省略し、相違するデバイスについて説明する。
【００５５】
なお、機密情報処理装置２００は、外部インタフェースを介して外部装置と接続されることとしてもよい。
ＤＭＡコントローラ２０４は、ＤＭＡ設定レジスタ１０４１、ランク設定レジスタ１０４２、ランク下限レジスタ１０４３、スレーブ間ランクテーブル格納部２０４１、比較部２０４２を有する。
【００５６】
スレーブ間ランクテーブル格納部２０４１は、スレーブ間ランクテーブルを格納している。
ここで、「スレーブ間ランクテーブル」とは、転送元スレーブデバイスと転送先スレーブデバイスとの組毎にＡＲとの対応関係を示すテーブルのことをいう。具体的には、スレーブ間ランクテーブルにおいて、転送元及び転送先のスレーブデバイスの各データ記憶領域に付与されているアドレスのアドレス範囲によって各スレーブデバイスが特定され、転送元及び転送先のアドレス範囲の組と当該組に対してＡＲが対応付けられている。
【００５７】
図４は、スレーブ間ランクテーブルの具体例を示す。なお、図４に示すスレーブデバイス名は、必ずしもスレーブ間ランクテーブルに含まれている必要はない。
比較部２０４２は、後述するデータ転送制御処理Ｂにおいて、データ転送要求をしたマスターデバイスから受取った当該マスターデバイスのＡＲと、スレーブ間ランクテーブルにおいて、データ転送要求において指定される転送元の読出開始アドレスと転送先の書込開始アドレスがそれぞれアドレス範囲に含まれる組に対応するＡＲとを大小比較する。
【００５８】
ＤＭＡコントローラ２０４は、マスターデバイス１０３、１０５の何れかのマスターデバイスからのデータ転送要求に応じて、以下に説明するデータ転送制御処理Ｂを行う。
１．前処理
ＤＭＡコントローラ２０４は、データ転送要求に含まれるデータ転送条件をＤＭＡ設定レジスタ１０４１に格納することにより、データ転送条件をＤＭＡ設定レジスタ１０４１に設定し、データ転送条件の示す転送元の読出開始アドレスがスレーブ間ランクテーブルの転送元のアドレス範囲に、当該データ転送条件の示す転送先の書込開始アドレスがスレーブ間ランクテーブルの転送先のアドレス範囲にそれぞれ含まれる組が有るか否かを判定し、無い場合にはデータ転送制御処理Ｂを終了し、有る場合には、さらに読出開始アドレスと書込開始アドレスとデータ転送条件の示す転送データのデータサイズとに基づいて、当該データサイズのデータを全て読出すのに要するアドレス範囲（以下、「読出アドレス範囲」と呼ぶ。）と、当該データを全て書き込むのに要するアドレス範囲（以下、「書込アドレス範囲」と呼ぶ。）とを算出し、算出した読出アドレス範囲がスレーブ間ランクテーブルにおける該当する組の転送元のアドレス範囲内で、かつ、算出した書込アドレス範囲がスレーブ間ランクテーブルにおける該当する組の転送先のアドレス範囲内であるか否かを判定し、アドレス範囲内でない場合には、データ転送制御処理Ｂを終了し、アドレス範囲内である場合には、該当する組に対応付けられているＡＲを特定し、データ転送要求したマスターデバイスから受取った当該マスターデバイスのＡＲと特定したＡＲとの大小比較を行い、受取ったＡＲが特定したＡＲよりも小さくない場合に受取ったＡＲをランク設定レジスタ１０４２に格納し、データ転送要求したマスターデバイスからデータ・アドレスバス１０１を獲得する。
２．転送処理
ＤＭＡコントローラ２０４は、ＤＭＡコントローラ１０４の行う転送処理と同様の処理を行う。
３．転送中断処理
ＤＭＡコントローラ２０４は、ＤＭＡコントローラ１０４の行う転送処理と同様の処理を行う。
＜動作＞
次に、ＤＭＡコントローラ２０４の行うデータ転送制御処理Ｂの動作について説明する。
【００５９】
図５及び図６は、上記動作を示すフローチャートである。以下、図５及び図６を参照して上記動作について説明する。
ＤＭＡコントローラ２０４は、マスターデバイス１０３、１０５の何れかのマスターデバイスからデータ転送要求を受取ると（ステップＳ５０１）、当該データ転送要求に含まれるデータ転送条件をＤＭＡ設定レジスタ１０４１に格納することにより、データ転送条件をＤＭＡ設定レジスタ１０４１に設定し（ステップＳ５０２）、データ転送条件の示す転送元の読出開始アドレスがスレーブ間ランクテーブル（以下、「ＳＴ」と略して呼ぶ。）の転送元のアドレス範囲に、データ転送条件の示す転送先の書込開始アドレスがＳＴの転送先のアドレス範囲にそれぞれ含まれる組が有るか否かを判定する（ステップＳ５０３）。
【００６０】
無い場合には（ステップＳ５０３：Ｎ）、ＤＭＡコントローラ２０４は、ＤＭＡ設定レジスタ１０４１に設定されているデータ転送条件を初期化してクリアして（ステップＳ５１２）、データ転送制御処理Ｂを終了し、有る場合には（ステップＳ５０３：Ｙ）、さらに読出開始アドレスと書込開始アドレスとデータ転送要求において指定される転送データのデータサイズとに基づいて、読出アドレス範囲、書込アドレス範囲を算出し、算出した読出アドレス範囲がスレーブ間ランクテーブルにおける該当する組の転送元のアドレス範囲内で、かつ、算出した書込アドレス範囲が含まれるスレーブ間ランクテーブルにおける該当する組の転送先のアドレス範囲内であるか否かを判定する（ステップＳ５０４）。
【００６１】
アドレス範囲内でない場合には（ステップＳ５０４：Ｎ）、ＤＭＡコントローラ２０４は、ステップＳ５１２の処理に移行し、アドレス範囲内である場合には（ステップＳ５０４：Ｙ）、ＳＴにおいて、該当する転送先と転送元の組に対応付けられている転送先及び転送元のＡＲを特定し（ステップＳ５０５）、データ転送要求したマスターデバイスより当該マスターデバイスのＡＲを受取り（ステップＳ５０６）、受取ったＡＲが特定した転送元ＡＲより小さくないか否かを判定する（ステップＳ５０７）。
【００６２】
小さい場合（ステップＳ５０７：Ｎ）、ＤＭＡコントローラ２０４は、ステップＳ５１２の処理に移行し、小さくない場合（ステップＳ５０７：Ｙ）、受取ったＡＲが特定した転送先ＡＲより小さくないか否かを判定し（ステップＳ５０８）、小さくない場合（ステップＳ５０８：Ｙ）、受取ったＡＲをランク設定レジスタ１０４２に格納し（ステップＳ５１０）、データ転送要求をしたマスターデバイスにデータ・アドレスバス１０１の解放を要求し、マスターデバイスからデータ・アドレスバス１０１を獲得し（ステップＳ５１１）、受取ったＡＲをデータ転送要求の指定する転送元及び転送先のスレーブデバイスに送信してアクセスの許可を要求し（ステップＳ５１３）、図２のステップＳ２０８の処理と同様の処理を行い、データ転送を開始させる（ステップＳ５１４）。
【００６３】
ステップＳ５０８において、受取ったＡＲが特定した転送先ＡＲより小さい場合（ステップＳ５０８：Ｎ）、ＤＭＡコントローラ２０４は、転送先ＡＲをランク設定レジスタ１０４２に格納し（ステップＳ５０９）、ステップＳ５１１の処理に移行する。
ステップＳ５１５〜ステップＳ５２２の処理は、図２のステップＳ２１０〜ステップＳ２１７の処理と同じであるので、説明を省略する。
（実施形態３）
＜構成＞
図７は本発明の実施形態３に係る機密情報処理装置３００の構成を示す機能ブロック図である。
【００６４】
機密情報処理装置３００は、データ・アドレスバス１０１、ランクバス１０２、マスターデバイス１０３、ＤＭＡコントローラ３０４、マスターデバイス１０５、汎用記憶装置１０６、暗号処理装置１０７、機密情報記憶装置１０８の各デバイスから構成される。
図７の機能ブロック図において、実施形態１の機密情報処理装置１００と同一のデバイスについては、同一の番号を付している。以下、機密情報処理装置１００と同一のデバイスについては、実施形態１において説明済みであるので説明を省略し、相違するデバイスについて説明する。
【００６５】
なお、機密情報処理装置３００は、外部インタフェースを介して外部装置と接続されることとしてもよい。
ＤＭＡコントローラ３０４は、ＤＭＡ設定レジスタ１０４１、ランク設定レジスタ１０４２、ランク下限レジスタ１０４３、スレーブランクレジスタ３０４１、比較部３０４２を有する。
【００６６】
スレーブランクレジスタ３０４１は、後述するデータ転送制御処理Ｃにおいて、データの転送元又は転送先のスレーブデバイスから受取ったＡＲを格納する。
比較部３０４２は、後述するデータ転送制御処理Ｃにおいて、データの転送元及び転送先から受取ったＡＲの大小比較と、データ転送要求したマスターデバイスから受取ったＡＲとスレーブランクレジスタ３０４１に格納されているＡＲとの大小比較をする。
【００６７】
ＤＭＡコントローラ３０４は、マスターデバイス１０３、１０５の何れかのマスターデバイスからのデータ転送要求に応じて、以下に説明するデータ転送制御処理Ｃを行う。
１．前処理
ＤＭＡコントローラ３０４は、データ転送要求に含まれるデータ転送条件をＤＭＡ設定レジスタ１０４１に格納することにより、データ転送条件をＤＭＡ設定レジスタ１０４１に設定し、データ転送条件の示す転送元及び転送先のスレーブデバイスから各スレーブデバイスのＡＲを受取り、受取ったＡＲの大小比較を行い、大きい方のＡＲをスレーブランクレジスタ３０４１に格納し、マスターデバイスから受取った当該マスターデバイスのＡＲと格納しているＡＲとの大小比較を行い、受取ったＡＲが格納しているＡＲよりも小さくない場合、受取ったＡＲをランク設定レジスタ１０４２に格納し、データ転送要求したマスターデバイスからデータ・アドレスバス１０１を獲得する。
２．転送処理
ＤＭＡコントローラ３０４は、ＤＭＡコントローラ１０４の行う転送処理と同様の処理を行う。
３．転送中断処理
ＤＭＡコントローラ３０４は、ＤＭＡコントローラ１０４の行う転送処理と同様の処理を行う。
＜動作＞
次に、ＤＭＡコントローラ３０４の行うデータ転送制御処理Ｃの動作について説明する。
【００６８】
図８は、上記動作を示すフローチャートである。以下、図８を参照して上記動作について説明する。
ＤＭＡコントローラ３０４は、マスターデバイス１０３、１０５の何れかのマスターデバイスからデータ転送要求を受取ると（ステップＳ７０１）、当該データ転送要求に含まれるデータ転送条件をＤＭＡ設定レジスタ１０４１に格納することにより、データ転送条件をＤＭＡ設定レジスタ１０４１に設定し（ステップＳ７０２）、データ転送条件の示す転送元からＡＲを取得し（ステップＳ７０３）、取得したＡＲをスレーブランクレジスタ３０４１（以下、略して「ＳＲ」と呼ぶ。）に格納する（ステップＳ７０４）。
【００６９】
次にＤＭＡコントローラ３０４は、データ転送条件の示す転送先からＡＲを取得し（ステップＳ７０５）、転送先のＡＲが格納している転送元のＡＲより大きいか否かを判定し（ステップＳ７０６）、大きくない場合には（ステップＳ７０６：Ｎ）、後述するステップＳ７０８の処理に移行し、大きい場合には（ステップＳ７０６：Ｙ）、転送先のＡＲを格納している転送元のＡＲに替えてＳＲに格納し（ステップＳ７０７）、データ転送要求したマスターデバイスよりＡＲを受取り（ステップＳ７０８）、受取ったＡＲがＳＲに格納しているＡＲより小さくないか否かを判定する（ステップＳ７０９）。
【００７０】
小さい場合（ステップＳ７０９：Ｎ）、ＤＭＡコントローラ３０４は、ＤＭＡ設定レジスタ１０４１に設定されているデータ転送条件を初期化してクリアして（ステップＳ７２０）、データ転送制御処理Ｃを終了し、小さくない場合には（ステップＳ７０９：Ｙ）、図８のステップＳ７１０〜ステップＳ７１９、ステップＳ７２０、ステップＳ７２１に示すように、図５のステップＳ５１０、ステップＳ５１１、ステップＳ５１３、ステップＳ５１５〜ステップＳ５２２の処理と同じ処理を行う。
（実施形態４）
＜構成＞
図９は本発明の実施形態４に係る機密情報処理装置４００の構成を示す機能ブロック図である。
【００７１】
機密情報処理装置４００は、データ・アドレスバス１０１、ランクバス１０２、マスターデバイス１０３、ＤＭＡコントローラ４０４、マスターデバイス１０５、汎用記憶装置１０６、暗号処理装置１０７、機密情報記憶装置１０８の各デバイスから構成される。
図９の機能ブロック図において、実施形態１の機密情報処理装置１００と同一のデバイスについては、同一の番号を付している。以下、機密情報処理装置１００と同一のデバイスについては、実施形態１において説明済みであるので説明を省略し、相違するデバイスについて説明する。
【００７２】
なお、機密情報処理装置４００は、外部インタフェースを介して外部装置と接続されることとしてもよい。
ＤＭＡコントローラ４０４は、複数のＤＭＡ設定レジスタ１０４１、ランク設定レジスタ１０４２、ランク下限レジスタ１０４３、ＤＭＡ実行マスターレジスタ４０４１、ランク設定許可フラグレジスタ４０４２を有する。
【００７３】
ＤＭＡ実行マスターレジスタ４０４１は、データ転送要求したマスターデバイスを識別する識別子を格納する。
ランク設定許可フラグレジスタ４０４２は、データ転送要求の受け入れ許否を示すランク設定許可フラグを設定するためのフラグ値を格納する。
ここで、ランク設定許可フラグとは、マスターデバイスからのデータ転送要求に応じてデータ転送を許可できる状態にあるか否かを示すフラグのことをいい、データ転送の実行中は、「不許可」を示すフラグ値に設定され、データ転送完了後、「許可」を示すフラグ値に設定されるフラグのことをいう。
【００７４】
ＤＭＡコントローラ４０４は、マスターデバイス１０３、１０５の何れかのマスターデバイスからのデータ転送要求に応じて、以下に説明するデータ転送制御処理Ｄを行う。
１．前処理
ＤＭＡコントローラ４０４は、マスターデバイスからデータ転送要求を受け取ると、ランク設定許可フラグレジスタ４０４２に格納されているランク設定フラグが「許可」に設定されているか又はデータ転送要求したマスターデバイスの識別子がＤＭＡマスター実行レジスタ４０４１に格納されている場合に限り、データ転送制御処理Ｄを続行し、ランク設定フラグを「不許可」に切替え、ＤＭＡ実行マスターレジスタ４０４１にデータ転送要求したマスターデバイスの識別子を格納し、データ転送要求に含まれるデータ転送条件をＤＭＡ設定レジスタ１０４１に格納することにより、データ転送条件をＤＭＡ設定レジスタ１０４１に設定し、当該マスターデバイスのＡＲを受取り、ランク設定レジスタ１０４２に格納し、データ転送要求したマスターデバイスからデータ・アドレスバス１０１を獲得する。
２．転送処理
ＤＭＡコントローラ４０４は、ＤＭＡコントローラ１０４の行う転送処理と同様の処理を行う。
３．転送中断処理
ＤＭＡコントローラ４０４は、ＤＭＡコントローラ１０４の行う転送処理と同様の処理を行う。
４．後処理
ＤＭＡコントローラ４０４は、２、３の処理完了後、ＤＭＡ実行マスターレジスタ４０４１に格納されているマスターレジスタの識別子をクリアし、ランク設定許可フラグを「許可」に設定する。
＜動作＞
次に、機密情報処理装置４００の行うデータ転送処理Ｄの動作について説明する。
【００７５】
図１０及び図１１は、上記動作を示すフローチャートである。以下、図１０及び図１１を参照して上記動作について説明する。
ＤＭＡコントローラ４０４は、マスターデバイス１０３、１０５の何れかのマスターデバイスからデータ転送要求を受取ると（ステップＳ９０１）、ランク設定許可フラグレジスタ４０４２のランク設定許可フラグが「許可」に設定されている否かを判定し（ステップＳ９０２）、「許可」に設定されている場合には（ステップＳ９０２：Ｙ）、ランク設定許可フラグを「不許可」に設定し（ステップＳ９０３）、ＤＭＡ実行マスターレジスタ４０４１にデータ転送要求したマスターデバイスの識別子を格納し（ステップＳ９０４）、さらに、データ転送要求に含まれるデータ転送条件をＤＭＡ設定レジスタ１０４１に格納することにより、データ転送条件をＤＭＡ設定レジスタ１０４１に設定する（ステップＳ９０５）。
【００７６】
ステップＳ９０２において、「不許可」に設定されている場合には（ステップＳ９０２：Ｎ）、ＤＭＡコントローラ４０４は、データ転送要求をしたマスターデバイスの識別子がＤＭＡ実行マスターレジスタ４０４１に格納されている否かを判定し（ステップＳ９２３）、格納されている場合には（ステップＳ９２３：Ｙ）、ステップＳ９０５の処理に移行し、格納されていない場合には（ステップＳ９２３：Ｎ）、データ転送処理Ｄを終了する。
【００７７】
ステップＳ９０５以降のステップＳ９０６〜ステップＳ９１８及びステップＳ９２１、ステップＳ９２２の処理は、図２のステップＳ２０３〜ステップＳ２１７の処理と同じであるので、説明を省略する。
ＤＭＡコントローラ４０４は、ステップＳ９１２、ステップＳ９１８、ステップＳ９２１の何れかの処理の後、ＤＭＡ実行マスターレジスタ４０４１に格納されているマスターレジスタの識別子をクリアし（ステップＳ９１９）、ランク設定許可フラグを「許可」に設定する（ステップＳ９２０）。
【００７８】
（実施形態５）
＜構成＞
図１２は本発明の実施形態５に係る機密情報処理装置５００の構成を示す機能ブロック図である。
【００７９】
機密情報処理装置５００は、データ・アドレスバス１０１、ランクバス１０２、マスターデバイス１０３、ＤＭＡコントローラ５０４、マスターデバイス１０５、汎用記憶装置１０６、暗号処理装置１０７、機密情報記憶装置１０８の各デバイスから構成される。
図１２の機能ブロック図において、実施形態１の機密情報処理装置１００と同一のデバイスについては、同一の番号を付している。以下、機密情報処理装置１００と同一のデバイスについては、実施形態１において説明済みであるので説明を省略し、相違するデバイスについて説明する。
【００８０】
なお、機密情報処理装置５００は、外部インタフェースを介して外部装置と接続されることとしてもよい。
ＤＭＡコントローラ５０４は、ＤＭＡ設定レジスタ１０４１、ランク設定レジスタ１０４２、ランク下限レジスタ１０４３、認証処理部５０４１を有する。
認証処理部５０４１は、マスターデバイスからの認証要求に応じて認証処理を行う。ここでの認証処理は、例えば、チャレンジレスポンス認証方式により行うことができる。
【００８１】
ＤＭＡコントローラ５０４は、マスターデバイス１０３、１０５の何れかのマスターデバイスからの認証要求に応じて以下に説明するデータ転送制御処理Ｅを行う。
１．前処理
ＤＭＡコントローラ５０４は、マスターデバイスから認証要求を受取ると、認証処理を実行し、認証できた場合には、マスターデバイスからのデータ転送要求に応じて、以後ＤＭＡコントローラ１０４の行う前処理と同様の前処理を行い、認証できなかった場合には、ランク設定レジスタ１０４２のＡＲをランク下限レジスタ１０４３に格納されている下限ＡＲに設定した後、マスターデバイスからのデータ転送要求に応じ、当該マスターデバイスからデータ・アドレスバス１０１を獲得する。
２．転送処理
ＤＭＡコントローラ５０４は、認証できた場合には、データ転送要求の指定する転送元及び転送先のスレーブデバイスに受取ったＡＲを送信してアクセスの許可を要求し、認証できなかった場合には、ランク下限レジスタ１０４３に格納されている下限ＡＲをデータ転送要求の指定する転送元及び転送先のスレーブデバイスに送信してアクセスの許可を要求し、以後ＤＭＡ１０４の行う転送処理と同様の転送処理を行う。
３．転送中断処理
ＤＭＡコントローラ５０４は、ＤＭＡコントローラ１０４の行う転送処理と同様の処理を行う。
＜動作＞
次に、機密情報処理装置５００の行うデータ転送処理Ｅの動作について説明する。
【００８２】
図１３は、上記動作を示すフローチャートである。以下、図１３を参照して上記動作について説明する。
ＤＭＡコントローラ５０４は、マスターデバイスから認証要求を受取ると（ステップＳ１１０１）、認証処理を実行し（ステップＳ１１０２）、認証できた場合には（ステップＳ１１０３：Ｙ）、マスターデバイスからデータ転送要求を受取り（ステップＳ１１０４）、当該データ転送要求に含まれるデータ転送条件をＤＭＡ設定レジスタ１０４１に格納することにより、データ転送条件をＤＭＡ設定レジスタ１０４１に設定し（ステップＳ１１０５）、データ転送要求をしたマスターデバイスに当該マスターデバイスのＡＲの送信を指示し、マスターデバイスからＡＲを受取ると（ステップＳ１１０６）、受取ったＡＲをランク設定レジスタ１０４２に格納し（ステップＳ１１０７）、データ転送要求をしたマスターデバイスにデータ・アドレスバス１０１の解放を要求し、マスターデバイスからデータ・アドレスバス１０１を獲得し（ステップＳ１１０８）、ランク設定レジスタ１０４２に格納しているＡＲをデータ転送条件において指定される転送元及び転送先のスレーブデバイスに送信してアクセスの許可を要求する（ステップＳ１１０９）。
【００８３】
ステップＳ１１０３において、認証できなかった場合には（ステップＳ１１０３：Ｎ）、ランク設定レジスタ１０４２にランク下限レジスタ１０４３に格納されている下限ＡＲを格納し（ステップＳ１１１０）、マスターデバイスからのデータ転送要求を受取り（ステップＳ１１１１）、当該データ転送要求に含まれるデータ転送条件をＤＭＡ設定レジスタ１０４１に格納することにより、データ転送条件をＤＭＡ設定レジスタ１０４１に設定し（ステップＳ１１１２）、ステップＳ１１０８の処理に移行する。
【００８４】
ステップＳ１１０９の処理以降のステップＳ１１１４〜ステップＳ１１２４の処理は、図２のステップＳ２０７〜ステップＳ２１７の処理と同じであるので説明を省略する。
（実施形態６）
＜構成＞
図１４は本発明の実施形態６に係る機密情報処理装置６００の構成を示す機能ブロック図である。
【００８５】
機密情報処理装置６００は、データ・アドレスバス１０１、ランクバス１０２、マスターデバイス１０３、ＤＭＡコントローラ６０４、マスターデバイス１０５、汎用記憶装置１０６、暗号処理装置１０７、機密情報記憶装置１０８の各デバイスから構成される。
図１４の機能ブロック図において、実施形態１の機密情報処理装置１００と同一のデバイスについては、同一の番号を付している。以下、機密情報処理装置１００と同一のデバイスについては、実施形態１において説明済みであるので説明を省略し、相違するデバイスについて説明する。
【００８６】
なお、機密情報処理装置６００は、外部インタフェースを介して外部装置と接続されることとしてもよい。
ＤＭＡコントローラ６０４は、ＤＭＡ設定レジスタ１０４１、ランク設定レジスタ６０４２、認証処理部５０４１、拒否マスターリストレジスタ６０４１を有する。
拒否マスターリストレジスタ６０４１は、データ転送要求を拒否すべきマスターデバイスの識別子を格納している。
【００８７】
ランク設定レジスタ６０４２は、予め定められたＡＲを格納している。
ＤＭＡコントローラ６０４は、マスターデバイス１０３、１０５の何れかのマスターデバイスからの認証要求に応じて以下に説明するデータ転送制御処理Ｆを行う。
１．前処理
ＤＭＡコントローラ６０４は、マスターデバイスから認証要求を受取り、認証要求元の識別子が拒否マスターリストレジスタに格納されている場合には、データ転送制御処理Ｆを終了し、格納されていない場合には、認証処理を実行し、認証できた場合には、マスターデバイスからのデータ転送要求を受取り、データ転送要求に含まれるデータ転送条件をＤＭＡ設定レジスタ１０４１に格納することにより、データ転送条件をＤＭＡ設定レジスタ１０４１に設定し、当該マスターデバイスからデータ・アドレスバス１０１を獲得し、認証できなかった場合には、認証要求元のマスターデバイスの識別子を拒否マスターリストレジスタに格納し、データ転送制御処理Ｆを終了する。
２．転送処理
ＤＭＡコントローラ６０４は、ＤＭＡコントローラ１０４の行う転送処理と同様の処理を行う。
３．転送中断処理
ランク設定レジスタ１０４２のＡＲを下限ＡＲに設定する処理をしないことを除いて、ＤＭＡコントローラ１０４の行う転送中断処理と同様の処理を行う。
＜動作＞
次に、機密情報処理装置６００の行うデータ転送処理Ｆの動作について説明する。
【００８８】
図１５は、上記動作を示すフローチャートである。以下、図１５を参照して上記動作について説明する。
ＤＭＡコントローラ６０４は、マスターデバイスから認証要求を受取ると（ステップＳ１３０１）、認証要求元の識別子が拒否マスターリストレジスタに格納されているか否かを判定し（ステップＳ１３０２）、格納されている場合には（ステップＳ１３０２：Ｙ）、データ転送制御処理Ｆを終了し、格納されていない場合には（ステップＳ１３０２：Ｎ）、認証処理を実行し（ステップＳ１３０３）、認証できた場合には（ステップＳ１３０４：Ｙ）、マスターデバイスからのデータ転送要求を受取り（ステップＳ１３０５）、データ転送要求に含まれるデータ転送条件をＤＭＡ設定レジスタ１０４１に格納することにより、データ転送条件をＤＭＡ設定レジスタ１０４１に設定し（ステップＳ１３０６）、当該マスターデバイスからデータ・アドレスバス１０１を獲得し（ステップＳ１３０７）、ランク設定レジスタ６０４２に格納しているＡＲをデータ転送要求の指定する転送元及び転送先のスレーブデバイスに送信してアクセスの許可を要求する（ステップＳ１３０８）。
【００８９】
ステップＳ１３０４において、認証できなかった場合には（ステップＳ１３０４：Ｎ）、ＤＭＡコントローラ６０４は、認証要求元のマスターデバイスの識別子を拒否マスターリストレジスタに格納する（ステップＳ１３０９）。
ステップＳ１３０８の処理以降のステップＳ１３１０〜ステップＳ１３１８の処理は、図２のステップＳ２０７〜ステップＳ２１４、ステップＳ２１６、ステップＳ２１７の処理と同じであるので説明を省略する。
（実施形態７）
＜構成＞
図１６は本発明の実施形態７に係る機密情報処理装置７００の構成を示す機能ブロック図である。
【００９０】
機密情報処理装置７００は、データ・アドレスバス１０１、ランクバス１０２、マスターデバイス１０３、ＤＭＡコントローラ７０４、マスターデバイス１０５、汎用記憶装置１０６、暗号処理装置１０７、機密情報記憶装置１０８の各デバイスから構成される。
図１６の機能ブロック図において、実施形態１の機密情報処理装置１００と同一のデバイスについては、同一の番号を付している。以下、機密情報処理装置１００と同一のデバイスについては、実施形態１において説明済みであるので説明を省略し、相違するデバイスについて説明する。
【００９１】
なお、機密情報処理装置７００は、外部インタフェースを介して外部装置と接続されることとしてもよい。
ＤＭＡコントローラ７０４は、ＤＭＡ設定レジスタ１０４１、ランク設定レジスタ１０４２、ランク下限レジスタ１０４３、ランク上限レジスタ７０４１、比較部７０４２を有する。
【００９２】
ランク上限レジスタ７０４１は、予め定められた上限ＡＲを予め格納している。
ここで、「上限ＡＲ」とは、ＡＲが不正操作によって不当に高く設定されたマスターデバイスからの不正アクセスを防止するために、機密情報処理装置７００の管理者側によって設定される上限のＡＲであって、例えば、機密情報処理装置７００の出荷時において、各デバイスに設定されているＡＲのうち、最大のＡＲを上限ＡＲとして設定することができる。
【００９３】
比較部７０４２は、後述するデータ転送制御処理Ｇにおいて、マスターデバイスから受取ったＡＲとランク設定レジスタ１０４２に格納されているＡＲとの大小比較と、マスターデバイスから受取ったＡＲとランク上限レジスタ７０４１に格納されている上限ＡＲとの大小比較と後述するランク設定解除処理の要求元のマスターデバイスのＡＲとランク設定レジスタ１０４２に格納しているＡＲとの大小比較をする。
ＤＭＡコントローラ７０４は、以下に説明するデータ転送制御処理Ｇを行う。
１．前処理
ＤＭＡコントローラ７０４は、マスターデバイスから当該マスターデバイスのＡＲを受取り、受取ったＡＲとランク設定レジスタ１０４２に格納されているＡＲとの大小比較を行い、大きくない場合には、データ転送制御処理Ｇを終了し、大きい場合に、さらに、受取ったＡＲとランク上限レジスタ７０４１に格納されているＡＲとの大小比較を行い、受取ったＡＲが上限ＡＲよりも大きい場合には、上限レジスタをランク設定レジスタ１０４２に格納し、大きくない場合には、受取ったＡＲをランク設定レジスタ１０４２に格納し、マスターデバイスからのデータ転送要求を受取り、データ転送要求に含まれるデータ転送条件をＤＭＡ設定レジスタ１０４１に格納することにより、データ転送条件をＤＭＡ設定レジスタ１０４１に設定し、当該マスターデバイスからデータ・アドレスバス１０１を獲得する。
【００９４】
なお、ランク設定レジスタ１０４２には、直前の前処理において格納されたマスターデバイスのＡＲ又は上限ＡＲが格納されているものとする。又、直前の前処理が行われていない場合には、下限ＡＲが格納されているものとする。
２．転送処理
ＤＭＡコントローラ７０４は、データ要求されたデータの転送完了後に後述するランク設定解除処理を行う点を除いて、ＤＭＡコントローラ１０４の行う転送処理と同様の処理を行う。
３．転送中断処理
ランク設定レジスタ１０４２のＡＲを下限ＡＲに設定する処理をしないことを除いて、ＤＭＡコントローラ１０４の行う転送中断処理と同様の処理を行う。
＜動作＞
次に、機密情報処理装置７００の行うデータ転送処理Ｇの動作について説明する。
【００９５】
図１７は、上記動作を示すフローチャートである。以下、図１７を参照して上記動作について説明する。
ＤＭＡコントローラ７０４は、マスターデバイスから当該マスターデバイスのＡＲを受取り（ステップＳ１５０１）、受取ったＡＲがランク設定レジスタ１０４２に格納しているＡＲより小さくないか否かを判定し（ステップＳ１５０２）、小さい場合には（ステップＳ１５０２：Ｎ）、データ転送処理Ｇを終了し、小さくない場合には（ステップＳ１５０２：Ｙ）、さらに、受取ったＡＲがランク上限レジスタ７０４１に格納している上限ＡＲより大きいか否かを判定し（ステップＳ１５０３）、受取ったＡＲが上限ＡＲよりも大きい場合には（ステップＳ１５０３：Ｙ）、上限ＡＲをランク設定レジスタ１０４２に格納し（ステップＳ１５０８）、大きくない場合には（ステップＳ１５０３：Ｎ）、受取ったＡＲをランク設定レジスタ１０４２に格納し（ステップＳ１５０４）、マスターデバイスからのデータ転送要求を受取り（ステップＳ１５０５）、データ転送要求に含まれるデータ転送条件をＤＭＡ設定レジスタ１０４１に格納することにより、データ転送条件をＤＭＡ設定レジスタ１０４１に設定し（ステップＳ１５０６）、当該マスターデバイスからデータ・アドレスバス１０１を獲得し（ステップＳ１５０７）、ランク設定レジスタ１０４２に格納しているＡＲをデータ転送要求の指定する転送元及び転送先のスレーブデバイスに送信してアクセスの許可を要求する（ステップＳ１５０９）。
【００９６】
ステップＳ１５０９の処理以降のステップＳ１５１０〜ステップＳ１５１６の処理は、図２のステップＳ２０７〜ステップＳ２１３の処理と、ステップＳ１５１８、ステップＳ１５１９の処理は、ステップＳ２１６、ステップＳ２１７の処理と同じであるので説明を省略する。
ＤＭＡコントローラ７０４は、ステップＳ１５１６の処理の後、ランク設定レジスタ１０４２にランク上限レジスタ７０４１に格納している上限ＡＲを格納する（ステップＳ１５１７）。
【００９７】
又、ＤＭＡコントローラ７０４は、ステップＳ１５１８において、データ転送が完了している場合には（ステップＳ１５１８：Ｙ）、ランク設定解除処理を行う（ステップＳ１５２０）。
図１８は、ランク設定解除処理の動作を示すフローチャートである。
ＤＭＡコントローラ７０４は、マスターデバイスからランク設定レジスタ１０４２に設定されているＡＲのランク設定解除要求が有ると（ステップＳ１５３０：Ｙ）、要求元のマスターデバイスのＡＲがランク設定レジスタ１０４２に格納しているＡＲより大きいか否かを判定し（ステップＳ１５３１）、大きい場合に（ステップＳ１５３１：Ｙ）、ランク設定レジスタ１０４２に格納しているＡＲをランク下限レジスタに格納している下限ＡＲに設定する（ステップＳ１５３２）。
（実施形態８）
＜構成＞
図１９は本発明の実施形態７に係る機密情報処理装置８００の構成を示す機能ブロック図である。
【００９８】
機密情報処理装置８００は、データ・アドレスバス１０１、ランクバス１０２、マスターデバイス１０３、ＤＭＡコントローラ８０４、マスターデバイス１０５、汎用記憶装置１０６、暗号処理装置１０７、機密情報記憶装置１０８の各デバイスから構成される。
図１９の機能ブロック図において、実施形態１の機密情報処理装置１００と同一のデバイスについては、同一の番号を付している。以下、機密情報処理装置１００と同一のデバイスについては、実施形態１において説明済みであるので説明を省略し、相違するデバイスについて説明する。
【００９９】
なお、機密情報処理装置８００は、外部インタフェースを介して外部装置と接続されることとしてもよい。
ＤＭＡコントローラ８０４は、ＤＭＡ設定レジスタ１０４１を有し、マスターデバイス１０３、１０５からのデータ転送要求に応じて、以下に説明するデータ転送制御処理Ｈを行う。
１．前処理
ＤＭＡコントローラ８０４は、データ転送要求に含まれるデータ転送条件をＤＭＡ設定レジスタ１０４１に格納することにより、データ転送条件をＤＭＡ設定レジスタ１０４１に設定し、データ転送要求をしたマスターデバイスからデータ・アドレスバス１０１を獲得し、当該マスターデバイスにＡＲのデータ転送条件の指定する転送元及び転送先のスレーブデバイスへの送信を要求する。
２．転送処理
ＤＭＡコントローラ８０４は、ＤＭＡコントローラ１０４の行う転送処理と同様の処理を行う。
３．転送中断処理
ランク設定レジスタ１０４２のＡＲを下限ＡＲに設定する処理をしないことを除いて、ＤＭＡコントローラ８０４の行う転送中断処理と同様の処理を行う。
＜動作＞
次に、機密情報処理装置８００の行うデータ転送処理Ｈの動作について説明する。
【０１００】
図２０は、上記動作を示すフローチャートである。以下、図２０を参照して上記動作について説明する。
ＤＭＡコントローラ８０４は、マスターデバイス１０３、１０５の何れかのマスターデバイスからデータ転送要求を受取ると（ステップＳ１７０１）、当該データ転送要求に含まれるデータ転送条件をＤＭＡ設定レジスタ１０４１に格納することにより、データ転送条件をＤＭＡ設定レジスタ１０４１に設定し（ステップＳ１７０２）、データ転送要求をしたマスターデバイスにデータ・アドレスバス１０１の解放を要求し、マスターデバイスからデータ・アドレスバス１０１を獲得し（ステップＳ１７０３）、データ転送要求をしたマスターデバイスに当該マスターデバイスのＡＲの送信を要求し（ステップＳ１７０４）、マスターデバイスにデータ転送要求の指定する転送元及び転送先のスレーブデバイスにＡＲを送信させ、アクセスの許可を要求させる（ステップＳ１７０５）。
【０１０１】
ステップＳ１７０６以降のステップＳ１７０６〜ステップＳ１７１５の処理は、図２のステップＳ２０７〜ステップＳ２１４、ステップＳ２１６、ステップＳ２１７の処理と同じであるので、説明を省略する。
＜補足＞
以上、本発明の実施形態１〜８について説明したが、本発明はこれら実施形態に限られないことは勿論である。
（１）例えば、実施形態２における図５のステップＳ５０３において、判定が否定的である場合に、スレーブ間ランクテーブルにおいて、ＡＲの示すランクが最大のＡＲを特定し（ステップＳ１８０１）、ステップＳ５０６の処理に移行することとしてもよい。
【０１０２】
なお、最大のＡＲとして、予め設定されたＡＲを用いることとしてもよい。
上記の場合において、ＤＭＡコントローラ２０４の行うデータ転送制御処理Ｂ１の動作を図２１及び図２２に示す。
（２）又、実施形態２において、ランク設定レジスタ１０４２に予め定められたＡＲ（例えば、各スレーブデバイスのＡＲより小さくないＡＲ）を格納しておき、図５のステップＳ５１０の処理を行うことなく、ステップＳ５１３の処理の代わりに、格納しているＡＲをデータ転送要求の指定する転送元及び転送先のスレーブデバイスに送信してアクセスの許可を要求する（ステップＳ１９０１）こととしてもよい。
【０１０３】
上記の場合において、ＤＭＡコントローラ２０４の行うデータ転送制御処理Ｂ２の動作を図２３及び図２４に示す。
（３）又、実施形態２におけるスレーブ間ランクテーブルを、機密情報処理装置２００の各スレーブデバイスの組毎に当該組のスレーブデバイスのＡＲの大きい方のＡＲを対応付けたテーブルとし、図５のステップＳ５０７とステップＳ５０８の処理の代わりに、データ転送要求をしたマスターデバイスから受取ったＡＲが、上記テーブルにおいて、当該データ転送要求において指定されるスレーブデバイスの組に対応するＡＲよりも小さくないか否かを判定する処理を行い、小さくない場合にステップＳ５１０以降の処理を行うこととしてもよい。
【０１０４】
これにより、マスターデバイスからのデータ転送の許否の判定を実施形態２の場合に比べ、少ない処理で行うことができるので、ＤＭＡコントローラ２０４において、より簡易にデータ転送の許否の判定をすることができる。
（４）又、実施形態３において、ランク設定レジスタ１０４２に、実施形態７において設定された上限ＡＲを格納しておき、図８のステップ７１０を行うことなく、ステップＳ７１６の処理の代わりに、中断要求元のＡＲがランク設定レジスタ１０４２に格納している上限ＡＲより小さくないか否かを判定する（ステップＳ２００１）こととしてもよい。
【０１０５】
上記の場合において、ＤＭＡコントローラ３０４の行うデータ転送制御処理Ｃ１の動作を図２５に示す。
（５）又、実施形態５において、ランク設定レジスタ１０４２に予め定められたＡＲ（例えば、各スレーブデバイスのＡＲより小さくないＡＲ）を格納しておき、図１３のステップＳ１１０６、ステップＳ１１０７を行うことなく、ステップＳ１１０９の処理を行う代わりに、格納しているＡＲをデータ転送要求の指定する転送元及び転送先のスレーブデバイスに送信してアクセスの許可を要求する（ステップＳ２１０１）こととし、Ｓ１１０３の判定が否定的である場合（ステップＳ１１０３：Ｎ）、ＤＭＡコントローラ５０４は、データ転送処理Ｅ１を終了することとしてもよい。
【０１０６】
上記の場合において、情報機密処理装置５００の行うデータ転送処理Ｅ１の動作を図２６に示す。
（６）又、実施形態７における図１７のステップＳ１５１４の判定が否定的である場合に（ステップＳ１５１４：Ｎ）、ＤＭＡコントローラ７０４は、中断拒否する（図１７、ステップＳ１５１９）代わりに、データ転送を中断し（ステップＳ１５１６）、ランク設定レジスタ１０４２にランク上限レジスタ７０４１に格納している上限ＡＲを格納する（ステップＳ１５１７）こととし、さらに、ステップＳ１５１８において、データ転送が完了した場合に（ステップＳ１５１８：Ｙ）、ステップＳ１５２０の処理を行う代わりに、ＤＭＡ設定レジスタ１０４１に設定されているデータ転送条件を初期化してクリアし（ステップＳ２２０１）、ランク設定レジスタ１０４２のＡＲをランク下限レジスタに格納している下限ＡＲに設定する（ステップＳ２２０２）こととしてもよい。
【０１０７】
上記の場合において、情報機密処理装置７００の行うデータ転送処理Ｇ１の動作を図２７に示す。
（７）実施形態１〜８において、ＤＭＡコントローラが行うデータ転送制御処理は、１つのスレーブデバイス内におけるデータ転送制御処理であってもよい。又、スレーブデバイスの数は、２つ以上であってもよい。
（８）実施形態１〜８において、マスターデバイスの数は、２つに限らず、１つであってもよいし、２つ以上であってもよい。
（９）実施形態１〜８において、ＤＭＡコントローラのチャネルは、１つであってもよいし、複数であってもよい。又、ＤＭＡ設定レジスタ、ランク設定レジスタは、ＤＭＡコントローラのチャネルに相当する数だけ設けることとしてもよいし、一部をチャネル間で共有することとしてもよい。
（１０）実施形態１〜８において、機密情報処理装置を構成する各デバイスの保持するＡＲは、不変であってもよいし、可変であってもよい。
（１１）実施形態１〜８において、機密情報処理装置を構成する各デバイスは、個別のＬＳＩ（半導体集積回路）であってもよいし、任意のデバイス及びバスを１つのＬＳＩとしてもよい。
（１２）実施形態１〜８において、ＡＲを各デバイス間で送信するのにランクバス１０２を用いたが、ＡＲの送信は、データ・アドレスバスで行うこととしてもよい。
【産業上の利用可能性】
【０１０８】
本発明は、機密情報処理装置において、その機能を実現するためのプログラムを、機密情報を漏洩することなく、更新するための機密制御技術として利用できる。
【図面の簡単な説明】
【０１０９】
【図１】機密情報処理装置１００の構成を示す機能ブロック図である。
【図２】機密情報処理装置１００の行うデータ転送処理Ａの動作を示すフローチャートである。
【図３】機密情報処理装置２００の構成を示す機能ブロック図である。
【図４】スレーブ間ランクテーブルの具体例を示す。
【図５】ＤＭＡコントローラ２０４の行うデータ転送制御処理Ｂの動作を示すフローチャートの一部である。
【図６】ＤＭＡコントローラ２０４の行うデータ転送制御処理Ｂの動作を示すフローチャートの一部である。
【図７】機密情報処理装置３００の構成を示す機能ブロック図である。
【図８】ＤＭＡコントローラ３０４の行うデータ転送制御処理Ｃの動作を示すフローチャートである。
【図９】機密情報処理装置４００の構成を示す機能ブロック図である。
【図１０】機密情報処理装置４００の行うデータ転送処理Ｄの動作を示すフローチャートの一部である。
【図１１】機密情報処理装置４００の行うデータ転送処理Ｄの動作を示すフローチャートの一部である。
【図１２】機密情報処理装置５００の構成を示す機能ブロック図である。
【図１３】機密情報処理装置５００の行うデータ転送処理Ｅの動作を示すフローチャートである。
【図１４】機密情報処理装置６００の構成を示す機能ブロック図である。
【図１５】機密情報処理装置６００の行うデータ転送処理Ｆの動作を示すフローチャートである。
【図１６】機密情報処理装置７００の構成を示す機能ブロック図である。
【図１７】機密情報処理装置７００の行うデータ転送処理Ｇの動作を示すフローチャートである。
【図１８】ランク設定解除処理の動作を示すフローチャートである。
【図１９】機密情報処理装置８００の構成を示す機能ブロック図である。
【図２０】機密情報処理装置８００の行うデータ転送処理Ｈの動作を示すフローチャートである。
【図２１】ＤＭＡコントローラ２０４の行うデータ転送制御処理Ｂの変形例（データ転送制御処理Ｂ１）の動作を示すフローチャートの一部である。
【図２２】ＤＭＡコントローラ２０４の行うデータ転送制御処理Ｂの変形例（データ転送制御処理Ｂ１）の動作を示すフローチャートの一部である。
【図２３】ＤＭＡコントローラ２０４の行うデータ転送制御処理Ｂの変形例（データ転送制御処理Ｂ２）の動作を示すフローチャートの一部である。
【図２４】ＤＭＡコントローラ２０４の行うデータ転送制御処理Ｂの変形例（データ転送制御処理Ｂ２）の動作を示すフローチャートの一部である。
【図２５】ＤＭＡコントローラ３０４の行うデータ転送制御処理Ｂの変形例（データ転送制御処理Ｃ１）の動作を示すフローチャートの一部である。
【図２６】機密情報処理装置５００の行うデータ転送処理Ｅの変形例（データ転送処理Ｅ１）の動作を示すフローチャートである。
【図２７】機密情報処理装置７００の行うデータ転送処理Ｇの変形例（データ転送処理Ｇ１）の動作を示すフローチャートである。
【符号の説明】
【０１１０】
１００、２００、３００、４００、５００、６００、７００、８００  機密情報処理装置
１０１  データ・アドレスバス
１０２  ランクバス
１０３  マスターデバイス
１０４、２０４、３０４、５０４、６０４、７０４、８０４  ＤＭＡコントローラ
１０５  マスターデバイス
１０６  汎用記憶装置
１０７  暗号処理装置
１０８  機密情報記憶装置
１０３１、１０５１、１０６１、１０７１、１０８１  ランクレジスタ
１０４１  ＤＭＡ設定レジスタ
１０４２、６０４２  ランク設定レジスタ
１０４３  ランク下限レジスタ
２０４１  スレーブ間ランクテーブル格納部
２０４２、３０４２、７０４２  比較部
３０４１  スレーブランクレジスタ
４０４１  ＤＭＡ実行マスターレジスタ
４０４２  ランク設定許可フラグレジスタ
５０４１  認証処理部
６０４１  拒否マスターリストレジスタ
７０４１  ランク上限レジスタ
【図１】
2006235982.tif 000003
【図２】
2006235982.tif 000004
【図３】
2006235982.tif 000005
【図４】
2006235982.tif 000006
【図５】
2006235982.tif 000007
【図６】
2006235982.tif 000008
【図７】
2006235982.tif 000009
【図８】
2006235982.tif 000010
【図９】
2006235982.tif 000011
【図１０】
2006235982.tif 000012
【図１１】
2006235982.tif 000013
【図１２】
2006235982.tif 000014
【図１３】
2006235982.tif 000015
【図１４】
2006235982.tif 000016
【図１５】
2006235982.tif 000017
【図１６】
2006235982.tif 000018
【図１７】
2006235982.tif 000019
【図１８】
2006235982.tif 000020
【図１９】
2006235982.tif 000021
【図２０】
2006235982.tif 000022
【図２１】
2006235982.tif 000023
【図２２】
2006235982.tif 000024
【図２３】
2006235982.tif 000025
【図２４】
2006235982.tif 000026
【図２５】
2006235982.tif 000027
【図２６】
2006235982.tif 000028
【図２７】
2006235982.tif 000029