JPH0695875A - マイクロコンピュータのメモリアクセス方法 - Google Patents

マイクロコンピュータのメモリアクセス方法

Info

Publication number
JPH0695875A
JPH0695875A JP3012860A JP1286091A JPH0695875A JP H0695875 A JPH0695875 A JP H0695875A JP 3012860 A JP3012860 A JP 3012860A JP 1286091 A JP1286091 A JP 1286091A JP H0695875 A JPH0695875 A JP H0695875A
Authority
JP
Japan
Prior art keywords
memory
instruction
queue buffer
instruction code
instruction queue
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
JP3012860A
Other languages
English (en)
Inventor
Tsunenori Umeki
恒憲 梅木
Hirohiko Inoue
博彦 井上
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP3012860A priority Critical patent/JPH0695875A/ja
Priority to DE4200285A priority patent/DE4200285C2/de
Priority to CA002059033A priority patent/CA2059033C/en
Publication of JPH0695875A publication Critical patent/JPH0695875A/ja
Priority to US08/357,551 priority patent/US5928354A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3802Instruction prefetching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3814Implementation provisions of instruction buffers, e.g. prefetch buffer; banks

Abstract

(57)【要約】 【目的】 命令コードが命令キューバッファにない場合
において、低速メモリに対して命令コードの取りこぼし
をなくして、信頼性の向上したマイクロコンピュータを
得る。 【構成】 目的とする命令コードが命令キューバッファ
2にない場合は、アクセスするメモリが高速メモリか低
速メモリかを判定し、高速メモリの場合は命令キューバ
ッファ2をスルーして直接メモリより命令コードを取り
込む。一方、低速メモリの場合は命令キューバッファ2
をスルーせずに、命令コードが命令キューバッファ2に
取り込まれるのを待つようにした。 【効果】 命令コードの取りこぼしがなくなって信頼性
が向上するとともに、設計の際にタイミングの設定が容
易になる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明はマイクロコンピュータ
に係わり、特にCPUがメモリをアクセスする場合にお
けるアクセス方法に関するものである。
【0002】
【従来の技術】図6は、従来のマイクロコンピュータの
本願に係わる構成を示すブロック図である。図におい
て、1はCPU(中央演算処理装置)、2は命令を先取
りして一時蓄える命令キューバッファ、3はROMやR
AMから成る内部メモリである。上記CPU1,命令キ
ューバッファ2および内部メモリ3は内部バス4でそれ
ぞれ接続され、1チップのマイクロコンピュータ5が構
成されている。一方、6は上記マイクロコンピュータ5
の外部に設けられた外部メモリであり、外部バス7によ
りマイクロコンピュータ5の内部バス4に接続されてい
る。一般に、内部メモリ3は、マイクロコンピュータ5
に内蔵されて頻繁にアクセスされ,容量的にも限られて
いるので、高価な高速メモリが用いられ、外部メモリ6
は、マイクロコンピュータ5とは外部バス7により接続
され,容量的にも大きくなるので、安価な低速メモリが
使用される。
【0003】次に動作について説明する。CPU1が命
令を実行する場合、命令キューバッファ2から命令コー
ドを取り出して命令の実行を行う。この時、要求された
命令コードが命令キューバッファ2に取り込まれていな
い場合、CPU1は内部メモリ3をアクセスするか外部
メモリ6をアクセスするかに関係なく、点線で示すよう
に命令キューバッファ2をスルーして、直接,内部メモ
リ3あるいは外部メモリ6より命令コードを取り出して
命令の実行を行う。これにより、メモリアクセスの高速
化を図ることができる。
【0004】また、図7は、従来の他のマイクロコンピ
ュータの本願に係わる構成を示すブロック図である。図
において、1はCPU、2は命令キューバッファ、3
a,3bはいずれも内部メモリであるが、3aはDRA
MやSRAM等から成る高速メモリ、3bはEPROM
等から成る低速メモリである。上記CPU1,命令キュ
ーバッファ2および各メモリ3a,3bは内部バス4で
それぞれ接続され、1チップのマイクロコンピュータ5
が構成されている。上記低速メモリ3bを構成するEP
ROMは構造上低速ではあるが、書き替え可能な不揮発
性メモリとして、マイクロコンピュータに多用されてい
る。
【0005】次にこの従来例の動作について説明する。
CPU1が命令を実行する場合、命令キューバッファ2
から命令コードを取り出して命令の実行を行う。この
時、要求された命令コードが命令キューバッファ2に取
り込まれていない場合、CPU1は高速メモリ3aをア
クセスするか低速メモリ3bをアクセスするかに関係な
く、点線で示すように命令キューバッファ2をスルーし
て、直接,高速メモリ3aあるいは低速メモリ3bより
命令コードを取り出して命令の実行を行う。これによ
り、メモリアクセスの高速化を図ることができる。
【0006】
【発明が解決しようとする課題】従来のマイクロコンピ
ュータにおいて、命令キューバッファに要求された命令
コードが取り込まれていない場合のメモリへのアクセス
方法は、図6の例では内部メモリのような高速メモリ,
外部メモリのような低速メモリに関係なく、また、図7
の例では内部メモリのうちの高速メモリ,低速メモリに
関係なく、命令キューバッファをスルーして、直接,内
部メモリあるいは外部メモリ、又は高速メモリあるいは
低速メモリより命令コードを取り出してくる為、外部メ
モリのような低速メモリ、あるいは内部メモリであって
もEPROMのような低速メモリから命令コードを取り
出す場合、タイミングが厳しくなって命令コードの取り
こぼしが生じ、エラーとなる問題があった。メモリが高
速か低速かは、使用するメモリ素子固有のアクセス性能
によるが、最終的にはCPUの速度に対して相対的に決
まるものであるため、動作クロックの高速化等によりC
PUの高速化が著しい昨今においては、上記のような問
題が生じやすくなっている。
【0007】この発明は上記のような問題点を解消する
ためになされたもので、目的とする命令コードが命令キ
ューバッファにない場合において、高速メモリに対して
はアクセス性能を犠牲にすることなく、低速メモリに対
しては命令コードの取りこぼしをなくして、信頼性の向
上したマイクロコンピュータを得ることを目的とするも
のである。
【0008】
【課題を解決するための手段】この発明に係るマイクロ
コンピュータのメモリアクセス方法は、CPUが命令キ
ューバッファを介してメモリをアクセスし、目的とする
命令コードが命令キューバッファにある場合は、命令キ
ューバッファから命令コードを取り込んで実行するマイ
クロコンピュータのメモリアクセス方法において、目的
とする命令コードが命令キューバッファにない場合は、
アクセスするメモリが高速メモリか低速メモリかを判定
し、高速メモリの場合は命令キューバッファをスルーし
て直接メモリより命令コードを取り込み、低速メモリの
場合は命令キューバッファをスルーせずに、命令コード
が命令キューバッファに取り込まれるのを待つようにし
たものである。
【0009】このメモリアクセス方法は、マイクロコン
ピュータに内蔵された内部メモリを高速メモリとし、マ
イクロコンピュータの外部に接続された外部メモリを低
速メモリとして使い分けることもできるし、マイクロコ
ンピュータに内蔵された内部メモリを、DRAMやSR
AM等から成る高速メモリと、EPROM等から成る低
速メモリとに使い分けることもできる。
【0010】
【作用】この発明においては、目的とする命令コードが
命令キューバッファにない場合、内部メモリをアクセス
する時は命令キューバッファをスルーし、外部メモリを
アクセスする時は命令キューバッファをスルーしないの
で、特に、外部メモリをアクセスする場合においてアク
セスタイムが稼げ、命令コードの取りこぼしが生じなく
なる。
【0011】また、内部メモリにあっても、メモリのア
クセス性能により、命令キューバッファをスルーする,
スルーしないということを上記と同様に選択することが
できるので、低速メモリに対してアクセスタイムが稼
げ、命令コードの取りこぼしが生じなくなる。
【0012】
【実施例】以下、この発明の実施例を図を用いて説明す
る。まず、本発明を実現するために必要となる基本的な
構成について説明する。図1の(A),(B)は命令キ
ューバッファ2をスルーする場合とスルーしない場合を
示す簡略構成図、図2はCPU1と命令キューバッファ
2の接続図である。図において、2a,2bは互いに逆
向きに並列接続されたバッファであり、そのメモリ側と
CPU側には、それぞれCPU1からの信号線1a,1
bにより制御されるnチャネルのトランジスタ2c,2
dが接続されており、これらが内部バス4のビット対応
に設けられて命令キューバッファ2が構成されている。
そして、(A)のスルーする場合は、CPU1から信号
線1aに“H”レベルが印加されてトランジスタ2cが
オンし、信号線1bにも“H”レベルが印加されてトラ
ンジスタ2dもオンする。従って、データは点線で示す
ように命令キューバッファ2をスルーする。一方、
(b)のスルーしない場合は、CPU1から信号線1a
には“H”レベルが印加されてトランジスタ2cはオン
するが、信号線1bには“L”レベルが印加されてトラ
ンジスタ2dはオフする。従って、データは点線で示す
ように命令キューバッファ2をスルーしないで、一旦,
命令キューバッファ2に取り込まれた状態となる。
【0013】図3は、CPU1が実行するメモリアクセ
ス方法を示すフローチャートである。CPU1が命令を
実行する場合、まず、CPU1は命令キューバッファ2
に命令コード要求信号を出力するとともに(ステップS
1)、対応するアドレスを出力する(ステップS2)。
次に、要求された命令コードが命令キューバッファ2に
あるかどうかを判定し(ステップS3)、あれば、従来
同様,命令キューバッファ2より命令コードを取り込む
(ステップS4)。命令コードが命令キューバッファ2
になければ、高速メモリをアクセスするかどうかを判定
する(ステップS5)。高速メモリをアクセスする場合
には、従来同様,命令キューバッファ2をスルーして直
接メモリより命令コードを取り込む(ステップS6)。
一方、低速メモリをアクセスする場合には、命令キュー
バッファ2をスルーせずに、メモリから命令コードが命
令キューバッファ2に取り込まれるまで待機する(ステ
ップS7)。なお、高速メモリをアクセスするか低速メ
モリをアクセスするかは、CPU1のアドレス空間に配
置された高速メモリと低速メモリのアドレスから判定す
ることができる。
【0014】次に、本発明を図6に示した従来例に適用
した場合の動作について、図4を用いて説明する。まず
始めに、内部メモリ3のような高速メモリをアクセスす
る場合について説明する。この場合は従来例と同様に、
CPU1は、要求された命令コードが命令キューバッフ
ァ2に取り込まれていない場合、図4の(A)に示すよ
うに命令キューバッファ2をスルーして、直接,内部メ
モリ3より命令コードを取り出して実行する。これに対
して、CPU1が外部メモリ6のような低速メモリをア
クセスする場合、CPU1は、要求された命令コードが
命令キューバッファ2に取り込まれていない場合、上記
内部メモリ3の時のように命令キューバッファ2をスル
ーさせるのではなく、図4の(B)に示すように一旦,
命令キューバッファ2で止めて、1サイクル遅らせてか
らCPU1に取り込む。こうすることにより、外部メモ
リ6に対してアクセスタイムが稼げる為、命令コードの
取りこぼしがなくなり、メモリをアクセスするときの信
頼性が向上する。
【0015】以上のように、本適用例によれば、目的と
する命令コードが命令キューバッファ2にない場合に、
内部メモリ3をアクセスするのか,外部メモリ6をアク
セスするのかによって、命令キューバッファ2をスルー
する,スルーしないを使い分けることでき、特に外部メ
モリ6をアクセスする場合のアクセスタイムが稼げるの
で、命令コードの取りこぼしがなくなってメモリをアク
セスするときの信頼性が向上し、これによりマイクロコ
ンピュータシステム全体の性能が向上することが期待で
きる。また、マイクロコンピュータを用いたシステム設
計に際して、外部メモリ6に対するタイミングの設定が
容易になる効果がある。
【0016】次に、本発明を図7に示した従来例に適用
した場合の動作について、図5を用いて説明する。命令
キューバッファ2が空で,かつDRAMやSRAM等の
高速メモリ3aをアクセスする為、命令キューバッファ
2をスルーさせる場合、図5の(A)に示すように、C
PU1は、直接,高速メモリ3aより命令コードを取り
出し、命令キューバッファ2をスルーさせてCPU1に
取り込み、命令を実行する。これに対して、命令キュー
バッファ2が空で,かつEPROM等の低速メモリ3b
をアクセスする為、命令キューバッファ2をスルーさせ
ない場合、CPU1は低速メモリ3bより命令コードを
取り出すが、一旦,命令キューバッファ2に止めて、1
サイクル遅らせてからCPU1に命令コードを取り込
み、命令の実行を行う。このように、命令キューバッフ
ァ2をスルーさせる,スルーさせないということを内部
メモリのアクセス性能により選択し,使い分けること
で、命令コードの取りこぼしがなくなり、メモリをアク
セスするときの信頼性が向上する。
【0017】以上のように、本適用例によれば、目的と
する命令コードが命令キューバッファ2にない場合に、
アクセスする内部メモリのアクセス性能によって、命令
キューバッファ2をスルーする,スルーしないかを使い
分けることができ、特にEPROM等の低速メモリ3b
をアクセスする場合のアクセスタイムが稼げるので、命
令コードの取りこぼしがなくなってメモリをアクセスす
るときの信頼性が向上し、これによりマイクロコンピュ
ータ全体の性能が向上することが期待できる。また、マ
イクロコンピュータの設計に際して、EPROM等の低
速メモリ3bに対するタイミングの設定が容易になる効
果がある。
【0018】
【発明の効果】以上のように、この発明によれば、CP
Uのメモリアクセス時、目的とする命令コードが命令キ
ューバッファにない場合は、アクセスするメモリが高速
メモリか低速メモリかを判定し、高速メモリの場合は命
令キューバッファをスルーして直接メモリより命令コー
ドを取り込み、低速メモリの場合は命令キューバッファ
をスルーせずに、命令コードが命令キューバッファに取
り込まれるのを待つようにしたので、目的とする命令コ
ードが命令キューバッファにない場合において、高速メ
モリに対してのアクセス性能を犠牲にすることなく、低
速メモリに対して命令コードの取りこぼしがなくなり、
信頼性が向上する効果がある。また、設計上において
も、タイミングの設定が容易になる効果がある。
【0019】このメモリアクセス方法は、マイクロコン
ピュータに内蔵された内部メモリを高速メモリとし、マ
イクロコンピュータの外部に接続された外部メモリを低
速メモリとして使い分けることもできるし、マイクロコ
ンピュータに内蔵された内部メモリを、DRAMやSR
AM等から成る高速メモリと、EPROM等から成る低
速メモリとに使い分けることもできる。
【図面の簡単な説明】
【図1】この発明を実現するための命令キューバッファ
の基本的な構成例を示す簡略構成図である。
【図2】図1におけるCPUと命令キューバッファの接
続図である。
【図3】この発明によるメモリアクセス方法を示すフロ
ーチャートである。
【図4】この発明の適用例における動作を示す図であ
る。
【図5】この発明の他の適用例における動作を示す図で
ある。
【図6】マイクロコンピュータの従来例を示す要部構成
図である。
【図7】マイクロコンピュータの他の従来例を示す要部
構成図である。
【符号の説明】
1 CPU 2 命令キューバッファ 3 内部メモリ 3a 高速メモリ 3b 低速メモリ 5 マイクロコンピュータ 6 外部メモリ

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 CPUが命令キューバッファを介してメ
    モリをアクセスし、目的とする命令コードが命令キュー
    バッファにある場合は、命令キューバッファから命令コ
    ードを取り込んで実行するマイクロコンピュータのメモ
    リアクセス方法において、目的とする命令コードが命令
    キューバッファにない場合は、アクセスするメモリが高
    速メモリか低速メモリかを判定し、高速メモリの場合は
    命令キューバッファをスルーして直接メモリより命令コ
    ードを取り込み、低速メモリの場合は命令キューバッフ
    ァをスルーせずに、命令コードが命令キューバッファに
    取り込まれるのを待つようにしたことを特徴とするマイ
    クロコンピュータのメモリアクセス方法。
  2. 【請求項2】 マイクロコンピュータに内蔵された内部
    メモリを高速メモリとし、マイクロコンピュータの外部
    に接続された外部メモリを低速メモリとして使い分ける
    ことを特徴とする請求項1記載のマイクロコンピュータ
    のメモリアクセス方法。
  3. 【請求項3】 マイクロコンピュータに内蔵された内部
    メモリを、DRAMやSRAM等から成る高速メモリ
    と、EPROM等から成る低速メモリとに使い分けるこ
    とを特徴とする請求項1記載のマイクロコンピュータの
    メモリアクセス方法。
