[go: up one dir, main page]

JP4668645B2 - Dmaコントローラ及びデータ転送制御方法 - Google Patents

Dmaコントローラ及びデータ転送制御方法 Download PDF

Info

Publication number
JP4668645B2
JP4668645B2 JP2005049398A JP2005049398A JP4668645B2 JP 4668645 B2 JP4668645 B2 JP 4668645B2 JP 2005049398 A JP2005049398 A JP 2005049398A JP 2005049398 A JP2005049398 A JP 2005049398A JP 4668645 B2 JP4668645 B2 JP 4668645B2
Authority
JP
Japan
Prior art keywords
transfer
data transfer
rank
access
master device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005049398A
Other languages
English (en)
Other versions
JP2006235982A (ja
Inventor
唯之 鳥崎
祐輔 根本
睦 藤原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2005049398A priority Critical patent/JP4668645B2/ja
Priority to US11/359,866 priority patent/US7457891B2/en
Publication of JP2006235982A publication Critical patent/JP2006235982A/ja
Application granted granted Critical
Publication of JP4668645B2 publication Critical patent/JP4668645B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Storage Device Security (AREA)

Description

本発明は、機密情報処理装置において、DMA(Direct Memory Access)コントローラによるデバイス間のデータ転送を行う場合におけるセキュリティを確保するためのデータ転送制御技術に関する。
DMAコントローラは、CPUの代わりにデバイス間のデータ転送を行う装置であり、
これにより、CPUは、処理負荷の大きいデータ転送処理をDMAコントローラに依頼して、データ転送処理がDMAコントローラによって行われている間、他の処理を実行することができる。
DMAコントローラによるデータ転送は、CPUから入力された転送元と転送先のアドレスを参照して行われるので、入力されるアドレス信号にノイズ等が不正に混入されると、DMAコントローラによってアドレスが誤って認識されて本来転送されるべきでないアドレスにデータが転送されて、重要なデータが上書きされて消失したり、破壊されてしまったりする恐れがある。
このようなDMAコントローラによる不正転送を防止するための先行技術として、機密情報処理装置において、デバイス間でのデータ転送処理用レジスタに蓄えられたアドレスに関するデータに従って、一方のアドレスのストア領域に格納されたデータを順次読出して、他方のアドレスのストア領域に転送するDMAコントローラであって、デバイス毎に個別的に割当てられた有効なアドレス範囲を予め格納するテーブルと、該データ転送処理用レジスタに蓄えられたデータが示すアドレス範囲が該テーブルに格納された有効なアドレス範囲を逸脱したと判定すると、転送処理を中断する監視部とを含むことを特徴とするDMAコントローラが特許文献1に開示されている。
これにより、ノイズ等でアドレスに関するデータに誤りが発生すると、転送処理が中止されるので、誤ってメモリが割当てられていないアドレスからデータを読んだり、他の目的に割当てられているアドレスにデータを書込んだり、全く異なるサイズのデータが転送されてしまうような不具合を未然に防止することができる。
特開2001−297054号公報
しかしながら上記従来技術では、デバイスによって機密性が異なる場合、例えば、特定の機密性の高いデバイスについては、特定のCPUに限ってアクセスを容認しているような機密情報処理装置においては、当該デバイスについて割当てられたアドレス範囲を逸脱しない限り、特定のCPU以外のCPUからのデータ転送依頼であっても、DMAコントローラによって、依頼元の如何にかかわらず当該デバイス間のデータ転送が行われてしまうという不具合が生じてしまう。
本発明は、上記の問題点に鑑み、デバイスによって機密性が異なるような機密情報処理装置においても、機密情報の漏洩を有効に防止しつつ、他のデバイスからのデータ転送依頼に応じてデータ転送を行うことが可能なDMAコントローラを提供することを目的とする。
上記課題を解決するために、本発明は、マスターデバイスとデータ格納領域を有する複数のスレーブデバイスにバスで接続され、マスターデバイスから送信される転送先及び転送元のデータ格納領域を指定する転送条件に基づいてデータ転送を行わせるDMAコントローラであって、前記マスターデバイスと前記スレーブデバイスは、データ転送可否の判定基準となるアクセス判定ランクを保持し、前記DMAコントローラは、前記マスターデバイスのアクセス判定ランクと、前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクとの比較結果に基づくデータ転送可否判定結果が「転送可」である場合に、前記データ転送を行わせ、前記データ転送可否判定結果が「転送不可」である場合に前記データ転送を抑止させるデータ転送制御手段を備える。
又、本発明は、前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクと当該スレーブデバイスが保持しているアクセス判定ランクとの比較結果に基づいてアクセス要求元からのアクセスの許否を判定し、前記データ転送制御手段は、前記マスターデバイスのアクセス判定ランクを前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに送信し、アクセスの許可を要求する要求手段と、前記スレーブデバイスによるアクセス許否判定結果に基づいて前記データ転送の可否判定を行う転送可否判定手段とを有することとしてもよい。
又、本発明は、マスターデバイスとデータ格納領域を有する複数のスレーブデバイスにバスで接続され、マスターデバイスから送信される転送先及び転送元のスレーブデバイスのデータ格納領域を指定する転送条件に基づいて、転送元のデータ格納領域から転送先のデータ格納領域へのデータ転送を行わせるDMAコントローラに用いるデータ転送制御方法であって、前記マスターデバイスと前記スレーブデバイスは、前記バスに接続されている他のデバイスからのアクセスを、前記スレーブデバイスが許可するか否かの判定基準となるアクセス判定ランクを保持し、前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクと当該スレーブデバイスが保持しているアクセス判定ランクとの比較結果に基づいてアクセス要求元からのアクセスの許否を判定し、
前記DMAコントローラは、条件記憶手段を備え、前記データ転送方法は、前記マスターデバイスから送信された前記転送条件を前記条件記憶手段に格納する格納ステップと、
前記転送条件を送信した前記マスターデバイスに、前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに当該マスターデバイスが保持しているアクセス判定ランクを送信させて、アクセスの許可を要求させる送信要求ステップと、前記スレーブデバイスによってアクセスを許可された場合に、前記データ転送を行わせるデータ転送制御ステップとを含むこととしてもよい。
又、本発明は、マスターデバイスとデータ格納領域を有する複数のスレーブデバイスにバスで接続され、マスターデバイスから送信される転送先及び転送元のデータ格納領域を指定する転送条件に基づいてデータ転送を行わせるDMAコントローラに用いるデータ転送制御方法であって、前記マスターデバイスと前記スレーブデバイスは、データ転送可否の判定基準となるアクセス判定ランクを保持し、前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクと当該スレーブデバイスが保持しているアクセス判定ランクとの比較結果に基づいてアクセス要求元からのアクセスの許否を判定し、前記データ転送制御方法は、前記マスターデバイスのアクセス判定ランクを前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに送信し、アクセスの許可を要求する要求ステップと、前記スレーブデバイスによるアクセス許否判定結果に基づいて前記データ転送の可否判定を行い、判定結果が「転送可」である場合に、前記データ転送を行わせ、判定結果が「転送不可」である場合に前記データ転送を抑止させるデータ転送制御ステップとを含むことの構成としてもよい。
本発明は、上記構成を備えることにより、データ転送を要求するマスターデバイスの保持するアクセス判定ランクとアクセスを要求されたスレーブデバイスのアクセス判定ランクとの比較結果に基づいてデータ転送許否が決定されるので、データ転送の要求先のマスターデバイスの如何にかかわらず、無制限にデータ転送が行われ、機密情報が流出するのを有効に防止することができる。
ここで、前記データ転送制御手段は、データ転送を行う対象となる転送元及び転送先のデータ格納領域の組と当該組の転送先及び転送元のデータ格納領域を有する前記スレーブデバイスのアクセス判定ランクの内、大きい方のアクセス判定ランクとの対応関係を示すスレーブデバイス間テーブルを記憶するテーブル記憶手段と、前記スレーブデバイス間テーブルにおいて、前記転送条件において指定された転送元及び転送先のデータ格納領域の属する組と対応付けられているアクセス判定ランクと前記マスターデバイスのアクセス判定ランクとの比較をする比較手段と前記比較結果に基づいて前記データ転送の可否判定を行う転送可否判定手段とを有することとしてもよい。
これにより、DMAコントローラにおいて、迅速にデータ転送可否の決定を行うことができ、データ転送制御処理全体を効率よく実行することができる。
ここで、前記データ転送制御手段は、前記転送条件において指定された転送元及び転送先のデータ格納領域の組が、前記スレーブデバイス間テーブルに含まれるか否かを判定するテーブル判定手段を有し、前記転送可否判定手段は、前記スレーブデバイス間テーブルに含まれない場合に、「転送不可」と判定することとしてもよい。
これにより、スレーブデバイス間テーブルに含まれないデータ格納領域を指定したデータ転送が抑止されるので、本来データ転送を許可されていないデータ格納領域を指定して不正なデータ転送を行う行為を有効に防止することができる。
ここで、前記データ転送制御手段は、前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスから、保持しているアクセス判定ランクを取得する取得手段と、前記マスターデバイスのアクセス判定ランクと、取得したアクセス判定ランクとを比較する比較手段と、前記比較結果に基づいて前記データ転送の可否判定を行う転送可否判定手段とを有することとしてもよい。
これにより、DMAコントローラにおいて、データ転送要求されたスレーブデバイスのアクセス判定ランクを直接取得し、データ転送を要求するマスターデバイスの保持するアクセス判定ランクと比較することにより、迅速にデータ転送可否の決定を行うことができ、スレーブデバイスのアクセス判定ランクが可変である場合においてもデータ転送制御処理全体を効率よく実行することができる。
ここで、前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクと当該スレーブデバイスが保持しているアクセス判定ランクとの比較結果に基づいてアクセス要求元からのアクセスの許否を判定し、前記データ転送制御手段は、前記マスターデバイスのアクセス判定ランクを前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに送信し、アクセスの許可を要求する要求手段を有し、前記転送可否判定手段は、前記スレーブデバイスによるアクセス許否判定結果と前記比較手段による比較結果とに基づいて前記データ転送の可否判定を行う
こととしてもよい。
これにより、スレーブデバイス側においてアクセスが許可された場合に限り、データ転送を行わせることができるので、不正なデータ転送行為を効果的に防止することができる。
ここで、前記DMAコントローラは、複数のマスターデバイスと前記バスで接続され、
前記データ転送制御手段は、自装置が前記マスターデバイスからの前記転送条件の送信に応じてデータ転送を許可できる状態にあるか否かを示すフラグを設定するためのフラグ値を格納しているフラグ格納手段と、データ転送が行われている間、前記フラグを「不許可」に設定し、データ転送が完了すると、前記フラグを「許可」に設定するフラグ設定手段とを有し、前記転送可否判定手段は、前記マスターデバイスからの前記転送条件の送信時に前記フラグが、「不許可」に設定されている場合に、「転送不可」と判定する
こととしてもよい。
これにより、マスターデバイスからの転送条件に基づくデータ転送が行われている間、他のマスターデバイスからの転送条件に基づくデータ転送は行われないので、データ転送中における、他のマスターデバイスによる不正なデータ転送処理の実行を防止することができる。
ここで、前記データ転送制御手段は、前記フラグが「許可」に設定されている場合に、前記バスに接続されているマスターデバイスから転送条件の送信があると、当該マスターデバイスの識別子を記憶するマスターデバイス記憶手段と、前記フラグが「不許可」に設定され、前記転送条件に基づくデータ転送が行われている間に、前記バスに接続されているマスターデバイスから新たな転送条件が送信された場合に、当該マスターデバイスの識別子がマスターデバイス記憶手段に記憶されているか否かを判定するマスターデバイス判定手段とを有し、前記転送可否判定手段は、前記マスターデバイスからの新たな転送条件の送信時に前記フラグが「不許可」に設定され、かつ、新たな転送条件を送信した前記マスターデバイスの識別子が前記マスターデバイス記憶手段に記憶されていない場合に、「転送不可」と判定することとしてもよい。
これにより、同じマスターデバイスである場合には、マスターデバイスからの転送条件に基づくデータ転送が行われている間に、当該マスターデバイスは、別のデータ転送をDMAコントローラに依頼し、複数のデータ転送を並行して実行することができるので、DMAコントローラを介したデータ転送の利用効率を高めることができる。
ここで、前記データ転送制御手段は、前記データ転送を行わせている間に、前記バスに接続されている前記マスターデバイス及び前記スレーブデバイスからのデータ転送中断要求を受取る中断要求受取手段と、データ転送中断要求の要求元がマスターデバイスであるか否かを判定する中断要求元判定手段と、前記要求元がマスターデバイスである場合に、前記要求元のアクセス判定ランクを受取り、前記要求元のアクセス判定ランクと前記受取手段が受取った前記マスターデバイスのアクセス判定ランクとの比較結果に基づいて、前記データ転送を中断させるか否かを判定する中断判定手段と中断させると判定された場合に、前記データ転送を中断させるデータ転送中断手段とを有することとしてもよい。
これにより、データ転送中断を要求元のデバイスの保持するアクセス判定ランクと実行中のデータ転送を要求したマスターデバイスの保持するアクセス判定ランクとの関係に基づいて中断可否が判定されるので、データ転送中にデータ転送が無制限に中断されるのを有効に防止することができる。
ここで、前記DMAコントローラは、予め設定された下限のアクセス判定ランクを記憶している下限ランク記憶手段と、前記転送条件を送信した前記マスターデバイスからアクセス判定ランクを受取り、記憶するランク記憶手段と前記転送条件を記憶する条件記憶手段とを備え、前記データ転送可否判定は、前記比較結果において、前記ランク記憶手段に記憶している前記マスターデバイスのアクセス判定ランクが前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクよりも小さくない場合に、「転送可」とされ、小さい場合に「転送不可」とされ、前記中断判定手段は、前記要求元のアクセス判定ランクが前記ランク記憶手段に記憶しているアクセス判定ランクよりも小さくない場合に、前記データ転送を中断させると判定し、前記データ転送制御手段は、中断させると判定した場合に、前記条件記憶手段に記憶している転送条件を削除する削除手段と、前記ランク記憶手段に記憶しているアクセス判定ランクに替えて下限のアクセス判定ランクを記憶させるランク切替手段とを有することとしてもよい。
これにより、中断時に設定されていた転送条件がクリアされ、転送先及び転送元のスレーブデバイスと比較対象となるアクセス判定ランクが下限に設定されるので、中断前に実行されていたデータ転送の条件が不正に利用されるのを有効に防止することができる。
ここで、前記データ転送可否判定は、前記比較結果において、前記マスターデバイスのアクセス判定ランクが前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクよりも小さくない場合に、「転送可」とされ、小さい場合に「転送不可」とされ、前記データ転送制御手段は、予め設定された上限のアクセス判定ランクを記憶している上限ランク記憶手段と、前記マスターデバイスのアクセス判定ランクと上限のアクセス判定ランクとを比較する比較手段とを有し、前記マスターデバイスのアクセス判定ランクの方が上限のアクセス判定ランクより大きくない場合に、前記データ転送可否判定結果が「転送可」である場合に、前記データ転送を行わせ、前記マスターデバイスのアクセス判定ランクの方が上限のアクセス判定ランクより大きい場合に、上限のアクセス判定ランクが、前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクより小さくない場合に、前記データ転送を行わせることとしてもよい。
これにより、データ転送要求をするマスターデバイスの保持しているアクセス判定ランクが不当に大きい場合には、そのアクセス判定ランクが上限のアクセス判定ランクに変更されるので、不当に大きいアクセス判定ランクを設定することによる不正なデータ転送行為の実行を防止することができる。
ここで、前記DMAコントローラは、複数のマスターデバイスと前記バスで接続され、
前記データ転送制御手段は、前記マスターデバイスのアクセス判定ランクの方が上限のアクセス判定ランクより大きくない場合に、前記マスターデバイスのアクセス判定ランクを記憶し、前記マスターデバイスのアクセス判定ランクの方が上限のアクセス判定ランクより大きい場合に、上限のアクセス判定ランクを記憶するランク記憶手段を有し、
前記データ転送制御手段は、前記バスに接続されている他のマスターデバイスのアクセス判定ランクが前記ランク記憶手段に記憶しているアクセス判定ランクよりも小さい場合に、前記バスに接続されている他のマスターデバイスから送信される転送条件に基づくデータ転送を抑止させることとしてもよい。
これにより、アクセス判定ランクの小さいマスターデバイスからのデータ転送要求に基づくデータ転送は行われなくなるので、DMAコントローラを介したデータ転送を行わせるマスターデバイスを制限することができる。
ここで、前記データ転送制御手段は、前記バスに接続されている前記マスターデバイス及び前記スレーブデバイスからのデータ転送中断要求を受取る中断要求受取手段と、
データ転送中断要求の要求元がマスターデバイスであるか否かを判定する中断要求元判定手段と、前記要求元がマスターデバイスである場合に、前記要求元のアクセス判定ランクを受取り、前記要求元のアクセス判定ランクと前記ランク記憶手段に記憶している前記マスターデバイスのアクセス判定ランクとの比較結果に基づいて、前記データ転送を中断させるか否かを判定する中断判定手段と、中断させると判定された場合に、前記データ転送を中断させるデータ転送中断手段とを有することとしてもよい。
これにより、データ転送中断を要求元のデバイスの保持するアクセス判定ランクと実行中のデータ転送を要求したマスターデバイスの保持するアクセス判定ランクとの関係に基づいて中断可否が判定されるので、データ転送中にデータ転送が無制限に中断されるのを有効に防止することができる。
ここで、前記DMAコントローラは、前記転送条件を記憶する条件記憶手段を備え、前記中断判定手段は、前記要求元のアクセス判定ランクが記憶しているアクセス判定ランクよりも小さくない場合に、前記データ転送を中断させると判定し、前記データ転送制御手段は、中断させると判定した場合に、前記条件記憶手段に記憶している転送条件を削除する削除手段と、前記ランク記憶手段に記憶しているアクセス判定ランクに替えて上限のアクセス判定ランクを記憶させるランク切替手段とを有することとしてもよい。
これにより、実行中のデータ転送を要求したマスターデバイスのアクセス判定ランクよりも小さくないマスターデバイスからのデータ転送中断要求に限り、データ転送が中断され、中断後は上限のアクセス判定ランクよりも小さいマスターデバイスからのデータ転送要求は拒否されるので、不正な中断行為や中断後の不正なデータ転送行為を有効に防止することができる。
ここで、前記DMAコントローラは、前記マスターデバイスと前記スレーブデバイスの保持している各アクセス判定ランクよりも大きくない下限のアクセス判定ランクを記憶している下限ランク記憶手段を備え、前記削除手段は、前記データ転送が完了した場合に、前記条件記憶手段に記憶している転送条件を削除し、前記ランク切替手段は、前記ランク記憶手段に、記憶しているアクセス判定ランクに替えて下限のアクセス判定ランクを記憶させることとしてもよい。
これにより、データ転送完了後は、その条件設定がクリアされるので、データ転送完了前に設定されていたデータ転送のための条件が不正に利用されるのを防止することができる。
ここで、前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクが、当該スレーブデバイスが保持しているアクセス判定ランクより小さくない場合に限り、アクセス要求元からのアクセスを許可し、前記データ転送制御手段は、前記スレーブデバイスのアクセス判定ランクより小さくない上限のアクセス判定ランクを記憶するランク記憶手段と、前記転送条件を記憶する条件記憶手段と、ランク記憶手段に記憶されている上限のアクセス判定ランクを、記憶している前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに送信して、アクセスの許可を要求するアクセス要求手段とを有し、前記データ転送可否判定手段は、前記スレーブデバイスによるアクセス許否判定結果と前記比較手段による比較結果とに基づいて前記データ転送の可否判定を行うこととしてもよい。
これにより、データ転送を依頼するスレーブデバイスからアクセス許可を得るために、依頼毎にデータ転送要求をしたマスターデバイスのアクセス判定ランクを記憶する必要がなくなるので、データ転送を行うために、スレーブデバイスからアクセス許可を得るための処理を軽減することができる。
ここで、前記データ転送制御手段は、前記バスに接続されている前記マスターデバイス及び前記スレーブデバイスからのデータ転送中断要求を受取る中断要求受取手段と、データ転送中断要求の要求元がマスターデバイスであるか否かを判定する中断要求元判定手段と、前記要求元がマスターデバイスである場合に、前記要求元のアクセス判定ランクを受取り、前記要求元のアクセス判定ランクと記憶している上限のアクセス判定ランクとの比較結果に基づいて、前記データ転送を中断させるか否かを判定する中断判定手段と中断させると判定された場合に、前記データ転送を中断させるデータ転送中断手段とを有することとしてもよい。
これにより、データ転送中断を要求元のデバイスの保持するアクセス判定ランクと上限のアクセス判定ランクとの関係に基づいて中断可否が判定されるので、データ転送中にデータ転送が無制限に中断されるのを有効に防止することができる。
ここで、前記データ転送制御手段は、前記データ転送を中断させると判定した場合に、前記条件記憶手段に記憶している転送条件を削除する削除手段を有することとしてもよい。
これにより、中断時に設定されていたデータ転送条件がクリアされるので、中断前に実行されていたデータ転送の条件が不正に流出するのを有効に防止することができる。
ここで、前記データ転送制御手段は、前記マスターデバイスからの認証要求に応じて認証処理を行う認証手段と、前記マスターデバイスと前記スレーブデバイスの保持している各アクセス判定ランクよりも大きくない下限のアクセス判定ランクを記憶している下限ランク記憶手段とを有し、認証できた場合に、前記データ転送可否判定結果が「転送可」である場合に、前記データ転送を行わせ、認証できなかった場合に、下限のアクセス判定ランクが、前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクよりも小さくない場合に限り、前記データ転送を行わせることとしてもよい。
これにより、マスターデバイスからのデータ転送要求に対し、当該マスターデバイスを認証できた場合には、当該マスターデバイスの保持するアクセス判定ランクに基づいてデータ転送許否が決定され、認証できなかった場合には、下限のアクセス判定ランクに基づいてデータ転送許否が決定されるので、DMAコントローラを介したデータ転送において、その利用効率を低下させることなく、機密保持性を高めることができる。
ここで、前記データ転送制御手段は、前記データ転送を行わせている間に、前記バスに接続されている前記マスターデバイス及び前記スレーブデバイスからのデータ転送中断要求を受取る中断要求受取手段と、データ転送中断要求の要求元がマスターデバイスであるか否かを判定する中断要求元判定手段と、前記要求元がマスターデバイスである場合に、前記要求元のアクセス判定ランクを受取り、前記要求元のアクセス判定ランクと前記受取手段が受取った前記マスターデバイスのアクセス判定ランクとの比較結果に基づいて、前記データ転送を中断させるか否かを判定する中断判定手段と、中断させると判定された場合に、前記データ転送を中断させるデータ転送中断手段とを有することとしてもよい。
これにより、データ転送中断を要求元のデバイスの保持するアクセス判定ランクと実行中のデータ転送を要求したマスターデバイスの保持するアクセス判定ランクとの関係に基づいて中断可否が判定されるので、データ転送中にデータ転送が無制限に中断されるのを有効に防止することができる。
ここで、前記DMAコントローラは、前記マスターデバイスのアクセス判定ランクを記憶するランク記憶手段と前記転送条件を記憶する条件記憶手段とを備え、前記データ転送可否判定は、前記比較結果において、前記ランク記憶手段に記憶している前記マスターデバイスのアクセス判定ランクが前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクよりも小さくない場合に、「転送可」とされ、小さい場合に、「転送不可」とされ、前記中断判定手段は、前記要求元のアクセス判定ランクが記憶しているアクセス判定ランクよりも小さくない場合に、前記データ転送を中断させると判定し、前記データ転送制御手段は、中断させると判定された場合に、前記条件記憶手段に記憶している転送条件を削除する削除手段と、前記ランク記憶手段に記憶しているアクセス判定ランクに替えて下限のアクセス判定ランクを記憶させるランク切替手段とを有することとしてもよい。
これにより、中断時に設定されていた転送条件がクリアされ、データ転送依頼時にスレーブデバイスに送信されるアクセス判定ランクが下限に設定されるので、中断前に実行されていたデータ転送の条件が不正に利用されるのを有効に防止することができる。
ここで、前記データ転送制御手段は、データ転送を行う対象となる転送元及び転送先のデータ格納領域の組と当該組の転送先及び転送元のデータ格納領域を有する前記スレーブデバイスのアクセス判定ランクとの対応関係を示すスレーブデバイス間テーブルを記憶するテーブル記憶手段と、前記スレーブデバイス間テーブルにおいて、前記転送条件において指定された転送元及び転送先のデータ格納領域の属する組と対応付けられているアクセス判定ランクと前記マスターデバイスのアクセス判定ランクとの比較をする比較手段と前記比較結果に基づいて前記データ転送の可否判定を行う転送可否判定手段とを有することとしてもよい。
これにより、DMAコントローラにおいて、迅速にデータ転送可否の決定を行うことができ、データ転送制御処理全体を効率よく実行することができる。
又、データ転送要求された転送元及び転送先のスレーブデバイスのアクセス判定ランクの大小関係に応じたきめの細かいデータ転送制御を行うことができる。
ここで、マスターデバイスとデータ格納領域を有する複数のスレーブデバイスにバスで接続され、マスターデバイスから送信される転送先及び転送元のデータ格納領域を指定する転送条件に基づいてデータ転送を行わせるDMAコントローラであって、前記マスターデバイスからの認証要求に応じて認証処理を行う認証手段と、認証できた場合に限り、前記データ転送を行わせるデータ転送制御手段とを備えることとしてもよい。
これにより、マスターデバイスからのデータ転送要求に対し、当該マスターデバイスの認証ができなかった場合には、そのデータ転送は許可されないので、DMAコントローラを介したデータ転送における機密保持性を高めることができる。
ここで、前記DMAコントローラは、認証できなかった前記マスターデバイスを記憶する認証不可マスターデバイス記憶手段を備え、前記認証手段は、認証要求した前記マスターデバイスが前記認証不可マスターデバイス記憶手段に記憶されていない場合に限り、認証要求した前記マスターデバイスの認証処理を実行することとしてもよい。
これにより、認証できなかったマスターデバイスが登録されるので、登録されているマスターデバイスから認証要求があってもその要求を無視することができるので、無駄な認証処理に要する処理負荷を軽減することができる。
以下本発明を実施するための最良の形態について、図面を参照しながら説明する。
(実施形態1)
<構成>
図1は本発明の実施形態1に係る機密情報処理装置100の構成を示す機能ブロック図である。
機密情報処理装置100は、データ・アドレスバス101、ランクバス102、マスターデバイス103、DMAコントローラ104、マスターデバイス105、汎用記憶装置106、暗号処理装置107、機密情報記憶装置108の各デバイスから構成される。
なお、機密情報処理装置100は、外部インタフェースを介して外部装置と接続されることとしてもよい。
データ・アドレスバス101は、データとアドレスを送受信するためのバスである。
ランクバス102は、アクセス判定ランクを送受信するためのバスである。
ここで、「アクセス判定ランク」とは、機密情報処理装置100内の各デバイスへのアクセスを許可するか否かの判断基準となるランクを示す情報のことをいい、機密情報処理装置100内のDMAコントローラ104を除く各デバイスには、それぞれ固有のアクセス判定ランクが予め設定されている。以降、全ての実施形態において、アクセス判定ランクを「AR」と呼ぶ。
マスターデバイス103及び105は、制御装置であり、CPU、DSP(Digital Signal Processor)、ランクレジスタ等から構成され、ランクレジスタ1031、1051にそれぞれ自装置のARを格納している。
各マスターデバイスは、DMAコントローラ104にデータ転送要求を行うことにより、データ転送要求において、指定したデバイス間でのデータ転送をDMAコントローラ104に依頼する。
ここで、「データ転送要求」とは、要求元のマスターデバイスの識別子、転送元のデバイスのデータ記憶領域における読出開始アドレス、転送先のデバイスのデータ記憶領域における書込開始アドレス、転送データのデータサイズをDMAコントローラ104に送信することにより、データの転送を要求することをいう。
又、データ転送の対象となる各デバイス(具体的には、汎用記憶装置106、暗号処理装置107、機密情報記憶装置108であり、以降全ての実施形態において、これらを総称して「スレーブデバイス」と呼ぶ。)のデータ記憶領域には、アドレスが重複することなく、一意に付与され、DMAコントローラ104は、付与されているアドレスに基づいてスレーブデバイスを識別する。
スレーブデバイスは、メモリ、ハードディスク、演算装置等から構成される。
DMAコントローラ104は、DMA設定レジスタ1041、ランク設定レジスタ1042、ランク下限レジスタ1043を有し、マスターデバイス103、105からのデータ転送要求に応じて、以下に説明するデータ転送制御処理Aを行う。
1.前処理
DMAコントローラ104は、データ転送要求に含まれるデータ転送条件をDMA設定レジスタ1041に格納することにより、データ転送条件をDMA設定レジスタ1041に設定し、データ転送要求をしたマスターデバイスから当該マスターデバイスのARを受取り、受取ったARをランク設定レジスタ1042に格納し、データ転送要求をしたマスターデバイスからデータ・アドレスバス101を獲得する。
2.転送処理
DMAコントローラ104は、以下の処理をデータ転送要求の指定するデータサイズのデータの転送が完了するまで繰り返す。
DMAコントローラ104は、データ転送要求の指定する転送元及び転送先のスレーブデバイスに受取ったARを送信してアクセスの許可を要求し、各スレーブデバイスからアクセスが許可されることにより、データ転送が許可されると、データ・アドレスバス101を介して一度に転送可能な所定サイズのデータの読出しを転送元のスレーブデバイスに指示し、読出されたデータがデータ・アドレスバス101に出力されると、出力されたデータの書込みを転送先のスレーブデバイスに指示し、当該データを転送先のスレーブデバイスのデータ記憶領域に書込ませる。
3.転送中断処理
DMAコントローラ104は、データ転送中に他のデバイスからの転送中断要求があると、要求元がマスターデバイスで、そのARがランク設定レジスタ1042に格納しているARよりも小さくない場合に限り、データ転送を中断し、DMA設定レジスタ1041に設定されているデータ転送条件を初期化してクリアし、ランク設定レジスタ1042のARを下限ARに設定する。
ここで、「下限AR」とは、機密情報処理装置100(他の実施形態においては、当該実施形態の対応する機密情報処理装置)の各デバイスに設定されているARのうち、最小のARより大きくないARのことをいう。
DMA設定レジスタ1041は、各マスターデバイスからのデータ転送要求に含まれるデータ転送条件(具体的には、転送元のデバイスのデータ記憶領域における読出開始アドレス、転送先のデバイスのデータ記憶領域における書込開始アドレス、転送データのデータサイズ)を格納する。
ランク設定レジスタ1042は、後述するデータ転送処理の過程で各マスターデバイスから送信される当該マスターデバイスのARの示すランクを格納する。
ランク下限レジスタ1043は、予め定められた下限ARを格納している。
汎用記憶装置106は、データ記憶領域とランクレジスタ1061を有し、データ記憶領域に機密性の低いデータを記憶している。
暗号処理装置107は、データ記憶領域とランクレジスタ1071を有し、暗号鍵を用いてデータを暗号化又は復号化し、暗号化又は復号化されたデータをデータ記憶領域に格納する。
機密情報記憶装置108は、データ記憶領域とランクレジスタ1081を有し、データ記憶領域に暗号鍵などの機密性の高いデータを記憶している。
<動作>
次に、機密情報処理装置100の行うデータ転送処理Aの動作について説明する。
図2は、上記動作を示すフローチャートである。以下、図2を参照して上記動作について説明する。
DMAコントローラ104は、マスターデバイス103、105の何れかのマスターデバイスからデータ転送要求を受取ると(ステップS201)、当該データ転送要求に含まれるデータ転送条件をDMA設定レジスタ1041に格納することにより、データ転送条件をDMA設定レジスタ1041に設定し(ステップS202)、データ転送要求をしたマスターデバイスに当該マスターデバイスのARの送信を指示し、マスターデバイスからARを受取ると(ステップS203)、受取ったARをランク設定レジスタ1042に格納し(ステップS204)、データ転送要求をしたマスターデバイスにデータ・アドレスバス101の解放を要求し、マスターデバイスからデータ・アドレスバス101を獲得し(ステップS205)、受取ったARをデータ転送要求の指定する転送元及び転送先のスレーブデバイスに送信してアクセスの許可を要求する(ステップS206)。
DMAコントローラ104からARを送信された各スレーブデバイスは、送信されたARが当該スレーブデバイスのARよりも小さくないか否かを判定し(ステップS207)、小さくない場合には(ステップS207:Y)、DMAコントローラ104にアクセスを許可して転送許可信号を送信し、小さい場合には(ステップS207:N)、DMAコントローラ104からのアクセスを拒否してDMAコントローラ104に転送拒否信号を送信する(ステップS209)。
DMAコントローラ104は、各スレーブデバイスから、転送許可信号を受取ると、転送元のスレーブデバイスにDMA設定レジスタ1041に格納されている読出開始アドレスを通知して、当該スレーブデバイスに通知したアドレスに格納されている所定サイズのデータをデータ記憶領域から読出させてデータ・アドレスバス101に出力させ、さらに、転送先のスレーブデバイスに書込開始アドレスを通知し、当該スレーブデバイスのデータ記憶領域の通知した書込開始アドレスに出力されたデータを書込ませることにより、データ転送を開始させる(ステップS208)。
ここで、DMAコントローラ104は、後述するステップS210において、データ転送の中断要求がない場合には、ステップS208の処理をデータ転送要求の指定するデータサイズのデータの転送が完了するまで繰り返し、所定サイズのデータ転送が完了する毎に、転送したデータに相当する分だけ、DMA設定レジスタに格納されている読出開始アドレス、書込開始アドレスの値をインクリメントし、転送データのデータサイズの値をデクリメントする。
これにより、所定サイズのデータ転送が完了する毎に、転送元に通知する読出開始アドレス及び転送先に通知する書込開始アドレスが更新される。
次にDMAコントローラ104は、他のデバイスから中断要求が有ったか否かを監視し(ステップS210)、中断要求が無い場合には(ステップS210:N)には、その時点においてDMA設定レジスタに格納されている転送データのデータサイズの値に基づいて、要求されたデータ転送が完了したか否かを判定し(ステップS216)、完了していない場合には(ステップS216:N)、ステップS206の処理に移行し、完了している場合には(ステップS216:Y)、処理を終了する。
ステップS210において、中断要求が有った場合には(ステップS210:Y)、DMAコントローラ104は、要求元がマスターデバイスか否かを判定し(ステップS211)、マスターデバイスである場合には(ステップS211:Y)、当該マスターデバイスのARを受取り、受取ったARがランク設定レジスタ1042に格納しているARより小さくないか否かを判定し(ステップS212)、小さくない場合には(ステップS212:Y)、データ転送を中断させ(ステップS213)、DMA設定レジスタ1041に設定されているデータ転送条件を初期化してクリアし(ステップS214)、ランク設定レジスタ1042に格納しているARをランク下限レジスタ1043に格納されている下限ARに書き換えることにより、ランク設定レジスタ1042に格納しているARを下限ARに設定する(ステップS215)。

(実施形態2)
<構成>
図3は本発明の実施形態2に係る機密情報処理装置200の構成を示す機能ブロック図である。
機密情報処理装置200は、データ・アドレスバス101、ランクバス102、マスターデバイス103、DMAコントローラ204、マスターデバイス105、汎用記憶装置106、暗号処理装置107、機密情報記憶装置108の各デバイスから構成される。
図3の機能ブロック図において、実施形態1の機密情報処理装置100と同一のデバイスについては、同一の番号を付している。以下、機密情報処理装置100と同一のデバイスについては、実施形態1において説明済みであるので説明を省略し、相違するデバイスについて説明する。
なお、機密情報処理装置200は、外部インタフェースを介して外部装置と接続されることとしてもよい。
DMAコントローラ204は、DMA設定レジスタ1041、ランク設定レジスタ1042、ランク下限レジスタ1043、スレーブ間ランクテーブル格納部2041、比較部2042を有する。
スレーブ間ランクテーブル格納部2041は、スレーブ間ランクテーブルを格納している。
ここで、「スレーブ間ランクテーブル」とは、転送元スレーブデバイスと転送先スレーブデバイスとの組毎にARとの対応関係を示すテーブルのことをいう。具体的には、スレーブ間ランクテーブルにおいて、転送元及び転送先のスレーブデバイスの各データ記憶領域に付与されているアドレスのアドレス範囲によって各スレーブデバイスが特定され、転送元及び転送先のアドレス範囲の組と当該組に対してARが対応付けられている。
図4は、スレーブ間ランクテーブルの具体例を示す。なお、図4に示すスレーブデバイス名は、必ずしもスレーブ間ランクテーブルに含まれている必要はない。
比較部2042は、後述するデータ転送制御処理Bにおいて、データ転送要求をしたマスターデバイスから受取った当該マスターデバイスのARと、スレーブ間ランクテーブルにおいて、データ転送要求において指定される転送元の読出開始アドレスと転送先の書込開始アドレスがそれぞれアドレス範囲に含まれる組に対応するARとを大小比較する。
DMAコントローラ204は、マスターデバイス103、105の何れかのマスターデバイスからのデータ転送要求に応じて、以下に説明するデータ転送制御処理Bを行う。
1.前処理
DMAコントローラ204は、データ転送要求に含まれるデータ転送条件をDMA設定レジスタ1041に格納することにより、データ転送条件をDMA設定レジスタ1041に設定し、データ転送条件の示す転送元の読出開始アドレスがスレーブ間ランクテーブルの転送元のアドレス範囲に、当該データ転送条件の示す転送先の書込開始アドレスがスレーブ間ランクテーブルの転送先のアドレス範囲にそれぞれ含まれる組が有るか否かを判定し、無い場合にはデータ転送制御処理Bを終了し、有る場合には、さらに読出開始アドレスと書込開始アドレスとデータ転送条件の示す転送データのデータサイズとに基づいて、当該データサイズのデータを全て読出すのに要するアドレス範囲(以下、「読出アドレス範囲」と呼ぶ。)と、当該データを全て書き込むのに要するアドレス範囲(以下、「書込アドレス範囲」と呼ぶ。)とを算出し、算出した読出アドレス範囲がスレーブ間ランクテーブルにおける該当する組の転送元のアドレス範囲内で、かつ、算出した書込アドレス範囲がスレーブ間ランクテーブルにおける該当する組の転送先のアドレス範囲内であるか否かを判定し、アドレス範囲内でない場合には、データ転送制御処理Bを終了し、アドレス範囲内である場合には、該当する組に対応付けられているARを特定し、データ転送要求したマスターデバイスから受取った当該マスターデバイスのARと特定したARとの大小比較を行い、受取ったARが特定したARよりも小さくない場合に受取ったARをランク設定レジスタ1042に格納し、データ転送要求したマスターデバイスからデータ・アドレスバス101を獲得する。
2.転送処理
DMAコントローラ204は、DMAコントローラ104の行う転送処理と同様の処理を行う。
3.転送中断処理
DMAコントローラ204は、DMAコントローラ104の行う転送処理と同様の処理を行う。
<動作>
次に、DMAコントローラ204の行うデータ転送制御処理Bの動作について説明する。
図5及び図6は、上記動作を示すフローチャートである。以下、図5及び図6を参照して上記動作について説明する。
DMAコントローラ204は、マスターデバイス103、105の何れかのマスターデバイスからデータ転送要求を受取ると(ステップS501)、当該データ転送要求に含まれるデータ転送条件をDMA設定レジスタ1041に格納することにより、データ転送条件をDMA設定レジスタ1041に設定し(ステップS502)、データ転送条件の示す転送元の読出開始アドレスがスレーブ間ランクテーブル(以下、「ST」と略して呼ぶ。)の転送元のアドレス範囲に、データ転送条件の示す転送先の書込開始アドレスがSTの転送先のアドレス範囲にそれぞれ含まれる組が有るか否かを判定する(ステップS503)。
無い場合には(ステップS503:N)、DMAコントローラ204は、DMA設定レジスタ1041に設定されているデータ転送条件を初期化してクリアして(ステップS512)、データ転送制御処理Bを終了し、有る場合には(ステップS503:Y)、さらに読出開始アドレスと書込開始アドレスとデータ転送要求において指定される転送データのデータサイズとに基づいて、読出アドレス範囲、書込アドレス範囲を算出し、算出した読出アドレス範囲がスレーブ間ランクテーブルにおける該当する組の転送元のアドレス範囲内で、かつ、算出した書込アドレス範囲が含まれるスレーブ間ランクテーブルにおける該当する組の転送先のアドレス範囲内であるか否かを判定する(ステップS504)。
アドレス範囲内でない場合には(ステップS504:N)、DMAコントローラ204は、ステップS512の処理に移行し、アドレス範囲内である場合には(ステップS504:Y)、STにおいて、該当する転送先と転送元の組に対応付けられている転送先及び転送元のARを特定し(ステップS505)、データ転送要求したマスターデバイスより当該マスターデバイスのARを受取り(ステップS506)、受取ったARが特定した転送元ARより小さくないか否かを判定する(ステップS507)。
小さい場合(ステップS507:N)、DMAコントローラ204は、ステップS512の処理に移行し、小さくない場合(ステップS507:Y)、受取ったARが特定した転送先ARより小さくないか否かを判定し(ステップS508)、小さくない場合(ステップS508:Y)、受取ったARをランク設定レジスタ1042に格納し(ステップS510)、データ転送要求をしたマスターデバイスにデータ・アドレスバス101の解放を要求し、マスターデバイスからデータ・アドレスバス101を獲得し(ステップS511)、受取ったARをデータ転送要求の指定する転送元及び転送先のスレーブデバイスに送信してアクセスの許可を要求し(ステップS513)、図2のステップS208の処理と同様の処理を行い、データ転送を開始させる(ステップS514)。
ステップS508において、受取ったARが特定した転送先ARより小さい場合(ステップS508:N)、DMAコントローラ204は、転送先ARをランク設定レジスタ1042に格納し(ステップS509)、ステップS511の処理に移行する。
ステップS515〜ステップS522の処理は、図2のステップS210〜ステップS217の処理と同じであるので、説明を省略する。

(実施形態3)
<構成>
図7は本発明の実施形態3に係る機密情報処理装置300の構成を示す機能ブロック図である。
機密情報処理装置300は、データ・アドレスバス101、ランクバス102、マスターデバイス103、DMAコントローラ304、マスターデバイス105、汎用記憶装置106、暗号処理装置107、機密情報記憶装置108の各デバイスから構成される。
図7の機能ブロック図において、実施形態1の機密情報処理装置100と同一のデバイスについては、同一の番号を付している。以下、機密情報処理装置100と同一のデバイスについては、実施形態1において説明済みであるので説明を省略し、相違するデバイスについて説明する。
なお、機密情報処理装置300は、外部インタフェースを介して外部装置と接続されることとしてもよい。
DMAコントローラ304は、DMA設定レジスタ1041、ランク設定レジスタ1042、ランク下限レジスタ1043、スレーブランクレジスタ3041、比較部3042を有する。
スレーブランクレジスタ3041は、後述するデータ転送制御処理Cにおいて、データの転送元又は転送先のスレーブデバイスから受取ったARを格納する。
比較部3042は、後述するデータ転送制御処理Cにおいて、データの転送元及び転送先から受取ったARの大小比較と、データ転送要求したマスターデバイスから受取ったARとスレーブランクレジスタ3041に格納されているARとの大小比較をする。
DMAコントローラ304は、マスターデバイス103、105の何れかのマスターデバイスからのデータ転送要求に応じて、以下に説明するデータ転送制御処理Cを行う。
1.前処理
DMAコントローラ304は、データ転送要求に含まれるデータ転送条件をDMA設定レジスタ1041に格納することにより、データ転送条件をDMA設定レジスタ1041に設定し、データ転送条件の示す転送元及び転送先のスレーブデバイスから各スレーブデバイスのARを受取り、受取ったARの大小比較を行い、大きい方のARをスレーブランクレジスタ3041に格納し、マスターデバイスから受取った当該マスターデバイスのARと格納しているARとの大小比較を行い、受取ったARが格納しているARよりも小さくない場合、受取ったARをランク設定レジスタ1042に格納し、データ転送要求したマスターデバイスからデータ・アドレスバス101を獲得する。
2.転送処理
DMAコントローラ304は、DMAコントローラ104の行う転送処理と同様の処理を行う。
3.転送中断処理
DMAコントローラ304は、DMAコントローラ104の行う転送処理と同様の処理を行う。
<動作>
次に、DMAコントローラ304の行うデータ転送制御処理Cの動作について説明する。
図8は、上記動作を示すフローチャートである。以下、図8を参照して上記動作について説明する。
DMAコントローラ304は、マスターデバイス103、105の何れかのマスターデバイスからデータ転送要求を受取ると(ステップS701)、当該データ転送要求に含まれるデータ転送条件をDMA設定レジスタ1041に格納することにより、データ転送条件をDMA設定レジスタ1041に設定し(ステップS702)、データ転送条件の示す転送元からARを取得し(ステップS703)、取得したARをスレーブランクレジスタ3041(以下、略して「SR」と呼ぶ。)に格納する(ステップS704)。
次にDMAコントローラ304は、データ転送条件の示す転送先からARを取得し(ステップS705)、転送先のARが格納している転送元のARより大きいか否かを判定し(ステップS706)、大きくない場合には(ステップS706:N)、後述するステップS708の処理に移行し、大きい場合には(ステップS706:Y)、転送先のARを格納している転送元のARに替えてSRに格納し(ステップS707)、データ転送要求したマスターデバイスよりARを受取り(ステップS708)、受取ったARがSRに格納しているARより小さくないか否かを判定する(ステップS709)。
小さい場合(ステップS709:N)、DMAコントローラ304は、DMA設定レジスタ1041に設定されているデータ転送条件を初期化してクリアして(ステップS720)、データ転送制御処理Cを終了し、小さくない場合には(ステップS709:Y)、図8のステップS710〜ステップS719、ステップS720、ステップS721に示すように、図5のステップS510、ステップS511、ステップS513、ステップS515〜ステップS522の処理と同じ処理を行う。

(実施形態4)
<構成>
図9は本発明の実施形態4に係る機密情報処理装置400の構成を示す機能ブロック図である。
機密情報処理装置400は、データ・アドレスバス101、ランクバス102、マスターデバイス103、DMAコントローラ404、マスターデバイス105、汎用記憶装置106、暗号処理装置107、機密情報記憶装置108の各デバイスから構成される。
図9の機能ブロック図において、実施形態1の機密情報処理装置100と同一のデバイスについては、同一の番号を付している。以下、機密情報処理装置100と同一のデバイスについては、実施形態1において説明済みであるので説明を省略し、相違するデバイスについて説明する。
なお、機密情報処理装置400は、外部インタフェースを介して外部装置と接続されることとしてもよい。
DMAコントローラ404は、複数のDMA設定レジスタ1041、ランク設定レジスタ1042、ランク下限レジスタ1043、DMA実行マスターレジスタ4041、ランク設定許可フラグレジスタ4042を有する。
DMA実行マスターレジスタ4041は、データ転送要求したマスターデバイスを識別する識別子を格納する。
ランク設定許可フラグレジスタ4042は、データ転送要求の受け入れ許否を示すランク設定許可フラグを設定するためのフラグ値を格納する。
ここで、ランク設定許可フラグとは、マスターデバイスからのデータ転送要求に応じてデータ転送を許可できる状態にあるか否かを示すフラグのことをいい、データ転送の実行中は、「不許可」を示すフラグ値に設定され、データ転送完了後、「許可」を示すフラグ値に設定されるフラグのことをいう。
DMAコントローラ404は、マスターデバイス103、105の何れかのマスターデバイスからのデータ転送要求に応じて、以下に説明するデータ転送制御処理Dを行う。
1.前処理
DMAコントローラ404は、マスターデバイスからデータ転送要求を受け取ると、ランク設定許可フラグレジスタ4042に格納されているランク設定フラグが「許可」に設定されているか又はデータ転送要求したマスターデバイスの識別子がDMAマスター実行レジスタ4041に格納されている場合に限り、データ転送制御処理Dを続行し、ランク設定フラグを「不許可」に切替え、DMA実行マスターレジスタ4041にデータ転送要求したマスターデバイスの識別子を格納し、データ転送要求に含まれるデータ転送条件をDMA設定レジスタ1041に格納することにより、データ転送条件をDMA設定レジスタ1041に設定し、当該マスターデバイスのARを受取り、ランク設定レジスタ1042に格納し、データ転送要求したマスターデバイスからデータ・アドレスバス101を獲得する。
2.転送処理
DMAコントローラ404は、DMAコントローラ104の行う転送処理と同様の処理を行う。
3.転送中断処理
DMAコントローラ404は、DMAコントローラ104の行う転送処理と同様の処理を行う。
4.後処理
DMAコントローラ404は、2、3の処理完了後、DMA実行マスターレジスタ4041に格納されているマスターレジスタの識別子をクリアし、ランク設定許可フラグを「許可」に設定する。
<動作>
次に、機密情報処理装置400の行うデータ転送処理Dの動作について説明する。
図10及び図11は、上記動作を示すフローチャートである。以下、図10及び図11を参照して上記動作について説明する。
DMAコントローラ404は、マスターデバイス103、105の何れかのマスターデバイスからデータ転送要求を受取ると(ステップS901)、ランク設定許可フラグレジスタ4042のランク設定許可フラグが「許可」に設定されている否かを判定し(ステップS902)、「許可」に設定されている場合には(ステップS902:Y)、ランク設定許可フラグを「不許可」に設定し(ステップS903)、DMA実行マスターレジスタ4041にデータ転送要求したマスターデバイスの識別子を格納し(ステップS904)、さらに、データ転送要求に含まれるデータ転送条件をDMA設定レジスタ1041に格納することにより、データ転送条件をDMA設定レジスタ1041に設定する(ステップS905)。
ステップS902において、「不許可」に設定されている場合には(ステップS902:N)、DMAコントローラ404は、データ転送要求をしたマスターデバイスの識別子がDMA実行マスターレジスタ4041に格納されている否かを判定し(ステップS923)、格納されている場合には(ステップS923:Y)、ステップS905の処理に移行し、格納されていない場合には(ステップS923:N)、データ転送処理Dを終了する。
ステップS905以降のステップS906〜ステップS918及びステップS921、ステップS922の処理は、図2のステップS203〜ステップS217の処理と同じであるので、説明を省略する。
DMAコントローラ404は、ステップS912、ステップS918、ステップS921の何れかの処理の後、DMA実行マスターレジスタ4041に格納されているマスターレジスタの識別子をクリアし(ステップS919)、ランク設定許可フラグを「許可」に設定する(ステップS920)。

(実施形態5)
<構成>
図12は本発明の実施形態5に係る機密情報処理装置500の構成を示す機能ブロック図である。
機密情報処理装置500は、データ・アドレスバス101、ランクバス102、マスターデバイス103、DMAコントローラ504、マスターデバイス105、汎用記憶装置106、暗号処理装置107、機密情報記憶装置108の各デバイスから構成される。
図12の機能ブロック図において、実施形態1の機密情報処理装置100と同一のデバイスについては、同一の番号を付している。以下、機密情報処理装置100と同一のデバイスについては、実施形態1において説明済みであるので説明を省略し、相違するデバイスについて説明する。
なお、機密情報処理装置500は、外部インタフェースを介して外部装置と接続されることとしてもよい。
DMAコントローラ504は、DMA設定レジスタ1041、ランク設定レジスタ1042、ランク下限レジスタ1043、認証処理部5041を有する。
認証処理部5041は、マスターデバイスからの認証要求に応じて認証処理を行う。ここでの認証処理は、例えば、チャレンジレスポンス認証方式により行うことができる。
DMAコントローラ504は、マスターデバイス103、105の何れかのマスターデバイスからの認証要求に応じて以下に説明するデータ転送制御処理Eを行う。
1.前処理
DMAコントローラ504は、マスターデバイスから認証要求を受取ると、認証処理を実行し、認証できた場合には、マスターデバイスからのデータ転送要求に応じて、以後DMAコントローラ104の行う前処理と同様の前処理を行い、認証できなかった場合には、ランク設定レジスタ1042のARをランク下限レジスタ1043に格納されている下限ARに設定した後、マスターデバイスからのデータ転送要求に応じ、当該マスターデバイスからデータ・アドレスバス101を獲得する。
2.転送処理
DMAコントローラ504は、認証できた場合には、データ転送要求の指定する転送元及び転送先のスレーブデバイスに受取ったARを送信してアクセスの許可を要求し、認証できなかった場合には、ランク下限レジスタ1043に格納されている下限ARをデータ転送要求の指定する転送元及び転送先のスレーブデバイスに送信してアクセスの許可を要求し、以後DMA104の行う転送処理と同様の転送処理を行う。
3.転送中断処理
DMAコントローラ504は、DMAコントローラ104の行う転送処理と同様の処理を行う。
<動作>
次に、機密情報処理装置500の行うデータ転送処理Eの動作について説明する。
図13は、上記動作を示すフローチャートである。以下、図13を参照して上記動作について説明する。
DMAコントローラ504は、マスターデバイスから認証要求を受取ると(ステップS1101)、認証処理を実行し(ステップS1102)、認証できた場合には(ステップS1103:Y)、マスターデバイスからデータ転送要求を受取り(ステップS1104)、当該データ転送要求に含まれるデータ転送条件をDMA設定レジスタ1041に格納することにより、データ転送条件をDMA設定レジスタ1041に設定し(ステップS1105)、データ転送要求をしたマスターデバイスに当該マスターデバイスのARの送信を指示し、マスターデバイスからARを受取ると(ステップS1106)、受取ったARをランク設定レジスタ1042に格納し(ステップS1107)、データ転送要求をしたマスターデバイスにデータ・アドレスバス101の解放を要求し、マスターデバイスからデータ・アドレスバス101を獲得し(ステップS1108)、ランク設定レジスタ1042に格納しているARをデータ転送条件において指定される転送元及び転送先のスレーブデバイスに送信してアクセスの許可を要求する(ステップS1109)。
ステップS1103において、認証できなかった場合には(ステップS1103:N)、ランク設定レジスタ1042にランク下限レジスタ1043に格納されている下限ARを格納し(ステップS1110)、マスターデバイスからのデータ転送要求を受取り(ステップS1111)、当該データ転送要求に含まれるデータ転送条件をDMA設定レジスタ1041に格納することにより、データ転送条件をDMA設定レジスタ1041に設定し(ステップS1112)、ステップS1108の処理に移行する。
ステップS1109の処理以降のステップS1114〜ステップS1124の処理は、図2のステップS207〜ステップS217の処理と同じであるので説明を省略する。

(実施形態6)
<構成>
図14は本発明の実施形態6に係る機密情報処理装置600の構成を示す機能ブロック図である。
機密情報処理装置600は、データ・アドレスバス101、ランクバス102、マスターデバイス103、DMAコントローラ604、マスターデバイス105、汎用記憶装置106、暗号処理装置107、機密情報記憶装置108の各デバイスから構成される。
図14の機能ブロック図において、実施形態1の機密情報処理装置100と同一のデバイスについては、同一の番号を付している。以下、機密情報処理装置100と同一のデバイスについては、実施形態1において説明済みであるので説明を省略し、相違するデバイスについて説明する。
なお、機密情報処理装置600は、外部インタフェースを介して外部装置と接続されることとしてもよい。
DMAコントローラ604は、DMA設定レジスタ1041、ランク設定レジスタ6042、認証処理部5041、拒否マスターリストレジスタ6041を有する。
拒否マスターリストレジスタ6041は、データ転送要求を拒否すべきマスターデバイスの識別子を格納している。
ランク設定レジスタ6042は、予め定められたARを格納している。
DMAコントローラ604は、マスターデバイス103、105の何れかのマスターデバイスからの認証要求に応じて以下に説明するデータ転送制御処理Fを行う。
1.前処理
DMAコントローラ604は、マスターデバイスから認証要求を受取り、認証要求元の識別子が拒否マスターリストレジスタに格納されている場合には、データ転送制御処理Fを終了し、格納されていない場合には、認証処理を実行し、認証できた場合には、マスターデバイスからのデータ転送要求を受取り、データ転送要求に含まれるデータ転送条件をDMA設定レジスタ1041に格納することにより、データ転送条件をDMA設定レジスタ1041に設定し、当該マスターデバイスからデータ・アドレスバス101を獲得し、認証できなかった場合には、認証要求元のマスターデバイスの識別子を拒否マスターリストレジスタに格納し、データ転送制御処理Fを終了する。
2.転送処理
DMAコントローラ604は、DMAコントローラ104の行う転送処理と同様の処理を行う。
3.転送中断処理
ランク設定レジスタ1042のARを下限ARに設定する処理をしないことを除いて、DMAコントローラ104の行う転送中断処理と同様の処理を行う。
<動作>
次に、機密情報処理装置600の行うデータ転送処理Fの動作について説明する。
図15は、上記動作を示すフローチャートである。以下、図15を参照して上記動作について説明する。
DMAコントローラ604は、マスターデバイスから認証要求を受取ると(ステップS1301)、認証要求元の識別子が拒否マスターリストレジスタに格納されているか否かを判定し(ステップS1302)、格納されている場合には(ステップS1302:Y)、データ転送制御処理Fを終了し、格納されていない場合には(ステップS1302:N)、認証処理を実行し(ステップS1303)、認証できた場合には(ステップS1304:Y)、マスターデバイスからのデータ転送要求を受取り(ステップS1305)、データ転送要求に含まれるデータ転送条件をDMA設定レジスタ1041に格納することにより、データ転送条件をDMA設定レジスタ1041に設定し(ステップS1306)、当該マスターデバイスからデータ・アドレスバス101を獲得し(ステップS1307)、ランク設定レジスタ6042に格納しているARをデータ転送要求の指定する転送元及び転送先のスレーブデバイスに送信してアクセスの許可を要求する(ステップS1308)。
ステップS1304において、認証できなかった場合には(ステップS1304:N)、DMAコントローラ604は、認証要求元のマスターデバイスの識別子を拒否マスターリストレジスタに格納する(ステップS1309)。
ステップS1308の処理以降のステップS1310〜ステップS1318の処理は、図2のステップS207〜ステップS214、ステップS216、ステップS217の処理と同じであるので説明を省略する。

(実施形態7)
<構成>
図16は本発明の実施形態7に係る機密情報処理装置700の構成を示す機能ブロック図である。
機密情報処理装置700は、データ・アドレスバス101、ランクバス102、マスターデバイス103、DMAコントローラ704、マスターデバイス105、汎用記憶装置106、暗号処理装置107、機密情報記憶装置108の各デバイスから構成される。
図16の機能ブロック図において、実施形態1の機密情報処理装置100と同一のデバイスについては、同一の番号を付している。以下、機密情報処理装置100と同一のデバイスについては、実施形態1において説明済みであるので説明を省略し、相違するデバイスについて説明する。
なお、機密情報処理装置700は、外部インタフェースを介して外部装置と接続されることとしてもよい。
DMAコントローラ704は、DMA設定レジスタ1041、ランク設定レジスタ1042、ランク下限レジスタ1043、ランク上限レジスタ7041、比較部7042を有する。
ランク上限レジスタ7041は、予め定められた上限ARを予め格納している。
ここで、「上限AR」とは、ARが不正操作によって不当に高く設定されたマスターデバイスからの不正アクセスを防止するために、機密情報処理装置700の管理者側によって設定される上限のARであって、例えば、機密情報処理装置700の出荷時において、各デバイスに設定されているARのうち、最大のARを上限ARとして設定することができる。
比較部7042は、後述するデータ転送制御処理Gにおいて、マスターデバイスから受取ったARとランク設定レジスタ1042に格納されているARとの大小比較と、マスターデバイスから受取ったARとランク上限レジスタ7041に格納されている上限ARとの大小比較と後述するランク設定解除処理の要求元のマスターデバイスのARとランク設定レジスタ1042に格納しているARとの大小比較をする。
DMAコントローラ704は、以下に説明するデータ転送制御処理Gを行う。
1.前処理
DMAコントローラ704は、マスターデバイスから当該マスターデバイスのARを受取り、受取ったARとランク設定レジスタ1042に格納されているARとの大小比較を行い、大きくない場合には、データ転送制御処理Gを終了し、大きい場合に、さらに、受取ったARとランク上限レジスタ7041に格納されているARとの大小比較を行い、受取ったARが上限ARよりも大きい場合には、上限レジスタをランク設定レジスタ1042に格納し、大きくない場合には、受取ったARをランク設定レジスタ1042に格納し、マスターデバイスからのデータ転送要求を受取り、データ転送要求に含まれるデータ転送条件をDMA設定レジスタ1041に格納することにより、データ転送条件をDMA設定レジスタ1041に設定し、当該マスターデバイスからデータ・アドレスバス101を獲得する。
なお、ランク設定レジスタ1042には、直前の前処理において格納されたマスターデバイスのAR又は上限ARが格納されているものとする。又、直前の前処理が行われていない場合には、下限ARが格納されているものとする。
2.転送処理
DMAコントローラ704は、データ要求されたデータの転送完了後に後述するランク設定解除処理を行う点を除いて、DMAコントローラ104の行う転送処理と同様の処理を行う。
3.転送中断処理
ランク設定レジスタ1042のARを下限ARに設定する処理をしないことを除いて、DMAコントローラ104の行う転送中断処理と同様の処理を行う。
<動作>
次に、機密情報処理装置700の行うデータ転送処理Gの動作について説明する。
図17は、上記動作を示すフローチャートである。以下、図17を参照して上記動作について説明する。
DMAコントローラ704は、マスターデバイスから当該マスターデバイスのARを受取り(ステップS1501)、受取ったARがランク設定レジスタ1042に格納しているARより小さくないか否かを判定し(ステップS1502)、小さい場合には(ステップS1502:N)、データ転送処理Gを終了し、小さくない場合には(ステップS1502:Y)、さらに、受取ったARがランク上限レジスタ7041に格納している上限ARより大きいか否かを判定し(ステップS1503)、受取ったARが上限ARよりも大きい場合には(ステップS1503:Y)、上限ARをランク設定レジスタ1042に格納し(ステップS1508)、大きくない場合には(ステップS1503:N)、受取ったARをランク設定レジスタ1042に格納し(ステップS1504)、マスターデバイスからのデータ転送要求を受取り(ステップS1505)、データ転送要求に含まれるデータ転送条件をDMA設定レジスタ1041に格納することにより、データ転送条件をDMA設定レジスタ1041に設定し(ステップS1506)、当該マスターデバイスからデータ・アドレスバス101を獲得し(ステップS1507)、ランク設定レジスタ1042に格納しているARをデータ転送要求の指定する転送元及び転送先のスレーブデバイスに送信してアクセスの許可を要求する(ステップS1509)。
ステップS1509の処理以降のステップS1510〜ステップS1516の処理は、図2のステップS207〜ステップS213の処理と、ステップS1518、ステップS1519の処理は、ステップS216、ステップS217の処理と同じであるので説明を省略する。
DMAコントローラ704は、ステップS1516の処理の後、ランク設定レジスタ1042にランク上限レジスタ7041に格納している上限ARを格納する(ステップS1517)。
又、DMAコントローラ704は、ステップS1518において、データ転送が完了している場合には(ステップS1518:Y)、ランク設定解除処理を行う(ステップS1520)。
図18は、ランク設定解除処理の動作を示すフローチャートである。
DMAコントローラ704は、マスターデバイスからランク設定レジスタ1042に設定されているARのランク設定解除要求が有ると(ステップS1530:Y)、要求元のマスターデバイスのARがランク設定レジスタ1042に格納しているARより大きいか否かを判定し(ステップS1531)、大きい場合に(ステップS1531:Y)、ランク設定レジスタ1042に格納しているARをランク下限レジスタに格納している下限ARに設定する(ステップS1532)。
(実施形態8)
<構成>
図19は本発明の実施形態7に係る機密情報処理装置800の構成を示す機能ブロック図である。
機密情報処理装置800は、データ・アドレスバス101、ランクバス102、マスターデバイス103、DMAコントローラ804、マスターデバイス105、汎用記憶装置106、暗号処理装置107、機密情報記憶装置108の各デバイスから構成される。
図19の機能ブロック図において、実施形態1の機密情報処理装置100と同一のデバイスについては、同一の番号を付している。以下、機密情報処理装置100と同一のデバイスについては、実施形態1において説明済みであるので説明を省略し、相違するデバイスについて説明する。
なお、機密情報処理装置800は、外部インタフェースを介して外部装置と接続されることとしてもよい。
DMAコントローラ804は、DMA設定レジスタ1041を有し、マスターデバイス103、105からのデータ転送要求に応じて、以下に説明するデータ転送制御処理Hを行う。
1.前処理
DMAコントローラ804は、データ転送要求に含まれるデータ転送条件をDMA設定レジスタ1041に格納することにより、データ転送条件をDMA設定レジスタ1041に設定し、データ転送要求をしたマスターデバイスからデータ・アドレスバス101を獲得し、当該マスターデバイスにARのデータ転送条件の指定する転送元及び転送先のスレーブデバイスへの送信を要求する。
2.転送処理
DMAコントローラ804は、DMAコントローラ104の行う転送処理と同様の処理を行う。
3.転送中断処理
ランク設定レジスタ1042のARを下限ARに設定する処理をしないことを除いて、DMAコントローラ804の行う転送中断処理と同様の処理を行う。
<動作>
次に、機密情報処理装置800の行うデータ転送処理Hの動作について説明する。
図20は、上記動作を示すフローチャートである。以下、図20を参照して上記動作について説明する。
DMAコントローラ804は、マスターデバイス103、105の何れかのマスターデバイスからデータ転送要求を受取ると(ステップS1701)、当該データ転送要求に含まれるデータ転送条件をDMA設定レジスタ1041に格納することにより、データ転送条件をDMA設定レジスタ1041に設定し(ステップS1702)、データ転送要求をしたマスターデバイスにデータ・アドレスバス101の解放を要求し、マスターデバイスからデータ・アドレスバス101を獲得し(ステップS1703)、データ転送要求をしたマスターデバイスに当該マスターデバイスのARの送信を要求し(ステップS1704)、マスターデバイスにデータ転送要求の指定する転送元及び転送先のスレーブデバイスにARを送信させ、アクセスの許可を要求させる(ステップS1705)。
ステップS1706以降のステップS1706〜ステップS1715の処理は、図2のステップS207〜ステップS214、ステップS216、ステップS217の処理と同じであるので、説明を省略する。
<補足>
以上、本発明の実施形態1〜8について説明したが、本発明はこれら実施形態に限られないことは勿論である。
(1)例えば、実施形態2における図5のステップS503において、判定が否定的である場合に、スレーブ間ランクテーブルにおいて、ARの示すランクが最大のARを特定し(ステップS1801)、ステップS506の処理に移行することとしてもよい。
なお、最大のARとして、予め設定されたARを用いることとしてもよい。
上記の場合において、DMAコントローラ204の行うデータ転送制御処理B1の動作を図21及び図22に示す。
(2)又、実施形態2において、ランク設定レジスタ1042に予め定められたAR(例えば、各スレーブデバイスのARより小さくないAR)を格納しておき、図5のステップS510の処理を行うことなく、ステップS513の処理の代わりに、格納しているARをデータ転送要求の指定する転送元及び転送先のスレーブデバイスに送信してアクセスの許可を要求する(ステップS1901)こととしてもよい。
上記の場合において、DMAコントローラ204の行うデータ転送制御処理B2の動作を図23及び図24に示す。
(3)又、実施形態2におけるスレーブ間ランクテーブルを、機密情報処理装置200の各スレーブデバイスの組毎に当該組のスレーブデバイスのARの大きい方のARを対応付けたテーブルとし、図5のステップS507とステップS508の処理の代わりに、データ転送要求をしたマスターデバイスから受取ったARが、上記テーブルにおいて、当該データ転送要求において指定されるスレーブデバイスの組に対応するARよりも小さくないか否かを判定する処理を行い、小さくない場合にステップS510以降の処理を行うこととしてもよい。
これにより、マスターデバイスからのデータ転送の許否の判定を実施形態2の場合に比べ、少ない処理で行うことができるので、DMAコントローラ204において、より簡易にデータ転送の許否の判定をすることができる。
(4)又、実施形態3において、ランク設定レジスタ1042に、実施形態7において設定された上限ARを格納しておき、図8のステップ710を行うことなく、ステップS716の処理の代わりに、中断要求元のARがランク設定レジスタ1042に格納している上限ARより小さくないか否かを判定する(ステップS2001)こととしてもよい。
上記の場合において、DMAコントローラ304の行うデータ転送制御処理C1の動作を図25に示す。
(5)又、実施形態5において、ランク設定レジスタ1042に予め定められたAR(例えば、各スレーブデバイスのARより小さくないAR)を格納しておき、図13のステップS1106、ステップS1107を行うことなく、ステップS1109の処理を行う代わりに、格納しているARをデータ転送要求の指定する転送元及び転送先のスレーブデバイスに送信してアクセスの許可を要求する(ステップS2101)こととし、S1103の判定が否定的である場合(ステップS1103:N)、DMAコントローラ504は、データ転送処理E1を終了することとしてもよい。
上記の場合において、情報機密処理装置500の行うデータ転送処理E1の動作を図26に示す。
(6)又、実施形態7における図17のステップS1514の判定が否定的である場合に(ステップS1514:N)、DMAコントローラ704は、中断拒否する(図17、ステップS1519)代わりに、データ転送を中断し(ステップS1516)、ランク設定レジスタ1042にランク上限レジスタ7041に格納している上限ARを格納する(ステップS1517)こととし、さらに、ステップS1518において、データ転送が完了した場合に(ステップS1518:Y)、ステップS1520の処理を行う代わりに、DMA設定レジスタ1041に設定されているデータ転送条件を初期化してクリアし(ステップS2201)、ランク設定レジスタ1042のARをランク下限レジスタに格納している下限ARに設定する(ステップS2202)こととしてもよい。
上記の場合において、情報機密処理装置700の行うデータ転送処理G1の動作を図27に示す。
(7)実施形態1〜8において、DMAコントローラが行うデータ転送制御処理は、1つのスレーブデバイス内におけるデータ転送制御処理であってもよい。又、スレーブデバイスの数は、2つ以上であってもよい。
(8)実施形態1〜8において、マスターデバイスの数は、2つに限らず、1つであってもよいし、2つ以上であってもよい。
(9)実施形態1〜8において、DMAコントローラのチャネルは、1つであってもよいし、複数であってもよい。又、DMA設定レジスタ、ランク設定レジスタは、DMAコントローラのチャネルに相当する数だけ設けることとしてもよいし、一部をチャネル間で共有することとしてもよい。
(10)実施形態1〜8において、機密情報処理装置を構成する各デバイスの保持するARは、不変であってもよいし、可変であってもよい。
(11)実施形態1〜8において、機密情報処理装置を構成する各デバイスは、個別のLSI(半導体集積回路)であってもよいし、任意のデバイス及びバスを1つのLSIとしてもよい。
(12)実施形態1〜8において、ARを各デバイス間で送信するのにランクバス102を用いたが、ARの送信は、データ・アドレスバスで行うこととしてもよい。
本発明は、機密情報処理装置において、その機能を実現するためのプログラムを、機密情報を漏洩することなく、更新するための機密制御技術として利用できる。
機密情報処理装置100の構成を示す機能ブロック図である。 機密情報処理装置100の行うデータ転送処理Aの動作を示すフローチャートである。 機密情報処理装置200の構成を示す機能ブロック図である。 スレーブ間ランクテーブルの具体例を示す。 DMAコントローラ204の行うデータ転送制御処理Bの動作を示すフローチャートの一部である。 DMAコントローラ204の行うデータ転送制御処理Bの動作を示すフローチャートの一部である。 機密情報処理装置300の構成を示す機能ブロック図である。 DMAコントローラ304の行うデータ転送制御処理Cの動作を示すフローチャートである。 機密情報処理装置400の構成を示す機能ブロック図である。 機密情報処理装置400の行うデータ転送処理Dの動作を示すフローチャートの一部である。 機密情報処理装置400の行うデータ転送処理Dの動作を示すフローチャートの一部である。 機密情報処理装置500の構成を示す機能ブロック図である。 機密情報処理装置500の行うデータ転送処理Eの動作を示すフローチャートである。 機密情報処理装置600の構成を示す機能ブロック図である。 機密情報処理装置600の行うデータ転送処理Fの動作を示すフローチャートである。 機密情報処理装置700の構成を示す機能ブロック図である。 機密情報処理装置700の行うデータ転送処理Gの動作を示すフローチャートである。 ランク設定解除処理の動作を示すフローチャートである。 機密情報処理装置800の構成を示す機能ブロック図である。 機密情報処理装置800の行うデータ転送処理Hの動作を示すフローチャートである。 DMAコントローラ204の行うデータ転送制御処理Bの変形例(データ転送制御処理B1)の動作を示すフローチャートの一部である。 DMAコントローラ204の行うデータ転送制御処理Bの変形例(データ転送制御処理B1)の動作を示すフローチャートの一部である。 DMAコントローラ204の行うデータ転送制御処理Bの変形例(データ転送制御処理B2)の動作を示すフローチャートの一部である。 DMAコントローラ204の行うデータ転送制御処理Bの変形例(データ転送制御処理B2)の動作を示すフローチャートの一部である。 DMAコントローラ304の行うデータ転送制御処理Bの変形例(データ転送制御処理C1)の動作を示すフローチャートの一部である。 機密情報処理装置500の行うデータ転送処理Eの変形例(データ転送処理E1)の動作を示すフローチャートである。 機密情報処理装置700の行うデータ転送処理Gの変形例(データ転送処理G1)の動作を示すフローチャートである。
符号の説明
100、200、300、400、500、600、700、800 機密情報処理装置
101 データ・アドレスバス
102 ランクバス
103 マスターデバイス
104、204、304、504、604、704、804 DMAコントローラ
105 マスターデバイス
106 汎用記憶装置
107 暗号処理装置
108 機密情報記憶装置
1031、1051、1061、1071、1081 ランクレジスタ
1041 DMA設定レジスタ
1042、6042 ランク設定レジスタ
1043 ランク下限レジスタ
2041 スレーブ間ランクテーブル格納部
2042、3042、7042 比較部
3041 スレーブランクレジスタ
4041 DMA実行マスターレジスタ
4042 ランク設定許可フラグレジスタ
5041 認証処理部
6041 拒否マスターリストレジスタ
7041 ランク上限レジスタ

Claims (24)

  1. マスターデバイスとデータ格納領域を有する複数のスレーブデバイスにバスで接続され、マスターデバイスから送信される転送先及び転送元のデータ格納領域を指定する転送条件に基づいてデータ転送を行わせるDMAコントローラであって、
    前記マスターデバイスと前記スレーブデバイスは、データ転送可否の判定基準となるアクセス判定ランクを保持し、
    前記DMAコントローラは、
    前記マスターデバイスのアクセス判定ランクと、前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクとの比較結果に基づくデータ転送可否判定結果が「転送可」である場合に、前記データ転送を行わせ、前記データ転送可否判定結果が「転送不可」である場合に前記データ転送を抑止させるデータ転送制御手段
    を備えることを特徴とするDMAコントローラ。
  2. 前記データ転送制御手段は、
    データ転送を行う対象となる転送元及び転送先のデータ格納領域の組と当該組の転送先及び転送元のデータ格納領域を有する前記スレーブデバイスのアクセス判定ランクの内、大きい方のアクセス判定ランクとの対応関係を示すスレーブデバイス間テーブルを記憶するテーブル記憶手段と、
    前記スレーブデバイス間テーブルにおいて、前記転送条件において指定された転送元及び転送先のデータ格納領域の属する組と対応付けられているアクセス判定ランクと前記マスターデバイスのアクセス判定ランクとの比較をする比較手段と
    前記比較結果に基づいて前記データ転送の可否判定を行う転送可否判定手段と
    を有することを特徴とする請求項1記載のDMAコントローラ。
  3. 前記データ転送制御手段は、前記転送条件において指定された転送元及び転送先のデータ格納領域の組が、前記スレーブデバイス間テーブルに含まれるか否かを判定するテーブル判定手段を有し、
    前記転送可否判定手段は、前記スレーブデバイス間テーブルに含まれない場合に、「転送不可」と判定する
    ことを特徴とする請求項2記載のDMAコントローラ。
  4. 前記データ転送制御手段は、
    前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスから、保持しているアクセス判定ランクを取得する取得手段と、
    前記マスターデバイスのアクセス判定ランクと、取得したアクセス判定ランクとを比較する比較手段と、
    前記比較結果に基づいて前記データ転送の可否判定を行う転送可否判定手段と
    を有することを特徴とする請求項1記載のDMAコントローラ。
  5. 前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクと当該スレーブデバイスが保持しているアクセス判定ランクとの比較結果に基づいてアクセス要求元からのアクセスの許否を判定し、
    前記データ転送制御手段は、前記マスターデバイスのアクセス判定ランクを前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに送信し、アクセスの許可を要求する要求手段を有し、
    前記転送可否判定手段は、前記スレーブデバイスによるアクセス許否判定結果と前記比較手段による比較結果とに基づいて前記データ転送の可否判定を行う
    ことを特徴とする請求項2〜4の何れかに記載のDMAコントローラ。
  6. 前記DMAコントローラは、複数のマスターデバイスと前記バスで接続され、
    前記データ転送制御手段は、
    自装置が前記マスターデバイスからの前記転送条件の送信に応じてデータ転送を許可できる状態にあるか否かを示すフラグを設定するためのフラグ値を格納しているフラグ格納手段と、
    データ転送が行われている間、前記フラグを「不許可」に設定し、データ転送が完了すると、前記フラグを「許可」に設定するフラグ設定手段と
    を有し、
    前記転送可否判定手段は、前記マスターデバイスからの前記転送条件の送信時に前記フラグが、「不許可」に設定されている場合に、「転送不可」と判定する
    ことを特徴とする請求項1記載のDMAコントローラ。
  7. 前記データ転送制御手段は、
    前記フラグが「許可」に設定されている場合に、前記バスに接続されているマスターデバイスから転送条件の送信があると、当該マスターデバイスの識別子を記憶するマスターデバイス記憶手段と、
    前記フラグが「不許可」に設定され、前記転送条件に基づくデータ転送が行われている間に、前記バスに接続されているマスターデバイスから新たな転送条件が送信された場合に、当該マスターデバイスの識別子がマスターデバイス記憶手段に記憶されているか否かを判定するマスターデバイス判定手段と
    を有し、
    前記転送可否判定手段は、前記マスターデバイスからの新たな転送条件の送信時に前記フラグが「不許可」に設定され、かつ、新たな転送条件を送信した前記マスターデバイスの識別子が前記マスターデバイス記憶手段に記憶されていない場合に、「転送不可」と判定する
    ことを特徴とする請求項6記載のDMAコントローラ。
  8. 前記データ転送制御手段は、
    前記データ転送を行わせている間に、前記バスに接続されている前記マスターデバイス及び前記スレーブデバイスからのデータ転送中断要求を受取る中断要求受取手段と、
    データ転送中断要求の要求元がマスターデバイスであるか否かを判定する中断要求元判定手段と、
    前記要求元がマスターデバイスである場合に、前記要求元のアクセス判定ランクを受取り、前記要求元のアクセス判定ランクと前記受取手段が受取った前記マスターデバイスのアクセス判定ランクとの比較結果に基づいて、前記データ転送を中断させるか否かを判定する中断判定手段と
    中断させると判定された場合に、前記データ転送を中断させるデータ転送中断手段と
    を有することを特徴とする請求項1〜7の何れかに記載のDMAコントローラ。
  9. 前記DMAコントローラは、予め設定された下限のアクセス判定ランクを記憶している下限ランク記憶手段と、
    前記転送条件を送信した前記マスターデバイスからアクセス判定ランクを受取り、記憶するランク記憶手段と
    前記転送条件を記憶する条件記憶手段と
    を備え、
    前記データ転送可否判定は、前記比較結果において、前記ランク記憶手段に記憶している前記マスターデバイスのアクセス判定ランクが前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクよりも小さくない場合に、「転送可」とされ、小さい場合に「転送不可」とされ、
    前記中断判定手段は、前記要求元のアクセス判定ランクが前記ランク記憶手段に記憶しているアクセス判定ランクよりも小さくない場合に、前記データ転送を中断させると判定し、
    前記データ転送制御手段は、
    中断させると判定した場合に、前記条件記憶手段に記憶している転送条件を削除する削除手段と、
    前記ランク記憶手段に記憶しているアクセス判定ランクに替えて下限のアクセス判定ランクを記憶させるランク切替手段と
    を有することを特徴とする請求項8記載のDMAコントローラ。
  10. 前記データ転送可否判定は、前記比較結果において、前記マスターデバイスのアクセス判定ランクが前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクよりも小さくない場合に、「転送可」とされ、小さい場合に「転送不可」とされ、
    前記データ転送制御手段は、
    予め設定された上限のアクセス判定ランクを記憶している上限ランク記憶手段と、
    前記マスターデバイスのアクセス判定ランクと上限のアクセス判定ランクとを比較する比較手段と
    を有し、
    前記マスターデバイスのアクセス判定ランクの方が上限のアクセス判定ランクより大きくない場合に、前記データ転送可否判定結果が「転送可」である場合に、前記データ転送を行わせ、
    前記マスターデバイスのアクセス判定ランクの方が上限のアクセス判定ランクより大きい場合に、上限のアクセス判定ランクが、前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクより小さくない場合に、前記データ転送を行わせる
    ことを特徴とする請求項1記載のDMAコントローラ。
  11. 前記DMAコントローラは、複数のマスターデバイスと前記バスで接続され、
    前記データ転送制御手段は、前記マスターデバイスのアクセス判定ランクの方が上限のアクセス判定ランクより大きくない場合に、前記マスターデバイスのアクセス判定ランクを記憶し、
    前記マスターデバイスのアクセス判定ランクの方が上限のアクセス判定ランクより大きい場合に、上限のアクセス判定ランクを記憶するランク記憶手段を有し、
    前記データ転送制御手段は、前記バスに接続されている他のマスターデバイスのアクセス判定ランクが前記ランク記憶手段に記憶しているアクセス判定ランクよりも小さい場合に、前記バスに接続されている他のマスターデバイスから送信される転送条件に基づくデータ転送を抑止させる
    ことを特徴とする請求項10記載のDMAコントローラ。
  12. 前記データ転送制御手段は、
    前記バスに接続されている前記マスターデバイス及び前記スレーブデバイスからのデータ転送中断要求を受取る中断要求受取手段と、
    データ転送中断要求の要求元がマスターデバイスであるか否かを判定する中断要求元判定手段と、
    前記要求元がマスターデバイスである場合に、前記要求元のアクセス判定ランクを受取り、前記要求元のアクセス判定ランクと前記ランク記憶手段に記憶している前記マスターデバイスのアクセス判定ランクとの比較結果に基づいて、前記データ転送を中断させるか否かを判定する中断判定手段と、
    中断させると判定された場合に、前記データ転送を中断させるデータ転送中断手段と
    を有することを特徴とする請求項11に記載のDMAコントローラ。
  13. 前記DMAコントローラは、前記転送条件を記憶する条件記憶手段を備え、
    前記中断判定手段は、前記要求元のアクセス判定ランクが記憶しているアクセス判定ランクよりも小さくない場合に、前記データ転送を中断させると判定し、
    前記データ転送制御手段は、
    中断させると判定した場合に、前記条件記憶手段に記憶している転送条件を削除する削除手段と、
    前記ランク記憶手段に記憶しているアクセス判定ランクに替えて上限のアクセス判定ランクを記憶させるランク切替手段と
    を有することを特徴とする請求項12記載のDMAコントローラ。
  14. 前記DMAコントローラは、前記マスターデバイスと前記スレーブデバイスの保持している各アクセス判定ランクよりも大きくない下限のアクセス判定ランクを記憶している下限ランク記憶手段を備え、
    前記削除手段は、前記データ転送が完了した場合に、前記条件記憶手段に記憶している転送条件を削除し、
    前記ランク切替手段は、前記ランク記憶手段に、記憶しているアクセス判定ランクに替えて下限のアクセス判定ランクを記憶させる
    ことを特徴とする請求項13記載のDMAコントローラ。
  15. 前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクが、当該スレーブデバイスが保持しているアクセス判定ランクより小さくない場合に限り、アクセス要求元からのアクセスを許可し、
    前記データ転送制御手段は、前記スレーブデバイスのアクセス判定ランクより小さくない上限のアクセス判定ランクを記憶するランク記憶手段と、
    前記転送条件を記憶する条件記憶手段と、
    ランク記憶手段に記憶されている上限のアクセス判定ランクを、記憶している前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに送信して、アクセスの許可を要求するアクセス要求手段と
    を有し、
    前記データ転送可否判定手段は、前記スレーブデバイスによるアクセス許否判定結果と前記比較手段による比較結果とに基づいて前記データ転送の可否判定を行う
    ことを特徴とする請求項2〜4の何れかに記載のDMAコントローラ。
  16. 前記データ転送制御手段は、
    前記バスに接続されている前記マスターデバイス及び前記スレーブデバイスからのデータ転送中断要求を受取る中断要求受取手段と、
    データ転送中断要求の要求元がマスターデバイスであるか否かを判定する中断要求元判定手段と、
    前記要求元がマスターデバイスである場合に、前記要求元のアクセス判定ランクを受取り、前記要求元のアクセス判定ランクと記憶している上限のアクセス判定ランクとの比較結果に基づいて、前記データ転送を中断させるか否かを判定する中断判定手段と
    中断させると判定された場合に、前記データ転送を中断させるデータ転送中断手段と
    を有することを特徴とする請求項15記載のDMAコントローラ。
  17. 前記データ転送制御手段は、前記データ転送を中断させると判定した場合に、前記条件記憶手段に記憶している転送条件を削除する削除手段
    を有することを特徴とする請求項16記載のDMAコントローラ。
  18. 前記データ転送制御手段は、
    前記マスターデバイスからの認証要求に応じて認証処理を行う認証手段と、
    前記マスターデバイスと前記スレーブデバイスの保持している各アクセス判定ランクよりも大きくない下限のアクセス判定ランクを記憶している下限ランク記憶手段と
    を有し、
    認証できた場合に、前記データ転送可否判定結果が「転送可」である場合に、前記データ転送を行わせ、
    認証できなかった場合に、下限のアクセス判定ランクが、前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクよりも小さくない場合に限り、前記データ転送を行わせる
    ことを特徴とする請求項1記載のDMAコントローラ。
  19. 前記データ転送制御手段は、
    前記データ転送を行わせている間に、前記バスに接続されている前記マスターデバイス及び前記スレーブデバイスからのデータ転送中断要求を受取る中断要求受取手段と、
    データ転送中断要求の要求元がマスターデバイスであるか否かを判定する中断要求元判定手段と、
    前記要求元がマスターデバイスである場合に、前記要求元のアクセス判定ランクを受取り、前記要求元のアクセス判定ランクと前記受取手段が受取った前記マスターデバイスのアクセス判定ランクとの比較結果に基づいて、前記データ転送を中断させるか否かを判定する中断判定手段と、
    中断させると判定された場合に、前記データ転送を中断させるデータ転送中断手段と
    を有することを特徴とする請求項18記載のDMAコントローラ。
  20. 前記DMAコントローラは、
    前記マスターデバイスのアクセス判定ランクを記憶するランク記憶手段と
    前記転送条件を記憶する条件記憶手段と
    を備え、
    前記データ転送可否判定は、前記比較結果において、前記ランク記憶手段に記憶している前記マスターデバイスのアクセス判定ランクが前記転送条件の指定する転送先及び転送元のスレーブデバイスの保持しているアクセス判定ランクよりも小さくない場合に、「転送可」とされ、小さい場合に、「転送不可」とされ、
    前記中断判定手段は、前記要求元のアクセス判定ランクが記憶しているアクセス判定ランクよりも小さくない場合に、前記データ転送を中断させると判定し、
    前記データ転送制御手段は、
    中断させると判定された場合に、前記条件記憶手段に記憶している転送条件を削除する削除手段と、
    前記ランク記憶手段に記憶しているアクセス判定ランクに替えて下限のアクセス判定ランクを記憶させるランク切替手段と
    を有することを特徴とする請求項19記載のDMAコントローラ。
  21. 前記データ転送制御手段は、
    データ転送を行う対象となる転送元及び転送先のデータ格納領域の組と当該組の転送先及び転送元のデータ格納領域を有する前記スレーブデバイスのアクセス判定ランクとの対応関係を示すスレーブデバイス間テーブルを記憶するテーブル記憶手段と、
    前記スレーブデバイス間テーブルにおいて、前記転送条件において指定された転送元及び転送先のデータ格納領域の属する組と対応付けられているアクセス判定ランクと前記マスターデバイスのアクセス判定ランクとの比較をする比較手段と
    前記比較結果に基づいて前記データ転送の可否判定を行う転送可否判定手段と
    を有することを特徴とする請求項1記載のDMAコントローラ。
  22. 前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクと当該スレーブデバイスが保持しているアクセス判定ランクとの比較結果に基づいてアクセス要求元からのアクセスの許否を判定し、
    前記データ転送制御手段は、前記マスターデバイスのアクセス判定ランクを前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに送信し、アクセスの許可を要求する要求手段と、
    前記スレーブデバイスによるアクセス許否判定結果に基づいて前記データ転送の可否判定を行う転送可否判定手段と
    を有することを特徴とする請求項1記載のDMAコントローラ。
  23. マスターデバイスとデータ格納領域を有する複数のスレーブデバイスにバスで接続され、マスターデバイスから送信される転送先及び転送元のスレーブデバイスのデータ格納領域を指定する転送条件に基づいて、転送元のデータ格納領域から転送先のデータ格納領域へのデータ転送を行わせるDMAコントローラに用いるデータ転送制御方法であって、
    前記マスターデバイスと前記スレーブデバイスは、前記バスに接続されている他のデバイスからのアクセスを、前記スレーブデバイスが許可するか否かの判定基準となるアクセス判定ランクを保持し、
    前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクと当該スレーブデバイスが保持しているアクセス判定ランクとの比較結果に基づいてアクセス要求元からのアクセスの許否を判定し、
    前記DMAコントローラは、条件記憶手段を備え、
    前記データ転送方法は、
    前記マスターデバイスから送信された前記転送条件を前記条件記憶手段に格納する格納ステップと、
    前記転送条件を送信した前記マスターデバイスに、前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに当該マスターデバイスが保持しているアクセス判定ランクを送信させて、アクセスの許可を要求させる送信要求ステップと、
    前記スレーブデバイスによってアクセスを許可された場合に、前記データ転送を行わせるデータ転送制御ステップと
    を含むことを特徴とするデータ転送制御方法。
  24. マスターデバイスとデータ格納領域を有する複数のスレーブデバイスにバスで接続され、マスターデバイスから送信される転送先及び転送元のデータ格納領域を指定する転送条件に基づいてデータ転送を行わせるDMAコントローラに用いるデータ転送制御方法であって、
    前記マスターデバイスと前記スレーブデバイスは、データ転送可否の判定基準となるアクセス判定ランクを保持し、
    前記スレーブデバイスは、アクセス要求元から送信されたアクセス判定ランクと当該スレーブデバイスが保持しているアクセス判定ランクとの比較結果に基づいてアクセス要求元からのアクセスの許否を判定し、
    前記データ転送制御方法は、
    前記マスターデバイスのアクセス判定ランクを前記転送条件の指定する転送先及び転送元のデータ格納領域を有する前記スレーブデバイスに送信し、アクセスの許可を要求する要求ステップと、
    前記スレーブデバイスによるアクセス許否判定結果に基づいて前記データ転送の可否判定を行い、判定結果が「転送可」である場合に、前記データ転送を行わせ、判定結果が「転送不可」である場合に前記データ転送を抑止させるデータ転送制御ステップと
    を含むことを特徴とするデータ転送制御方法。
JP2005049398A 2005-02-24 2005-02-24 Dmaコントローラ及びデータ転送制御方法 Expired - Fee Related JP4668645B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005049398A JP4668645B2 (ja) 2005-02-24 2005-02-24 Dmaコントローラ及びデータ転送制御方法
US11/359,866 US7457891B2 (en) 2005-02-24 2006-02-23 DMA controller connected to master and slave device wherein a rank is used for judging data transfer permissibility

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005049398A JP4668645B2 (ja) 2005-02-24 2005-02-24 Dmaコントローラ及びデータ転送制御方法

Publications (2)

Publication Number Publication Date
JP2006235982A JP2006235982A (ja) 2006-09-07
JP4668645B2 true JP4668645B2 (ja) 2011-04-13

Family

ID=36972348

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005049398A Expired - Fee Related JP4668645B2 (ja) 2005-02-24 2005-02-24 Dmaコントローラ及びデータ転送制御方法

Country Status (2)

Country Link
US (1) US7457891B2 (ja)
JP (1) JP4668645B2 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7386642B2 (en) * 2005-01-28 2008-06-10 Sony Computer Entertainment Inc. IO direct memory access system and method
US7680972B2 (en) * 2005-02-04 2010-03-16 Sony Computer Entertainment Inc. Micro interrupt handler
JP2006216042A (ja) * 2005-02-04 2006-08-17 Sony Computer Entertainment Inc 割り込み処理のためのシステムおよび方法
US7496695B2 (en) 2005-09-29 2009-02-24 P.A. Semi, Inc. Unified DMA
US7721018B2 (en) * 2006-08-24 2010-05-18 Microchip Technology Incorporated Direct memory access controller with flow control
US8510509B2 (en) * 2007-12-18 2013-08-13 International Business Machines Corporation Data transfer to memory over an input/output (I/O) interconnect
US8711729B2 (en) * 2008-01-11 2014-04-29 Cisco Technology, Inc. Host route convergence based on sequence values
US20090248910A1 (en) * 2008-04-01 2009-10-01 Apple Inc. Central dma with arbitrary processing functions
KR101715866B1 (ko) * 2010-08-26 2017-03-13 삼성전자주식회사 멀티셀 통신 시스템에서 협력 랭크에 기초하여 적응적으로 스케줄링을 수행하는 방법 및 장치
US8849977B2 (en) * 2012-03-09 2014-09-30 Telefonaktiebolaget Lm Ericsson (Publ) Method and a control node in an overlay network
US9892077B2 (en) 2013-10-07 2018-02-13 Qualcomm Incorporated Camera control interface slave device to slave device communication
US10043480B2 (en) * 2014-08-29 2018-08-07 Lattice Semiconductor Corporation Inter-device conflict resolution on a multimedia link
US10860541B2 (en) 2016-04-11 2020-12-08 Johnson Controls Fire Protection LP Fire detection system with distributed file system
US20170293478A1 (en) * 2016-04-11 2017-10-12 Tyco Fire & Security Gmbh Fire detection system with automatic firmware updating

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11282795A (ja) * 1998-03-27 1999-10-15 Nec Saitama Ltd バス調停装置
JP2001297054A (ja) * 2000-04-11 2001-10-26 Sharp Corp Dmaの転送逸脱防止方法及びdmaコントローラ
US6772254B2 (en) * 2000-06-21 2004-08-03 International Business Machines Corporation Multi-master computer system with overlapped read and write operations and scalable address pipelining
US6857035B1 (en) * 2001-09-13 2005-02-15 Altera Corporation Methods and apparatus for bus mastering and arbitration
JP2003281076A (ja) * 2002-03-27 2003-10-03 Nec Microsystems Ltd Dmaコントローラの不正アクセス検出装置、不正アクセス検出方法およびそのプログラム
US7139909B2 (en) * 2003-10-16 2006-11-21 International Business Machines Corporation Technique for system initial program load or boot-up of electronic devices and systems

Also Published As

Publication number Publication date
JP2006235982A (ja) 2006-09-07
US7457891B2 (en) 2008-11-25
US20060206634A1 (en) 2006-09-14

Similar Documents

Publication Publication Date Title
JP4668645B2 (ja) Dmaコントローラ及びデータ転送制御方法
CN108885672B (zh) 访问管理方法、信息处理装置、程序及记录介质
CN104025544B (zh) 机密信息泄露防止系统和机密信息泄露防止方法
EP2024864A1 (en) Method and apparatus for creating and applying secure file identifier of rights object by using random numbers
US9027154B2 (en) Method, apparatus and system for managing document rights
CN106934295A (zh) 一种文档处理方法及装置
JP2006344212A (ja) 電子文書のセキュアな印刷
JP2008001089A (ja) 印刷プログラムおよび印刷装置
JP2014036335A (ja) ジョブ処理システム、情報処理システム、ジョブ処理方法、情報処理方法、およびプログラム
JP2005196257A (ja) マイクロプロセッサ
JP2009536393A (ja) 保安データの安全な移動を提供する装置および方法
JP4735331B2 (ja) 仮想マシンを利用した情報処理装置および情報処理システム、並びに、アクセス制御方法
US9530021B2 (en) Portable recording medium, system including the portable recording medium, and data recovery method of the portable recording medium
JP4289817B2 (ja) 情報管理装置及び方法
JP2009230583A (ja) ファイル共有方法及びシステム、並びに、サーバ装置、クライアント装置、及びプログラム
JP4813768B2 (ja) リソース管理装置、リソース管理プログラム、及び記録媒体
CN119483954A (zh) 密码运算方法及密码芯片
JP4972692B2 (ja) Dma制御装置およびデータ転送方法
JP6394995B2 (ja) 画像形成装置
US9922199B2 (en) Document security tool
JP4801777B2 (ja) 認証処理システム、及び認証処理方法、並びにプログラム
JP2005173796A (ja) 電子文書管理ソフトウエアにおけるドキュメントアクセス制御
JP2009053771A (ja) 電子文書管理サーバ
JP2019213017A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
EP3054398B1 (en) Method and system for performing secure i/o operation in a pluggable flash storage device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080107

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101014

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101019

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101213

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110105

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140121

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees