JPH10228421A - メモリアクセス制御回路 - Google Patents

メモリアクセス制御回路

Info

Publication number
JPH10228421A
JPH10228421A JP9030385A JP3038597A JPH10228421A JP H10228421 A JPH10228421 A JP H10228421A JP 9030385 A JP9030385 A JP 9030385A JP 3038597 A JP3038597 A JP 3038597A JP H10228421 A JPH10228421 A JP H10228421A
Authority
JP
Japan
Prior art keywords
instruction
address
access
memory
area
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
JP9030385A
Other languages
English (en)
Inventor
Junichi Ishimoto
淳一 石本
Masanori Tanaka
正則 田中
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.)
NEC IC Microcomputer Systems Co Ltd
Original Assignee
NEC IC Microcomputer Systems 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 NEC IC Microcomputer Systems Co Ltd filed Critical NEC IC Microcomputer Systems Co Ltd
Priority to JP9030385A priority Critical patent/JPH10228421A/ja
Priority to EP98102568A priority patent/EP0859319A1/en
Priority to CNB981070302A priority patent/CN1145885C/zh
Priority to KR1019980004485A priority patent/KR100319677B1/ko
Priority to US09/024,874 priority patent/US6101586A/en
Publication of JPH10228421A publication Critical patent/JPH10228421A/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/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/1425Protection 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 physical, e.g. cell, word, block
    • G06F12/1441Protection 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 physical, e.g. cell, word, block for a range
    • 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

Abstract

