JP2003523554A - 同種のメモリを分割しかつ所定のメモリ・レンジへのインストール済みアプリケーションのアクセスを制限するためのメモリ管理方法及び装置 - Google Patents

同種のメモリを分割しかつ所定のメモリ・レンジへのインストール済みアプリケーションのアクセスを制限するためのメモリ管理方法及び装置

Info

Publication number
JP2003523554A
JP2003523554A JP2001532399A JP2001532399A JP2003523554A JP 2003523554 A JP2003523554 A JP 2003523554A JP 2001532399 A JP2001532399 A JP 2001532399A JP 2001532399 A JP2001532399 A JP 2001532399A JP 2003523554 A JP2003523554 A JP 2003523554A
Authority
JP
Japan
Prior art keywords
memory
application
processing circuit
address
data processing
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.)
Pending
Application number
JP2001532399A
Other languages
English (en)
Inventor
バーネット,フィリップ,シー.
Original Assignee
アドバンスド.テクノロジー.マテリアルス.インコーポレイテッド
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 アドバンスド.テクノロジー.マテリアルス.インコーポレイテッド filed Critical アドバンスド.テクノロジー.マテリアルス.インコーポレイテッド
Publication of JP2003523554A publication Critical patent/JP2003523554A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/145Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being virtual, e.g. for virtual blocks or segments before a translation mechanism

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Storage Device Security (AREA)
  • Non-Volatile Memory (AREA)
  • Semiconductor Memories (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

(57)【要約】 スマート・カードのような、シングル・チップ・データ処理回路に対するメモリ管理装置を開示する。メモリ管理装置は、(i)メモリ・デバイスの様々な領域に対して異質のメモリ特性を達成するために同質のメモリ・デバイスを分割し、かつ(ii)所定のメモリ・レンジへのマイクロプロセッサ・コアで実行されているインストール済みアプリケーションのアクセスを制限する。メモリ管理装置は、処理回路に対して二つのオペレーティング・モードを供給する。セキュア・カーネル・モードでは、プログラマは、ハードウェア制御を含んでいるデバイスの全てのリソースをアクセスすることができる。アプリケーション・モードでは、メモリ管理装置は、ソフトウェア・クリエータによって用いられた仮想メモリ・アドレスをインストール中にセキュア・カーネル・モードでオペレーティングシステムによってアプリケーションに割り当てられた物理的アドレスにトランスレートする。メモリ管理装置は、限界レジスタを用いてメモリ・アドレス検査を実現しかつオフセット・レジスタを用いて仮想アドレスを絶対メモリ・アドレスにトランスレートする。メモリ管理装置は、実行アプリケーションが指定メモリ場所だけをアクセスするということを確保するためにアプリケーション表からの適当な値を限界及びオフセット・レジスタにロードする。また、メモリ管理装置は、揮発性、不揮発性及びプログラム記憶域(ROM)メモリ・セグメントのような、複数のメモリ技術に通常関連付けられる異種メモリ特性を達成するためにFERAMメモリ・デバイスのような、同種のメモリ・デバイスを分割することもできる。一度分割したならば、メモリ管理装置は、各異種メモリ・タイプに対して適当な対応メモリ特性を強制する。

Description

【発明の詳細な説明】
技術分野 本発明は、一般に、スマート・カードのような、シングルチップ・データ処理
回路用メモリ管理システムに関し、より特定的には、(i)異種のメモリ特性を
達成するために同種のメモリ・デバイスを分割し、かつ(ii)所定のメモリ・
レンジへのインストール済みアプリケーションのアクセスを制限するメモリ管理
方法及び装置に関する。
【0001】 背景技術 スマートカードは、一般に、スマートカードに関連付けられた全ての処理及び
トランザクションを制御するために中央処理装置(CPU)又はマイクロプロセ
ッサを含む。マイクロプロセッサは、完全性及び不揮発性メモリに記憶されたデ
ータへのアクセスを確保する複雑かつ可変なアルゴリズムを実現するために柔軟
な方法を供給することによって、デバイスのセキュリティを増大するために用い
られる。この要求事項を可能にするために、スマートカードは、プログラム・コ
ード及び変更済みデータを記憶するための、不揮発性メモリ、及びある一定の情
報の一時記憶域のための揮発性メモリを含む。通常のスマートカードでは、各メ
モリ・タイプは、異なる技術を用いて実現されている。
【0002】 例えば、バイト消去可能EEPROMは、その技術分野におけるデバイスを変
更又は構成する、不揮発性データを記憶するために一般的に用いられ、マスクR
OM及び最新のワンタイム・リード・オンリー・メモリ(OTPROM)は、プ
ログラム・コードを記憶するために一般的に用いられる。そのような不揮発性メ
モリに記憶されたデータ及びプログラム・コードは、パワーがスマート・カード
から取り除かれたときでも、メモリにそのまま残る。揮発性メモリは、ランダム
・アクセス・メモリ(RAM)として通常実現される。各メモリ・タイプに関連
付けられたハードウェア技術は、所望のセキュリティの利益を一般的に供給する
。例えば、OTPROMのワンタイム特質は、許可プログラム・コードを不許可
プログラム・コードにより変更されること又は上書きされることから防ぐ。同様
に、RAMとしての揮発性メモリの実現は、暗号化キーのような、一時的に記憶
された情報を各使用後にクリアするということを確実にする。
【0003】 しかしながら、スマートカードの製造において、強誘電体ランダム・アクセス
・メモリ(FERAM)のような、同種のメモリ・デバイスを利用することの増
大する傾向が存在する。FERAMは、強誘電体材料の極性状態に基づき情報を
記憶するために強誘電体材料を採用している不揮発性メモリである。そのような
同種のメモリ・デバイスは、ほんの少しのエネルギーを用いる間にRAMのスピ
ード、及びROMの密度を供給すると同時に、それらが不揮発性なので望ましい
。しかしながら、そのようなメモリ・デバイスの同種の特質は、様々なハードウ
ェア技術それら自体によって以前に供給されたセキュリティ利益を取り除く。そ
こで、そのような、さもなければ同種のメモリ・デバイスを適切な対応メモリ特
性を有する揮発性、不揮発性及びプログラム記憶(ROM)領域に分割するため
の機能に対する必要性が存在する。
【0004】 ダウンズ(Downs)に付与された米国特許第5,890,199号公報は
、読取り/書込み・メモリ、リード・オンリー・メモリ(ROM)又はそれらの
組合せとして、FERAMのような、同種のメモリを選択的に構成するシステム
を開示する。一般的に、ダウンズ・システムは、アプリケーションだけのための
ソフトウェア・コードを記憶するためにメモリ・アレイの単一部分をROMとし
て分割させる。更に、ダウンズ・システムは、それぞれの使用後にクリアされる
情報の一時記憶域を供給するRAMのように動作すべく同種のメモリを構成する
ための機構を供給しない。スマート・カードで用いられるようなシングル・チッ
プ・マイクロプロセッサは、複数の機能(アプリケーション)を増大的にサポー
トしかつ所与の機能のサポートにおいて即時実行のためにアプリケーションをダ
ウンロードできなければならない。現在、シングル・チップ・マイクロプロセッ
サは、インストール済みアプリケーションを不適切に破損されること又はさもな
ければソフトウェア制御を用いてチップに記憶された機密情報をアクセスするこ
とから防ぐ。しかしながら、ソフトウェア実現型アプリケーション・アクセス制
御機構は、フィールドにロードすることができるソフトウェアを含む、組込まれ
たソフトウェアの全体の保全性に依存する。
【0005】 理想的には、システムは、第3者にアプリケーションを生成させかつそれを標
準カードにロードさせ、故意のアタックを許容するソフトウェアの保全性に対す
る制御を取り除く。これは、例えば、(直接的に2進を実行しているマイクロプ
ロセッサとは対照的に)コマンド・シーケンスを間接的に実行するカードにイン
タプリタをプログラミングすることによって克服されうる。しかしながら、この
技法は、コスト依存形プロダクトのコストを更に増大するデバイス上の所与の機
能及び更なるコードに対してより多くの処理パワーを必要とする。ロードされた
アプリケーションによってなされた全てのメモリ・トランザクションがそれに割
り当てられたメモリ・エリアに制限されるということを確保する機構が要求され
る。更に、この機構は、故意のプログラムによって変更できないようにソフトウ
ェアから独立して機能することが必要である。それゆえに、故意のソフトウェア
でさえも制御される。
【0006】 無許可アプリケーションを、機密データのような、記憶された情報をアクセス
することから防ぐハードウェア実現型アクセス制御機構、及びスマート・カード
の制御ソフトウェアに対する更なる必要性が存在する。アクセス制御機構のハー
ドウェア実現は、シングル・チップ・マイクロプロセッサのセキュリティを最大
にし、かつデバイスの実際のハードウェア実現からコードを分離することによっ
て、コードを再使用させる。更に、ハードウェア実現型アクセス制御機構は、セ
キュア・カーネル(オペレーティングシステム)をデバイスに組込ませ、アプリ
ケーションに対して否定されるデベイスの特徴に対するアクセス権利を有する。
【0007】 発明の概要 一般的に、スマート・カードのような、シングル・チップ・データ処理回路に
対するメモリ管理装置を開示する。メモリ管理装置は、(i)メモリ・デバイス
の様々な領域に対して異種のメモリ特性を達成するために同種のメモリ・デバイ
スを分割し、かつ(ii)所定のメモリ・レンジへのマイクロプロセッサ・コア
で実行されているインストール済みアプリケーションのアクセスを制限する。そ
こで、メモリ管理装置は、アプリケーション間にファイアウォールを課しかつメ
モリのハードウェア検査済み分割を許可する。
【0008】 メモリ管理装置は、処理回路に対して二つのオペレーティング・モードを供給
する。セキュア・カーネル・モードでは、プログラマは、ハードウェア制御を含
んでいるデバイスの全てのリソースをアクセスすることができる。アプリケーシ
ョン・モードでは、メモリ管理装置は、インストール中にセキュア・カーネル・
モードのオペレーティングシステムによってアプリケーションに割り当てられた
物理アドレスにソフトウェア・クリエータによって用いられた仮想メモリ・アド
レスをトランスレートする。また、本発明は、セキュア・カーネル・モードのと
きにアプリケーションがソフトウェアによってアプリケーションにマップされた
メモリの外側のメモリをアクセスしないということを確保する。アプリケーショ
ンによって試みられたあらゆる不法なメモリ・アクセスは、トラップをもたらし
、かつ一実施例においては、メモリ管理装置は、セキュア・カーネル・モードで
マイクロプロセッサを再始動し、例外を処理すべくシステム・プログラマに適当
な機構を実現させるために選択的にフラグを設定する。
【0009】 アプリケーション表は、各アプリケーションの揮発性、不揮発性及びプログラ
ム記憶域(OTPROM)メモリ要件のような、シングル・チップ・データ処理
回路にインストールされる各アプリケーションのメモリ・デマンドを記録する。
メモリ管理装置は、限界レジスタを用いてメモリ・アドレス検査を実現しかつオ
フセット・レジスタを用いて仮想アドレスを絶対メモリ・アドレスにトランスレ
ートする。一度適当なメモリ・エリアが各アプリケーション・プログラムに割り
当てられたならば、メモリ管理装置は、実行アプリケーションが指定されたメモ
リ位置だけにアクセスするということを確保するためにアプリケーション表から
の適当な値を限界及びオフセット・レジスタにロードする。
【0010】 本発明の別の形態によれば、メモリ管理装置は、揮発性、不揮発性及びプログ
ラム記憶域(ROM)メモリ・セグメントのような、複数のメモリ技術に通常関
連付けられた異種のメモリ特性を達成するために、FERAMメモリ・デバイス
のような、同種のメモリ・デバイスを分割する。一度分割されたならば、メモリ
管理装置は、各異種のメモリ・タイプに対して適当な対応メモリ特性を強制する
。メモリ分割制御ロジックは、所望のように、同種のメモリが揮発性、不揮発性
及びプログラム記憶域(OTPROM)メモリ技術のように動作するために同種
のメモリの各部分に関連付けられた要求分割でプログラムされる。
【0011】 本発明のより完全な理解、並びに本発明の更なる特徴及び効果は、以下の詳細
な説明及び図面を参照することによって得られるであろう。
【0012】 詳細な説明 図1は、マイクロプロセッサ・コア110、メモリ・デバイス120、130
、及びメモリ・アクセス・オペレーションのためにマイクロプロセッサ・コア1
10とメモリ・デバイス120、130との間をインタフェースするメモリ管理
装置200を含む、スマート・カードのような、シングル・チップ・データ処理
回路100を示す。本発明によれば、メモリ管理装置200は、(i)メモリ・
デバイスの様々な領域に対して異種のメモリ特性を達成するために同種のメモリ
・デバイスを分割し、かつ(ii)所定のメモリ・レンジへのマイクロプロセッ
サ・コア110で実行しているインストール済みアプリケーションのアクセスを
制限する。当業者に理解されるように、これら二つの特徴のそれぞれが独立であ
り、かつ、メモリ管理装置200で選択的かつ分離的に実現されうるということ
に注目する。更に、本発明がスマート・カード環境で説明されるが、本発明は、
当業者に理解されるように、あらゆるシングル・チップ・データ処理回路に適用
される。
【0013】 本発明の特徴によれば、図2に関して以下に詳述するように、メモリ管理装置
200は、アプリケーション間にファイアウォールを課しかつそれによりメモリ
のハードウェア検査済み分割を許可する。それゆえに、アプリケーションは、所
定のメモリ・レンジだけへの制限されたアクセスを有する。以下に更に説明する
ように、メモリ管理装置200は、メモリ・アドレス検査を実行しかつユーザ指
定基準に基づきアドレスをトランスレートする。
【0014】 本発明の別の特徴によれば、メモリ管理装置200は、マイクロプロセッサ1
10に対して二つのオペレーティング・モードを供給する。セキュア・カーネル
・モードでは、プログラマは、ハードウェア制御を含んでいるデバイスの全ての
リソースをアクセスすることができる。アプリケーション・モードでは、メモリ
管理装置200は、インストール中にセキュア・カーネル・モードでオペレーテ
ィングシステムによってアプリケーションに割り当てられた物理アドレスにソフ
トウェア・クリエータによって用いられた仮想メモリ・アドレスをトランスレー
トする。また、本発明は、アプリケーションがセキュア・カーネル・モードのと
きにソフトウェアによってアプリケーションにマップされたメモリの外側のメモ
リをアクセスしないということを確保する。アプリケーションによって試みられ
たあらゆる不法なメモリ・アクセスは、トラップをもたらし、かつ一実施例にお
いて、メモリ管理装置200は、セキュア・カーネル・モードでマイクロプロセ
ッサ110を再始動し、例外を処理すべくシステム・プログラマに適当な機構を
実現させるためにフラグを選択的に設定する。
【0015】 このような方法で、記憶されたデータ、コードをアクセスすることによって、
又はチップのオペレーションに間接的に影響を与えるためにハードウェアを操作
することによって、スマート・カードのセキュリティを危うくする事故的な又は
特定的な意図でアプリケーションが書かれた場合には、例外が識別される。メモ
リ管理装置200は、割り当てられたプログラム・コード及びデータエリアにア
プリケーションを制限する。他の参照は、アプリケーションの終了を結果として
もたらしかつそのような不法な試みがなされたというセキュア・カーネルをフラ
グする。それゆえに、各アプリケーションは、全ての他のアプリケーション、ハ
ードウェア及びセキュア・カーネルから分離される。アプリケーション分離が必
要でないインプリメンテーションでは、セキュリティ機構は、ソフトウェア・エ
ラーをトラップするまで汎用プロテクションとして動作する。
【0016】 本発明の更なる特徴によれば、メモリ管理装置200は、揮発性、不揮発性及
びプログラム記憶域(ROM)メモリ・セグメントのような、複数のメモリ技術
に通常関連付けられた異種の特性を達成するために、FERAMメモリ・デバイ
スのような、同種のメモリ・デバイスを分割する。一度分割されたならば、メモ
リ管理装置200は、各異種のメモリ・タイプに対して適当な対応メモリ特性を
強制する。
【0017】 図2は、メモリ管理装置200の例示的なハードウェア実現の略ブロック図を
供給する。先に示したように、メモリ管理装置200は、(i)メモリ・デバイ
スの様々な領域に対して異種のメモリ特性を達成するために同種のメモリ・デバ
イスを分割し、かつ(ii)所定のメモリ・レンジへのマイクロプロセッサ・コ
ア110で実行しているインストール済みアプリケーションのアクセスを制限す
る。図2に示しかつ図4に関して以下に更に説明するように、メモリ管理装置2
00は、メモリ分割制御ロジック400に対するセクションを含む。一般的に、
メモリ分割制御ロジック400は、所望のように、同種のメモリが揮発性、不揮
発性及びプログラム記憶域(OTPROM)メモリ技術のように動作するために
同種のメモリの各部分に関連付けられた要求分割でプログラムされる。アプリケ
ーションは、コード及びデータに対して異なるメモリ・エリアに通常割り当てら
れ、かつデータ・エリアは、スクラッチパッド・オペレーションのために、揮発
性部分、及び不揮発性記憶域エリアに更に分割することができる。
【0018】 更に、メモリ管理装置200は、図3に関して以下に更に説明する、アプリケ
ーション表300を含む。一般的に、アプリケーション表300は、シングル・
チップ・データ処理回路100にインストールされる各アプリケーションのメモ
リ・デマンドを記録する。例えば、アプリケーション表300は、各アプリケー
ションの揮発性、不揮発性及びプログラム記憶域(OTPROM)メモリ要件を
示す。アプリケーション表300は、各アプリケーションがインストールされる
ように、セキュア・カーネル・モードで動作しているときにマイクロプロセッサ
110によって生成される。カーネルは、適当なメモリ・エリアを各アプリケー
ション・プログラムに割り当てる。
【0019】 一度適当なメモリ・エリアが各アプリケーション・プログラムに割り当てられ
たならば、図2に示すメモリ管理装置200は、実行アプリケーションが指定メ
モリ位置だけをアクセスするということを確保するためにアプリケーション表3
00から適当な値を、以下に説明するように、限界及びオフセット・レジスタ2
30−232、240−242にロードすることができる。一般的に、メモリ管
理装置200は、限界レジスタ230−232を用いてメモリ・アドレス検査を
実現しかつオフセット・レジスタ240−242を用いて絶対メモリ・アドレス
にアドレスをトランスレートする。
【0020】 マイクロプロセッサ・コア110で実行しているインストール済みアプリケー
ションのアクセスを所定のメモリ・レンジに制限することに加えて、メモリ管理
装置200は、また、それがアプリケーション・コードに実行を引き渡す前に、
ソフトウェア・プログラマによって用いられた仮想メモリ・アドレス間のアドレ
スをセキュア・カーネル・モードのオペレーティングシステムによってアプリケ
ーションに割り当てられた物理アドレスにトランスレートする。実例の8051
マイクロプロセッサをプログラミングするときに、ソフトウェア・プログラマは
、0のアドレスで始まるコード・スペース、及び0のアドレスで始まるデータ・
スペースで開始するということに注目する。更に、コード及びデータ・スペース
のサイズは、所与のアプリケーションの要求リソースに対応して可変である。
【0021】 再び、アプリケーションは、指定メモリ・エリアの外側のメモリをアクセスす
ることの試みがアプリケーションが終了される結果を生じるように、以下に説明
する方法で、メモリ管理装置200によってトランスレートされかつ検査される
適当な揮発性、不揮発性及びプログラム記憶域(OTPROM)メモリ割り当て
を有する。カーネルは、再始動されかつ問題のトラップされたアクセスは、カー
ネルによって問合せのために記憶される。
【0022】 ハードウェア・メモリ・マッピング・スキーム及びエリア保護ハードウェア機
構の外側を図2に示す。実例の8051マイクロプロセッサにおいて、図2に示
すように、唯一つのアプリケーションがいつもアクティブであり、そしてマッピ
ング・ロジックの唯一つのセットが要求される。それゆえに、マイクロプロセッ
サ・コア110は、当業者に理解されるように、多機能環境で文脈切換えを実現
しなければならない。先に示したように、メモリ管理装置200は、メモリ管理
装置200によって管理される各メモリ技術に対して、レジスタ230−232
、240−242のような、一対の限界及びオフセット・レジスタを、それぞれ
含む。
【0023】 アプリケーションが開始される前に、関連メモリ要件は、カーネル・モードで
実行されているセキュア・オペレーティングシステムによってアプリケーション
表300から検索される。関連メモリ要件は、対応限界及びオフセット・レジス
タ230−232、240−242にロードされる。
【0024】 その後、カーネルは、アプリケーション・プログラム・コードがメモリに記憶
されるアドレスをコード・アプリケーション・オフセット・レジスタ(COR)
204にロードする。次いで、カーネルは、アプリケーション・コード・スペー
スのサイズをコード限界レジスタ(CLR)230にロードする。同様に、デー
タ・スペースは、そのサイズが、そのアプリケーションに割り当てられた、揮発
性及び不揮発性メモリの両方のサイズの合計であるメモリのブロックとして定義
することができる。それゆえに、カーネルは、(揮発性及び不揮発性メモリの両
方の)データ・スペースのサイズをデータ限界レジスタ(DLR)231にロー
ドする。割り当てられた揮発性メモリのサイズは、揮発性データ限界レジスタ(
VDLR)232にロードされ、スクラッチパッド・メモリ(RAM)に用いら
れるベース・アドレスは、揮発性データ・オフセット・レジスタ(VDOR)2
41にロードされる。そして、アプリケーションに割り当てられた不揮発性記憶
域(EEPROM)に用いられるベース・アドレスは、不揮発性オフセット・レ
ジスタ(NVOR)242にロードされる。
【0025】 一つの実装では、メモリ保護機構は、カーネルによって割り当てられた絶対ア
ドレスとは対照的に、プログラマによって割り当てられた仮想メモリ・アドレス
を検査する。それゆえに、適当な限界レジスタに含まれた値よりも大きい仮想ア
ドレスを有している位置に対してアクセスがなされるときに不法メモリ・アクセ
スが識別されるように、不法アクセス機構は、簡略化される。それゆえに、図2
に示すように、メモリ管理装置200は、マイクロプロセッサ・コア210によ
って発行された仮想アドレスを、適当な限界レジスタ230−232に含まれた
値と比較するための比較器250、255を含む。アプリケーションが無許可メ
モリ・アクセスを試みているならば、対応する比較器250、255は、アウト
・オブ・バウンズ・トラップをセットする。
【0026】 アプリケーションが許可メモリ・アクセスを試みている場合は、対応する比較
器250、255は、適当なオフセット・レジスタ240−242をイネーブル
し、かつオフセット・レジスタからの値は、マイクロプロセッサ・コア210に
よって発行された仮想アドレスに加算器260によって加算される。一つの好適
な実施例では、限界及びオフセット・レジスタ230−232、240−242
及び比較器250、255は、物理的なセキュリティ・アタックを排除するため
に既知のタンパー・レジスタント技術を用いて組み立てられる。
【0027】 図3は、各インストール済みアプリケーションのメモリ・デマンドを含んでい
る、シングル・チップ・データ処理回路100にインストールされた各アプリケ
ーションに情報を記憶する例示的なアプリケーション表300を示す。図3に示
すように、アプリケーション表300は、各アプリケーションの揮発性、不揮発
性及びプログラム記憶域(OTPROM)メモリ要件を示す。アプリケーション
表300は、各アプリケーションがインストールされるように、セキュア・カー
ネル・モードで動作しているときにマイクロプロセッサ110によって生成され
うる。カーネルは、各アプリケーション・プログラムに適当なメモリ・エリアを
割り当てる。
【0028】 アプリケーション表300は、それぞれが異なるアプリケーションに関連付け
られた、記録305−315のような、複数の記録を保守する。フィールド32
0の各アプリケーション識別子に対して、アプリケーション表300は、アプリ
ケーション・プログラム・コードがメモリに記憶されるベース・アドレス、及び
フィールド325及び330のアプリケーション・コード・スペースの対応する
サイズをそれぞれ含む。更に、アプリケーション表300は、フィールド340
に記憶された割り当てられた揮発性メモリのサイズ、フィールド345のスクラ
ッチパッド・メモリ(RAM)に対するベース・アドレスを伴う、(揮発性及び
不揮発性メモリの両方の和)フィールド335のデータ・スペースの合計サイズ
を示し、かつ不揮発性記憶域(EEPROM)に対するベース・アドレスは、フ
ィールド350に記録される。先に示したように、アプリケーションがアクティ
ブになるときには、フィールド325〜350からの対応するメモリ・レンジ値
のそれぞれは、検索されかつ適当な限界及びオフセット・レジスタ230−23
2、240−242にそれぞれロードされる。
【0029】 図4は、同種のメモリ・アレイ450に対するメモリ分割制御ロジック400
を示す。先に示したように、メモリ分割制御ロジック400は、所望により、同
種のメモリが揮発性、不揮発性及びプログラム記憶域(OTPROM)メモリ技
術のように動作するために同種のメモリの各部分に関連付けられたレジスタを含
む。アプリケーションは、コード及びデータに対して異なるメモリ・エリアに通
常割り当てられ、かつデータ・エリアは、スクラッチパッド・オペレーションに
対して、揮発性部分、及び不揮発性記録域エリアに更に分割することができる。
FERAMは、本質的に不揮発性アレイである。換言すると、FERAMは、多
くの回数変更することができ、かつEEPROMと同様な方法で、パワーがダウ
ンされたときでも、最後に書込まれた値を保持する。それゆえに、不揮発性アレ
イを達成するためにEEPROM動作をFERAMに強制することは、不必要で
ある。
【0030】 不揮発性FERAMアレイを用いて揮発性アレイを生成するために、例えば、
各アドレスに0を書込むことによって、又は並列に多くのアドレスに0を書込む
アレイに組込まれたブロック消去特徴を用いることによって、消去回路410、
430が追加される。消去回路410、430は、揮発性アレイのように動作す
べきメモリ・レンジの上部及び下部制限を記録する。同様に、コードが書込まれ
ないことを確保するために、書込み禁止は、ロック−書込み回路420、440
を用いてメモリ・アレイに強制されなけらばならない。ロック−書込み回路42
0、440は、プログラム記憶域(OTPROM)メモリのように動作すべきメ
モリ・レンジの上部及び下部制限を記録する。
【0031】 一度アプリケーション・スペースがセキュア・カーネルによってセットアップ
されたならば、同種のアレイの規定エリアは、適当な方法で動作することが必要
である。これは、アプリケーションに対する揮発性メモリ・エリアを定義するた
めに用いた同じメモリ定義を用いて消去ロジックをマップすることによって達成
することができる。アプリケーションが開始される前(又は後、又は両方)で、
消去機構は、イネーブルされ、先のアプリケーション又は指定ブロックを用い得
たカーネルによって残余値が残されていなことをアプリケーションが開始された
ときに見ることができるということを確保する。同様に、同じ簡単な機構は、潜
在的に未知な条件をもたらすために従ってデバイスのセキュアな形態を明らかに
するために、そのコードを変更することからアプリケーションを防ぐためにアプ
リケーションに対してコード・スペースとして指定されたエリアに書込み−ロッ
クを強制するために用いることができる。
【0032】 アプリケーションRAMエリアは、消去回路430にロードされたパラメータ
によって定義される。一般的に、消去回路430にロードされた値は、FERA
Mメモリ・アレイ内の物理的アドレス位置及び割り当てられたメモリのサイズで
ある。ブロック消去ロジック410は、始動されたときに、所定のエリアを消去
するために消去回路430によって制約される。OTP特性を得るために同じ原
理が用いられる。OTP分割は、ロック−書込み回路440によって定義される
、それは、一度パラメータがロードされたならば同じメモリ・アレイのエリアを
割り当てる。ロック書込みロジック420は、ロック−書込み回路440で定義
されたエリアに対する書込みケーパビリティを取り除き、OTPメモリと同じ特
性をエリアに与える。
【0033】 ここに示しかつ説明した実施態様及び変形例は、本発明の原理の単に例示のた
めであり、かつ本発明の範疇及び精神から逸脱することなく様々な変更が当業者
によって実現されうるということが理解されるべきである。
【図面の簡単な説明】
【図1】 本発明によるメモリ管理装置を含む、スマート・カードのような
、シングル・チップ・データ処理回路を示している略ブロック図である。
【図2】 図1のメモリ管理装置の例示的なハードウェア実現の略ブロック
図である。
【図3】 図2の例示的なアプリケーション表からのサンプル表である。
【図4】 図2のメモリ分割制御ロジックを示している略ブロック図である
【手続補正書】特許協力条約第34条補正の翻訳文提出書
【提出日】平成13年5月17日(2001.5.17)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項】 シングル・チップ・データ処理回路であって、 複数のアプリケーションを実行するためのプロセッサと、 同種のメモリ・デバイスと、 (i)揮発性メモリ技術を含んでいる、複数のメモリ技術に関連付けられたメモ
リ特性を達成するために前記複数のアプリケーションの各々に対して前記同種の
メモリ・デバイスを分割し、(ii)前記分割の各々に対応している割り当てられた 異質メモリ・タイプに対するレンジを前記アプリケーションの各々に対して記録 し、かつ(iii)前記アプリケーションの各々に対する前記分割の各々に対応して
いる異質メモリ・タイプに対してメモリ特性を強制する ためのメモリ管理装置と
、 を備えるシングル・チップ・データ処理回路。
【請求項】 前記メモリ技術は、限定されたプログラマビリティを有する
リード・オンリー・メモリ技術を含む、請求項に記載のシングル・チップ・デ
ータ処理回路。
【請求項】 前記メモリ技術は、不揮発性メモリ技術を含む、請求項
記載のシングル・チップ・データ処理回路。
【請求項】 前記メモリ管理装置は、揮発性メモリ特性を達成するために
ブロック消去ロジックを含む、請求項に記載のシングル・チップ・データ処理
回路。
【請求項】 前記メモリ管理装置は、制限されたプログラマビリティを有
するメモリ特性を達成するためにロック−書込み消去ロジックを含む、請求項 に記載のシングル・チップ・データ処理回路。
【請求項複数のアプリケーションに対するメモリ・デバイスの様々な
領域に対して異質のメモリ特性を達成するために同質のメモリ・デバイスを分割
する方法であって、 揮発性メモリ技術を含んでいる、複数のメモリ技術に関連付けられたメモリ特
性を達成するために前記同質のメモリ・デバイスを分割するステップと、 前記分割の各々に対応している割り当てられた異質のメモリ・タイプに対する レンジを前記アプリケーションの各々に対して記録するステップと、 前記アプリケーションの各々に対する前記分割の各々に対応している異質メモ
リ・タイプに対してメモリ特性を強制するステップと、 を含む方法。
【請求項】 前記メモリ技術は、制限されたプログラマビリティを有する
リード・オンリー・メモリ技術を含む、請求項に記載の方法。
【請求項】 前記メモリ技術は、不揮発性メモリ技術を含む、請求項
記載の方法。
【請求項】 前記揮発性メモリ特性を達成するために前記同質のメモリ・
デバイスの分割を消去するステップを更に含む、請求項に記載の方法。
【請求項10】 制限されたプログラマビリティを有するメモリ特性を達成
するために分割における書込み動作を防ぐステップを更に含む、請求項に記載
の方法。
【請求項11】 前記メモリ管理装置は、不揮発性メモリ領域が開始する位
置に対応しているベース・メモリ・アドレスを記憶するためのレジスタを更に備
える、請求項に記載のシングル・チップ・データ処理回路。
【請求項12】 前記メモリ管理装置は、不揮発性メモリ領域が終了する位
置に対応しているメモリ・アドレスを記憶するためのレジスタを更に備える、請
求項に記載のシングル・チップ・データ処理回路。
【請求項13】 前記メモリ管理装置は、揮発性メモリ領域が開始する位置
に対応しているベース・メモリ・アドレスを記憶するためのレジスタを更に備え
る、請求項に記載のシングル・チップ・データ処理回路。
【請求項14】 前記メモリ管理装置は、揮発性メモリ領域が終了する位置
に対応しているメモリ・アドレスを記憶するためのレジスタを更に備える、請求
に記載のシングル・チップ・データ処理回路。
【請求項15】 不揮発性メモリ領域が開始する位置に対応しているベース
・メモリ・アドレスを記憶するステップを更に含む、請求項に記載の方法。
【請求項16】 不揮発性メモリ領域が終了する位置に対応しているメモリ
・アドレスを記憶するステップを更に含む、請求項に記載の方法。
【請求項17】 揮発性メモリ領域が開始する位置に対応しているベース・
メモリ・アドレスを記憶するステップを更に含む、請求項に記載の方法。
【請求項18】 揮発性メモリ領域が終了する位置に対応しているメモリ・
アドレスを記憶するステップを更に含む、請求項に記載の方法。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),OA(BF,BJ ,CF,CG,CI,CM,GA,GN,GW,ML, MR,NE,SN,TD,TG),AP(GH,GM,K E,LS,MW,MZ,SD,SL,SZ,TZ,UG ,ZW),EA(AM,AZ,BY,KG,KZ,MD, RU,TJ,TM),AL,AM,AT,AU,AZ, BA,BB,BG,BR,BY,CA,CH,CN,C U,CZ,DE,DK,EE,ES,FI,GB,GE ,GH,HU,IL,IS,JP,KE,KG,KP, KR,KZ,LC,LK,LR,LS,LT,LU,L V,MD,MG,MK,MN,MW,MX,NO,NZ ,PL,PT,RO,RU,SD,SE,SG,SI, SK,SL,TJ,TM,TR,TT,UA,UG,U Z,VN,YU,ZW 【要約の続き】 トする。メモリ管理装置は、実行アプリケーションが指 定メモリ場所だけをアクセスするということを確保する ためにアプリケーション表からの適当な値を限界及びオ フセット・レジスタにロードする。また、メモリ管理装 置は、揮発性、不揮発性及びプログラム記憶域(RO M)メモリ・セグメントのような、複数のメモリ技術に 通常関連付けられる異種メモリ特性を達成するためにF ERAMメモリ・デバイスのような、同種のメモリ・デ バイスを分割することもできる。一度分割したならば、 メモリ管理装置は、各異種メモリ・タイプに対して適当 な対応メモリ特性を強制する。

Claims (32)

    【特許請求の範囲】
  1. 【請求項1】 シングル・チップ・データ処理回路であって、 複数のアプリケーションを実行するためのプロセッサと、 メモリ・デバイスと、 前記対応するメモリ・アドレスによってバウンドされた所定のメモリ・レンジ
    への前記アプリケーションの各々のアクセスを制限するために前記メモリ・デバ
    イスにメモリ・アドレスを記憶するための少なくとも一つのレジスタを含んでい
    るメモリ管理装置と、 を備えるシングル・チップ・データ処理回路。
  2. 【請求項2】 前記メモリ管理装置は、前記記憶したメモリ・アドレスを前
    記対応するアプリケーションによって発行されたアドレスと比較するための比較
    器を更に備える、請求項1に記載のシングル・チップ・データ処理回路。
  3. 【請求項3】 前記メモリ管理装置は、許可メモリ・アクセスのために前記
    対応するアプリケーションに関連付けられたオフセット・アドレスに前記対応す
    るアプリケーションによって発行された仮想アドレスを加算するための加算器を
    更に備える、請求項1に記載のシングル・チップ・データ処理回路。
  4. 【請求項4】 前記メモリ管理装置は、無許可メモリ・アクセスの検出によ
    りトラップをもたらす、請求項1に記載のシングル・チップ・データ処理回路。
  5. 【請求項5】 前記メモリ管理装置は、無許可メモリ・アクセスを分析する
    ために該無許可メモリ・アクセスの検出によりセキュア・カーネル・モードで前
    記プロセッサを再始動する、請求項1に記載のシングル・チップ・データ処理回
    路。
  6. 【請求項6】 前記メモリ管理装置は、前記アプリケーションが開始する場
    所に対応しているベース・メモリ・アドレスを記憶するためのレジスタを更に備
    える、請求項1に記載のシングル・チップ・データ処理回路。
  7. 【請求項7】 前記メモリ管理装置は、前記アプリケーションが終了する場
    所に対応しているメモリ・アドレスを記憶するためのレジスタを更に備える、請
    求項1に記載のシングル・チップ・データ処理回路。
  8. 【請求項8】 前記メモリ管理装置は、不揮発性メモリ領域が開始する場所
    に対応しているベース・メモリ・アドレスを記憶するためのレジスタを更に備え
    る、請求項1に記載のシングル・チップ・データ処理回路。
  9. 【請求項9】 前記メモリ管理装置は、不揮発性メモリ領域が終了する場所
    に対応しているメモリ・アドレスを記憶するためのレジスタを更に備える、請求
    項1に記載のシングル・チップ・データ処理回路。
  10. 【請求項10】 前記メモリ管理装置は、揮発性メモリ領域が開始する場所
    に対応しているベース・メモリ・アドレスを記憶するためのレジスタを更に備え
    る、請求項1に記載のシングル・チップ・データ処理回路。
  11. 【請求項11】 前記メモリ管理装置は、揮発性メモリ領域が終了する場所
    に対応しているメモリ・アドレスを記憶するためのレジスタを更に備える、請求
    項1に記載のシングル・チップ・データ処理回路。
  12. 【請求項12】 前記メモリ管理装置は、前記アプリケーションの各々に対
    して時間多重される、請求項1に記載のシングル・チップ・データ処理回路。
  13. 【請求項13】 シングル・チップ・データ処理回路であって、 アプリケーションを実行するためのプロセッサと、 同種のメモリ・デバイスと、 揮発性メモリ技術を含んでいる、複数のメモリ技術に関連付けられたメモリ特
    性を達成するために前記同種のメモリ・デバイスを分割するためのメモリ管理装
    置と、 を備えるシングル・チップ・データ処理回路。
  14. 【請求項14】 前記メモリ技術は、限定されたプログラマビリティを有す
    るリード・オンリー・メモリ技術を含む、請求項13に記載のシングル・チップ
    ・データ処理回路。
  15. 【請求項15】 前記メモリ技術は、不揮発性メモリ技術を含む、請求項1
    3に記載のシングル・チップ・データ処理回路。
  16. 【請求項16】 前記メモリ管理装置は、揮発性メモリ特性を達成するため
    にブロック消去ロジックを含む、請求項13に記載のシングル・チップ・データ
    処理回路。
  17. 【請求項17】 前記メモリ管理装置は、制限されたプログラマビリティを
    有するメモリ特性を達成するためにロック−書込み消去ロジックを含む、請求項
    13に記載のシングル・チップ・データ処理回路。
  18. 【請求項18】 シングル・チップ・データ処理回路で実行されている複数
    のインストール済みアプリケーションのアクセスを制限する方法であって、 前記アプリケーションの各々のメモリ・デマンドを識別するステップと、 前記対応するメモリ・アドレスによってバウンドされた所定のメモリ・レンジ
    への前記アプリケーションの各々のアクセスを制限するために限界レジスタにメ
    モリ・アドレス値を記憶するステップと、 前記アプリケーションが前記所定のメモリ・レンジの外側のメモリ・アドレス
    ・ロケーションをアクセスすることを試みた場合にソフトウェア・フォールト(
    故障)を識別するステップと、 を含む方法。
  19. 【請求項19】 前記記憶されたメモリ・アドレスを前記アプリケーション
    によって発行されたアドレスと比較するステップを更に含む、請求項18に記載
    の方法。
  20. 【請求項20】 許可メモリ・アクセスに対する前記アプリケーションに関
    連付けられたオフセット・アドレスに前記アプリケーションによって発行された
    仮想アドレスを加算するステップを更に含む請求項18に記載の方法。
  21. 【請求項21】 無許可メモリ・アクセスを分析するために前記無許可メモ
    リ・アクセスの検出によりセキュア・カーネル・モードで前記プロセッサを再始
    動するステップを更に含む、請求項18に記載の方法。
  22. 【請求項22】 前記アプリケーションが開始する場所に対応するベース・
    メモリ・アドレスを記憶するステップを更に含む、請求項18に記載の方法。
  23. 【請求項23】 前記アプリケーションが終了する場所に対応するメモリ・
    アドレスを記憶するステップを更に含む、請求項18に記載の方法。
  24. 【請求項24】 不揮発性メモリ領域が開始する場所に対応するベース・メ
    モリ・アドレスを記憶するステップを更に含む、請求項18に記載の方法。
  25. 【請求項25】 不揮発性メモリ領域が終了する場所に対応するメモリ・ア
    ドレスを記憶するステップを更に含む、請求項18に記載の方法。
  26. 【請求項26】 揮発性メモリ領域が開始する場所に対応するベース・メモ
    リ・アドレスを記憶するステップを更に含む、請求項18に記載の方法。
  27. 【請求項27】 揮発性メモリ領域が終了する場所に対応するメモリ・アド
    レスを記憶するステップを更に含む、請求項18に記載の方法。
  28. 【請求項28】 メモリ・デバイスの様々な領域に対して異質のメモリ特性
    を達成するために同質のメモリ・デバイスを分割する方法であって、 揮発性メモリ技術を含んでいる、複数のメモリ技術に関連付けられたメモリ特
    性を達成するために前記同質のメモリ・デバイスを分割するステップと、 前記分割の各々に対応している異質メモリ・タイプに対してメモリ特性を強制
    するステップと、 を含む方法。
  29. 【請求項29】 前記メモリ技術は、制限されたプログラマビリティを有す
    るリード・オンリー・メモリ技術を含む、請求項28に記載の方法。
  30. 【請求項30】 前記メモリ技術は、不揮発性メモリ技術を含む、請求項2
    8に記載の方法。
  31. 【請求項31】 前記揮発性メモリ特性を達成するために前記同質のメモリ
    ・デバイスの分割を消去するステップを更に含む、請求項28に記載の方法。
  32. 【請求項32】 制限されたプログラマビリティを有するメモリ特性を達成
    するために分割における書込み動作を防ぐステップを更に含む、請求項28に記
    載の方法。
JP2001532399A 1999-10-19 2000-10-18 同種のメモリを分割しかつ所定のメモリ・レンジへのインストール済みアプリケーションのアクセスを制限するためのメモリ管理方法及び装置 Pending JP2003523554A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/420,318 1999-10-19
US09/420,318 US6292874B1 (en) 1999-10-19 1999-10-19 Memory management method and apparatus for partitioning homogeneous memory and restricting access of installed applications to predetermined memory ranges
PCT/US2000/041243 WO2001029672A1 (en) 1999-10-19 2000-10-18 Partitioned memory device having characteristics of different memory technologies

Publications (1)

Publication Number Publication Date
JP2003523554A true JP2003523554A (ja) 2003-08-05

Family

ID=23665978

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001532399A Pending JP2003523554A (ja) 1999-10-19 2000-10-18 同種のメモリを分割しかつ所定のメモリ・レンジへのインストール済みアプリケーションのアクセスを制限するためのメモリ管理方法及び装置

Country Status (11)

Country Link
US (1) US6292874B1 (ja)
EP (1) EP1242891B1 (ja)
JP (1) JP2003523554A (ja)
KR (1) KR100734340B1 (ja)
AT (1) ATE476706T1 (ja)
AU (1) AU771129B2 (ja)
CA (1) CA2387807A1 (ja)
DE (1) DE60044783D1 (ja)
IL (1) IL149157A0 (ja)
NZ (1) NZ518400A (ja)
WO (1) WO2001029672A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007508613A (ja) * 2003-10-13 2007-04-05 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ アプリケーション毎の記憶領域割当て

