JPH08227377A - 異なったサイクルで異なる速度のメモリデバイスにアクセスできるメモリ制御器 - Google Patents

異なったサイクルで異なる速度のメモリデバイスにアクセスできるメモリ制御器

Info

Publication number
JPH08227377A
JPH08227377A JP7293749A JP29374995A JPH08227377A JP H08227377 A JPH08227377 A JP H08227377A JP 7293749 A JP7293749 A JP 7293749A JP 29374995 A JP29374995 A JP 29374995A JP H08227377 A JPH08227377 A JP H08227377A
Authority
JP
Japan
Prior art keywords
address
dram
memory
bank
state
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
JP7293749A
Other languages
English (en)
Inventor
Jeffrey C Stevens
ジェフリー・シー・スティーヴンズ
John E Larson
ジョン・イー・ラーソン
Gary W Thome
ゲアリ・ダブリュー・トム
Michael J Collins
マイケル・ジェイ・コリンズ
Michael Moriarty
マイケル・モライアティ
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.)
Compaq Computer Corp
Original Assignee
Compaq Computer 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 Compaq Computer Corp filed Critical Compaq Computer Corp
Publication of JPH08227377A publication Critical patent/JPH08227377A/ja
Pending 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/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
    • 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
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • 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
    • G06F13/1668Details of memory controller
    • G06F13/1694Configuration of memory controller to different memory types

Landscapes

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

Abstract