(57)【要約】 【課題】 不正アクセスに対して高い保護機能が得られ
るメモリアクセス制御回路を提供する。 【解決手段】 レジスタ14はプログラムカウンタ11
の値を保持する。テーブル15はメモリ上の保護領域の
アドレスを保持し、テーブル16は保護領域へのアクセ
スが許されている命令のアドレスを保持する。アクセス
検出回路17は、命令の解読結果、アクセス先のアドレ
スとテーブル15のアドレスの比較結果に基づき、保護
領域へのアクセス命令かどうかを判定する。比較回路1
8は、保護領域へのアクセス命令が検出されたとき、レ
ジスタ14、テーブル16のアドレスを比較して、保護
領域へのアクセスが許されていないエリアから読み出さ
れた命令と判断したときに禁止信号を出力して、不正な
メモリアクセスを禁止する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータシス
テム等におけるメモリアクセス制御回路に係り、特にメ
モリ上の保護すべき領域に対するアクセスを検出して不
正なアクセスを禁止するメモリアクセス制御回路に関す
るものである。
【0002】
【従来の技術】従来より、コンピュータプログラムの開
発は多大な時間を要する作業である。コンピュータプロ
グラムの開発者は、そのプログラムを売ることによって
開発費用を賄ってきた。しかし、第3者がメモリ上のプ
ログラムやデータを読み出すためのプログラムを作成し
て、メモリからプログラムやデータを読み出すことは可
能であり、このようなコピーが容易に行われると、開発
費用を賄うことは困難となる。また、暗号アルゴリズム
に用いる暗号処理ルーチンやデータがメモリに書き込ま
れている暗号回路において、これらのデータがメモリか
ら読み出されてしまうと、暗号化する前の平文が解読さ
れてしまうことになる。
【0003】そこで、このようなメモリへの不正アクセ
スを防止するためのメモリアクセス制御回路が提案され
ている(例えば、特開昭59−11600号公報)。図
6は特開昭59−11600号公報に開示された従来の
メモリアクセス制御回路のブロック図である。このメモ
リアクセス制御回路は、CPU31、不揮発性メモリ3
2,一時的メモリ33、外部インタフェース手段34、
アドレスバス35、データバス36、不揮発性メモリ3
2に記憶された情報の保護状況を示すプログラム保護ビ
ット37、不揮発性メモリ32へのアクセスを判断する
アドレス論理38、外部インタフェース手段34の操作
を禁止するための外部インタフェース禁止論理手段3
9、不揮発性メモリ32の操作を禁止するための操作禁
止バッファ40、一時的メモリ33の操作を禁止するた
めの操作禁止バッファ41、命令の取得がいつ行われる
かを判断する命令取得論理42から構成されている。
【0004】このような構成により、このメモリアクセ
ス制御回路は、不揮発性メモリ32又は一時的メモリ3
3の保護すべき領域から保護されていない領域への情報
の転送を禁止する。こうして、第3者が一時的メモリ3
3上のプログラムを実行することで、不揮発性メモリ3
2上の保護すべきデータを一時的メモリ33上に不正に
読み出すことができなくなる。
【0005】
【発明が解決しようとする課題】しかし、このような従
来のメモリアクセス制御回路では、メモリ間のデータ転
送を禁止しているだけなので、メモリ上の保護すべきデ
ータをCPUのアキュムレータ等の汎用レジスタに一旦
読み出して、これに何らかの演算を加えた後にメモリに
読み出すことは禁止できず、このような演算結果を得る
ことで保護すべき元のデータが判明してしまうという問
題点があった。例えば、保護領域内のデータをアキュム
レータに読み出し、これに「0」を加算するといった簡
単な演算をした後に、演算結果をメモリに読み出せば、
保護すべき元のデータを容易に知ることができる。ま
た、ある演算を行ったときのCPUが内蔵するステータ
スフラグ(例えばキャリフラグなど)の状態変化を調べ
ることで、保護すべき元データを間接的に知ることもで
きる。本発明は、上記課題を解決するためになされたも
ので、不正アクセスに対して高い保護機能が得られるメ
モリアクセス制御回路を提供することを目的とする。
【0006】
【課題を解決するための手段】本発明のメモリアクセス
制御回路は、請求項1に記載のように、実行すべき命令
が格納されたメモリ上の位置を表す命令フェッチアドレ
スを保持する第1のアドレス保持手段と、メモリ上の保
護すべき領域のアドレスを保持する第2のアドレス保持
手段と、保護領域へのアクセスが許されている命令のメ
モリ上の位置を表す命令フェッチアドレスを保持する第
3のアドレス保持手段と、メモリから読み出された命令
の解読結果、及びこの命令が示すアクセス先のアドレス
と第2のアドレス保持手段に保持されたアドレスの比較
結果に基づいて、保護領域へのアクセス命令かどうかを
判定するアクセス検出手段と、このアクセス検出手段に
より保護領域へのアクセス命令が検出されたとき、第
1、第3のアドレス保持手段に保持された命令フェッチ
アドレスを比較して、保護領域へのアクセスが許されて
いない格納位置から読み出された命令と判断したときに
禁止信号を出力する比較手段と、禁止信号が出力された
ときにメモリアクセスを禁止する禁止手段とを有するも
のである。このように、アクセス検出手段によって保護
領域へのアクセス命令かどうかを判定し、保護領域への
アクセス命令が検出されたとき、保護領域へのアクセス
が許されている格納位置から読み出された命令かどうか
を比較手段によって判断して、保護領域へのアクセスが
許されていない格納位置から読み出された命令と判断し
たときに禁止信号を出力し、禁止手段によってメモリア
クセスを禁止することにより、保護領域への不正なアク
セスを禁止することができる。
【0007】また、請求項2に記載のように、実行すべ
き命令が格納されたメモリ上の位置を表す命令フェッチ
アドレスを保持する第1のアドレス保持手段と、保護領
域のアドレスを保持する第2のアドレス保持手段と、保
護領域への分岐が許されている分岐命令のメモリ上の位
置を表す命令フェッチアドレスを保持する第3のアドレ
ス保持手段と、メモリから読み出された命令の解読結
果、及びこの命令が示す分岐先のアドレスと第2のアド
レス保持手段に保持されたアドレスの比較結果に基づい
て、保護領域への分岐命令かどうかを判定するアクセス
検出手段と、このアクセス検出手段により保護領域への
分岐命令が検出されたとき、第1、第3のアドレス保持
手段に保持された命令フェッチアドレスを比較して、保
護領域への分岐が許されていない格納位置から読み出さ
れた命令と判断したときに禁止信号を出力する比較手段
と、禁止信号が出力されたときに分岐命令の実行を禁止
する禁止手段とを有するものである。このように、アク
セス検出手段によって保護領域への分岐命令かどうかを
判定し、保護領域への分岐命令が検出されたとき、保護
領域への分岐が許されている格納位置から読み出された
命令かどうかを比較手段によって判断して、保護領域へ
の分岐が許されていない格納位置から読み出された命令
と判断したときに禁止信号を出力し、禁止手段によって
分岐命令の実行を禁止することにより、保護領域への不
正な分岐を禁止することができる。
【0008】
【発明の実施の形態】
実施の形態の1.以下、本発明の実施の形態について図
面を参照して説明する。図1は本発明の第1の実施の形
態を示すメモリアクセス制御回路のブロック図である。
本実施の形態のメモリアクセス制御回路は、CPU1、
製造時に書き込みが行われ以後は書き換えることのでき
ないマスクROM(Read Only Memory)2、書き込みと
消去が電気的に可能なEEPROM(Electrically Era
sable and Programmable ROM)3、RAM(Random Acc
ess Memory)4、データ情報をやり取りするためのデー
タバス5、アドレス情報をやり取りするためのアドレス
バス6、インストラクションバス7から構成されてい
る。
【0009】そして、CPU1は、図示しないアキュム
レータ等の汎用レジスタや論理演算ユニットの他に、実
行すべき命令が格納されたメモリ上の位置を表すプログ
ラムカウンタ11、メモリから取り出された命令語を保
持する命令レジスタ12、この命令レジスタ12に格納
された命令語を解読する命令デコーダ13、プログラム
カウンタ11の出力である命令フェッチアドレスを保持
する第1のアドレス保持手段となる命令フェッチアドレ
スレジスタ14、メモリ上の保護すべき領域のアドレス
を保持する第2のアドレス保持手段となるエリアテーブ
ル15、保護領域へのアクセスが許されている命令のメ
モリ上の位置を表す命令フェッチアドレスを保持する第
3のアドレス保持手段となるエリアテーブル16、デコ
ーダ13による命令の解読結果、及びこの命令が示すア
クセス先のアドレスとテーブル15に保持されたアドレ
スの比較結果に基づいて、保護領域へのアクセス命令か
どうかを判定するアクセス検出回路17、この検出回路
17により保護領域へのアクセス命令が検出されたと
き、レジスタ14、テーブル16に保持された命令フェ
ッチアドレスを比較して、保護領域へのアクセスが許さ
れていない格納位置から読み出された命令と判断したと
きに禁止信号を出力する比較回路18、禁止信号が出力
されたときにデコーダ13からコントロール回路20へ
の信号を抑止するゲート回路、セレクタ21、バッファ
22〜26から構成されている。そして、命令デコーダ
13、ゲート回路19、コントロール回路20が禁止手
段を構成している。
【0010】本実施の形態のメモリアクセス制御回路
は、マスクROM2及びEEPROM3が実行命令を格
納するプログラムエリアとデータを格納するデータエリ
アをそれぞれ有し、マスクROM2あるいはEEPRO
M3上の保護すべき領域に書き込まれたデータ(例え
ば、暗号アルゴリズムに用いられる暗号鍵)を保護する
ためのものである。
【0011】次に、このようなメモリアクセス制御回路
の動作を説明する。図2はメモリアクセス制御回路の動
作を説明するためのタイミングチャート図である。この
メモリアクセス制御回路を含むコンピュータシステム
は、プログラムカウンタ11から出力される命令フェッ
チアドレスに従って、ROM2あるいはROM3から命
令語を逐次取り出し、解読して実行する。
【0012】ROM2あるいはROM3から命令を取り
出す命令フェッチ時、命令デコーダ13からの制御信号
により、セレクタ21はプログラムカウンタ11の出力
を選択し、バッファ22はイネーブル状態となってい
る。これにより、プログラムカウンタ11から出力され
た命令フェッチアドレスは、セレクタ21を介してマス
クROM2に与えられ、バッファ22、アドレスバス6
を介してEEPROM3に与えられる。
【0013】この命令フェッチアドレスがマスクROM
2に割り当てられたアドレスであれば、ROM2の該当
アドレスの命令語がインストラクションバス7に出力さ
れ、EEPROM3に割り当てられたアドレスであれ
ば、ROM3の該当アドレスの命令語がインストラクシ
ョンバス7に出力される。そして、インストラクション
バス7に出力された命令語は、命令レジスタ12に格納
される。
【0014】ところで、命令語は、操作を指定する命令
コードと、操作の対象となるデータ(オペランド)を指
定するオペランドコードとからなる。今、ROM2ある
いはROM3にアクセスする命令語(ここでは、データ
読み出し命令とする)が2バイト2ステート(命令コー
ドが1バイト、オペランドコードが1バイト)の命令形
式であったとすると、命令フェッチアドレスは、図2
(b)に示すように、前の命令の最終ステートにおい
て、データ読み出し命令の命令コードが格納されている
位置を指すアドレスADとなり、次のステートにおい
て、その命令のオペランドコードが格納されている位置
を指すアドレスAD+1となる。
【0015】したがって、命令レジスタ12には、図2
(d)に示すように、前の命令サイクルの最終ステート
において命令コードが格納され、次のステートにおいて
オペランドコードが格納される。一方、図2(c)に示
すように、プログラムカウンタ11から出力される命令
フェッチアドレスのうち、命令コードのアドレスADが
命令フェッチアドレスレジスタ14に格納される。この
レジスタ14は、次の命令フェッチによって内容が更新
されるまで、その内容を保持し続ける。
【0016】続いて、命令デコーダ13は、命令レジス
タ12に格納された命令コードをこの命令サイクルの最
初のステートで解読し、データ読み出し命令であれば、
制御信号を出力して、バッファ23〜25をイネーブル
状態にし、セレクタ21がバッファ23の出力を選択す
るように制御する。これにより、命令コードの次に命令
レジスタ12に格納されるオペランドコードがデータア
クセス先のアドレスMとしてバッファ24を介してアド
レスバス6に出力され、バッファ23、セレクタ21を
介してROM2に与えられ、アドレスバス6を介してE
EPROM3に与えられる。
【0017】また、命令デコーダ13は、命令コードの
解読結果がデータ読み出し命令であれば、データ読み出
し命令であることを示す制御信号を出力する。この信号
はゲート回路19を通ってコントロール回路20に入力
される。このゲート回路の動作については後述する。こ
れにより、コントロール回路20からメモリリード信号
が出力される。
【0018】メモリリード信号が出力されたとき、マス
クROM2に与えられたアドレスがROM2に割り当て
られたアドレスであれば、ROM2の該当アドレスのデ
ータがバッファ25を介してデータバス5に出力され、
EEPROM3に割り当てられたアドレスであれば、R
OM3の該当アドレスのデータがデータバス5に出力さ
れる。このデータバス5に出力されたデータは、CPU
1内の図示しないアキュムレータ等の汎用レジスタに格
納される。こうして、データ読み出し命令のフェッチと
実行が終了する。
【0019】以上のような命令フェッチと命令実行にお
いて、メモリから読み出された命令が保護領域へのアク
セス命令であった場合には、その命令がどのメモリエリ
アから読み出されたものかを識別して、保護領域へのア
クセスが許されているエリアから読み出された命令であ
れば、通常通り命令の実行を継続するが、保護領域への
アクセスが許されていないエリアから読み出された命令
であれば、メモリアクセス操作を禁止する。次に、この
動作について説明する。
【0020】まず、エリアテーブル15には、マスクR
OM2あるいはEEPROM3内の保護領域のアドレス
が格納され、エリアテーブル16には、保護領域へのア
クセスが許されている命令の命令フェッチアドレスが格
納されている。これらの情報を設定するには、エリアテ
ーブル15,16にアドレス情報を書き込むためのプロ
グラムをROM2あるいはROM3に格納しておき、立
ち上げ時にエリアテーブル15,16に書き込みが行わ
れるようにすればよい。また、エリアテーブル15,1
6をROMとし、プログラムの作成時に書き込みを行う
ようにしてもよい。
【0021】アクセス検出回路17は、命令デコーダ1
3がメモリアクセス命令であると識別したとき、エリア
テーブル15に保持されたアドレスとアドレスバス6に
出力されたアドレス(オペランドコードから得られたデ
ータアクセス先のアドレス)とを比較して、保護領域へ
のアクセス命令かどうかを判定する。
【0022】ここで、エリアテーブル15に登録された
アドレスは、保護領域のアドレスなので、例えば「80
00」番地から「8FFF」番地のように特定のアドレ
ス範囲が登録されている。したがって、アクセス検出回
路17は、テーブル15に登録されたアドレス範囲中に
アドレスバス6に出力されたアドレスと一致するものが
あれば、保護領域へのアクセス命令と判断し、一致する
ものがなければ、保護領域へのアクセス命令ではないと
判断する。
【0023】また、エリアテーブル15に登録されたア
ドレス範囲中に該当するアドレスがあるかどうかを調べ
ればよいので、アドレスの全ビットを比較しなくてもよ
い。例えば、テーブル15に登録されたアドレスが「8
000」番地から「8FFF」番地であれば、この16
ビットのアドレス情報の上位4ビットが「1000」な
ので、上位4ビットのみ比較すればよい。
【0024】続いて、比較回路18は、アクセス検出回
路17が保護領域へのアクセス命令であると判断したと
き、命令フェッチアドレスレジスタ14に保持された命
令フェッチアドレスとエリアテーブル16に保持された
命令フェッチアドレスとを比較して、保護領域へのアク
セスが許されているエリアから読み出された命令かどう
かを判定する。
【0025】このとき、エリアテーブル16にも特定の
アドレス範囲が登録されているので、比較回路18は、
エリアテーブル16に登録された命令フェッチアドレス
中に命令フェッチアドレスレジスタ14に保持された命
令フェッチアドレスと一致するものがあれば、保護領域
へのアクセスが許されているエリアから読み出された命
令であると判断し、一致するものがなければ、保護領域
へのアクセスが許されていないエリアから読み出された
命令であると判断する。そして、比較回路18は、保護
領域へのアクセスが許されていないエリアから読み出さ
れた命令であると判断したときに、禁止信号を出力す
る。
【0026】ゲート回路19は、比較回路18から禁止
信号が出力されると、命令デコーダ13からコントロー
ル回路20への信号出力を抑止する。これにより、デー
タ読み出し命令であることを示す信号がコントロール回
路20に入力されないので、図2(f)の破線で示すメ
モリリード信号RDがコントロール回路20から出力さ
れなくなる。
【0027】こうして、上記のようにエリアテーブル1
5,16にアドレス情報を予め設定しておけば、保護領
域へアクセスしない命令、あるいは保護領域へアクセス
する命令であっても、保護領域へのアクセスが許されて
いるエリアから読み出された命令であれば、正常に実行
され、一方、保護領域へのアクセスが許されていないエ
リアから読み出された命令であれば、不正な命令プログ
ラムと判断されて、メモリアクセスが禁止される。
【0028】したがって、第3者がEEPROM3上に
不正な命令プログラムを書き込み、ROM2あるいはR
OM3の保護領域からデータを不正に読み出そうとして
も、保護領域からデータを読み出すことはできず、保護
領域のデータに対して演算を行うこともできない。
【0029】なお、本実施の形態では、データ読み出し
命令について説明しているが、その他のメモリアクセス
命令についても同様に適用でき、例えば、EEPROM
3へのデータ書き込み命令であれば、上記の説明におけ
るデータアクセス先のアドレスがメモリ上の書き込み位
置となり、メモリリード信号がメモりライト信号となる
ことは言うまでもない。
【0030】実施の形態の2.図3は本発明の他の実施
の形態を示すメモリアクセス制御回路のブロック図であ
り、図1と同一の構成には同一の符号を付してある。本
実施の形態のメモリアクセス制御回路は、マスクROM
2あるいはEEPROM3上に例えば暗号処理ルーチン
のような第3者に知られたくない命令処理サブプログラ
ムが書き込まれているときに、その処理ルーチン内で行
っている処理内容を保護するためのものである。
【0031】このようなメモリアクセス制御回路の動作
を説明する。図4、図5はメモリアクセス制御回路の動
作を説明するためのタイミングチャート図である。な
お、図4は、分岐命令が保護領域への分岐が許されてい
るエリアから読み出された命令であった場合を示し、図
5は、分岐命令が保護領域への分岐が許されていないエ
リアから読み出された命令であった場合を示している。
【0032】ROM2あるいはROM3から命令を取り
出す命令フェッチ時、プログラムカウンタ11から出力
された命令フェッチアドレスは、実施の形態の1と同様
に、セレクタ21を介してマスクROM2に与えられ、
バッファ22、アドレスバス6を介してEEPROM3
に与えられる。
【0033】この命令フェッチアドレスがマスクROM
2に割り当てられたアドレスであれば、ROM2の該当
アドレスの命令語がインストラクションバス7に出力さ
れ、EEPROM3に割り当てられたアドレスであれ
ば、ROM3の該当アドレスの命令語がインストラクシ
ョンバス7に出力される。そして、インストラクション
バス7に出力された命令語は、命令レジスタ12に格納
される。
【0034】今、サブルーチンに分岐する分岐命令が2
バイト2ステートの命令形式であったとすると、命令フ
ェッチアドレスは、図4(b)に示すように、前の命令
の最終ステートにおいて、分岐命令の命令コードが格納
されている位置を指すアドレスADとなり、次のステー
トにおいて、その命令のオペランドコードが格納されて
いる位置を指すアドレスAD+1となる。
【0035】したがって、命令レジスタ12には、図4
(d)に示すように、前の命令サイクルの最終ステート
において命令コードが格納され、次のステートにおいて
オペランドコードが格納される。一方、図4(c)に示
すように、プログラムカウンタ11から出力される命令
フェッチアドレスのうち、命令コードのアドレスADが
命令フェッチアドレスレジスタ14に格納される。
【0036】続いて、命令デコーダ13は、命令レジス
タ12に格納された命令コードをこの命令サイクルの最
初のステートで解読し、分岐命令であれば、制御信号を
出力して、バッファ22,24,26をイネーブル状態
にし、セレクタ21がプログラムカウンタ11の出力を
選択するように制御する。
【0037】これにより、命令コードの次に命令レジス
タ12に格納されるオペランドコードが、分岐先のアド
レスNとしてバッファ24を介してアドレスバス6に出
力され、さらにバッファ26を経由してプログラムカウ
ンタ11に格納される。こうして、プログラムカウンタ
11から出力される命令フェッチアドレスが、図4
(b)に示すように、アドレスNとなる。そして、この
命令フェッチアドレスは、セレクタ21を介してマスク
ROM2に与えられ、バッファ22、アドレスバス6を
介してEEPROM3に与えられる。
【0038】この命令フェッチアドレスがマスクROM
2に割り当てられたアドレスであれば、ROM2の該当
アドレスの命令語がインストラクションバス7に出力さ
れ、EEPROM3に割り当てられたアドレスであれ
ば、ROM3の該当アドレスの命令語がインストラクシ
ョンバス7に出力される。そして、インストラクション
バス7に出力された命令語は、命令レジスタ12に格納
される。こうして、分岐処理が行われる。
【0039】プログラムカウンタ11から出力される命
令フェッチアドレスは、通常、命令フェッチと命令実行
に伴って、初期設定値からインクリメントしながら更新
されていくが、上記のように分岐命令がメモリから読み
出されると、分岐先のアドレスに更新されて、プログラ
ム実行のアドレス分岐が行われる。
【0040】以上のような分岐命令フェッチと分岐命令
実行において、メモリから読み出された命令が保護領域
への分岐命令であった場合には、その命令がどのメモリ
エリアから読み出されたものかを識別して、保護領域へ
の分岐が許されているエリアから読み出された命令であ
れば、通常通り分岐を実行するが、保護領域への分岐が
許されていないエリアから読み出された命令であれば、
分岐命令の実行を禁止する。次に、この動作について説
明する。
【0041】まず、エリアテーブル15には、マスクR
OM2あるいはEEPROM3内の保護領域のアドレス
が格納され、エリアテーブル16aには、保護領域への
分岐が許されている分岐命令の命令フェッチアドレスが
格納されている。これらの情報の設定の仕方は、実施の
形態の1と同様でよい。
【0042】アクセス検出回路17aは、命令デコーダ
13が分岐命令であると識別したとき、エリアテーブル
15に保持されたアドレスとアドレスバス6に出力され
たアドレス(オペランドコードから得られた分岐先のア
ドレス)とを比較して、保護領域への分岐命令かどうか
を判定する。
【0043】つまり、アクセス検出回路17aは、エリ
アテーブル15に登録されたアドレス範囲中にアドレス
バス6に出力されたアドレスと一致するものがあれば、
保護領域への分岐命令と判断し、一致するものがなけれ
ば、保護領域への分岐命令ではないと判断する。
【0044】続いて、比較回路18aは、アクセス検出
回路17aが保護領域への分岐命令であると判断したと
き、命令フェッチアドレスレジスタ14に保持された命
令フェッチアドレスとエリアテーブル16aに保持され
た命令フェッチアドレスとを比較して、保護領域への分
岐が許されているエリアから読み出された命令かどうか
を判定する。
【0045】つまり、比較回路18aは、エリアテーブ
ル16aに登録された命令フェッチアドレス中に命令フ
ェッチアドレスレジスタ14に保持された命令フェッチ
アドレスと一致するものがあれば、保護領域への分岐が
許されているエリアから読み出された命令であると判断
し、一致するものがなければ、保護領域への分岐が許さ
れていないエリアから読み出された命令であると判断す
る。そして、比較回路18aは、保護領域への分岐が許
されていないエリアから読み出された命令であると判断
したときに、禁止信号を出力する。
【0046】コントロール回路20aは、比較回路18
aから禁止信号が出力されると、CPU1aの外部から
リセット信号が入力されたときと同様のCPUリセット
が実施される内部リセット信号を図5(f)のように出
力し、CPUリセットをかける。同時に、この内部リセ
ット信号はCPU1aの周辺回路にも出力され、CPU
周辺の回路についても同様にリセットされる。
【0047】内部リセット信号が出力されると、プログ
ラムカウンタ11がゼロクリアされるために、命令フェ
ッチアドレスは、図5(b)に示すように、「000
0」となる。これにより、分岐命令のステータス後はリ
セットベクタ処理ルーチンが実行される。
【0048】サブルーチン(サブプログラム)がROM
2あるいはROM3上に書き込まれていた場合、サブル
ーチンを読み出そうとする第3者は、サブルーチンをコ
ールするような命令プログラムをメモリに書き込むこと
が考えられる。通常、このようなサブルーチンが書き込
まれているアドレスは、第3者には知りえないものであ
るが、周辺装置の動きや、そのときのデータバス5、ア
ドレスバス6上のデータを外部からモニタすることによ
り、予測することは可能である。この場合、サブルーチ
ンに大量の解析用データを順次与え、得られた膨大な結
果から処理結果を解析することにより、サブルーチンで
行っている処理内容が解読されるおそれがある。
【0049】本実施の形態によれば、エリアテーブル1
5,16aにアドレス情報を予め設定しておくことによ
り、保護領域へ分岐しない命令、あるいは保護領域へ分
岐する命令であっても、保護領域への分岐が許されてい
るエリアから読み出された命令であれば、正常に実行さ
れ、一方、保護領域への分岐が許されていないエリアか
ら読み出された命令であれば、不正な命令プログラムと
判断されて、処理がリセットされる。
【0050】したがって、第3者がEEPROM3上に
不正な命令プログラムを書き込んだとしても、ROM2
あるいはROM3上の保護領域のサブルーチンをコール
することはできず、このサブルーチンに解析用データを
与えることはできない。
【0051】なお、本実施の形態では、コントロール回
路20aを禁止手段としているが、比較回路18aから
出力される禁止信号を命令デコーダ13に与えることに
より、命令デコーダ13を禁止手段としてもよい。命令
デコーダ13は、分岐命令をフェッチしたとき、プログ
ラムカウンタ11の値を分岐先のアドレスに更新する制
御を行うが、比較回路18aから禁止信号が入力される
と、アドレスを更新するための制御信号にマスクをかけ
る。
【0052】よって、禁止信号が出力されると、プログ
ラムカウンタ11から出力される命令フェッチアドレス
は、分岐先のアドレスに更新されることなく、通常通り
に+1インクリメントされるので、実質的にはNOP
(NO 0peration)命令が実行されたときと同じとなる。
こうして、上記と同様の効果を得ることができる。
【0053】また、禁止信号が出力されたとき、コント
ロール回路20aが、CPU1aの外部からインタラプ
ト信号が入力されたときと同様の割り込み処理をかけて
もよい。この場合は、ノンマスク割り込みが強制的に起
動し、割り込み処理ルーチン内で何らかの処理(例え
ば、不正なアクセスである旨を表示装置上に表示するな
ど)が行われることになる。
【0054】また、複数の命令を決められた命令フェッ
チアドレス順に実行した後に分岐命令を実行する以外
は、分岐命令の実行を禁止するようにすれば、保護機能
をより高めることができる。
【0055】これは、複数の命令コードの命令フェッチ
アドレスを命令フェッチアドレスレジスタ14に格納で
きるようにして、エリアテーブル16aに保護領域への
分岐が許されている分岐命令の命令フェッチアドレスだ
けでなく、この分岐命令の前に実行される複数の命令の
命令フェッチアドレスを設定し、比較回路18aでレジ
スタ14とテーブル16aの内容を比較させればよい。
【0056】なお、実施の形態の1、2では、メモリの
構成をマスクROM2、EEPROM3、RAM4から
なるものとしているが、これに限るものではない。ま
た、バスの構成をデータバス5、アドレスバス6、イン
ストラクションバス7の3本としているが、インストラ
クションバスがないものでも構わない。この場合は、デ
ータバス上にデータと命令が時分割に存在することにな
る。また、RAM4に保護領域があってもよく、RAM
4から命令をフェッチしてもよい。
【0057】
【発明の効果】本発明によれば、請求項1に記載のよう
に、アクセス検出手段によって保護領域へのアクセス命
令かどうかを判定し、保護領域へのアクセス命令が検出
されたとき、保護領域へのアクセスが許されている格納
位置から読み出された命令かどうかを比較手段によって
判断し、保護領域へのアクセスが許されていない格納位
置から読み出された命令と判断したときに、不正なアク
セスと見なして禁止信号を出力し、禁止手段によってメ
モリアクセスを禁止することにより、保護領域への不正
なアクセスを禁止することができるので、保護領域のデ
ータを保護することができ、高い保護機能を実現するこ
とができる。よって、メモリ間の転送命令のみならずメ
モリアクセスに係わる全ての命令に対して不正なアクセ
スかどうかを判定するので、保護領域内のデータをメモ
リに直接読み出さずに保護領域内のデータに何らかの演
算を行ってデータ内容を間接的に知ることもできなくな
る。
【0058】また、請求項2に記載のように、アクセス
検出手段によって保護領域への分岐命令かどうかを判定
し、保護領域への分岐命令が検出されたとき、保護領域
への分岐が許されている格納位置から読み出された命令
かどうかを比較手段によって判断して、保護領域への分
岐が許されていない格納位置から読み出された命令と判
断したときに、不正な命令と見なして禁止信号を出力
し、禁止手段によって分岐命令の実行を禁止することに
より、保護領域への不正な分岐を禁止することができる
ので、保護領域のサブプログラムを保護することができ
る。これにより、外部からの不正なアクセスにより、不
要に保護領域内の命令プログラムを実行させることを禁
止し、第3者による命令プログラム解読等の不正なアク
セスを妨げることができる。
【図面の簡単な説明】
【図1】 本発明の第1の実施の形態を示すメモリアク
セス制御回路のブロック図である。
【図2】 図1のメモリアクセス制御回路の動作を説明
するためのタイミングチャート図である。
【図3】 本発明の他の実施の形態を示すメモリアクセ
ス制御回路のブロック図である。
【図4】 図3のメモリアクセス制御回路の動作を説明
するためのタイミングチャート図である。
【図5】 図3のメモリアクセス制御回路の動作を説明
するためのタイミングチャート図である。
【図6】 従来のメモリアクセス制御回路のブロック図
である。
【符号の説明】
1、1a…CPU、2…マスクROM、3…EEPRO
M、4…RAM、5…データバス、6…アドレスバス、
7…インストラクションバス、11…プログラムカウン
タ、12…命令レジスタ、13…命令デコーダ、14…
命令フェッチアドレスレジスタ、15、16、16a…
エリアテーブル、17、17a…アクセス検出回路、1
8、18a…比較回路、19…ゲート回路、20、20
a…コントロール回路。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 メモリ上の保護すべき領域に対するアク
    セスを検出して不正なアクセスを禁止するメモリアクセ
    ス制御回路であって、 実行すべき命令が格納されたメモリ上の位置を表す命令
    フェッチアドレスを保持する第1のアドレス保持手段
    と、 前記保護領域のアドレスを保持する第2のアドレス保持
    手段と、 前記保護領域へのアクセスが許されている命令のメモリ
    上の位置を表す命令フェッチアドレスを保持する第3の
    アドレス保持手段と、 メモリから読み出された命令の解読結果、及びこの命令
    が示すアクセス先のアドレスと第2のアドレス保持手段
    に保持されたアドレスの比較結果に基づいて、保護領域
    へのアクセス命令かどうかを判定するアクセス検出手段
    と、 このアクセス検出手段により保護領域へのアクセス命令
    が検出されたとき、第1、第3のアドレス保持手段に保
    持された命令フェッチアドレスを比較して、保護領域へ
    のアクセスが許されていない格納位置から読み出された
    命令と判断したときに禁止信号を出力する比較手段と、 禁止信号が出力されたときにメモリアクセスを禁止する
    禁止手段とを有することを特徴とするメモリアクセス制
    御回路。
  2. 【請求項2】 メモリ上の保護すべき領域に対するアク
    セスを検出して不正なアクセスを禁止するメモリアクセ
    ス制御回路であって、 実行すべき命令が格納されたメモリ上の位置を表す命令
    フェッチアドレスを保持する第1のアドレス保持手段
    と、 前記保護領域のアドレスを保持する第2のアドレス保持
    手段と、 前記保護領域への分岐が許されている分岐命令のメモリ
    上の位置を表す命令フェッチアドレスを保持する第3の
    アドレス保持手段と、 メモリから読み出された命令の解読結果、及びこの命令
    が示す分岐先のアドレスと第2のアドレス保持手段に保
    持されたアドレスの比較結果に基づいて、保護領域への
    分岐命令かどうかを判定するアクセス検出手段と、 このアクセス検出手段により保護領域への分岐命令が検
    出されたとき、第1、第3のアドレス保持手段に保持さ
    れた命令フェッチアドレスを比較して、保護領域への分
    岐が許されていない格納位置から読み出された命令と判
    断したときに禁止信号を出力する比較手段と、 禁止信号が出力されたときに分岐命令の実行を禁止する
    禁止手段とを有することを特徴とするメモリアクセス制
    御回路。
JP9030385A 1997-02-14 1997-02-14 メモリアクセス制御回路 Pending JPH10228421A (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP9030385A JPH10228421A (ja) 1997-02-14 1997-02-14 メモリアクセス制御回路
EP98102568A EP0859319A1 (en) 1997-02-14 1998-02-13 Memory access control circuit
CNB981070302A CN1145885C (zh) 1997-02-14 1998-02-14 存储器存取控制电路
KR1019980004485A KR100319677B1 (ko) 1997-02-14 1998-02-14 메모리액세스제어회로
US09/024,874 US6101586A (en) 1997-02-14 1998-02-17 Memory access control circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9030385A JPH10228421A (ja) 1997-02-14 1997-02-14 メモリアクセス制御回路

Publications (1)

Publication Number Publication Date
JPH10228421A true JPH10228421A (ja) 1998-08-25

Family

ID=12302439

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9030385A Pending JPH10228421A (ja) 1997-02-14 1997-02-14 メモリアクセス制御回路

Country Status (5)

Country Link
US (1) US6101586A (ja)
EP (1) EP0859319A1 (ja)
JP (1) JPH10228421A (ja)
KR (1) KR100319677B1 (ja)
CN (1) CN1145885C (ja)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6202154B1 (en) * 1997-04-16 2001-03-13 Hitachi,Ltd. Data transfer controller, microcomputer and data processing system
JP2005301949A (ja) * 2004-03-19 2005-10-27 Toshiba Kyaria Kk マイクロコンピュータ
WO2006040798A1 (ja) * 2004-10-08 2006-04-20 Renesas Technology Corp. 半導体集積回路装置および電子システム
US7266658B2 (en) 2002-09-12 2007-09-04 International Business Machines Corporation System, method, and computer program product for prohibiting unauthorized access to protected memory regions
JP2009059303A (ja) * 2007-09-03 2009-03-19 Kyoraku Sangyo Kk アクセス制御装置、アクセス制御方法およびアクセス制御プログラム
JP2010002975A (ja) * 2008-06-18 2010-01-07 Dainippon Printing Co Ltd 情報処理装置、正常処理判別方法、及び情報処理プログラム
JP2013161479A (ja) * 2012-02-08 2013-08-19 Arm Ltd セキュアドメインおよび低セキュアドメインを使用するデータ処理装置および方法
JP2015018552A (ja) * 2013-07-09 2015-01-29 晶心科技股▲ふん▼有限公司Andes Technology Corporation 安全保護方法およびプロセッサ
JP2015525916A (ja) * 2012-06-27 2015-09-07 ノルディック セミコンダクタ アーエスアーNordic Semiconductor ASA メモリ保護装置及び保護方法
US9305183B2 (en) 2000-06-30 2016-04-05 Intel Corporation Method and apparatus for secure execution using a secure memory partition
US10025923B2 (en) 2012-02-08 2018-07-17 Arm Limited Data processing apparatus and method for protecting secure data and program code from non-secure access when switching between secure and less secure domains
US10083040B2 (en) 2012-02-08 2018-09-25 Arm Limited Exception handling in a data processing apparatus having a secure domain and a less secure domain
US10169573B2 (en) 2012-02-08 2019-01-01 Arm Limited Maintaining secure data isolated from non-secure access when switching between domains
US10210349B2 (en) 2012-02-08 2019-02-19 Arm Limited Data processing apparatus and method using secure domain and less secure domain
US11757624B2 (en) 2019-09-24 2023-09-12 Kabushiki Kaisha Toshiba Data transfer control device, data transfer control system, and data transfer control method

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11238016A (ja) * 1998-02-23 1999-08-31 Nec Corp メモリ保護方法及び装置
DE19846676C1 (de) 1998-10-09 2000-03-02 Siemens Ag Verfahren zur Absicherung von Einsprungsadressen
US6832257B1 (en) * 1998-12-07 2004-12-14 Sony Corporation Computer, recorded medium on which address validity checking program is recorded, and address validity checking method
US6488581B1 (en) * 1999-06-22 2002-12-03 Igt Mass storage data protection device for a gaming machine
CN100385412C (zh) * 1999-10-26 2008-04-30 华硕电脑股份有限公司 存储器模组控制装置
US6615324B1 (en) * 2000-01-07 2003-09-02 Cygnal Integrated Products, Inc. Embedded microprocessor multi-level security system in flash memory
US6643751B2 (en) * 2000-03-20 2003-11-04 Texas Instruments Incorporated System and method for limited access to system memory
US7171542B1 (en) * 2000-06-19 2007-01-30 Silicon Labs Cp, Inc. Reconfigurable interface for coupling functional input/output blocks to limited number of i/o pins
US20050066178A1 (en) * 2000-07-31 2005-03-24 Rowe Vernon E. Method and apparatus for controlling access to memory
JP4678084B2 (ja) * 2000-09-29 2011-04-27 ソニー株式会社 メモリ装置およびメモリアクセス制限方法
DE10146516A1 (de) * 2001-09-21 2003-04-24 Infineon Technologies Ag Programmgesteuerte Einheit
DE10159165B4 (de) * 2001-12-03 2007-02-08 Agilent Technologies, Inc. (n.d.Ges.d.Staates Delaware), Palo Alto Vorrichtung zum Messen und/oder Kalibrieren eines Testkopfes
JP2004013556A (ja) * 2002-06-07 2004-01-15 Matsushita Electric Ind Co Ltd プロセッサ装置、コンパイル装置及びその方法
US7743257B2 (en) * 2002-06-27 2010-06-22 Nxp B.V. Security processor with bus configuration
JP4347582B2 (ja) * 2003-02-04 2009-10-21 パナソニック株式会社 情報処理装置
EP1548601A1 (fr) * 2003-12-23 2005-06-29 Stmicroelectronics SA Contrôle d'accès mémoire dans un appareil électronique
US20050216713A1 (en) * 2004-03-25 2005-09-29 International Business Machines Corporation Instruction text controlled selectively stated branches for prediction via a branch target buffer
US7164611B2 (en) * 2004-10-26 2007-01-16 Micron Technology, Inc. Data retention kill function
DE102004057259A1 (de) * 2004-11-26 2006-06-01 Robert Bosch Gmbh Manipulationsgeschütztes Mikrocontrollersystem
US20070021193A1 (en) * 2005-06-24 2007-01-25 Konami Corporation Data protection system and game machine
US7739517B2 (en) * 2005-03-31 2010-06-15 Intel Corporation Hardware-based authentication of a software program
US7953980B2 (en) * 2005-06-30 2011-05-31 Intel Corporation Signed manifest for run-time verification of software program identity and integrity
JP2007052481A (ja) * 2005-08-15 2007-03-01 Matsushita Electric Ind Co Ltd Icカード用lsi
US7748037B2 (en) * 2005-09-22 2010-06-29 Intel Corporation Validating a memory type modification attempt
US20070067590A1 (en) * 2005-09-22 2007-03-22 Uday Savagaonkar Providing protected access to critical memory regions
US8099574B2 (en) 2006-12-27 2012-01-17 Intel Corporation Providing protected access to critical memory regions
KR20080067774A (ko) * 2007-01-17 2008-07-22 삼성전자주식회사 허가되지 않은 메모리 접근으로부터 비밀 영역을 보호하기위한 방법 및 시스템
GB2448149B (en) 2007-04-03 2011-05-18 Advanced Risc Mach Ltd Protected function calling
GB2448151B (en) 2007-04-03 2011-05-04 Advanced Risc Mach Ltd Memory domain based security control within data processing systems
DE602007012519D1 (de) 2007-04-05 2011-03-31 St Microelectronics Res & Dev Integrierte Schaltung mit beschränktem Datenzugang
US8099718B2 (en) * 2007-11-13 2012-01-17 Intel Corporation Method and system for whitelisting software components
US7895404B2 (en) 2008-02-14 2011-02-22 Atmel Rousset S.A.S. Access rights on a memory map
EP2297636A1 (en) * 2008-06-27 2011-03-23 Nxp B.V. Method of interruption of meta language program code execution
DE102008048066B4 (de) * 2008-09-19 2018-02-01 Texas Instruments Deutschland Gmbh Zugriffssteuerschaltung zur Verwendung mit einer Überwachungs-Logikschaltungsanordnung in einem Verfahren zum Schutz von Software für eingebettete Anwendungen vor unerlaubtem Zugriff
US8364601B2 (en) * 2008-12-31 2013-01-29 Intel Corporation Methods and systems to directly render an image and correlate corresponding user input in a secure memory domain
US20110258421A1 (en) * 2010-04-19 2011-10-20 International Business Machines Corporation Architecture Support for Debugging Multithreaded Code
CN104636275B (zh) * 2014-12-30 2018-02-23 北京兆易创新科技股份有限公司 一种mcu芯片的信息保护方法和装置
CN107451493A (zh) * 2016-05-30 2017-12-08 珠海市微半导体有限公司 Risc架构保密电路及其方法
DE102017208818A1 (de) 2017-05-24 2018-11-29 Wago Verwaltungsgesellschaft Mbh Initialisierung von Datenbusteilnehmern
GB2570692B (en) * 2018-02-02 2020-09-09 Advanced Risc Mach Ltd Controlling guard tag checking in memory accesses

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4087856A (en) * 1976-06-30 1978-05-02 International Business Machines Corporation Location dependence for assuring the security of system-control operations
JPS5781650A (en) * 1980-11-07 1982-05-21 Mitsubishi Electric Corp Data processor
JPS5783850A (en) * 1980-11-12 1982-05-25 Mitsubishi Electric Corp Data processing device
US4521853A (en) * 1982-06-30 1985-06-04 Texas Instruments Incorporated Secure microprocessor/microcomputer with secured memory
US4590552A (en) * 1982-06-30 1986-05-20 Texas Instruments Incorporated Security bit for designating the security status of information stored in a nonvolatile memory
US4521852A (en) * 1982-06-30 1985-06-04 Texas Instruments Incorporated Data processing device formed on a single semiconductor substrate having secure memory
US4603381A (en) * 1982-06-30 1986-07-29 Texas Instruments Incorporated Use of implant process for programming ROM type processor for encryption
JPS62204345A (ja) * 1986-03-05 1987-09-09 Oki Electric Ind Co Ltd マイクロコンピユ−タ
JPH02148152A (ja) * 1988-11-29 1990-06-07 Mitsubishi Electric Corp マイクロコンピュータ
DE4115152C2 (de) * 1991-05-08 2003-04-24 Gao Ges Automation Org Kartenförmiger Datenträger mit einer datenschützenden Mikroprozessorschaltung
WO1993010498A1 (en) * 1991-11-12 1993-05-27 Microchip Technology Inc. Security for on-chip microcontroller memory
JPH05265864A (ja) * 1992-03-17 1993-10-15 Fujitsu Ltd メモリ管理回路及びメモリ管理回路付きのプロセッサユニット
JPH0696235A (ja) * 1992-09-16 1994-04-08 Mitsubishi Electric Corp シングルチップマイクロコンピュータ
JPH06202957A (ja) * 1992-12-29 1994-07-22 Casio Comput Co Ltd メモリ保護装置
JP3520102B2 (ja) * 1993-12-28 2004-04-19 株式会社東芝 マイクロコンピュータ
JPH09114743A (ja) * 1995-10-16 1997-05-02 Nec Corp シングルチップ・マイクロコンピュータ
JPH09160831A (ja) * 1995-12-08 1997-06-20 Hitachi Ltd 情報処理装置

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6496934B2 (en) 1997-04-16 2002-12-17 Hitachi, Ltd. Data transfer controller, microcomputer and data processing system
US6202154B1 (en) * 1997-04-16 2001-03-13 Hitachi,Ltd. Data transfer controller, microcomputer and data processing system
US9971909B2 (en) 2000-06-30 2018-05-15 Intel Corporation Method and apparatus for secure execution using a secure memory partition
US9507963B2 (en) 2000-06-30 2016-11-29 Intel Corporation Method and apparatus for secure execution using a secure memory partition
US9507962B2 (en) 2000-06-30 2016-11-29 Intel Corporation Method and apparatus for secure execution using a secure memory partition
US9547779B2 (en) 2000-06-30 2017-01-17 Intel Corporation Method and apparatus for secure execution using a secure memory partition
US9323954B2 (en) 2000-06-30 2016-04-26 Intel Corporation Method and apparatus for secure execution using a secure memory partition
US9305183B2 (en) 2000-06-30 2016-04-05 Intel Corporation Method and apparatus for secure execution using a secure memory partition
US9619672B2 (en) 2000-06-30 2017-04-11 Intel Corporation Method and apparatus for secure execution using a secure memory partition
US10572689B2 (en) 2000-06-30 2020-02-25 Intel Corporation Method and apparatus for secure execution using a secure memory partition
US7266658B2 (en) 2002-09-12 2007-09-04 International Business Machines Corporation System, method, and computer program product for prohibiting unauthorized access to protected memory regions
JP4669666B2 (ja) * 2004-03-19 2011-04-13 東芝キヤリア株式会社 マイクロコンピュータ
JP2005301949A (ja) * 2004-03-19 2005-10-27 Toshiba Kyaria Kk マイクロコンピュータ
WO2006040798A1 (ja) * 2004-10-08 2006-04-20 Renesas Technology Corp. 半導体集積回路装置および電子システム
KR101449971B1 (ko) * 2007-09-03 2014-10-14 교라쿠 인더스트리얼 코포레이션, 리미티드 액세스 제어 장치, 액세스 제어 방법 및 액세스 제어 프로그램
JP4562759B2 (ja) * 2007-09-03 2010-10-13 京楽産業.株式会社 アクセス制御装置、アクセス制御方法およびアクセス制御プログラム
JP2009059303A (ja) * 2007-09-03 2009-03-19 Kyoraku Sangyo Kk アクセス制御装置、アクセス制御方法およびアクセス制御プログラム
JP2010002975A (ja) * 2008-06-18 2010-01-07 Dainippon Printing Co Ltd 情報処理装置、正常処理判別方法、及び情報処理プログラム
US10025923B2 (en) 2012-02-08 2018-07-17 Arm Limited Data processing apparatus and method for protecting secure data and program code from non-secure access when switching between secure and less secure domains
US10083040B2 (en) 2012-02-08 2018-09-25 Arm Limited Exception handling in a data processing apparatus having a secure domain and a less secure domain
US10169573B2 (en) 2012-02-08 2019-01-01 Arm Limited Maintaining secure data isolated from non-secure access when switching between domains
US10210349B2 (en) 2012-02-08 2019-02-19 Arm Limited Data processing apparatus and method using secure domain and less secure domain
JP2013161479A (ja) * 2012-02-08 2013-08-19 Arm Ltd セキュアドメインおよび低セキュアドメインを使用するデータ処理装置および方法
JP2015525916A (ja) * 2012-06-27 2015-09-07 ノルディック セミコンダクタ アーエスアーNordic Semiconductor ASA メモリ保護装置及び保護方法
JP2015018552A (ja) * 2013-07-09 2015-01-29 晶心科技股▲ふん▼有限公司Andes Technology Corporation 安全保護方法およびプロセッサ
US11757624B2 (en) 2019-09-24 2023-09-12 Kabushiki Kaisha Toshiba Data transfer control device, data transfer control system, and data transfer control method

Also Published As

Publication number Publication date
EP0859319A1 (en) 1998-08-19
KR19980071365A (ko) 1998-10-26
US6101586A (en) 2000-08-08
CN1145885C (zh) 2004-04-14
CN1196524A (zh) 1998-10-21
KR100319677B1 (ko) 2002-03-08

Similar Documents

Publication Publication Date Title
JPH10228421A (ja) メモリアクセス制御回路
JP3710671B2 (ja) 1チップマイクロコンピュータ及びそれを用いたicカード、並びに1チップマイクロコンピュータのアクセス制御方法
JP6306578B2 (ja) メモリ保護装置及び保護方法
US6397301B1 (en) Preventing access to secure area of a cache
US8327100B2 (en) Execute only access rights on a Von Neuman architectures
US9626303B2 (en) Data processing apparatus and address space protection method
WO2005116842A1 (en) Digital signal controller secure memory partitioning
EP0661642B1 (en) Microcomputer with memory read protection
US7523279B2 (en) Information processing apparatus for accessing memory spaces including a user memory space and a secure memory space
EP2842041B1 (en) Data processing system and method for operating a data processing system
JP2000076133A (ja) 一度だけ書込み可能なメモリ内のプログラムデ―タのセキュリティ保証方法
JPH11272828A (ja) 集積回路を有するチップカ―ド
JP2000148594A (ja) Romデータの読み出しプロテクト回路
JP2002073418A (ja) マイクロプロセッサ
KR100327641B1 (ko) 부정한기입으로부터메모리를보호하는메모리어드레스관리회로
US20100312978A1 (en) Computer system, information protection method, and program
US20020157085A1 (en) Information processing apparatus
JP2011150457A (ja) 情報処理装置およびメモリアクセス制御方法
JP2003316649A (ja) マイクロプロセッサ
JP4236808B2 (ja) 不揮発メモリ内蔵マイクロコンピュータとその不揮発メモリの自己書換方法
JP2005157740A (ja) マイクロコンピュータ
JP2003058522A (ja) 内部ramモニタ装置および方法
JPH01180656A (ja) メモリ保護装置
JPH11110210A (ja) 拡張bios保護システム
JPS59128638A (ja) メモリ保護方式