Families Citing this family (154)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2153455T3 (es) 1995-08-04 2001-03-01 Belle Gate Invest B V Sistema de intercambio de datos que incluye unidades portatiles de procesamiento de datos.
US6385645B1 (en) * 1995-08-04 2002-05-07 Belle Gate Investments B.V. Data exchange system comprising portable data processing units
US6295640B1 (en) * 1998-05-08 2001-09-25 Apple Computer, Inc. Method and apparatus for distinguishing reference values from non-reference values in a runtime environment
WO2000019699A1 (en) 1998-09-29 2000-04-06 Sun Microsystems, Inc. Superposition of data over voice
US6823520B1 (en) 1999-01-22 2004-11-23 Sun Microsystems, Inc. Techniques for implementing security on a small footprint device using a context barrier
US6922835B1 (en) 1999-01-22 2005-07-26 Sun Microsystems, Inc. Techniques for permitting access across a context barrier on a small footprint device using run time environment privileges
US6633984B2 (en) * 1999-01-22 2003-10-14 Sun Microsystems, Inc. Techniques for permitting access across a context barrier on a small footprint device using an entry point object
US6907608B1 (en) * 1999-01-22 2005-06-14 Sun Microsystems, Inc. Techniques for permitting access across a context barrier in a small footprint device using global data structures
US7093122B1 (en) 1999-01-22 2006-08-15 Sun Microsystems, Inc. Techniques for permitting access across a context barrier in a small footprint device using shared object interfaces
KR20020010926A (ko) 1999-06-10 2002-02-06 헨드리쿠스 하롤트 판 안델 분리된 메모리 영역 내에 상이한 버전의 데이터 세트를저장하는 장치 및 메모리 내의 데이터 세트를 갱신하는 방법
US6772416B1 (en) * 1999-11-19 2004-08-03 General Dynamics Decision Systems, Inc. Separation kernel with memory allocation, remote procedure call and exception handling mechanisms
WO2001040910A1 (en) 1999-12-06 2001-06-07 De Jong, Eduard, Karel Computer arrangement using non-refreshed dram
CN1398385B (zh) * 1999-12-07 2010-06-02 太阳微系统公司 识别装置、与识别装置通信的终端和验证照相图象的方法
KR100693874B1 (ko) 1999-12-07 2007-03-12 선 마이크로시스템즈 인코포레이티드 판독을 제어하는 마이크로프로세서를 포함한 컴퓨터 판독매체 및 이러한 매체와 통신하도록 설정된 컴퓨터
US7073071B1 (en) 2000-03-31 2006-07-04 Intel Corporation Platform and method for generating and utilizing a protected audit log
US6678825B1 (en) 2000-03-31 2004-01-13 Intel Corporation Controlling access to multiple isolated memories in an isolated execution environment
US6754815B1 (en) 2000-03-31 2004-06-22 Intel Corporation Method and system for scrubbing an isolated area of memory after reset of a processor operating in isolated execution mode if a cleanup flag is set
US7013484B1 (en) * 2000-03-31 2006-03-14 Intel Corporation Managing a secure environment using a chipset in isolated execution mode
US6760441B1 (en) 2000-03-31 2004-07-06 Intel Corporation Generating a key hieararchy for use in an isolated execution environment
US7111176B1 (en) * 2000-03-31 2006-09-19 Intel Corporation Generating isolated bus cycles for isolated execution
US6769058B1 (en) 2000-03-31 2004-07-27 Intel Corporation Resetting a processor in an isolated execution environment
US7013481B1 (en) 2000-03-31 2006-03-14 Intel Corporation Attestation key memory device and bus
US7194634B2 (en) * 2000-03-31 2007-03-20 Intel Corporation Attestation key memory device and bus
US6957332B1 (en) * 2000-03-31 2005-10-18 Intel Corporation Managing a secure platform using a hierarchical executive architecture in isolated execution mode
US6633963B1 (en) * 2000-03-31 2003-10-14 Intel Corporation Controlling access to multiple memory zones in an isolated execution environment
US7082615B1 (en) * 2000-03-31 2006-07-25 Intel Corporation Protecting software environment in isolated execution
US6795905B1 (en) 2000-03-31 2004-09-21 Intel Corporation Controlling accesses to isolated memory using a memory controller for isolated execution
US6961838B2 (en) * 2000-06-02 2005-11-01 Hewlett-Packard Development Company, L.P. Generating updated virtual disks using distributed mapping tables accessible by mapping agents and managed by a centralized controller
DE10033612B4 (de) * 2000-07-11 2004-05-13 Siemens Ag Verfahren zur Steuerung des Zugriffs auf eine Speichereinrichtung
CA2416844A1 (en) 2000-07-20 2002-01-31 Belle Gate Investment B.V. Method and system of communicating devices, and devices therefor, with protected data transfer
US7793111B1 (en) 2000-09-28 2010-09-07 Intel Corporation Mechanism to handle events in a machine with isolated execution
FR2816090B1 (fr) * 2000-10-26 2003-01-10 Schlumberger Systems & Service Dispositif de partage de fichiers dans un dispositif a circuit integre
US6907600B2 (en) * 2000-12-27 2005-06-14 Intel Corporation Virtual translation lookaside buffer
US7818808B1 (en) 2000-12-27 2010-10-19 Intel Corporation Processor mode for limiting the operation of guest software running on a virtual machine supported by a virtual machine monitor
US7035963B2 (en) * 2000-12-27 2006-04-25 Intel Corporation Method for resolving address space conflicts between a virtual machine monitor and a guest operating system
US6567897B2 (en) * 2001-03-01 2003-05-20 International Business Machines Corporation Virtualized NVRAM access methods to provide NVRAM CHRP regions for logical partitions through hypervisor system calls
DE10127179A1 (de) * 2001-06-05 2002-12-19 Infineon Technologies Ag Verfahren zur Verwaltung eines Speichers einer Chipkarte
WO2003003194A1 (fr) 2001-06-27 2003-01-09 Sony Corporation Dispositif a circuit integre, dispositif de traitement de l'information, procede de gestion de memoire de support d'information, terminal mobile, dispositif a circuit integre a semi-conducteur, et procede de communication par terminal mobile
US7191440B2 (en) * 2001-08-15 2007-03-13 Intel Corporation Tracking operating system process and thread execution and virtual machine execution in hardware or in a virtual machine monitor
US7024555B2 (en) 2001-11-01 2006-04-04 Intel Corporation Apparatus and method for unilaterally loading a secure operating system within a multiprocessor environment
JP2003162433A (ja) * 2001-11-27 2003-06-06 Fujitsu Ltd メモリシステム
US7051340B2 (en) * 2001-11-29 2006-05-23 Hewlett-Packard Development Company, L.P. System and method for isolating applications from each other
US20030101381A1 (en) * 2001-11-29 2003-05-29 Nikolay Mateev System and method for virus checking software
DE10164422A1 (de) * 2001-12-29 2003-07-17 Philips Intellectual Property Verfahren und Anordnung zum Beschreiben von NV-Memories in einer Controller-Architektur sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium
DE10200288A1 (de) * 2002-01-07 2003-07-17 Scm Microsystems Gmbh Eine Vorrichtung zur Ausführung von Anwendungen, die sichere Transaktionen und/oder Zugangskontrolle zu werthaltigen Inhalten und/oder Dienstleistungen umfassen, und Verfahren zum Schutz einer solchen Vorrichtung
US7631196B2 (en) 2002-02-25 2009-12-08 Intel Corporation Method and apparatus for loading a trustable operating system
US7181737B2 (en) * 2002-03-18 2007-02-20 Sun Microsystems, Inc. Method and apparatus for deployment of high integrity software using static procedure return addresses
US6912633B2 (en) * 2002-03-18 2005-06-28 Sun Microsystems, Inc. Enhanced memory management for portable devices
US6996802B2 (en) * 2002-03-18 2006-02-07 Sun Microsystems, Inc. Method and apparatus for deployment of high integrity software using initialization order and calling order constraints
US7010783B2 (en) * 2002-03-18 2006-03-07 Sun Microsystems, Inc. Method and apparatus for deployment of high integrity software using reduced dynamic memory allocation
US20030182653A1 (en) * 2002-03-22 2003-09-25 Giuseppe Desoli Systems and methods for verifying correct execution of emulated code via dynamic state verification
US7069442B2 (en) 2002-03-29 2006-06-27 Intel Corporation System and method for execution of a secured environment initialization instruction
KR100476892B1 (ko) * 2002-04-29 2005-03-17 삼성전자주식회사 데이터의 부정조작을 방지하는 방법 및 그것을 이용한데이터 처리 시스템
GB0212315D0 (en) * 2002-05-28 2002-07-10 Symbian Ltd Secure mobile wireless device with protected file systems
KR100505106B1 (ko) * 2002-05-29 2005-07-29 삼성전자주식회사 강화된 보안 기능을 갖춘 스마트 카드
JP3513147B2 (ja) 2002-05-29 2004-03-31 株式会社ハギワラシスコム Usbストレージデバイス及びその制御装置
US6820177B2 (en) 2002-06-12 2004-11-16 Intel Corporation Protected configuration space in a protected environment
KR20030096659A (ko) 2002-06-17 2003-12-31 삼성전자주식회사 이미지 센서의 화소 어레이 영역, 그 구조체 및 그 제조방법
US8010405B1 (en) 2002-07-26 2011-08-30 Visa Usa Inc. Multi-application smart card device software solution for smart cardholder reward selection and redemption
US9852437B2 (en) 2002-09-13 2017-12-26 Visa U.S.A. Inc. Opt-in/opt-out in loyalty system
US8015060B2 (en) 2002-09-13 2011-09-06 Visa Usa, Inc. Method and system for managing limited use coupon and coupon prioritization
US8626577B2 (en) 2002-09-13 2014-01-07 Visa U.S.A Network centric loyalty system
AU2003278350A1 (en) 2002-11-18 2004-06-15 Arm Limited Secure memory for protecting against malicious programs
US7171539B2 (en) * 2002-11-18 2007-01-30 Arm Limited Apparatus and method for controlling access to a memory
US7383587B2 (en) * 2002-11-18 2008-06-03 Arm Limited Exception handling control in a secure processing system
GB0226874D0 (en) * 2002-11-18 2002-12-24 Advanced Risc Mach Ltd Switching between secure and non-secure processing modes
GB2396034B (en) * 2002-11-18 2006-03-08 Advanced Risc Mach Ltd Technique for accessing memory in a data processing apparatus
GB2396713B (en) * 2002-11-18 2005-09-14 Advanced Risc Mach Ltd Apparatus and method for controlling access to a memory unit
KR101099463B1 (ko) 2002-11-18 2011-12-28 에이알엠 리미티드 보안 도메인과 비보안 도메인을 갖는 시스템 내에서 가상메모리 어드레스의 물리적 메모리 어드레스로의 매핑
US7073042B2 (en) * 2002-12-12 2006-07-04 Intel Corporation Reclaiming existing fields in address translation data structures to extend control over memory accesses
US7318141B2 (en) 2002-12-17 2008-01-08 Intel Corporation Methods and systems to control virtual machines
US7793286B2 (en) * 2002-12-19 2010-09-07 Intel Corporation Methods and systems to manage machine state in virtual machine operations
US7900017B2 (en) 2002-12-27 2011-03-01 Intel Corporation Mechanism for remapping post virtual machine memory pages
US20040250105A1 (en) * 2003-04-22 2004-12-09 Ingo Molnar Method and apparatus for creating an execution shield
US7827077B2 (en) 2003-05-02 2010-11-02 Visa U.S.A. Inc. Method and apparatus for management of electronic receipts on portable devices
US20040243783A1 (en) * 2003-05-30 2004-12-02 Zhimin Ding Method and apparatus for multi-mode operation in a semiconductor circuit
US7415708B2 (en) 2003-06-26 2008-08-19 Intel Corporation Virtual machine management using processor state information
CN100363855C (zh) * 2003-07-04 2008-01-23 诺基亚有限公司 密钥存储管理方法、装置及其系统
JP4537022B2 (ja) * 2003-07-09 2010-09-01 株式会社日立製作所 データ配置に制限を設けるデータ処理方法、記憶領域制御方法、および、データ処理システム。
US8554610B1 (en) 2003-08-29 2013-10-08 Visa U.S.A. Inc. Method and system for providing reward status
TWM249049U (en) * 2003-09-09 2004-11-01 Chicony Electronics Co Ltd Digital camera
US7051923B2 (en) 2003-09-12 2006-05-30 Visa U.S.A., Inc. Method and system for providing interactive cardholder rewards image replacement
US7739521B2 (en) 2003-09-18 2010-06-15 Intel Corporation Method of obscuring cryptographic computations
US20050071656A1 (en) * 2003-09-25 2005-03-31 Klein Dean A. Secure processor-based system and method
US7681046B1 (en) 2003-09-26 2010-03-16 Andrew Morgan System with secure cryptographic capabilities using a hardware specific digital secret
US20050080934A1 (en) 2003-09-30 2005-04-14 Cota-Robles Erik C. Invalidating translation lookaside buffer entries in a virtual machine (VM) system
US8407083B2 (en) 2003-09-30 2013-03-26 Visa U.S.A., Inc. Method and system for managing reward reversal after posting
US8005763B2 (en) 2003-09-30 2011-08-23 Visa U.S.A. Inc. Method and system for providing a distributed adaptive rules based dynamic pricing system
US7149863B1 (en) * 2003-10-08 2006-12-12 Sun Microsystems, Inc. System and method of descriptively specifying memory placement in a computer system
DE10347828A1 (de) * 2003-10-10 2005-05-25 Giesecke & Devrient Gmbh Zugreifen auf Datenelemente in einem tragbaren Datenträger
US7653602B2 (en) 2003-11-06 2010-01-26 Visa U.S.A. Inc. Centralized electronic commerce card transactions
US7694151B1 (en) * 2003-11-20 2010-04-06 Johnson Richard C Architecture, system, and method for operating on encrypted and/or hidden information
US8156343B2 (en) 2003-11-26 2012-04-10 Intel Corporation Accessing private data about the state of a data processing machine from storage that is publicly accessible
US8037314B2 (en) 2003-12-22 2011-10-11 Intel Corporation Replacing blinded authentication authority
US7802085B2 (en) 2004-02-18 2010-09-21 Intel Corporation Apparatus and method for distributing private keys to an entity with minimal secret, unique information
US7620949B2 (en) 2004-03-31 2009-11-17 Intel Corporation Method and apparatus for facilitating recognition of an open event window during operation of guest software in a virtual machine environment
DE602005007531D1 (de) * 2004-04-09 2008-07-31 Proton World Int Nv Gemeinsamer Dateizugriff an unteilbaren Dateien
US7840962B2 (en) 2004-09-30 2010-11-23 Intel Corporation System and method for controlling switching between VMM and VM using enabling value of VMM timer indicator and VMM timer value having a specified time
US8146078B2 (en) 2004-10-29 2012-03-27 Intel Corporation Timer offsetting mechanism in a virtual machine environment
US7793083B2 (en) * 2004-11-26 2010-09-07 Panasonic Corporation Processor and system for selectively disabling secure data on a switch
US8924728B2 (en) 2004-11-30 2014-12-30 Intel Corporation Apparatus and method for establishing a secure session with a device without exposing privacy-sensitive information
US8533777B2 (en) 2004-12-29 2013-09-10 Intel Corporation Mechanism to determine trust of out-of-band management agents
DE102005000796A1 (de) * 2005-01-05 2006-07-13 Giesecke & Devrient Gmbh Tragbarer Datenträger mit Wasserzeichen-Funktionalität
US7395405B2 (en) 2005-01-28 2008-07-01 Intel Corporation Method and apparatus for supporting address translation in a virtual machine environment
KR100704037B1 (ko) * 2005-04-15 2007-04-04 삼성전자주식회사 이종의 비휘발성 메모리를 가지는 데이터 저장장치와 그의구동 방법
US7406711B2 (en) * 2005-09-02 2008-07-29 Motorola, Inc. Method and apparatus for enforcing independence of processors on a single IC
US7809957B2 (en) 2005-09-29 2010-10-05 Intel Corporation Trusted platform module for generating sealed data
US9573067B2 (en) * 2005-10-14 2017-02-21 Microsoft Technology Licensing, Llc Mass storage in gaming handhelds
US7496727B1 (en) 2005-12-06 2009-02-24 Transmeta Corporation Secure memory access system and method
US7845005B2 (en) * 2006-02-07 2010-11-30 International Business Machines Corporation Method for preventing malicious software installation on an internet-connected computer
US8014530B2 (en) 2006-03-22 2011-09-06 Intel Corporation Method and apparatus for authenticated, recoverable key distribution with no database secrets
US7650479B2 (en) * 2006-09-20 2010-01-19 Arm Limited Maintaining cache coherency for secure and non-secure data access requests
US20080077749A1 (en) * 2006-09-22 2008-03-27 Daniel Scott Cohen Access control of memory space in microprocessor systems
FR2908916B1 (fr) * 2006-11-17 2009-04-17 Thales Sa Systeme de traitement d'objets graphiques comportant un gestionnaire graphique securise
SG146551A1 (en) * 2007-03-29 2008-10-30 Toshiba Kk Portable electronic device and control method of portable electronic device
EP1978447B1 (en) 2007-04-05 2011-02-16 STMicroelectronics (Research & Development) Limited Integrated circuit with restricted data access
US20080270652A1 (en) * 2007-04-30 2008-10-30 Jeffrey Kevin Jeansonne System and method of tamper-resistant control
US8213612B2 (en) * 2007-12-07 2012-07-03 Inside Contactless S.A. Secure software download
FR2929729A1 (fr) * 2008-04-03 2009-10-09 Alveol Technology Sarl Dispositif de gestion de la memoire d'un environnement informatique
EP2342641A1 (fr) * 2008-09-22 2011-07-13 France Telecom Procède d'allocation de mémoire et procède de gestion de données associe a une application enregistrée dans un module de sécurité associe a un terminal, module de sécurité et terminal associes
KR101481562B1 (ko) * 2008-09-22 2015-01-13 엘지전자 주식회사 디지털 방송 수신 장치 및 그의 동작 메모리 설정 방법
US20110145082A1 (en) 2009-12-16 2011-06-16 Ayman Hammad Merchant alerts incorporating receipt data
US8429048B2 (en) 2009-12-28 2013-04-23 Visa International Service Association System and method for processing payment transaction receipts
KR101119434B1 (ko) * 2010-05-26 2012-03-16 주식회사 켐트로닉스 하나의 메모리를 공유하는 마이크로 콘트롤러 유닛, 이에 포함되는 메모리 관리 방법 및 그 방법을 실행하는 프로그램이 기록된 기록 매체
US8539245B2 (en) 2010-08-06 2013-09-17 Intel Corporation Apparatus and method for accessing a secure partition in non-volatile storage by a host system enabled after the system exits a first instance of a secure mode
WO2013048483A1 (en) * 2011-09-30 2013-04-04 Intel Corporation Platform storage hierarchy with non-volatile random access memory having configurable partitions
US9342453B2 (en) 2011-09-30 2016-05-17 Intel Corporation Memory channel that supports near memory and far memory access
WO2013048491A1 (en) 2011-09-30 2013-04-04 Intel Corporation Apparatus, method and system that stores bios in non-volatile random access memory
CN103946811B (zh) 2011-09-30 2017-08-11 英特尔公司 用于实现具有不同操作模式的多级存储器分级结构的设备和方法
US9378133B2 (en) 2011-09-30 2016-06-28 Intel Corporation Autonomous initialization of non-volatile random access memory in a computer system
WO2013048490A1 (en) 2011-09-30 2013-04-04 Intel Corporation Non-volatile random access memory (nvram) as a replacement for traditional mass storage
US8667270B2 (en) 2012-02-10 2014-03-04 Samsung Electronics Co., Ltd. Securely upgrading or downgrading platform components
US9286235B2 (en) * 2012-06-29 2016-03-15 Intel Corporation Virtual memory address range register
US9075751B2 (en) * 2012-08-09 2015-07-07 Intel Corporation Secure data protection with improved read-only memory locking during system pre-boot
KR102002900B1 (ko) 2013-01-07 2019-07-23 삼성전자 주식회사 메모리 관리 유닛을 포함하는 시스템 온 칩 및 그 메모리 주소 변환 방법
US9224452B2 (en) 2013-01-17 2015-12-29 Qualcomm Incorporated Heterogeneous memory systems, and related methods and computer-readable media for supporting heterogeneous memory access requests in processor-based systems
KR102088403B1 (ko) 2013-08-08 2020-03-13 삼성전자 주식회사 저장장치, 이를 포함하는 컴퓨터 시스템 및 이의 동작 방법
US20160048353A1 (en) * 2014-08-13 2016-02-18 Kabushiki Kaisha Toshiba Memory system and method of controlling memory system
DE102015200801A1 (de) * 2015-01-20 2016-07-21 Continental Teves Ag & Co. Ohg Elektronische Steuerungsvorrichtung
US9405515B1 (en) * 2015-02-04 2016-08-02 Rockwell Collins, Inc. Computing systems utilizing controlled dynamic libraries and isolated execution spaces
US9904586B2 (en) 2015-10-28 2018-02-27 Intel Corporation Interfacing with block-based storage in a processor
US9747041B2 (en) 2015-12-23 2017-08-29 Intel Corporation Apparatus and method for a non-power-of-2 size cache in a first level memory device to cache data present in a second level memory device
US10007606B2 (en) 2016-03-30 2018-06-26 Intel Corporation Implementation of reserved cache slots in computing system having inclusive/non inclusive tracking and two level system memory
US10185619B2 (en) 2016-03-31 2019-01-22 Intel Corporation Handling of error prone cache line slots of memory side cache of multi-level system memory
US10120806B2 (en) 2016-06-27 2018-11-06 Intel Corporation Multi-level system memory with near memory scrubbing based on predicted far memory idle time
CN107665175A (zh) * 2016-07-27 2018-02-06 展讯通信(上海)有限公司 存储器分区隔离的方法、装置及电子设备
US10915453B2 (en) 2016-12-29 2021-02-09 Intel Corporation Multi level system memory having different caching structures and memory controller that supports concurrent look-up into the different caching structures
US10445261B2 (en) 2016-12-30 2019-10-15 Intel Corporation System memory having point-to-point link that transports compressed traffic
US10304814B2 (en) 2017-06-30 2019-05-28 Intel Corporation I/O layout footprint for multiple 1LM/2LM configurations
US11188467B2 (en) 2017-09-28 2021-11-30 Intel Corporation Multi-level system memory with near memory capable of storing compressed cache lines
US10860244B2 (en) 2017-12-26 2020-12-08 Intel Corporation Method and apparatus for multi-level memory early page demotion
US20190258812A1 (en) * 2018-02-20 2019-08-22 Sensata Technologies, Inc. Memory security for automotive functional safety compliance with independent downstream processes
KR20200075565A (ko) 2018-12-18 2020-06-26 에스케이하이닉스 주식회사 스마트 카 시스템
US11055228B2 (en) 2019-01-31 2021-07-06 Intel Corporation Caching bypass mechanism for a multi-level memory

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05120891A (ja) * 1992-04-24 1993-05-18 Hitachi Ltd 半導体記憶装置
JPH05250526A (ja) * 1992-03-06 1993-09-28 Toshiba Corp 携帯可能電子装置
JPH07114497A (ja) * 1993-10-14 1995-05-02 Hitachi Ltd 半導体集積回路装置
JPH09223200A (ja) * 1995-09-29 1997-08-26 Internatl Business Mach Corp <Ibm> 多機能チップ・カード
JPH10106275A (ja) * 1996-09-30 1998-04-24 Hitachi Ltd 半導体記憶装置
JPH10198600A (ja) * 1996-10-21 1998-07-31 Ramtron Internatl Corp 読み出し/書き込みメモリ及び読み出し専用メモリとして選択的に構成可能な強誘電体メモリアレイを含むデータ・プロセッサ

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2514954B2 (ja) * 1987-03-13 1996-07-10 三菱電機株式会社 Icカ−ド
JP2682700B2 (ja) * 1989-05-09 1997-11-26 三菱電機株式会社 Icカード
JPH03276337A (ja) * 1990-03-27 1991-12-06 Toshiba Corp マイクロコントローラ
JPH06274397A (ja) * 1993-03-24 1994-09-30 Toshiba Corp ファイル管理方式

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05250526A (ja) * 1992-03-06 1993-09-28 Toshiba Corp 携帯可能電子装置
JPH05120891A (ja) * 1992-04-24 1993-05-18 Hitachi Ltd 半導体記憶装置
JPH07114497A (ja) * 1993-10-14 1995-05-02 Hitachi Ltd 半導体集積回路装置
JPH09223200A (ja) * 1995-09-29 1997-08-26 Internatl Business Mach Corp <Ibm> 多機能チップ・カード
JPH10106275A (ja) * 1996-09-30 1998-04-24 Hitachi Ltd 半導体記憶装置
JPH10198600A (ja) * 1996-10-21 1998-07-31 Ramtron Internatl Corp 読み出し/書き込みメモリ及び読み出し専用メモリとして選択的に構成可能な強誘電体メモリアレイを含むデータ・プロセッサ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007508613A (ja) * 2003-10-13 2007-04-05 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ アプリケーション毎の記憶領域割当て

Also Published As

Publication number Publication date
KR20020039374A (ko) 2002-05-25
ATE476706T1 (de) 2010-08-15
DE60044783D1 (de) 2010-09-16
WO2001029672A9 (en) 2002-08-08
WO2001029672A1 (en) 2001-04-26
AU771129B2 (en) 2004-03-11
IL149157A0 (en) 2002-11-10
NZ518400A (en) 2003-01-31
EP1242891A1 (en) 2002-09-25
US6292874B1 (en) 2001-09-18
EP1242891B1 (en) 2010-08-04
KR100734340B1 (ko) 2007-07-03
CA2387807A1 (en) 2001-04-26
AU2113701A (en) 2001-04-30
EP1242891A4 (en) 2008-08-13

Similar Documents

Publication Publication Date Title
JP2003523554A (ja) 同種のメモリを分割しかつ所定のメモリ・レンジへのインストール済みアプリケーションのアクセスを制限するためのメモリ管理方法及び装置
US7975117B2 (en) Enforcing isolation among plural operating systems
US6505278B1 (en) Method for flashing ESCD and variables into a ROM
US7640543B2 (en) Memory isolation and virtualization among virtual machines
EP2997477B1 (en) Page table data management
KR102095614B1 (ko) 메모리 보호
JP2727520B2 (ja) メモリカード及びその作動方法
US7543293B2 (en) Privelege level changing for virtual memory mapping
US7930539B2 (en) Computer system resource access control
US7831791B2 (en) Method of address space layout randomization for windows operating systems
JP4688490B2 (ja) 高セキュリティ実行モードにおいて高セキュリティカーネルを使用するトラステッド・クライアント
US8327415B2 (en) Enabling byte-code based image isolation
US11500665B2 (en) Dynamic configuration of a computer processor based on the presence of a hypervisor
CN112602060A (zh) 计算机处理器中的虚拟机寄存器
US7069445B2 (en) System and method for migration of a version of a bootable program
JPH0242528A (ja) Icメモリカード
CN112602061A (zh) 在计算机处理器中执行指令时的域交叉
CN112639779A (zh) 用于存储器地址从对象特定虚拟地址空间转换成物理地址空间的安全性配置
US7840800B2 (en) Method and system for module chaining control in a modular software architecture
JP4326054B2 (ja) 半導体電子記憶装置においてデータを保護する方法及び半導体電子記憶装置
JP2004157751A (ja) データ保護システム、データ保護プログラム及びデータ保護方法
TWI221070B (en) Increasing code separation between applications
CN110569205A (zh) 安全系统单芯片及其操作方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100607

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20101006