JPH10214228A - キャッシュメモリ制御回路 - Google Patents

キャッシュメモリ制御回路

Info

Publication number
JPH10214228A
JPH10214228A JP9016372A JP1637297A JPH10214228A JP H10214228 A JPH10214228 A JP H10214228A JP 9016372 A JP9016372 A JP 9016372A JP 1637297 A JP1637297 A JP 1637297A JP H10214228 A JPH10214228 A JP H10214228A
Authority
JP
Japan
Prior art keywords
cache
signal
setting
enable
control
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
JP9016372A
Other languages
English (en)
Inventor
Katsuaki Suzuki
克明 鈴木
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.)
Brother Industries Ltd
Xing Inc
Original Assignee
Brother Industries Ltd
Xing Inc
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 Brother Industries Ltd, Xing Inc filed Critical Brother Industries Ltd
Priority to JP9016372A priority Critical patent/JPH10214228A/ja
Publication of JPH10214228A publication Critical patent/JPH10214228A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【課題】 ユーザからキャッシュ可/不可の設定ができ
る環境においては、システムに合わせた最適な設定をソ
フトウェア制御により可能にし、ユーザからキャッシュ
可/不可の設定ができない環境においてはハードウェア
によりキャッシュ可/不可の制御を行うことを選択的に
実現する。 【解決手段】 CPU2のキャッシュイネーブル端子K
ENにはキャッシュイネーブル信号14が入力され、キ
ャッシュメモリ4は、キャッシュイネーブル信号14と
ページテーブルのキャッシャビリティ情報の両方がキャ
ッシュ可能なときに限ってキャッシュ可能となる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、キャッシュメモリ
制御回路に関するものである。
【0002】
【従来の技術】キャッシュメモリを備えたシステムにお
いては、全メモリ空間をキャッシュ可能な空間とキャッ
シュ不可能な空間とに分けることが行われる。この際、
キャッシュすると不都合な場合のみキャッシュ不可能と
し、残りの空間はすべてキャッシュ可能とするのが普通
である。
【0003】従来、キャッシュ可/不可の設定には、ソ
フトウエア的にキャッシュ可/不可を設定する方法と、
ハードウエア的にアドレスをデコードして、その結果を
示す信号をCPUのキャッシュ可/不可設定入力端子に
入力する方法とがあった。
【0004】
【発明が解決しようとする課題】しかしながら、従来の
技術の前者の場合、メモリ保護機能が強力なOSにおい
ては、カーネルがキャッシュ可/不可の設定の権利を持
っていて、ユーザからは事実上この設定が不可能である
という問題点があった。
【0005】また、従来の技術の後者の場合、ハードウ
エアで固定されたアドレス空間のためキャッシュ可/不
可の設定が柔軟性に欠けるという欠点があった。本発明
は、上述した問題点を解決するためになされたものであ
り、ユーザからキャッシュ可/不可の設定ができる環境
においては、システムに合わせた最適な設定をソフトウ
エア制御により可能にし、ユーザからキャッシュ可/不
可の設定ができない環境においてはハードウエアにより
キャッシュ可/不可の制御を行うことを選択的に実現す
ることを目的とする。
【0006】
【課題を解決するための手段及び発明の効果】上述の課
題を解決するために、本発明のキャッシュメモリ制御回
路は、CPUから出力されるアドレスがキャッシュ可能
な空間であるか否かを判別する可否判別手段と、キャッ
シュ制御をハードウェア制御で行うかまたはソフトウェ
ア制御で行うかの設定を記憶し、該記憶に応じてキャッ
シュ制御選択信号を出力する設定保持手段と、常にキャ
ッシュ可能であることを示す常時キャッシュ可能信号と
前記可否判別手段の判別結果に対応するキャッシュ可否
信号のどちらをCPUのキャッシュイネーブル端子に入
力するかを、前記キャッシュ制御選択信号に応じて選択
する信号選択手段とを備えている。
【0007】本発明の可否判別手段は、例えば予めキャ
ッシュ可能として設定されているアドレスが入力された
なら、キャッシュ可/不可を示すための信号のレベルを
例えばアクティブレベルとすることにより、判別結果を
信号として出力するような手段であり、例えばアドレス
デコーダに兼務させることができる。
【0008】また、設定保持手段は、書き込まれた内容
に応じた信号を継続的に出力するような手段であり、例
えば公知のレジスタを採用することができる。そして、
例えばCPUにより、キャッシュ制御をハードウェア制
御で行うかまたはソフトウェア制御で行うかの設定をレ
ジスタに書き込んで、その設定に対応してキャッシュ制
御選択信号のレベルを切り換える構成とすればよい。
【0009】信号選択手段は、2つの入力信号の一方を
択一的に選択して出力する構成を採用でき、例えば公知
のセレクタを使用できる。このキャッシュメモリ制御回
路においては、設定保持手段は、キャッシュ制御をハー
ドウェア制御で行うかまたはソフトウェア制御で行うか
の設定を記憶し、この記憶に応じてキャッシュ制御選択
信号を出力し、可否判別手段は、CPUから出力される
アドレスがキャッシュ可能なメモり空間であるか否かを
判別し、信号選択手段は、常にキャッシュ可能であるこ
とを示す常時キャッシュ可能信号と前記可否判別手段の
判別結果に対応するキャッシュ可否信号のどちらをCP
Uのキャッシュイネーブル端子に入力するかを、前記キ
ャッシュ制御選択信号に応じて選択する。
【0010】ここで、このキャッシュメモリ制御回路に
おいて、例えば設定保持手段を、ソフトウェア制御で行
う設定のときにはキャッシュ制御選択信号をアクティブ
レベルとする構成で、信号選択手段は、キャッシュ制御
選択信号がアクティブレベルのときには、常時キャッシ
ュ可能信号を選択する構成であるとして、キャッシュメ
モリ制御回路の動作を具体的に説明する。
【0011】このキャッシュメモリ制御回路を用いるシ
ステムが、キャッシュ可/不可の設定をソフトウエア的
に設定できるシステムである場合には、まず設定保持手
段に、ソフトウェア制御で行う設定を記憶させる。する
と、設定保持手段が、キャッシュ制御選択信号をアクテ
ィブレベルとするから、信号選択手段は、CPUのキャ
ッシュイネーブル端子に入力する信号として常時キャッ
シュ可能信号を選択する。
【0012】したがって、ソフトウェアで設定されてい
るキャッシュ可能空間(例えばCPUのページテーブル
に設定されたキャッシャビリティ情報でキャッシュ可能
とされているメモリ空間)のキャッシュが可能となるか
ら、システムに合わせた柔軟な設定が可能になる。
【0013】一方、キャッシュ可/不可の設定がハード
ウェア的になされるシステムの場合には、設定保持手段
に、ハードウェア制御で行う設定を記憶させる。する
と、設定保持手段が、キャッシュ制御選択信号を非アク
ティブレベルとするから、信号選択手段は、CPUのキ
ャッシュイネーブル端子に入力する信号として、可否判
別手段の判別結果に対応するキャッシュ可否信号を選択
する。
【0014】そして、可否判別手段は、CPUから出力
されるアドレスがキャッシュ可能なメモり空間であれ
ば、キャッシュ可否信号としてキャッシュ可能を示す信
号を出力するから、CPUのキャッシュイネーブル端子
には、キャッシュ可能を示す信号が入力される。よっ
て、キャッシュ可能なメモリ空間のキャッシュを実行で
きる。
【0015】また、CPUの出力するアドレスがキャッ
シュ不可能なメモリ空間なら、可否判別手段からは、キ
ャッシュ可否信号としてキャッシュ不可能を示す信号が
出力され、CPUのキャッシュイネーブル端子には、キ
ャッシュ不可能を示す信号が入力される。よって、キャ
ッシュ不可能なメモリ空間のキャッシュは実行されな
い。
【0016】このように、メモり空間のキャッシュ可/
不可がハードウェア的に設定されているシステムに本発
明のキャッシュメモリ制御回路を用いれば、キャッシュ
可/不可はソフトウェアで制御されないので、たとえO
Sによって設定操作を禁止されるような場合でも、可否
判別手段の内部設定により、キャッシュ可/不可を設定
できる。
【0017】
【発明の実施の形態】次に、本発明の好適な実施例を図
面を参照して説明することにより、発明の実施の形態を
説明する。
【0018】
【実施例】図1は、本実施例のキャッシュメモリ制御回
路1の構成図である。なお、図1においては図示を省略
しているが、アドレスバスおよびデータバスには主記憶
(DRAM)、VRAM、拡張スロット、ROM等が接
続されている。
【0019】図1に示すように、CPU2はキャッシュ
メモリ4を内蔵している。このCPU2は、公知のペー
ジング方式によってメモリ管理を行っており、各ページ
テーブル毎にキャッシュ可能/不可能を示すキャッシャ
ビリティ情報が設定されている。この情報はソフトウエ
アにより設定可能であるが、システムによってはOSの
カーネルがその権限を持っており、ユーザレベルでは変
更できないこともある。また、CPU2のキャッシュイ
ネーブル端子KENにはキャッシュイネーブル信号14
が入力され、キャッシュメモリ4は、キャッシュイネー
ブル信号14とページテーブルのキャッシャビリティ情
報の両方がキャッシュ可能なときに限ってキャッシュ可
能となる。
【0020】CPU2から出ているアドレスバスには、
本発明の判別手段としても機能するアドレスデコーダ6
が接続されている。このアドレスデコーダ6は、公知の
ものと同様にCPU2の出力するアドレスバスをデコー
ドし、本発明の設定保持手段としてのレジスタ8やその
他の各種デバイス(図示しない)のチップセレクト信号
を生成する。
【0021】また、アドレスデコーダ6は、キャッシュ
可能空間デコード信号12も生成する。詳しくは、アド
レスデコーダ6は、例えば図2(a)に示すようなアド
レスマップのキャッシュ可能な空間のアドレスが入力さ
れると、キャッシュ可能空間デコード信号12をアクテ
ィブ(本実施例では0でアクティブ)にし、それ以外の
アドレス(キャッシュ不可能な空間のアドレス)なら、
キャッシュ可能空間デコード信号12を非アクティブに
する構造である。
【0022】アドレスデコーダ6からのキャッシュ可能
空間デコード信号12は、本発明の信号選択手段として
のセレクタ10のA端子に入力される。またセレクタ1
0のB端子には0レベル信号が入力され、セレクタ10
は、S端子に入力されるレジスタ8からのキャッシュ制
御選択信号16が0(ローレベル)のときにはキャッシ
ュ可能空間デコード信号12を選択してY端子から出力
し、S端子に入力されるレジスタ8からのキャッシュ制
御選択信号16が1(ハイレベル)のときにはB端子か
らの0レベル信号を選択してY端子から出力する構造で
ある。そして、このセレクタ10の出力が、キャッシュ
イネーブル信号14としてCPU2のキャッシュイネー
ブル端子KENに入力する。
【0023】レジスタ8は、CPU2のデータバスに接
続されており、アドレスデコーダ6の出力するチップセ
レクト信号によって選択され、CPU2のRD信号で読
み出しが、WR信号で書き込みが行われる。しかして、
この書き込まれた内容(本実施例では0または1)に対
応するレベルの信号を、キャッシュ制御選択信号16と
して出力する構造である。
【0024】次に、このような構成になる本実施例のキ
ャッシュメモリ制御回路1の動作について図1および図
2参照して説明する。図2は1メガバイトのメモリ空間
を持つシステムのメモリマップの一例の説明である。図
2(a)はハードウェア制御の場合のキャッシュ可/不
可の設定を例示し、アドレスデコーダ6は、この設定に
対応して00000H 〜A0000HおよびE0000H
〜FFFFFH のアドレスなら、キャッシュ可能空間
デコード信号12をアクティブレベル(本実施例では0
レベル)にし、それ以外のアドレスなら、キャッシュ可
能空間デコード信号12を非アクティブレベルにする設
定とされている。
【0025】一方、図2(b)はページテーブル設定方
式によるソフトウェア制御の場合のキャッシュ可/不可
の設定を例示している。なお、この図2(b)に示され
る例は、システムにより拡張スロットがメモリだけに限
定されたので、拡張スロットをキャッシュ可にした。ま
たROMはアクセスが遅く、ブート時に主記憶に転送し
て使うのでキャッシュ不可にした(キャッシュ可にする
とキャッシュラインフィルが実行され、ROMのような
遅いデバイスはかえってパフォーマンスが落ちる)。そ
して、主記憶の一部が未使用で、その部分をメモリマッ
プドI/Oにしたため、ここはキャッシュ不可とした。
ソフトウェア制御の場合には、このようにシステムに合
わせたチューニングが可能になる。
【0026】さて、ハードウェア制御の場合には、CP
U2によりレジスタ8に0を書き込む。すると、セレク
タ10がA側を選択するので、アドレスデコーダ6から
のキャッシュ可能空間デコード信号12が、CPU2の
キャッシュイネーブル信号14として入力される。この
結果、CPU2が出力するアドレスが00000H 〜A
0000H およびE0000H 〜FFFFFH なら、キ
ャッシュ可能空間デコード信号12がアクティブにさ
れ、したがってキャッシュイネーブル信号14がアクテ
ィブレベルになる。また、図2(a)に示されるよう
に。これらのアドレス(DRAMとROM)について
は、キャッシャビリティ情報もキャッシュ可能とされて
いるから、キャッシュが実行されることになる。このハ
ードウェア制御を採用するのは、例えばOSによって阻
止されるために、ユーザ側でキャッシュ可能/不可能を
設定できない環境で有用である。
【0027】他方、ソフトウェア制御による場合には、
CPU2によりレジスタ8に1を書き込む。すると、セ
レクタ10がB側を選択するので、B端子からの0レベ
ル信号が、CPU2のキャッシュイネーブル信号14と
して入力される。この結果、アドレス00000H 〜9
0000H およびC0000H 〜E0000H について
は、キャッシュイネーブル信号14とページテーブルの
キャッシャビリティ情報の両方がキャッシュ可能となる
ので、これらのアドレス(DRAMの一部と拡張スロッ
ト)については、キャッシュが実行される。つまり、C
PU2のページテーブルに設定されたキャッシャビリテ
ィの情報に従って、DRAMの一部と拡張スロットの空
間がキャッシュされる。
【0028】以上のように、本実施例のキャッシュメモ
リ制御回路1によれば、ユーザからキャッシュ可/不可
の設定ができる環境においては、システムに合わせた最
適な設定をソフトウエア制御により可能にし、ユーザか
らキャッシュ可/不可の設定ができない環境においては
ハードウエアによりキャッシュ可/不可の制御を行うこ
とを選択的に実現することができる。そして、ハードウ
ェアによりキャッシュ可/不可を制御する際には、たと
えOSによって設定操作を禁止されるような場合でも、
キャッシュ可/不可を設定できる。
【図面の簡単な説明】
【図1】 実施例のキャッシュメモリ制御回路の構成図
である。
【図2】 実施例のキャッシュメモリ制御回路を備える
システムにおけるキャッシャビリティの設定の例示図で
あり、図2(a)はハードウェア制御の場合のメモリマ
ップの、図2(b)はページテーブル設定方式によるソ
フトウェア制御の場合のメモリマップの例示図である。
【符号の説明】
1…キャッシュメモリ制御回路 2…CPU 4…キャッシュメモリ 6…アドレスデコーダ(可否判別手段) 8…レジスタ(設定保持手段) 10…セレクタ(信号選択手段) 12…キャッシュ可能空間デコード信号 14…キャッシュイネーブル信号 16…キャッシュ制御選択信号

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 CPUから出力されるアドレスがキャッ
    シュ可能なメモり空間であるか否かを判別する可否判別
    手段と、 キャッシュ制御をハードウェア制御で行うかまたはソフ
    トウェア制御で行うかの設定を記憶し、該記憶に応じて
    キャッシュ制御選択信号を出力する設定保持手段と、 常にキャッシュ可能であることを示す常時キャッシュ可
    能信号と前記可否判別手段の判別結果に対応するキャッ
    シュ可否信号のどちらをCPUのキャッシュイネーブル
    端子に入力するかを、前記キャッシュ制御選択信号に応
    じて選択する信号選択手段とを備えることを特徴とする
    キャッシュメモリ制御回路。
