JP3623232B2 - データメモリ及びプロセッサバス - Google Patents

データメモリ及びプロセッサバス Download PDF

Info

Publication number
JP3623232B2
JP3623232B2 JP51835395A JP51835395A JP3623232B2 JP 3623232 B2 JP3623232 B2 JP 3623232B2 JP 51835395 A JP51835395 A JP 51835395A JP 51835395 A JP51835395 A JP 51835395A JP 3623232 B2 JP3623232 B2 JP 3623232B2
Authority
JP
Japan
Prior art keywords
data
read
address
word
write
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.)
Expired - Fee Related
Application number
JP51835395A
Other languages
English (en)
Other versions
JPH09507325A (ja
Inventor
バイラム ファーバー,スチーブン
ヘンリー オールドフィールド,ウィリアム
Original Assignee
エイアールエム リミテッド
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 エイアールエム リミテッド filed Critical エイアールエム リミテッド
Publication of JPH09507325A publication Critical patent/JPH09507325A/ja
Application granted granted Critical
Publication of JP3623232B2 publication Critical patent/JP3623232B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • 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 or look ahead
    • G06F9/3802Instruction prefetching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4239Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with asynchronous protocol
    • 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 or look ahead
    • G06F9/3824Operand accessing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

この発明は、データ処理の分野に関する。特に、この発明は、プロセッサ及びデータメモリを有しこれらの間に命令データ語、読出しデータ語、及び書込みデータ語が転送されることになっているデータ処理システムに関する。
キャッシュメモリのようなデータメモリに結合されたプロセッサを有し、データメモリが命令データ語、読出しデータ語、及び書込みデータ語を記憶するデータ処理システムを提供することは、知られている。
異なるデータ語間の区別がそのデータ語を用いて現在遂行しつつあるアクセス動作に依存すること、例えば、データメモリに書き込まれつつあるデータ語がその時刻において書込みデータと考えられるが、その後データメモリから読み出されつつあるその同じデータ語が読出しデータ語であると考えられることは、当行者によって認められるであろう。
データメモリと関連したプロセッサとの間のデータの転送は、しばしば、このようなデータ処理システムの動作における性能に影響する因子である。システムの総合性能を向上するために、相当量の労力がこのようなデータ語を転送する機構の設計のために費やされる。
添付図面のうちの第1図から第4図は、中央処理ユニット2(CPU)とキャッシュメモリ4との間にデータを転送する(アドバンストRISCマシン株式会社(Advanced RISC Machines Limited)のARM600集積回路に類似の)典型的構成を図解する。そのシステムは、CPU2とキャッシュメモリ4との間のデータバス6及びアドレスバス8を有する。CPU2はコア10を含み、このコアは、それに命令データ語バス12を経由して供給される命令データ語に応答する。コア10は、書込みデータ語(WD)を駆動器30を経由してデータバス6上へ、及び書込みアドレス(WA)を読出し書込みアドレスバス14へ出力する。書込みアドレスWAは、キャッシュメモリ4によって受信されるとき、書込みデータ語WDがキャッシュメモリ4内のどこに記憶されるかを制御する。類似の仕方で、データバス6、及び読出し及び書込みアドレスバス14は、読出しデータ語(RD)をキャッシュメモリ4からコア10内へと、読出し及び書込みアドレスバス14上の読出しアドレス(RA)によって指定されたキャッシュメモリ4内の位置から読み出すのに使用され得る。
キャッシュメモリ4から回復される命令データ語は、データバス6を経由してプリフェッチユニット16(ARM600はプリフェッチユニットを有さないが、もっともこのクラスの或る他のプロセッサはプリフェッチユニットを有する)へ通される。プリフェッチユニット16は、タイムリーな仕方でコア10内への命令データ語の円滑な供給を助援し、かつ分岐命令識別のような機能を遂行することを目指している。命令データ語がそこから回復されるキャッシュメモリ4内のアドレスは、コア10によって発生されたプログラムカウンタアドレス(PC)によって指定され、かつプログラムカウンタバス18、プリフェッチユニット16、及びマルチプレクサ20を経由してアドレスバス8へ通される。マルチプレクサ20は、コア10によって発生されたデータフラグ信号ではなく命令に従ってプログラムカウンタバス18又は読出し及び書込みアドレスバス14のどちらかをアドレスバス8へ選択的に結合するように働く。
プリフェッチユニット16は、プログラムカウンタレジスタPCを含みかつプログラムカウンタ値を関連命令と一緒にコア10に送り返すであろう。プリフェッチユニット16は、このようにして、ほとんどのプリフェッチに再応答するであろうし、かつアドレスフラグAFを駆動することを要求されるであろう。コア10は、それ自身のプリフェッチを有効に制御するためにプリフェッチユニットプログラム単位値を更新する能力を保有することができるであろう。
キャッシュメモリ4内に、記憶セル22のアレイが備えられており、このアレイ内に命令データ語、読出しデータ語、及び書込みデータ語が記憶される。アドレスバス8はアドレスデコーダ24へ供給され、このデコーダはアドレスバス8から読み出されたアドレス語に従って記憶セルのアレイ22内から個々の記憶セル又は記憶セルの行を選択するように働く。キャッシュ4から回復される読出しデータ語は、読出しデータバス26を経由してデータバス6へ供給される。キャッシュ4内に記憶される書込みデータ語は、データバス6から書込みデータバス28を経由して記憶セルのアレイ22へ結合される。
データをキャッシュ内へロードするために、コア10を通して以外にも他の機構が必要である。この機構は、信号線路を適当な値へ強制するためにそれ自身の駆動器を必要とするであろう。このような機構は、例えば、キャッシュミスの際に動作するであろう。この機構は、コア10より典型的に遥かに低速で動作するであろうが、しかしシステム性能に対してさほど致命的でない。
第1図に図解されたようなシステムの設計において重要な考慮すべきことは、データバス6及びアドレスバズ8が長いトラック長、かつそれであるから比較的高い関連キャパシタンスを有する傾向があると云うことである。これに対処するために、個々のバス線が正しい信号レベル値に到達するのにかかる時間を速めるようにこれらのバス上に置かれる語をこれらのバス上へ活性的に駆動しなければならない。この目的のために、CPU2内の駆動器回路30が書込みデータ語をデータバス6上へ駆動する。類似の仕方で、キャッシュ4内の駆動器回路32が読出しデータ語をデータバス6上へ駆動する。データバス6にとっていかなるときもこれら2つの駆動器の1つだけが活性であることは、認められるであろう。コア10によって発生された読出しフラグ信号(R)及び書込みフラグ信号(W)は2つの駆動器30、32を活性化及び不活性化するように働く。CPU2内の駆動器34は、アドレス語をアドレスバス8上へ駆動するように働く。
第2図は、命令データ語を取り出すときの第1図のシステムの動作を図解する。このモードで、デマルチプレクサ20は、キャッシュメモリ4内から命令アドレス位置を選択するためにPC値をアドレスバス8上へスイッチする。このようにしてアクセスされた命令データ語Iは、読出しバス26、駆動器32、データバス6、ユニット16、及び命令バス12を経由してコア10へ通される。
第3図は、読出しデータ語を転送するに当たっての第1図のシステムの動作を図解する。この場合、デマルチプレックサ20は、コア10から読出しデータRAを選択して、アドレスバス8を経由してアドレスデコーダ24へ供給する。このようにしてアクセスされた読出しデータ語は、読出しバス26、駆動器32、及びデータバス6を経由してコア10へ送り返される。
最後に、第4図は、書込みデータ語を転送するに当たっての第1図のシステムの動作を図解する。この場合は、書込みアドレスWAがマルチプレクサ20を経由してコア10からアドレスバス8へ通される。1サイクル後に、コア10が書込みデータ語WDを発生し、かつこれを駆動器30、データバス6、及び書込みバス28を経由して記憶セルのアレイ22へ通す。
注意するのは、読出しデータの転送中、キャッシュメモリ4内の駆動器32がデータバス6を駆動することである。逆に、書込みデータ語の転送中、CPU2内の駆動器30がデータバス6を駆動する。2つの駆動器30、32の間のどんな衝突をも回避するために、重要なことはそれらがデータバス6を決して同時に駆動すようとしてはならないことである。このような衝突は、回路に損傷を生じ、かつ不都合に大量の電力を消費することになる。このような衝突を確実に回避するために、駆動器30、32のうちの1つのスイッチオフと駆動器30、32のうちの他のスイッチオンとの間に遅延期間を考慮しなければならない。これは、2つの個別制御信号又はバッファ内の慎重なタイミング設計(すなわち、低速ターンオン及び高速ターンオフ)を要求する。
第1図から第4図に図解されたようなシステムの総合性能を向上するために、種々の調査研究が採択されると云える。1つの調査研究は、データを転送するのに用いられるクロック速度を上昇することであり、例えば、もしfなるクロック周波数がコア10に対して使用されるならば、そこで、2fなるクロック速度を転送に使用することができるであろう。しかしながら、このような調査研究に関して、駆動器30を用いてのデータバス6の駆動と駆動器32を用いてのデータバス6の駆動との間の充分な遅延を維持しかつ適当に同期させるに当たって問題が生じる。加えて、同期要件に起因する帯域幅の損失がある。
性能を向上させる他の調査研究は、単にバス幅を増大することであるかもしれない。広いバスほど所与のクロック速度で所与の時間内に多くのデータが転送されるのを許す。この調査研究は、それがバスの物理的寸法を増大すると云う不利をこうむる。多くの状況において、物理的寸法の増大は、当然の結果として低い歩留を招く大きい集積回路を要求するので製造の観点から不利である。
1態様から見て、この発明は集積回路を提供し、この集積回路は、
キャッシュデータメモリ、
前記データメモリ内の読出しアドレスから読出しデータ語を読み出すために、及び前記データメモリ内の書込みアドレスへ書込みデータ語を書き込むために、前記データメモリ内の命令アドレスから読み出された命令データ語に応答する、プロセッサ、
前記データメモリから前記プロセッサへ前記命令データ語及び前記読出しデータ語を転送するために前記データメモリと前記プロセッサとを直接接続する単方向読出しバス、及び
前記データプロセッサから前記データメモリへ書込みデータ語、命令アドレス語、読出しアドレス語、及び書込みアドレス語を転送するために前記プロセッサと前記データメモリとを直接接続する単方向書込み及びアドレスバス
を含み、
この装置において、前記データメモリがバーストアクセスモードで動作可能であり、これによって前記データメモリに転送されたアドレス語が前記データメモリ内の連続アドレスに対するアクセス動作の順序に対する開始アドレスを指定する。
どちらの方向のデータ流に対しても単方向バスを提供することは、バス方向の安全反転に必要なタイムギャップを提供しなくてよいと云う利点を有する。それゆえ、バス速度を、同期問題を起こすことなく、上昇させることができる。更に、発明は、アドレスバスを経由して通されるアドレスデータがデータバス上のデータに比較して比較的まれにしか変化しないと云う現実を利用する。それゆえ、書込み及びアドレスバスを形成するためにアドレスと共にこのバス上へ書込みデータを多重化することが、利用可能な帯域幅を充分に活用する。
この発明によれば、前記データメモリがバーストモードで動作可能であり、これによって前記データメモリに転送されたアドレス語が前記データメモリ内の連続アドレスに対するアクセス動作の順序に対する開始アドレスを指定する。
このようなバーストモードアクセスは、回復される命令データ語又は読出しデータ語、又は書き込まれる書込みデータ語の順序の開始でアドレスデータ語が提供されさえすればよいから、発明のバス構造に特に適している。単一アドレスデータ語がアクセスプロセスを開始させ、次いでアクセスプロセスは終了するまで後続のアドレスを通して順序に進行する。このようにして、書込み及びアドレスデータバスが少数のアドレスデータ語を搬送するために要求され、それであるから帯域幅を解放して書込みデータ語の通過に供する。
先に論じたように、信号値が信頼性を以て得られる場合の速度を上昇するためにデータバスに対して駆動器回路を提供することができる。発明はこのような駆動器がなくてもアドレスデータを通すバスの帯域幅の使用を高めると云う利点を有するが、このような駆動器は、所与のバスに対して持久的に活性を維持することができるので、発明に使用されるのに充分に適している。
発明の好適実施例において、前記プロセッサは、前記命令データ語を受信する命令プリフェッチユニット、前記読出しデータ語を受信する読出しデータ語受信回路を含み、前記命令プリフェッチユニットと読出しデータ語受信回路とは並列に前記読出しデータバスに接続される。
プリフェッチユニットの具備は、命令処理の動作を高速化する。読出しデータ語受信回路とプリフェッチユニットとの並列接続は、読出しバスがマルチプレクサを経由して経路を取ることを要さず、命令データ語又は読出しデータ語のどちらかを通すのを許し、プロセッサはプリフェッチユニット又は読出しデータ語受信回路のどちらか適当な方を選択して活性化する。
発明の好適実施例において、前記データメモリは、前記命令アドレス語、前記読出しアドレス語、及び前記書込みアドレス語を受信しかつ解読するアドレス受信機及びデコーダ、及び書込みデータ語を書き込む書込み回路を含み、この実施例において前記アドレス受信機及びデコーダを活性化するために前記プロセッサと前記アドレス受信機及びデコーダとの間にアドレスフラグ信号線が延びる。
アドレスバス上へのアドレスデータ語と書込みデータ語との多重化は、データメモリによっていかにこの異なるデータを識別しかつ処理することができるかと云う問題を生じる。この目的のために、データメモリ内の適当な処理を制御するためのアドレスフラグ信号を提供することによって、有利な融通性が達成される。
補足的な仕方で、好適なのは、前記プロセッサが前記書込み及びアドレスバスへの接続のために命令アドレス語又は読出しアドレス語及び書込みアドレス語又は書込みデータ語のどちらかを選択するマルチプレクサを含むことである。
このようにして、適当なデータを書込み及びアドレスデータバス上へ置く機構が提供される。
データメモリの動作を制御する好適な仕方は、読出しフラグ信号を転送するために前記プロセッサと前記キャッシュデータメモリとの間に延びる読出しフラグ信号線、書込みフラグ信号を転送するために前記プロセッサと前記キャッシュデータメモリとの間に延びる書込みフラグ信号線、及び命令フラグ信号を転送するために前記プロセッサと前記キャッシュデータメモリとの間に延びる命令フラグ信号線を提供することであり、この仕方において前記読出しフラグ信号、前記書込みフラグ信号、及び前記命令フラグ信号は前記データメモリへのアクセスモードを選択し、かつ前記読出しフラグ信号は前記読出しバス上の読出しデータ語の転送が命令データ語の転送より高い優先権を有するように前記命令フラグ信号をオーバライドするように働く。
このようにして、読出しデータ語又は命令データ語を回復する、又は書込みデータ語を記憶する適当なモードにデータメモリを置くことができる。更に、命令データ語が典型的にプリフェッチされかつシステム内でバッファされるのに反して、読出しデータ語の回復は個々に解読された命令が要求するに従って突発的に起こる傾向にあるから、平均処理速度は、読出しデータ語の転送に命令データ語の転送の優先権より高い優先権を持たせることによって上昇させられる。
他の態様から見て、この発明は集積回路内のデータを処理する方法を提供し、この方法は、
データメモリ内に命令データ語、読出しデータ語、及び書込みデータ語を記憶するステップ、
前記データメモリとプロセッサとを直接接続する単方向読出しバスを経由して前記データメモリから前記プロセッサへ前記命令データ語及び読出しデータ語を転送するステップ、及び
前記プロセッサと前記データメモリとを直接接続する単方向書込み及びアドレスバスを経由して前記プロセッサから前記データメモリへ前記書込みデータ語、命令アドレス語、読出しアドレス語、及び書込みアドレス語を転送するステップを含み、
この方法において、前記データメモリがバーストアクセスモードで動作可能であり、これによって前記データメモリに転送されたアドレス語が前記データメモリ内の連続アドレスに対するアクセス動作の順序に対する開始アドレスを指定する。
単に例として、発明の実施例を添付の図面を参照して、いまから説明するが、これらの図面の中で、
第1図から第4図は典型的な既知のプロセッサ及びデータメモリシステムを図解し、
第5図はこの発明の1実施例による単方向バスを有するプロセッサ及びデータメモリシステムの構成を図解し、
第6図から第8図は異なるモードでの第5図の実施例の動作を図解する。
第5図はコア38を有するCPU36を示し、コア38は読出しデータ語RD及び命令データ語Iを受信しかつ書込みデータ語WDを発生する。これらのデータ語は、単方向読出しバス42、及び単方向書込み及びアドレスバス44を経由してCPU36とキャッシュメモリ40との間で転送される。読出しバス42は、ユニット46と並列にかつコア38内の読出しデータ受信回路に接続されている。プリフェッチユニット46からの命令データ語は、命令バス48を経由してコア38へ通される。
書込みアドレスバス44は、CPU36内の駆動器50によって駆動され、駆動器50はその入力を3路マルチプレクサ52から受信する。3路マルチプレクサ52は、プリフェッチユニット46からのプログラムカウンタ値PC、コア38からの読出しアドレスRA又は書込みアドレスWA、又はコア38からの書込みデータWDの中から選択する。3路マルチプレクサ52によって選択される信号は、コア38によって発生されたアドレスフラグ信号AF、及びプリフェッチユニット46によって発生された命令フラグ信号IFに従って選択される。
キャッシュメモリ40内で、駆動器54は信号値を読出しデータバス42上へ駆動するように働く。書込みアドレスバス44からの信号は、アドレスデコーダ回路58(アドレスフラグ信号AFによって制御されるアドレスラッチ56を経由する)、及び書込みデータ受信回路の両方へ送られる。
上述の実施例はアドレスデコーダ回路58を使用するのに対して、連想キャッシュ(すなわち、解読タグルックアップ)に基づく実施例もまた可能であることは、認められるであろう。
キャッシュメモリ40による読出しデータ語又は命令データ語のいずれかの回復は、コア38によって発生された読出しフラグ信号RF、及び命令フラグ信号IFを経由して制御される。更に、コア38によって発生された書込みフラグ信号WFは、書込みデータ語が書込み及びアドレスバス44からキャッシュメモリ40によって受信されかつ記憶されることを指示するように働く。
第5図の回路において、第1図から第4図の回路と対照的に、読出しバス42は、単方向性であって一端にのみ駆動器54を備え、このバスは転送のその方向を反転するには及ばない。したがって、このような反転に時間を浪費せず、かつ駆動器回路衝突に起因する潜在的損傷及び電力浪費を回避する。アドレスデータ及び書込みデータは、3路マルチプレクサ52によって書込み及びアドレスバス44上へ時分割多重化される。
第6図は、命令取出しモードで動作するシステムを図解する。このモードでは、プログラムカウンタアドレス値PCは、プリフェッチユニット46、3路マルチプレクサ52、駆動器50、書込み及びアドレスバス44、及びアドレスラッチ56を経由してアドレスデコーダ58へ通される。アドレスフラグ信号AFがオンかつ命令フラグ信号IFがオンである。信号のこの組合わせが、3路マルチプレクサ52を制御して、プリフェッチユニット46からのプログラムカウンタアドレス値PCを選択させて、駆動器50を経由して書込み及びアドレスバス44へ印加させる。キャッシュメモリ40へと通る命令フラグIFは、また、命令データ語が指定されたアドレスから書込み及びアドレスバス44上へ回復されることを指示する。この命令データ語は、駆動器54、読出しバス42、プリフェッチユニット46、及び命令バス48を経由してCPU36へ返される。
システムはバーストモードで動作し、これによって単一開始プログラムカウンタアドレス値PCがアドレスを指定し、このアドレスから順次命令取出しが進行して、更にアドレスが供給されるまで進行する。アドレスラッチ56はアドレスデコーダ回路58への入力を保留し、アドレスデコーダ回路58はバーストモード動作中アドレスを増分するカウンタを組み込んでいる。
第7図は、第5図のシステムにとってのデータ読出し動作を図解する。この場合、読出しデータ語は、駆動器54及び読出しデータバス42を経由してキャッシュメモリ40からコア38へ経路を取らされる。読出しアドレスRAは、3路マルチプレクサ52によって、アドレスフラグ信号AFがオン表明させられておりかつ命令フラグIFがオフ表明させられているのに応答して、選択される。したがって、読出しアドレスは、駆動器50、書込み及びアドレスバス44、アドレスラッチ56、及びアドレスデコーダ58を経由してキャッシュ48へ印加される。アドレスフラグがオンであり、読出しフラグがオンであり、かつ書込みフラグがオフであることは、キャッシュ40に書込み及びアドレスバス44上の信号を読出しアドレスに従って取り扱わさせる。
読出しデータ動作は、命令取出し動作に優先して起こる。それゆえ、もしプリフェッチユニット46が命令フラグ信号IFオンを表明しており、更に命令データ語を受信する用意ができていることを指示しており、かつコア38が読出しフラグ信号RFオンを表明するならば、そこでキャッシュメモリ40内の論理が高い優先権を有する読出し動作を行い、かつ、いかなる命令データ語でもない要求された読出しデータ語を読出しバス42を経由して返す。
第8図は、書込みデータ語をキャッシュメモリ40内に記憶するモードでの第5図のシステムを図解する。このモード中、アドレスフラグ信号AFは、書込みアドレスWA又は書込みデータ語WDがコア38によって現在出力されつつあるかどうかに従って、オン表明されるのとオフ表明されるのとの間を交互する。命令フラグ信号IFはオフ表明され、かつアドレスフラグ信号AFは3路マルチプレクサ52を制御して、適当な書込みアドレスWA又は書込みデータ語を選択させてこれを駆動器50を経由して書込み及びアドレスバス44に印加させるように働く。書込みデータ語、及び書込みアドレス語が、このようにして、有効に書込み及びアドレスバス44上へ時分割多重化される。バーストモード書込み転送の提供は、書込みアドレスをまれな間隔において、例えば、ページ境界においてのみ提供すればよいと云う結果を持たらす。もし書込みアドレスを各書込みデータ語毎に提供しなければならなかったとしたならば、これが書込みデータ帯域幅を確かに半減しているであろう。
キャッシュメモリ40内で、アドレスラッチ56は、アドレスフラグ信号AFの値に応答して、書込み及びアドレスバス44上のアドレス語を捕捉する。書込みフラグ信号WFは、(アドレスフラグAFの逆位相にあって)オフ及びオン表明され、書込み及びアドレスバス44からの書込みデータ語が記憶されるべきことをキャッシュ40に指示する。

Claims (6)

  1. 集積回路であって、
    データメモリ、
    前記データメモリ内の読出しアドレスから読出しデータ 語を読み出すために、及び前記データメモリ内の書込み アドレスへ書込みデータ語を書き込むために、前記デー タメモリ内の命令アドレスから読み出された命令データ 語に応答する、プロセッサ、
    前記データメモリから前記プロセッサへ前記命令データ 語と前記読出しデータ語とを転送するために前記データ メモリと前記プロセッサとを直接接続する単方向読出し バス、
    前記データプロセッサから前記データメモリへ書込みデ ータ語と、命令アドレス語と、読出しアドレス語と、書 込みアドレス語とを転送するために前記プロセッサと前 記データメモリとを直接接続する単方向書込み及びアド レスバス
    及び、
    読出しフラグ信号を転送するために前記プロセッサと前 記キャッシュデータメモリとの間の読出しフラグ信号線 と、書込みフラグ信号を転送するために前記プロセッサ と前記データメモリとの間の書込みフラグ信号線と、命 令フラグ信号を転送するために前記プロセッサと前記デ ータメモリとの間に延びる命令フラグ信号線とを含み、
    前記データメモリがバーストアクセスモードで動作可能 であり、これによって前記データメモリに転送されたア ドレス語が、前記データメモリ内の連続アドレスに対す る一連のアクセス動作における開始アドレスを指定し、
    前記プロセッサが前記命令データ語を受信する命令プリ フェッチユニットと、前記読出しデータ語を受信する読 出しデータ語受信回路とを含み、前記命令プリフェッチ ユニットと前記読出しデータ語受信回路とが並列に前記 読出しデータバスに接続されており、
    前記読出しフラグ信号と、前記書込みフラグ信号と、前 記命令フラグ信号とは前記データメモリへのアクセスモ ードを選択し、かつ前記読出しフラグは前記読出しバス 上の読出しデータ語の転送が命令データ語の転送より高 い優先権を有するように前記命令フラグ信号をオーバラ イドするように働く集積回路。
  2. 請求の範囲第1項記載の集積回路において、前記キャッシュデータメモリが前記読出しデータバス上の転送される信号値を駆動する読出しバス駆動器回路を含む集積回路。
  3. 請求の範囲第1項及び第2項のうちいずれか1つに記載の集積回路において、前記プロセッサが前記書込み及びアドレスバス上の転送される信号値を駆動する書込み及びアドレスバス駆動器回路を含む集積回路。
  4. 請求の範囲先行項のうちいずれか1つに記載の集積回路において、前記データメモリが、前記命令アドレス語と、前記読出しアドレス語と、前記書込みアドレス語とを受信しかつ解読するアドレス受信機及びデコーダと、書込みデータ語を書き込む書込み回路とを含み、前記アドレス受信機及びデコーダを活性化するために前記プロセッサと前記アドレス受信機及びデコーダとの間にアドレスフラグ信号線を有する集積回路。
  5. 請求の範囲先行項のうちいずれか1つに記載の集積回路において、前記プロセッサが前記書込み及びアドレスバスへの接続のために命令アドレス語又は読出しアドレス語及び書込みアドレス語又は書込みデータ語のどちらかを選択するマルチプレクサを含む集積回路。
  6. 集積回路内のデータを処理する方法であって、
    データメモリ内に命令データ語と、読出しデータ語と、 書込みデータ語とを記憶するステップ、
    前記データメモリとプロセッサとを直接接続する単方向 読出しバスを経由して前記データメモリから前記プロセ ッサへ前記命令データ語と読出しデータ語とを転送する ステップ、及び
    前記プロセッサと前記データメモリとを直接接続する単 方向書込み及びアドレスバスを経由して前記プロセッサ から前記データメモリへ前記書込みデータ語と、命令ア ドレス語と、読出しアドレス語と、書込みアドレス語と を転送するステップ
    を含み、
    前記プロセッサが前記命令データ語を受信する命令プリ フェッチユニットと、前記読出しデータ語を受信する読 出しデータ語受信回路とを含み、前記命令プリフェッチ ユニットと前記読出しデータ語受信回路とが並列に前記 読出しデータバスに接続されており、
    前記集積回路は、読出しフラグ信号を転送するために前 記プロセッサと前記キャッシュデータメモリとの間の読 出しフラグ信号線と、書込みフラグ信号を転送するため に前記プロセッサと前記データメモリとの間の書込みフ ラグ信号線と、命令フラグ信号を転送するために前記プ ロセッサと前記データメモリとの間に延びる命令フラグ 信号線とを含み、
    前記読出しフラグ信号と、前記書込みフラグ信号と、前 記命令フラグ信号とは前記データメモリへのアクセスモ ードを選択し、かつ前記読出しフラグは前記読出しバス 上の読出しデータ語の転送が命令データ語の転送より高 い優先権を有するように前記命令フラグ信号をオーバラ イドするように働き、
    前記データメモリがバーストアクセスモードで動作可能 であり、これによって前記データメモリに転送されたア ドレス語が、前記データメモリ内の連続アドレスに対す る一連のアクセス動作における開始アドレスを指定する 方法。
JP51835395A 1994-01-11 1994-10-14 データメモリ及びプロセッサバス Expired - Fee Related JP3623232B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB9400381A GB2285524B (en) 1994-01-11 1994-01-11 Data memory and processor bus
GB9400381.1 1994-01-11
PCT/GB1994/002254 WO1995019004A1 (en) 1994-01-11 1994-10-14 Data memory and processor bus

Publications (2)

Publication Number Publication Date
JPH09507325A JPH09507325A (ja) 1997-07-22
JP3623232B2 true JP3623232B2 (ja) 2005-02-23

Family

ID=10748605

Family Applications (1)

Application Number Title Priority Date Filing Date
JP51835395A Expired - Fee Related JP3623232B2 (ja) 1994-01-11 1994-10-14 データメモリ及びプロセッサバス

Country Status (12)

Country Link
US (1) US5732278A (ja)
EP (1) EP0739515B1 (ja)
JP (1) JP3623232B2 (ja)
KR (1) KR100342597B1 (ja)
CN (1) CN1105975C (ja)
DE (1) DE69407434T2 (ja)
GB (1) GB2285524B (ja)
IL (1) IL111952A (ja)
MY (1) MY115432A (ja)
RU (1) RU2137186C1 (ja)
TW (1) TW242185B (ja)
WO (1) WO1995019004A1 (ja)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990049284A (ko) * 1997-12-12 1999-07-05 구본준 데이터 프로그램 장치
US6150724A (en) * 1998-03-02 2000-11-21 Motorola, Inc. Multi-chip semiconductor device and method for making the device by using multiple flip chip interfaces
GB2341766A (en) * 1998-09-18 2000-03-22 Pixelfusion Ltd Bus architecture
GB2341767B (en) * 1998-09-18 2003-10-22 Pixelfusion Ltd Bus arbitration
JP2000223657A (ja) * 1999-02-03 2000-08-11 Rohm Co Ltd 半導体装置およびそれに用いる半導体チップ
KR100438736B1 (ko) * 2002-10-04 2004-07-05 삼성전자주식회사 어드레스 라인을 이용해 데이터 쓰기를 수행하는 메모리제어 장치
JP4233373B2 (ja) * 2003-04-14 2009-03-04 株式会社ルネサステクノロジ データ転送制御装置
US20040221021A1 (en) * 2003-04-30 2004-11-04 Domer Jason A. High performance managed runtime environment application manager equipped to manage natively targeted applications
US20050182884A1 (en) * 2004-01-22 2005-08-18 Hofmann Richard G. Multiple address two channel bus structure
KR100546403B1 (ko) * 2004-02-19 2006-01-26 삼성전자주식회사 감소된 메모리 버스 점유 시간을 가지는 시리얼 플레쉬메모리 컨트롤러
CN1329031C (zh) * 2005-01-24 2007-08-01 杭州鑫富药业有限公司 一种调血脂药物组合物及其用途
US7328313B2 (en) * 2005-03-30 2008-02-05 Intel Corporation Methods to perform cache coherency in multiprocessor system using reserve signals and control bits
FR2884629B1 (fr) * 2005-04-15 2007-06-22 Atmel Corp Dispositif d'amelioration de la bande passante pour des circuits munis de controleurs memoires multiples
CN1855783B (zh) * 2005-04-21 2011-05-04 华为技术有限公司 大容量时分多路复用交换芯片的数据处理方法
US20070005868A1 (en) * 2005-06-30 2007-01-04 Osborne Randy B Method, apparatus and system for posted write buffer for memory with unidirectional full duplex interface
US8107492B2 (en) * 2006-02-24 2012-01-31 Qualcomm Incorporated Cooperative writes over the address channel of a bus
US8108563B2 (en) 2006-02-24 2012-01-31 Qualcomm Incorporated Auxiliary writes over address channel
JPWO2007116487A1 (ja) * 2006-03-31 2009-08-20 富士通株式会社 メモリ装置、そのエラー訂正の支援方法、その支援プログラム、メモリ・カード、回路基板及び電子機器
KR101005816B1 (ko) 2006-03-31 2011-01-05 후지쯔 가부시끼가이샤 메모리 장치, 그 제어 방법, 그 제어 프로그램을 저장한 컴퓨터로 판독 가능한 기록매체, 메모리 카드, 회로 기판 및 전자 기기
WO2007116486A1 (ja) 2006-03-31 2007-10-18 Fujitsu Limited メモリ装置、その制御方法、その制御プログラム、メモリ・カード、回路基板及び電子機器
US8766995B2 (en) 2006-04-26 2014-07-01 Qualcomm Incorporated Graphics system with configurable caches
US8884972B2 (en) 2006-05-25 2014-11-11 Qualcomm Incorporated Graphics processor with arithmetic and elementary function units
US8869147B2 (en) 2006-05-31 2014-10-21 Qualcomm Incorporated Multi-threaded processor with deferred thread output control
US8644643B2 (en) 2006-06-14 2014-02-04 Qualcomm Incorporated Convolution filtering in a graphics processor
US8766996B2 (en) 2006-06-21 2014-07-01 Qualcomm Incorporated Unified virtual addressed register file
US9762536B2 (en) * 2006-06-27 2017-09-12 Waterfall Security Solutions Ltd. One way secure link
JP5002201B2 (ja) 2006-06-30 2012-08-15 株式会社東芝 メモリシステム
IL177756A (en) * 2006-08-29 2014-11-30 Lior Frenkel Encryption-based protection against attacks
IL180020A (en) * 2006-12-12 2013-03-24 Waterfall Security Solutions Ltd Encryption -and decryption-enabled interfaces
IL180748A (en) * 2007-01-16 2013-03-24 Waterfall Security Solutions Ltd Secure archive
CN100524267C (zh) * 2007-02-15 2009-08-05 威盛电子股份有限公司 数据处理***及数据处理方法
US8223205B2 (en) 2007-10-24 2012-07-17 Waterfall Solutions Ltd. Secure implementation of network-based sensors
US9635037B2 (en) 2012-09-06 2017-04-25 Waterfall Security Solutions Ltd. Remote control of secure installations
US9419975B2 (en) 2013-04-22 2016-08-16 Waterfall Security Solutions Ltd. Bi-directional communication over a one-way link
IL235175A (en) 2014-10-19 2017-08-31 Frenkel Lior Secure desktop remote control
US9772899B2 (en) * 2015-05-04 2017-09-26 Texas Instruments Incorporated Error correction code management of write-once memory codes
IL250010B (en) 2016-02-14 2020-04-30 Waterfall Security Solutions Ltd Secure connection with protected facilities
CN112559397A (zh) * 2019-09-26 2021-03-26 阿里巴巴集团控股有限公司 一种装置和方法
CN112269747B (zh) * 2020-10-19 2022-04-15 天津光电通信技术有限公司 一种时分复用缓存实现时隙数据包重组的方法
CN114840886B (zh) * 2022-04-21 2024-03-19 深圳鲲云信息科技有限公司 一种基于数据流架构的可安全读写存储装置、方法及设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4623990A (en) * 1984-10-31 1986-11-18 Advanced Micro Devices, Inc. Dual-port read/write RAM with single array
EP0257061A1 (en) * 1986-02-10 1988-03-02 EASTMAN KODAK COMPANY (a New Jersey corporation) Multi-processor apparatus
US5086407A (en) * 1989-06-05 1992-02-04 Mcgarity Ralph C Data processor integrated circuit with selectable multiplexed/non-multiplexed address and data modes of operation
AU636739B2 (en) * 1990-06-29 1993-05-06 Digital Equipment Corporation High speed bus system
US5325499A (en) * 1990-09-28 1994-06-28 Tandon Corporation Computer system including a write protection circuit for preventing illegal write operations and a write poster with improved memory

Also Published As

Publication number Publication date
KR970700337A (ko) 1997-01-08
IL111952A0 (en) 1995-03-15
CN1141092A (zh) 1997-01-22
IL111952A (en) 1998-08-16
JPH09507325A (ja) 1997-07-22
WO1995019004A1 (en) 1995-07-13
EP0739515B1 (en) 1997-12-17
GB2285524B (en) 1998-02-04
GB9400381D0 (en) 1994-03-09
DE69407434T2 (de) 1998-04-09
EP0739515A1 (en) 1996-10-30
DE69407434D1 (de) 1998-01-29
GB2285524A (en) 1995-07-12
KR100342597B1 (ko) 2002-11-23
US5732278A (en) 1998-03-24
CN1105975C (zh) 2003-04-16
TW242185B (en) 1995-03-01
MY115432A (en) 2003-06-30
RU2137186C1 (ru) 1999-09-10

Similar Documents

Publication Publication Date Title
JP3623232B2 (ja) データメモリ及びプロセッサバス
US6594755B1 (en) System and method for interleaved execution of multiple independent threads
US6076140A (en) Set associative cache memory system with reduced power consumption
US5210842A (en) Data processor having instruction varied set associative cache boundary accessing
US6836829B2 (en) Peripheral device interface chip cache and data synchronization method
JPH11312122A (ja) 使用者が構築可能なオンチッププログラムメモリシステム
US6249861B1 (en) Instruction fetch unit aligner for a non-power of two size VLIW instruction
EP0931287B1 (en) Asynchronous data processing apparatus
JPH06139189A (ja) 共有バス調停機構
JPH10105308A (ja) 情報伝送バス及び方法
US5590368A (en) Method and apparatus for dynamically expanding the pipeline of a microprocessor
US5717896A (en) Method and apparatus for performing pipeline store instructions using a single cache access pipestage
US20010018734A1 (en) FIFO overflow management
JP2000163312A (ja) マイクロプロセッサ
JP4413663B2 (ja) 命令キャッシュシステム
US20040128484A1 (en) Method and apparatus for transparent delayed write-back
US6473864B1 (en) Method and system for providing power management to a processing system
JPH1055303A (ja) メモリシステム
JPH08286914A (ja) メモリ制御装置
JPH03252726A (ja) 命令キュー
JP2004213544A (ja) マルチプロセッサ装置
JPH0373021A (ja) マイクロコンピュータ
JPS63148329A (ja) 命令先取り制御方式
JP2000347930A (ja) プロセッサ装置
KR19990088464A (ko) 프로세서에서명령을버퍼링하기위한방법및그시스템

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040225

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040601

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040830

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20041007

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: 20041116

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041124

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20071203

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20081203

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091203

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20101203

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20101203

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20111203

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20111203

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121203

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees