JP3406744B2 - 制御されたバーストメモリアクセスを備えたデータプロセッサおよびその方法 - Google Patents

制御されたバーストメモリアクセスを備えたデータプロセッサおよびその方法

Info

Publication number
JP3406744B2
JP3406744B2 JP23916895A JP23916895A JP3406744B2 JP 3406744 B2 JP3406744 B2 JP 3406744B2 JP 23916895 A JP23916895 A JP 23916895A JP 23916895 A JP23916895 A JP 23916895A JP 3406744 B2 JP3406744 B2 JP 3406744B2
Authority
JP
Japan
Prior art keywords
burst
data
bus
external
access
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 - Lifetime
Application number
JP23916895A
Other languages
English (en)
Other versions
JPH0877098A (ja
Inventor
チン・エイチ・リー
ジェイムズ・ビー・エイファート
ウォレス・ビー・ハーウッド・ザサード
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.)
Motorola Solutions Inc
Original Assignee
Motorola Solutions Inc
Motorola 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
Priority claimed from US08/298,868 external-priority patent/US5617559A/en
Application filed by Motorola Solutions Inc, Motorola Inc filed Critical Motorola Solutions Inc
Publication of JPH0877098A publication Critical patent/JPH0877098A/ja
Application granted granted Critical
Publication of JP3406744B2 publication Critical patent/JP3406744B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

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/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1441Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a range
    • 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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • 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/40Bus structure
    • G06F13/4004Coupling between buses
    • 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/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4009Coupling between buses with data restructuring
    • G06F13/4018Coupling between buses with data restructuring with data-width conversion
    • 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/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Bus Control (AREA)
  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は一般的にはデータ
