JPH09160831A - 情報処理装置 - Google Patents
情報処理装置Info
- Publication number
- JPH09160831A JPH09160831A JP7319989A JP31998995A JPH09160831A JP H09160831 A JPH09160831 A JP H09160831A JP 7319989 A JP7319989 A JP 7319989A JP 31998995 A JP31998995 A JP 31998995A JP H09160831 A JPH09160831 A JP H09160831A
- Authority
- JP
- Japan
- Prior art keywords
- level
- instruction
- access
- circuit
- information 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.)
- Withdrawn
Links
Landscapes
- Storage Device Security (AREA)
Abstract
(57)【要約】
【課題】データアクセス命令の位置する空間によってデ
ータアクセスの可否を判断することにより保護機能を実
現する。 【解決手段】命令フェッチ時にアドレスをデコードしレ
ベルを設定する回路とデータアクセス時にCPUで遅延
された命令レベルとデータアドレスのレベルを比較する
回路を有し、アクセスの許可がない場合にはCPUとメ
モリ間のデータ転送を禁止する機能備える保護回路を設
ける。
ータアクセスの可否を判断することにより保護機能を実
現する。 【解決手段】命令フェッチ時にアドレスをデコードしレ
ベルを設定する回路とデータアクセス時にCPUで遅延
された命令レベルとデータアドレスのレベルを比較する
回路を有し、アクセスの許可がない場合にはCPUとメ
モリ間のデータ転送を禁止する機能備える保護回路を設
ける。
Description
【0001】
【発明の属する技術分野】本発明はマイクロプロセッサ
またはそれを利用したシステムにおけるデータアクセス
の保護機能に関する。
またはそれを利用したシステムにおけるデータアクセス
の保護機能に関する。
【0002】
【従来の技術】マイクロプロセッサまたはそれを利用し
たシステムにおいてデータ保護機能を実現する場合、あ
らかじめ内部に設定しておいたレベルを用い命令実行時
にそのレベルに違反するかどうかの判定を行い、違反し
た場合に例外を発生することによりデータ保護機能を実
現する。もしくはメモリ管理機構を有するプロセッサの
場合にはアドレス変換時に変換したページに対するアク
セスレベルも同時に読みだし、そのページ中の命令がそ
のレベルに違反したときにはアクセスを中断する機能を
有することによりデータ保護機能を実現する。
たシステムにおいてデータ保護機能を実現する場合、あ
らかじめ内部に設定しておいたレベルを用い命令実行時
にそのレベルに違反するかどうかの判定を行い、違反し
た場合に例外を発生することによりデータ保護機能を実
現する。もしくはメモリ管理機構を有するプロセッサの
場合にはアドレス変換時に変換したページに対するアク
セスレベルも同時に読みだし、そのページ中の命令がそ
のレベルに違反したときにはアクセスを中断する機能を
有することによりデータ保護機能を実現する。
【0003】
【発明が解決しようとする課題】本発明の目的は、デー
タの保護機能を、データアクセスする命令自体の位置す
るアドレス空間の別により区別し、保護をかけることを
可能とすることにある。すなわち、プログラムの位置す
る空間のメモリの種類によって、あらかじめ保護をかけ
られるようにし、特別に読みだされたくないメモリ、例
えばROMやRAMの内容といったものに対して保護をか
ける。
タの保護機能を、データアクセスする命令自体の位置す
るアドレス空間の別により区別し、保護をかけることを
可能とすることにある。すなわち、プログラムの位置す
る空間のメモリの種類によって、あらかじめ保護をかけ
られるようにし、特別に読みだされたくないメモリ、例
えばROMやRAMの内容といったものに対して保護をか
ける。
【0004】また本発明の目的は、保護されているデー
タに対しアクセスする権利がない状態で読みだしあるい
は書き込みを行った時、例外を発生して保護違反を知ら
せる場合と、例外を発生させずに正常にアクセスが終了
したかのように動作する場合の2通りの方法を実現し、
後者の方法を用いることにより保護がかかっているアド
レスが外に知られないためのセキュリティの機能を高め
ることを可能とすることにある。
タに対しアクセスする権利がない状態で読みだしあるい
は書き込みを行った時、例外を発生して保護違反を知ら
せる場合と、例外を発生させずに正常にアクセスが終了
したかのように動作する場合の2通りの方法を実現し、
後者の方法を用いることにより保護がかかっているアド
レスが外に知られないためのセキュリティの機能を高め
ることを可能とすることにある。
【0005】
【課題を解決するための手段】保護機能を実現するため
の手段として保護回路を設ける。保護回路にはCPUか
ら命令アクセスかデータアクセスかを区別するコマンド
とアクセスするアドレスが入力として渡され、保護回路
はそのアドレスをデコードしてレベルをCPUへ返す。
CPUからのアクセスが命令フェッチだった場合CPU
は命令コードと共にレベルを受け取る。ここで受け取っ
たレベルはその命令のデータアクセスステージまで保持
され、データアクセスのコマンド,アドレスと共に保護
回路に渡される。保護回路はコマンドからデータアクセ
スと判断し、CPUから受け取ったレベルとアクセスす
るアドレスのレベルを比較し、そのデータアクセスに対
し許可を与える。
の手段として保護回路を設ける。保護回路にはCPUか
ら命令アクセスかデータアクセスかを区別するコマンド
とアクセスするアドレスが入力として渡され、保護回路
はそのアドレスをデコードしてレベルをCPUへ返す。
CPUからのアクセスが命令フェッチだった場合CPU
は命令コードと共にレベルを受け取る。ここで受け取っ
たレベルはその命令のデータアクセスステージまで保持
され、データアクセスのコマンド,アドレスと共に保護
回路に渡される。保護回路はコマンドからデータアクセ
スと判断し、CPUから受け取ったレベルとアクセスす
るアドレスのレベルを比較し、そのデータアクセスに対
し許可を与える。
【0006】データのリードアクセスに許可がなかった
場合、例外を発生する方法と例外を発生せず間違ったデ
ータをあたかも正常に読めたかのようにCPUへ返す方
法がある。データのライトアクセスに許可がなかった場
合も例外を発生する方法と例外を発生せず書き込みが行
えたかのように動作して実際は書き込みは行わないとい
う2通りの方法がある。これによりデータの保護を実現
する。
場合、例外を発生する方法と例外を発生せず間違ったデ
ータをあたかも正常に読めたかのようにCPUへ返す方
法がある。データのライトアクセスに許可がなかった場
合も例外を発生する方法と例外を発生せず書き込みが行
えたかのように動作して実際は書き込みは行わないとい
う2通りの方法がある。これによりデータの保護を実現
する。
【0007】アドレスによるレベルの決定は内蔵レジス
タにより可変にすることも可能である。
タにより可変にすることも可能である。
【0008】
【発明の実施の形態】図1に示すように本情報処理装置
はCPUと保護回路から成り、メモリまたは周辺回路の
アクセスの保護を行う。CPUのコマンド発行回路から
は命令フェッチ/データアクセスのリクエストがバス1
01を通して保護回路に発行される。またそれらのリク
エストに対するアドレスがALUからバス102を通し
て保護回路に転送され、アクセスレベル設定回路がアド
レスのデコードを行いアドレスごとのレベルを103を
通してCPUへ転送する。
はCPUと保護回路から成り、メモリまたは周辺回路の
アクセスの保護を行う。CPUのコマンド発行回路から
は命令フェッチ/データアクセスのリクエストがバス1
01を通して保護回路に発行される。またそれらのリク
エストに対するアドレスがALUからバス102を通し
て保護回路に転送され、アクセスレベル設定回路がアド
レスのデコードを行いアドレスごとのレベルを103を
通してCPUへ転送する。
【0009】CPUはコマンドが命令フェッチだった場
合、その命令に対応したアドレスのレベルをその命令の
実行ステージまでアクセスレベル遅延回路を使って保持
し、データアクセスと同時にバス105を通して保護回
路のアクセスレベル判定回路へ転送する。
合、その命令に対応したアドレスのレベルをその命令の
実行ステージまでアクセスレベル遅延回路を使って保持
し、データアクセスと同時にバス105を通して保護回
路のアクセスレベル判定回路へ転送する。
【0010】アクセスレベル判定回路ではバス101を
通してCPUから送られたコマンドを使ってデータアク
セスかどうかの判定を行い、もしデータアクセスだった
場合バス104を通して送られるデータアクセス自体の
レベルとバス105を通して送られるデータアクセスを
発行する命令自体のレベルを比較する。この判定回路で
アクセスが許可された場合、バス106を通してCPU
とメモリ/周辺回路を結ぶバス107,108のドライ
ブを制御する。
通してCPUから送られたコマンドを使ってデータアク
セスかどうかの判定を行い、もしデータアクセスだった
場合バス104を通して送られるデータアクセス自体の
レベルとバス105を通して送られるデータアクセスを
発行する命令自体のレベルを比較する。この判定回路で
アクセスが許可された場合、バス106を通してCPU
とメモリ/周辺回路を結ぶバス107,108のドライ
ブを制御する。
【0011】図2にこの保護機能を実現する保護回路と
CPUとの間のプロトコルを示す。命令が5段のパイプ
ラインで201のように表されているとする。パイプラ
インの各ステージは命令フェッチのI−Stage,デコード
のD−Stage,実行のE−Stage,メモリアクセスのA−Sta
ge,レジスタストアのS−Stageから構成されている。I
−Stageでは信号路202,203を通し命令フェッチ
のコマンド(204)と命令フェッチのアドレス(20
5)が保護回路に渡される。
CPUとの間のプロトコルを示す。命令が5段のパイプ
ラインで201のように表されているとする。パイプラ
インの各ステージは命令フェッチのI−Stage,デコード
のD−Stage,実行のE−Stage,メモリアクセスのA−Sta
ge,レジスタストアのS−Stageから構成されている。I
−Stageでは信号路202,203を通し命令フェッチ
のコマンド(204)と命令フェッチのアドレス(20
5)が保護回路に渡される。
【0012】保護回路では205のアドレスからレベル
を生成し信号路207を通してCPUへ命令のレベルを返
す。命令フェッチされたデータ(命令コード)の読みだ
し自体には保護がかからないため命令コードは信号路2
06を通しCPUのD−Stageへ渡される。デコードされ
た命令がデータアクセスの場合、A−Stageにおいてデー
タアクセスの命令とアドレスが信号路209,210を
通して保護回路に渡される。またこれと同時に遅延回路
208によって保持された命令のレベルがCPUから保護
回路に渡される。
を生成し信号路207を通してCPUへ命令のレベルを返
す。命令フェッチされたデータ(命令コード)の読みだ
し自体には保護がかからないため命令コードは信号路2
06を通しCPUのD−Stageへ渡される。デコードされ
た命令がデータアクセスの場合、A−Stageにおいてデー
タアクセスの命令とアドレスが信号路209,210を
通して保護回路に渡される。またこれと同時に遅延回路
208によって保持された命令のレベルがCPUから保護
回路に渡される。
【0013】これらの信号が保護回路のアクセスレベル
判定回路で処理され213を通してデータの転送の保護
がかけられる。これはパイプラインが5段のケースであ
るがE−Stageが2つ以上ある場合でも遅延回路208を
増やすことで対応ができる。
判定回路で処理され213を通してデータの転送の保護
がかけられる。これはパイプラインが5段のケースであ
るがE−Stageが2つ以上ある場合でも遅延回路208を
増やすことで対応ができる。
【0014】図3にアドレス空間の割付の例を示す。同
図(a)において、アドレス空間が301のように空間
1,空間2,空間3というように分割されているとす
る。この場合、同図(b)に示す通り3空間のアクセス
の対応が考えられる。303には命令の位置する空間、
304には303の命令がアクセスするデータの空間を
表す。ここでは空間3の命令は空間3の読みだしは可能
で空間1,2の読みだし/書き込みが可能になってい
る。また空間2の命令は空間1,2の読みだし/書き込
みは可能になっているが、空間3のアクセスは禁止され
ている。また空間1の命令は空間1の読みだし/書き込
みの許可しか与えられておらず、空間2,3のアクセス
は禁止されている。
図(a)において、アドレス空間が301のように空間
1,空間2,空間3というように分割されているとす
る。この場合、同図(b)に示す通り3空間のアクセス
の対応が考えられる。303には命令の位置する空間、
304には303の命令がアクセスするデータの空間を
表す。ここでは空間3の命令は空間3の読みだしは可能
で空間1,2の読みだし/書き込みが可能になってい
る。また空間2の命令は空間1,2の読みだし/書き込
みは可能になっているが、空間3のアクセスは禁止され
ている。また空間1の命令は空間1の読みだし/書き込
みの許可しか与えられておらず、空間2,3のアクセス
は禁止されている。
【0015】
【発明の効果】本発明により情報処理装置が外部に読み
だされたくないメモリ、例えば内部のROMやRAMな
どを内蔵していた場合にそれらのメモリに割り付けられ
たアドレスのみによって保護をかけることが可能にな
る。
だされたくないメモリ、例えば内部のROMやRAMな
どを内蔵していた場合にそれらのメモリに割り付けられ
たアドレスのみによって保護をかけることが可能にな
る。
【図1】保護機能を実現する保護回路とCPUとメモリ
の関係を示すブロック図。
の関係を示すブロック図。
【図2】保護機能を実現する場合のCPUと保護回路間
のプロトコルを示すブロック図。
のプロトコルを示すブロック図。
【図3】保護機能を実現した場合のアドレス割付の一例
を示す説明図。
を示す説明図。
301…アドレス空間、302…命令/データのアクセ
ス対応表、303…命令の位置する空間、304…デー
タの位置する空間。
ス対応表、303…命令の位置する空間、304…デー
タの位置する空間。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 玉城 実明 東京都小平市上水本町5丁目20番1号 株 式会社日立製作所半導体事業部内 (72)発明者 松井 重純 東京都小平市上水本町5丁目20番1号 株 式会社日立製作所半導体事業部内 (72)発明者 高窪 加津治 東京都小平市上水本町5丁目22番1号 株 式会社日立マイコンシステム内 (72)発明者 橋本 幸治 東京都小平市上水本町5丁目22番1号 株 式会社日立マイコンシステム内 (72)発明者 館澤 健 東京都小平市上水本町5丁目22番1号 株 式会社日立マイコンシステム内 (72)発明者 古山 幹夫 東京都小平市上水本町5丁目22番1号 株 式会社日立マイコンシステム内
Claims (6)
- 【請求項1】データにアクセスする命令が位置する論理
アドレス空間によりレベルを設定する命令レベル設定回
路を有し、そのレベルに応じてデータの読みだしまたは
書き込みの可否を判定する実行レベル判定回路を有する
ことを特徴とする情報処理装置。 - 【請求項2】請求項1の命令レベル設定回路により生成
されたレベルをその命令の実行時まで保持する回路を有
する情報処理装置。 - 【請求項3】アクセスする権利のないレベルでのアクセ
スが発生したときに例外を発生し実行を中断する情報処
理装置。 - 【請求項4】アクセスする権利のないレベルでのアクセ
スが発生したときに例外を発生せず、読みだし時には常
に固定値が読みだされ、書き込み時には実際の書き込み
は行わないで、まるで正常に書き込みが終了したかのよ
うに動作を完了させることによりアクセスする権利のな
いアドレスを知られないようにしたことを特徴とする情
報処理装置。 - 【請求項5】内蔵のレジスタまたはそれに代わるものに
より命令レベルの設定をアドレスの任意の位置を用いて
生成することが出来る回路を有する情報処理装置。 - 【請求項6】データ保護機能を使用するか使用しないか
を内蔵レジスタまたはそれに代わるものにより設定する
ことが可能な情報処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7319989A JPH09160831A (ja) | 1995-12-08 | 1995-12-08 | 情報処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7319989A JPH09160831A (ja) | 1995-12-08 | 1995-12-08 | 情報処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH09160831A true JPH09160831A (ja) | 1997-06-20 |
Family
ID=18116510
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7319989A Withdrawn JPH09160831A (ja) | 1995-12-08 | 1995-12-08 | 情報処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH09160831A (ja) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6101586A (en) * | 1997-02-14 | 2000-08-08 | Nec Corporation | Memory access control circuit |
| JP2005301949A (ja) * | 2004-03-19 | 2005-10-27 | Toshiba Kyaria Kk | マイクロコンピュータ |
| US7260690B2 (en) | 2001-02-06 | 2007-08-21 | Infineon Technologies Ag | Microprocessor circuit for data carriers and method for organizing access to data stored in a memory |
| 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 |
| US9305183B2 (en) | 2000-06-30 | 2016-04-05 | Intel Corporation | Method and apparatus for secure execution using a secure memory partition |
-
1995
- 1995-12-08 JP JP7319989A patent/JPH09160831A/ja not_active Withdrawn
Cited By (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6101586A (en) * | 1997-02-14 | 2000-08-08 | Nec Corporation | Memory access control circuit |
| US9305183B2 (en) | 2000-06-30 | 2016-04-05 | 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 |
| 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 |
| US9619672B2 (en) | 2000-06-30 | 2017-04-11 | Intel Corporation | Method and apparatus for secure execution using a secure memory partition |
| US9971909B2 (en) | 2000-06-30 | 2018-05-15 | 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 |
| US7260690B2 (en) | 2001-02-06 | 2007-08-21 | Infineon Technologies Ag | Microprocessor circuit for data carriers and method for organizing access to data stored in a memory |
| 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 |
| JP2005301949A (ja) * | 2004-03-19 | 2005-10-27 | Toshiba Kyaria Kk | マイクロコンピュータ |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP1495394B1 (en) | A computer system including a secure execution mode - capable cpu and a security services processor connected via a secure communication path | |
| KR100987507B1 (ko) | 보안 서비스 프로세서로의 접속을 위한 버스 브리지를포함하는 컴퓨터 시스템 | |
| JP4872001B2 (ja) | メモリ・アクセス安全性管理 | |
| US7277972B2 (en) | Data processing system with peripheral access protection and method therefor | |
| JP4688490B2 (ja) | 高セキュリティ実行モードにおいて高セキュリティカーネルを使用するトラステッド・クライアント | |
| US7165135B1 (en) | Method and apparatus for controlling interrupts in a secure execution mode-capable processor | |
| US5680581A (en) | Microcomputer having a read protection circuit to secure the contents of an internal memory | |
| US20040177266A1 (en) | Data processing system with peripheral access protection and method therefor | |
| US7404019B2 (en) | Method and apparatus for endianness control in a data processing system | |
| JP4945053B2 (ja) | 半導体装置、バスインターフェース装置、およびコンピュータシステム | |
| US7146477B1 (en) | Mechanism for selectively blocking peripheral device accesses to system memory | |
| JP3226055B2 (ja) | 情報処理装置 | |
| JP2005512228A (ja) | 強化されたメモリアクセスセキュリティを提供する、メモリに対するデバイスのアクセスを制御するシステムおよび方法 | |
| US5276884A (en) | Controlling the initiation of logical systems in a data processing system with logical processor facility | |
| JP2001005726A (ja) | メモリアドレス空間拡張装置及びプログラムを記憶した記憶媒体 | |
| KR100972635B1 (ko) | 컴퓨터 시스템내에서의 장치간 액세스를 제어하는 시스템및 방법 | |
| KR100288670B1 (ko) | 데이터세그먼트처리방법및정보처리시스템 | |
| US6119191A (en) | Performing PCI access cycles through PCI bridge hub routing | |
| US20050081015A1 (en) | Method and apparatus for adapting write instructions for an expansion bus | |
| RU2005115088A (ru) | Управление доступом устройства к памяти | |
| JP2007264679A (ja) | アクセス制御装置及びアクセス制御方法 | |
| JPS6240555A (ja) | プリフエツチ制御方式 | |
| JPH10143436A (ja) | セキュリティ制御装置 | |
| JPH0363854A (ja) | データプロテクト回路 | |
| JPH02238547A (ja) | 割込み制御方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20030304 |