(57)【要約】 (修正有) 【課題】 異なったサイクルで異なる速度のメモリデバ
イスを操作する。 【解決手段】 アドレス及びサイクルタイミング情報を
受信し、DRAMのどのバンクがアクセスされるべきで
あるかを決定する手段、各バンク毎にDRAM形式を指
示する手段、各DRAM形式毎にDRAMサイクルの部
分のための複数のDRAMタイミングパラメータを記憶
する手段、並びに決定されたバンク毎にDRAM形式指
示及びバンク決定に基づいて受信されたアドレスに適用
できる複数のDRAMタイミングパラメータを決定する
手段を備え、決定した複数のDRAMタイミングパラメ
ータを受信し、決定したバンク及びアドレスがその特定
のバンク用の決定された複数のDRAMタイミングパラ
メータに従ってDRAMに列及びカラムアドレス及びア
ドレスストローブを供給する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータシス
テムに用いられたメモリ制御器に関し、特に別々のバン
ク及び追加的に異なる速度のマイクロプロセッサで異な
る速度のメモリデバイスを操作することができるメモリ
制御器に関する。
【0002】
【従来の技術】コンピュータシステムは日増しにより強
力になっている。ユーザはかつてより複雑な知的な応用
例を動作させる多くの能力を要求し、コンピュータシス
テム製造業者がこれに答えている。コンピュータ速度は
ここ数年に亙って劇的に増加して、今のデスクトップ及
びファイル・サーバコンピュータが10〜15年前のメ
インフレームコンピュータを容易に卓越することができ
ている。しかし、更なる性能の探求が決して終わってい
ない。この結果、マイクロプロセッサ製造業者がより速
いマイクロプロセッサを開発している。
【0003】しかしながら、コンピュータシステムは、
マイクロプロセッサのみではない。完全なコンピュータ
システムを形成するためには、マイクロプロセッサと協
働しなければならない多くの他のサブシステムがある。
さまざまなユーザの願望を満足させるためは、これらの
サブシステムをできるのみ多く最適化し、それなのにコ
スト及びシステムの柔軟性を考慮に入れることが望まし
い。
【0004】マイクロプロセッサの開発との歩調が維持
できなかったサブシステムの2つは主メモリシステム及
びI/Oバスである。主メモリシステムの短所は、キャ
ッシュメモリシステムの使用によって大いに軽減され
た。しかし結局全てのメモリ操作は、その性能がコンピ
ュータシステムの全体の性能でまだ重要な部分であるよ
うに、最終的に主メモリから来なければならない。多く
の先進のメモリアーキテクチャ及び技術が長年の間に開
発された。最も普通の技術の1つは、実際のメモリアド
レス位置値が列(ロー)とカラムに分けられたページモ
ードメモリデバイス即ちDRAMの使用であり、もし列
アドレス即ちページが次の操作で同じであるならば、カ
ラムアドレスのみがDRAMに供給される必要がある。
必要とされる少しのオーバヘッドが、ページヒット間に
得られた改善された性能によって容易に補える。それで
基本的ページモード操作は、主な性能増加を形成する
が、高性能はいつも望まれる。
【0005】1つの更なる性能増加は、メモリシステム
が動いていない時に、列アドレスストローブ即ちRAS
*信号のレベルを決定するための改善に関する。公知な
ように、RAS*信号はネゲートされ即ちハイにセット
されて新しいページ即ちローアドレスが供給できなけれ
ばならず、またプリチャージ時間も必要である。従っ
て、次の操作が実際にページヒットである時にもしRA
S*信号がハイに上げられたならば、性能ペナルティが
ある。同様にフルなプリチャージ時間がサイクルが出さ
れた後に実行しなければならない時において、もしRA
S*信号がローであり、操作がページミスであるなら
ば、遅延がある。この関心を指摘するために種々の技術
は、新しいページサイクルを指示するために、RAS*
信号がローに保持されるべきか或いはハイに戻すべきか
をを予測するために開発された。予測は、1993年3
月22日に出願された連番08/034,104号の表
題『ページミスを動的に予測するメモリ制御器』に示さ
れるように、種々の方法で実行することができる。この
出願でいくつかの技術が使用された。第1に、単純な技
術がいつも固定的な選択によるプロセッサによって行な
われた最終サイクルの形式予測に基づいている。第2
に、より知的な技術は、ヒット及びミスを各サイクル型
毎にサンプルして、その後この適合的測定に基づいてR
AS*レベルをセットする。しかし、この技術はプロセ
ッササイクルの使用に基づいたが、I/Oバスサイクル
自身に基づかなかった。それ故、I/Oバスマスタ操作
はより低いレベルでまだ機能している。
【0006】1つの高性能I/Oバスは、インテル社に
よって開発され、多くのコンピュータ製造業者に受け入
れられたPCI即ち周辺部品相互接続バスである。PC
Iは高性能のバスであって、多数のバスマスタが同席す
るのを許容する。バスマスタは、必須的に特定業務を行
なうが汎用処理業務を行わないローカル・プロセッサで
ある。主プロセッサは、これらのバスマスタを持つこと
によって、種々の特殊処理タスクの負荷を軽減すること
ができて、より多くのタスクが平行して実施することが
でき、それによってコンピュータシステムの性能を増加
させている。これは、並列性が現行のコンピュータシス
テムで使用されているやり方のただ1つの例である。
【0007】全体の性能増加を許容するためは、多くの
操作が可能な限り平行又は共起して動作できることが望
ましい。この共起操作が過去に行われた1つの方法は、
プロセッサからの単一サイクルが配達バッファにラッチ
され、準備完了がメモリ又はI/Oデバイスへの実際に
完了した書込サイクル前にプロセッサに戻される書込配
達の使用によってである。全データ及びアドレス値はラ
ッチに配達され、その後サイクルは可能になった時に目
標のバスで実行される。しかしながら書込配達は、より
深いレベルの配達が実施されれば当然起こり得るメモリ
コヒーレンシ及びサイクル順序の複雑さが故に、バス毎
に1レベルのような非常に単純なレベルに保持された。
それ故、もし所定バスへの単一操作より以上の書込配達
ができるならば、もし複雑さが簡単に解決することがで
きるならば得ることができる多数の利益があることは理
解することができる。
【0008】PCIバスは、全体のシステム効率特にメ
モリシステムの効率を増やす機会を提供する。PCIバ
ス毎に限定された読出操作の1つは、単一ラインと同様
に多数のキャッシュ又はメモリラインの読出要望を指示
するために使用されたメモリ読出多重サイクルとして呼
ばれることである。PCIバスサイクル定義で注目され
るように、このサイクルデコードすることは、データが
実際にPCIバスで必要とされる前に得ることができる
ように、先読み即ちパイプラインを行なうことを始める
メモリ制御器毎に機会を提供する。メモリ制御器は、そ
の後得られたこのデータによって、プロセッサによるア
クセスを許容することができ、従って全体のシステム共
起をさらに増加させる。しかしながら、PCIバスマス
タがサイクルの完了前にサイクルを中止することも珍し
くなく、もしそのような中止されたサイクルがメモリ読
出多重サイクルを始めた後にまもなく発生するならば、
先読み操作は、始められ適宜完了して、その後すぐに廃
棄されるデータのみを持つことになる。これは、フルな
先読み操作を始め完了する必要がない浪費操作の故に全
体のシステム効率を減少させる。それ故、サイクルがP
CIバス上のバスマスタによって早く中止される時に
は、メモリ読出多重サイクル間の先読み実行時の浪費時
間を減少させることが望ましい。
【0009】更に、パーソナル・コンピュータシステム
は大量生産品になって、それ故、ユーザの広範囲に変化
した特定の目的に対応するために非常に柔軟性に富む必
要がある。例えば、何人かのユーザはコストを度外視し
て究極の性能を望んでもよいが、他のユーザが非常にコ
ストに敏感であるかもしれない。コストが性能に直接
(衝突する)響く1つの領域は、主メモリに使用される
メモリデバイスの速度にある。このような衝突の他の領
域は、多くの異なるマイクロプロセッサ構築及び速度毎
に単一メモリ制御チップを使うことによって得ることが
できる規模の経済性である。しかし、単一メモリ制御器
の使用は通常性能との取引きを伴う。米国特許第5,3
33,293に開示されたメモリ制御器は、多重速度の
プロセッサの点を指摘したが、単一速度のメモリデバイ
スしか使うことができず、従ってユーザオプションを制
限し、性能と取り引きをしている。1993年3月22
日に出願された連番08/034,290号に開示され
た他のメモリ制御器において、メモリ制御器は、バンク
毎又はモジュール毎の単位で異なる速度のメモリデバイ
スを扱うことができて、各特定のメモリデバイス毎に最
適のタイミングをまだ許容する。しかしながらこのメモ
リ制御器は、単一速度で動作する単一プロセッサと一緒
に使用する仕様であり、従ってユーザの柔軟性を提供す
るが、規模の経済性を提供しない。単一メモリ制御器と
用いられるべき多数の形式及び速度のプロセッサを許容
し、相当の複雑さを必要としないで、多数の形式及び速
度のメモリデバイスの使用を許容することがより望まれ
る。
【0010】本発明によるコンピュータシステムは、特
にPCIバス環境で多数の性能増加を提供し、多数の形
式及び速度のプロセッサ及び異なる速度のメモリデバイ
スと容易に動作することができるメモリ制御器を持って
いる。
【0011】メモリ制御器は、深い書込配達を許容する
ために、プロセッサとPCIバスとメモリシステムとの
間に一連の行列(キュー)を形成する。好ましい実施例
において、4列の4ワードアドレスはプロセッサから配
達され、書込操作毎に8列の4ワードアドレスがPCI
バス配達することができる。メモリコヒーレンシは、2
つの異なるウエイに維持される。どんな読出操作前にも
PCIバスから受け入れられ、配達行列の両方が空でな
ければならない。このように全書込は、主メモリがPC
Iバスからの読出操作毎に一貫性があるように、読出の
発生前に完了される。しかしながらより高性能がプロセ
ッサから望まれ、それ故、コヒーレンシ(一貫性)を維
持するために、連想メモリ(CAM)がPCI対メモリ
列として用いられる。プロセッサが読出要求を行なう時
に、CAMは、PCI対メモリ行列内の待機中書込操作
の1つがプロセッサのその読出操作と同じアドレスにあ
るかどうかを決めるためにチェックされる。もしそうな
らば、PCI対メモリ行列がその入口をクリアするま
で、読出操作は、実行されない。もしどんなアドレスヒ
ットも発生しないならば、読出操作は受け入れられて、
仲介優先権規則によって実行される。再度このように主
メモリは、発生している読出操作より前に一貫性があ
る。同じアドレスへの2つの書込操作を2つの行列に同
席できることは、問題でなくて、バスの間の正確なタイ
ミングがとにかく決してクリアされないように、首尾一
貫した結果を発生しないことは注目される。
【0012】好ましい実施例において、メモリ読出多重
が要求された時に、先読み操作のPCIバス能力が存在
する。これは、メモリシステムが高い率でデータを得
て、特定のサイクルで指示された時のPCIバスマスタ
による読出用に、それを配達されるままにしておくのを
許容する。しかしながら背景技術に注目されるように、
PCIバスマスタがサイクルをその完了前に中止するこ
とは可能である。この問題を解決するために、好ましい
実施例によるメモリ制御器は、PCIバスインタフェイ
スからアボート信号を受信し、その後受信した途端たと
えサイクルが充分に完了しなかった先読みであっても、
DRAMデータの完全性を維持しながら、先読みサイク
ルを終わらせる。従って先読みサイクル可能になるやい
なや中止される。それ故、フルな読出は、通常の場合と
同様に先読み操作間に発生するアボートの状況が性能を
過度に妨げないように発生しない。
【0013】システムをさらに改善するために、好まし
い実施例のメモリ制御器が、DRAMデバイスをプリチ
ャージする時を決めるための予測規則を改善した。この
予測規則は、サイクルがプロセッサから来ているか又は
PCIバスから来ているかどうかに基づく。これらの新
しい規則の使用によって、より効果的なプリチャージが
行なわれ、追加的に、多くのページモードサイクルは先
行技術によって行なわれたものと違った風に行うことが
できる。
【0014】最終的に、好ましい実施例のメモリ制御器
は、多重速度及び形式のプロセッサ及び種々の速度のメ
モリデバイス毎に高度にプログラムできて、それなの
に、単純にプログラムすることができる。メモリ制御器
は、アドレスセットアップ(確立)及びホールド時間
と、CAS*信号のパルス幅と、プリチャージ時間と、
データ確立時間のような従来のDRAMサイクルの特定
部分毎のクロック期間の数を指定する複数のレジスタを
含む。従ってこれらのレジスタは、デザイナが特定のプ
ロセッサ形式及びクロック速度及びメモリデバイス速度
のみを知る必要性があり、その後レジスタが小さいマト
リックス又は表から適切に単純にプログラムされるよう
に、DRAMデバイスの正常なタイミング関連及びパラ
メータと一致させている。複雑な操作及び置換は必要で
なく、クロック期間の値が容易に決定することができ
る。多重プロセッサの形式及び速度及び複数の速度用の
単一メモリ制御器の使用によって、規模の経済性は、ユ
ーザの柔軟性をいまだに許容しながら、今製造量の増加
によって得ることができる。
【0015】好ましい実施例の次の詳細な記述が添付図
面と関連して考慮された時に、本発明のより良い理解を
得ることができる。
【0016】
【実施例】次の開示は、総てが本発明の譲受人に譲渡さ
れ、参照によって本願と協働している。1994年10
月14日に出願されたアランL.ゴットラム、ジェンズ
K.ラムゼイ及びマイケルJ.コリンズ氏による米国特
許出願連番08/324,016の表題『単一バンク、
多重ウエイのキャッシュメモリ』、1994年10月1
4日に出願されたマイケルJ.コリンズ、ガリーW.ト
ーメ、マイケル,モリアーティ、ジェンズK.ラムゼイ
及びジョンE.ラーソン氏による米国特許出願連番08
/324,246の表題『プロセッサ及びI/Oバス操
作用の書込配達キューを有するメモリ制御器及びキュー
を制御するための順序ロジック』、1994年10月1
4日に出願されたウイリアムJ.ウオーカ及びアラン
L.ゴットラム氏による米国特許出願連番08/32
3,263の表題『データエラー検知及び訂正システ
ム』、1994年10月14日に出願されたジェンズ
K.ラムゼイ氏による米国特許出願連番08/324,
020の表題『もし書込が主メモリの書込保護領域に発
生するならば、キャッシュメモリの部分を無効にする回
路』、1994年10月14日に出願されたジェンズ
K.ラムゼイ及びジェフリC.スティブンス氏による米
国特許出願連番08/323,110の表題『特殊バス
サイクルに応答してキャッシュメモリを低電力モードに
移行させる回路』及び1994年10月14日に出願さ
れたジョンE.ラーソン、マイケル,モリアーティ、マ
イケルJ.コリンズ及びガリーW.トーメ氏による米国
出願連番08/324,011の表題『メモリへのアク
セスを仲介するためのシステム』。
【0017】今図1を参照すると、本発明によるコンピ
ュータシステムのシステム基板Sが示される。好ましい
実施例において、システム基板は、交換できる回路基板
を受け入れる回路及びスロットを含む。好ましい実施例
において、システム基板Sに配置された2つの1次バス
がある。第1バスは、アドレス/データ部分100と、
制御及びバイトイネーブル部分102と、制御信号部分
104とを含むPCI即ち(周辺機器相互接続)バス9
8である。システム基板S上の第2の1次バスは、EI
SAバスEである。EISAバスEは、LAアドレス部
分106及びSAアドレス部分108及びSDデータ部
分110及びEISA/ISA制御信号部分112を含
む。PCI及びEISAバスP及びEはシステム基板S
の骨幹を形成する。
【0018】CPUコネクタ114は、図2に示された
それのように交換できるプロセッサカードを受け入れる
ために、PCIバス98に接続される。PCI画像コネ
クタ116は、図3に示されるように、ビデオの画像カ
ードを受け入れるために、PCIバス98に接続され
る。PCIオプション・コネクタ118は、PCI標準
規格にデザインされたどんな追加のカードも受け入れる
ために、PCIバス98にも接続される。追加的に、S
CSI及びネットワークインタフェイス(NIC)制御
器120は、PCIバス98に接続される。好ましく
は、この制御器120は単一集積回路であり、PCIバ
スマスタ及びスレーブとして作用するに必要な能力と、
SCSI制御器及びイーサネットインタフェースとして
作用する回路とを含む。SCSIコネクタ122は、ハ
ードディスク・ドライブ及びCD−ROMドライブのよ
うに種々のSCSIデバイスの接続を許容するために、
制御器120に接続される。イーサネットコネクタ12
4はシステム基板Sに形成されて、制御器120に順に
接続されるフィルタ及び変圧器回路126に接続され
る。これは、ローカル領域ネットワーク(LAN)にシ
ステム基板及びコンピュータを結線するためのネットワ
ーク又はイーサネット接続を形成する。
【0019】PCI−EISAブリッジ130は、PC
Iバス98及びEISAバスE間で信号を変換するため
に形成される。PCI−EISAブリッジ130は、必
要なアドレス及びデータバッファ及びラッチと、PCI
バス用の仲介及びバスマスタ制御ロジックと、EISA
仲介回路と、EISAシステムとして適宜使用されたE
ISAバス制御器と、DMA制御器とを含む。好ましく
はPCI−EISAブリッジ130は、単一集積回路で
あるが、他の組合せが可能である。雑多なシステムロジ
ックチップ132は、EISAバスEに接続される。雑
多なシステムロジックチップ132は、他の雑多な回路
と同様に、デジタル式音声インタフェイス、パーソナル
・コンピュータシステムに適宜あるようなカウンタ及び
タイマ、PCI及びEISAバスP及びE用の割り込み
制御器及び電力管理ロジックを含む。EISAバスEに
は、ISA及びEISAアダプターカードを受け入れる
一連の4つのEISAスロット134が接続される。E
ISAバスEには統合I/Oチップ136も接続され
る。この統合I/Oチップ136は、好ましくはフロッ
ピーディスク制御器、実時間クロック(RTC)/CM
OSメモリ、2つのUART及び及び並列ポート及び種
々のアドレス・デコード・ロジックを含む。フロッピー
ディスクドライブへの電線を受け入れるフロッピーディ
スクコネクタ138は、統合I/Oチップ136に接続
される。1対の直列ポートコネクタは、並列ポートコネ
クタ142と同様に、統合I/Oチップ136に接続さ
れる。EISAバスE及び統合I/Oチップ136両者
には、EISAバスE及びハードディスク・ドライブコ
ネクタ146間のバッファとして作用するバッファ14
4が接続されて、IDE型ハードディスクドライブの接
続を許容する。非揮発性ランダムアクセスメモリ(NV
RAM)148は、EISAバスEに接続されて、統合
I/Oチップ136からその制御信号を受信する。アド
レスラッチ150は、EISAバスEに接続され、統合
I/Oチップ136によって制御されて、NVRAM1
48用の追加のアドレス能力を形成する。好ましくはN
VRAM148は、あるシステム情報を含むために使用
される。データバッファ152は、コンピュータシステ
ムの種々の追加の部品のために追加のデータ・バスXD
を形成するために、EISAバスEのSD部分に接続さ
れる。NVRAM148は、そのデータビットを受信す
るために、XDデータ・バスに接続される。フラッシュ
ROM154は、その制御及びアドレス信号をEISA
バスEから受信して、データ転送毎にXDバスに接続さ
れる。フラッシュROM154は、好ましくはコンピュ
ータシステムのためにBIOS情報を含んで、BIOS
の改訂を考慮に入れるために再プログラムすることがで
きる。8742即ちキーボード制御器156はXDバ
ス、EISAアドレス及び制御部分108及び112に
接続される。キーボード制御器156は、従来の設計を
持ち、順にキーボードコネクタ158及びマウス或いは
指針即ちポインティングデバイスコネクタ160に接続
される。
【0020】また、好ましい実施例のコンピュータシス
テムは音声の能力を含む。この目的のため、CODEC
チップ162は、雑多なシステムロジックチップ132
に接続され、アナログ増幅器及びミキサチップ164に
接続される。FMシンセサイザ・チップ166は、アナ
ログ増幅器及びミキサチップ164に接続され、XDバ
スからデジタル式の情報を受信する。また、FMシンセ
サイザ166は、EISAバスEの制御及びデータ部分
110及び112に接続され、雑多なシステムロジック
チップ132によって制御される。音声コネクタ168
は外部音声がコンピュータに接続できるように形成され
て、アナログ増幅器及びミキサ164の入出力に接続さ
れる。
【0021】今図2を参照するとプロセッサ基板Pは示
される。図2のプロセッサ基板Pにおいて、CPU即ち
プロセッサ200は、486DX/33、486DX2
/66、486DX4/50〜100、486DX4/
33〜100、486DX4/33〜83、P24T、
ペンティアム50/75、ペンティアム60/90及び
ペンティアム66/100のような複数のプロセッサ及
び他の類似及び互換性プロセッサのいずれかでもあるこ
とができる。プロセッサ200は、データ、アドレス及
び制御部分202、204及び206を形成してプロセ
ッサバスPBを形成する。このプロセッサバスPBに
は、コンピュータシステムの性能を改善するために追加
のキャッシュ能力を形成するレベル2(L2)即ち外部
のキャッシュメモリシステム208が接続されている。
このL2キャッシュ208は、486族プロセッサと一
緒に使用された時に128キロバイト直接マップキャッ
シュ或いは256キロバイト2ウエイ・セット・アソシ
アティブキャッシュとして組織でき、ペンティアム族プ
ロセッサと一緒に使用された時に256又は512キロ
バイト直接マップ又は2ウエイ・セット・アソシアティ
ブキャッシュとして組織できるキャッシュ及びメモリ制
御器(CMC)及びPCIブリッジチップ210は制御
部分206及びアドレス部分204に接続されている。
CMC210は、キャッシュ制御器と協働するように、
L2キャッシュ208に接続されていて、それ故、L2
キャッシュ208のキャッシュメモリデバイスの操作を
制御する。また、CMC210は、一連のアドレス及び
データバッファ212を制御するように接続されてい
る。データバッファ212は、主メモリ配列214への
メモリデータを扱うために用いられる。データバッファ
212はプロセッサデータ部分202に接続されて、C
MC210から制御信号を受信する。データバッファ2
12は、メモリ配列214へのメモリアドレス・バス2
16及びメモリデータ・バス218を供給する。メモリ
制御信号バス220とメモリアドレス・バス216はC
MC210から供給される。クロック分配及び発生回路
222はプロセッサカードPと協働してCMC210に
接続される。基板の縁のプロセッサコネクタ224は、
プロセッサコネクタ114に一致するように差し込まれ
るように形成される。プロセッサコネクタ224は、C
MC210、データバッファ212及びクロック分配回
路222に接続されて、コンピュータシステムにクロッ
クを供給し、プロセッサ200がPCI及びEISAバ
スP及びEにアクセスでき、PCI及びEISAバスマ
スタが主メモリ配列214にアクセスできるPCIイン
タフェイスを形成する。
【0022】今図3を参照すると、実例のビデオグラフ
ィックアダプタは示される。ビデオグラフィック制御器
300は、グラフィックコネクタ116が一致するよう
に差込まれるPCIグラフィックコネクタ316に接続
される。ROM302はグラフィックコネクタ316に
接続されて、ビデオグラフィック制御器300から制御
信号を受信する。ビデオメモリ304は、グラフィック
データを記憶するために使用され、ビデオグラフィック
制御器300及びデジタル/アナログコンバータ(DA
C)306に接続される。ビデオグラフィック制御器3
00は、ビデオメモリ304の操作を制御して、データ
が書込まれ、必要時に回復するのを許容する。ビデオの
コネクタ308は、DAC306に接続される。モニタ
(図示略)はビデオのコネクタ308に接続される。
【0023】上述のコンピュータシステムは完全さのた
めに提供され、多数の変形例が当該技術者に明らかに開
発することができることが注目される。
【0024】今図4を参照すると、メモリ制御器210
のブロック図が示される。メモリ制御器210における
3つの主要制御ブロック及び3つの一次アドレス転送行
列がある。3つの第1の制御ブロックは、プロセッサ制
御即ちPCONブロック400、PCI制御即ちICO
Nブロック402及びメモリ制御即ちMCONブロック
404である。PCONブロック400は、プロセッサ
バスPB特にプロッセッサアドレスバス204及びプロ
セッサ制御バス206へのインタフェイスを形成する。
更に、PCONブロック400はL2データキャッシュ
208に接続されて、必要な制御信号を供給する。L2
キャッシュ制御器は、PCONブロック400に含まれ
る。追加的にPCON400は、データバッファ212
を制御する信号を供給する。ICONブロック402
は、データバッファ制御信号をデータバッファ212に
供給し、それに加えて、特に、制御及びアドレス部分を
PCIバス98にインタフェースする。MCONブロッ
ク404は、メモリデバイス制御部分であって、メモリ
アドレス・バス216及びメモリ制御バス220に接続
されて、更に、データバッファ212を制御する信号を
供給する。各特定の制御ブロック400、402及び4
04は、説明されるように、データバッファ212の異
なる部分を制御する。
【0025】メモリ制御器210及びデータバッファ2
12は、データ転送がプロセッサバスPB及びメモリバ
スの間、PCIバス98及びメモリバスの間又はプロセ
ッサバスPB及びPCIバス98の間で発生することが
できるように、三角形又はデルタ結線のように効果的に
組織される。この目的のためにPCONブロック400
はICONブロック402に直接接続されて、PCIバ
ス98へのプロセッサ200による読出操作のために読
出アドレスを供給する。書込アドレスは、PCON40
0からP2I行列406に供給される。好ましくはP2
I行列は、4つの書込操作が行列に配達することがで
き、従って、一度に待機中であることができるように、
4段階の深さの操作である。64ビットペンティアムマ
イクロプロセッサ200の場合において、これが8個の
32ビットPCIバス98操作に翻訳されることが注目
される。P2I行列406の出力がICONブロック4
02に供給されて、アドレスの流れを形成する。類似フ
ァッションにおいて、読出アドレス情報及びアドレスバ
ンク情報は、主メモリ214からのプロセッサ読出のた
めにPCONブロック400からMCONブロック40
4に供給される。書込アドレス及びバンク情報は、PC
ONブロック400から、再度4段階の4ワードアドレ
ス深さが好ましいP2M行列408に供給されて、もし
ペンティアムプロセッサならばプロセッサ200からの
4つの書込操作、もし486基準プロセッサならば8つ
の書込操作がメモリ配列214に配達することができ
る。P2M行列408の出力が、MCONブロック40
4に供給される。
【0026】ICONブロック402はMCONブロッ
ク404に接続されて、PCIバス98からメモリ21
4への読出操作毎に読出アドレス及びメモリバンク情報
を形成する。それに加えて、書込アドレス情報及びバン
ク情報はICONブロック402からI2M行列410
に供給される。好ましくはI2M行列410は、PCI
バス98からメモリ214へのかなり深い配達を形成す
るために、8段階の4ワードアドレスを配達することが
できる。I2M行列410の出力はMCONブロック4
04に接続される。SMAP即ちシステムマップブロッ
ク412は制御ブロック400、402及び404に接
続されて、必要な種々の信号を供給する。
【0027】それに加えて、M2IABORTとして参
照された信号はICONブロックから402MCONブ
ロック404に供給されて、メモリ読出多重操作が他の
PCI中止操作と同様にPCIバスマスタによって中止
された時をMCONブロック404が決定できるように
許容する。この議論のためにメモリ読出多重の場合のみ
に関心があり、他のケースは説明しない。MCONブロ
ック404は、スヌープ要求即ちSNPREQ信号、メ
モリ対PCI読出操作用のアドレスであるM2I読出ア
ドレス及びPCONブロック400へのI2M書込アド
レスを形成する。これは、PCONブロック400がL
2キャッシュ制御器とのスヌープ操作を実行し、プロセ
ッサ200への操作を形成することを許容して、プロセ
ッサ200の内側のL1キャッシュ制御器もスヌープ操
作を行なうことができる。書込アドレスと同様に読出ア
ドレスのスヌープは、L2キャッシュ制御器及びある場
合のプロセッサ200内のL1キャッシュ制御器がライ
トバックキャッシュ制御器として好ましく組織され、そ
れ故、スヌープ操作がメモリコヒーレンシを維持するた
めに読出で発生しなければならないので必要である。P
CONブロック400は、SNPDONE即ちスヌープ
実行済及びSNPHITM即ちスヌープヒットをMCO
Nブロック404への修正信号に形成して、MCONブ
ロック404が読出又は書込操作もし適切であるならば
読出操作の再トライを進行できるようにする。
【0028】今図5を参照すると、データバッファ21
2の多くの詳細が示される。データバッファ212もメ
モリ制御器210のそれらと同様に、行列411、41
3及び414を含んで、データが維持される間にアドレ
スがメモリ制御器210で追跡されて、データバッファ
212を通して転送されることが注目できる。メモリ制
御器210は、特定の制御ブロック400、402及び
404がデータバッファ212の各部分を制御するよう
にデータバッファ212を制御するために組織される。
例えば、PCONブロック400は、プロセッサデータ
バスから種々のレジスタへのデータのラッチ及びメモリ
からプロセッサデータバス202へのデータの出力イネ
ーブル即ち駆動を制御する。同様にICONブロック4
02は、PCIバス98から種々のレジスタへのデータ
のラッチ及びPCIバス98へのデータの出力イネーブ
ルを扱う。MCONブロック404は、種々の行列41
1、413及び414を通してデータをシフトし、行列
411、413及び414から実際のメモリデバイスへ
のデータを駆動し、プロセッサデータバス202及びP
CIバス98に供給するのと同様に、メモリデバイスか
らI2M行列414又はレジスタに必要とされるデータ
をラッチする操作を扱う。プロセッサ対メモリ及びプロ
セッサ対PCI行列411及び413はデータバッファ
212に単一方向であるが、PCI対メモリ行列414
が両書込データ及び先読みデータ用に使用されることを
双方向性的に操作されることが注目される。操作は下記
に従ってクリアされる。
【0029】好ましい実施例のメモリ制御器210の特
徴の1つは、種々の速度のマイクロプロセッサ及びメモ
リ配列214における種々の速度のDRAMデバイスの
使用に無制限に近い柔軟性を許容することである。実に
それは、メモリデバイスがバンクからバンクに変化で
き、好ましくは主メモリ配列214が8バンク又はモジ
ュールから形成される。好ましい実施例のメモリ制御器
210は3種類のメモリ速度を用いることができ、各バ
ンクが特定の速度の1つとして指定される。その後各特
定のメモリ速度は、DRAM仕様書に一般に用いられる
ように、タイミング値に関連する一連のパラメータを持
っている。各特定のメモリ速度毎に、CAS*ストロー
ブへのメモリデータ確立時間及びCAS*ストローブの
パルス幅と同様に、RAS*からのローアドレスホール
ド時間を指示する値が形成され、読出及び書込毎のCA
S*ストローブに対するカラムアドレス確立時間が形成
され、RAS*信号に対するローアドレス確立時間が形
成される。それに加えて、RASプリチャージ時間は、
各メモリ速度毎に形成される。サイクル準備完了信号が
プロセッサ200又はPCIバス98に供給される時の
指示もタイミングパラメータとして示される。好ましく
はこれらのタイミングパラメータは、構成が表1に示さ
れた組織16ビットレジスタのメモリの10ビットを用
いている。
【0030】表 1 メモリタイミング制御レジスタ ビット15予約 ビット[14:13]RASプリチャージ 00=2クロック 01=3クロック 10=4クロック 11=5クロック ビット[12:11]MRDY読出状態 00=C1状態でMRDYアサート 01=C2状態でMRDYアサート 10=C3状態でMRDYアサート 11=予約 ビット[10:9]予約 ビット8、CASパルス幅 0=2クロック 1=3クロック ビット[7:5]予約 ビット4、CASへのMD確立 0=1クロック確立時間 1=2クロック確立時間 ビット3、RASへのローアドレス確立 0=1クロック確立時間 1=2クロック確立時間 ビット2、CASへのカラムアドレス書込確立 0=1クロック確立時間 1=2クロック確立時間 ビット1、CASへのカラムアドレス読出確立 0=1クロック確立時間 1=2クロック確立時間 ビット0、RASからのローアドレスホールド 0=1クロックホールド時間 1=2クロックホールド時間
【0031】RASプリチャージは、全てのRAS*信
号が再びローにアサートできる前にハイにネゲートされ
なければならないクロック数を定義する。MRDY読出
状態は、どのCAS状態MRDYがメモリデータ読出毎
にアサートされるべきであるかを定義する。もしCAS
パルス幅が2クロック幅であるならば、C2はスキップ
される。MRDY状態は、クロック周波数及びメモリ速
度で異なる。CASパルス幅は、どの数のクロックのC
AS*信号がアサートされ続けられなければならないか
を定義する。CASへのMD確立時間は、CAS*が書
込用にアサートされる前に、MDバスがどの数のクロッ
クでデータバッファ212から駆動されなければならな
いかを定義する。CASへのカラムアドレス書込確立
は、CAS*が書込サイクル用にアサートできる前に、
カラムアドレスが発生された後のクロック数を定義す
る。CASへのカラムアドレス読出確立は、CAS*が
読出サイクル用にアサートできる前に、カラムアドレス
が発生された後のクロック数を定義する。RASからの
ローアドレスホールドは、RAS*がアサートされた後
でローアドレスが変化する前のクロック数を定義する。
【0032】その後図6を参照すると、各記憶バンク
は、特定の記憶バンクの最後のアドレスを示す関連した
レジスタ500、502及び504を含む。これらのア
ドレスは、特定のバンクに配置されたメモリモジュール
の特定のサイズを決定した後にプロセッサ200によっ
て書込むことができる。その後バンク終端アドレスレジ
スタ500、502及び504の出力は、比較器50
6、508及び510に1つの入力として供給される。
比較器506、508及び510への第2入力がプロセ
ッサバスPB又は適切ならPCIバス98のような特定
のモジュールのメモリアドレスによって供給される。8
つのバンクの3つのみが単純さのために図示されること
は注目される。比較器506、508及び510には2
つの出力と第3の入力とを持つ。1つの出力は、もし供
給されたメモリアドレスが特定のバンクの最後のアドレ
スより小さく、比較器のイネーブルを示す値にキャリー
があるならば、その値より少ないものが真即ちハイで、
これが選択されたバンクであることを指示するように、
出力より小さい。比較器の第2の出力は、次の比較器を
イネーブルするために使用された信号より大きいか等し
い。例えば、比較器506は、比較器508のイネーブ
ル入力に接続された出力以上のものを持って、もしメモ
リアドレスがバンク0の終端アドレスレジスタ500に
形成されたアドレス以上であるならば、比較器508が
活性化される。その後もしアドレスがレジスタ502に
記憶されるようにバンク1の最後のアドレスより小さい
ならば、比較器508のBANK1信号の出力が活性化
される。その代わりにもしメモリアドレスがより大きい
ならば、この連鎖は、メモリアドレスがバンクのいずれ
かに含まれるもの以下であるかどうかを決めることを続
ける。それ故、特定の記憶バンク中のメモリアドレスの
存在を示す8つの特定のバンク出力(BANK0〜BA
NK7)がある。
【0033】これらのBANK0〜BANK7信号は、
MCONブロック404への準備のために、I2M行列
410又はP2M行列408中の書込アドレス値に沿っ
て記憶されたBANK<2:0>信号を出力する記憶バ
ンク値エンコーダ512に供給される。
【0034】上記注目されるように、各バンクは、3つ
の特定のメモリ速度の1つをとることができ、これらの
指示は、レジスタ514及び516に含まれる。2つの
レジスタのみが単純さのために示している。レジスタ5
14及び516の出力は、特定の速度を示す2ビットで
あり、これらのビットは、選択入力がBANK<2:0
>信号に接続される8入力2ビットマルチプレクサ51
8の入力に供給される。BANK<2:0>信号には特
定のアドレスが供給されて、マルチプレクサ518の出
力がMCONブロック404がメモリ操作を実行しよう
としている特定のアドレス用のバンクを示す特定の2ビ
ットであるように、PCONブロック400又はICO
Nブロック402用のアドレスをマルチプレクサ518
に読出或いは書込む。マルチプレクサ518の出力は、
3入力マルチプレクサ520の選択入力に接続される。
マルチプレクサ520は、速度0、1及び2毎のメモリ
速度タイミング値を含むレジスタ522、524及び5
26にそれぞれ接続される。これらのメモリタイミング
値は、表1に示されたものである。マルチプレクサ52
0の出力はMCONブロック404のために後述される
ステートマシン及びロジックで用いられるタイミング値
である。それに加えて、アドレス値<27..3>及び
バイトイネーブル即ちBE*<7..0>信号も、それ
らが行列408又は410を通して追跡され或は読出操
作で直接供給されるように、MCONブロック404に
供給される。それ故、メモリバンク速度タイミング値
は、まず特定バンクをデコードし、その後オプショナル
なメモリ速度セッティングの既に定義され記憶されたメ
モリ速度値に基づくバンク毎に早見を持ち、その後その
特定のメモリサイクル毎の操作用に特定のメモリを選択
することによって、直接供給される。
【0035】3種類のプロセッサ速度及び2種類のメモ
リデバイス速度毎の好ましい実施例用のタイミング値の
例が表2に示される。
【0036】 表 2 メモリタイミング制御合同 パラメータ 33MHz 50MHz 60MHz 60ns 70ns 60ns 70ns 60ns 70ns RASプリチャージ 2 2 3 3 3 4 MRDY状態アサート C1 C1 C3 C3 C2 C3 CASパルス幅 2 2 2 2 2 3 MD確立時間 1 1 1 1 2 2 書込カラムアドレス確立時間1 1 1 1 1 1 読出カラムアドレス確立時間1 1 1 1 1 1 RAホールド時間 1 1 1 2 2 1 メモリタイミング制御 00 00 00 00 30 00 30 01 20 11 51 10 レジスタ(16進数)
【0037】DRAMデバイス速度は、SIMM上に適
宜形成されたエンコードビットを読出し、容量をチェッ
クすることによって決定することができる。その後これ
らの2つのパラメータは、SIMM速度を決定するため
に、早見表で使われる。この技術は、1993年3月2
2日に出願された連番08/034,105号に充分に
記載され、これによって参照物として協働する。それで
各バンク毎に公知なDRAMデバイス速度及び他のエン
コードビットに公知なマイクロプロセッサ速度によっ
て、これらの2つのパラメータは第2の早見表に用いら
れて、その連続のためにタイミング値レジスタに配置さ
れるべき2進数値を得る。コンピュータシステムのデザ
イナは、種々のパスの種々の伝播遅延を知り、その後各
結合毎のタイミング値を決定するために、メモリデバイ
ス製造業者によって提供されるクロック速度及びメモリ
タイミングパラメータを使うことができるのみである。
【0038】その後図7に進行して、アドレス、バイト
イネーブル及びタイミング値の使用がMCONブロック
404の部分に供給されるように示される。プロセッサ
書込要求、プロセッサ読出要求、リフレッシュ要求、P
CI読出要求及びPCI書込要求信号は、I2CAMH
IT、I2MQ EMPTY及びP2MQ EMPTY
として参照される信号に沿うアービタ550への入力で
ある。種々の要求信号は、示された形式の示された源か
ら操作するメモリ制御器のために操作が待機中であるこ
との指示である。これらの信号の開発が充分に説明しな
いが、当業者が容易に開発することができる。アービタ
550の出力は、操作の源及び方向が発生したことを指
示するP2M、M2P、I2M及びM2I信号、即ちプ
ロセッサ対メモリ書込用のP2M、プロセッサ対メモリ
読出用のM2P、PCI対メモリ書込操作用のI2M及
びPCI読出操作用のM2Iである。これらの4つの信
号は、特定の読出又は書込アドレス、バイトイネーブル
及びメモリタイミング値及び特定の源毎のバンク指示を
受信する4入力マルチプレクサ552への選択信号とし
て供給される。P2M行列408は、プロセッサ対メモ
リ書込操作用の行列408から書込アドレス、バイトイ
ネーブル、メモリタイミング及びバンク情報を形成し、
一方M2Pの場合読出アドレス、バイトイネーブル、メ
モリタイミング及びバンク情報がプロセッサ読出のため
に直接供給される。同様にI2M行列410は、I2M
行列410からの書込アドレス、バイトイネーブル、メ
モリタイミング及びバンク情報を形成し、一方読出アド
レス情報がICONブロック402からMCONブロッ
ク404に直接供給される。マルチプレクサ552の出
力は、適切であるものとして読出か書込のための必要な
メモリ位置をアクセスするために、特定のアドレス値、
バイトイネーブル、どの特定のバンクを指示するバンク
値及びメモリ制御器210によって実行されるべき特定
のメモリ操作毎のメモリタイミング値である。ページヒ
ット検知器554はマルチプレクサ552の出力に接続
されて、ページヒットが発生したかどうかをメモリ制御
器210が決定できるPAGEHIT信号を形成して、
最良の性能のために、DRAMデバイスを所望のページ
モード操作で操作することができることは注目される。
【0039】その後図8に進行して、MCONブロック
404において用いられた種々のステートマシン及び他
のロジックを指示するブロックが示される。多くのステ
ートマシンは、実際の情報及び制御機能を形成して、組
み合わせられる。第1のステートマシンは、MEMSM
即ちメモリステートマシン600である。メモリステー
トマシン600は、マルチプレクサ552からのメモリ
タイミング値及びICONブロック402からのM2I
ABORT信号を受信する。プリチャージステートマシ
ン602は、もしページモード操作が発生していないな
らば、特定の記憶バンク用のプリチャージ時間が完了し
たことを指示するRASPCHG即ちRASプリチャー
ジとして参照される信号を供給するために形成される。
RASPCHG信号は、メモリステートマシン600に
供給される。更に、RASUP即ちRASアップロジッ
ク604は、メモリサイクルが待機中でない時に、RA
S*即ちローアドレスストローブ信号がハイ又はローを
許可するかどうかを決めるために、メモリステートマシ
ン600によって用いられるRASUP信号を形成し、
従って次の操作が性能を改善するためにページヒット又
はページミスであるかの予測を形成する。このロジック
の詳細な操作が後述される。
【0040】リフレッシュステートマシン606は、リ
フレッシュ操作を制御するために形成されるが、その操
作がかなり従来的であるので、この明細書に詳細に説明
されず、明快さのために省略される。メモリアドレスス
テートマシン608は、システムの基本クロック信号と
同様に、マルチプレクサ552からタイミング値を受信
して、メモリステートマシン600への連結信号、MS
ELRA即ちメモリ選択ローアドレス信号及びがMWE
*即ちメモリ書込イネーブル信号を出力する。MSEL
RA信号は、選択入力に基づいてロー及びカラムアドレ
スを供給するために、適切に接続されたメモリアドレス
をその入力で受信する2:1マルチプレクサ610の選
択入力に供給される。バーストアドレスブロック612
は、カラムアドレスに供給及び接続されて、バースト操
作を簡単にする。マルチプレクサ610の出力は、特定
の操作毎にメモリアドレス・バス216上でメモリ配列
214に形成されるメモリアドレスである。同様にMW
E*信号は主メモリ配列214に供給されるようにメモ
リ書込イネーブル信号である。メモリデータ制御ステー
トマシン614は形成される。それは、あるメモリタイ
ミング値を受信し、メモリステートマシン600に連結
信号を出力し、データバッファ212の適切な部分の操
作を制御する。
【0041】メモリステートマシン600は、MRAS
即ちマスタRAS及びMCAS即ちマスタCAS信号を
供給する。MRAS信号は特定のメモリ操作のためのバ
ンク値信号と結合して、特定のバンクに供給されたRA
S*<7:0>信号を形成する。もしこれが操作のため
の特定のバンク値であることをバンク値が指示するなら
ば、RASロジック616は、反転形式でその特定のバ
ンクにMRAS信号を出力する。もしバンク値が特にア
ドレスされたものでないならば、その特定のバンクのた
めのRAS*信号がハイに保持されて、メモリデバイス
が充分にプリチャージされるのを許容する。MCAS信
号は、好ましい64ビット幅用のBE*<7:0>信号
を受信するCASロジック618にも供給される。これ
らの信号は、RAS*<7..0>信号によって指示さ
れたバンクの特定のメモリデバイスをイネーブルするた
めに使用されたCAS*<7:0>信号を生成するため
に、MCAS信号とエンコードされる情報の8バイトレ
ーンを供給する。もし特定のバイトイネーブルが活性化
されないならば、その関連したCAS*信号が活性化さ
れず、それ故、メモリデバイスは、カラムアドレスを受
信しないように選択されない。これは、バイトレーンエ
ンコードを形成するCAS*信号によって単一MWE*
信号の使用を許容する。
【0042】行列406、408及び410は適切な幅
の一連のレジスタとして組織される。各行列における特
定のレジスタは、各行列と協働する3つの特定のカウン
タ値に基づいて選択される。3つのカウンタは、読出位
置カウンタと書込位置カウンタとデータ内容カウンタで
ある。読出位置カウンタは、次のサイクル用の読出デー
タが得られるべきで特定ブロックに供給される4又は8
つのレジスタの特定の位置を決定するために用いられ
る。書込位置カウンタは、データが次の操作で書かれる
べき特定のレジスタを指示するために用いられる。読出
及び書込位置カウンタは、各読出及び書込操作でそれぞ
れインクリメントされて、従って、循環ファッションで
操作される。データ内容カウンタは、行列に実際にデー
タがあるか否かを指示するために用いられる。データ内
容カウンタは、アップダウンカウンタである。データ内
容カウンタは行列への書込操作で計数が増え読出操作で
減少する。もし行列が最大値にあることによってフルで
あることをデータ内容カウンタが指示するならば、デー
タが行列から除去されるまで、データは行列に書込まれ
ていない。これらのカウンタは従来のロジックであっ
て、単純さと明快さのために示さない。従ってI2MQ
EMPTYとP2MQ EMPTY信号は0値でのデ
ータ内容カウンタに対応する。
【0043】I2M行列410の長さの故に、連想メモ
リ即ちCAMとして組織される。I2M行列レジスタ6
40及び642は図9に示され、多くが単純さのために
除去される。特定のレジスタ640、642の出力は、
マルチプレクサを経由してMCONブロック404にの
み供給されるが、協働の比較器644及び646にも供
給される。比較器644及び646の第2入力がプロッ
セッサアドレスバス204に供給されたプロセッサアド
レスを受信する。比較器644及び646は、もしプロ
ッセッサアドレスバス204で直接供給されたアドレス
がI2M行列410に含まれるアドレスの1つと等しい
ならば、特定の比較器は、その等しい信号を真に形成す
るように、等しい出力を持っている。等しい信号の出力
はANDゲート648及び650の一入力に行く。AN
Dゲート640及び650への第2入力が有効ビットレ
ジスタ652及び654によって供給される。もしデー
タがI2M行列410の特定のレジスタ640、642
に含まれないならば、有効ビットレジスタが0にセット
され、もしデータがあるならば、ビットは1にセットさ
れる。これらの有効ビットレジスタは、データがI2M
行列410に書込まれる時にセットされ、データが行列
410から読出される時にクリアされる。この様に、も
しレジスタが有効で比較器が等しいことを決定するなら
ば、特定のANDゲートの出力が、ヒットが発生したこ
とを指示するために1つの値にセットされる。ANDゲ
ート648〜650の出力は、プロセッサによって要求
される特定の読出アドレスがPCIバス98からの書込
操作としてI2M行列410に実際に存在していること
を指示するために形成されるI2MCAMHIT信号を
出力する8入力ORゲート654に供給され、それ故プ
ロセッサ200からのメモリ読出要求は、特定の位置が
I2M行列410からフラッシュされるまで、発生する
ことができない。この遅延の操作が後述されるようにア
ービタ550で見られる。
【0044】好ましい実施例において、主メモリ214
用の5つの可能な要求即ちプロセッサ対メモリ書込(P
2M)、メモリ対プロセッサ読出(P)、PCI対メモ
リ書込(I2M)、メモリ対PCI読出(M2I)及び
リフレッシュがある。P2M書込はメモリ214への書
込を参照し、M2P読出がメモリ214の読出を参照
し、両者がマイクロプロセッサ200によって始めら
る。I2M書込はメモリ214への書込を参照し、M2
I読出がメモリ214の読出を参照し、両者がPCIバ
スマスタによって始められる。EISAバスマスタから
の全てのメモリ要求は、PCIバス98上のバスマスタ
であるために必要なロジックを含むPCI−EISAブ
リッジ130に通される。従ってどんなEISA起源の
メモリ要求もPCI−EISAブリッジ130によって
有効にアサートされたメモリ要求である。一般にメモリ
要求の優先権は、幾つかの例外を除いて次の(1)第2
リフレッシュ要求、(2)P2M書込要求、(3)M2
P読出要求、(4)I2M書込要求、(5)M2I読出
要求、及び(6)第1リフレッシュ要求である。第2リ
フレッシュ要求は2つのリフレッシュが未解決であるこ
とを指示する。これが発生した時には、メモリ制御器2
34が未解決の両リフレッシュ要求を最も高い優先権に
設定して、両リフレッシュサイクルを実行する。P2M
書込要求は、優先権が第2リフレッシュを除いて他のメ
モリ要求よりいつも高い。しかしながら、もしI2M行
列410がフルであり或いはI2M行列410が空から
でなく、PCIバス98読出が未解決であるならば、信
号M P2M NOPOSTはアサートされて、PCI
書込操作が完了するまで、P2M書込要求の更なる列に
並ばせることを防止する。これは、P2M行列をクリア
できて、それによってPCIバス98からの要求を点検
するのを許容する。しかしながら信号M P2M NO
POSTのアサートは、ライトバックがPCIメモリ要
求で必要であり得るので、ライトバックサイクルを列に
並ばせるのを防止しない。
【0045】M2P読出要求は、優先権がP2M書込要
求よりいつも低いが、通常優先権がI2M書込及びM2
I読出要求より高い。操作は、P2M行列408が空で
ある時にのみ発生することができる。しかしながら、未
ロックされたM2P読出要求は、もしM2P読出がI2
M行列に待機中のI2M書込と同じアドレスにあるなら
ば、優先権がI2M書込要求より低く強制される。これ
が発生した時に、M2P要求は、一致したアドレスを持
つI2M書込要求が主メモリ214に書込まれるまで、
優先権がI2M要求より低いままである。また、M2P
読出要求は、もしI2M行列がフルであるならば、優先
権がI2M書込要求より低く強制される。追加的に、も
しI2M書込要求が待機中である間にM2I読出要求が
アサートされるならば、I2M書込要求は、優先権がM
2P読出要求より高く強制されて、I2M行列がクリア
でき、それによってM2I要求を進行することができ
る。更に、M2I読出要求は、もしM2I読出がM2P
要求毎に待機して1つ以上の仲介サイクル毎にネゲート
するならば、優先権がM2P読出要求より高く強制され
る。
【0046】I2M書込要求は、優先権が常に第2リフ
レッシュ要求及びP2M書込要求より低く、上記例外を
除いて優先権が一般にM2P読出要求より低い。I2M
書込操作は、P2M行列408が空である時にのみ発生
することができる。I2M書込要求は、優先権が常にM
2I読出要求より高い。I2M書込要求は、もしプロセ
ッサが主メモリ214のロックされたアクセスを行なっ
ているならば遅延される。従ってロックされたプロセッ
ササイクル毎に、上記説明の例外は、M2P読出要求の
より高い優先権をI2M又はM2I要求で無効にするこ
とを適用しない。
【0047】主メモリ214のロック即ち原子力のアク
セスは、マイクロプロセッサ200で駆動される信号L
OCK*によって示される。ロックされたサイクルは、
マイクロプロセッサ200が主メモリ214のアドレス
位置を読出すことができ、マイクロプロセッサ200が
同じメモリ位置に戻って書込む前に、アクセスされた位
置が他のバスマスタによって変更されないことを保証す
る。これらの型のサイクルが読出修正書込サイクルとし
て参照される。また、ロックされたサイクルは、そのオ
ペランドの1つがメモリ基準である時のXCHG(交
換)命令の実行中、セグメント(区分)又はページテー
ブル入口(エントリ)を更新している時及び割込みアク
ノリッジサイクルを実行している時のような他のバス転
送中に発生される。
【0048】M2I読出要求は、常に優先権が第2リフ
レッシュ要求、P2M書込要求及びI2M書込要求より
低い。しかしながらそれは、優先権が上記例の未ロック
されたM2P読出要求より高い。M2I読出操作は、P
2M行列408が空である時にのみ発生することができ
る。
【0049】最終的に第1リフレッシュ要求は、常に優
先権がどの他の要求より低い。しかしながら上記注目さ
れるように第2リフレッシュ要求がアサートされる時に
は、両方の第1及び第2リフレッシュ要求は、他の要求
が待機中であるかどうかに拘わらず実行される。
【0050】この仲介の更なる詳細が、これと同時出願
された連番08/324,011の表題『メモリへのア
クセスを仲介するシステム』で提供され、これによって
文献として協働する。
【0051】今図10を参照すると、メモリステートマ
シン600が詳細に示される。特定の状態バブルの次の
イタリック体の表示は、ステートマシンによって展開さ
せられた種々の出力信号、この場合MRAS及びMCA
S信号の値を指示する。1つのバブルから他のバブルに
行く矢印に隣接したフレーズは、そのパスが受け入れた
論理的条件である。もしパスが隣接した論理的条件を持
たないならば、そのパスは他の全ての場合で受け入れら
れる。移行はプロセッサクロック信号の上昇縁で実行さ
れる。コンピュータのリセット時には、ステートマシン
600の操作は、RI即ちRASアイドル状態に遷移す
る。この状態において、もし次の状態がR1状態でない
ならば、MRAS信号は、アサートされない。もし次の
状態がR1であるならば、MRAS信号は値1にセット
され、即ちローアドレスストローブ信号が供給されるよ
うにアサートされる。MCAS信号は、0レベルにネゲ
ートされる。制御は、もしプロセッサ読出操作が発生す
るようにM2P状態が真であり、もしPCI読出操作が
発生し(M2I)中止されず(!M2IABORT)ク
リアされなず(!CLRI2M)或はもしプロセッサ又
はPCIバスからの書込操作が発生して、RAS信号へ
のローアドレス確立時間がメモリアドレスステートマシ
ン608によって指示されるように一致したことを指示
するローアドレス準備完了信号(RADRRDY)が真
であり、或はプロセッサ読出場合においてもし中止され
たメモリ対PCI先読みが完了したならば適切に指示さ
れるどんな待ち時間信号もなく(WAITRADRRD
Y)、かなり速いメモリがあることを指示するローアド
レス確立時間2(RADSETUP2)信号が活性化さ
れないならば、及びリフレッシュサイクル(RFSH
ON)が発生していず、PCIバス98への現行の読出
サイクルが中止されておらず(M2IABORTCU
R)、プリチャージ期間がRASPCHG信号によって
示されるように完了したならば、RI状態からR1状態
に進行する。M2IABORT信号は、上述されるよう
にICONブロック402によって供給される。M2I
ABORTCUR信号は、MCONブロック404によ
って現在実行されているサイクルができるだけ早く中止
又は終了されるべきであることを指示する。M2IAB
ORTNEXT信号は、待機中の次のM2Iサイクルが
中止されるべきで、サイクルを単にスキップすることに
よって発生することを指示する。CLRI2M信号の展
開は、詳しく後述するが、要するに、I2M行列414
をフラッシュして読出サイクルを再実行しなければなら
ないように、修正された位置へのスヌープ読出ヒットが
発生したことを指示する。それ故、もしメモリサイクル
が指示され、列アドレス確立時間が一致され、デバイス
がプリチャージされるならば、制御はRI状態からR1
状態に進行する。他の全ての場合において制御はRI状
態に留まる。
【0052】R1状態において、MRAS信号は1即ち
ハイ及び真にセットされ、MCAS信号はローにセット
されて、これがサイクルのRASのみの部分であること
を指示する。制御は、もしRADHLD2信号が真であ
って、ホールド時間の2クロック期間が必要とされそれ
故中間のR2状態が必要とされることを指示するなら
ば、R1状態からR2状態に進行する。もしRADHL
D2信号が真でないならば、ホールド時間の1クロック
のみがRAS*信号の活性化から要求されて、制御はR
1状態からR3状態に直接進行する。R2状態におい
て、MRAS信号はアサートされ、MCAS信号がネゲ
ートされる。制御はプロセッサクロック信号の次の上昇
縁でR2状態からR3状態に進行する。
【0053】R3状態において、MRAS信号は真即ち
ハイであり、一方MCAS信号は、もし次の状態がC1
状態であるべきならばハイにセットされ、さもなければ
MCAS信号がローにセットされる。制御は、もしカラ
ムアドレス準備完了(CADRRDY)信号がメモリア
ドレスステートマシン608によって形成されるように
真であって特定のカラムアドレス確立時間を指示するな
らば、読出又は書込が満たされ、PCI読出操作が発生
し或はメモリ対プロセッサバス読出操作が発生している
ならば、及びメモリ操作が読出データ毎に待機して止ま
らないならば、或は、プロセッサ対メモリ又はPCIバ
ス対メモリからの書込操作がメモリデータステートマシ
ン614によって形成されるMDVALID信号によっ
て指示されるように有効であるデータで発生するなら
ば、R3状態からカラム状態の最初のC1状態に進行す
る。それ故、もしカラムアドレス確立時間が一致し、書
込場合毎に適切に有効である書込操作データの指示が形
成されるならば、制御はR3状態からC1状態に進行す
る。さもなければ制御は、満足すべきタイミング状態の
ために待機するR3状態に留まる。
【0054】C1状態において、MRAS及びMCAS
信号はサイクルのCAS部分が発生していることを指示
するためにハイである。制御は、もしCASPW3即ち
CASパルス幅3クロック信号が真であるならば、C1
状態からC2状態に進行する。制御は、もしCASPW
3信号が真でないならば、C1状態からC3状態に直接
進行し、制御が常にプロセッサクロック信号の次の上昇
縁でC2状態からC3状態に進行する。C2状態におい
て、MRAS及びMCAS信号も真である。従って、C
2状態は、必要時に供給される追加のクロック期間を有
するより遅いプロセッサ又はより速いメモリが真である
ように、もしCASパルス幅がより狭くできるならばス
キップされる。
【0055】C3状態において、MCAS信号は0レベ
ルにネゲートされて、特定のメモリサイクルの完了を指
示し、MRAS信号は、もし次の状態がRI状態である
ならば或はもし特定のサイクルが中止されるならば0に
セットされる。さもなければMRAS信号はハイ即ちア
サートされた状態に留まって、もし適切ならばページモ
ードの操作を許容する。制御は、もし486及びペンテ
ィアムプロセッサ用の望ましい操作であるバースト操作
が発生せず或は現行のメモリ対PCI読出サイクルが後
述されるように中止され、もし次のメモリ対PCI読出
操作が中止されず、M2IABORT信号又はCLRI
2M信号によって示されるようにM2Iサイクルが中止
されるべきことのどんな指示もなく、非リフレッシュサ
イクルが発生し(M2P+ADDRRDY)これがペー
ジヒットでなく、リフレッシュサイクルが発生し或いは
どんなサイクルも待機中でなくて、次のサイクルの予測
がページミスであることをRASUPブロック604が
指示したことを示すRASUP信号が真であるならば、
C3状態からRI状態に進行する。RAS_UP信号
は、次に述べる通り、発生される。
【0056】RAS UP=!((!WRITEBAC
K && P2M)||(!MDATARD && M
2P)||(!Q I2MQEMPTY && I2
M)||(!M2IABORTCUR && M2IM
ULREAD && !M2IABORTNEXT)|
|HIT2MOD)
【0057】それ故、RAS*信号はロー即ち、次のL
1或はL2キャッシュからのライトバックではないプロ
セッサ対メモリ書込操作、プロセッサコード読出操作、
待機中の書込操作を有するPCIバス書込操作、中止さ
れなかったPCIバス98からのメモリ読出多重操作或
いはライトバック操作が発生したのみを指示する修正さ
れたアドレスへのヒットをページモードに保持される。
他の全ての場合においてRASUP信号は、プリチャー
ジがアイドル期間中に発生できるようにフルな新規ペー
ジアクセスを始めるために良好と考慮されるように真で
ある。
【0058】もしC3状態からRIへの遷移のための状
態が真でないならば、制御はC3状態からRN状態即ち
RASローアイドル状態に進行する。この状態におい
て、MRAS信号はもし次の状態がRI状態であるなら
ばローであり、さもなければMRAS信号中がアサート
される。MCAS信号はもし次の状態がC1であるなら
ばアサートされ、さもなければMCAS信号がロー状態
に留まる。制御は、もしカラムアドレス確立時間が一致
し、発生しているどんな中止操作もないならば、概して
バースト操作毎にRNからC1状態に進行する。制御
は、サイクルが中止され、即ちページミスであるプロセ
ッサ非バースト読出が次に発生することを一般に指示す
る状態下でRN状態からRI状態に進行する。他の全て
の場合において制御は、サイクルを実行する必要があり
或いは中止又はページミスが発生するまでローのRAS
*信号でアイドルするRN状態に留まる。それ故、メモ
リステートマシン600は、適当なバンクのタイミング
値に基づいてMRAS及びMCAS信号を駆動し、これ
らのタイミング値が上述されるように変化できることが
理解できる。
【0059】メモリアドレスステートマシン608は図
11に示される。ステートマシン608は、リセット時
にRAI状態で始まる。この状態においてRADRRD
Y信号及びCADRRDY信号は、列及びカラムアドレ
スが準備できていないことを指示するためにローにセッ
トされ、MSELRA信号は、まず、メモリデバイスに
供給されるべきローアドレスを選択するためにハイにセ
ットされる。MWE*信号は、リセット時及びRAI状
態に入った後に1即ちネゲートレベルにセットされ、後
述されるように、CH1状態から入った第1状態後のC
H1状態値と等しくされる。制御は、もしアクティブな
サイクルがPCIバス98又はプロセッサ200から待
機中であり、先読み操作の次のサイクルが中止されるべ
きでないならばRAI状態からRH1状態に進行する。
現行のM2I読出サイクルは、M2IABORT信号の
受入或はライトバックが発生しているようなある状態の
下で中止され、一方次のM2I読出サイクルはM2IN
A信号が受信された時に中止されるがM2IABORT
信号が受信される時にサイクルが始まらない。他の全て
の場合において、制御がRAI状態でループする。
【0060】RH1状態において、CADRRDY信号
がローにセットされ、RADRRDY信号は、RAI状
態から入った時にM2P即ちメモリ対プロセッサ読出の
値にセットされ、後述されるようにCH2状態からの入
口で0と等しく、RH1状態に入った後に1レベルにセ
ットされる。MSELRA及びMWE*信号は、ローア
ドレスが選択され、書込操作が指示されないようにハイ
レベルにセットされる。制御は、もしMRAS信号がメ
モリステートマシン600から真であり、RADHLD
2信号即ちローアドレスホールド時間がセットされてよ
り遅いメモリデバイスを指示するならばRH1状態から
RH2に進行する。制御は、もしMRAS信号が真であ
り、RADHLD2信号がセットされないならば、RH
1状態から、制御がRH2状態の次のクロック信号で進
行する所でもあるCH1状態に直接進行する。他の全て
の場合で操作はRH1状態でループする。RH2状態に
おいて、RADRRDY信号及びCADRRDY信号は
ローにセットされ、MSELRA及びMWE*信号はハ
イ状態にセットされる。制御はRH2からCH1状態に
進行する。
【0061】CH1状態において、RADRRDY信号
は、ローアドレス確立時間が一致しなかったことを指示
するためにローである。CADRRDY信号は、状態に
入った直後にハイ即ち真値にセットされる。入口で、C
ADRRDY信号は、もし短CASアドレス確立時間
(!CADSETUP2)が適切な読出又は書込毎にセ
ットされたならばハイにセットされ、そうでなければロ
ーにセットされる。MSELRA信号は、カラムアドレ
スが選択されることを指示するために0にセットされ、
MWE*信号は、もし書込操作が発生しているならばロ
ーである。
【0062】制御は、もしメモリステートマシン600
がRN状態にあり、サイクルが中止され又はプロセッサ
読出ページミスが待機中であるならばCH1状態からR
AI状態に進行する。制御は、もしメモリステートマシ
ンがRN状態になく、或いはサイクルが完全に中止され
ず、或いはプロセッサ読出サイクルがページヒットであ
るならばCH1状態からCH2状態に進行する。CH2
状態において、RADRRDY及びCADRRDY信号
はどんなアドレスも準備完了ができていないことを指示
するためにローにセットされる。MSELRA信号はロ
ーにセットされ、MWE*はローにセットされて、書込
操作が発生しカラムアドレスが形成されていることを指
示する。制御は、メモリステートマシンがC3状態にあ
る時の実行中のバーストサイクル毎に或いはプロセッサ
読出ページヒット操作の待機中毎にCH2状態からCH
1状態に進行する。制御は、もしサイクルが中止され或
はアイドル状態が存在するならば、もしRAS*信号が
ハイにセットされるべきであるならばCH2状態からR
AI状態に進行する。制御は、もしプロセッサ読出ペー
ジミス操作が発生するべきであって、メモリステートマ
シン600がサイクルの終わりにあるならばCH2から
RH1状態に進行する。
【0063】それ故、メモリアドレスステートマシン6
00は、DRAMデバイスのためにMWE*信号を適切
に供給して、アドレスマルチプレクサ610を制御す
る。追加的に、RADRRDY及びCADRRDY即ち
列及びカラムアドレス準備完了信号は、メモリタイミン
グレジスタに供給されるように、カラム及びローアドレ
ス確立時間に基づいてメモリステートマシン600に供
給される。
【0064】MD即ちメモリデータステートマシン61
4は図12で説明される。ステートマシン614は、リ
セット時にIDLE状態で始まる。制御は、中止されず
リフレッシュが発生していないプロセッサ又はPCIバ
ス98読出操作用にIDLE状態からRD状態に進行す
る。制御は、もしプロセッサ対メモリ書込操作が発生し
どんなリフレッシュもないならば或いはもしPCIバス
対メモリ書込操作が発生しどんなリフレッシュも再びな
いならば、DCD状態に進行する。さもなければ制御は
IDLE状態に留まる。制御は、もしメモリステートマ
シンがC3又はRN状態にあり、サイクルが中止され或
いはバーストサイクルでなく、それが33MHzプロセ
ッサによる書込操作であるならば、RD状態からDCD
状態に進行する。制御は、もしMRASがネゲートさ
れ、サイクルが中止され又はメモリステートマシンがC
3又はRN状態にあり、サイクルがバーストでなく又は
中止中で、非33MHzプロセッサ書込操作又はPCI
バス98書込サイクルが待機中で、どんなサイクルもア
クティブでないならば、RD状態からIDLE状態に進
行する。他の全ての場合で制御はRD状態に留まる。
【0065】制御は、もしMDSETUP2信号が真で
なくてこれが高速メモリデータ確立場合であることを指
示し、メモリステートマシン600がC2状態になく、
33MHz操作がプロセッサのために示されるならば、
DCD状態からDH1状態に進行する。他の全ての場合
で制御はDCD状態からDS2状態に進行する。制御
は、もしプロセッサ200が33MHzで稼働中でなく
MDSETUP2信号がより遅いメモリデータ確立時間
を指示するためにセットされたならば、DS2状態から
DS3状態に進行する。他の全ての場合で制御はDS2
からDH1状態に進行する。制御はクロック信号の次の
上昇縁でDS3状態からDS1状態に進行する。
【0066】DH1状態において、MDVALID信号
は、1にセット即ちアサートされて、カラムアドレスス
トローブへのメモリデータ確立時間が一致したことを指
示する。これは、メモリ制御ステートマシン600をC
1状態に進行することを許容する。制御は、もし更なる
書込操作が待機中であるならば、DH1状態からDCD
状態に進行し、そうでなければDH2状態に進行する。
DH2状態において、MDVALID信号は、メモリが
もはや有効でないことを指示するために、0にセットさ
れる。MDVALID信号の値は、リセット時のクリア
を除いて、DH1及びDH2状態以外のどんな状態にお
いても変化しない。制御は、もしどんな書込操作もPC
Iバス98から或いはプロセッサ200から待機中でな
いならば、DH2状態からIDLE状態に進行する。他
の全ての場合で制御はDH2状態からDCD状態に進行
する。この様に、メモリデータステートマシン614
は、メモリデータが適切に設定されている時に、MDV
ALID信号をメモリステートマシン600に供給す
る。
【0067】プリチャージステートマシン602は図1
3に示される。リセット時にステートマシン602の操
作は、A状態から始まる。制御はMRAS信号がアサー
トされない時にA状態に留まる。MRAS信号がアサー
トされた時には、制御がプリチャージ時間が定義された
クロック数に依存してB、C、D又はE状態の1つに進
行する。制御は、5クロック用のB状態、4クロック用
のC状態、3クロック用のD状態或いは2クロック用の
E状態に進行する。MRAS信号がアサートされない時
には、制御がB状態からC、D、Eと序列的に進行す
る。さもなければ制御は各特定の状態に留まる。その後
制御はMRAS信号がデアサートされる時に、E状態か
らA状態に戻って進行する。それ故、プリチャージステ
ートマシン602は、特定のメモリ操作の開始時にA状
態を出発し、その後MRAS信号がネゲートされてプリ
チャージ期間が始まるまで、残りの状態を実行し始めな
い。これは、たとえバンクが連続メモリ操作でスイッチ
されたとしても、もしリフレッシュ操作が無視されるな
らば、所定のどのバンク毎の適当なプリチャージ時間に
帰着することが注目される。これは、上記注目されるよ
うに、特定のバンクが選択されない時に、そのバンク用
のRAS*信号がハイにセットされてプリチャージ期間
にあったので発生する。従ってもしバンクが選択されな
いならば、全てのケースで必要とされた再充電を供給す
るのに十分な少なくとも1つのフルメモリサイクルを通
してプリチャージされた。従って、プリチャージ時間
は、現行のサイクルが動作している特定のメモリバンク
のそれ毎にセットされて、もし続けざまに起きるサイク
ルがその特定のメモリバンクで発生するならば、メモリ
デバイスが適切にプリチャージされる。
【0068】しかしながら、リフレッシュ操作は、好ま
しい実施例で知られていないように、リフレッシュサイ
クル後にどれかのバンクが要求されるであろうこの操作
を幾分格下げして、それで好ましい実施例の設計を簡単
にするために、すべてのDRAM形式毎のプリチャージ
値が初期化又はPOSTソフトウェアによって最悪の場
合を想定してセットされる。これはある場合性能を減少
させるが設計を簡単にする。僅かにより複雑な設計は、
好ましくはリフレッシュサイクル後の第1プリチャージ
操作毎にのみ予め決定されたレジスタに供給された最悪
値を用い、その後操作が各バンク毎に最適のタイミング
に回復される。
【0069】書込アドレス及びデータは、配達されたデ
ータを持つことに基づいてI2M行列410及び414
を通して横切り(スタックされ)、アービタ550がメ
モリシステムによって行列410及び414へのアクセ
スを形成する。書込アドレスは、I2M行列410に置
かれる時にPCONブロック400に供給され、PCO
Nブロック400がL1及びL2キャッシュ制御器によ
るアドレスのスヌープ制御を許容する。読出操作は、書
込操作と異なるファッションで発生する。読出アドレス
は、読出要求が発行された指示を伴ってMCONブロッ
ク404に供給される。読出アドレスは、486マイク
ロプロセッサ用の4列32ビット語及びペンティアムプ
ロセッサ用の8列32ビット語であるL2キャッシュラ
インの戻りアドレスに基づいて形成される。それ故、M
2I読出が要求される時には4列或いは8列の32ビッ
ト語が形成され、ICONブロック402が読出操作か
らのデータを必要時にPCIバス98に適切に供給す
る。読出要求指示は、後述するメモリ対PCI次のアド
レスステートマシンによって形成される。また、読出要
求は、仲介用のアービタ550及びPCONブロック4
00に供給されて、L1及びL2キャッシュが修正ライ
ンへのヒットの場合にライトバックとスヌープするのを
許容する。アービタ550がPCIバス98読出と進行
する許可を形成する時には、その後MCONブロック4
04が情報を処理することを続ける。これは、I2M行
列410及び414がどの待機中の書込操作も取出され
た後にのみ発生して、データバッファ212に供給され
るI2Mデータ行列414が指示された長さのブロック
読出操作を行なうために用いることができることは、注
目される。それ故、I2M行列410及び414が空に
される時に、読出操作は始まって、図14に示されるよ
うに、M2Iステートマシンによって制御される。ステ
ートマシンは、リセット時にA状態で始まる。もしI2
M行列414が空で、読出が要求され、L2キャッシュ
208がフラッシュしていていないならば、制御はB状
態に進行する。これは通常の読出状態である。これの代
りに、もしL2キャッシュ208がフラッシュされるな
らば、制御は、I2M行列414が空で、読出要求があ
ると仮定するとA状態からF状態に進行する。さもなけ
れば制御は、初期化されるべき読出操作を待つA状態に
留まる。
【0070】B状態から制御は4つの異なる状態の1つ
に進行する。制御は、もしM2IABORT信号が受信
されてPCIバスマスタが読出操作を中止したことを指
示したならば、或はIREQACK信号が真でアービタ
550によって決定される次の操作がPCI読出である
ことを指示しSNPDONE信号が真でPCONブロッ
ク400がレベル2キャッシュ及びプロセッサ200の
レベル1キャッシュへの読出操作アドレスをスヌープす
ることを完了したことを指示したならば、A状態に戻
る。制御は、もしM2IABORT信号がアサートされ
ず、次のサイクルがPCI読出であってアサートされた
IREQACK信号によって指示され、PCONブロッ
ク400によって指示されるように修正された(SNP
HITM)位置へのスヌープヒットでなく、スヌープ操
作がPCONブロック400によっても指示されるよう
に完了しなかったならば、B状態からC状態に進行す
る。これは、読出操作が要求されて仲介されたが、スヌ
ープ操作が行なわれず修正された位置へのヒットがまだ
発生するかもしれないので、中止されるべきでない場合
である。制御は、もし操作が中止されず、PCI読出が
仲介されなかったが、修正された位置へのスヌープヒッ
トがあり、ライトバック操作がまだ完了しなかったなら
ば、B状態からD状態に進行する。制御は、もしサイク
ルが中止されずIREQACK信号によって指示される
ように仲介され、適切なキャッシュ制御器からのライト
バック操作が発生しているように修正された位置へのス
ヌープヒットがあるならば、B状態からE状態に進行す
る。他の全ての場合においては、制御がB状態に留ま
る。
【0071】制御は、もしサイクルが中止されるならば
或いは、もしスヌープが修正された位置へのヒットなし
で完了されるならばC状態からA状態に戻って進行す
る。制御は、もしサイクルが中止されないで修正された
位置へのスヌープヒットがあったならば、C状態からE
状態に進行する。さもなければ、制御は、スヌープ操作
が完了され、サイクルが中止され、或は修正ラインへの
スヌープヒットがあるまでC状態に留まる。制御は、も
し操作が中止されるならば、或いは指示時にそのPCI
サイクルが次の操作でありスヌープが完了したならばD
状態からA状態に戻って進行する。これは、ライトバッ
クがPCI操作に取って代るように、ライトバックが完
了され、その後PCI操作が次に発生した後に発生す
る。制御は、もしそれが中止されず、PCI要求が次に
あり、スヌープが充分に完了されないならば、D状態か
らE状態に進行する。さもなければ制御はD状態に留ま
る。
【0072】E状態において、CLRI2M信号は、メ
モリ制御器210の他の部分に、ライトバックの故にI
2M行列414中のデータがフラッシュされて廃棄しな
ければならないことを指示するためにセットされる。C
LRI2MDONE信号は、このフラッシュが完了した
ことを指示する。制御は、もしサイクルが中止されず、
信号CLRI2MDONE即ち行列実行クリア信号が真
であり、スヌープがまだ完了しないならば、E状態から
F状態に進行する。制御は、もしサイクルが中止され
ず、行列414のクリアが完了され、スヌープが実行さ
れたならば、E状態からG状態に進行する。制御は、も
しサイクルが中止されるならば、E状態からA状態に進
行し、他の全ての場合E状態に留まる。
【0073】制御は、もしそれが中止されずスヌープサ
イクルが完了されたならば、F状態からG状態に進行す
る。他の制御は、もしサイクルが中止されるならば、F
状態からA状態に戻って進行する。さもなければ制御は
F状態に留まる。制御は、もしサイクルが中止されるな
らば或いはもしIREQACK信号によって示されるよ
うにそれが次のラインならば、G状態からA状態に戻っ
て進行する。
【0074】それ故、M2Iステートマシンは、バッフ
ァ212に配置されたI2M行列414を用いてメモリ
対PCIインタフェイスからの情報の転送を制御する。
データは、行列414がどの書込データもクリアされ、
その後スヌープ情報及びアービタ550が進行できる時
にのみ基づいて進行するまで転送されない。
【0075】上記注目されるように、好ましい実施例の
設計は、PCIメモリ読出多重操作が受信された時に先
読み操作を行なう。操作は、次に述べる通り進行する。
ICONブロック402は、PCIバス98からメモリ
読出多重サイクルを受信し、I2M行列414に空きが
ある時にアドレスと共にM2I読出サイクル要求をMC
ONブロック404に出力する。MCONブロック40
4は上述のように仲介して、最終的にM2I読出要求を
始める。このブロックは、操作を始めた時に、次のアド
レス即ちM2INA信号をICONブロック402に供
給して、適切な準備完了信号と共にデータをI2M行列
414に供給する。ICONブロック402は、メモリ
読出多重命令が発生していることを知り、M2INA信
号が受信され、I2M行列414がデータの他のキャッ
シュラインを受信することができる時に次のアドレスで
他のM2I読出サイクル要求を出す。ICONブロック
402もMCONブロック404から準備完了信号を受
信して、PCIバス98にデータを供給する。MCON
ブロック404はM2I読出サイクル要求を受信して、
サイクルが仲介を得た時にそれを実行する。これは、I
CONブロック402が初期読出要求毎にI2M行列4
14から全データを取去る前に月並みにある。その後M
CONブロック404は読出要求を始めて、他のM2I
NA信号を出す。その後MCONブロック404は、I
2M行列414にデータを供給する。ICONブロック
402は、このM2INA信号を受信して、他のキャッ
シュラインを受信するためにI2M行列414に利用で
きるスペースがあるかどうかをわかるために再び調べ
る。ICONブロック402がPCIバス98に十分な
データを供給したので空きがある時には、次のM2I読
出要求がMCONブロック404に供給される。このプ
ロセスは、メモリ読出多重が完了し、ページの境界が越
え、或いはPCIバスマスタがサイクルを中止するまで
も続行される。
【0076】中止場合は、待機中の先読み操作をできる
だけ早く終わらせて全体のキャッシュラインの回復をセ
ーブするので関心の1つである。これは、MEMSM6
00、MADRSM608、MDCDSM614及びM
2Iステートマシンの説明で理解することができる。こ
の迅速な終端は、C3及びRN状態からRI又はC1状
態への戻りのようにMEMSM600で理解されて、現
行の個々の読出操作が完了した途端サイクルが終わり、
従ってフルキャッシュライン読出の完了前に潜在的に終
了する。同様に、MADRSM608は、もしサイクル
が始まらなかったならば或いはカラムアドレスが供給さ
れた時にRA1状態に戻る。MDCDSM614は、も
しどんな操作も始められなかったならば或いはもしME
MSM600がC3又はRN状態にあるならばIDLE
状態に戻る。M2Iステートマシンは、M2IABOR
T信号が受信される時にA状態に戻る。中止の検知にお
いて、ICONブロック402は、読出サイクルの終わ
りを決定し、どんなデータもないことを指示するために
I2M行列414中のデータへのそのポインタをリセッ
トし、従って先読データを効果的に捨てている。従って
先読み操作は、中止指示を受信した直後に終了して、フ
ルキャッシュライン回収を完了しないことによって時間
を節約する。
【0077】先読できる次のアドレス指示は、図15に
示されたM2INA即ちメモリ対PCI次のアドレスス
テートマシンによって形成される。初期読出アドレスは
従来の読出要求メカニズムを使っ形成された。M2IN
A信号は、次の読出サイクルが存在できることを指示す
るために、MCONブロック404に供給される。この
ステートマシンは、リセット時にA状態から操作を始
め、もしPCI読出操作がIREQACK信号によって
示されるように次であり中止されないならば、B状態に
進行する。さもなければ制御はA状態に留まる。制御
は、もしサイクルが中止されているならば、或いはもし
I2M行列414がライトバックの為にクリアされるべ
きであるならば、或いはもしスヌープが完了されM2I
ACK信号が供給されて、先の読出操作がMCONブロ
ック404で確認されること指示するならば、B状態か
らA状態に戻って進行する。さもなければ制御はB状態
に留まる。制御は、もしサイクルが中止されず、行列を
クリアする必要がなく、スヌープ操作が完了しなくて、
それなのにM2IACK信号が受信されたならば、B状
態からC状態に進行する。制御は、もしサイクルが中止
され、I2M行列414がクリアされ、或いはスヌープ
が完了したならば、C状態からA状態に進行し、さもな
ければC状態に留まる。従ってM2INAステートマシ
ンは、中止指示の受信時にアイドルに戻る。
【0078】M2INA信号はMCONブロック404
に供給されて、次のアドレスが供給され、即ち、他の読
出要求がI2M行列414にPCIバス98の前に満た
し続けるために発行することができることを指示する。
M2INA信号は、もしサイクルが中止されずI2M行
列414がクリアされず前の読出サイクルのスヌープが
完了しM2INAステートマシンがC状態或いはB状態
にありM2IACK信号が受信されたならば、出力され
る。このM2INA信号は、先のアドレスの処理がMC
ONブロック404によって完了し、次の読出アドレス
の処理が始まることができる指示である。読出アドレス
値の実際のインクリメントは、8ビットカウンタを用い
たICONブロック402で行なわれ、従って全体的な
先読み長を256のアドレス値に制限している。カウン
タが255に到達した時に、先読み操作は、メモリ読出
多重を未接続にさせることによって単純さのために説明
されなかったロジックによっって終端する。新規アドレ
スは、メモリ読出多重操作を続けるために、PCIバス
マスタから受信されなければならない。
【0079】それ故、好ましい実施例によるメモリ制御
器は、多くの改善を含む。それは、非常に柔軟で、複数
のプロセッサ及びメモリデバイス速度との使用で単純で
まだ高性能を許容し、柔軟性及び規模の経済性を許容す
る。それは、プロセッサ及びPCIバス状態でのアイド
ル状態のRAS*信号のレベル予測を基準にして改善さ
れた性能を提供する。それは、幾つかのバスから非常に
深い書込ポイントを許して、容易に種々のコヒーレンシ
問題を扱う。また、それは、基本的な読出操作が中止さ
れた時に、先読みサイクルを迅速に終了する速い方法を
提供する。
【0080】発明の前述の開示及び記述がそれの実例で
説明的である。サイズ、形、材料、構成要素、回路要
素、配線接続及びコンタクトの種々の変形が、説明され
た回路の詳細及び構成及び操作方法と同様に発明の精神
を逸脱しないで作られてもよい。
【図面の簡単な説明】
【図1】好ましい実施例によるコンピュータシステムの
システム基板のブロック図である。
【図2】図1のコンピュータシステムと使用される本発
明によるプロセッサ基板のブロック図である。
【図3】図1のコンピュータシステムと使用されるビデ
オのシステムのブロック図である。
【図4】図2のプロセッサ基板のメモリ制御器のブロッ
ク図である。
【図5】図2のデータバッファのブロック図である。
【図6】図4のメモリ制御器における特定のメモリサイ
クルのためにメモリタイミング情報及びアドレスを形成
するために使用された回路のブロック図である。
【図7】図4のメモリ制御器の部分のブロック図であ
る。
【図8】図4のメモリ制御器の部分のブロック図であ
る。
【図9】図4のメモリ制御器のCAMヒット検知ロジッ
クのブロック図である。
【図10】図4のメモリ制御器の種々の部分の回路の操
作毎のステートマシン図である。
【図11】図4のメモリ制御器の種々の部分の回路の操
作毎のステートマシン図である。
【図12】図4のメモリ制御器の種々の部分の回路の操
作毎のステートマシン図である。
【図13】図4のメモリ制御器の種々の部分の回路の操
作毎のステートマシン図である。
【図14】図4のメモリ制御器の種々の部分の回路の操
作毎のステートマシン図である。
【図15】図4のメモリ制御器の種々の部分の回路の操
作毎のステートマシン図である。
【符号の説明】
200 プロセッサ 202 データバス 204 アドレスバス 206 制御バス 208 L2キャッシュメモリ 210 DRAM制御器(CMC) 214 バンク構成のメモリ 216 メモリアドレスバス 218 メモリデータバス 220 メモリ制御バス 222 クロック分配回路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジョン・イー・ラーソン アメリカ合衆国77449テキサス州ケイテ ィ・フリント・ヒル・ドライブ18354 (72)発明者 ゲアリ・ダブリュー・トム アメリカ合衆国77375テキサス州トムボー ル・マラット・コート16406 (72)発明者 マイケル・ジェイ・コリンズ アメリカ合衆国77375テキサス州トムボー ル・レイクストーン・ドライブ16030 (72)発明者 マイケル・モライアティ アメリカ合衆国77379テキサス州スプリン グ・サニイ・ポイント・ドライブ8830

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】バンクに配置された複数のDRAMと使用
    されるDRAM制御器であって、このDRAM制御器
    は、バスからアドレス及びサイクルタイミング情報を受
    信し、 DRAMのどのバンクが受信されたアドレスのためにア
    クセスされるべきであるかを決定する手段と、 各バンク毎にDRAM形式を指示する手段と、 各DRAM形式毎にDRAMサイクルの部分のための複
    数のDRAMタイミングパラメータを記憶する手段と、 決定されたバンク毎にDRAM形式指示及びバンク決定
    に基づいて前記受信されたアドレスに適用できる複数の
    DRAMタイミングパラメータを決定する手段と、 決定した複数のDRAMタイミングパラメータを受信
    し、決定したバンク及びアドレスがその特定のバンク用
    の決定された複数のDRAMタイミングパラメータに従
    ってDRAMに列及びカラムアドレス及びアドレススト
    ローブを供給する手段とを備えたDRAM制御器。
  2. 【請求項2】DRAM制御器が更にクロック信号を受信
    し、前記列及びカラムアドレス及びアドレスストローブ
    を供給する手段は、受信されたクロック信号に基づいて
    同期操作される請求項1に記載のDRAM制御器。
  3. 【請求項3】列及びカラムアドレス及びアドレスストロ
    ーブを供給する前記手段は、ネゲートされたレベルで決
    定されたバンク以外のDRAMのバンクに列アドレスス
    トローブを供給する請求項1に記載のDRAM制御器。
  4. 【請求項4】DRAMがページモードデバイスであっ
    て、列及びカラムアドレス及びアドレスストローブを供
    給する前記手段がページヒット検知器を含み、もしペー
    ジヒットが検知されるならば、ページモードの列及びカ
    ラムアドレス及びアドレスストローブを供給する請求項
    1に記載のDRAM制御器。
  5. 【請求項5】DRAMの各バンクに割り当てられたアド
    レス範囲を指示する手段を更に備えた請求項1に記載の
    DRAM制御器。
  6. 【請求項6】前記複数のDRAMタイミングパラメータ
    は、ローアドレスストローブからのローアドレスホール
    ド時間、カラムアドレスストローブへのカラムアドレス
    確立時間、ローアドレスストローブへのローアドレス確
    立時間及びカラムアドレスストローブ幅を含む請求項1
    に記載のDRAM制御器。
  7. 【請求項7】前記カラムアドレス確立時間パラメータ
    は、読出及び書込操作毎に個々のパラメータを含む請求
    項6に記載のDRAM制御器。
  8. 【請求項8】複数のバンクに配置された複数のDRAM
    と、 メモリアドレス及びサイクルタイミング情報を供給する
    プロセッサと、 前記プロセッサのメモリアドレス及びサイクルタイミン
    グ情報を転送するバスと、 前記バスからアドレス及びサイクルタイミング情報を受
    信するDRAM制御器とを備え、前記DRAM制御器
    は、 DRAMのどのバンクが受信されたアドレスのためにア
    クセスされるべきであるかを決定する手段と、 各バンク毎にDRAM形式を指示する手段と、 各DRAM形式毎にDRAMサイクルの部分のための複
    数のDRAMタイミングパラメータを記憶する手段と、 決定されたバンク毎にDRAM形式指示及びバンク決定
    に基づいて前記受信されたアドレスに適用できる複数の
    DRAMタイミングパラメータを決定する手段と、 決定した複数のDRAMタイミングパラメータを受信
    し、決定したバンク及びアドレスがその特定のバンク用
    の決定された複数のDRAMタイミングパラメータに従
    ってDRAMに列及びカラムアドレス及びアドレススト
    ローブを供給する手段とを含むコンピュータシステム。
  9. 【請求項9】クロック信号を供給する手段を更に備え、 前記DRAM制御器が前記クロック信号を受信し、前記
    列及びカラムアドレス及びアドレスストローブを供給す
    る前記DRAM制御器手段は、受信されたクロック信号
    に基づいて同期操作される請求項8に記載のコンピュー
    タシステム。
  10. 【請求項10】列及びカラムアドレス及びアドレススト
    ローブを供給する前記DRAM制御器手段は、ネゲート
    されたレベルで決定されたバンク以外のDRAMのバン
    クに列アドレスストローブを供給する請求項8のコンピ
    ュータシステム。
  11. 【請求項11】DRAMがページモードデバイスであっ
    て、列及びカラムアドレス及びアドレスストローブを供
    給する前記DRAM制御器手段がページヒット検知器を
    含み、もしページヒットが検知されるならば、ページモ
    ードの列及びカラムアドレス及びアドレスストローブを
    供給する請求項8のコンピュータシステム。
  12. 【請求項12】前記DRAM制御器がDRAMの各バン
    クに割り当てられたアドレス範囲を指示する手段を更に
    備えた請求項8のコンピュータシステム。
  13. 【請求項13】前記複数のDRAMタイミングパラメー
    タは、ローアドレスストローブからのローアドレスホー
    ルド時間、カラムアドレスストローブへのカラムアドレ
    ス確立時間、ローアドレスストローブへのローアドレス
    確立時間及びカラムアドレスストローブ幅を含む請求項
    8のコンピュータシステム。
  14. 【請求項14】前記カラムアドレス確立時間パラメータ
    は、読出及び書込操作毎に個々のパラメータを含む請求
    項13に記載のコンピュータシステム。