JP3012860A 1991-01-09 1991-01-09 マイクロコンピュータのメモリアクセス方法 Pending JPH0695875A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP3012860A JPH0695875A (ja) 1991-01-09 1991-01-09 マイクロコンピュータのメモリアクセス方法
DE4200285A DE4200285C2 (de) 1991-01-09 1992-01-08 Microcomputer-Speicherzugriffverfahren
CA002059033A CA2059033C (en) 1991-01-09 1992-01-08 Microcomputer memory access method
US08/357,551 US5928354A (en) 1991-01-09 1994-12-16 Method for a microcomputer to access an instruction code from memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3012860A JPH0695875A (ja) 1991-01-09 1991-01-09 マイクロコンピュータのメモリアクセス方法

Publications (1)

Publication Number Publication Date
JPH0695875A true JPH0695875A (ja) 1994-04-08

Family

ID=11817168

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3012860A Pending JPH0695875A (ja) 1991-01-09 1991-01-09 マイクロコンピュータのメモリアクセス方法

Country Status (4)

Country Link
US (1) US5928354A (ja)
JP (1) JPH0695875A (ja)
CA (1) CA2059033C (ja)
DE (1) DE4200285C2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008097311A (ja) * 2006-10-11 2008-04-24 Sony Computer Entertainment Inc マルチプレクサおよび情報処理装置

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9805479D0 (en) * 1998-03-13 1998-05-13 Sgs Thomson Microelectronics Microcomputer
GB9805485D0 (en) * 1998-03-13 1998-05-13 Sgs Thomson Microelectronics Microcomputer
GB9805486D0 (en) 1998-03-13 1998-05-13 Sgs Thomson Microelectronics Adapter
US7039770B1 (en) 2002-03-05 2006-05-02 Juniper Networks, Inc. Low latency request dispatcher
JP2005216027A (ja) * 2004-01-30 2005-08-11 Matsushita Electric Ind Co Ltd 暗号化装置及びこれを備えた暗号化システム並びに復号化装置及びこれを備えた半導体システム
JP2010271874A (ja) * 2009-05-20 2010-12-02 Kyocera Mita Corp 情報処理装置および画像形成装置
US9354887B2 (en) * 2010-06-28 2016-05-31 International Business Machines Corporation Instruction buffer bypass of target instruction in response to partial flush

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2226901A5 (ja) * 1973-04-19 1974-11-15 Honeywell Bull Soc Ind
US4635194A (en) * 1983-05-02 1987-01-06 International Business Machines Corporation Instruction buffer bypass apparatus
US4942518A (en) * 1984-06-20 1990-07-17 Convex Computer Corporation Cache store bypass for computer
JPS6356731A (ja) * 1986-08-27 1988-03-11 Mitsubishi Electric Corp デ−タ処理装置
US5201041A (en) * 1988-12-29 1993-04-06 International Business Machines Corporation Cache bypass apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008097311A (ja) * 2006-10-11 2008-04-24 Sony Computer Entertainment Inc マルチプレクサおよび情報処理装置

Also Published As

Publication number Publication date
CA2059033C (en) 1996-03-05
US5928354A (en) 1999-07-27
DE4200285C2 (de) 1998-07-30
CA2059033A1 (en) 1992-07-10
DE4200285A1 (de) 1992-07-16

Similar Documents

Publication Publication Date Title
US5367494A (en) Randomly accessible memory having time overlapping memory accesses
US4937738A (en) Data processing system which selectively bypasses a cache memory in fetching information based upon bit information of an instruction
JP2001092662A (ja) プロセッサコア及びこれを用いたプロセッサ
JP2773471B2 (ja) 情報処理装置
US5594884A (en) Cache memory system having a plurality of ports
JPH0695875A (ja) マイクロコンピュータのメモリアクセス方法
US5761718A (en) Conditional data pre-fetching in a device controller
US5724548A (en) System including processor and cache memory and method of controlling the cache memory
US5421026A (en) Data processor for processing instruction after conditional branch instruction at high speed
US6425047B1 (en) Process containing address decoders suited to improvements in clock speed
US20040083344A1 (en) Method, apparatus, and system for improving memory access speed
JP2786886B2 (ja) プリフェッチ制御方法およびプリフェッチ制御装置
JP2851777B2 (ja) バス制御方法及び情報処理装置
US6625697B1 (en) Cache-storage device with a buffer storing prefetch data
US20040103267A1 (en) Data processor having cache memory
JP3476314B2 (ja) マイクロプロセッサ
US5524221A (en) Next instruction pointer calculation system for a microcomputer
JP2008052518A (ja) Cpuシステム
JPH0342723A (ja) データ処理装置
JP3717813B2 (ja) データ処理装置
JP2001154845A (ja) キャッシュミスした後のメモリバスアクセス制御方式
JPH0553908A (ja) 高速アクセス記憶装置
JP2000347931A (ja) キャッシュメモリおよびキャッシュメモリ制御方法
JPH0546477A (ja) キヤツシユメモリ制御方法
JPH07200490A (ja) Mpu