プロセッサに関し、かつより特定的には、バーストメモ
リアクセス(burst memory access
es)をサポートするデータプロセッサに関する。
【0002】
【従来の技術】コンピュータシステムにおいては、中央
処理ユニット(CPU)はアクセスされるデータエレメ
ントを集合的に格納する一群のメモリセルの独自のロケ
ーションを示すアドレスを提供することによってメモリ
にアクセスする。CPUはアドレスバスに対しアドレス
を、かつ1つまたはそれ以上の制御信号を、前記アドレ
スが有効でありかつバスサイクルが開始されたことを通
知するために、提供することによってバスサイクルと称
されるものを開始する。読出し/書込み制御信号が次に
前記アクセスが読出しアクセスであるべきかあるいは書
込みアクセスであるべきかを指示する。引続き、前記バ
スサイクルが読出しサイクルであればデータエレメント
がデータバスから読出され、あるいは前記バスサイクル
が書込みサイクルであればデータバスに与えられる。そ
のようなアクセスに便宜を計るためメモリ装置はアドレ
スおよびデータバスに接続され、かつ前記アドレスバス
上のアドレスによって示されるロケーションで、読出し
サイクルの間はデータを前記データバスに提供し、ある
いは書込みサイクルの間は前記データバスによってデー
タを格納する。この種のバスサイクルは少なくとも2つ
のクロックサイクルを必要とし、かつ典型的には4つま
たはそれ以上のクロックサイクルを必要とする。
【0003】効率を改善する努力によって、より高速の
アクセスのためにコンピュータ構造はいくつかの付加的
なモードを開発した。例えば、いくつかの集積回路メモ
リ装置においては、いくつかの記憶セルが同時にアクセ
スされかつそれらの内容が一時的にバッファに保持され
る。典型的には、これらの「余分の」記憶セルのアドレ
スは元のアクセスアドレスから1ビットまたは2ビット
のみ異なっている。しかしながら、これらのセルへの引
続くアクセスはアクセスのアドレスを変更することなく
単にアクセスサイクルを実行することによって達成でき
る。技術的には、そのようなメモリは「ニブルモード」
と称される。いくつかの他の集積回路メモリにおいて
は、元のアクセスアドレスの一部は1(またはそれ以
上)の引続くアクセスに対するものとすることができ、
それによってアドレスの下位部分のみがデコード、その
他が行われる必要がある。従って、いったん元のアクセ
スが完了すると、「関連する」記憶セルへの引続くアク
セスは非常に迅速なものとなる。この種のメモリはしば
しば「コラムモード」または「スタティックコラム」と
称される。そのような強化された性能のメモリ装置を使
用して構成されたメモリシステムにおいては、その効果
はメモリシステムがmの「バースト」でいくつかのオペ
ランドの迅速な転送を支持できるようにすることであ
り、この場合mは2のn乗であり、nは整数でありかつ
選択されたメモリ装置に特有のものである。
【0004】バーストアクセスの有用性の1つの例はC
PUがオンチップ・キャッシュを有する場合である。C
PUが更新される必要があるキャッシュのラインをアク
セスするとき(キャッシュミスとして知られている)、
キャッシュは1組のデータワードが外部メモリから読ま
れることを要求する。この動作はキャッシュライン充填
(cache line fill)として知られてい
る。キャッシュラインは任意の数のバイトまたはワード
のデータであるが、一般的には4ワードであり、この場
合1ワードは典型的には32ビット長である。バースト
モードが利用可能とすることにより、外部メモリに対す
るキャッシュライン充填動作は4バスサイクル(「4ビ
ート(four beat)」)バーストサイクルから
構成される。この4ビートのバーストサイクルは効率的
であり、キャッシュが最少数のクロックサイクルの間バ
スを制御することを要求し、かつキャッシュラインが連
続的なアクセスで満たされるようにし、もし他の装置が
キャッシュラインのワードをキャッシュがアクセスする
間に該メモリロケーションをアクセスすれば生じ得るコ
ヒーレンシーの問題を低減または除去することができ
る。
【0005】
【発明が解決しようとする課題】しかしながら、時間が
経つにつれて、集積回路の密度は増大し、複雑さを増し
てきている。この集積度の増大に対処しかつより一層柔
軟性あるバースト動作のモードを持つ必要がある。
【0006】
【課題を解決するための手段】これらの問題は本発明に
よって達成され、その特徴および利点は添付の図面とと
もに以下の詳細な説明を参照することによりさらに明瞭
に理解されるであろう。
【0007】本発明によれば、制御されたバーストメモ
リアクセスを備えたデータプロセッサ(21)が提供さ
れ、該データプロセッサは、第1の所定の幅を有する内
部データバス(31)、前記内部データバス(31)に
結合され命令を実行しかつメモリにアクセスするための
前記第1の所定の幅のデータ経路を有し、かつメモリア
クセス要求信号を提供して対応する第1の所定の数のア
クセスにおける第1の所定の数のデータエレメントのア
クセスを要求する制御出力端子を有する中央処理ユニッ
ト(30)、前記中央処理ユニット(30)に結合さ
れ、外部データバス(22)に結合された外部メモリ
(24)が第1の所定の幅を有するかあるいは第2の所
定の幅を有するかを指示するポートサイズ信号を提供す
るチップ選択回路(32)、そして前記内部データバス
(31)に結合された第1のポート、前記外部データバ
ス(22)に結合された第2のポート、および前記メモ
リアクセス要求信号および前記ポートサイズ信号を受け
るための制御入力端子を有する外部バスインタフェース
回路(33)、を具備し、前記外部バスインタフェース
回路(33)は前記メモリアクセス要求信号に応答して
おのおの前記第1の所定の幅を有する前記第1の所定の
数のデータエレメントを前記内部データバス(31)に
提供し、前記外部バスインタフェース回路(33)はさ
らに前記ポートサイズ信号に応答して、前記ポートサイ
ズ信号が前記外部メモリ(24)が前記第1の所定の幅
を有すれば前記外部メモリ(24)への前記第1の所定
の数のアクセスを行うか、あるいは前記ポートサイズ信
号が前記外部メモリ(24)が前記第2の所定の幅を有
する場合には前記外部メモリ(24)への第2の所定の
数のアクセスを行うことを特徴とする。
【0008】
【発明の実施の形態】本発明に係わるデータプロセッサ
は外部メモリ装置による2つのタイプのバーストアクセ
ス、固定バーストおよぴ可変バーストの双方、を行うた
めの柔軟性を提供する。この柔軟性は外部バスインタフ
ェース回路がモジュール方式で設計できかつ単一のタイ
プのバスマスタ装置(固定または可変バーストのいずれ
か)を備えた集積回路データプロセッサ、ならびに両方
のタイプのバスマスタ装置を備えた集積回路データプロ
セッサの双方において使用できるようにする。前記デー
タプロセッサはまた外部メモリがデータプロセッサの内
部バスと異なるデータバスサイズを有する場合に外部メ
モリへのバーストアクセスを達成する能力を含む。ま
た、前記データプロセッサは改善されたアドレスラッピ
ング(address wrapping)メカニズム
を有する。これらの利点は以下の図1に示される、特定
の実施例を参照することによってさらに明らかになるで
あろう。
【0009】図1は、本発明に係わる制御されたバース
トメモリアクセスを備えたデータプロセッサ21をブロ
ック図形式で示す。データプロセッサ21はデータ処理
システム20に関連して示されており、該データ処理シ
ステム20はまたデータバス22、アドレスバス23、
第1の16ビットメモリ装置24、第2の32ビットメ
モリ装置25、および制御バス26を含んでいる。デー
タプロセッサ21、メモリ24、およびメモリ25のお
のおのは「クロック(CLOCK)」と名付けられた入
力クロック信号に関して同期している。データプロセッ
サ21は32ビットの双方向データパス(data p
ath)を有し、該双方向データパスは2つのセクショ
ン、すなわち“D0−D15”と名付けられた信号を導
く第1のセクション、および“D16−D31”と名付
けられた信号を導く第2のセクションに分解される。ア
ドレスバス23は32ビットのアドレスバスを形成し、
32ビットの内A0〜A29はアドレスバス23によっ
て導かれる。“BE0−BE2”と名付けられたバイト
イネーブル信号による付加的なシグナリングは32ビッ
トのバイトアドレスを形成するが、これらのバイトイネ
ーブル信号は図1においては制御バス26の一部として
示されている。
【0010】メモリ24および25のおのおのはアドレ
スバス23に接続された入力およびデータバス22への
双方向接続を有する。しかしながら、16ビットのメモ
リ24は32ビットのデータバス22の下位16ビット
にのみ接続されている。メモリ25はアドレスバス23
に接続された入力を有しかつデータバス22のおのおの
の16ビットのセクションへの双方向接続を有する。制
御バス26は10の制御信号を導き、これらはデータ処
理システム20の動作のために必要なものである。さら
に、制御バス26の制御信号のいくつかは特にデータ処
理システム20の第1のモードの動作に関連している。
制御バス26によって導かれる信号はさらに以下の表1
に示されている。なお、ここで記号*は信号の否定また
は反転を表わし、図面中で使用されているオーバーバー
(上線)に対応する。
【表1】 信号名 信号の説明 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− *BEO−*BE2 外部バイトイネーブル信号 *TS 転送開始。外部バスインタフェース回路33はバスアク セスの始めに1クロック(CLOCK)サイクルの間こ の信号をアクティベイトする。 *BURST バーストサイクル。 *FIX 固定バーストアクセス。この信号は固定された4ビート バーストアクセスを示すためにアクティブになる。 *AACK アドレス(ADDRESS)アクノレッジ。この信号は バスサイクルのアドレスフェーズを終了させ、外部バス インタフェース回路33がパイプライン可能な装置への 他のアクセスを開始できるようにする。 *TA 転送アクノレッジ。この信号はバスサイクルのデータフ ェーズ、またはバーストアクセスの間のおのおののビー トの正常な完了を示す。 *BDIP バーストデータ進行中。この信号はデータビートが固定 バーストアクセスに起こっていることを示す。 *LAST バーストの最後のビート。この信号は最後のデータビー トがバスサイクルの間に転送されるときに前記クロック のローからハイへの遷移時にアクティブとなる。 *BI バースト禁止。この入力信号はアドレスされた装置がバ ースト能力をもたないことを示す。 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
【0011】データプロセッサ21は概略的に中央処理
ユニット(CPU)コア30、1組の内部バス31、チ
ップ選択回路32、外部バスインタフェース回路33、
およびダイレクトメモリアクセス(DMA)コントロー
ラ34を含む。CPUコア30は複雑命令セットコンピ
ュータ(CISC)、少数命令セットコンピュータ(R
ISC)、デジタル信号プロセッサ(DSP)、あるい
は同様のアーキテクチャのような任意のタイプのデータ
プロセッサのアーキテクチャを使用して構成できる。図
示された実施例では、CPUコア30は別個の命令およ
びデータパスを備えたハーバード(Harvard)ア
ーキテクチャを有するRISCデータプロセッサであ
る。従って、内部バス31は命令バスおよびデータバス
の双方を含む。
【0012】CPUコア30はまたCPUコア30の動
作のための高速ローカルメモリとして機能するキャッシ
ュ35を含む。技術的によく知られているように、キャ
ッシュ35は遭遇する可能性があるしばしば使用される
命令を格納し、それによってデータプロセッサ21の性
能を向上させる。命令のメモリロケーションへのアクセ
スを検出すると、キャッシュ35は外部メモリ、すなわ
ちCPUコア30の外部のメモリ、にアクセスして対応
するメモリロケーションおよび与えられた数の隣接メモ
リロケーションをフェッチする。次に、もしCPUコア
30がキャッシュ35にメモリからデータをロードさせ
た命令に隣接する命令にアクセスすれば、その場合はキ
ャッシュ35はこれらのメモリロケーションの内容をも
含んでいることになる。しかしながら、もしCPUコア
30が命令メモリにアクセスしかつキャッシュ35がそ
のメモリロケーションの内容を記憶していない場合は、
キャッシュ35は外部メモリからデータをフェッチする
必要がある。キャッシュ35はこれをいくつかの隣接メ
モリロケーションにアクセスする必要性を意味する「キ
ャッシュ充填要求(CACHE FILL REQUE
ST)」と名付けられた信号をアクティベイトすること
によって達成する。外部バスが利用可能なときに、キャ
ッシュ35はキャッシュに格納するために要求されたラ
インをフェッチするために内部バス31を通して外部バ
スへのバスサイクル(この場合読出しサイクル)を行
う。従って、キャッシュ35はバスマスタ装置として機
能し、すなわちバスサイクルを開始しかつ制御すること
ができる装置として機能する。
【0013】チップ選択回路32はCPUコア30に対
し周辺の回路でありデータプロセッサ21の集積度を増
大し、それによって基板スペースを節約する。プログラ
ミングの後、チップ選択回路32は一般に出力イネーブ
ル(OE)、書込みイネーブル(WE)、およびチップ
イネーブル(CE)として知られた信号をアクティベイ
トし、これらは商業的に入手可能なメモリ集積回路の入
力に直接供給できる。このシグナリングを達成するた
め、チップ選択回路32は特定のインタフェース特性を
備えたメモリ領域を規定するためにプログラミングする
ことができる。チップ選択回路32は入力アドレスおよ
び1組の保護属性(protectionattrib
utes)を受けかついくつかの領域の内の1つにおけ
る整合のためにあらかじめプログラムされた値をチェッ
クする。もしチップ選択回路32が整合を検出すれば、
その領域に所在するメモリチップに接続されたプログラ
ムされたチップ選択信号をアクティベイトする。さら
に、チップ選択回路32は外部バスアクセスのアドレス
およびデータフェーズを終了させるためにアクノレッジ
信号を戻す能力を有する。この目的のため、チップ選択
回路32はアドレスアクノレッジ信号AACKを提供し
てアクセスのアドレスフェーズの終了を通知するようプ
ログラムすることができる。チップ選択回路32はまた
転送アクノレッジ信号TAを戻してバスサイクルのデー
タフェーズの終了を指示する。
【0014】チップ選択回路32はさらに単一の信号ま
たは複数の信号とすることができる「ポートサイズ(P
ORT SIZE)」と名付けられた信号によって前記
領域内のメモリ集積回路へのデータインタフェースのサ
イズに関する情報を格納する。例えば、チップ選択回路
32は16ビットのメモリ24へのアクセスを16ビッ
トのアクセスとして認識するようプログラムされかつ前
記ポートサイズ信号を適切な論理状態で提供してこれを
外部バスインタフェース回路33に指示することができ
る。同様に、チップ選択回路32は32ビットメモリ2
5へのアクセスを検出しかつ前記ポートサイズ信号を戻
して32ビットのアクセスを指示する。後に明らかにな
るように、外部メモリのポートサイズ特性に関連する情
報の格納はバーストアクセスの間の外部バスインタフェ
ース回路33の動作において重要なものである。
【0015】外部バスインタフェース回路33は内部バ
ス31に接続された第1のポート、外部データバス22
に接続された第2のポート、外部アドレスバス23、お
よび外部制御バス26を有する。さらに、外部バスイン
タフェース回路33は少なくとも2つのバスマスタ装置
からバースト要求信号を受けるための少なくとも2つの
入力を有する。図1において、外部バスインタフェース
回路33は第1のバースト要求入力(キャッシュ充填要
求:CACHE FILL REQUEST)をCPU
コア30のキャッシュ35から受ける。外部バスインタ
フェース回路33はまた「DMA要求(DMA REQ
UEST)」と名付けられた第2のバースト要求入力信
号をDMAコントローラ34から受ける。外部バスイン
タフェース回路33はまたアドレスおよび属性情報をチ
ップ選択回路32に提供し、かつチップ選択回路32に
おいて規定されるインタフェースに関連するいくつかの
信号をチップ選択回路32から受ける。これらの信号は
AACK,TAおよびポートサイズ(PORT SIZ
E)を含む。
【0016】データプロセッサ21はまた内部バス31
への双方向接続および信号DMA要求を提供するための
出力を有するDMAコントローラを含む。DMAコント
ローラ34は他のバスマスタ装置の例であり、この例で
は、可変バーストアクセスを開始できるものである。他
の実施例では、データプロセッサ21はCPUコア30
のような単一のバスマスタ装置のみ、あるいは2つまた
はそれ以上のバスマスタ装置を含むものとすることがで
きる。
【0017】外部バスインタフェース回路33はモジュ
ール方式であり、それはその外部バスインタフェース回
路33が固定バーストアクセスを要求する第1のタイプ
のバスマスタ装置および可変バーストアクセスを要求す
る第2のタイプのバスマスタの双方に応答する入力をも
つからである。例えば、キャッシュ35が前記キャッシ
ュ充填要求信号をアクティベイトしたときは、それはあ
るあらかじめ規定された数のデータエレメントがキャッ
シュラインを満たすために外部バス22上にフェッチさ
れることを要求する。キャッシュラインのサイズは任意
の特定のキャッシュに固定される。これに対し、DMA
コントローラ34は事前に知られていない可変サイズの
データを外部データバス22から要求する。DMAコン
トローラ34がバーストの長さを外部バスインタフェー
ス回路33に通知するために使用できるいくつかの可能
な方法がある。1つの方法はDMAコントローラ34が
バーストの寸法を表す一群の信号を外部バスインタフェ
ース回路33に提供することである。次に外部バスイン
タフェース回路33はこの値をカウンタにロードしかつ
前記カウンタがゼロまでカウントするまで続くバースト
を行う。可変バースト要求の開始および終了を知らせる
別の方法は“BDIP”(図1には示されていない)
で表される信号による方法である。信号BDIPはバ
ーストアクセスのデータフェーズの開始時にアクティブ
となりかつ該バーストアクセスの最後のバーストビート
においてインアクティブとなる。前記“BDIP”信
号はバーストの長さを決定する情報を前記マルチビット
バーストサイズの信号に対して単一の信号として伝達す
るから、BDIPの技術によるシグナリングは好まし
いものである。
【0018】図2および図3は図1におけるデータプロ
セッサ21の動作を理解する上で有用なタイミング図を
示す。特に、図2は固定バーストアクセスのタイミング
図を示す。データプロセッサ21の関係では、この固定
バーストアクセスはキャッシュ35が前記キャッシュ充
填要求信号をアクティベイトすることによって開始され
るバーストを表す。データ処理システム20において、
信号は前記クロック信号のローからハイへの遷移でタイ
ミングが合せられる。図2において、バーストアクセス
の間のクロック信号のローからハイへの引続く遷移はそ
れぞれ“t1”,“t2”,“t3”,“t4”,“t
5”,および“t6”で示されている。t1よりあるセ
ットアップ時間前に、外部バスインタフェース回路33
は“A1”と名付けられたアドレスをアクティベイト
し、かつアクセスの開始を信号TSをアクティベイトす
ることによって通知する。外部バスインタフェース回路
33はこのアクセスが信号BURSTおよび信号FIX
の双方を、t1のあるセットアップ時間前に、アクティ
ベイトすることによってこのアクセスが固定バーストア
クセスであるべきことを通知する。図2のタイミング図
で示された実施例では、アクセスされたメモリ装置、ま
たはチップ選択回路32、が信号AACKをアクティベ
イトすることによってアドレスをt1のあるセットアッ
プ時間前にアクノレッジする。さらに、この図示された
実施例では、メモリはチップ選択回路32が信号TAを
t2においてインアクティブに保つために外部メモリ装
置によってt2において挿入される1つの待機状態を必
要とする。外部バスインタフェース回路33は信号BD
IPをt3のあるセットアップ時間前にアクティベイト
し、データフェーズおよび第1のデータエレメントの転
送の開始を通知する。この最初のデータエレメントはt
3のあるセットアップ時間前に転送されかつ図2では
“D1”として示されている。図2のデータ(DAT
A)信号は外部バスインタフェース回路33によってデ
ータバス22に提供されるデータ、またはデータバス2
2から外部バスインタフェース回路33によって受信さ
れるデータを表し、すなわち、それぞれ書込みサイクル
または読出しサイクルを表す。
【0019】信号BURSTおよびFIXのアクティベ
イションに応じて、アクセスされたメモリ装置は固定バ
ーストアクセスを認識する。このメモリ装置はアドレス
A1において読出しかつバーストを完了するために所定
の固定された数のアクセスにわたり内部カウンタを増分
する。図2に示された実施例では、固定された4ビート
のバーストがアクセスされた装置の引続くクロック遷移
t3,t4,t5およびt6におけるそれぞれデータエ
レメントD1,D2,D3およびD4の読出しまたは書
込みによって認識される。データプロセッサ21はまた
2つの認識されるバーストプロトコルの内のいずれか1
つをサポートすることによって柔軟性ある(flexi
ble)バーストプロトコルをサポートする。モトロー
ラ・プロトコルとして知られた第1のプロトコルにおい
ては、外部バスインタフェース回路33は信号BDIP
をアクティベイトしてバーストの引続くビートの転送を
通知する。バーストの終了は信号BDIPがインアクテ
ィブになることによって示される。この信号はバースト
サイクルが継続しており従って他のタイプのアクセスに
対してはバーストサイクルが早期に終了できることを示
すために重要である。
【0020】しかしながら、さらに信号BDIPを導く
集積回路ピンは他の知られたバーストシグナリングのプ
ロトコルを使用して信号「ラスト(LAST)」を導く
ようプログラムできる。この他の知られたバーストシグ
ナリングプロトコルにおいては、バーストのビートは信
号LASTがバーストの最後のビートにおいてアクティ
ベイトされるまで続く。図2に示されるように、信号L
ASTはバーストの最後のビートを示すためにt6のあ
るセットアップ時間前にアクティベイトされる。
【0021】図3は、可変バーストアクセスのタイミン
グ図を示す。図2の場合と同様に、クロックの引続くロ
ーからハイへの遷移はそれぞれt1〜t6で示されてい
る。また図2と同様に、外部バスインタフェース回路3
3は信号TSおよび信号BURSTをt1の前のセット
アップ時間にアクティベイトする。しかしながら、図2
に示されたタイミングと異なり、外部バスインタフェー
ス回路33は信号FIXをインアクティブに保ちバース
トが可変長バーストであることを示す。図2と同様に図
3において示されているように、アクセスされるメモリ
装置またはチップ選択回路32はアドレスフェーズを信
号AACKのアクティベイションによりt1の前のセッ
トアップ時間にアクノレッジする。また図2と同様に、
待機状態をデータフェーズ中に挿入するため信号TAは
t2においてインアクティブに留っている。時間t3に
おいて、データエレメントD1は転送されかつ信号BD
IPはアクティブであり、これはバーストの引続くビー
トが次のクロックサイクルにおいて生じることを示す。
これはt4におけるデータエレメントD2の転送によっ
て生じる。しかしながら、t4においてはまた、信号B
DIPはインアクティブとなって前記転送されたデータ
エレメントD2はバーストの最後のビートであることを
通知する。外部バスインタフェース回路33はパイプラ
イン化されたアクセスをサポートするから、“A2”で
示される引続くパイプライン化されたアドレスはt2の
あるセットアップ時間前に有効でありかつ第2のアクセ
スのパイプライン化は外部バスインタフェース回路33
が、t2のあるセットアップ時間前に、信号TSおよび
BURSTをアクティベイトすることによって示され
る。しかしながら、t4における第1のアクセスの最後
のデータフェーズに続いてのみ、アクセスされるメモリ
装置またはチップ選択回路32はt5において信号AA
CKをアクティベイトする。前と同様に、アクセスされ
るメモリ装置またはチップ選択回路32はt6において
信号TAをインアクティブに保つことによりデータフェ
ーズに対し待機状態を挿入する。しかしながら、外部バ
スインタフェース回路33はt6において信号BDIP
をアクティベイトし第2の引続くバーストアクセスのデ
ータの最初のビートを通知する。
【0022】図4は、図1のチップ選択回路32の詳細
なブロック図を示す。チップ選択回路32はモジュール
化されており異なるアプリケーションに対する再構築が
可能である。チップ選択回路32は信号の相互接続のた
めに概略的に2つのバスを含んでおり「デコードバス
(DECODE BUS)」81と名付けられた第1の
バス、および「タイミングバス(TIMING BU
S)」82と名付けられた第2のバスを含む。チップ選
択回路32はまたアドレスデコード段90、タイミング
制御段100、およびピン構成段(pin confi
gurationstage)110を含む。チップ選
択回路32はモジュール化されておりかつアドレスデコ
ード段90に第1の任意の数のアドレスデコーダを、タ
イミング制御段100に第2の任意の数の制御ユニット
を、かつピン構成段110に第3の任意の数のピン構成
論理回路を含めることによって再構築可能である。
【0023】図4に示されるように、アドレスデコード
段90は代表的なアドレスデコーダ91,94および9
7を含む。アドレスデコーダ91はベースアドレスレジ
スタ92およびオプションのレジスタ93を含む。ベー
スアドレスレジスタ92はアドレスデコーダ91に関連
するプログラム可能な領域に対するベースアドレスを規
定する。オプションのレジスタ93はアドレスデコーダ
91に関連する領域のサイズおよびこの領域の属性に関
連する他のプログラム可能なフィールドを含む。アドレ
スデコーダ91は外部バスインタフェース回路33を通
して内部バス31によって導かれるアドレスを受取り、
かつこのアドレスが前記オプションのレジスタ93のサ
イズフィールドにおけるベースアドレスレジスタ92に
よって規定される領域内にあるか否かを見るため比較を
行う。アドレスの整合に応じて、アドレスデコーダ91
は制御信号をデコードバス81に提供する。同様に、ア
ドレスデコーダ94および97もまた前記アドレスがそ
れらの対応するプログラム可能な領域内にあるか否かを
検出し、かつそれに応じてデコードバス81に制御信号
を提供する。アドレスデコード段90におけるアドレス
デコーダの数は異なるシステムの必要に対処するために
任意のものとすることができ、かつ柔軟性とチップサイ
ズとの間にトレードオフがある。例えば、いくつかの用
途においては、より柔軟性あるソフトウエアまたはシス
テムアーキテクチャに対処するために利用可能なプログ
ラム可能領域の数を増大することが有用である。他の用
途では、アドレスデコーダの数は集積回路のコストを最
小にするために低減することができる。
【0024】前記サイズフィールドに加えて、前記オプ
ションのレジスタに注目すべき3つの他のフィールドが
ある。ACK_ENフィールドはアドレスがチップ選択
回路32においてプログラムされた領域内にある場合に
チップ選択回路32が前記AACKおよびTA信号を戻
すか否かを決定する。もしACK_ENフィールドが2
進“1”にセットされていれば、チップ選択回路32は
その領域に対する転送アクノレッジTAおよびアドレス
アクノレッジAACKフィールドを戻す。転送アクノレ
ッジ遅延(TA_DLY)フィールドとして知られたさ
らにほかのフィールドはチップ選択回路32に前記TA
信号を外部バスインタフェース回路33に戻す前に待機
状態を挿入させる。インタフェースタイプ(ITYP
E)フィールドはまた、後にさらに説明するように、チ
ップ選択回路32がTAを戻すときに影響を与える。
【0025】特に注目されるオプションレジスタ93の
第2のフィールドはポートサイズ(PS)フィールドと
して知られたフィールドである。PSフィールドはアク
セスされた領域内のメモリ装置のデータバスサイズを示
す符号化されたフィールドである。ポートサイズフィー
ルドの符号化は以下の表2に示されている。
【表2】 PS(2進) ポートサイズ −−−−−−−−−−−−−−−−−−−−−−−−−− 00 リザーブ 01 16ビットポート 10 32ビットポート 11 リザーブ −−−−−−−−−−−−−−−−−−−−−−−−−−
【0026】他の実施例ではより小さなまたはより大き
なポートサイズを符号化することができ、かつ外部バス
インタフェース回路33がそれに従ってバーストアクセ
スを制御する。
【0027】前記ITYPEフィールドは異なるインタ
フェースタイプを規定し、これらはバースト可能(bu
rstable)および非バースト可能(non−bu
rstable)インタフェースの双方を含む。ITY
PEフィールドの符号化は以下の表3に示されている。
【表3】 ITYPEフィールド (2進) 装置インタフェースのアクセスタイプ −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− 0000 1クロック周期より小さいかまたは等しい出力バッ ファターンオフ時間を備えた包括的な非同期領域。 このインタフェースタイプを備えた装置はパイプラ イン化可能(pipelineable)ではない 。 0001 2クロック周期の出力バッファターンオフ時間を備 えた包括的非同期領域。このインタフェースタイプ を備えた装置はパイプライン化可能ではない。 0010 非同期*OEを備えた同期領域。このインタフェー スタイプを備えた装置はパイプライン化可能であり 、非同期装置として機能することができ、かつ*O Eがアクティベイトされるまでその内部データを読 出しアクセスに際しホールドオフする能力を有する 。 0011 早期(early)同期*OEを備えた同期領域。 このインタフェースタイプを備えた装置はパイプラ イン化可能であり、非同期装置として機能すること ができ、かつ*OEがアクティベイトされるまで読 出しアクセスによってその内部データをホールドオ フする能力を有する。このインタフェースタイプに よってアクセスされる装置は少なくとも1つの待機 状態を持たなければならず、かつもしTA_DLY がゼロ待機状態を示せば、チップ選択回路32が* OEをあたかも前記領域が1つの待機状態を持つよ うに*OEを発生する。 0100 リサーブ。もし誤ってプログラムされれば、対応す るピンはインアクティブに留まる。 0101 固定バーストアクセス能力のみを備えたバースト可 能領域。このインタフェースは*OEを有し、パイ プライン化可能であり、かつ*OEがアクティベイ トされるまでその内部データをホールドオフするこ とができる。このインタフェースは非同期インタフ ェースとして機能することができるが、インタフェ ースによって要求される待機状態の数および*OE のアクティベイションの後にのみデータを提供する 。このモードでは、インタフェースは*BDIP信 号がそれが次のデータを送出すべきことを示すまで 最初のデータビートを有効なものとして保つ。この 領域に対する*OEは非同期*OEである。 0110 リザーブ。もし誤ってプログラムされれば、対応す るピンはインアクティブに留まる。 0111 固定バーストアクセスのみの能力を備えたバースト 可能領域であるが、このインタフェースは*OEを 有し、パイプライン化可能であり、かつ*OEがア クティベイトされるまでその内部データをホールド オフできる。このインタフェースは非同期インタフ ェースとして機能することができるが、インタフェ ースによって要求される数の待機状態の後にかつ* OEがアクティベイトされた後にのみデータを提供 する。このモードでは、インタフェースは前記*B DIP信号がそれが次のデータを送出すべきことを 示すまで第1のデータビートを有効に保つ。この領 域に対する*OEは同期*OEである。 1000 固定バーストアクセスのみを備えたバースト可能領 域。このインタフェースは待機状態カウンタを含み かつ*OEを持たず、従って装置はそれが要求する 数の待機状態の後にデータをドライブ出力する。こ のタイプはデータバスが利用可能になるまでその内 部データをホールドオフすることができず、従って それはさほどパイプライン化可能ではない。このイ ンタフェースは非同期インタフェースとして機能す るが、待機状態の数が満足された後にのみデータを 提供しかつ1つのクロックの間のみ最初のデータビ ートを有効に保つ。 1001 ITYPE=0011と同じであるが、領域に対す るアクセスの早期オーバラップの付加的な特徴を備 えている。このタイプのインタフェースはそれが読 出しに際して有効なデータをドライブ出力するかま たは前のアクセスに対する書込みに際してデータを 受ける1クロック期間前にそこへの他のアクセスを パイプライン化できなければならない。 1010−1111 リザーブ。もし誤ってプログラムされれば、対応す るピンがインアクティブに留まる。 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
【0028】8つの可能なインタフェースタイプの内、
ITYPE5,7および8がバースト可能領域を規定す
る。
【0029】タイミング制御段100は第2の任意の数
の制御ユニットを含む。タイミング制御段100におい
ては、2つの制御ユニット101および102が示され
ている。タイミング制御段100は外部バスにチップ選
択信号を提供するためのアクセス状態マシンとして機能
し、かつ制御ユニット101および102のおのおのは
デコードバス81に接続されて進行中のバスサイクルが
1つまたはそれ以上のプログラム可能な領域の属性と整
合するか否かを指示するためにデコードされた信号を受
ける入力を有する。これに応じて、タイミング制御段1
00の制御ユニットの選択された1つが順次的なタイミ
ング情報をタイミングバス82に提供して与えられたプ
ログラムされたインタフェースタイプのための適切なタ
イミングを反映する。タイミング制御段100のために
選択された制御ユニットの数は進行している係属中の
(pending)オーバラップするメモリアクセスの
数を決定する。この係属中のメモリアクセスの数はパイ
プラインの深さ(pipeline depth)とし
ても知られている。
【0030】例えば、アドレスデコード段90のアドレ
スデコーダ91はその対応するプログラム可能な領域へ
のアクセスを認識しかつそれに応じて制御信号をデコー
ドバス81に提供する。タイミング制御段100におい
ては、制御ユニット101のような制御ユニットがこの
バスサイクルと関連するようになりかつこのアクセスの
係属の間にこのアクセスに対しタイミング信号をタイミ
ングバス82に提供する。第2のアクセスは第1のアク
セスの間に行うことができかつアドレスデコード段90
におけるアドレスデコーダがその対応するプログラム可
能な領域かつそのオプションレジスタにおいてプログラ
ムされたものに整合する属性を有するものへのアクセス
を認識しかつ制御信号をデコードバス81に提供する。
制御ユニット102のような第2の制御ユニットが次に
タイミングバス82に対しタイミング信号を提供し始め
ることができインタフェースタイプによって決定される
このアクセスに対する1つまたはそれ以上のチップ選択
制御信号をオーバラップさせることができる。
【0031】ピン構成段110は第3の任意の数のピン
構成論理回路を含む。おのおののピン構成論理回路は1
つの集積回路ピンに対応しかつ専用のものとされる。し
かしながら、集積回路ピンはこのチップ選択信号と他の
信号とで共有されかつその機能をプログラム可能にセッ
トできるようにすることもできる。
【0032】この第3の任意の数は柔軟性およびシステ
ムのコストの間でより良好なトレードオフを可能にする
ために用途に応じて変えることができる。例えば、コス
トが最も重要な要素でないいくつかのアプリケーション
においては、より大きな数のピン構成論理回路を含めて
より大きな柔軟性およびより大きな数のメモリ装置に対
するチップ選択信号を提供する能力を与えることができ
る。コストがより大きな関心事である他のアプリケーシ
ョンでは、より少ない数のピン構成論理回路を使用でき
る。
【0033】ピン構成段110においては、代表的なピ
ン構成論理回路111,112および113が示され
“PIN0”,“PIN1”および“PIN2”と名付
けられた出力信号をそれぞれ提供している。おのおのの
ピン構成論理回路は制御信号を受けるためのデコードバ
ス81に接続された1つの入力およびタイミング情報を
受けるためにタイミングバス82に接続された第2の入
力を有する。おのおののピン構成論理回路はすべての可
能なタイミング情報を受信するから、おのおののピン構
成論理回路は一群のチップ選択機能の内の任意のものと
なるよう構成できる。例えば、ピン構成論理回路111
はどのようにピン構成論理回路111がプログラムされ
るかに応じて、CE,WEまたはOE信号の内の任意の
1つとするよう構成できる。従って、アドレスデコード
段90に第1の任意の数のアドレスデコーダ、第2の任
意の数の制御ユニットをタイミング制御段100に、そ
して第3の任意の数のピン構成論理回路をピン構成段1
10に含めることによって、チップ選択回路32は任意
の数のメモリ領域、任意のアクセスパイプライン深さ、
および任意の数のチップ選択信号を定義することによっ
て最大の柔軟性を提供できる。これらの任意の数は得ら
れるトレードオフを最大にするために実施例によって変
えることができる。
【0034】図5は、図1の外部バスインタフェース回
路33の詳細なブロック図を示す。外部バスインタフェ
ース回路33は概略的に第1のバスインタフェースユニ
ット120、第2のバスインタフェースユニット12
1、アドレスマルチプレクサ(MUX)122、データ
MUX123、およびバス制御状態マシン124を含
む。前に述べたように、内部バス31は別個の命令およ
びデータバスを含むハーバードバスである。バスインタ
フェースユニット120は内部バス31のデータ部分に
接続されている。このデータ部分は「Lバス(L−BU
S)」として知られている。バスインタフェースユニッ
ト120はLバスの命令およびデータ部分をバス制御状
態マシン124の制御の下に「Lアドレス(L−ADD
RESS)」および「Lデータ(L−DATA)」と名
付けられた部分に分離する。また、バスインタフェース
ユニット121は内部バス31の命令部分に接続されか
つ該命令部分をこれもまたバス制御状態マシン124の
制御の下に「Iアドレス(I−ADDRESS)」と名
付けられたアドレス部分および「Iデータ(I−DAT
A)」と名付けられたデータ部分に分離する。従って、
外部バスインタフェース回路33は外部バスに対し単一
のアクセスのみを提供するためにLバスおよびIバスの
アクセスの間で調停しなければならない。
【0035】アドレスMUX122はLアドレスを受け
るためにバスインタフェースユニット120に接続され
た第1の入力、Iアドレスを受けるためにバスインタフ
ェースユニット121に接続された第2の入力、および
「アドレス(ADDRESS)」をアドレスバス23お
よびチップ選択回路32に対しバス制御状態マシン12
4の制御の下に提供するための出力を有する。データM
UX123はLデータを受けるためのバスインタフェー
スユニット120に接続された第1の入力、下位データ
を受けるためのバスインタフェースユニット121に接
続された第2の入力、およびデータバス22への双方向
接続を含む。データMUX123はバス制御状態マシン
124の制御の下にデータバス22に対するおよびデー
タバス22からのデータの転送を制御するよう動作す
る。
【0036】バス制御状態マシン124は上に述べたか
つ特に図2および図3に関して説明したインタフェース
を実施するよう設計された伝統的な状態マシンである。
バス制御状態マシン124は「クロック(CLOC
K)」信号と同期して動作する。バス制御状態マシン1
24は2ビットの「デコードされたポートサイズ(DE
CODED PORT SIZE)」、8ビットのデコ
ードされたI−ITYPE、ACK_EN信号、AAC
K信号、およびTA信号を含むいくつかの入力信号をチ
ップ選択回路から受ける。前に述べたように、チップ選
択回路32または外部メモリ装置からのAACKおよび
TA信号はACK_EN信号の状態に応じて使用され
る。さらに、バス制御状態マシン124はCPUコア3
0からかつ特にそのキャッシュ35から「キャッシュ充
填要求(CACHE FULL REQUEST)」信
号を含めて制御信号を受取る。バス制御状態マシン12
4はまたDMAコントローラ34からDMA要求信号お
よびBDIP信号を含む制御信号を受取る。バス制御
状態マシン124はまたいくつかのアプリケーションで
は実施されないかもしれない制御バス26からAACK
およびTA信号を受取るための入力を有する。バス制御
状態マシン124はまたTS,BURST,FIXおよ
びBDIP/LAST信号を提供するための出力を有す
る。バス制御状態マシン124は伝統的な直列的論理状
態マシンであり、図2および図3のタイミング図におい
て前に示したようにTS,BURST,FIXおよびB
DIP/LAST信号を提供する。
【0037】もしアクセスされたメモリ装置がバースト
禁止されていれば、外部バスインタフェース回路33は
内部固定バーストアクセスを外部バス上の単一のアクセ
スへと分解する。しかしながら、もしアクセスされた装
置がバースト可能(burstable)であれば(I
TYPE5,7または8)、外部バスインタフェース回
路33は該アクセスをポートサイズおよびバーストのス
タートアドレスに応じて異なるように行う。バースト制
御状態マシン124は小さなポートの装置に対し固定さ
れた4ビートのバーストサイクルを実施しかつ異なる
「アドレス」のアライメントに対しラッピングを制御す
るメカニズムを有する。この意味で、「アドレス(AD
DRESS)」はもしそれがダブルワード境界に遭遇す
れば「ダブルワード」アラインされているものと考えら
れる。ダブルワード境界は前記4つの下位「アドレス」
ビットが2進0000または1000である場合に生じ
る。ダブルワード整列されていない「アドレス」はもし
それがワード境界に遭遇するがダブルワード境界ではな
い場合に「ワード」整列されていると考えられる。ワー
ド整列された(word−aligned)「アドレ
ス」は前記4つの下位「アドレス」ビットが2進010
0または1100である場合に生じる。
【0038】外部バスインタフェース回路33はポート
サイズおよび前記「アドレス」がダブルワード整列され
ているかあるいは単にワード整列されているかに応じて
一連のビートを行う。外部の32ビット装置へのバース
トアクセスは、以下の表4に示されるように、直接的な
ものである。
【表4】 ビート アライメント(4つの下位「アドレス」ビット) −−−−−−−−−−−−−−−−−−−−−−−−−−−−− 第1 0000 0100 1000 1100 第2 0100 1000 1100 0000 第3 1000 1100 0000 0100 第4 1100 0000 0100 1000 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−
【0039】この場合、外部バスインタフェース回路3
3はバーストの最初のビートに対する「アドレス」を提
供し、かつ引続くアドレスは32ビットのメモリ25の
内部アドレスカウンタによって与えられる。
【0040】外部バスインタフェース回路33は、以下
の表5に示されるように、もしスタートアドレスがダブ
ルワード整列されたものであれば、小さなポート(16
ビット)装置への2つの4ビートバーストアクセスとし
てキャッシュライン充填のような固定アクセスを行う。
【表5】 バースト/ビート アライメント(4つの下位「アドレス」ビット) −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− 第1/第1 0000 1000 第1/第2 0010 1010 第1/第3 0100 1100 第1/第4 0110 1110 第2/第1 1000 0000 第2/第2 1010 0010 第2/第3 1100 0100 第2/第4 1110 0110 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
【0041】この場合、外部バスインタフェース回路3
3はおのおののバーストの最初のビートにおいて新しい
「アドレス」を提供する。引続くアドレスは小さなポー
ト装置(メモリ24のような)の内部アドレスカウンタ
によって提供される。
【0042】しかしながら、もし前記小さなポート装置
への固定バーストアクセスのスタートアドレスがダブル
ワード整列されていない場合は、外部バスインタフェー
ス回路33は、以下の表6に示されるように、アクセス
を、2ビートバーストアクセス、これに続く4ビートバ
ーストアクセス、これに続く2ビートバーストアクセス
として行う。
【表6】 バースト/ビート アライメント(4つの下位「アドレス」ビット) −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− 第1/第1 0100 1100 第1/第2 0110 1110 第2/第1 1000 0000 第2/第2 1010 0010 第2/第3 1100 0100 第2/第4 1110 0110 第3/第1 0000 1000 第3/第2 0010 1010 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
【0043】おのおのの可能なアライメントおよびポー
トサイズに対し、外部バスインタフェース回路33は
「データ(DATA)」が適切なシーケンスで内部バス
31に提供されることを保証する。
【0044】本発明が好ましい実施例に関して説明され
たが、当業者には本発明は数多くの方法で変更すること
ができかつ上に特に示しかつ説明したもの以外の数多く
の実施例を取り得ることは明らかであろう。例えば、外
部バスインタフェース回路は種々のシグナリング技術に
よって可変バーストアクセスの開始および終了を認識す
ることができる。さらに、異なる固定バーストサイズも
サポートできる。従って、添付の特許請求の範囲によっ
て本発明の真の精神および範囲内に入る本発明のすべて
の変形をカバーするものと考えている。
【図面の簡単な説明】
【図1】本発明に係わる制御されたバーストメモリアク
セスを備えたデータプロセッサを示すブロック図であ
る。
【図2】図1のデータプロセッサの動作を理解する上で
有用なタイミング図である。
【図3】図1のデータプロセッサの動作を理解する上で
有用なタイミング図である。
【図4】図1のチップ選択回路を示す詳細なブロック図
である。
【図5】図1の外部バスインタフェース回路の詳細なブ
ロック図である。
【符号の説明】 20 データ処理システム 21 データプロセッサ 22 データバス 23 アドレスバス 24 第1の16ビットメモリ装置 25 第2の32ビットメモリ装置 26 制御バス 30 CPUコア 31 内部バス 32 チップ選択回路 33 外部バスインタフェース回路 34 DMAコントローラ 35 キャッシュ 81 デコードバス 82 タイミングバス 90 アドレスデコード段 100 タイミング制御段 110 ピン構成段 91,94,97 アドレスデコーダ 101,102 制御ユニット 111,112,113 ピン構成論理回路 120 Lバス用バスインタフェースユニット 121 Iバス用バスインタフェースユニット 122 アドレスマルチプレクサ 123 データマルチプレクサ 124 バス制御状態マシン
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジェイムズ・ビー・エイファート アメリカ合衆国テキサス州78733、オー スチン、バリー・ビュー・ドライブ 800 (72)発明者 ウォレス・ビー・ハーウッド・ザサード アメリカ合衆国テキサス州78733、オー スチン、クリークス・エッジ・パークウ ェイ 2806 (56)参考文献 特開 平5−128054(JP,A) 特開 平6−342400(JP,A) 特開 平1−95346(JP,A) 特開 昭63−217459(JP,A) 特開 平5−225122(JP,A) 特開 平2−287752(JP,A) 特開 平5−108538(JP,A) 特開 平5−120124(JP,A) 特開 平4−211880(JP,A) 特開 平3−59749(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 12/00 - 12/08 G06F 13/16 - 13/18 G06F 13/28 G06F 13/36 G06F 15/78

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】 制御されたバーストメモリアクセスを備
    えたデータプロセッサ(21)であって、 第1の所定の幅を有する内部データバス(31)、 前記内部データバス(31)に結合され命令を実行しか
    つメモリにアクセスするための前記第1の所定の幅のデ
    ータ経路を有し、かつメモリアクセス要求信号を提供し
    て対応する第1の所定の数のアクセスにおける第1の所
    定の数のデータエレメントのアクセスを要求する制御出
    力端子を有する中央処理ユニット(30)、 前記中央処理ユニット(30)に結合され、外部データ
    バス(22)に結合された外部メモリ(24)が第1の
    所定の幅を有するかあるいは第2の所定の幅を有するか
    を指示するポートサイズ信号を提供するチップ選択回路
    (32)、そして 前記内部データバス(31)に結合された第1のポー
    ト、前記外部データバス(22)に結合された第2のポ
    ート、および前記メモリアクセス要求信号および前記ポ
    ートサイズ信号を受けるための制御入力端子を有する外
    部バスインタフェース回路(33)、 を具備し、前記外部バスインタフェース回路(33)は
    前記メモリアクセス要求信号に応答しておのおの前記第
    1の所定の幅を有する前記第1の所定の数のデータエレ
    メントを前記内部データバス(31)に提供し、 前記外部バスインタフェース回路(33)はさらに前記
    ポートサイズ信号に応答して、前記ポートサイズ信号が
    前記外部メモリ(24)が前記第1の所定の幅を有すれ
    ば前記外部メモリ(24)への前記第1の所定の数のア
    クセスを行うか、あるいは前記ポートサイズ信号が前記
    外部メモリ(24)が前記第2の所定の幅を有する場合
    には前記外部メモリ(24)への第2の所定の数のアク
    セスを行ない、 前記外部バスインタフェース回路(33)は複数のバー
    ストサイクルにおいて前記第2の所定の数のアクセスを
    行ない、前記複数のバーストサイクルの数は前記中央処
    理ユニットによって提供されるスタートアドレスに依存
    する ことを特徴とする制御されたバーストメモリアクセ
    スを備えたデータプロセッサ(21)。
  2. 【請求項2】 制御されたバーストメモリアクセスを備
    えた集積回路データプロセッサ(21)であって、 内部バス(31)、 前記内部バス(31)に結合され、その制御出力端子に
    第1のバースト要求信号を提供することによって所定の
    数のデータビートを有する第1のバーストアクセスを達
    成する第1の内部バスマスタ装置(30)、 前記内部バス(31)に結合され、その出力端子に第2
    のバースト要求信号を提供することによって可変数のデ
    ータビートを有する第2のバーストアクセスを行なう第
    2の内部バスマスタ装置(34)であって、該第2の内
    部バスマスタ装置(34)は前記第2のバーストアクセ
    スの開始および終了を指示するもの、そして 前記内部バス(31)に結合された第1のポート、外部
    データバス(22)に結合された第2のポート、前記第
    1および第2のバースト要求信号を受けるための制御入
    力端子、およびフィクス(fix)信号を提供するため
    の制御出力端子を有する外部バスインタフェース回路
    (33)、 を具備し、前記外部バスインタフェース回路(33)は
    前記第1のバースト要求信号に応じて前記フィクス信号
    をアクティベイトしかつ前記所定の数のデータビートを
    前記第1の内部バスマスタ装置(30)と前記外部デー
    タバス(22)との間で転送するために少なくとも1つ
    の対応する外部バーストサイクルを行ない、 前記外部バスインタフェース回路(33)は前記第2の
    バースト要求信号に応じて前記フィクス信号をインアク
    ティブに保ちかつ前記可変数のデータビートを前記第2
    の内部バスマスタ装置(34)と前記外部データバス
    (22)との間で転送するために少なくとも1つの外部
    バーストサイクルを行なうことを特徴とする制御された
    バーストメモリアクセスを備えた集積回路データプロセ
    ッサ(21)。
  3. 【請求項3】 外部バスインタフェース回路(33)で
    あって、 第1および第2のバースト要求信号を受けるための制御
    入力端子、 内部バス(31)からバーストアドレスを受けるアドレ
    ス入力端子、 外部バス(22,23)に対しアドレスを提供するアド
    レス出力端子、 フィクス(fix)信号を提供するための制御出力端
    子、 前記内部バス(31)に結合された入力、制御入力端
    子、および前記外部バス(22,23)に結合された出
    力を有するアドレス転送エレメント(122)、 前記内部バス(31)に結合された第1の端子、制御入
    力端子、および前記外部バス(22,23)に結合され
    た第2の端子を有するデータ転送エレメント(12
    3)、そして 前記外部バスインタフェース回路(33)の前記制御入
    力端子および前記制御出力端子に結合された状態マシン
    (124)、 を具備し、前記状態マシン(124)は前記第1のバー
    スト要求信号に応じて前記フィクス信号をアクティベイ
    トしかつ前記内部バス(31)と前記外部バス(22,
    23)との間で所定の数のデータビートを転送するため
    に前記アドレス(122)およびデータ(123)転送
    エレメントを作動させることにより少なくとも1つの対
    応する外部バーストサイクルを行ない、 前記外部バスインタフェース回路(33)は前記第2の
    バースト要求信号に応じて前記フィクス信号をインアク
    ティイブに保ちかつ前記内部バス(31)と前記外部バ
    ス(22,23)との間で可変数のデータビートを転送
    するために前記アドレス(122)およびデータ(12
    3)転送エレメントを作動させることにより少なくとも
    1つの外部バーストサイクルを行ない、 それによって前記外部バスインタフェース回路(33)
    は固定バーストアクセス装置のみを備えた、可変バース
    トアクセス装置のみを備えた、或いは固定および可変バ
    ーストアクセス装置の双方を備えた集積回路データプロ
    セッサにおいて多様に使用可能であることを特徴とする
    外部バスインタフェース回路(33)。
  4. 【請求項4】 データプロセッサ(21)における制御
    されたバーストメモリアクセスを実行する方法であっ
    て、前記データプロセッサ(21)は第1の所定の幅の
    データ経路を備えたバスマスタ装置(30)を有し、前
    記データプロセッサ(21)は第2の所定の幅を有する
    外部メモリ(24)に結合可能であり、前記方法は、 外部メモリ(24)への前記バスマスタ装置(30)に
    よるバーストアクセスを検出する段階、 前記バーストアクセスのスタートアドレスを受入れかつ
    格納する段階、 前記スタートアドレスが第1の所定のアライメントを有
    することに応じて各々第1の所定の数のビートを有する
    第1および第2のバーストアクセスを行なう段階、 前記スタートアドレスが第2の所定のアライメントを有
    することに応じて第3、第4および第5のバーストアク
    セスを行なう段階であって、 前記第3、第4および第5のバーストアクセスはそれぞ
    れ第3、第4および第5の所定の数のビートを有するも
    の、そして 前記外部メモリ(24)と前記バスマスタ装置(30)
    との間で前記バーストアクセスの各ビートの間に前記第
    1の所定の幅の複数のデータエレメントを転送すること
    によってバスマスタ装置(30)により前記バーストア
    クセスに応答する段階であって、前記複数のデータエレ
    メントは前記スタートアドレスが前記第1の所定のアラ
    イメントを有する場合に前記第1および第2のバースト
    アクセスの間に転送されるか、或いは前記スタートアド
    レスが第2の所定のアライメントを有する場合に前記第
    3、第4および第5のバーストアクセスの間に転送され
    ることを特徴とするデータプロセッサ(21)における
    制御されたバーストメモリアクセスを実行する方法。
  5. 【請求項5】 データプロセッサ(21)における制御
    されたバーストメモリアクセスを実行する方法であっ
    て、 前記データプロセッサ(21)の第1の内部バスマスタ
    装置(30)によって第1の所定の数のデータエレメン
    トを要求するメモリアクセス要求を検出する段階、 第1のメモリアクセス要求信号に応じて前記第1の所定
    の数のデータエレメントを前記第1の内部バスマスタ装
    置(30)に提供するために制御信号をアクティベイト
    しかつ少なくとも1つの対応する外部固定バーストサイ
    クルを行なう段階、 前記データプロセッサ(21)の第2の内部バスマスタ
    装置(34)によって可変数のデータエレメントを要求
    するメモリアクセス要求を検出する段階、そして 第2のメモリアクセス要求信号に応じてかつ前記第2の
    メモリアクセス要求信号がアクティブである間に前記制
    御信号をインアクティブに保ちかつ前記可変数のデータ
    エレメントを前記第2の内部バスマスタ装置(34)に
    提供するために少なくとも1つの外部バーストサイクル
    を行なう段階、 を具備することを特徴とするデータプロセッサ(21)
    における制御されたバーストメモリアクセスを実行する
    方法。
JP23916895A 1994-08-31 1995-08-24 制御されたバーストメモリアクセスを備えたデータプロセッサおよびその方法 Expired - Lifetime JP3406744B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US08/298,868 1994-08-31
US08/298,868 US5617559A (en) 1994-08-31 1994-08-31 Modular chip select control circuit and method for performing pipelined memory accesses
US08/363,423 1994-08-31
US08/363,423 US5651138A (en) 1994-08-31 1994-12-21 Data processor with controlled burst memory accesses and method therefor

Publications (2)

Publication Number Publication Date
JPH0877098A JPH0877098A (ja) 1996-03-22
JP3406744B2 true JP3406744B2 (ja) 2003-05-12

Family

ID=26970913

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23916895A Expired - Lifetime JP3406744B2 (ja) 1994-08-31 1995-08-24 制御されたバーストメモリアクセスを備えたデータプロセッサおよびその方法

Country Status (5)

Country Link
US (1) US5651138A (ja)
EP (1) EP0700003B1 (ja)
JP (1) JP3406744B2 (ja)
KR (1) KR100341948B1 (ja)
DE (1) DE69523395T2 (ja)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4341043B2 (ja) * 1995-03-06 2009-10-07 真彦 久野 I/o拡張装置,外部記憶装置,この外部記憶装置へのアクセス方法及び装置
JPH0922394A (ja) * 1995-07-05 1997-01-21 Rohm Co Ltd 制御装置
US5706471A (en) * 1995-12-28 1998-01-06 Intel Corporation I-O register lock for PCI bus
US5802541A (en) * 1996-02-28 1998-09-01 Motorola, Inc. Method and apparatus in a data processing system for using chip selects to perform a memory management function
US6006288A (en) * 1996-06-06 1999-12-21 Motorola, Inc. Method and apparatus for adaptable burst chip select in a data processing system
EP0811921B1 (en) * 1996-06-06 2003-02-05 Motorola, Inc. Method for accessing memory
US6085261A (en) * 1996-07-29 2000-07-04 Motorola, Inc. Method and apparatus for burst protocol in a data processing system
US5974480A (en) * 1996-10-18 1999-10-26 Samsung Electronics Co., Ltd. DMA controller which receives size data for each DMA channel
FR2778258A1 (fr) 1998-04-29 1999-11-05 Texas Instruments France Controleur d'acces de trafic dans une memoire, systeme de calcul comprenant ce controleur d'acces et procede de fonctionnement d'un tel controleur d'acces
FR2778255B1 (fr) * 1998-04-29 2003-12-12 Texas Instruments France Commande de memoire utilisant une information d'etat de memoire pour reduire le temps d'attente d'acces
US6327253B1 (en) 1998-04-03 2001-12-04 Avid Technology, Inc. Method and apparatus for controlling switching of connections among data processing devices
US6141691A (en) * 1998-04-03 2000-10-31 Avid Technology, Inc. Apparatus and method for controlling transfer of data between and processing of data by interconnected data processing elements
US6651134B1 (en) * 2000-02-14 2003-11-18 Cypress Semiconductor Corp. Memory device with fixed length non interruptible burst
US6751724B1 (en) 2000-04-19 2004-06-15 Motorola, Inc. Method and apparatus for instruction fetching
US6609172B1 (en) * 2000-04-20 2003-08-19 Hewlett-Packard Development Company, L.P. Breaking up a bus to determine the connection topology and dynamic addressing
US6721840B1 (en) * 2000-08-18 2004-04-13 Triscend Corporation Method and system for interfacing an integrated circuit to synchronous dynamic memory and static memory
US6754760B1 (en) 2000-08-21 2004-06-22 Xilinx, Inc. Programmable interface for a configurable system bus
US7139848B1 (en) 2000-12-08 2006-11-21 Xilinx, Inc. DMA protocol extension for packet-based transfer
US6515914B2 (en) * 2001-03-21 2003-02-04 Micron Technology, Inc. Memory device and method having data path with multiple prefetch I/O configurations
JP2002366509A (ja) * 2001-06-06 2002-12-20 Mitsubishi Electric Corp ダイレクトメモリアクセスコントローラおよびそのアクセス制御方法
KR100445915B1 (ko) * 2002-01-22 2004-08-25 한국전자통신연구원 메모리 시스템의 제어 장치
JP2003223412A (ja) * 2002-01-30 2003-08-08 Oki Electric Ind Co Ltd 半導体集積回路
JP2005301739A (ja) * 2004-04-13 2005-10-27 Matsushita Electric Ind Co Ltd メモリコントローラ及び半導体装置
US7269704B2 (en) * 2005-03-30 2007-09-11 Atmel Corporation Method and apparatus for reducing system inactivity during time data float delay and external memory write
EP1866777A4 (en) * 2005-03-30 2008-03-26 Atmel Corp METHOD AND APPARATUS FOR REDUCING INACTIVITY OF A SYSTEM DURING FLOTTING DATA DELAY AND EXTERNAL MEMORY WRITING
US20080034132A1 (en) * 2006-08-01 2008-02-07 Nec Electronics Corporation Memory interface for controlling burst memory access, and method for controlling the same
US8239590B1 (en) * 2009-01-31 2012-08-07 Xilinx, Inc. Method and apparatus for transferring data between two different interfaces
JP6098301B2 (ja) * 2013-03-29 2017-03-22 富士通株式会社 ストレージ制御装置、ストレージ制御方法、およびストレージ制御プログラム

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4683534A (en) * 1985-06-17 1987-07-28 Motorola, Inc. Method and apparatus for interfacing buses of different sizes
US4799199A (en) * 1986-09-18 1989-01-17 Motorola, Inc. Bus master having burst transfer mode
US4910656A (en) * 1987-09-21 1990-03-20 Motorola, Inc. Bus master having selective burst initiation
US4912631A (en) * 1987-12-16 1990-03-27 Intel Corporation Burst mode cache with wrap-around fill
US5073969A (en) * 1988-08-01 1991-12-17 Intel Corporation Microprocessor bus interface unit which changes scheduled data transfer indications upon sensing change in enable signals before receiving ready signal
US5109332A (en) * 1988-09-09 1992-04-28 Compaq Computer Corporation System for controlling the transferring of different widths of data using two different sets of address control and state information signals
US5255378A (en) * 1989-04-05 1993-10-19 Intel Corporation Method of transferring burst data in a microprocessor
US5131083A (en) * 1989-04-05 1992-07-14 Intel Corporation Method of transferring burst data in a microprocessor
JP2504206B2 (ja) * 1989-07-27 1996-06-05 三菱電機株式会社 バスコントロ―ラ
JPH04211880A (ja) * 1990-02-16 1992-08-03 Hitachi Ltd ワンチップ・マイクロプロセッサ及びそのバスシステム
KR930008050B1 (ko) * 1990-02-16 1993-08-25 가부시끼가이샤 히다찌세이사꾸쇼 원칩 마이크로프로세서 및 그 버스시스템
US5488709A (en) * 1990-06-27 1996-01-30 Mos Electronics, Corp. Cache including decoupling register circuits
US5333294A (en) * 1990-10-09 1994-07-26 Compaq Computer Corporation Configurable data width direct memory access device with a read address counter and a write address counter which increments the addresses based on the desired data transfer width
US5659797A (en) * 1991-06-24 1997-08-19 U.S. Philips Corporation Sparc RISC based computer system including a single chip processor with memory management and DMA units coupled to a DRAM interface
US5345573A (en) * 1991-10-04 1994-09-06 Bull Hn Information Systems Inc. High speed burst read address generation with high speed transfer
US5291580A (en) * 1991-10-04 1994-03-01 Bull Hn Information Systems Inc. High performance burst read data transfer operation
JP2836321B2 (ja) * 1991-11-05 1998-12-14 三菱電機株式会社 データ処理装置
US5502835A (en) * 1994-08-31 1996-03-26 Motorola, Inc. Method for synchronously accessing memory

Also Published As

Publication number Publication date
US5651138A (en) 1997-07-22
DE69523395T2 (de) 2002-07-04
KR960008565A (ko) 1996-03-22
KR100341948B1 (ko) 2002-11-30
EP0700003A2 (en) 1996-03-06
JPH0877098A (ja) 1996-03-22
EP0700003B1 (en) 2001-10-24
EP0700003A3 (en) 1996-05-01
DE69523395D1 (de) 2001-11-29

Similar Documents

Publication Publication Date Title
JP3406744B2 (ja) 制御されたバーストメモリアクセスを備えたデータプロセッサおよびその方法
JP3532932B2 (ja) 時間重複メモリ・アクセスを有するランダムにアクセス可能なメモリ
JP3765586B2 (ja) 多重プロセッサコンピューターシステムのアーキテクチャ
US5617559A (en) Modular chip select control circuit and method for performing pipelined memory accesses
EP0718768A1 (en) Single-chip microcomputer
JPH10134008A (ja) 半導体装置およびコンピュータシステム
US20070136503A1 (en) Systems for implementing SDRAM controllers, and buses adapted to include advanced high performance bus features
US6963962B2 (en) Memory system for supporting multiple parallel accesses at very high frequencies
US5502835A (en) Method for synchronously accessing memory
KR100391726B1 (ko) 프로그램가능한메모리억세스인터페이스타입의집적회로마이크로프로세서와이에관련된방법
US6892266B2 (en) Multicore DSP device having coupled subsystem memory buses for global DMA access
US5710914A (en) Digital signal processing method and system implementing pipelined read and write operations
US6085261A (en) Method and apparatus for burst protocol in a data processing system
US6247101B1 (en) Tagged access synchronous bus architecture
JP4225513B2 (ja) モジュール方式チップ選択制御回路および関連する回路および方法
JP2005536798A (ja) メモリバスのプロトコル特性に適合するプロセッサのプリフェッチ
US5727005A (en) Integrated circuit microprocessor with programmable memory access interface types
US20030196072A1 (en) Digital signal processor architecture for high computation speed
JP3153078B2 (ja) データ処理装置
US5680643A (en) Data bus including address request line for allowing request for a subsequent address word during a burst mode transfer
US5677859A (en) Central processing unit and an arithmetic operation processing unit
JP2002182975A (ja) マルチプロセッサシステム
US20040103267A1 (en) Data processor having cache memory
JPS6383844A (ja) マイクロプロセツサシステム
JPH1083344A (ja) 情報処理装置

Legal Events

Date Code Title Description
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20080307

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090307

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090307

Year of fee payment: 6

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D03

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

Free format text: PAYMENT UNTIL: 20100307

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100307

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110307

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110307

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120307

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130307

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20140307

Year of fee payment: 11

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term