JP2002189695A - Cpuインターフェース回路 - Google Patents

Cpuインターフェース回路

Info

Publication number
JP2002189695A
JP2002189695A JP2000385818A JP2000385818A JP2002189695A JP 2002189695 A JP2002189695 A JP 2002189695A JP 2000385818 A JP2000385818 A JP 2000385818A JP 2000385818 A JP2000385818 A JP 2000385818A JP 2002189695 A JP2002189695 A JP 2002189695A
Authority
JP
Japan
Prior art keywords
access
cpu
external memory
circuit
address pointer
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.)
Granted
Application number
JP2000385818A
Other languages
English (en)
Other versions
JP4592944B2 (ja
Inventor
Masaaki Morita
雅明 森田
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 Engineering Ltd
Original Assignee
NEC Engineering 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 Engineering Ltd filed Critical NEC Engineering Ltd
Priority to JP2000385818A priority Critical patent/JP4592944B2/ja
Publication of JP2002189695A publication Critical patent/JP2002189695A/ja
Application granted granted Critical
Publication of JP4592944B2 publication Critical patent/JP4592944B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

(57)【要約】 【課題】 外部メモリをアクセス/共有する場合のCPU
の処理能力低下を防ぐ。 【解決手段】 書込みアドレスポインタ生成回路3はCP
U1が外部メモリ10にアクセスしたときにカウントアッ
プする。パイプラインバッファ4は外部メモリ10のアク
セスアドレス,リード/ライト種別およびライトデータ
を格納する。アクセスコントローラ7はパイプラインバ
ッファ4内の未処理のアクセス命令を取り出して、RA
M制御回路9にアクセスする。RAM制御回路9は外部メ
モリ10へのアクセスが完了したことを知らせるACK信号
の生成機能を有する。実行アドレスポインタ生成回路6
はRAM制御回路9からのACK信号を受け取り、外部メモ
リ10へのアクセスが完了したことをカウントアップす
る。ACKコントロール2はアドレスポインタ生成回路
3,6のカウント数を元にパイプラインバッファ4内の
未処理命令数と完了処理数の差を演算してCPU1へのA
CK信号返送を制御する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、CPUインターフェ
ース回路に関し、特にCPUが外部メモリをシステムバス
経由でアクセスするためのCPUインターフェース回路に
関する。
【0002】
【従来の技術】速度の速いCPUや半導体メモリと速度の
遅い記憶装置との間のデータ通信においては、両者のス
ピードギャップに起因する弊害を解消するために、従来
から、様々な手段が講じられている。例えば特開昭62
−123521号公報記載の「フロッピー(登録商標)
ディスク装置のバッファメモリ制御方式」によれば、速
度の遅いフロッピーディスク装置がメインメモリにデー
タを転送する場合にデータバスを占有してしまい、その
間はCPUが待ち状態となり、システムのスループットを
落としてしまうという問題を解決するため、フロッピー
ディスク装置とメインメモリの間に動作の高速なFIFOバ
ッファを設けている。そして、このFIFOバッファを、新
たに設けた別のローカルバス経由でデータバスに乗せ換
えてメインメモリに自動転送し、CPUの待ち状態を少な
くするDMA(Direct Memory Access)のような目的に用い
ている。
【0003】また、複数のCPUを用い、システムバス経
由で共有メモリを使用する装置においては、CPUからシ
ステムバス経由で共有メモリにデータを書き込む場合
に、共有メモリを制御するRAM制御回路からのアクノリ
ッジ信号が戻ってきてから次の命令を行うようにしてい
る。
【0004】
【発明が解決しようとする課題】しかしながら、上述し
た従来技術では、CPUから外部メモリへのバーストモー
ドによるアクセスに対しては所期の目的を達成できる
が、ランダムアクセスモードにおいては、1回のライト
アクセスに非常に時間がかかってしまうという第1の問
題点がある。その理由は、速度の遅いシステムバス上の
外部メモリを使用するので、CPUがこの外部メモリへラ
ンダムアクセスした場合、アクセスが完了したことを知
らせるアクノリッジ信号が返ってくるまで待たされるこ
ととなり、他の命令を実行することができないためであ
る。
【0005】また、複数のCPUが外部メモリを共有する
場合には、各CPUからの外部メモリへのアクセスが集中
してシステムバスの使用権を巡る調停が増えると、シス
テムバスの使用権を獲得するまでの時間もアクセス時間
に含まれることとなり、より一層アクセス時間がかかっ
てしまうという第2の問題点がある。
【0006】そこで、本発明の目的は、CPUがシステム
バス上の外部メモリへランダムアクセスを行ったときに
も、アクノリッジ信号が返送されるまでCPUが待つ必要
がないCPUインターフェース回路を提供することにあ
る。
【0007】本発明の他の目的は、CPUインターフェー
ス回路が外部メモリへランダムアクセスする際に、他の
CPUとシステムバスの使用権が競合して外部メモリが使
用できないときでも、CPUが待たされないような調停機
能を併せ持つCPUインターフェース回路を提供すること
にある。
【0008】
【課題を解決するための手段】上記目的を達成するた
め、外部メモリへのアクセスは、システムバスのアクセ
ス速度が遅いためにCPUの動作を中断させてしまう可能
性があるので、本発明では、CPUから外部メモリに直接
アクセスせずに、CPUからの複数個アクセス命令を一時
的に格納することのできるパイプラインバッファ(図1
の4)と、パイプラインバッファに保留されたアクセス
命令をCPUに代わって実行するアクセスコントローラ
(図1の7)を有している。
【0009】また、本発明は、ライトアクセス時にはパ
イプラインバッファにアクセス命令を格納した時点でCP
Uに自動的にアクノリッジ信号CPUACKを送出し、リード
アクセス時はシステムバス上のRAM制御回路からのメモ
リアクノリッジ信号MACKをCPUに返送するACKコントロー
ラ(図1の2)を有し、このACKコントローラに作用す
る別の回路として、パイプラインバッファに格納してい
るアクセス命令数をカウントする書込みアドレスポイン
タ生成回路(図1の3)と、実行したアクセス命令数を
カウントする実行アドレスポインタ生成回路(図1の
6)を設け、ACKコントローラはこの2つのアドレスポ
インタの差を監視して、未処理の格納命令数がパイプラ
インバッファ段数を超えないようにCPUへの自動アクノ
リッジ返送を制御していることに特徴がある。
【0010】本発明では、CPUが外部メモリにアクセス
したときに、リード/ライト命令を判別し、ライト命令
ならRAM制御回路からのアクノリッジを待たずに自動的
にアクノリッジ信号をCPUへ発行し、リード命令ならRAM
制御回路から発行されるアクノリッジ信号をCPUに返すA
CKコントロール回路を有している。この結果、ライトア
クセス時には、CPUがライト命令を実行した時点で次の
命令に移行することができる。
【0011】また、外部メモリにライトされる前にさら
にCPUから外部メモリへのアクセスが重なったときにお
いても、アクセスアドレス,ライトデータおよびリード
/ライト種別コードを合成し、それらの連続アクセス命
令を一時的に格納することができるパイプラインバッフ
ァと、そのパイプラインバッファのオーバーフローや格
納命令数を管理するアドレスポインタ生成回路を設け
て、オーバーフローを起こす危険がある場合には、ACK
コントロール回路に作用しCPUへのアクノリッジ信号の
返送をマスクする機能を有する。
【0012】RAM制御回路は、アドレスポインタの示す
値からパイプラインバッファに保留されたアクセス命令
があると判断すると、パイプラインバッファに保留され
ていたCPUのアクセス命令をシステムバス上に発行し、
外部メモリへのアクセスを行い、ライト命令ならば書き
込み、リードならばRAM制御回路からアクノリッジ信
号が発行されたときにシステムバス上のデータをラッチ
回路に保存してCPUのデータバスに乗せ、ACKコントロー
ラはRAM制御回路からのメモリアクノリッジ信号MACKか
らアクノリッジ信号CPUACKを生成してCPUに返送し、リ
ードデータの受け渡しを行う。
【0013】このように、外部メモリへのライトアクセ
スにおいては、パイプラインバッファにアクセス命令が
格納された時にACKコントローラから自動的にCPUへアク
ノリッジを返送することにより、CPUは長時間待たされ
ることなく他の処理に移行することが可能となる。
【0014】
【発明の実施の形態】本発明のCPUインターフェース回
路は、CPUから外部メモリをシステムバス経由でアクセ
スするためのCPUインターフェース回路であって、CPUか
ら発行されるアクセスのためのアクセス命令を格納する
パイプラインバッファと、パイプラインバッファ中の未
処理アクセス命令数を検出する手段と、パイプラインバ
ッファ中の処理済みアクセス命令数を検出する手段と、
アクセス命令がライト命令であるときは、未処理アクセ
ス命令数が処理済みアクセス命令数より少なくない限
り、外部メモリへの書込み完了を待たずにCPUへアクノ
リッジ信号を返送する手段と、未処理アクセス命令数の
カウント数が処理済みアクセス命令数より少なくない限
り、パイプラインバッファ中のアクセス命令の実行を起
動する手段とを備えたものである。
【0015】
【実施例】次に、本発明の実施例について図面を参照し
て詳細に説明する。
【0016】図1は本発明の第1の実施例であるCPUイ
ンターフェース回路100を示す。このCPUインターフ
ェース回路100は、ACKコントローラ2,書込みアド
レスポインタ生成回路3,パイプラインバッファ4,ラ
ッチ回路5,実行アドレスポインタ生成回路6およびア
クセスコントローラ7から成る。
【0017】図1において、書込みアドレスポインタ生
成回路3はCPU1が外部メモリ10にアクセスしたとき
にカウントアップするカウンタ回路であり、パイプライ
ンバッファ4はCPU1が外部メモリ10にアクセスする
時のアクセスアドレス,リード/ライト種別およびライ
トならばそのライトデータ(この3つをまとめてアクセ
ス命令という)をCPUデータバス20を介して格納する
回路である。パイプラインバッファ4は、CPU1の外部
メモリ10へのアクセス単位に上述のアクセス命令を格
納するメモリ番地を有し、各メモリ番地は書込みアドレ
スポインタ生成回路3によって指定される。なお、1つ
のメモリ番地が1つのバッファとなる。
【0018】アクセスコントローラ7はパイプラインバ
ッファ4に格納されている未処理のアクセス命令を取り
出して、システムバス8を介しRAM制御回路9にリード
あるいはライトアクセスを行う。RAM制御回路9は外部
メモリ10にアクセスするためのインターフェース回路
であり、外部メモリ10へのアクセスが完了したことを
知らせるメモリアクノリッジ信号MACKの生成機能を有し
ている。実行アドレスポインタ生成回路6はこのRAM制
御回路9からのメモリアクノリッジ信号MACK信号を受け
取り、外部メモリ10へのアクセスが完了したことをカ
ウントアップする回路であり、ラッチ回路5はリード時
にRAM制御回路9を介して出力されるリードデータをRAM
制御回路9からのメモリアクノリッジ信号MACKの入力タ
イミングで取り込む回路である。
【0019】ACKコントローラ2は、リード時にはラッ
チ回路5で取り込んだリードデータをアクノリッジ信号
CPUACK返送のタイミングでCPUデータバス20に乗せ、C
PU1にリードデータを転送する。ACKコントローラ2は
書込みアドレスポイイタ生成回路3および実行アドレス
ポイイタ生成回路6と接続されており、この2つのアド
レスポインタの値を元にパイプラインバッファ4内の未
処理アクセス命令数と処理完了のアクセス命令数の差を
演算してCPU1へのアクノリッジ信号CPUACKの返送を制
御する回路である。この結果、パイプラインバッファ4
に、例えばを8段のパイプラインバッファを設けるとCP
U1からのライトアクセス命令が8回連続行われてもCPU
1は待ち時間無しで他の処理を行うことができるように
なる。
【0020】なお、RAM製御回路9の機能は、使用する
外部メモリ10の仕様に依存して異なり、アクセスコン
トローラ7の機能は、RAM制御回路9の機能に合わせる
ことになる。
【0021】次に、パイプラインバファ4の詳細図(図
2)およびタイミングチャート(図3,図4)を参照し
て本実施例の動作について説明する。
【0022】パイプラインバッファ4は図2のような8
段のバッファ#0〜バッファ#4で構成されており、バ
ッファ#0〜バッファ#7のそれぞれは、CPU1からの
アクセスがリードの時はリード/ライト種別信号を1ビ
ットで表現したデータR/Wと、アクセスアドレスXA,更
にライトアクセスの時は、その他にライトデータXDを格
納する。ここでは、アクセスアドレスXAと、ライトデー
タXDがそれぞれ32ビット幅とする。
【0023】CPU1から外部メモリ10へのアクセス命
令が発行されると、書込みアドレスポインタ生成回路3
に1が加算される。一方、実行アドレスポインタ生成回
路6は,RAM制御回路9から発行され外部メモリ10へ
のアクセスが完了したことを示すメモリアクノリッジ信
号MACKをカウントする。RAM制御回路9はシステムバス
8上の外部メモリ10にライトまたはリードアクセスす
るためのインターフェース機能を有し、外部メモリ10
の動作状態を監視してシステムバス8の使用許可信号を
生成したり、あるいは外部メモリ10の選択信号MCS信
号およびメモリアクノリッジ信号MACKを生成する。
【0024】当初は、書込みアドレスポインタ生成回路
3と、実行アドレスポインタ生成回路6の初期値はとも
に“0”であり、この2つのアドレスポインタの差はな
いが、CPUインターフェース回路100がCPU1から外部
メモリアクセス命令を受けると、書込みアドレスポイン
タ生成回路3に1が加算されるので、書込みアドレスポ
インタ生成回路3と実行アドレスポインタ生成回路6の
差は“0”でなくなる。アクセスコントローラ7はこの
条件を契機としてシステムバス8上のRAM制御回路9に
アクセス信号を出力する。ライトアクセス時は、この時
点でCPU1に対して、外部メモリ10へのライトアクセ
スが完了したことを示すアクノリッジ信号CPUACKを返送
する。
【0025】図3はライトアクセス時におけるタイミン
グチャートである。システムバスクロックより遥かに早
いクロックで動作するCPU1からメモリライトアクセス
命令が発行されると、アクセスコントローラ7はパイプ
ラインバッファ4のメモリ番地に格納していたアクセス
アドレスXAをMA[31:0]、ライトデータXDをMD[31:0]、R
/W種別をR/Wとしてシステムバス8上に出力し、RAM制御
回路9は外部メモリ10へアクセスを行う。本来ならば外
部メモリ10にライトデータMD[31:0]がライトされ、RA
M制御回路9から発行されるメモリアクノリッジ信号MAC
Kを受けた後に、CPU1は次の命令を発行する。しかし、
ここでは図3に示されるように、ACKコントローラ2
は、CPUクロックの数クロック後にアクノリッジ信号CPU
ACKを自動生成するので、メモリアクノリッジ信号MACK
を待たずにCPU1は次の命令実行に移ることができる。
【0026】そして、後にRAM制御回路9から発行された
メモリアクノリッジ信号MACKを受けると実行アドレスポ
インタ生成回路6に1が加算される。この時、書込みア
ドレスポインタ生成回路3との差が“0”であれば、パ
イプラインバッファ4に格納さている保留アクセス命令
が無いと判断し、本CPUインターフェース回路100
は停止する。しかし、実行アドレスポインタ生成回路6
と書込みアドレスポインタ生成回路3に差があるなら
ば、まだ保留されているアクセス命令があるということ
なので、アクセスコントローラ7からRAM制御回路9へ
次のアクセス命令が送られ実行される。
【0027】一方、リード時の外部メモリ10へのアク
セス方法はライト時と同様であるが、この場合には外部
メモリ10からのリードデータMD[31:0]をラッチ回路5
に取り込む。取り込むタイミングは図4で示すようにRA
M制御回路9から発行されるメモリアクノリッジ信号MACK
を契機とする。ACKコントローラ2は、CPUクロックで2
回サンプリングしてアクノリッジ信号CPUACKで生成して
CPU1へ返送するのである。
【0028】また、この時に同時にラッチ回路5で取り
込んだリードデータCD[31:0]をCPUデータバス20に送
出し、CPU1はアクノリッジ信号CPUACKを受けた時のCPU
データバス20上のデータCD[31:0]をリードデータとし
て取り込む。このようにリードアクセス時には、外部メ
モリ10からリードデータが転送されてくるまでCPU1
が待たされるので、従来のアクセス方式と変わりはな
い。
【0029】以上の説明のように、ACKコントローラ2
は、基本的にはライトアクセス命令をパイプラインバッ
ファ4に格納したときにCPU1に対してアクノリッジ信
号CPUACKを返送し、リードアクセス時はRAM制御回路9
からメモリアクノリッジ信号MACKが来るまでアクノリッ
ジ信号CPUACKを返送しないようになっている。ただし、
外部メモリ10へのアクセス処理が遅く、パイプライン
バッファ4に格納された未処理のアクセス命令が一杯に
なってしまった時は、未処理のアクセス命令が上書き格
納されないよう、例外的にリードアクセスまたはライト
アクセスに関係なく、その最後のCPU1からの外部メモ
リ10へのアクセス命令に対するアクノリッジ信号CPUA
CKは現在実行中のアクセス処理が終わるまでCPU1へ返
送しない。
【0030】したがって、本発明はパイプラインバッフ
ァ4が一杯にならず、かつライトアクセスが連続的に行
われることが多い場合はCPU1の稼働率向上に効果的で
ある。
【0031】次に、本発明の第2の実施例について説明
する。この実施例は、図5に示すように、3つのCPU
1,22,23が共有する外部メモリ10へのメモリア
クセスに対する調停機能を有するシステムに対して適用
したものである。図5と図1において、同じ参照番号が
付されたものの機能は同一であり、重複を回避するため
に、ここではそれらの説明を省略する。また、この実施
例では、3つのCPU1,22および23が外部メモリ1
0を共有し、CPU22,CPU23は、それぞれCPUインタ
ーフェース回路12,13を介してシステムバス8に接
続されている。CPUインターフェース回路101は、図
1に示したCPUインターフェース回路100に調停回路
11が付加されたものとなっている。
【0032】この実施例では、3つCPU1,22および
23がシステムバス8を共有するので、例えばCPU1が
システムバス8を使用している時はアクセスコントロー
ラ7がシステムバス獲得信号14を他のCPUインターフ
ェース回路12および23に通達する。この時、調停回
路11はアクセスコントローラ7が外部メモリ10にア
クセスしようとする際に発行する動作許可願いを受け取
ると、CPUインターフェース回路12,13からののシス
テムバス獲得信号15を監視し、システムバス8がCPU
インターフェース回路12,13に使用されていないか
を確認した後、使用されていなければアクセスコントロ
ーラ7に動作許可信号を発行する。この動作許可信号を
受けるとアクセスコントローラ7はシステムバス獲得信
号14をCPUインターフェース回路12,13に出力し
た後にRAM制御回路9へアクセスを始める。
【0033】次に、タイムチャート図6および図7を参
照して本実施例の動作について説明する。パイプライン
バッファ4の構成を示す図2は本実施例にも適用でき
る。CPU1から外部メモリ10へアクセス命令が発行され
ると、書込みアドレスポインタ生成回路3に1が加算さ
れる。一方、実行アドレスポインタ生成回路6は、RAM
制御回路9から発行され外部メモリ10へのアクセスが
完了したことを示すメモリアクノリッジ信号MACKをカウ
ントする。RAM制御回路9は、システムバス8上の外部メ
モリ10にライトまたはリードアクセスするためのイン
ターフェース機能を有し、外部メモリ10の選択信号で
あるMCS信号およびメモリアクノリッジ信号MACKを生成
する。
【0034】当初は、書込みアドレスポインタ生成回路
3と実行アドレスポインタ生成回路6の初期値は共に
“0”であり、この2つのアドレスポインタに差はない
が、CPUインターフェース回路101がCPU1からの外部
メモリアクセス命令を受け付けると、書込みアドレスポ
インタ生成回路3に1が加算されるので、書込みアドレ
スポインタ生成回路3と実行アドレスポインタ生成回路
6の差が“0”でなくなる。アクセスコントローラ7は
この条件を契機として調停回路11に外部メモリ10へ
のアクセス動作許可願いを発行する。
【0035】要求を受けた調停回路11は、他のCPUイ
ンターフェース回路12,13のシステムバス獲得信号
15をサーチし、システムバス8が使用されているかど
うか確認作業を行う。システムバス8の使用権が空いて
いれば直ちにアクセスできるのだが、図6では既に他の
CPUインターフェース回路がシステムバスを獲得してい
るので、調停回路11はアクセスコントローラ7には動
作許可信号を与えることができない。その後、暫くして
他のCPUインターフェース回路がシステムバス8の使用
を終了したので、これを監視していた調停回路11がア
クセスコントローラ7に動作許可信号を発行する様子が
示されている。
【0036】アクセスコントローラ7は動作許可信号を
受けると、実行アドレスポインタ生成回路6の値で示さ
れるパイプラインバッファ4のメモリ番地に格納されて
いる外部メモリアクセス命令をRAM制御回路9に出力
し、メモリアクセスが行われる。図6はライト動作時の
タイミングチャートである。外部メモリ10へのライト
が完了すると、RAM制御回路9からメモリメモリアクノ
リッジ信号MACKが返送されるので、実行アドレスポイン
タ生成回路6はこれを受けて実行アドレスポインタ生成
回路6に1を加算し、次の動作に備える。この時点で実
行アドレスポインタ生成回路6と書込みアドレスポイン
タ生成回路3の差が“0”の場合はCPU1からのアクセ
ス命令が無かったことになるので動作停止となる。差が
あった場合は、アクセスコントローラ7が調停回路11
に動作許可願いを発行し、以後、上記の動作が繰り返さ
れる。
【0037】一方、リード時の外部メモリ10へのアクセ
ス方法はライト時と同様に調停を行った後に行われる
が、リード時には外部メモリ10からのリードデータMD
[31:0]をラッチ回路5に取り込む。取り込むタイミング
は図7で示すようにRAM制御回路9から発行されるメモ
リメモリアクノリッジ信号MACKを契機とする。ACKコン
トローラ2は、CPUクロックで2回サンプリングしてア
クノリッジ信号CPUACKを生成してCPU1に返送するので
ある。
【0038】また、この時に同時にラッチ回路5で取り
込んだリードデータをCPUデータバス20に送出し、CPU
1はアクノリッジ信号CPUACKを受けた時のCPUデータバ
ス20上のデータCD[31:0]をリードデータとして取り込
む。このように、リードアクセス時は外部メモリ10か
らリードデータMD[31:0]が転送されてくるまでCPU1が
待たされるので、従来のアクセス方式と変わりはない。
図7ではライトの動作で説明した状況と同じく、CPU1
が外部メモリ10へリードアクセス命令を発行したとき
に、他のCPU22,23がシステムバス8を使用しいて
たのでその動作が終了するまでアクセスコントローラ7
が待たされ、システムバス8の使用権が解放された後に
アクセスコントローラ7の動作が許可されて外部メモリ
10へのリードが行われることを示している。
【0039】以上の説明のように、ACKコントローラ2
は、基本的にはライトアクセス命令をパイプラインバッ
ファ4に格納したときにCPU1に対してアクノリッジ信
号CPUACKを返送するので、CPU1は待たされることなく
連続で処理を行うことができる。リードアクセス時はRA
M制御回路9からのメモリアクノリッジ信号MACKが来る
までアクノリッジ信号CPUACKを返送しないようになって
いる。ただし、例外的に外部メモリ10へのアクセス処
理が遅く、パイプラインバッファ4に格納された未処理
のアクセス命令が一杯になってしまった時は、リードア
クセスまたはライトアクセスに関係なくその最後のCPU
1からの外部メモリ10へのアクセス命令に対するアク
ノリッジ信号CPUACKは現在実行中のアクセス処理が終わ
るまでは返送しない。
【0040】この本実施例によると、外部メモリ10を
複数のCPUで共有していることによる使用権獲得までの
待ち時間が長い時のライトアクセス、あるいはパイプラ
インバッファ4が一杯にならず、かつライトアクセスが
比較的連続して行われるような場合、例えばCPU1に計
算させた後に外部メモリ10にその計算結果を連続的に
8回ストアして、他のCPUがその結果を用いるために外
部メモリ10へリードするようなアプリケーション上で
稼働する場合にCPU1の稼働率向上の成果が顕著に現れ
る。
【0041】次に、本発明の第3の実施例について図8
および図9により説明する。
【0042】本発明では、これまで説明したように外部
メモリへのライトアクセス時に効果的だが、リードアク
セスは従来と同じアクセスタイムであった。第3の実施
例では、CPU1が外部メモリ10へリードを行ったとき
は、図9のタイミングチャートで示すようにライトアク
セスと同じタイミングでアクノリッジ信号CPUACKを返す
ことにより、CPU1の待ち時間を減らして次の処理を実
行することができるようになる。ただし、RAM制御回路
9からメモリアクノリッジ信号MACKが返送され、外部メ
モリ10からリードしたデータをラッチ回路5に取り込
んだ時点で、CPU1には割込み信号であるINT16を発行
する。
【0043】CPU1はこのINT16を受け付けると、ラッ
チ回路5のデータをリードすることによってリードアク
セスを完了させる。このように1回の外部メモリリード
アクセスの待ち時間をライトアクセスと同等にするため
に2回のリード命令が必要にはなるが、プロセッサクロ
ックはシステムバス8のクロックに比べて十分に早いの
で、リード時においてもCPU1の待ち時間短縮の効果が期
待できるのである。
【0044】
【発明の効果】本発明の効果は、CPUが外部メモリに対
して、ランダムにアクセスする時にアクノリッジ信号を
受けるまでの待ち時間を減らし、その間により多くの処
理を実行することができるということである。
【0045】その理由は、CPUから外部メモリへのアク
セス命令を一度パイプラインバッファに格納した後にCP
Uへアクノリッジ信号を返送して既に処理が済んだよう
に見せかけ、外部メモリへのアクセスはアクセスコント
ローラが代行するので、アクセス完了後のアクノリッジ
信号を待たないで次の処理に移行できるからである。例
えばパイプラインバッファの段数を8とすれば、1回の
ライトアクセスに要するCPUの待ち時間は、従来の方法
に比べて平均でシステムバスクロックの8クロック分程
度早くなるように改善される。
【0046】また、複数のCPUが共有メモリをシステム
バス経由で共有するシステムでは、CPUインターフェー
ス回路それぞれに調停回路を設け、他のCPUによるシス
テムバスの使用が調停回路に知らすようにすることによ
って、システムバスの調停性能を高めることができる。
【図面の簡単な説明】
【図1】本発明の第1の実施例のブロック図
【図2】本発明におけるパイプラインバッファの構成図
【図3】図1に示した第1の実施例におけるライトアク
セスタイミングチャート
【図4】図1に示した第1の実施例におけるリードアク
セスタイミングチャート
【図5】本発明の第2の実施例のブロック図
【図6】図5に示した第2の実施例におけるライトタイ
ミングチャート
【図7】図5に示した第2の実施例におけるリードタイ
ミングチャート
【図8】本発明の第3の実施例のブロック図
【図9】図8に示した第3の実施例におけるリードアク
セスタイミングチャート
【符号の説明】
1 CPU 2 ACKコントローラ 3 書込みアドレスポインタ生成回路 4 パイプラインバッファ 5 ラッチ回路 6 実行アドレスポインタ生成回路 7 アクセスコントローラ 8 システムバス 9 RAM制御回路 10 外部メモリ 11 調停回路 12 CPUインターフェース回路 13 CPUインターフェース回路 14 システムバス獲得信号 15 システムバス獲得信号 16 INT信号 100 CPUインターフェース回路 101 CPUインターフェース回路 102 CPUインターフェース回路

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 CPUから外部メモリをシステムバス経由
    でアクセスするためのCPUインターフェース回路におい
    て、 前記CPUから発行される前記アクセスのためのアクセス
    命令を格納するパイプラインバッファと、 前記パイプラインバッファ中の未処理アクセス命令数を
    検出する手段と、 前記パイプラインバッファ中の処理済みアクセス命令数
    を検出する手段と、 前記アクセス命令がライト命令であるときは、前記未処
    理アクセス命令数が前記処理済みアクセス命令数より少
    なくない限り、前記外部メモリへの書込み完了を待たず
    に前記CPUへアクノリッジ信号を返送する手段と、 前記未処理アクセス命令数のカウント数が前記処理済み
    アクセス命令数より少なくない限り、前記パイプライン
    バッファ中のアクセス命令の実行を起動する手段とを備
    えたことを特徴とするCPUインターフェース回路。
  2. 【請求項2】 CPUから外部メモリをシステムバス経由
    でアクセスするためのCPUインターフェース回路におい
    て、 前記CPUから発行される前記アクセスのためのアクセス
    命令を格納するパイプラインバッファと、 前記パイプラインバッファにアクセス命令が格納される
    毎にカウントアップされて前記パイプラインバッファの
    番地を指定する書込みアドレスポインタ生成回路と、 前記パイプラインバッファに格納されたアクセス命令が
    処理されるとカウントアップされる実行アドレスポイン
    タ生成回路と、 前記アクセス命令がライト命令であるときは、前記書込
    みアドレスポインタ生成回路のカウント数が前記実行ア
    ドレスポインタ生成回路のカウント数より少なくない限
    り、前記外部メモリへの書込み完了を待たずに前記CPU
    へアクノリッジ信号を返送するACKコントローラと、 前記書込みアドレスポインタ生成回路のカウント数が前
    記実行アドレスポインタ生成回路のカウント数より少な
    くない限り、前記パイプラインバッファ中のアクセス命
    令の実行を起動するアクセスコントローラとを備えたこ
    とを特徴とするCPUインターフェース回路。
  3. 【請求項3】 複数のCPUから共有する外部メモリをシ
    ステムバス経由でアクセスするために前記CPU毎に設け
    られたCPUインターフェース回路において、 前記CPUから発行される前記アクセスのためのアクセス
    命令を格納するパイプラインバッファと、 前記パイプラインバッファにアクセス命令が格納される
    毎にカウントアップされて前記パイプラインバッファの
    番地を指定する書込みアドレスポインタ生成回路と、 前記パイプラインバッファに格納されたアクセス命令が
    処理されるとカウントアップされる実行アドレスポイン
    タ生成回路と、 前記アクセス命令がライト命令であるときは、前記書込
    みアドレスポインタ生成回路のカウント数が前記実行ア
    ドレスポインタ生成回路のカウント数より少なくない限
    り、前記外部メモリへの書込み完了を待たずに前記CPU
    へアクノリッジ信号を返送するACKコントローラと、 他のCPUインターフェース回路との間で前記システムバ
    スの使用を調停する調停回路と、 前記書込みアドレスポインタ生成回路のカウント数が前
    記実行アドレスポインタ生成回路のカウント数より少な
    くなく、かつ前記調停回路によって前記システムバスの
    使用許可がされると前記他のCPUインターフェース回路
    へ前記調停のためにシステムバス獲得信号を出力した後
    に前記パイプラインバッファ中のアクセス命令の実行を
    起動するアクセスコントローラとを備えたことを特徴と
    するCPUインターフェース回路。
  4. 【請求項4】 前記ACKコントローラは、リードアクセ
    ス時にもライトアクセス時と同じタイミングで前記CPU
    へアクノリッジ信号を返送し、前記外部メモリから読み
    出したデータをラッチ回路に取り込んだ時点で前記CPU
    に割込み信号を発行し、該CPUによる前記ラッチ回路の
    リードを勧誘することを特徴とする請求項2または請求
    項3に記載のCPUインターフェース回路。
JP2000385818A 2000-12-19 2000-12-19 Cpuインターフェース回路 Expired - Lifetime JP4592944B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000385818A JP4592944B2 (ja) 2000-12-19 2000-12-19 Cpuインターフェース回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000385818A JP4592944B2 (ja) 2000-12-19 2000-12-19 Cpuインターフェース回路

Publications (2)

Publication Number Publication Date
JP2002189695A true JP2002189695A (ja) 2002-07-05
JP4592944B2 JP4592944B2 (ja) 2010-12-08

Family

ID=18853022

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000385818A Expired - Lifetime JP4592944B2 (ja) 2000-12-19 2000-12-19 Cpuインターフェース回路

Country Status (1)

Country Link
JP (1) JP4592944B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007087467A (ja) * 2005-09-20 2007-04-05 Elpida Memory Inc データ転送動作終了検知回路及びこれを備える半導体記憶装置
KR101841964B1 (ko) * 2011-02-22 2018-05-15 삼성전자주식회사 인터커넥터를 포함하는 시스템 온 칩 및 그것의 제어 방법
CN113760376A (zh) * 2021-09-06 2021-12-07 合肥松豪电子科技有限公司 TP芯片CPU在Eflash上同时运行且操作的方法
CN114036096A (zh) * 2021-11-04 2022-02-11 珠海一微半导体股份有限公司 一种基于总线接口的读控制器

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000060462A1 (en) * 1999-04-07 2000-10-12 Cradle Technologies Global bus synchronous transaction acknowledge with nonresponse detection

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3520570B2 (ja) * 1994-07-15 2004-04-19 富士ゼロックス株式会社 メモリアクセス制御装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000060462A1 (en) * 1999-04-07 2000-10-12 Cradle Technologies Global bus synchronous transaction acknowledge with nonresponse detection
JP2002541548A (ja) * 1999-04-07 2002-12-03 クレイドル・テクノロジーズ 無応答検出を備えたグローバルバス同期トランザクション肯定応答

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007087467A (ja) * 2005-09-20 2007-04-05 Elpida Memory Inc データ転送動作終了検知回路及びこれを備える半導体記憶装置
US8713247B2 (en) 2005-09-20 2014-04-29 Hiroki Fujisawa Data transfer operation completion detection circuit and semiconductor memory device provided therewith
US8751694B2 (en) 2005-09-20 2014-06-10 Hiroki Fujisawa Data transfer operation completion detection circuit and semiconductor memory device provided therewith
KR101841964B1 (ko) * 2011-02-22 2018-05-15 삼성전자주식회사 인터커넥터를 포함하는 시스템 온 칩 및 그것의 제어 방법
CN113760376A (zh) * 2021-09-06 2021-12-07 合肥松豪电子科技有限公司 TP芯片CPU在Eflash上同时运行且操作的方法
CN113760376B (zh) * 2021-09-06 2024-05-28 合肥松豪电子科技有限公司 TP芯片CPU在Eflash上同时运行且操作的方法
CN114036096A (zh) * 2021-11-04 2022-02-11 珠海一微半导体股份有限公司 一种基于总线接口的读控制器
CN114036096B (zh) * 2021-11-04 2024-05-03 珠海一微半导体股份有限公司 一种基于总线接口的读控制器

Also Published As

Publication number Publication date
JP4592944B2 (ja) 2010-12-08

Similar Documents

Publication Publication Date Title
US5535341A (en) Apparatus and method for determining the status of data buffers in a bridge between two buses during a flush operation
US5893153A (en) Method and apparatus for preventing a race condition and maintaining cache coherency in a processor with integrated cache memory and input/output control
US5119480A (en) Bus master interface circuit with transparent preemption of a data transfer operation
US20040107265A1 (en) Shared memory data transfer apparatus
JPH08255124A (ja) データ処理システムおよび方法
JPH06309230A (ja) バススヌ−プ方法
JP2591502B2 (ja) 情報処理システムおよびそのバス調停方式
JP4592944B2 (ja) Cpuインターフェース回路
US5590286A (en) Method and apparatus for the pipelining of data during direct memory accesses
EP1071020A2 (en) Information processing system
JP3491588B2 (ja) 外部バス制御装置
JP2522412B2 (ja) プログラマブルコントロ―ラと入出力装置の間の通信方法
JP3077807B2 (ja) マイクロコンピュータシステム
JP3103174B2 (ja) メモリアクセス装置
KR0145932B1 (ko) 고속중형 컴퓨터시스템에 있어서 디엠에이제어기
JP3467188B2 (ja) 多重化バスの順序保証システム
JPH06161891A (ja) コンピュータシステム及びキャッシュ制御手段におけるキャッシュ制御方法
JPS6240565A (ja) メモリ制御方式
JPS6054065A (ja) 同期制御装置
JP2001014214A (ja) メモリ共有方法、およびこの方法を使用したマルチプロセッサ設備
JPH104420A (ja) データ転送方法
JPH0713881A (ja) 通信処理装置
JPH03262063A (ja) Dma転送のバス制御回路
JPH04306754A (ja) Dmaコントローラ
JPH05210616A (ja) コンピュータ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071116

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100611

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100617

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100910

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100915

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130924

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4592944

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term