JP7293749A 1994-10-14 1995-10-16 異なったサイクルで異なる速度のメモリデバイスにアクセスできるメモリ制御器 Pending JPH08227377A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US32351794A 1994-10-14 1994-10-14
US08/323,517 1994-10-14

Publications (1)

Publication Number Publication Date
JPH08227377A true JPH08227377A (ja) 1996-09-03

Family

ID=23259536

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7293749A Pending JPH08227377A (ja) 1994-10-14 1995-10-16 異なったサイクルで異なる速度のメモリデバイスにアクセスできるメモリ制御器

Country Status (5)

Country Link
US (1) US5778413A (ja)
EP (1) EP0707268A3 (ja)
JP (1) JPH08227377A (ja)
AU (1) AU703750B2 (ja)
CA (1) CA2160200A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002288036A (ja) * 2001-03-27 2002-10-04 Nec Corp メモリ読出し回路およびice
US6715096B2 (en) * 2000-02-14 2004-03-30 Renesas Technology Corp. Interface circuit device for performing data sampling at optimum strobe timing by using stored data window information to determine the strobe timing
KR20160008620A (ko) * 2013-05-16 2016-01-22 어드밴스드 마이크로 디바이시즈, 인코포레이티드 영역-특정 메모리 액세스 스케줄링을 가진 메모리 시스템

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6092165A (en) * 1996-08-16 2000-07-18 Unisys Corporation Memory control unit using a programmable shift register for generating timed control signals
US5996042A (en) * 1996-12-16 1999-11-30 Intel Corporation Scalable, high bandwidth multicard memory system utilizing a single memory controller
US6279087B1 (en) * 1997-12-22 2001-08-21 Compaq Computer Corporation System and method for maintaining coherency and improving performance in a bus bridge supporting write posting operations
US6154821A (en) * 1998-03-10 2000-11-28 Rambus Inc. Method and apparatus for initializing dynamic random access memory (DRAM) devices by levelizing a read domain
US6122744A (en) * 1998-05-20 2000-09-19 Intel Corporation Selecting a routine based on processing power
US6810470B1 (en) * 2000-08-14 2004-10-26 Ati Technologies, Inc. Memory request interlock
US6763444B2 (en) 2001-05-08 2004-07-13 Micron Technology, Inc. Read/write timing calibration of a memory array using a row or a redundant row
US7120068B2 (en) * 2002-07-29 2006-10-10 Micron Technology, Inc. Column/row redundancy architecture using latches programmed from a look up table
TWI282057B (en) * 2003-05-09 2007-06-01 Icp Electronics Inc System bus controller and the method thereof
JP4536361B2 (ja) * 2003-11-28 2010-09-01 株式会社日立製作所 データ転送装置、記憶デバイス制御装置、記憶デバイス制御装置の制御方法
US7579683B1 (en) * 2004-06-29 2009-08-25 National Semiconductor Corporation Memory interface optimized for stacked configurations
US8156276B2 (en) 2005-08-01 2012-04-10 Ati Technologies Ulc Method and apparatus for data transfer
US7999817B1 (en) 2006-11-02 2011-08-16 Nvidia Corporation Buffering unit to support graphics processing operations
US8139071B1 (en) * 2006-11-02 2012-03-20 Nvidia Corporation Buffering unit to support graphics processing operations
US8762654B1 (en) 2008-07-02 2014-06-24 Marvell International Ltd. Selectively scheduling memory accesses in parallel based on access speeds of memory
US8706951B2 (en) 2008-07-18 2014-04-22 Marvell World Trade Ltd. Selectively accessing faster or slower multi-level cell memory
US8918657B2 (en) 2008-09-08 2014-12-23 Virginia Tech Intellectual Properties Systems, devices, and/or methods for managing energy usage
US8248883B1 (en) * 2010-08-31 2012-08-21 Xilinx, Inc. Non-volatile I/O device based memory
CN112181703B (zh) * 2020-09-28 2022-10-28 中国人民解放军国防科技大学 支持容处理器与内存板间软错误重发机制的cam及应用方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR1402975A (fr) 1964-05-05 1965-06-18 Lance fixe articulée
US4694395A (en) * 1985-11-25 1987-09-15 Ncr Corporation System for performing virtual look-ahead memory operations
JPH0212541A (ja) * 1988-04-29 1990-01-17 Internatl Business Mach Corp <Ibm> コンピユーテイング・システム及びその動作方法
US5301278A (en) * 1988-04-29 1994-04-05 International Business Machines Corporation Flexible dynamic memory controller
US5034917A (en) * 1988-05-26 1991-07-23 Bland Patrick M Computer system including a page mode memory with decreased access time and method of operation thereof
US5159676A (en) * 1988-12-05 1992-10-27 Micron Technology, Inc. Semi-smart DRAM controller IC to provide a pseudo-cache mode of operation using standard page mode draws
US5237672A (en) * 1989-07-28 1993-08-17 Texas Instruments Incorporated Dynamically adaptable memory controller for various size memories
CA2028085A1 (en) * 1989-11-03 1991-05-04 Dale J. Mayer Paged memory controller
JPH03254497A (ja) * 1990-03-05 1991-11-13 Mitsubishi Electric Corp マイクロコンピュータ
US5394541A (en) * 1990-07-17 1995-02-28 Sun Microsystems, Inc. Programmable memory timing method and apparatus for programmably generating generic and then type specific memory timing signals
US5269010A (en) * 1990-08-31 1993-12-07 Advanced Micro Devices, Inc. Memory control for use in a memory system incorporating a plurality of memory banks
US5522064A (en) * 1990-10-01 1996-05-28 International Business Machines Corporation Data processing apparatus for dynamically setting timings in a dynamic memory system
JP3992757B2 (ja) * 1991-04-23 2007-10-17 テキサス インスツルメンツ インコーポレイテツド マイクロプロセッサと同期するメモリ、及びデータプロセッサ、同期メモリ、周辺装置とシステムクロックを含むシステム
US5353423A (en) * 1991-06-21 1994-10-04 Compaq Computer Corporation Memory controller for use with write-back cache system and multiple bus masters coupled to multiple buses
US5333293A (en) * 1991-09-11 1994-07-26 Compaq Computer Corp. Multiple input frequency memory controller
US5307320A (en) * 1992-09-23 1994-04-26 Intel Corporation High integration DRAM controller
US5537555A (en) * 1993-03-22 1996-07-16 Compaq Computer Corporation Fully pipelined and highly concurrent memory controller
US5475829A (en) * 1993-03-22 1995-12-12 Compaq Computer Corp. Computer system which overrides write protection status during execution in system management mode
EP0619546A1 (en) * 1993-04-05 1994-10-12 Motorola, Inc. Programmable memory controller and method for configuring same

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6715096B2 (en) * 2000-02-14 2004-03-30 Renesas Technology Corp. Interface circuit device for performing data sampling at optimum strobe timing by using stored data window information to determine the strobe timing
JP2002288036A (ja) * 2001-03-27 2002-10-04 Nec Corp メモリ読出し回路およびice
KR20160008620A (ko) * 2013-05-16 2016-01-22 어드밴스드 마이크로 디바이시즈, 인코포레이티드 영역-특정 메모리 액세스 스케줄링을 가진 메모리 시스템
JP2016520226A (ja) * 2013-05-16 2016-07-11 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated 領域特有のメモリアクセススケジューリングを有するメモリシステム
KR20210084660A (ko) * 2013-05-16 2021-07-07 어드밴스드 마이크로 디바이시즈, 인코포레이티드 영역-특정 메모리 액세스 스케줄링을 가진 메모리 시스템

