(57)【要約】  本開示の実施形態は、間接アクセスメモリコントローラ用の保護装置を提供する。保護装置は、バスアドレスを監視して、間接アクセスメモリコントローラにアクセスするバスの操作タイプを検出するように、操作タイプがウィンドウレジスタ操作である場合に、対応するウィンドウレジスタを更新するように、操作タイプがレジスタ制御操作である場合に、許可認証を開始するように、且つ操作タイプが許可リスト構成操作である場合に、リストエントリ構成を実行するように構成されたバス監視ユニットと、相異なるアクセスタイプの操作アドレスを格納するように構成されたウィンドウレジスタユニットと、メモリ空間を幾つかの仮想メモリ保護エリアに分割するように、且つ各メモリエリア用にアクセス許可属性を独立して設定するように構成された許可リストユニットと、許可違反アクセスが発生した場合に実行される後続の操作を処理するように構成された不正操作処理ユニットと、を含むことができる。本開示の実施形態は、バスと間接アクセスメモリコントローラとの間に保護装置を単に追加することによって、このタイプのメモリ用のセキュリティ保護を実施することができ、セキュリティ機能は、間接アクセスメモリコントローラを修正せずに、オリジナルのメモリ制御モジュールに追加することができる。
2021507361.tif 000002
【特許請求の範囲】
【請求項１】
メモリに関連する間接アクセスメモリコントローラ用の保護装置であって、
バスアドレスを有するメモリアクセス要求を監視するように、且つレジスタ制御操作を検出するように構成されたバス監視ユニットと、
前記レジスタ制御操作に基づいて前記バス監視ユニットから操作アドレスを受信するように、且つ前記受信された操作アドレスに基づいて相異なるアクセスタイプにおけるアクセスタイプを選択するように構成されたウィンドウレジスタユニットと、
前記バス監視ユニットから前記バスアドレス及び前記ウィンドウレジスタユニットから前記選択されたアクセスタイプを受信するように、且つ許可リスト及び選択されたアクセスタイプに従って前記バスアドレスを評価すること、及び前記バスアドレスに対応する許可属性を前記許可リストから決定することによって、前記バスアドレスを認証するように構成された許可リストユニットと、
を含む保護装置。
【請求項２】
許可違反アクセスが発生した場合に実行される後続の操作を処理するように構成された不正操作処理ユニットであって、前記許可違反アクセスが、前記認証に基づいて前記許可リストユニットによって決定される不正操作処理ユニットを更に含む、請求項１に記載の保護装置。
【請求項３】
前記不正操作処理ユニットが、前記アクセス許可に違反する前記バスアドレスを有するメモリアクセス要求に応じて、バスエラーを返すか、インジケータ信号を送るか、又はどんな他の処理もなしにメモリアクセス要求を無効にするように構成される、請求項２に記載の保護装置。
【請求項４】
前記許可リストユニットが、前記メモリのメモリ空間を幾つかの仮想メモリ保護エリアに分割するように、且つ各メモリエリア用にアクセス権属性を設定するように構成される、請求項１〜３のいずれか一項に記載の保護装置。
【請求項５】
前記メモリが、前記間接アクセスメモリコントローラを通してアクセスされるとき、ターゲットアドレスが、前記コントローラによって指定されたウィンドウレジスタに最初に格納され、次に前記コントローラにおける対応するトリガレジスタが構成される場合に、前記間接アクセスメモリコントローラが、前記メモリにアクセスするためにトリガされる、請求項１〜４のいずれか一項に記載の保護装置。
【請求項６】
前記メモリアクセス要求が、前記保護装置をイネーブルにするか又は構成する許可インジケータ入力ビットを含む、請求項１〜５のいずれか一項に記載の保護装置。
【請求項７】
前記保護装置が、リストエントリアドレス範囲の構成又は許可属性レジスタの構成によって、構成され得る、請求項６に記載の保護装置。
【請求項８】
前記バス監視ユニットが、ウィンドウレジスタ操作を検出した後で、前記ウィンドウレジスタユニットにおける対応するウィンドウレジスタを更新するように更に構成される、請求項１〜７のいずれか一項に記載の保護装置。
【請求項９】
前記対応するウィンドウレジスタが、読み出しウィンドウレジスタ、書き込みウィンドウレジスタ、又は消去ウィンドウレジスタを含む、請求項１〜８のいずれか一項に記載の保護装置。
【請求項１０】
前記バス監視ユニットが、許可リスト構成操作を検出した後で、前記許可リストユニットにおける対応する許可リストエントリにバス値を送信するように構成される、請求項１〜９のいずれか一項に記載の保護装置。
【請求項１１】
前記バス値が、セキュリティアドレス範囲又は許可属性を含む、請求項１０に記載の保護装置。
【請求項１２】
前記保護装置が、前記バス監視ユニットが前記レジスタ制御操作を検出した後で、前記許可リストユニットにおける許可リストエントリにウィンドウアドレス情報をアドレスとして認証用に入力するように更に構成される、請求項１〜１１のいずれか一項に記載の保護装置。
【請求項１３】
前記許可リストが、次の内容、即ち、リストエントリイネーブルビット、ベースアドレス、アドレスフィールドサイズ、及び許可属性を有する１つ又は複数の許可リストエントリを含み、前記リストエントリイネーブルビットが、前記リストエントリが有効かどうかを示し、前記ベースアドレス及びアドレスフィールドサイズが、前記リストエントリによって保護されるアドレス範囲を表し、前記許可属性が、前記アドレスフィールドの前記許可を表す、請求項１〜１２のいずれか一項に記載の保護装置。
【請求項１４】
前記保護機能のイネーブルメントを表すように構成された広域イネーブルレジスタを更に含む、請求項１〜１３のいずれか一項に記載の保護装置。
【請求項１５】
メモリと、
前記メモリに関連する間接アクセスメモリコントローラと、
前記間接アクセスメモリコントローラに通信可能に結合された保護装置であって、
バスアドレスを有するメモリアクセス要求を監視するように、且つレジスタ制御操作を検出するように構成されたバス監視ユニットと、
前記レジスタ制御操作に基づいて前記バス監視ユニットから操作アドレスを受信するように、且つ前記受信された操作アドレスに基づいて相異なるアクセスタイプにおけるアクセスタイプを選択するように構成されたウィンドウレジスタユニットと、
前記バス監視ユニットから前記バスアドレス及び前記ウィンドウレジスタユニットから前記選択されたアクセスタイプを受信するように、且つ許可リスト及び選択されたアクセスタイプに従って前記バスアドレスを評価すること、及び前記バスアドレスに対応する許可属性を前記許可リストから決定することによって、前記バスアドレスを認証するように構成された許可リストユニットと、を含む保護装置と、
を含むシステム。 
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
[001]  本開示は、２０１７年１２月１５日出願の中国出願第２０１７１１３４４５５９．６号の優先権の利益を主張し、その出願は、その全体において参照によって本明細書で援用される。
【背景技術】
【０００２】
背景
[002]  モバイルインターネット及びモノのインターネットの急速な発展と共に、チップセキュリティがますます重要になる。一般に、セキュリティチップソフトウェアは、信頼される領域及び信頼されない領域をサポートするチップを必要とする。信頼される領域は、独立したハードウェア資源を有する。システムは、信頼される領域の資源に機密及び重要データを置く。通常のデータ及びアプリケーションは、信頼されない領域に置かれ、信頼されない領域は、信頼される領域の資源にアクセスすることができない。これらの要件は、割り込み保護、周辺機器保護、及びメモリ保護などのハードウェアサポートを必要とし、それらにおけるメモリ保護は、極めて重要な部分である。
【０００３】
[003]  ＲＡＭ用のメモリ保護ユニットなど、直接アクセスメモリ用の多くの従来の保護装置が存在する。このタイプの保護装置は、バス上のアドレス（メモリユニットのアクセスアドレスとしても働く）を単に認証することによって、不正アクセスを回避することができる。しかしながら、他の幾つかのメモリは、バスアドレスを直接用いることによってはアクセスすることができない。代わりに、メモリアクセスアドレスが、メモリコントローラの特定のレジスタに最初に設定される必要があり、次に、フラッシュコントローラなどのメモリコントローラは、メモリにアクセスするためにトリガされる。
【発明の概要】
【課題を解決するための手段】
【０００４】
本開示の概要
[004]  本開示の実施形態は、間接アクセスメモリコントローラ用の保護装置を提供する。保護装置は、バスアドレスを監視するように、且つ間接アクセスメモリコントローラに対してバスによって行われるアクセスの操作タイプを検出するように構成されたバス監視ユニットと、相異なるアクセスタイプの操作アドレスを格納するように構成されたウィンドウレジスタユニットと、メモリ空間を幾つかの仮想メモリ保護エリアに分割するように、且つ各メモリエリア用にアクセス許可属性（例えば読み出し可能、書き込み可能、又は消去可能）を独立して設定するように構成された許可リストユニットと、許可違反アクセスが発生した場合に実行される後続の操作を処理するように構成された不正操作処理ユニットと、を含むことができる。
【図面の簡単な説明】
【０００５】
図面の簡単な説明
【図１】[005]本開示の幾つかの実施形態による、ＳＯＣチップシステムにおける保護装置の例示的な位置の概略図である。
【図２】[006]本開示の幾つかの実施形態による、保護装置におけるコンポーネントのそれぞれの間の接続関係を示す例示的な図である。
【図３】[007]本開示の幾つかの実施形態による、許可リストエントリの例示的な内容の概略図である。
【発明を実施するための形態】
【０００６】
詳細な説明
[008]  本開示の実施形態における目的、技術的解決法、及び利点をより明確にするために、本開示の実施形態における技術的解決法は、本開示の実施形態における添付の図面に関連して以下で説明される。明らかに、説明される実施形態は、本開示の実施形態の全てではなく、単に幾つかである。本開示の実施形態に基づいて、創造的な努力なしに当業者によって取得される全ての他の実施形態は、本開示の保護範囲に属するものとする。
【０００７】
[009]  上記で示されたように、間接アクセスメモリを保護するための必要が存在する。所望の保護機能を備えた新しいメモリコントローラを作成することは、作業負荷を増加させ、且つチップ開発サイクルを引き延ばすことになろう。チップセキュリティが、ますます重要になるにつれて、共通チップのセキュリティ機能をアップグレードするための、且つセキュリティアップグレードプロセスを加速する方法を発見するための非常に大きな需要が現れる。間接アクセスメモリコントローラの低セキュリティという欠陥を克服するために、本開示は、間接アクセスメモリコントローラ用のメモリ保護装置を提供する。このタイプのメモリ用のセキュリティ保護は、バスと間接アクセスメモリコントローラとの間にメモリ保護装置を単に追加することによって、実施することができ、セキュリティ機能は、間接アクセスメモリコントローラを修正せずに、オリジナルのメモリ制御モジュールに追加することができる。
【０００８】
[010]  本開示の幾つかの実施形態は、間接アクセスメモリコントローラ用の保護機能を追加するための装置を提供する。図１は、ＳＯＣチップシステム１００における保護装置の位置の概略図である。図１に示されているように、ＳＯＣチップシステム１００は、直接メモリアクセス（ＤＭＡ）１０１、プロセッサ１０２、保護装置１０３を含むことができ、それらの全ては、バス１０６を介して接続される。本開示の実施形態において、間接アクセスメモリは、間接アクセスメモリコントローラ１０４及びメモリ１０５にアクセスしようと試みる場合に、保護装置１０３を用いることができる。
【０００９】
[011]  図２は、本開示の幾つかの実施形態による、保護装置１０３におけるコンポーネントのそれぞれの間の接続関係を示す図である。図２を参照すると、保護装置１０３は、バス監視ユニット２０２、ウィンドウレジスタユニット２０５、許可リストユニット２０４、及び不正操作処理ユニット２１０を含む。
【００１０】
[012]  バス監視ユニット２０２は、操作タイプがウィンドウレジスタ操作である場合に、ウィンドウレジスタ２０６〜２０８の対応するウィンドウレジスタを更新するために、操作タイプがレジスタ制御操作である場合に、許可認証を開始するために、且つ操作タイプが許可リスト構成操作である場合に、リストエントリ構成を実行するために、バスアドレスを監視し、且つ間接アクセスメモリコントローラ１０４にアクセスするバスの操作タイプを検出するように構成される。
【００１１】
[013]  ウィンドウレジスタユニット２０５は、ウィンドウレジスタ２０６〜２０８における相異なるアクセスタイプの操作アドレスを格納するように構成される。
【００１２】
[014]  許可リストユニット２０４は、フラッシュメモリ１０５などのメモリ空間を幾つかの仮想メモリ保護エリアに分割するように、且つ各メモリエリア用のアクセス許可属性を独立して設定するように構成される。
【００１３】
[015]  不正操作処理ユニット２１０は、許可違反アクセスが発生した後で実行される後続の操作を処理するように構成される。
【００１４】
[016]  更に、幾つかの実施形態において、メモリが、間接アクセスメモリコントローラを通してアクセスされる場合に、幾つかの低速フラッシュコントローラ、Ｅ２ＰＲＯＭ（電気的消去可能プログラム可能読み出し専用メモリ）コントローラ、間接アクセスＤＤＲ（ダブルデータレート）コントローラなどのメモリコントローラは、ターゲットアドレスが、コントローラによって指定されたウィンドウレジスタ２０６〜２０８におけるウィンドウレジスタに最初に格納され、次に、コントローラにおける対応するトリガレジスタが構成された後でのみ、メモリにアクセスするためにトリガされ得る。
【００１５】
[017]  幾つかの実施形態において、保護装置１０３の構成は、特権状態におけるアクセスによってのみイネーブルにされ得る。特定の状態が、メモリアクセス要求における許可インジケータ入力ビットによって示され、保護装置１０３は、入力ビットが有効な場合にのみ、イネーブルにされ且つ構成され得る。構成操作は、リストエントリアドレス範囲を構成すること、及び許可属性レジスタを構成することを含む。
【００１６】
[018]  幾つかの実施形態において、ウィンドウレジスタ２０６〜２０８における対応するウィンドウレジスタは、ウィンドウレジスタ操作が検出された後で更新される。対応するウィンドウレジスタは、読み出しウィンドウレジスタ２０６、書き込みウィンドウレジスタ２０７、及び消去ウィンドウレジスタ２０８を含む。各操作が、独立ウィンドウレジスタをそれぞれ有し得るか、又は多数の操作が、同じウィンドウレジスタを共有し得る。
【００１７】
[019]  幾つかの実施形態において、バス監視ユニット２０２では、バス値が、許可リスト構成操作を検出した後で、許可リストユニット２０４における対応する許可リストエントリ２１１に送信される。許可リスト構成操作は、セキュリティアドレス範囲又は許可属性を構成することを含むことができる。
【００１８】
[020]  幾つかの実施形態において、バス１０６が、メモリ１０５に対して操作（例えば読み出し、書き込み、消去等）を実行しようと試みる場合に、バス１０６は、相異なるアクセスタイプの操作アドレスを構成するためのメモリアクセス要求を送信し、操作アドレスは、ウィンドウレジスタユニット２０５に格納される。次に、バス監視ユニット２０２は、レジスタ制御操作として要求を検出する。レジスタ制御操作を検出した後で、バス監視ユニットは、メモリアクセス要求内のバスアドレスを認証用に許可リストエントリ２１１に送信する。加えて、ウィンドウレジスタユニット２０５は、認証の一部として、対応するウィンドウレジスタのアクセスタイプをアドレスとして許可リストエントリ２１１に送信する。
【００１９】
[021]  図３を参照すると、許可リストユニット２０４は、１つ又は複数のリストエントリを含み、各リストエントリ２１１は、次の内容、即ちリストエントリイネーブルビット３０１、ベースアドレス３０２、アドレスフィールドサイズ３０３、及び許可属性３０４を含む。リストエントリイネーブルビット３０１は、リストエントリが有効かどうかを示す。ベースアドレス３０２及びアドレスフィールドサイズ３０３は、リストエントリによって保護されるアドレス範囲を表す。許可属性３０４は、アドレスフィールドの許可、例えばそれが、読み出し可能かどうか、書き込み可能かどうか、消去可能かどうか等を表す。
【００２０】
[022]  再び図２を参照すると、バス監視ユニット２０２は、許可リストユニット２０４にメモリアクセス要求を送信する。許可リストユニット２０４は、メモリアクセス要求内のバスアドレス及びウィンドウレジスタユニット２０５からのアクセスタイプを受信し、許可リストエントリ２１１及びアクセスタイプに従ってバスアドレスを評価し、且つバスアドレスに対応する許可属性３０４を許可リストエントリ２１１から決定する。メモリアクセス要求が、許可属性３０４に違反する場合に、許可違反アクセスが発生し、不正処理ユニット２１０は、次の処理、即ち、（１）バスエラーを返すこと、（２）割り込みなどのインジケータ信号を送ること、及び（３）他のいかなる処理もなしに、メモリアクセス要求を無効にすることの１つ、２つ又は全てを実行することができる。
【００２１】
[023]  幾つかの実施形態において、保護装置１０３は、保護装置１０３が保護機能をイネーブルにすることを示すように構成された広域イネーブルレジスタを更に含む。
【００２２】
[024]  本明細書で用いられているように、特に別段の言明がない限り、用語「又は」は、実行不可能な場合を除いて、全ての可能な組み合わせを包含する。例えば、データベースが、Ａ又はＢを含み得ることが言明される場合に、特に別段の言明がないか又は実行不可能でない限り、データベースは、Ａ若しくはＢ、又はＡ及びＢを含んでもよい。第２の例として、データベースが、Ａ、Ｂ又はＣを含み得ることが言明される場合に、特に別段の言明がないか又は実行不可能でない限り、データベースは、Ａか、Ｂか、Ｃか、Ａ及びＢか、Ａ及びＣか、Ｂ及びＣか、又はＡ及びＢ及びＣを含んでもよい。
【００２３】
[025]  本開示の特定の実装形態が、上記で説明されているが、本開示の保護範囲は、特定の実施形態に限定されない。本開示の趣旨及び原理から逸脱せずに行われるいかなる修正、等価な置き換え、及び改善も、本開示の保護範囲内に入るものとする。
【図１】
2021507361.tif 000003
【図２】
2021507361.tif 000004
【図３】
2021507361.tif 000005
【国際調査報告】
2021507361.tif 000006
2021507361.tif 000007