JP9016372A 1997-01-30 1997-01-30 キャッシュメモリ制御回路 Pending JPH10214228A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9016372A JPH10214228A (ja) 1997-01-30 1997-01-30 キャッシュメモリ制御回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9016372A JPH10214228A (ja) 1997-01-30 1997-01-30 キャッシュメモリ制御回路

Publications (1)

Publication Number Publication Date
JPH10214228A true JPH10214228A (ja) 1998-08-11

Family

ID=11914480

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9016372A Pending JPH10214228A (ja) 1997-01-30 1997-01-30 キャッシュメモリ制御回路

Country Status (1)

Country Link
JP (1) JPH10214228A (ja)

Similar Documents

Publication Publication Date Title
JP2004280623A (ja) セキュリティシステム
KR940001877B1 (ko) 멀티 프로세서 시스템
US5247642A (en) Apparatus for determining cacheability of a memory address to provide zero wait state operation in a computer system
US6851036B1 (en) Method and apparatus for controlling external devices through address translation buffer
JP2838210B2 (ja) バスマスタ
US4450524A (en) Single chip microcomputer with external decoder and memory and internal logic for disabling the ROM and relocating the RAM
JPH0916462A (ja) データ処理装置および処理方法
JPH09325913A (ja) 半導体記憶装置
JP2000082010A (ja) アドレス変換を有するデータ処理方法および装置
JPH10214228A (ja) キャッシュメモリ制御回路
US6643736B1 (en) Scratch pad memories
JPS60189561A (ja) メモリアクセス制御方式
JPH04324194A (ja) Rom回路
JPH10293684A (ja) コンピュータシステムおよびその立ち上げ制御方法
KR100257750B1 (ko) 메모리 겸용 캐시
JPH07334420A (ja) 拡張メモリ制御回路
KR970705085A (ko) 캐시의 문맥이 무가치한 경우에 캐시가 판독되는 것을 방지하는 파이프라인형 마이크로프로세서(A Pipelined Microprocessor that Prevents the Cache From Being Read When the Contents of the Cache Are Invalid)
JPS63240649A (ja) デ−タ処理装置
JP2954988B2 (ja) 情報処理装置
KR20010009941A (ko) 데이터 처리 시스템의 부팅 장치 및 방법
JP2000181796A (ja) 情報処理装置
JPS60245060A (ja) マイクロコンピユ−タ装置
JPS5827254A (ja) デ−タ処理装置
JP2000250759A (ja) フラッシュメモリのブートブロック書き込み方法
JPH01258152A (ja) メモリ制御装置