Also Published As

Publication number Publication date
EP0707268A2 (en) 1996-04-17
US5778413A (en) 1998-07-07
AU3313595A (en) 1996-04-26
AU703750B2 (en) 1999-04-01
EP0707268A3 (en) 1996-07-31
CA2160200A1 (en) 1996-04-15

Similar Documents

Publication Publication Date Title
US5938739A (en) Memory controller including write posting queues, bus read control logic, and a data contents counter
US5634112A (en) Memory controller having precharge prediction based on processor and PCI bus cycles
US6209067B1 (en) Computer system controller and method with processor write posting hold off on PCI master memory request
JPH08227377A (ja) 異なったサイクルで異なる速度のメモリデバイスにアクセスできるメモリ制御器
US5524235A (en) System for arbitrating access to memory with dynamic priority assignment
US6393531B1 (en) Queue based data control mechanism for queue based memory controller
US5537555A (en) Fully pipelined and highly concurrent memory controller
CA2118662C (en) Memory controller having all dram address and control signals provided synchronously from a single device
US6260095B1 (en) Buffer reservation method for a bus bridge system
US5596741A (en) Computer system which overrides write protection status during execution in system management mode
EP0700003B1 (en) Data processor with controlled burst memory accesses and method therefor
US6076129A (en) Distributed data bus sequencing for a system bus with separate address and data bus protocols
JPH08297607A (ja) 特殊バスサイクルに応答してキャッシュメモリを低電力モードに移行させる回路
EP0663087A1 (en) Method and apparatus for non-snoop window reduction
US5974501A (en) Method and apparatus for detecting memory device types
US5701433A (en) Computer system having a memory controller which performs readahead operations which can be aborted prior to completion
JPH06318174A (ja) キャッシュ・メモリ・システム及び主メモリに記憶されているデータのサブセットをキャッシュする方法
US5649232A (en) Structure and method for multiple-level read buffer supporting optimal throttled read operations by regulating transfer rate
US5737546A (en) System bus with separate address and data bus protocols
US6006288A (en) Method and apparatus for adaptable burst chip select in a data processing system
JPH1083343A (ja) メモリをアクセスする方法
US6651180B1 (en) Method and apparatus for generating timeouts to a system based counting intervals supplied by a shared counting device
EP0398191A2 (en) Quadruple word, multiplexed, paged mode and cache memory
Bryant et al. The performance and PowerPC Platform specification implementation of the MPC106 chipset
JP2009042992A (ja) バス制御装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040906

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041006

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050106

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050411