JPH076084A - フルパイプライン共起メモリ制御器 - Google Patents

フルパイプライン共起メモリ制御器

Info

Publication number
JPH076084A
JPH076084A JP6075302A JP7530294A JPH076084A JP H076084 A JPH076084 A JP H076084A JP 6075302 A JP6075302 A JP 6075302A JP 7530294 A JP7530294 A JP 7530294A JP H076084 A JPH076084 A JP H076084A
Authority
JP
Japan
Prior art keywords
state
signal
bus
input
control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP6075302A
Other languages
English (en)
Other versions
JP2597954B2 (ja
Inventor
John A Landry
ジョン・エイ・ランドリー
Gary W Thome
ガリー・ダブリュー・ソーム
Paul A Santeler
ポール・エイ・サンテーラ
Randy M Bonella
ランディー・エム・ボネーラ
Michael J Collins
マイクル・ジェイ・コリンズ
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 JPH076084A publication Critical patent/JPH076084A/ja
Application granted granted Critical
Publication of JP2597954B2 publication Critical patent/JP2597954B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • G06F13/1615Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement using a concurrent pipeline structrure

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Memory System (AREA)
  • Electrotherapy Devices (AREA)
  • Prostheses (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)
  • Image Processing (AREA)

Abstract

(57)【要約】 (修正有) 【目的】複数のサイクルを同時に駆動する。 【構成】メモリ制御器の各ステートマシーンがその機能
を完了すると、その次のスタートのために待機し、又は
進行指示をする。サイクルの前半部分を分担するステー
トマシーンは、サイクルの後半部分を分担するステート
マシーンがタスクを完了する前に、次サイクルでタスク
を始める。メモリ制御器は、各々がその関連したバスと
構成要素のある相互作用を分担し、フロントエンドブロ
ック、メモリブロック及びホストブロックとして論理上
組織される。メモリ制御器は、異なった速度のメモリデ
バイスを個々の基準で用い、各メモリデバイスがその仕
様速度で操作される。メモリ速度は、メモリの各ブロッ
ク毎に記憶され、メモリサイクルが発生している時に、
ステートマシーンに呼び出して、メモリデバイスのタイ
ミングの変更を達成する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、コンピュータと共に使
われるメモリ制御器、特にアドレスをパイプライン化し
たプロセッサと共に動作し、多重同時発生(共起)サイ
クルを許容するメモリ制御器に関する。
【0002】
【従来の技術】マイクロプロセッサ基準のコンピュータ
システムは、性能がものすごい比率で増加している。こ
の増加の殆どは、マイクロプロセッサ自身の改良に基づ
いている。例えば、クロック速度は、メインフレームに
よってのみ既に使用された値に到達している。しかしな
がら、汎用のメモリ装置(デバイス)の性能は、同じ割
合で増加していない。実際、ダイナミックランダム・ア
クセスメモリ(DRAM)は、性能が最近停滞して、努
力の大部分がメモリ容量の増加に集中している。それ
で、主メモリはボトルネックとなっている。
【0003】非常に高速で高価なスタチックRAMの少
量がデータのコピーを記憶するのに用いられるキャッシ
ュメモリシステムは、この問題を幾分軽減するが、設計
が非常に複雑で高価である。更に、貧弱なメモリ性能
は、主メモリにアクセスしなければならない時に帰って
くる。そこで、主メモリシステムの性能を改良する必要
性がまだある。
【0004】ページモードメモリ装置は、メモリシステ
ム効率を増加させる1つの方法を提供する。もし、同じ
ページとして参照されて、同じローアドレスで連続して
アクセスされたならば、カラムアドレスのみが供給され
なければならない。これは、ページヒットとして参照さ
れるケース毎にサイクル時間を劇的に減少できる。これ
は、手短なゲインで、それ自身によってかなり容易にな
されるが、いっそうの性能が常に要望される。
【0005】多くのプロセッサにおいては、各サイクル
のデータ部分の前にアドレスが供給される。これは、パ
イプラインとして参照され、メモリシステムの性能増加
を許容する。全部のアドレスデコードは、部分的に並列
動作が発生するように、データ部分が始まる前に始める
ことができる。
【0006】
【発明が解決しようとする課題】殆どの場合において、
この重複は、関連したシステムがかなりの複雑さを扱え
ないので、幾分最小、1或いは2クロックサイクルであ
る。例えば、メモリ制御器は、イベントを制御し、プロ
セッサクロックのエッジで遷移(進展)する主要ステー
トマシーンに基づいた同期制御器として適宜確立され
る。マイクロプロセッサ及びコンピュータシステムの複
雑さが増加すると、従来のメモリ制御器の仕様が非常に
制限されたものとなる。あらゆる可能なケースを扱う主
要ステートマシーンを確立することは非常に困難であ
る。圧倒的でないならば複雑さが威圧している。この結
果、数々の潜在的性能の改良が制限されなければならな
い。通常、これは、どのパイプラインも制限され、極僅
かな並列動作があることを意味する。幾つかの仕様は後
書き込み動作を許容するが、これは、他の方法において
更に複雑さを増加させる。この結果、幾つかの他の特徴
が犠牲になり、潜在的利得がなくなる。
【0007】勿論、メモリシステム性能はコスト及び速
度間に兼ね合い(トレードオフ)がある。80ナノ秒の
DRAMが適宜使用されたが、僅かに高いコストで60
ナノ秒のDRAMが利用可能である。従来のメモリ制御
器は、使用者が速度対コストの兼ね合いを許容できる異
なった速度のDRAMを使用できるが、まぜこぜ速度の
システムはどんな利益も生まない。メモリ制御器は、異
なった得度のDRAMを使用できるが、システムには1
つのみの実動作速度が許容される。それで、メモリ制御
器は、取り付けられたDRAMの最も遅い速度で動作す
る。これは、標準メモリ領域のような高速メモリ領域を
使用者に持たせず、メモリ制御器によって制御される主
システムメモリにおける拡張メモリ配置のような低速メ
モリ領域を持たせることを許容しない。この制限がメモ
リ制御器の複雑さの故に再度発生する。
【0008】それで、達成され得るメモリシステム効率
利得があるが、従来の設計限界は実際的でなく、潜在的
のみにさせる。それゆえに、プロセッサアドレスのパイ
プラインを最大限に使い、ケースの最大数に同時に多数
のサイクルを実行でき、異なる速度のメモリ装置を効果
的に使うことができメモリ制御器を持つことははっきり
望ましい。
【0009】本発明によるメモリ制御器は、いかなるプ
ロセッサパイプラインも最大限に使用し、コンピュータ
システムで5つまでの大きいサイクル数を同時に動作さ
せることを許容する。これはメモリシステムの性能にお
ける著しい改良を許容する。
【0010】この改善が得られた第一の方法は、大規模
の複雑なマスタステートマシーンから複数の単純な相互
依存のステートマシーンにメモリ制御機能を移行させこ
とによって得られている。基本的に各ステートマシーン
は全部の操作の1つの小部分通常特定機能を分担する。
各ステートマシーンがその機能を完了した点に到達した
時には、そのタスクを今実行できることを関連のステー
トマシーンに配達して、その次のスタート或いは進行指
示のために待機状態に進む。第2のステートマシーン
は、同様の形態で動作する。これは、完全なサイクルが
実行されるまで、繰り返される。アドレス及び命令デコ
ードのようなサイクルの早期(前半)部分を分担するス
テートマシーンを除いて、サイクルの最後(後半)部分
を分担するステートマシーンがそれらのタスクを完了す
る前に次サイクルでそれらのタスクを開始する。それ
で、よりゆるい関係は、進展に他の信号が必要になる点
に到達するまで、各ステートマシーンが各サイクルで可
能な限り進展することを許容する。それゆえにこの相互
依存の特質は、パイプライン状態の非常に有効な取り扱
いを許容する。
【0011】メモリ制御器は、さらに論理上従来のケー
スから再編成される。システムメモリは、中間即ちホス
トバスに配置されないが、プロセッサバスに直接配置さ
れる。ホストバスはプロセッサバスにも配置される。そ
れで、3つのバスは、3ポイント接続を形成する。デー
タバッファはこの3ポイント接続に位置して、同時にそ
の3バスでデータを扱うことができる。従って、潜在的
データルートの数は、全プロセッサ・メモリ操作がプロ
セッサ・ホストバス操作を邪魔しながら、ホストバスの
使用を必要とする従来のケースに亙って増やされる。2
つの分離通路を通れるデータによって、共起の機会が増
加する。
【0012】このメモリ制御器は、論理上3つのメイン
ブロックを組織し、1つがプロセッサバスに接続されて
相互作用を分担するフロントエンドと呼ばれる。メモリ
ブロックは、実メモリ装置と共に相互作用を扱うために
形成されて、サイクル開始と完了を指示するために、フ
ロントエンドブロックと通信する。同様に、ホストブロ
ックはホストバス相互作用を扱うために形成されて、フ
ロントエンドブロックに起動イベントを通信する。
【0013】フロントエンドブロックは、サイクルをデ
コードして、それがメモリ或はホストバスへ行くかどう
かを決めて、適当なブロックを初期化する。その後、フ
ロントエンドブロックは、パイプラインが容易に扱われ
るように、次サイクルに取り組むことが自由である。も
し、次サイクルがメモリ或いはホストバスの他のために
意図されるならば、そのブロックは活発化することがで
き、それがその操作を始める。今フルな共起が展開され
る。フロントエンドブロックは、1つがプロセッサによ
って形成されたと仮定して、まだ他のサイクルをデコー
ドするために自由である。それで、いっそう多くのパイ
プラインも展開することができる。好ましい実施例にお
いて、EISAバスはホストバスから展開される。書込
操作がホストバスからEISAバスに知らせられると、
EISA意図の書込操作が挿入されるならば、いっそう
多くの共起も得ることができることは明白である。
【0014】
【課題を解決するための手段】複数のステートマシーン
としてのメモリ制御器の配列は、この共起を簡単にす
る。可能性が個別よりむしろグループとして扱われる
と、全体でより少数のステートしか必要とされない。そ
れで、メモリ制御器の全部の複雑さが処理しやすいサイ
ズに大いに減少させられ、まだパイプラインと共起が得
られ最大にされる。
【0015】更に、複数のステートマシーンによって形
成された柔軟性も、メモリ制御器が60ns及び80nsの
ような異なった速度のメモリデバイスを個々の基準で用
いることを許容し、メモリ制御器がメモリシステムの最
も遅い速度でなく、各メモリデバイスのフル仕様速度で
実行(動作)させる。メモリ速度はメモリの128キロ
バイトの各ブロック毎に記憶される。この記憶された値
は、その後、メモリサイクルが発生している時に、ステ
ートマシーンを再呼び出しするために使用されて、それ
でメモリデバイスのタイミング変更を達成する。この値
が各128キロバイトブロック毎に利用できるので、各
メモリデバイスはその能力一杯の速度で動作することが
できる。
【0016】それ故に、本発明によるメモリ制御器は、
プロセッサによって提供されたいかなるアドレスパイプ
ラインも最大限に使用し、異なる速度のメモリデバイス
毎にその動作を同時(共起)に動的に調整する多数のサ
イクルで動作させている。これは、全ての可能な稼働状
態下の信頼できる操作がいっそう容易に決定できるよう
に、極端な複雑さなしで行われている。
【0017】
【実施例】本発明のより良い理解は、好ましい実施例の
以下の詳細な記述が添付図面と共に熟慮される時に得ら
れることができる。
【0018】今図1を参照すると、好ましい実施例に従
ったコンピュータシステムCが示される。プロセッサ基
板Pは、プロセッサ、キャッシュメモリ及び主メモリ及
び協働設備及び好ましくはカード縁のコネクタ100を
含む。このコネクタ100を受信するためには、システ
ム基板Sは、好ましくはカード縁を収容するソケットの
コネクタ102を含む。このシステム基板Sは、共通の
システム素子及び交換できる回路基板用のスロット或は
コネクタを含む。システム基板Sは、追加のコネクタ1
04をも含む。このコネクタ104は、I/O基板I上
のコネクタ106に差し込まれる。好ましくは、I/O
基板Iがフロッピー及びハードディスク・ドライブ制御
ユニット、音声システム及び並列及びシリアル・ポート
のようなコンピュータCのI/O関連部品を含む。追加
的に、I/O基板Iには、実時間クロック及びCMOS
メモリがある。プロセッサ基板P、システム基板S及び
I/O基板Iの各々は詳細に後述する。
【0019】これは、コンピュータシステムCの例及び
好ましい実施例であることが注目され、単一システム基
板或いはマザーボードが普通に載せられる全部品を持つ
数々の他の実施例が容易に開発できることが理解され
る。
【0020】今図2を参照して、システム基板Sのブロ
ック図が示される。2つの主なバス、即ちホストバスH
及びEISAバスEはシステム基板Sの論理的バックボ
ーンを形成する。ホストバスHは、3つの構成要素、ホ
ストデータ即ちHDバス、HA即ちホストアドレス・バ
ス及びHC即ちホスト制御バスを持っている。好ましく
は、HDバスが32ビット幅であり、HAバスが32ビ
ットアドレス空間用に形成される。好ましくは、ホスト
バスHが80386のようなパイプライン能力を含む8
0486プロトコルに従って実質的に操作される。EI
SAバスEは、4つの主な構成要素、SA及びLA即ち
システム及び初期のアドレス・バス、SD即ちシステム
データ・バス及びSC即ちシステム制御バスを持ってい
る。このEISAバスEには、複数のEISAスロット
108が接続している。インテル82358のようなE
ISAバス制御器110は、ホストバスHサイクル及び
EISAバスEサイクルの間で変換する必要な性能を提
供し、HA及びHCバスとSCバスとの間に接続され
る。このEISAバス制御器110は、ホストバスH及
びEISAバスEの間で必要なデータ転送機能が形成
し、EISAシステムへのデータ結合及び切り離し要求
を形成するインテル製の82352のようなデータEB
B即ちEISAバスバッファ112を制御するために接
続される。同様にEISAバス制御器110は、アドレ
スEISAバスバッファ即ちEBB114のために制御
機能を形成する。このアドレスEBB114は、EIS
AバスE及びホストバスH間で転送能力を形成し、更
に、HAバス信号をラッチして、適切ならSAバス信号
を形成する。
【0021】このコンピュータCは、EISAバスEの
(アービトレーション)仲介と同様に、割込システム、
DMA制御器及び多くのタイマーのようなある基本的構
成要素を含む。これらの構成要素は、全てHA、HC及
びSCバスに接続されるEISAシステム周辺装置11
6に含まれる。システムグルーチップ118として参照
されるチップは、EISAバスEおよびXD即ちXデー
タ・バスとして参照されたバスに接続され、コンピュー
タシステムCで必要な多数の雑多な機能を実行する。
【0022】最後に、XバスXとして参照される第3バ
スは、コネクタ104に供給される。このXバスXは、
アドレスXA、データXD及び制御SC部分を持ってい
る。XAラインはバッファ120の手段によってSAバ
スから展開され、一方XDバスがバッファ或いはトラン
シーバ122の手段によってSDバスから形成される。
好ましくは、XDバスは16ビット幅であり、XAバス
がSAバスと同じビット幅である。ホストバスH及びX
Dバスはプロセッサ基板Pとの接続のためにコネクタ1
02に供給される。更に、XDバスがEISAシステム
周辺装置116に接続している。
【0023】今図3を参照すると、I/O基板Iが詳細
に示される。このI/O基板IのバックボーンはXバス
Xである。このXバスXには、コンピュータシステムC
の基本操作手順を含むROM即ち読出専用メモリ124
が接続されている。このROM124は、基本操作手順
を容易に変更できるようにフラッシュ型EPROMが好
ましい。実時間クロック(RTC)/CMOSユニット
126がXバスXに接続されて、実時間クロック機能及
び長期間メモリ能力を形成している。フロッピ・ディス
ク制御器128はXバスXに接続されて、フロッピ・デ
ィスクユニット130からのデータを受信する。代表的
に8042デバイスのキーボード制御器132がXバス
Xに接続されて、キーボード134及びマウス即ち指針
デバイス136のデータを受信する。多重周辺チップ1
38はXバスXに接続されて、ハードディスク装置14
0、並列ポート142及び2つのシリアル・ポート14
4及び146にインターフェイスを形成する。最後に、
音声システム148は、音声システムに接続しているス
ピーカ150と共に音声の機能を形成するために、Xバ
スxに接続している。他の構成要素は、所望ならばI/
O基板Iで形成できる。好ましくは、好ましいコンピュ
ータシステムC内のグラフィックスシステムは、EIS
Aスロット108に配置される着脱自在のアドインカー
ド上で形成され、I/O基板Iに必然的に置かれていな
い。
【0024】今図4を参照して、プロセッサ基板Pは詳
細に示される。このプロセッサ基板P上の第一の構成要
素は、プロセッサ即ちCPU152で、好ましい実施例
でインテル社からの80486後の次世代設計のP5即
ちペンティアム・マイクロプロセッサである。好ましい
実施例では66MHzバージョンが利用される。803
86及び80486の操作及びインタフェースは、読者
に馴染みがあると仮定する。このP5は、スーパースカ
ラ(Superscalar)アーキテクチャ及び内蔵の分離型コ
ード及びデータキャッシュを持つ非常に高性能マイクロ
プロセッサである。データ・バスは64ビット幅で、8
パリティビットが形成される。データキャッシュは、6
4バイトライン幅を持つライトバック設計である。P5
の多くの信号は、80386及び80486と類似した
機能を持ち、変更或いは新規な機能を持つ信号のみがこ
こに詳細に説明される。その1つの信号は、サイクルが
プロセッサ152によってキャッシュできるか否かを指
示するために使用されるCACHEである。このキャッ
シュ性を指示するに使用される追加の信号は、メモリの
選択されたページのキャッシュ化を無効化するために使
われたPCD即ちページキャッシュデセーブル信号であ
る。もし、CACHE信号があり、PCD信号が読出或
は書込サイクル中にアサートされなかったならば、それ
らは、いわゆるキャッシュラインフル或はライトバック
のバーストサイクルである。更に、P5は、PBRDY
*即ちプロセッサバースト用意入力のみを持ち、PRD
Y*即ち単一サイクル用意入力を持たず、このPBRD
Y*入力がプロセッサ152への全準備完了(用意)指
示のために使われる。P5は、アドレスパイプラインを
許容するPNA*即ち次アドレス入力を含む。P5の1
つの追加の特徴は、システム管理モード即ちSMMであ
る。これはインテル80386SL及び80486SL
プロセッサのそれに類似している。SMIピンはSMモ
ードに入るために使用され、SMIACT*として参照
される信号がSMモードでの操作を示すために形成され
る。
【0025】3つのバスは、P5のCPU152、PD
即ちプロセッサーデータ・バス、PA即ちプロセッサー
アドレス・バス及びPC即ちプロセッサー制御バスに接
続している。これらPD及びPAバスには、メモリ制御
器156から制御信号を受信するレベル2(L2)外部
キャッシュ154が接続している。好ましい実施例で
は、メモリ制御器156は、メモリ制御器機能を含ん
で、追加的にL2キャッシュ154を操作するために必
要なキャッシュ制御能力を含む単一ASICである。
【0026】PDバスには、2つの新規バス、HD即ち
ホストデータ・バス及びMD即ちメモリデータ・バスを
展開するデータバッファ158が接続される。HDバス
は、システム基板Sへの接続のためにコネクタ100に
接続している。データバッファ158は、メモリ制御器
156によって制御される。トランシーバ/ラッチユニ
ット160は、PAバス及びHAバスの間で接続され
て、P5のCPU152及びホストバスH間のアドレス
のラッチ及び転送能力を形成する。このトランシーバ/
ラッチ160は、メモリ制御器156によって制御され
て、プロセッサバスからホストバスHにサイクルの配達
を許容する。
【0027】プロセッサ・ユーティリティ・チップ16
2は、CPU152との使用に必要なユーティリティ操
作を形成する。このプロセッサ・ユーティリティ・チッ
プ162はXDバス及びHCバスに接続されて、メモリ
制御器156によって制御される。好ましくは、プロセ
ッサ・ユーティリティ・チップ162の出力は、P5C
PU152の制御機能を形成するために、PCバスに供
給される。
【0028】勿論、メモリ制御器156は、DDF即ち
データ目標設備164として参照されたユニットに接続
されている。このDDF164は、メモリのモジュール
化、アドレスの変換及びメモリ区分即ちページ共有記憶
を形成する。DDF164は、特定のメモリバンクがイ
ネーブルかを指示するメモリ能力を形成し、128キロ
バイトの境界毎にアドレスの変換を形成し、それがプロ
セッサ基板P上の主メモリ或は外部に位置するか、書込
保護されたか、高速か、或はキャッシュ化できるかどう
か、またその部分がライトバックキャッシュで利用でき
るかどうかのような、各128キロバイトブロックの特
徴の指示を形成する。このDDF164の操作は、19
89年11月3日に出願された米国特許出願番号07/
431,666及び1991年5月8日に出願公開され
た欧州特許出願公開0426386でより完全に説明さ
れ、両方をここに参照する。DDF164の出力は、一
連の、特定のメモリモジュールをイネーブルするRAS
EN即ちRASイネーブル信号、128キロバイト上の
アドレスビットを指示するある変換アドレス、及びHN
CA、HCW、HWP、PLOCMEM*及びSPD6
Oのようなページ特徴ビットである。
【0029】プロセッサー基板Pのメモリ部分には、4
つの同一モジュールが形成され、各モジュールがアドレ
ス/制御バッファ166、個々のSIMMユニット16
8を収容する1つのソケット及び基本メモリ170を含
んでいる。アドレス/制御バッファ166は、PAバ
ス、DDF164のアドレス及びイネーブル出力、及び
メモリ制御器156からの制御信号を受信する。このア
ドレス/制御バッファ166の出力は、SIMM168
或は基本メモリデバイス170に供給されるアドレス及
びRAS*、CAS*及びWE*信号である。これらの
信号は、SIMM168と基本メモリデバイス170の
各々に供給される。更に、各SIMM168或は基本メ
モリデバイス170はメモリデータ・バスMDに接続し
ている。示されるように4つの同様なモジュールがあ
る。プロセッサ基板Pの他のコンフィギュレーション
(構成)が展開できるが、後述する詳細によって変形例
が当該技術者によって明らかである。
【0030】今図5を参照すると、メモリ制御器156
で利用或は供給される種々の制御信号が関連したバス或
はブロックとの適当な接続と共に示される。図5はコン
ピュータシステムCの残りの構成要素へのメモリ制御器
156の接続の概観に有用である。
【0031】今図6を参照して、アドレス/制御バッフ
ァ166のブロック図が示される。MSELCA*即ち
メモリ選択カラムアドレス信号がD型フリップフロップ
200に供給される。このフリップフロップ200のク
ロックには、プロセッサ152のクロックとして使われ
た66MHz信号が好ましいPCLK信号が供給され
る。フリップフロップ200の非反転出力が12ビット
幅の2:1マルチプレクサ202の選択入力に供給され
る。MALE即ちメモリアドレス・ラッチイネーブル信
号は、PCLK信号でクロックされるD型フリップフロ
ップ204のD入力に供給される。このフリップフロッ
プ204の非反転出力がSMALE信号であって、21
ビット幅のラッチ206のイネーブル入力に供給され
る。ラッチ206のD入力は、PAバスからのPA<1
6..4>信号及びDDF164からのTA<25..
17>変換されたアドレス信号を受信する。信号PA<
16..13>及びTA<24、22..17>を受信
するラッチ206の一部の非反転出力がマルチプレクサ
202の1つの入力に供給される。信号PA<12..
5>及びTA<25,23>を受信するラッチ206の
他の部分の非反転出力は、マルチプレクサ202のゼロ
入力に対する入力として供給される。PA<4>信号を
受信するラッチ206部分の非反転出力がバースト論理
ブロック210のアドレス入力に供給される。このバー
スト論理ブロック210は、プロセッサ152のバース
ト操作即ちキャッシュラインフル及びライトバック操作
期間中にメモリに印加されるアドレスをインクリメント
し、効果的に転化するために用いられる。勿論、バース
ト論理210は、アドレス及び活性時に同アドレスをイ
ンクリメントするMADRINC*信号をロードする時
を示すMALE信号を受信する。さらにPCLK信号は
バースト論理210に供給されて、実クロック操作を実
行する。バースト論理210の出力は、カラムアドレス
の最少の重要ビットであって、マルチプレクサ202の
ゼロ入力に供給される。マルチプレクサ202の出力
は、12ビット幅のD型フリップフロップ212のD入
力に供給される。これらフリップフロップ212は、P
CLK信号でクロックされ、Q即ち非反転出力がMA<
11..0>信号である。
【0032】REFRESH*信号は、イネーブル入力
がSMALE信号を受信するラッチ214のD入力に供
給される。ラッチ214の出力がRASデコード論理ブ
ロック216への一入力として供給される。どのメモリ
バンク、基本メモリ170或はSIMM168が活発化
かどうかを示すDDF164からのRASEN<1..
0>信号は、2ビットラッチ218のD入力に供給され
る。ラッチ218へのイネーブル入力はSMALE信号
である。ラッチ218の出力は、RASデコードロジッ
ク216に他の入力として供給される。RASデコード
ロジック216の他の入力が後述するLMRAS*信号
である。RASデコードロジック216の出力は、適当
なRASが選択され、或いはREFRESH操作のケー
スにおいて全ローアドレスが供給される必要があること
を指示するために活性となる4ビット信号である。RA
Sデコードロジック216の出力は、D型フリップフロ
ップ222の非反転出力によって供給されるLMRAS
*信号をイネーブル入力が受信する4ビットラッチ22
0に供給される。MRAS*信号は、PCLK信号によ
ってクロックされたフリップフロップ222のD入力に
供給される。この場合、マスタRAS即ちMRAS*信
号は、デコードされたRAS信号をイネーブルするため
に使用される。第1組のデコードされたRAS信号に関
するラッチ220の2つの非反転出力が2つのORゲー
ト224の1つの入力に供給され、第2組のデコードさ
れたRAS信号に関するラッチ220の他の2つの非反
転出力は、2つのORゲート226の1つの入力に供給
される。ORゲート224及び226への第2入力がL
MRAS*信号によって供給される。ORゲート224
の出力は、PCLK信号によってクロックされ、その出
力がRASA*<1..0>信号である2ビットD型フ
リップフロップ228のD入力に供給される。ORゲー
ト226の出力は、PCLK信号によってクロックさ
れ、出力がRASB*<1..0>信号である2ビット
D型フリップフロップ230のD入力に供給される。R
ASA*<1..0>に対するRASEN<1..0>
信号及びRASB*<1..0>信号のデコードは以下
に示し、メモリバンク0及び1が基本メモリ170に対
応し、メモリバンク2及び3がSIMM168に対応し
ている。 RASEN<1..O> RASA*<1> RASA*<0> RASB*<1> RASB*<0> バンク 11 1 0 1 1 0 10 0 1 1 1 1 01 1 1 1 0 2 00 1 1 0 1 3
【0033】4つのプロセッサバイトイネーブル信号、
即ちPBE*<3..0>或いはPBE<7..4>
は、アドレス/制御バッファ166がどれを参照してい
るかに依存して、4ビットラッチ232のD入力に供給
され、各アドレス/制御バッファ166が32ビットの
メモリを扱っている。ラッチ232のためのイネーブル
信号はSMALE信号である。ラッチ232の出力は、
CASデコードロジック234への4つの入力である。
PA<3>信号は、SMALE信号によってイネーブル
されたラッチ236のD入力に供給される。ラッチ23
6の出力は、CASデコードロジック34に供給され
る。メモリ制御器156からのMALLBES*即ちメ
モリ全バイトイネーブル信号は、SMALE信号によっ
てイネーブルされたラッチ238のD入力に供給され
る。ラッチ238の出力は、CASデコードロジックに
供給される。CASデコードロジック234は、4つの
出力、即ちアドレス制御バッファ166によって供給さ
れるメモリの特定のバイトを活発化することである4ラ
インを持っている。PA<3>信号はメモリシステムの
上位及び下位64ビットを選択するために用いられ、P
BE*信号が32ビットの特定のバイトレーン・エンコ
ードに用いられる。好ましい実施例では、メモリが12
8ビット幅であるが、各アドレス/制御バッファ166
が32ビットを制御し、2つのアドレス/制御バッファ
チップが同じPBE*信号を各々受信する。インタリー
ブ問題を解決するためには、入力(図示略)は、特定の
アドレス/制御バッファ166が上位或は下位64ビッ
ト用かどうかを示すために用いられる。この信号は、ア
リアシング問題を防止するために、PA<3>信号と比
較される。CASデコードロジック234の4つの出力
は、4ビットラッチ240のD入力に供給される。ラッ
チ240へのイネーブル信号は、D型フリップフロップ
の非反転出力242から供給されたLMCAS*即ちラ
ッチされたマスタCAS信号である。フリップフロップ
242のD入力がマスタCAS即ちMCAS*信号を受
信して、PCLK信号によってクロックされる。ラッチ
240の4つの出力は、4つの2入力ORゲート244
の入力として及び4つの2入力ORゲート246への入
力として供給される。これらORゲート244及び24
6への他の入力は、LMCAS*信号によって供給され
る。ORゲート244の出力は、PCLK信号によって
クロックされ、非反転出力がCASA*<3..0>信
号である4ビットD型フリップフロップ248に供給さ
れる。同様に、ORゲート246の4つの出力は、PC
LK信号によってクロックされ、非反転出力がCASB
*<3..0>信号である4ビットD型フリップフロッ
プ250のD入力に供給される。CASB*<3..0
>信号がSIMM168に供給される一方で、CASA
*<3..O>信号は、基本メモリ170に供給され
る。
【0034】MWE*信号は、PCLK信号によってク
ロックされたD型フリップフロップ252のD入力に供
給される。フリップフロップ252の非反転出力は、D
型フリップフロップ254及び256のD入力に供給さ
れる。これらフリップフロップ254及び256は、P
CLK信号によってクロックされて、基本メモリ170
及びSIMM168に供給されるメモリ書込イネーブル
信号であるMWEA*及びMWEB*信号を各々生成す
る。
【0035】それで、アドレス/制御バッファ166に
MRAS*、MCAS*、MALE、MALLBES
*、MADRINC*、WE*及びMSELCA*信号
を供給することによって、メモリ制御器は、インタリー
ブ操作と同様にページモード操作を許容する適当なメモ
リアドレスと関連して、RAS、CAS及び書込イネー
ブル信号を適当に供給されることができる。
【0036】図7、8及び9は、データバッファ158
の種々の部分の詳細を表わす。今図7を参照して、PD
バスビット63〜0及びこれらラインと関連するパリテ
ィビットは、72ビット幅のバッファ270の入力に供
給される。バッファ270の出力は、4組の72ビット
ラッチ272、274、276及び278のD入力に供
給される。これらの4組のラッチは、LPDMDEN
0、LPDMDEN1、LPDMDEN2及びLPDM
DEN3信号をイネーブル入力として受信する。4組の
ラッチ272−278の使用は、書込配達操作で記憶さ
れるを示してプロセッサ152からの全バーストを許容
する。ラッチ272の出力が3:1の72ビット幅のマ
ルチプレクサ280ののゼロ(第0群)入力へ行く。ラ
ッチ276の出力は、マルチプレクサ280の1つの入
力へ行く。ラッチ274の出力は、第2組の72ビット
幅3:1マルチプレクサ286のゼロ入力へ行く。同様
にラッチ278の出力は、マルチプレクサ286の1つ
の入力へ行く。.マルチプレクサ280及び286への
選択入力は、LMDSEL<1..0>信号に接続して
いる。マルチプレクサ280及び286の出力は、14
4ビット幅のトライステートバッファ288の入力に供
給された144ビット幅のパス(経路)を形成するため
に並列に結合している。バッファ288のための出力制
御が反転されて、LMDOE*信号に接続している。バ
ッファ288の出力は、メモリデータバス、即ちビット
127〜0のメモリデータ及び16ビットのパリティで
ある。
【0037】36ビット幅のラッチ292及び第2組の
36ビット幅のラッチ290は、並列にバッファ270
の出力に接続される。ラッチ290及び292へのイネ
ーブル入力は、LPDHDEN即ちホストデータイネー
ブルに対するラッチされたプロセッサデータ信号によっ
て供給される。ラッチ290の出力は、32ビット幅の
3:1マルチプレクサ296のゼロ入力に供給される。
パリティデータは、マルチプレクサ296に供給されな
い。ラッチ292の出力は、マルチプレクサ296の1
つの入力に供給される。マルチプレクサ296への選択
入力は、HDSEL<1..O>信号即ちホストデータ
選択信号を受信する。マルチプレクサ296の出力は、
反転制御入力がHDOE*信号を受信する32ビット幅
のトライステートバッファ298に供給される。バッフ
ァ298の出力は、HDバスの32ビットに接続してい
る。
【0038】勿論、チャンネルは、ホストデータ・バス
からメモリデータ・バスに行くために必要である。この
結果、32ビット幅のバッファ300は、HDバスに接
続して、32ビット幅のラッチ302のD入力に接続す
る出力を持っている。LPDHDEN即ちホストデータ
イネーブルに対するラッチされたプロセッサデータ信号
ラッチ302のイネーブル入力に供給される。ラッチ3
02の出力は、4ビットのパリティ出力を形成するパリ
ティ発生器304に供給される。ラッチ302の出力
は、4組の32ビット幅のバッファ306、308、3
10及び312に供給される。同様にパリティ発生器3
04の出力は、4組の4ビットバッファ314、31
6、318及び320に供給される。これらバッファ3
06、308、314及び316の出力は、マルチプレ
クサ280の第3チャンネルに入力を供給されるために
並列接続され、一方バッファ310、312、318及
び320の出力はマルチプレクサ286の第3チャンネ
ルに入力を供給するために並列接続される。それで、ホ
ストデータ・バスからの同じデータがメモリデータ・バ
スを経由して4倍供給されることは明白であるが、これ
は、アドレス制御バッファ166中のRASデコードロ
ジック216及びCASデコードロジック234がどの
データバイト及びどのメモリ装置が実際アクティブで、
データを受信するかを実際に制御するので許容範囲内で
ある。
【0039】勿論、ホストデータ・バスからプロセッサ
データ・バスにデータを得ることは必要である。結局、
バッファ300の出力は、2組の32ビットラッチ32
2及び324のD入力に供給される。LHDPDEN1
信号は、ラッチ322へのイネーブル入力であり、LH
DPDEN0信号は、ラッチ324へのイネーブル入力
である。パリティ発生器326及び328はそれぞれラ
ッチ322及び324の出力に接続している。パリティ
発生器326、ラッチ322、パリティ発生器328及
びラッチ324の出力は、適当なサイズのバッファ33
0、332、334及び336に供給されて、64デー
タビットと8パリティビットとからなる72ビット幅の
値が72ビット幅の3:1マルチプレクサ338の第3
入力に供給される。マルチプレクサ338用の選択制御
は、LPDSEL<1..0>即ちラッチされたプロセ
ッサデータ選択信号によって供給される。或いはマルチ
プレクサ338の出力は、反転トライステート制御がL
PDOE*信号を受信する72ビット幅のトライステー
トバッファ340の入力に供給される。バッファ340
の出力は、プロセッサデータ及びパリティバスの72ビ
ットに接続している。2組のラッチ322及び324の
使用によって、ホストデータ・バス上の2つの完全なア
クセスは、プロセッサに供給された72ビット語を供給
するために、並列結合することができる。
【0040】勿論、経路は、メモリデータ・バスからプ
ロセッサーデータ・バスに形成されなければならない。
結局、144ビット幅のバッファ342は、メモリデー
タ・バス及びメモリパリティ値を受信するために接続し
ている。バッファ342の出力は、イネーブル入力がL
MDPDEN信号を受信する144ビットラッチ344
に供給される。ラッチ344の出力は、下位64ビット
及び関連の0群入力に対するパリティ、及び上位64ビ
ット及び関連の0群入力に対するパリティと共に、マル
チプレクサ338の第0及び第1群入力に供給される。
この様に、マルチプレクサ338は、メモリシステムの
バンク或いはインタリーブ部分の間で選択するために用
いることができる。
【0041】バッファ342の出力のデータ部分は、
4:1の32ビット幅のマルチプレクサ350の4入力
にも32ビット区分で供給される。マルチプレクサ35
0のためのセレクション制御は、メモリデータの32ビ
ット部分がホストデータ・バスに供給されるべきである
ことを示すMDHDSEL<1..0>信号によって供
給される。マルチプレクサ350の出力は、イネーブル
入力がLMDHDEN信号を受信する32ビットラッチ
352に供給される。ラッチ352の出力は、マルチプ
レクサ296の第3入力に接続している。
【0042】理解されるように、データバッファ158
は、バスのどの2組において、どちらの方向にもデータ
を転送できる必要なリンク及び接続を含む。その上にバ
ッファ158は、配達されたプロセッサから全体のバー
スト書込操作を許すために十分なラッチを含む。同様に
ホストバスからの多重操作は、必要ならばプロセッサシ
ステムへの形成のために組み立てられるまで、配達或い
は集められる。更に、プロセッサからホストバスへの書
込操作が配達することができる。
【0043】今図8を参照して、ラッチ論理は、ホスト
即ちメモリデータ・バスに対するプロセッサデータ信号
のために示される。PDHDLE*信号は、出力がラッ
チ362およびD型フリップフロップ364のD入力に
供給されたバッファ360に供給される。PCLK信号
は、ラッチ362の反転イネーブル入力におよびフリッ
プフロップ364のクロック入力に供給さされる。ラッ
チ362及びフリップフロップ364の反転出力は、出
力がLPDHDEN信号である2入力ANDゲート36
6に2入力として供給される。バッファ、ラッチ、フリ
ップフロップ及びANDゲートの類似した配列は、LP
DMDEN<3..0>信号を生成するために、PDM
DLE*<3..0>信号と共に利用される。
【0044】今図9を参照して、PDOE*信号は、出
力がD型フリップフロップ370のD入力に供給された
バッファ368に供給される。PCLK信号はフリップ
フロップ370をクロックする。フリップフロップ37
0の非反転出力は、LPDOE*信号である。再び、類
似したバッファ及びフリップフロップ配列は、PDSE
L<1..0>、HDPDLE<1..0>、MDHD
LE、MDPDLE、MDSEL<1..0>及びMD
OE*信号と共に使われて、それぞれLPDSEL<
1..0>、LHDPDEN<1..0>、LMDHD
EN、LMDPDEN、LMDSEL<1..0>及び
LMDOE*信号を生成する。
【0045】今図10を参照して、メモリ制御器156
の部分が示される。好ましくは、メモリ制御器156が
一連の相互依存のブロックとして組織される。これらブ
ロックの各々は、論理的に組織されて、L2キャッシュ
154、プロセッサ152、メモリ、ホストバスH或い
は関連の仲介のような特定の外部ユニットに関連する。
最初のブロックは、FECON即ちフロントエンド制御
器400として参照される。FECONブロック400
は、プロセッサー152からのサイクルスタート信号を
受取るためにプロセッサ152と相互作用して、MCO
Nブロック402及びMCONブロック404を活発化
する信号を形成する。MCONブロック402及びHC
ONブロック404からのハンドシェーク信号を受け取
る時に適当な時にプロセッサ152に完了信号を供給す
る。勿論、FECONブロック400はデータバッファ
158への信号を形成して、プロセッサ書込データをラ
ッチし、プロセッサ読出データをイネーブルする。MC
ONブロック402は第2の主なブロックであって、メ
モリ制御器部分である。このMCONブロック402
は、アドレス/制御バッファ166とインターフェイス
して必要な制御信号を形成し、データバッファ158と
インターフェイスしてメモリからのデータをラッチし、
メモリへのデータをイネーブルする。HCONブロック
404は、ホストバス制御ブロックであり、ホストバス
Hとインターフェイスして、その操作に必要な信号を形
成する。HCONブロック404は、さらにデータバッ
ファ158と通信して、ホストバスHからのデータをラ
ッチし、ホストバスHへのデータをイネーブルする。M
CONブロック402及びHCONブロック404両方
は、後述でより明白になるように、FECONブロック
400とハンドシェイク通信をする。
【0046】CCONブロック406は、L2キャッシ
ュ制御器であり、FECONブロック400及びキャッ
シュ154とインターフェイスして、完全なキャッシュ
制御機能を形成する。好ましくは、キャッシュ制御器が
論理及び操作の簡単のための256キロバイトの直接マ
ップのライトスルー・ルックアサイド・キャッシュであ
る。HARB即ちホスト仲介ブロックとして参照された
ブロック408は、FECONブロック400とインタ
ーフェイスして、プロセッサ及びホストバス仲介を形成
する。図10に示す最終ブロックは、MPMONブロッ
ク410即ちメモリパフォーマンスモニタである。好ま
しい実施例のメモリ制御器156においては、メモリパ
フォーマンスモニタ410は、メモリサイクルの終りで
MRAS*信号の状態を決定するために利用される。効
果的にMPMONブロック410は、次の操作予想を実
行して、次の操作がメモリページヒット或いはメモリペ
ージミスかの可能性を持つかどうかに依存して、MRA
S*信号が適当にローに維持され或いはハイに持ち上げ
ることができる。これの多くは、下に記述されたステー
トマシーンと共に記述される。
【0047】簡単のために図10で示されなかった他の
ブロックは、DDFCON即ちデータ目標(ターゲッ
ト)設備制御ブロックである。これは、簡単のために省
かれるが、DDF164と協働するに必要な従来信号を
形成して、プログラム及び読み出すことを許容する。こ
の操作は、既に参照した特許出願文献及びFECON4
00の操作に基づいて明白である。
【0048】好ましくは、FECONブロック400、
MCONブロック402及びHCONブロック404
は、各々が独立及び相互依存しながら作用し、あるルー
ズなロジックを持つ複数のステートマシーンからなる。
各ステートマシーンはその操作を始める信号を受信し、
他の信号の受信に従って進展する。メモリ制御操作に必
要な種々のタスクは、示されるようにこれら複数のステ
ートマシーン間および制御ブロックの間で分割されて、
過度に複雑な単一マスタステートマシーンを必要としな
いで、パイプライン及び多重同時発生を許容する。複数
の個々のステートマシーンの使用によって、各操作は、
その最大可能速度で進展し、他の信号或は情報がその進
展を許容するに必要な時だけ停止することを許容する。
この配列及び操作は、多数のステートマシーンが参照の
タイミング図を含んで後述されるので、明白となる。メ
モリ制御器156内及び種々の制御ブロック間で使用及
び形成されるこれら多数の信号は、図10に示される。
リストが必然的に完全でないが、より重要な信号が示さ
れている。CCON即ちキャッシュ制御器406の更な
る詳細は、キャッシュ操作が発生している時に必要なも
のを除いて、この操作に特に関連しないので、提供しな
い。
【0049】今図11を参照して、FECONブロック
400自身は一連のサブブロック即ちモジュールから構
成されている。最初のブロックは、PCM即ちプロセッ
サ制御モジュール410である。このモジュール410
は、主にプロセッサー152から状態(ステータス)信
号を受信して、サイクルの操作を開始する。第2のブロ
ックは、MCONブロック402と直結してインターフ
ェイスするMCM即ちメモリ制御モジュール412であ
る。HCMブロック414は、HCONブロック404
とのインターフェイスに使われる。PNA即ちプロセッ
サ次のアドレス発生として参照されたブロック416は
アドレスパイプラインのフル使用を許すために、プロセ
ッサ152へ次アドレス即ちNA*信号を供給するため
に利用される。PBRDYGEN即ちプロセッサバース
ト用意発生として参照されたブロック418は、プロセ
ッサ152に用意信号を供給するために使われて、サイ
クルのデータ部分が完了し、次のデータ部分が処理でき
ることを示す。最後のブロックは、MDバス或いはHD
バスからPDバスへのデータ通路を選択するために使わ
れたDPSELCMブロック420である。
【0050】図12を参照して、MCONブロック40
2は、その組成のサブブロックと共に示される。ブロッ
ク430は、プロセッサ152をメモリ自身に効果的に
インターフェイスするCPUMEMブロックである。C
PUMEMブロック430には、プロセッサ・サイクル
のためにRAS、CAS及び他の信号を展開するために
利用されたプロセッサーメモリステートマシーンが含ま
れる。特に指示しなければ、全てのステートマシーン
は、PCLK即ちプロセッサクロック信号の立上がり縁
で進展する。ISABM即ちISAバスマスタブロック
として参照されたブロック432は、ISAバスマスタ
とのインターフェイスに使われ、ISAバスマスタと使
われたメモリステートマシーンを含む。同様に、EIS
ABM即ちEISAバスマスタとして参照されるブロッ
ク434は、EISAバスマスタが制御状態にありメモ
リ操作を要求する時に、ステートマシーンとメモリ制御
を形成する。MABCON即ちメモリアドレス・バス制
御ブロックとして参照されたブロック436は、メモリ
アドレス関連信号を扱うために利用されした。MABC
ON即ちメモリデータ・バス制御ブロック438は、メ
モリ及びホスト伝送のためにデータバッファ158のラ
ッチイネーブル及び出力イネーブル信号を扱うために使
われる。SNPCON即ちスヌープ制御として参照され
たブロック440は、スヌープ即ちプロセッサバス操作
が適当なキャッシュ結合力とライトバック操作を許すた
めに適当な時に、レベル2(2次)キャッシュ154及
びプロセッサ152を指示するために使われる。最後の
ブロックは、メモリデバイスへのリフレッシュ操作を制
御するREFSM即ちリフレッシュステートマシーンブ
ロック442である。
【0051】まだ図13はHCONブロック404のた
めの他の類似したブロック故障である。HSYNC即ち
ホスト同期化サブブロック446はサイクル操作を決定
するために、ホストバスHを追跡するために使われる。
HOST即ちホストステートマシーンブロック448
は、プロセッサー152からホストバスHへの操作を駆
動するために使われたホストバスマスタである。HAC
ON即ちホストアドレス制御として参照されたブロック
452はアドレス関連信号を扱い、一方、HDCON即
ちホストデータ制御として参照されたブロック454が
データ操作を制御する。ブロック400、402及び4
04の各々は、示されたそれらのサブブロックのほかに
他の雑多な論理を含むことは理解される。
【0052】今図14へさらに進んで、PCMブロック
410中の最初のステートマシーンが示される。既に述
べたように特に注釈しなければ、ここに記載したステー
トマシーンの全てが、PCLK信号の立上りエッジで処
理が進行する。これは、PPROG即ちプロセッササイ
クル進行ステートマシーンであり、プロセッサバスの基
本サイクル追跡のために使われて、2つの第一の信号即
ち、PPROG即ちメモリ制御器156におけるプロセ
ッササイクル進展信号及びPEOC即ちプロセッササイ
クル終了信号が形成される。これら特定の信号の変形が
種々のモジュール毎に形成される。リセットでは、PP
ROGステートマシーンが状態A(アイドル即ち待機状
態)から開始する。PPROGステートマシーンは、P
WR即ちプロセッサ書込/読出信号の状態によって示さ
れる読出操作の時に、プロセッササイクルがPPEND
信号で示されるように待機状態の時にパイプライン化さ
れ、或いはDSPADS即ち遅延された同期化プロセッ
サADS信号を受け取った時に、状態(ステート)Aか
ら状態Bに進行する。SPADS信号は、PCLK信号
に同期化反転させられたプロセッサ152からのADS
*信号である。DSPADS信号は、1サイクル分のP
CLK信号を遅延させたSPADS信号である。これら
の状態下で制御は状態Bに進行する。もしプロセッサ1
52が状態Bでバーストサイクルを実行していないなら
ば、PEOC信号はずうっと供給される。PBURST
信号で示されるバースト操作が起こり、PBRDY信号
によって示されるように先のデータサイクルが完了した
時には、制御が状態Bから状態Cに進行する。サイクル
が待機中(未決定)で、バースト操作でなく、先のサイ
クルが完了し、待機サイクルが有効書込サイクル即ちメ
モリコード書込でない時には、制御が状態Bから状態F
に進行する。更なる待機サイクルがなく、バースト操作
が発生せず、PBRDY信号によって示されるようにデ
ータ転送が完了した後、従ってアイドル状態の時には、
制御が状態Bから状態Aへ戻る。この他の全ケース、特
にPBRDY信号がアサートされなかった時には制御が
状態Bに留まる。制御は、データ操作の完了を示すPB
RDY信号がアサートされる時に状態Cから状態Dに進
行し、そうでない時に状態Cに留まる。PBRDY信号
によって示されるように、次のデータ操作が完了した時
に、制御は状態Dから状態Eに進行する。さもなければ
制御は状態Dに留まる。状態Eでは、3つの可能な出口
及びループが存在する。PEOC信号は、状態Eでアサ
ートされる。もし、バーストの最後のデータ値が転送中
と指示され、他のサイクルが待機中で、待機中が読み出
し操作ならば、制御は状態Eから状態Bに戻り、次のサ
イクルに進行する。もしデータ値が形成中と示され、サ
イクルが待機中でないならば、制御は状態Aに戻る。も
しサイクルが待機中で、有効書込サイクル及びデータ転
送が完了したならば、制御は状態Fに進行して書込操作
を始める。その他の全ケース、特にデータ操作が完了す
るまで制御は状態Eに留まる。
【0053】もし、有効書込操作が示され、サイクルが
待機中或はDSPADS信号がアクティブならば、制御
は状態Aから状態Fに進行する。制御は、状態B或はF
への遷移でない全てのサイクルの間、状態Aに留まる。
状態Fでは、バースト操作が起こっていないならば、P
EOC信号がアサートされる。もしバースト操作が発生
せず、PBRDY信号によって示されるようにデータ伝
送が完了し、どのサイクルも待機していないならば、制
御は状態Fから状態Aに進行して、次サイクルまでアイ
ドル状態になる。PBRDY信号によって示されるよう
にデータが転送され、バースト操作が発生しているなら
ば、制御は状態Gに進行する。もし読出サイクルが待機
中で、バーストが発生せず、データ伝送が発生したなら
ば、制御は状態Bに信号する。さもなければ、制御は特
にデータが用意されるまで状態Fに留まる。PBRDY
信号が形成されるならば制御は状態Gから状態Hに進行
し、さもなければ状態Gに留まる。制御は、PBRDY
信号の受信時に状態Hから状態Iに進行し、そうでなけ
れば状態Hに留まる。状態IでPEOC信号がアサート
される。制御は、PBRDY信号がアサートされた時に
状態Iから状態Aに進行し、そうでなければ状態Iのま
まである。状態A以外の全状態において、PPROG即
ちプロセッサーサイクル進行信号がアサートされる。
【0054】PPROGステートマシーンの説明に示し
たように、PPEND即ちプロセッササイクル待機とし
て参照された信号は、パイプラインのフル使用を許すた
めに必要である。この信号は、図15で示されたPPE
NDステートマシーンによって形成される。これは、1
つが現在進行していながらプロセッサーサイクルが要求
されることを示すために使われた単純な2状態ステート
マシーンである。リセットで、PPENDステートマシ
ーンは、(アイドル状態)状態Aに進行する。もしSP
ADS即ち同期化プロセッサーADS信号が受信され、
PPROG信号が真ならば、制御は状態Aから状態Bに
進行する。状態BでPPEND信号がアサートされる。
制御は、SPADS信号がアサートされない時に、PB
RDY信号及びPEOC信号を論理積をしてPCLKで
同期化させられたバージョンであるSEOC信号を受取
った時に、状態Bから状態Aに戻る。さもなければ制御
は状態Bに留まる。
【0055】勿論、PCMモジュール410は、DPO
E*信号を展開することを分担する。これは、図16に
示されるように、DPOEステートマシーンで行われ
る。制御はリセットで状態Aに初期化される。もし、メ
モリキャッシュヒットでない読出サイクルの間に発生す
るDSPADS信号によって示されるようにメモリシス
テムが現在出力を供給し、サイクルが進行中であり(D
POE OK信号と定義する)、PEOC及びPBRD
Y信号によって示されるようにデータ転送が完了しなか
ったならば、制御は状態D(待ち状態)に進む。それで
状態Dのこのモードで、DPOEステートマシーンは、
用意できるようになるためにPDバスを待っている。制
御は、データ操作が完了したことを示すPEOC及びP
BRDY信号を受け取ると状態Dから状態Bに進行し、
或いは、もしこれがノンキャッシュヒットメモリ読出サ
イクルでありサイクルが現在進行中でないならば、或い
はそれがDPOE OK状態でありサイクルが進行中で
ありそのサイクルの終わりがPEOC及びPBRDY信
号によって示されるならば状態Aから状態Bに進行す
る。その他全ケースでは制御が適当に状態A及びDに留
まる。もし、これがDPOE OKサイクル以外で、サ
イクルの終わりが発生し、次のクロックサイクルでPB
RDY信号がアサートされることを示すEPBRDY即
ち初期プロセッサバス用意として参照された信号を受け
取ったならば、制御は状態Bから状態Aに進行する。こ
の場合、サイクルが効果的に完了され、出力制御は、デ
ータバッファー158で示されるように、実際に出力を
制御するDPOE信号が内部同期化フリップフロップの
為に1PCLK信号サイクル遅らせた信号であるので、
遮断される。もしそれがアクティブであるDPOE O
K信号によって示される出力を供給し、サイクルが完了
せず、或いは早期用意が受信されなかったならば、制御
は状態Bから状態Cに進行する。その他全ケースでは制
御が状態Bに留まる。制御はPEOC及びPBRDY信
号を受け取ると状態Cから状態Bに戻って、そうでなけ
れば状態Cに留まる。次の状態が状態B或いは状態Cで
ある時に、或いはステートマシーンが状態Cにある時に
は、DPOE*信号がアクティブつまりローにアサート
されることが注目される。この様に、それで、プロセッ
サ152によるノンキャッシュヒット読出サイクル毎
に、出力イネーブルが適当な時間アクティブである。一
般にこの明細書で信号を参照する場合、信号名の後のア
ステリスク(*)は、ロー電圧レベルがある時に論理的
に真性であり、アステリスクなしの信号名と反転し、信
号名後の角括弧内の数字は、データ或いはアドレス分野
のようなバス構成の論理信号の単一或いは複数のビット
位置を示すために使われてることを示す。勿論、この明
細書では、ステートマシーン遷移状態は、その論理的状
態でなく、指示信号のレベルに基づいている。
【0056】ある雑多な信号は、PCMモジュール41
0でも生成される。これらの最初が、FEHLDA即ち
フロントエンドホールド・アクノリッジ信号である。こ
れは、プロセッサ、キャッシュ、メモリ、ホストバス読
出及びホストバス書込サイクルが進行中でないことを示
す入力信号を受信するANDゲートの出力の入力を持
ち、PCLK信号によってクロックされたD型フリップ
フロップの出力であり、プロセッサバスホールドリクエ
ストが受信される。第2の雑多な信号は、PCLK信号
によってクロックされたD型フリップフロップの出力に
よって供給され、キャッシュラインフル及びライトバッ
クのようなプロセッサキャッシュ化或いはL2キャッシ
ュ154読出配置であるサイクルの始めに供給され、そ
のようなサイクルの一連の最後のデータの終わりで遮断
されるPBURST信号である。
【0057】今図17に進んで、メモリ制御モジュール
412中の最初のステートマシーンは、MPROG即ち
メモリ進行ステートマシーンである。このステートマシ
ーンは、リセットで状態Aから始まる。単一メモリ読出
サイクル、バーストメモリ読出サイクル、単一メモリ書
込サイクル及びメモリライトバック或いはバースト書込
サイクルに関する、状態Aからの4つの基本経路が存在
する。制御は、DSPADS信号がアクティブであり、
メモリサイクルがMCYC信号によって示され、FEB
URST*信号によって示されるようにL2キャッシュ
ライン・フルバーストサイクルが進行中でなく、読出が
指示された時に、状態Aから、単一メモリ読出サイクル
用に使われる状態Dに進行する。勿論、L2キャッシュ
ラインフル操作は、プロセッサ152キャッシュライン
フルミスがL2キャッシュ154ライン一フルの原因で
あるので、常にプロセッサ152キャッシュラインフル
である。L2キャッシュ154によって供給されたプロ
セッサ152キャッシュラインフルは、主メモリに向け
られた操作でなく、他のいかなるキャッシュヒットとし
て扱われる。制御は、もし、SMRDY即ち同期化メモ
リ用意信号が供給され、MPGHPG 1ST信号によ
って示されるようにこのメモリサイクルに先立ってホス
トバス上にサイクルが既に進行していず、メモリサイク
ルが待機状態でもなく、他のメモリサイクルも開始して
いないならば、状態Dから状態Aに戻る。このMPGH
PG 1ST信号は、ホストバスH及びメモリへの同時
読出サイクルが順列変更命令(out of order)を得れな
いないように、データの戻りを遅延するために用いられ
る。もしメモリが用意でき、キャッシュサイクルが進行
中であるならば、或いはもしSMRDY信号が受信さ
れ、ホストバスサイクルが最初を開始したならば、制御
は状態Dから状態Lに進行する。もしメモリが用意を示
し、ホストバスサイクルが既に進行中でなく、他のメモ
リサイクルが待機中或は他のメモリサイクルが初期化中
のいずれかならば、制御が状態Dから状態Cに進行す
る。さもなければ制御は状態Dに留まる。
【0058】もしホストサイクルが既に進行中でなく、
キャッシュサイクルが進行中でなく、他のメモリサイク
ルが待機中或は他のメモリサイクルが開始中のいずれか
ならば、制御が状態Lから状態Cに進行する。未完ホス
トサイクルがすでに進行中でなく、キャッシュサイクル
が進行中でなく、メモリサイクルが待機中でなく或いは
他のメモリサイクルが始まっていないならば、制御が状
態Lから状態Aに進行する。全ての他のケースで制御は
状態Lに留まる。
【0059】もしメモリバースト読出が発生しているな
らば、真性となるDSPADS信号で指示され、メモリ
サイクルが指示され、L2キャッシュライン・フルバー
ストサイクルが指示され、読み出しサイクルが指示され
るように、制御は状態Aから状態Fに進展する。制御
は、もしメモリ操作が用意できたと指示され、キャッシ
ュサイクルが進行中であるならば、或いはもし用意が既
に指示され、ホストバスサイクルが最初を進行したなら
ば、状態Fから状態Eに進行する。そうでなければ、S
MRDY信号で示されるように、もしメモリ制御が用意
できたことを指示し、ホストバスサイクルがすでに進行
中でないならば、制御は状態Fから状態Gに進行する。
さもなければ制御は状態Fに留まる。MRDBHLD
LV即ちメモリ読出バーストホールド・リーブ(leav
e)として参照される信号が活性で、バーストの完了を
示すならば、制御は状態Eから状態Gに遷移する。MR
DBHLD LV信号の展開は、下に記述される。さも
なければ制御は状態Eに留まる。
【0060】もし、それが用意できていたとメモリが示
し、メモリサイクルが待機中或いはメモリサイクルが始
まると指示したならば、制御は、状態Gから状態Cに遷
移する。もし、メモリがその完成を示し、メモリサイク
ルの待機がなく或いはメモリサイクルの開始がないなら
ば、制御が状態Gから状態Aに遷移する。他の場合、制
御はメモリサイクルが終わるまで状態Gに留まる。
【0061】単一メモリ書込ケース毎に、制御は、プロ
セッサキャッシュ化サイクルでないという指示と共に、
ハイになるDSPADS信号、MCYC及びPWR信号
に基づいて、状態Aから状態Hに遷移する。制御は、用
意できたとメモリが示し、メモリサイクルが待機中或い
は始まる時に、状態Hから状態Cに進行する。もし、用
意できたとメモリが示し、他のメモリサイクルが待機中
でなく、或いはサイクルが始まっていなければ、制御が
状態Hから状態Aに進行する。他の全ケースでは制御
は、一般にメモリ操作の完成を待って、状態Hに留ま
る。
【0062】状態Aを出る最後のケースにおいて、制御
はメモリライトバックサイクルのために状態Aから状態
Iに進行する。これは、真性のDSPADS信号によっ
て示されて、即ちメモリサイクルスタートがMCYC信
号によって示され、PCACHE即ちプロセッサキャッ
シュ化信号があり、書込が発生する。用意ができたとメ
モリが示す時に、制御が状態Iから状態Jに進行する。
さもなければ制御は状態Iに留まる。もしメモリが用意
でき、他のメモリサイクルが待機中或いは、他のメモリ
サイクルが始まっているならば、制御は状態Jから状態
Cに進行する。もしメモリサイクルが指示するように完
了し、他のメモリサイクルが待機中でなく、或いは始ま
っていないならば、制御は状態Jから状態Aに進行す
る。この場合の好ましい実施例においては、プロセッサ
・データキャッシュ・ラインサイズが256ビット即ち
2メモリ操作であるので、2つの用意が必要である。さ
もなければ制御は状態Jに留まる。
【0063】もし、メモリサイクルがMCYC信号によ
って示され、それがバーストでなく、それが読出即ち、
MRDPND即ちメモリ読出待機として参照された信号
が真性と示されるならば、制御が状態Cから状態Dに進
行する。MRDPND信号展開は、下に記述される。制
御は、メモリサイクル指示、バースト指示及び読出即ち
MRDBPNDメモリ読出バースト待機信号の存在によ
って示されるように読出バーストケース毎に、状態Cか
ら状態Fに進行する。制御は、メモリサイクル、それが
プロセッサ・キャッシュ化でない事、それが単一書込サ
イクルの書込である事、或いはMWRPND信号がアク
ティブでメモリ書込が存在することの事実の指示で、状
態Cから状態Hに進行する。キャッシュ・ライトバック
である他の全ケースにおいて制御は状態Cから状態Iに
進行する。
【0064】MPROGステートマシーンは、いくつか
の信号を生成する。これらの信号は、次の通りである。
MRD=MPROGステートD MRDHLD=MPROGステートL MRDBHLD=MPROGステートE MRDB1=MPROGステートF MRDB2=MPROGステートG MWR=MPROGステートH MWRB1=MPROGステートI MWRB2=MPROGステートJ MPDREQ=(MPROGステートE+MPROGス
テートL)* MPROG=(MPROGステートA+MPROGステ
ートC)* EMPROG=(MPROGステートA+MPROGス
テートC+MPROG NEXTステートA+MPRO
G NEXTステートC)* MEMRD=(MCYC&PWR*)+MRD+MRD
B1+MRDB2+MRDHLD+MRDBHLDME
MWR=MWR+MWRB1+MWRB2 従って、MPROGステートマシーンは、メモリサイク
ルがMPROG、MEMRD、MEMWR及び他の信号
を供給することによってメモリシステムに存在している
時に指示されることが理解される。
【0065】今図18を参照して、MPEND即ちメモ
リ待機ステートマシーンが示される。上記したように、
MPROGステートマシーンは、その分岐状態の1つと
してメモリサイクルが待機中である事実を利用する。こ
の信号は、MPENDステートマシーンによって供給さ
れる。リセット時にはMPENDステートマシーンがア
イドル状態或は状態Aに進む。状態Aからの4つの出口
は、単一メモリ読出サイクル、バーストメモリ読出サイ
クル、単一メモリ書込サイクル及びメモリライトバック
サイクルケース毎の1つづつである。制御は、DSPA
DS信号、MCYC信号及びMPROG即ちメモリ進展
信号が真性であり、書込が指示され、プロセッサキャッ
シュ化操作でない時に、状態Aから状態Cに進行する。
従って、これが単一書込ケースである。メモリサイクル
がMPROGステートマシーンによって示されるように
進行中では、制御が状態Cに留まる。さもなければ制御
は状態Aに進行する。
【0066】制御は、真性のDSPADS、MCYC及
びMPROG信号、書込指示及びプロセッサキャッシュ
化である指示によって示されるように、メモリライトバ
ックサイクル毎に状態Aから状態Dに進行する。メモリ
サイクルがアクティブでない時に、制御は状態Dから状
態Aに進行し、そうでなければ状態Dに留まる。制御
は、読出しながらメモリサイクルが進行中で、バースト
でないメモリサイクル毎に状態Aから状態Eに進行す
る。これは、真性のDSPADS、MCYC及びMPR
OG信号及び非バーストケースで指示された読出によっ
て示される。制御は、進行中のメモリサイクルが完了し
た時に、状態Eから状態Aに進行し、そうでなければ完
了するまでの状態Eに留まる。もしDSPADS、MC
YC及びMPROG信号が真性で、メモリサイクルが進
行中で、他のメモリサイクルが要求され、読出サイクル
で、バーストが指示されたならば、制御が状態Aから状
態Fに進行する。進行中の現行のメモリサイクルが完了
した時、制御は状態Fから状態Aに進行する。さもなけ
れば制御は状態Fに留まる。次の状態として状態C或は
Dに入る時、或いはステートマシーンが状態C、D、E
或はFにある時には、MPEND即ちメモリサイクル待
機信号が真である。次の状態が状態Cであり、現行の状
態が状態Cである時には、MWRPND信号が真であ
る。次の状態が状態Dであり、現行の状態が状態Dであ
る時には、MWRBPND信号が真性である。MRDB
PND信号が状態Fの間真性であり、一方MRDPND
信号は状態Eの間真性である。
【0067】勿論、MCMモジュール412は、データ
が書込サイクルにおいてプロセッサデータバスからデー
タバッファ158にラッチされるべきであることの指示
のためを分担する。単一書込操作のケースにおいてはデ
ータがタッチ272と274にラッチされるが、バース
ト操作では全4つのラッチが利用される。しかしなが
ら、単一書込ケースにおいて、DPMLE1信号は、単
一書込が必要であることをデコーダが後に指示するの
で、実際発生されないことが注目される。
【0068】システムのリセット時には、図19に示す
MPMLE即ちプロセッサ対メモリラッチ・イネーブル
ステートマシーンが状態Aでスタートする。SET D
PMLE0とSET DPMLE1として参照される信
号は、MWEPBRDY信号即ちメモリ書込早期PBR
DY信号が形成される時に、状態Aでアクティブであ
る。その上にMWEPBRDY信号がアクティブな時、
DPMLE1信号は、状態Dで形成される。MWEPB
RDY信号がMWEPBRDYステートマシーン(図2
1)から受信されて、この書込サイクルが配達されて、
次のサイクルが適切に進んでいることを指示した時に、
制御が状態Aから状態Cに進行する。MWEPBRDY
信号が受信されなかった時には、最初の2つのラッチが
オープンなままであるように、制御は状態Aに留まる。
もしMPROGステートマシーンが、バースト書込状況
で、第1の部分がMWRB1信号で指示されるように進
行中であることを指示したならば、制御は状態Cから状
態Dに進行する。さもなければ制御は状態Cから状態A
に後戻りする。もしバースト操作が発生しているなら
ば、CLR DPMLE1信号は、ラッチ信号が不活性
で、状態Dで再びアクティブになることができるよう
に、状態Cでアサートされる。制御は、次の書込サイク
ルが配達されたことを指示するMWEPBRDY信号が
供給されるまで、状態Dに留まる。さもなければ制御は
状態Dに留まる。追加的に、状態Dにおいて、SET
PMDRDY信号即ちセット・プロセッサメモリ用意信
号は、PMRDY信号がメモリへの実書込サイクルを始
まるために形成できるように、MWEPBRDY信号が
指示された時に形成される。制御は全ケースにおいて状
態Eから状態Fに進行する。状態Fは、バースト序列に
おける第3書込サイクル毎に利用され、制御は状態Fに
留まり、一方このサイクルが連続的に配達されなかった
ことを示すMWEPBRDY信号がアサートされていな
い。状態Fがアクティブで、MWEPBRDY信号がア
サートされる時には、ラッチ276が開かれるように、
SET DPMLE2信号がアサートされる。サイクル
の配達が示された時、制御は状態Fから状態Gに進行す
る。制御は単一PCLK信号サイクルの後に状態Gから
状態Hに進行する。状態Hは、ライトバック操作中の4
つの書込サイクルの最後であり、制御が状態Aに進行し
て、MWEPBRDY信号がアサートされるまで、制御
は状態Hに残る。MWEPBRDY信号が形成される
時、SET DPMLE3信号は、状態Hでアサートさ
される。更に、SET PMDRDY信号は、MWEP
BRDY信号が形成されて、全幅のメモリデータがメモ
リに供給することができることを指示した時に状態Hで
形成される。
【0069】MPMLEステートマシーンの論議で示さ
れるように、信号SET PMDRDYはデータが配達
バッファに転送されて、転送できることを指示する。こ
の信号は、図20で示されたPMDRDYステートマシ
ーンによって利用される。このステートマシーンは、リ
セット後に状態Aで操作を始める。もしSET PMD
RDY信号が受信されるならば、制御は状態Aから状態
Bに進行する。さもなければ制御は状態Aに残る。もし
SET PMDRDY信号がアクティブであるならば、
制御が状態Bから状態Cに進行し、CLR PMRDY
*信号によって供給されるようにPMRDY信号をクリ
アするどんな指示もない。このCLRPMRDY信号
は、MRDY信号と、MWR、MWRB1及びMWRB
2信号の論理和信号との論理積である。それで、PMR
DY信号をクリアすることは、もしメモリが用意でき、
書込操作で、単一或いはバーストが進行中である事を指
示したならば適切である。制御は、PMDRDY信号の
クリアが適切で、SETPMDRDY信号がアクティブ
でないならば、状態Bから状態Aに進行する。そして。
さもなければ制御は状態Bに残る。PMDRDY信号の
クリアが適切であるならば、制御が状態Cから状態Bに
進行し、セットされない。さもなければ制御は状態Cに
残る。それで、PMDRDYステートマシーンは、書込
配達バッファが一杯にされことをメモリ制御セクション
に示すために、PMDRDY信号を形成する。このPM
DRDY信号は、状態B及びCでアクティブである。即
ち、MWR PMDRDY信号がMPMLEステートマ
シーンによって供給され、そのステートマシーンが状態
Aで真性の時に、MWEPBRDY信号は受信され、こ
れは単一書込操作である。それで、操作は、状態Aで始
まり、最初の128ビットが利用可能である時に状態B
に進行し、もし第2の128ビットが利用可能であるな
らば状態Cに進行して、最初の128ビットが実際にメ
モリシステムに書き込まれない。各128ビットが実際
書き込まれた時には、PMDRDYステートマシーンが
状態Cから状態Bに状態Aに順追って戻る。
【0070】上記したように、MPMLEステートマシ
ーン中の移行が主にMWEPBRDY信号に存在に基づ
いている。この信号は、図21で示されたMWEPBR
DYステートマシーンによって供給される。リセット時
には、このステートマシーンは、状態A(適宜アイドル
状態)で始める。もしSPADS信号がアクティブであ
り、メモリデータ書込サイクルがデコードされ、プロセ
ッササイクルが進行中でなく、或いはプロセッサ書込サ
イクルが完了しているならば、これの代わりにもしDS
PADS信号が存在し、主メモリデータ書込サイクルが
デコードされ、主メモリデータ書込サイクルが進行中
で、完了中ならば、制御が状態Aから状態Cに進行す
る。もしDSPADS信号がアクティブであり、局所メ
モリデータ書込サイクルがデコードされ、読出サイクル
が進行中だが完了していないならば、制御が状態Aから
状態Fに進行する。もしDSPADS信号がアクティブ
であり、主メモリデータ書込サイクルがデコードされ、
メモリ読出サイクルが完了中であるならば、或いはDS
PADS信号がアクティブであり、メモリデータ書込サ
イクルデコードされ、読出サイクルが完了中であるなら
ば、制御は状態Aから状態Gに進行する。PPEOC信
号が受信された時には、制御は状態Fから状態Gに進行
し、そうでなければ状態Fに留まる。常に制御は状態G
から状態Cに進行する。もしDSPADS信号がアクテ
ィブであり、主メモリデータ書込サイクルがデコードさ
れ、メモリ書込サイクルがアクティブであるが未完であ
るならば、制御は状態Aから状態Hに進行する。他の全
ケースでは制御が状態Aに留まる。サイクル信号のPP
EOC即ちサイクル終了信号が受信された時には、制御
は状態Hから状態Cに進行し、そうでなければ状態Hに
留まる。
【0071】制御は、もし主メモリデータ書込サイクル
がデコードされるならば、状態Cから状態Dに進行し、
そうでなければ状態Aへ戻る。MWRB1信号によって
示されるように、もしライトバックの最初の部分が進行
中ならば、或いはライトバックが待機中であるならば制
御は状態Dから状態Eに進行する。もしメモリサイクル
が進行中でなく、メモリ書込サイクルが待機中でなく、
或いはプロセッササイクルが進行中でないならば制御は
状態Dから状態Aに進行する。他の全ケース制御は、状
態Dから状態Jに進行する。もしPEOC信号がアクテ
ィブでサイクルが完了したことを指示したならば、制御
が状態Eから状態Jに進行する。他の全ケース制御は、
状態Eから状態Iに進行する。常に制御は状態Iから状
態Eに進行する。
【0072】状態Jからの多数の出口が存在する。もし
SPADS信号がアクティブであり、メモリデータ書込
がデコードされてメモリサイクルが始まろうとせず、キ
ャッシュサイクルが発生せず、ホストバスサイクルが発
生せず、プロセッサ読出サイクルが発生しないならば、
或は第2の条件として、もし単一書込サイクル或はライ
トバックサイクルの最初の部分が発生中で、キャッシュ
サイクルが進行中でなく、現在進行中の書込サイクルが
完了寸前ならば、或は第3の条件として、もしメモリ書
込サイクル或いはメモリバースト書込サイクルが待機中
で、書込サイクルが進行中で、他のいかなるサイクルも
進行中でないならば、制御は、状態Jから状態Cに進行
する。もしDSPADS信号がアクティブであり、主メ
モリデータ書込サイクルがデコードされ、メモリサイク
ルが進行中でなく、サイクルがプロセッサに対して完了
せず、キャッシュサイクル或いはホストバスサイクルが
進行中であるならば、制御が状態Jから状態Fに進行す
る。もしDSPADS信号が真であり、主メモリ書込デ
ータサイクルがデコードされ、メモリサイクルが進行中
でなく、現行サイクルが完了中ならば、制御が状態Jか
ら状態Gに進行する。もしメモリサイクルが進行中でな
く、メモリ書込サイクルが待機中でなく、メモリバース
ト書込サイクルが待機中でなく、SPADSとDSPA
DS信号がアサートされないならば、制御が状態Jから
状態Aに進行する。他の全ケースでは制御は状態Jに留
まる。
【0073】ステートマシーンが状態Cである時には、
MWEPRDY信号がこのステートマシーンによってア
サートされて、主メモリデータ書込サイクルはデコード
され、ハイのHWP信号又はハイのSMIACT信号に
よって指示されるように、書込サイクルが書込保護され
たメモリロケーションに存在しない。さらにMMEPB
RDY信号も、状態Eの間アクティブである。このMW
EPBRDY信号は、ローカル(局所)メモリ書込操作
のための早期用意信号と見なされ、他の早期用意信号と
結合させられて、実際にPBRDY信号を形成するため
に再同期化される。この結果、PBRDY信号より一P
CLK信号サイクル分早い信号が形成されて、早期と見
なされる。これらの早期用意信号の組立体が下に記述さ
れる。
【0074】勿論、メモリ制御モジュール412は、主
メモリ読出操作のための早期用意信号を展開することを
分担する。この信号は、図22で示されるように、MR
EPBRDYステートマシーンによって供給される。こ
のステートマシーンは、状態Aにおいてリセット操作を
始める。もしホストバスサイクルがまだ始まらず、キャ
ッシュサイクルが進行中でなく、メモリが用意できて単
一メモリ読出サイクルが発生し、或はメモリが用意がで
きてメモリ読出バーストサイクルが発生したならば、或
はこれの代りとしてもしメモリ早期開始信号が受信され
たならば、制御が状態Aから状態Bに進行する。他の全
ケースでは制御は、状態Aに留まる。MRERDY S
TRT信号の展開が図47で示される。
【0075】MRDHLDとMRDBHLD信号はOR
ゲート820に供給される。ORゲート820の出力
は、ANDゲート822によるSHPROG 1STと
HPROG*信号に合わせられる。これらMRDHLD
とMRDBHLD信号はORゲート824にも供給され
る。ORゲート824の出力とCPROG*とHPRO
G1ST*信号はANDゲート826によって結合され
る。ORゲート828はANDゲート822と826の
出力を受信して、PCLK信号によってクロックされた
D型フリップフロップ830のD入力に出力を供給す
る。SHPROG1STとMEMRDとSMRDY信号
は、出力がORゲート834によるMRDHLDとMR
DBHLD信号に合同させられたORゲート832によ
って結合される。ORゲート834の出力は、ANDゲ
ート836中のCPROG*とHPROG 1ST*信
号に合同させられる。フリップフロップ830の非反転
出力とANDゲート836の出力は、出力がMRERD
YSTRT信号であるORゲート838の入力である。
【0076】もし、これがメモリ読出バーストサイクル
であり、或いはメモリ読出バーストサイクルがホスト或
はキャッシュバス操作のためにホールドするならば、制
御が状態Bから状態Cに進行する。他の全ケースでは制
御が状態Bから状態Aに進行する。制御は、全ケースに
おいて状態Cから状態Dにおよび全ケースにおいて状態
Dから状態Eに進行する。制御は、MRDY即ちメモリ
用意信号がメモリ制御ブロック402から受信されるま
で、状態Eに留まり、その時、状態Fに進む。その後制
御は、連続したPCLK信号サイクルで、状態Fから状
態Gに状態Hに状態Aに引き続き進行する。
【0077】MREPBRDY即ちメモリ読出早期PB
RDY信号は、状態BとDとFとHで単一及びバースト
操作に適切にアサートされる。MRDBHLD LVと
して参照されるMRDBHLD出口信号は、既に記載し
たように、状態CでMPROGステートマシーンに供給
される。
【0078】追加的に、雑多な論理(ミスセレニアス・
ロジック)は、メモリ制御モジュール412に存在して
いる。この雑多な論理の機能の1つは、SETDPML
E<3..0>信号からPDMDLE*<3..0>信
号を作り出すことである。これらの信号の展開が 図2
3で示される。MPROGステートマシーンの状態Hで
アサートされるMWR信号は、2入力ORゲート500
と2入力ORゲート502の入力である。MWRB1信
号即ちライトバックサイクルの第一の部分がORゲート
500の第2入力に供給される。MPROGステートマ
シーンの状態JでアサートされるMWRB2信号即ちラ
イトバックサイクルの第2の部分は、ORゲート502
の第2入力に供給され、ライトバックサイクルの第2の
128ビットを指示する。メモリ制御ブロック402か
らのMRDY即ちメモリ用意信号は、2つのNANDゲ
ート504と506の第1入力に供給される。NAND
ゲート504の第2入力は、ORゲート500の出力で
あり、NANDゲート506の第2入力がORゲート5
02の出力である。NANDゲート504の出力は、第
2入力がD型フリップフロップ510の反転出力である
ANDゲート508の第1入力である。ANDゲート5
08の出力は、第2入力がSET DPMLE0信号を
受信する2入力ORゲート512の第1入力に供給され
る。ORゲート512の出力がフリップフロップ510
のD入力に供給される。フリップフロップ512の反転
出力は、PDMDLE*<0>信号である。
【0079】NANDゲート504の出力は、第2入力
が反転でなくCLR DPMLE1信号を受信する2入
力NORゲート514の反転入力にも供給される。NO
Rゲート514の出力は、第2入力がD型フリップフロ
ップ518の反転出力を受信する2入力ANDゲート5
16に第1入力として供給される。ANDゲート516
の出力は、第2入力がSET DPMLE1信号を受信
する2入力ORゲート520に第1入力として形成され
る。ORゲート520の出力は、フリップフロップ51
8のD入力に形成される。フリップフロップ518の反
転出力は、PDMDLE*<1>信号である。
【0080】NANDゲート506の出力は、2入力A
NDゲート522に第1入力として供給され、ANDゲ
ート522への第2入力がD型フリップフロップ524
の反転出力によって供給された。ANDゲート522の
出力は、第2入力がSETDPMLE2信号であるOR
ゲート526に第1入力として供給される。ORゲート
524の出力は、フリップフロップ524のD入力に形
成される。フリップフロップ524の反転出力は、PD
MDLE*<2>信号である。NANDゲート506の
出力は、第2入力がD型フリップフロップ530の反転
出力を受信する2入力ANDゲート528の第1入力に
も供給される。ANDゲート528の出力は、第2入力
がSET DPMLE3信号を受信する2入力ORゲー
ト532の第1入力に供給される。ORゲート532の
出力は、フリップフロップ530のD入力に供給され
る。フリップフロップ530の反転出力は、PDMDL
E*<3>信号である。PCLK信号は、フリップフロ
ップ510と518と524と530にクロック入力と
して供給される。
【0081】メモリ制モジュール412に類似した方法
においてホスト制御モジュール414は、一連のステー
トマシーンをも含む。これらの最初は、図24で示され
たHRD即ちホスト読出ステートマシーンである。この
ステートマシーンは、ホストバスHで走行即ち実行して
いる読出サイクル、単一またはバーストサイクルを追跡
する。HRDステートマシーンは、リセット時に状態A
で始める。制御は、DSPADS信号がアクティブであ
り、バーストでないホスト読出サイクルが要求され、ホ
スト書込サイクルが進行中で、1つが待機中の時に、状
態Aから状態Bに進行する。もしDSPADS信号がア
クティブであり、ホスト読出サイクルが要求され、バー
ストサイクルであり、ホスト書込サイクルが進行中で、
或いは1つが待機中ならば、制御が状態Aから状態Fに
進行する。制御は、DSPADS信号がアクティブであ
り、ホスト書込サイクルが進行中でなく或は1つが待機
中でない時に、要求されたホスト読出非バーストサイク
ル毎に、状態Aから状態Cに進行する。制御は、DSP
ADS信号がアサートされ、ホスト書込サイクルが進行
中でなく、1つが待機中でない時の、ホスト読出バース
ト毎に、要求で状態Aから状態Dに進行する。他の全ケ
ースでは制御が状態Aに留まる。
【0082】もしホスト用意信号が形成され、或はホス
ト書込が進行中でなく、ホスト書込が待機中でないなら
ば、制御は状態Bから状態Cに進行する。他の全ケース
では制御が状態Bに留まる。もし用意信号がホスト制御
ブロック404から受信され、或は書込サイクルは進行
中でなく、ホスト書込サイクルが待機中でないならば、
制御が状態Fから状態Dに進行する。他の全ケースでは
制御が状態Fに留まる。
【0083】もしHREPBRDY即ちホスト読出早期
PBRDY信号アサートされ、ホスト読出サイクルが待
機中でホスト読出バーストサイクルが待機中であり、或
はDSPADS信号がアサートされてホスト読出サイク
ルがアサートされているならば、制御は状態Cから状態
Eに進行する。もしHREPBRDY信号がアサートさ
れ、状態Eへの遷移毎に述べる更なる状態がないなら
ば、制御は状態Cから状態Aに進行する。他の全ケース
では制御が状態Cに留まる。制御は、もし読出ホストが
待機中であるならば状態Eから状態Cに進行し、そうで
なければ状態Dに進行する。もしHREPBRDY信号
があり、PEOC信号がアクティブであり、ホスト読出
が待機中で、ホストバースト読出が待機中で、読出サイ
クルがプロセッサバスでサンプルされたならば、制御が
状態Dから状態Eに進行する。もしHREPBRDY信
号があり、PEOC信号があり、状態Dから状態Eへの
遷移の更なる条件がないならば、制御が状態Dから状態
Aに進行する。他の全ケースでは制御が状態Dに留ま
る。ホストサイクルは、HLOCMEM*信号がハイ
で、非主メモリロケーションを示すI/Oサイクル或い
はメモリサイクルとして同定される。
【0084】2つの信号は、HRDステートマシーンに
よって供給される。これらは、状態B、C及びD中に活
性となるHRDPRG信号即ちホスト読出進展信号と、
状態B、C或いはD中に活性となるHOSTRD即ちホ
スト読出信号とであり、ホストサイクルが活性の時にプ
ロセッサが読み出し要求を指示する。
【0085】注目されるように、HRDステートマシー
ンは、2状態として、HRDPND及びHRDPBND
即ちホスト読出待機及びホスト読出バースト待機信号を
利用する。これらは図25のHRDPNDステートマシ
ーンによって供給される。HRDPNDステートマシー
ンは、リセット時に状態Aで始まる。DSPADS信号
がアサートされ、ホスト読出サイクルが進行中で、ホス
ト非バースト読出サイクルがプロセッサ150によって
要求された時に、制御が状態Aから状態Bに進行する。
もしDSPADS信号がアサートされ、ホスト読出サイ
クルが進行中で、ホストバースト読出サイクルがプロセ
ッサ150によってホストバスHに要求されたならば、
制御は、状態Aから状態Cに進行する。他の全ケースで
は制御が状態Aに留まる。HRDPRG即ちホスト読出
進展信号がデアサートされる時、制御は状態Bから状態
Aに進行する。他の全ケースでは制御が状態Bに留ま
る。HRDPRG信号がデアサートされる時、制御は状
態Cから状態Aに進行する。他の全ケースでは制御が状
態Cに留まる。HRDPND即ちホスト読出待機信号は
状態Bでアサートされ、一方HRDBPND信号が状態
Cでアサートされる。
【0086】HRDステートマシーンがトラックホスト
読出サイクルにだけ使われ、同様にステートマシーン
は、トラックホスト書込サイクルに使われる。これは、
図26で示されるように、HWTステートマシーンであ
る。このステートマシーンは、リセット時に状態Aから
入り、もしホスト書込サイクルがデコードされ、先のサ
イクルがローとなるHACK信号によって指示されるよ
うにアクノリッジされ、書込配達がイネーブルであり、
プロセッササイクルが待機中でないならば、状態Aから
状態Cに進行する。もしホスト書込サイクルが指示さ
れ、配達がイネーブルされず、プロセッササイクルが待
機中でないならば、或いはもしホストバスへの書込が要
求され、プロセッササイクルが待機中及び終了中で、配
達がイネーブルでないならば、制御が状態Aから状態G
に進行する。制御は、もしホスト書込サイクルが要求さ
れ、プロセッササイクルが待機中及び終了中で、配達が
イネーブルであるならば、状態Aから状態Fに進行す
る。もしホスト書込サイクルが要求され、プロセッササ
イクルが待機中でそして終了していなかったならば、制
御は状態Aから状態Eに進行する。他の全ケースでは制
御が状態Aに留まる。
【0087】もしホスト書込サイクルが待機中であるな
らば、或いはもしホスト書込サイクルが要求されて配達
がイネーブルであるならば、どちらの場合も、ホストバ
スが書込操作を受信する準備ができたことをSHRDY
即ち同期化HRDY信号が指示されたならば、制御は状
態Gから状態Cに進行する。このHRDY信号は、PC
LK信号によってクロックされたD型フリップフロップ
の非反転出力で供給される。マルチプレクサの出力は、
セレクションを形成するPHASE信号と共にD入力に
接続している。第0入力はフリップフロップの非反転出
力を受信し、第1入力がホストバスHにあるHERDY
*信号の反転バージョンであるHERDY信号を受信し
て、単一サイクル早期用意指示を示す。SEOC信号の
PEOCとPBRDYによって指示されるようにプロセ
ッササイクルが終わり、配達がデセーブルされたなら
ば、制御は状態Eから状態Gに進行する。プロセッササ
イクルが完了して、配達がイネーブルである時には、制
御が状態E或は状態Fに進行する。他の全ケースでは制
御が状態Eに留まる。制御は全ケースにおいて状態Fか
ら状態Cに進行する。制御は全ケースにおいて状態Cか
ら状態Dに進行する。
【0088】状態Dからのいくつかの出口が存在する。
最初の出口は、用意が受信され、ホスト書込サイクルが
要求され或いは待機中で、プロセッサ書込サイクルが進
行中でなく或いはホスト書込サイクルが第1書込でない
時或いは待機中のプロセッササイクルが完了しないなら
ば発生する状態Dから状態Eにである。制御は、書込が
待機中或いは書込が要求され、配達がイネーブルされ、
プロセッサによって進行中中の読出サイクルが終了中の
SHRDY信号の受取り時に状態Dから状態Fに進行す
る。制御は、用意が受信され、他の書込サイクルが待機
中或いは要求中で、配達がイネーブルされる時に、状態
Dから状態Cに進行する。もし用意が受信され、非配達
書込サイクルが待機中で、或いは書込サイクルが待機中
で、配達がデセーブルされるならば、制御は状態Dから
状態Gに進行する。もし用意が受信され、書込サイクル
が待機中でなく、どんな書込サイクルも要求されていな
いならば、制御は状態Dから状態Aに進行する。勿論H
WTステートマシーンは、ホスト書込サイクルが進行中
である時、及び用意信号が形成されるべきである時を指
示する。HWTPRG即ちホスト書込進展信号は、HW
Tステートマシーンが状態A以外の状態にある時に、存
在する。HWEPBRDY即ちホスト書込早期プロセッ
サ用意信号は、HRDY即ちホスト用意信号がリターン
した時に、状態C或いは状態Gに形成される。SET
DPHLE信号は、状態Cの間にアクティブである。
【0089】注目されるように、HWTステートマシー
ンは、書込サイクルが待機中であるかどうか知っている
必要がある。これは図27のHWL1PNDステートマ
シーンによって行われる。このステートマシーンは、リ
セット時に状態Aで始まる。もしホスト書込サイクルが
進行中であり、ホスト書込サイクルが要求され、配達が
イネーブルされ、先の書込サイクルが完了していなかっ
たならば、或いは書込サイクルの第2レベルが配達、待
機中ならば、制御が状態Aから状態Bに進行する。DS
PADS信号が真であり、書込サイクルが進行中で、書
込サイクルが要求され、進行中の書込サイクルが完了し
ていず、配達がデセーブルされた時或はもし第2の非配
達書込サイクルは待機中であるならば、制御は、状態A
から状態Cに進行する。他の全ケースでは制御が状態A
に留まる。用意信号がホスト制御器404から受信され
る時、制御は状態Bから状態Aに進行する。全部他の全
ケースでは制御が状態Bに留まる。用意が戻る時には制
御は状態Cから状態Aに進行し、そうでなければ、状態
Cに留まる。HWTL1PND即ち第1レベルホスト書
込待機信号は状態Bの間アクティブであり、HWTNP
L1PND即ちホスト第1レベル非配達書込サイクル待
機が状態Cで真である。
【0090】要は、一度に3つのホストバス書込サイク
ル待機を持つことができることである。これは、1つの
サイクルがホストバスHに配達でき、1つのサイクルが
ホストバスHからEISAバスEに配達でき、他のもの
がプロセッサ152から待機できるので可能である。そ
れゆえに2レベルを追跡することは必要である。この追
跡は、図28のHWL2PNDステートマシーンによっ
て行われる。このステートマシーンは、リセット時に状
態Aで始まって、DSPADS信号がアクティブで、ホ
ストバスへの書込サイクルが要求され、配達がイネーブ
ルされ、配達或いは配達されない第1書込サイクルが待
機中である時に、状態Bに進行する。もしDSPADS
信号がアクティブであり、ホスト書込サイクルが要求さ
れ、そのサイクルの配達がイネーブルでなく、サイクル
がすでに待機中であるならば、制御が状態Aから状態C
に進行する。その他の全ケースでは制御は状態Aに留ま
る。配達或いは非配達書込サイクルが待機中でない時に
は、制御が状態Bから状態Aに進行する。即ち、予め待
機していたサイクルがもはや待機中でなく、完了してい
る。他のケースでは制御は状態Bに留まる。同様に先の
待機信号が実行されるならば、制御は状態Cから状態A
に進行する。さもなければ制御は状態Cに留まる。HW
TL2PND即ちホスト書込配達レベル2待機信号が状
態Bでアクティブであり、HWTNPL2PND即ちレ
ベル2書込待機非配達信号が状態Cでアクティブであ
る。
【0091】勿論、プロセッサ用意信号が書込ケースに
供給されると、読出ケースにおける早期プロセッサ用意
を形成することが必要である。これは図29のHREP
BRDYステートマシーンによって行われる。このステ
ートマシーンは、リセット時に状態Aで始まる。もしホ
スト読出が進行中で、ホスト書込が進行中でなく、プロ
セッササイクルが待機中で、現在のプロセッササイクル
が終了中でなく、進行中のホストバスサイクルが進行中
のプロセッササイクルに先立って始めていないならば、
制御は状態Bに進行する。他の全ケースでは制御が状態
Aに留まる。制御は、現行のプロセッササイクルが完了
中で、ホストバスサイクルが完了していなかったなら
ば、状態Bから状態Cに進行する。制御は、ホストバス
サイクルが完了中で、プロセッササイクルが完了してい
ないならば、状態Bから状態Dに進行する。制御は、ホ
スト及びプロセッササイクルが完了しているならば、状
態Bから状態Eに進行する。さもなければ制御は状態B
に留まる。制御はホストサイクルが完了している時に状
態Cから状態Aに進行する。さもなければ制御は状態C
に留まる。制御はプロセッササイクルが完了している時
に状態Dから状態Eに進行する。さもなければ制御は状
態Dに留まる。常に制御は状態Eから状態Aに進行す
る。
【0092】HREPBRDY即ちホスト読出早期PB
RDY信号は、状態Cでホストバスサイクルが完了した
ならば状態Eで形成され、或いは状態Aでホスト書込サ
イクルが進行中でないならば、進行中のホストサイクル
は最初で、完了中である。
【0093】図51には、ホスト制御モジュール414
にも含まれるある雑多な論理が示される。PDHDLE
*信号は、D型フリップフロップ700の反転出力とし
て供給される。PDHDLE*信号は、ORゲート70
2にも接続している。ORゲート702は、他入力とし
てHWTステートマシーンからSET DPHLE信号
を受信する。ORゲート702の出力は、NANDゲー
ト704の反転HRDY信号の指示と共に論理積され
る。NANDゲート704の出力は、フリップフロップ
700のD入力に供給される。フリップフロップ700
は、PCLK信号によってクロックされる。論理(ロジ
ック)は、HPROG即ちホストバスサイクル進展信号
をも展開する。これはORゲート706の出力として展
開される。ORゲート706は、ORゲート708の出
力とD型フリップフロップ710の非反転出力を受信す
る。ORゲート708は、HRDPRGホスト読出進展
信号、HWTPRGホスト書込進展信号及びHWL1P
ENDホスト書込待機信号を受信する。ORゲート70
6の出力は、第2入力がNORゲート714の出力を受
信するANDゲート712の第1入力であり、このNO
Rゲート714が順にPEOC及びPBRDY信号を受
信して、現行のプロセッササイクルが完了していないこ
とを指示する。ANDゲート712の出力は、フリップ
フロップ710のD入力として供給される。フリップフ
ロップ710は、PCLK信号によってクロックされ
る。HCMモジュール414によって生成された関心の
最後の信号は、無効化パリティチェック即ちIGNPC
HK信号である。この信号は、パリティがホストバスH
で維持されないので、ホストバスHからの読出操作の間
にプロセッサ152によって利用される。IGNPCH
K信号は、入力が2入力ORゲート718の出力を受信
するフリップフロップ716の非反転出力として供給さ
れる。ORゲート718への第1入力は、D型フリップ
フロップ720の非反転出力によって供給される。第2
入力は、フリップフロップ720のD入力にも接続して
いるD型フリップフロップ722の非反転出力によって
供給される。HREPBRDY信号は、フリップフロッ
プ722のD入力に供給される。そして全ての3つのフ
リップフロップ716と720と722はPCLK信号
によってクロックされる。
【0094】データバッファ158を検討すると、FE
CONモジュール400が読出ケース間にマルチプレク
サ338の適当な制御を許すために、PDSEL<
1..0>信号をも供給されなければならないことは、
理解される。これは主に図30で指示されたDPSEL
ステートマシーンの使用によって行われる。このステー
トマシーンは、リセットで状態Aに留まり、状態B、C
或はDにあるHRDステートマシーンによって示される
ようにもしホスト読出サイクルが進行中であるならば、
或いはもしホスト読出サイクルが進展中ならば、状態C
に進行し、HPROG 1ST信号によって示されるよ
うにホストサイクルが第1データ部分を開始しているの
で、そのデータ部分に戻している。制御はいくつかの異
なる状態下で状態Aから状態Bに進行する。これらの第
1は、メモリ読出サイクルが進行中にあり、早期PBR
DY信号が供給され、サイクルが完了せず、最初進行す
るホスト読出サイクルが進行中でない時である。状態A
から状態Bへの遷移用の第2の状態は、メモリ読出サイ
クルが発生し、早期PBRDYが供給され、サイクルが
終り、完了中のサイクルがLPAI03信号によって示
されるようにクリアされたPA<3>ビットを持ってい
る時である。状態Aから状態Bへの遷移の最後の状態
は、MEMRDとMCYC信号によって示されるように
メモリ読出サイクルが発生し、メモリサイクルがメモリ
制御ブロック402によってアクノリッジされ、PA<
3>信号がクリアされて下位64ビットを指示し、PB
RDY信号がアサートされなかった時である。他の全ケ
ースでは制御は、状態Aで留まる。
【0095】もし最初始まるホスト読出サイクルが発生
するならば、制御は状態Bから状態Cに進行する。状態
Aから状態Bへの遷移毎に真である同じ状態のために制
御は、それらの特定の状態において利用されるようにP
A<3>ビットがセットされることを除いて状態Bから
状態Aに進行する。さもなければ制御は状態Bで留ま
る。ホスト読出サイクルが発生せず、メモリ読出サイク
ルが発生し、ビットPA<3>がセットされない時に
は、制御が状態Cから状態Aに進行する。もしホスト読
出サイクルが発生し、読出サイクルは発生し、PA<3
>ビットがセットされるならば、制御が状態Cから状態
Bに進行する。さもなければ制御は状態Cで留まる。
【0096】DPSELステートマシーンの特定の状態
は、マルチプレクサのセレクションを決定する。状態A
において、NPDSEL<1..0>として参照した信
号は第1のチャンネルを示すためにセットされる。状態
Bにおいて、NDPSEL<1..0>信号は第2のチ
ャンネルを示すためにセットされ、一方状態Cにおい
て、NDPSEL<1..0>信号はマルチプレクサ3
38の第3入力を示すためにセットされる。これらND
PSEL<1..0>信号は、2つのD型フリップフロ
ップの入力に供給され、これらフリップフロップがPC
LK信号によってクロックされて、フリップフロップの
非反転出力がPDSEL<1..0>信号を生成してい
る。
【0097】プロセッサ152に供給されてパイプライ
ンを許容しなければならない1つの信号は、PNA即ち
プロセッサ次アドレスとして参照された信号である。プ
ロセッサ152はこの信号を見て、それがパイプライン
モードで次アドレスを供給されることができることを知
る。それゆえにPNA信号を適当に発生することは、必
要である。一連のステートマシーンとランダムな論理は
この信号を供給するために利用される。最初のステート
マシーンは、図31のPNAステートマシーンである。
このステートマシーンは、PNA信号が所定のウィンド
ウの範囲内で形成することができたという指示を供給す
るために使われる。ステートマシーンは、リセットで状
態Aから始まる。もしSPADS信号が真であり、EP
NA DEC即ち早期PNAデコードとして参照された
信号が供給されるならば、制御は状態Aから状態Bに進
行する。EPNADEC信号は、2つの状態の下で開発
される。第1は、ローカルすなわちプロセッサバス位置
に対してでなく、特別のサイクルでないプロセッサ読出
サイクルである。第2は、L2キャッシュ154によっ
て応答されず、要求されるコード書込でない非特殊非局
所プロセッサ書込サイクルである。さもなければ制御は
状態Aで留まる。もしPPEOC信号がアサートされて
サイクルの完了を示したならば、制御が状態Bから状態
Aに後戻りする。PNA信号がアサートされて、サイク
ルが完了しないならば、制御は状態Bから状態Cに進行
する。制御は全ての他のケースにおいて状態Bで留ま
る。もしSPADS信号がアサートされ、EPNA D
EC信号がアサートされず、或いはサイクルが終わって
いるならば、制御は状態Cから状態Aに後戻りする。も
しSPADS信号がアサートさされ、現行のサイクルが
終わり、上記のEPNADECWR信号即ち書込状態が
真でなく或いは読出が進行中でないならば、制御は状態
Cから状態Bに進行する。もしSPADS信号がアクテ
ィブであり、現行のサイクルが完了せず、EPNA D
EC信号がアクティブであるならば、制御が状態Cから
状態Eに進行する。もしSPADS信号がアクティブで
あり、現在進行中のサイクルが完了し、EPNA DE
C信号がアサートされているならば、制御が状態Cから
状態Dに進行する。他の全ケースでは制御は、状態Cで
留まる。状態Dでは、操作がパイプラインであるという
指示である。もしPPEOC信号がアサートされてサイ
クルの完了を示すならば、制御が状態Dから状態Bに進
行する。さもなければ制御は状態Dで留まる。制御は全
てのケースにおいて状態Eから状態Bに進行する。
【0098】PNAステートマシーンは1つの信号を供
給する。これはステートマシーンが状態Bにある時、P
NA OK信号である。これは、1つのサイクルが現在
パイプラインされず、或いは効果的に完了していないの
で、他のアドレスを受信することは可能であるとの指示
である。
【0099】RDPNAステートマシーンとして参照さ
れたステートマシーンは、図32で示されて、PNA信
号が現行の読出サイクル毎に発生することができること
を指示するために用いられる。制御はリセット時に状態
Aで始まる。もし信号EPNA DECRD(EPNA
DEC信号の読出用)が真であり、状態の以下の組の
いずれも真であるならば、制御は状態Aから状態Bに進
行する。第1組は、もしMCYC即ちメモリサイクルが
指示され、アクノリッジがメモリ制御ブロック402か
ら受信されたならばである。第2組は、もしホストサイ
クルがアクティブであり、アクノリッジがホスト制御ブ
ロック404から受信されたならばである。第3組は、
もしDSPADS信号がアクティブであり、サイクルが
メモリサイクル或いはホストサイクルであるならばであ
る。他の全ケースでは制御が状態Aで留まる。もしPN
A信号がアサートされるならば、或いは現行のサイクル
がPPEOC信号によって示されるように完了している
ならば、制御は状態Bから状態Aに後戻りする。さもな
ければ制御は状態Bで留まる。RDPNA OK信号
は、状態Bで或いは次の状態は状態Bである時に発生す
る。
【0100】類似のステートマシーン(WRPNAステ
ートマシーン)は図33で示されて、そして書込サイク
ルケースのためのWRPNA OK信号を生成するため
に使われる。このステートマシーンはリセットで状態A
から始まって、3つの条件の1条件下で状態Bに進行す
る。最初の条件は、SPADS信号がアサートされ、E
PNA DECWR信号がアサートされ、メモリ書込が
発生せず、ホスト書込は進行中でないか、或いはホスト
制御ブロック402が操作をアクノリッジした時であ
る。第2の条件は、SPADS信号とEPNA DEC
信号が両方共アサートされ、メモリ書込サイクルが進行
中でEMACK信号によってまもなく完了するものとア
クノリッジされ、ホストバス書込が進行中でなく或いは
それはアクノリッジされた時である。最後の条件は、ホ
ストサイクルが発生し、それがアクノリッジされ、進行
中のホスト書込であり、PNA信号が送られず、EPN
ADECWR信号がアサートされた時である。他の全ケ
ースでは制御が状態Aで留まる。もしPNA信号がアサ
ートされるならば、或いはPPEOC信号によって示さ
れるように、サイクルが終わったならば制御は状態Aへ
状態Bから戻る。さもなければ制御は状態Bで留まる。
WRPNA OK信号は、ステートマシーンが状態Bに
あり、或いは次の状態が状態Bであるならば開発され
る。
【0101】PNAGENモジュール416は、現実の
PNA信号を生成するために、いくらかのランダムな論
理を含む。PNA信号は、フリップフロップの反転出力
によって生成されたPNA*信号と共にフリップフロッ
プの非反転出力によって生成される。フリップフロップ
は、PCLK信号によってクロックされる。フリップフ
ロップへの入力は、PNA OK信号、HPNAOK信
号、及びRDPNAOKとWRPNAOK信号を結合す
るORゲートの出力の入力を持つORゲートの出力によ
って供給される。HPNA OK信号は、その入力とし
て、ホスト書込サイクルが進行中であることを指示する
信号及びORゲートの出力を持つNANDゲートの出力
である。このORゲートは、第1入力としてホスト読出
サイクルが進行中を指示する信号及び第2入力としてA
NDゲートを持ち、このANDゲートは、入力としてホ
ストサイクルがあることを示す信号及びEPNA DE
CRD信号を持っている。
【0102】以上説明したように、多数のステートマシ
ーンは、PBRDY即ちプロセッサバースト用意信号を
進行用に用いている。プロセッサ152で形成されるよ
うに分岐追跡メッセージのようなある特殊なサイクル
は、ホストバスHに供給されないで、エラーを防止しな
ければならないが、用意指示は供給しなければならな
い。更に、プロセッサ152は、どの現実の操作も発生
しないけれども、書込保護エリアへの書込操作毎の用意
指示を受信しなければならない。これら特定のケースの
ためのEPBRDY信号は、図34で示されたWPEP
BRDYステートマシーンによって供給される。このス
テートマシーンは、リセット時に状態Aから始まり、も
しDSPADS信号が真であり、ローカル或は主メモリ
へのデータ書込が指示され、SMIモードがアクティブ
でなく、書込保護ステータスがDDF164から指示さ
れたならば、或いはもしDSPADS信号が真であり、
分岐トレースメッセージがデコードされたならば、更に
これら両方のケースに、プロセッササイクルがメモリ制
御器156で進行中でなく、或いは進行中のサイクルが
終わっていず、PBRDY信号がアサートされることの
追加条件を満たしたならば、状態Bに遷移(進行)す
る。プロセッササイクルが進行中において、もしDSP
ADS信号がアサートされ、ローカル(局所)メモリ書
込データ操作が指示され、SMIモードがアクティブで
なく、書込保護指示がDDF164から受信されたなら
ば、或いはDSPADS信号が真であり、分岐トレース
メッセージがデコードされたならば、制御が状態Aから
状態Cに進行する。さもなければ制御は状態Aで留ま
る。常に制御は状態Bから状態Aに進行する。進行中の
サイクルがアサートされたPEOCとPBRDY信号に
よって示されるように完了した時には、制御は状態Cか
ら状態Bに進行する。さもなければ制御は状態Cで留ま
る。WPEPBRDY信号は、状態Bでアサートされ
る。それで、このステートマシーンは、書込保護メモリ
へ書込または分岐トレースメッセージのケースにおける
プロセッサBRDY指示を供給するために使われる。書
込保護エリアへの書込のケースにおいて、他のステート
マシーンのどれも、この操作を実行しない。そして実際
にデータは無視される。同様にデータは、分岐トレース
メッセージ毎に無視されて、ホストバスHに渡されな
い。
【0103】この最後のEPBRDY信号の展開と共に
PBRDY信号を展開する論理を記述することは、適当
である。EPBRDY信号として参照される信号は、M
REPBRDYとMWEPRDYとHREPBRDYと
HWEPBRDYとWPEPBRDY信号と相互に論理
和して展開される。この信号は、キャッシュ制御器がキ
ャッシュラインフルを形成していないことの指示(出
力)と論理積がとられて、D型フリップフロップの入力
に供給される。フリップフロップの非反転出力がPBR
DY信号であり、一方フリップフロップの反転出力は、
プロセッサ152に供給されるPBRDY*信号であ
る。
【0104】既に注目されるように、MCYCとHCY
Cとして参照された2つの信号が利用された。図10で
示されるように、MCYC信号はMCONブロック40
2に供給され、HCYC信号がHCONブロック404
に供給されて、実行サイクルを指示する。このデコード
がある論理によって行われる。
【0105】MCYC論理は、図35で示される。6入
力ANDゲート550は、PMIO、PDC、PWR
*、PLOCAL*、CHITOK*及びHLOCME
M信号を受信して、L2キャッシュ154ヒットでない
主メモリデータ読出サイクルをデコードする。6入力A
NDゲート552は、PMIO、PDC* PWR*
PLOCAL*HLOCMEM及びCHITOK*信号
を受信して、L2キャッシュ154ヒットでないメモリ
命令(コマンド)読出サイクルをデコードする。6入力
ANDゲート554は、PMIOとPDCとPWRとP
LOCAL*とHLOCMEM信号と、SMIACT及
びHWP*信号を受信する2入力ORゲート556の出
力とを受信する。それで、このANDゲート554は、
メモリデータ書込サイクルをデコードする。SMIAC
TとHWP*信号がORゲート556で論理和されるこ
とは、注目される。これは、システム管理メモリのよう
な通常書込保護されたメモリのエリアがシステム管理モ
ード期間に書込保護されないように、行われる。この適
宜メモリのエリアがSENエリアとして、上書きする危
険なしで利用されることができ、しかもSMMモードの
間に充分にアクセスすることができる。
【0106】ANDゲート550、552及び554の
出力は、出力が2入力ANDゲート558に第1入力と
して供給された3入力ORゲート557の入力に供給さ
れる。ANDゲート558の第2入力が、DSPADS
信号を受信する。ANDゲート558の出力は、第2入
力がD型フリップフロップ562の非反転出力を受信す
る2入力OR560への一入力として供給される。OR
ゲート560の出力がMCYC信号であって、そして2
入力ANDゲート564の入力に供給される。ANDゲ
ート564の第2入力が反転されて、MACK信号を受
信する。ANDゲート564の出力は、フリップフロッ
プ562のD入力に供給されて、このフリップフロップ
562がPCLK信号によってクロックされる。
【0107】HCYC信号の展開が、図36で示され
る。4入力ANDゲート570は、CHITOK*とP
MIOとPDCとPWR信号を受信して、ホストバスメ
モリデータ書込操作をデコードする。5入力ANDゲー
ト572は、PMIOとPDC*とPWR*とHLOC
MEM*とCHITOK*信号を受信して、キャッシュ
ヒットでないホストバスメモリコマンド読出操作をデコ
ードする。5入力ANDゲート574は、PMIOとP
DCとPWR*とHLOCMEM*とCHITOH*信
号を受信して、キャッシュヒットでないホストバスメモ
リデータ読出操作をデコードする。2入力ORゲート5
76は、PMIO*とPWR*信号を受信して、ホスト
バスI/O読出操作をデコードする。3入力ORゲート
578は、PMIO*とPDCとPWR信号を受信し
て、ホストバスI/Oデータ書込操作を指示する。AN
Dゲート570、572及び574とORゲート576
及び578の出力は7入力ORゲート580に入力とし
て供給される。このORゲート580の残りの入力に
は、それぞれ80486の等価特別のサイクルであるプ
ロセッサバスローカルサイクル及び特別サイクルを指示
して、ホストバスに転送されるPLOCAL及びHSP
CYC信号が供給される。ORゲート580の出力は、
第2入力がDSPADS信号を受信する2入力ANDゲ
ート582への一入力として供給される。ANDゲート
582の出力は、2入力ORゲート584への一入力と
して供給される。ORゲートへの第2入力は、D型フリ
ップフロップ586の非反転出力に接続している。フリ
ップフロップ586は、PCLK信号によってクロック
される。ORゲート584の出力は、第2入力が反転し
て2入力ANDゲート590の出力を受信する2入力A
NDゲート588への一入力として供給される。AND
ゲート588の出力は、フリップフロップ586のD入
力に供給される。HACK信号は、ANDゲート590
への一入力として供給され、2入力NANDゲート59
2の出力が、第2入力を形成する。PPROGRDとP
WR信号はNANDゲート592への入力である。NA
NDゲート592の出力は、第2入力がORゲート58
4の出力を受信する2入力ANDゲート594にも1つ
の入力として供給される。ANDゲート594の出力
は、HCYC信号である。これでフロントエンド制御器
400の記述を完了する。
【0108】メモリ制御ブロック402は、図12でよ
り詳細に示され、そのステートマシーンは、この時点で
説明される。CPUMEMモジュール430は、プロセ
ッサ152から導かれたメモリ操作の実制御を分担す
る。CPUMEMモジュール430の核は、図38に示
すようにMEM即ちメモリステートマシーンである。制
御は、リセット時にMI即ちメモリアイドルである。こ
の状態において、ステートマシーンは、アイドルで、D
RAMをプリチャージし、MRAS*信号はハイであ
る。メモリサイクルが要求されていることを示すMCY
C信号がアクティブであり、DRAMが充分にプリチャ
ージされなかったことを示して、信号からのCHGTO
*即ち未充電タイムアウト信号がアサートされないな
ら、制御は状態MIから状態MRCに進行する。MCY
C信号によって示されるように、もしサイクルが要求さ
れ、CHGTO信号が真でプリチャージ時間が完了した
ことを指示するならば、制御が状態MIから状態MR1
に或はメモリRAS1に進行する。BMPROG即ちバ
スマスタサイクル進展信号がアサートされる時、制御は
状態MIから状態MNに進行する。他の全ケースでは制
御が状態MIで留まる。プリチャージ時間が完了された
ことを指示して、CHGTO信号がアクティブな時、制
御は状態MRCから状態MR1に進行する。制御は全て
のケースにおいて状態MR1から状態MR2に進行す
る。DDF164からのLSPD60即ちラッチされた
SPD6O信号によって示されるように、DRAMが6
0nsの速度を持ち、読出サイクルが指示され、或いは
PMDRDY即ちプロセッサ対メモリデータ用意信号が
アクティブであるならば、制御が状態MR2から状態M
C1(CAS状態の最初)に進行する。書込サイクルが
要求され、PMDRDY信号がアサートされないなら
ば、制御は60nsDRAM毎に状態MR2から状態M
R4に進行する。全部他の全ケースでは制御が状態MR
2から状態MR3に進行する。特に80nsDRAMの
ケースにおいては、制御が状態MR2からMR3に進行
する。制御は全てのケースにおいて状態MR3から状態
MR4に進行する。もし読出サイクルが要求され、或い
はPMDRDY信号によって示されるようにデータが利
用可能であるならば、制御がMR4から状態MC1に進
行する。制御は全ての他のケースのために状態MR4で
留まる。
【0109】常に制御は状態MC1から状態MC2に進
行する。FECONブロック400がメモリからデータ
を受ける準備ができていることを指示して、MRDRE
Q信号がアサートされる時、制御は状態MC2から状態
MC3に進行する。全部他の全ケースでは制御が状態M
C2で留まる。常に制御は状態MC3から状態MRに進
行する。
【0110】状態MNからの多数の出口が存在する。状
態MNでMRAS*信号はローである。もしバーストサ
イクルが発生したならば、真性のMCYC、BURST
*、MWR*及びPGHIT信号で指示されるように非
バーストメモリページヒット読出が発生したならば、或
いはアサートされたMCYC信号とBURST*とPG
HITとPMDRDYとPRMWR信号によって示され
るように、次のサイクルが非バーストメモリページヒッ
トであり、先のサイクルメモリ書込であり、データが利
用可能であるならば、制御は状態MNから状態MC1に
進行する。PRMWR信号は先のメモリサイクルが書込
サイクルであることを示す。状態MNから状態MC1へ
のこのループは、最も短いループであって、66MHz
クロックを基準にして、2つのウエイト状態ループを指
示する。それで、ページヒットが得られた時には、メモ
リ制御器156は、ほとんどのページヒット操作用にメ
モリサイクルモード毎に2ウエイト状態に動作すること
ができる。制御は、真性のMCYC、BURST*、M
WR、PGHIT及びPMDRDY*信号によって指示
されるように、データが供給できない非バーストメモリ
ページヒット書込において、状態MNから状態MR4に
進行する。勿論、制御は、真性のMCYC、BURST
*、MWR、PGHIT及びPRMWR*信号によって
指示されるように、読出操作に続く書込を有する非バー
ストメモリページヒットにおいて、状態MNから状態M
R4に進行する。もし他のサイクルが要求されるなら
ば、制御は状態MNからMRCに進行する。それは、真
性のMCYC、BURST*及びPHGHIT*信号に
よって示されるように非バースト非ページヒットであ
る。制御は、メモリ性能モニタが次のサイクルがたぶん
ページヒットでなく、それ故ページミスの場合時間がセ
ーブできるかが解るためにDRAMをプリチャージする
に適切であることを指示するので、もしアイドル状態が
非バースト、非バスマスタサイクル、非メモリサイクル
毎に必要ならば、或いはもしホールド要求がプロセッサ
152によってアクノリッジされたならば、状態MNか
ら状態MIに進行する。これらの状態は、MCYC*及
びBURST*信号と、真であるBMPROG*信号
と、HHLDA或いはMPM HIT*によって示され
る。他の全ケースでは制御が効果的に第2のアイドル状
態である状態MNに留まる。この場合、MRAS*信号
がローに保持される。特に、次の状態を指示するメモリ
パフォーマンスモニタは、ページヒットでありそうなら
ば、制御が状態MNに留まり、ヒットを待って状態MC
1或いはMR4に遷移する。
【0111】注目されるように、MEMステートマシー
ンは、バーストが発生しているか否かを知る必要があ
る。この情報は、図38で示されたBURSTステート
マシーンによって供給される。このステートマシーン
は、リセットで状態Aから始まり、NEWCYC及びC
BURST信号に基づいて、キャッシュバースト操作が
発生し新規サイクルが展開されたならば、状態Bに進行
する。このNEWCYC信号は、MACK及びMCYC
信号の論理積であり、CBURST信号がプロセッサ1
52ライトバック即ちL2キャッシュ154センド・ア
ロケート(send allocate)ラインフルを指示する。全
部他の全ケースでは制御が状態Aで留まる。MBRDY
信号が受信されて、128ビットのデータがメモリシス
テムに転送されたことを指示した時には、制御が状態B
から状態Cに進行する。さもなければ制御は状態Bで留
まる。制御は、MBRDY信号の次の発生で状態Cから
状態Aに戻り、さもなければ状態Cで留まる。従って、
新規なバーストサイクルの開始が指示された時には、デ
ータが転送されると、制御が状態Bから状態Cに進行す
る。それで、BURST2信号が状態Cでアサートさ
れ、EBURST信号が状態Bで形成されるBURST
信号は、状態BとCの期間にアサートされる。
【0112】CHGTO即ちプリチャージタイムアウト
信号は単純なカウンタによって供給される。MRAS信
号がアサートされされる時はいつでも、カウンタに4の
デフォルト値がロードされる。この信号のアサートは、
下に記述される。MRAS信号がデアサートされた(ハ
イのMRAS*信号)時のPCLK信号の各立上がりエ
ッジ毎に、カウントダウンされる。カウンタが1の値に
届く時、これはプリチャージ時間が60nsDRAMの
ために完了されたという、指示である。カウンタが0に
なった時、これはプリチャージ時間が80nsDRAM
を完了したという、指示である。それ故、CHGTO信
号は、MRAS*信号のデアサートの開始から60ns
DRAM用に3つの計数で、80nsDRAM用に4つ
の計数で供給される。
【0113】このPGHIT即ちページヒット信号はペ
ージヒット検知ブロックによって供給される。これは、
プロセッサアドレス<27..12>ビットのためのラ
ッチを含む相当の適宜ブロックで、このラッチはアドレ
スがメモリに供給されている時にアクティブとなるプロ
セッサメモリアドレス・ラッチイネーブル信号で操作さ
れる。ラッチの出力は比較器の1つの入力に供給され、
一方アクティブ即ち現行のプロセッサアドレス<2
7..12>ビットが比較器の2番目の入力に供給され
る。もし、これらが等しいならば、これは、新規列アド
レスが供給しなくてもよいように、ページヒット操作で
あると見なす。ある雑多な論理は、CPUMEMモジュ
ール430にも含まれる。最初の機能は、MRDY信号
(図39)の世代である。このMRDY信号はD型フリ
ップフロップ740の出力がPCLKによって信号をク
ロックされるように供給される。フリップフロップ74
0へのD入力は、MWR信号を受信する選択入力を有す
るマルチプレクサ742の出力信号を受信する。このマ
ルチプレクサ742の第0入力は、EBURST*信号
及びMEMステートマシーンの次の状態が状態MC2で
あることを指示する信号を受信するANDゲート744
の出力に接続される。ANDゲート744の出力は、P
CLK信号によってクロックされて、出力がLMRDY
或はEMACK信号でありD型フリップフロップ746
のD入力にも供給される。マルチプレクサ742の第1
入力は、次の状態がMC3であることを指示する信号を
受信する。この同じ信号は、PCLK信号によってクロ
ックされて、出力がMBRDY信号であるD型フリップ
フロップ748のD入力に供給される。
【0114】MACK即ちメモリアクノリッジ信号は、
図40で展開される。次の状態が状態MNであることを
指示する信号とEBURST*信号はANDゲート75
0の入力に供給される。ANDゲート750の出力は、
他入力が次の状態が状態MIであることを指示する信号
であるORゲート752への一入力である。このORゲ
ートの出力は、その出力がNMACK信号であるフリッ
プフロップ754のD入力に供給される。フリップフロ
ップ754は、PCLK信号によってクロックされて、
そその非反転出力としてMACK信号を持っている。
【0115】CPUセクションからのMRASSC即ち
マスタRASセット信号は次の状態が状態MR1である
ことを指示する信号と同じである。CPU信号からのM
RASRC即ちマスタRASリセット信号は、図41の
3入力ORゲート756の出力として示される。次の状
態MC3とMCYCとPGHIT*及びBURST2信
号はANDゲート758に供給される。BURST*と
PGHIT*とMCYC及び次の状態MN信号はAND
ゲート760に供給された。ANDゲート758及び7
60の出力は、MEMステートマシーンの次の状態が状
態MIであることを指示する信号と共に、ORゲート7
56への入力として供給される。CPUセクションから
のNMCASC即ち次のサイクルマスタCAS信号は次
の状態が状態MCであることを指示する信号に等価であ
る。
【0116】図42で示されるように、CPUからのN
MALEC即ち次のサイクルメモリ・アドレスイネーブ
ル信号がORゲート762の出力として供給される。次
の状態MC3とEBURST*信号はANDゲート76
4の入力に要求される。次の状態MNとEBURST*
とMCYC*信号はANDゲート766に入力として供
給される。ANDゲート764と766の出力及び次の
状態がMIであることを指示する信号は、ORゲート7
62への入力である。
【0117】CPUセクションからのNMADRINC
C即ち次のサイクルメモリアドレス・インクリメント信
号は、BURST操作間に状態MC3となる次の状態に
等価である。CPUセクションからのMALLBESC
即ちメモリ全バイトイネーブル信号は、読出サイクル或
いはキャッシュバースト操作の期間中に形成される。C
PUセクションからのNMWEC即ち次のサイクルメモ
リ書込イネーブル信号は、図43で示されるように、O
Rゲート768の出力として供給される。次の状態どの
MR或はどのMC信号及びMWR信号がANDゲート7
70の入力である。次の状態NMとNXTCYCとPW
RとPRMWRとEBURST*信号はANDゲート7
72の入力である。次の状態MNとMWRとEBURS
T信号はANDゲート774の入力である。ANDゲー
ト770と772と774の出力は、ORゲート768
の入力である。NDMPLE即ち次のサイクルメモリデ
ータ対プロセッサデータ・ラッチイネーブル信号は、読
出操作中にMC3となるステートマシーンの次の状態に
等価である。プロセッサセクションからのNDMSEL
OC即ち次のサイクルメモリデータ選択最少重要ビット
信号は、図44で示されるように、ORゲート776の
出力として供給される。次の状態MC3及び次の状態M
N信号は、出力がANDゲート780に供給されたOR
ゲート778への入力として供給され、ANDゲート7
80の他入力がEBURST信号を受信する。次の状態
MC1及び次の状態MC2信号は、出力がBURST2
信号を受信する他入力を有するANDゲート784の入
力であるORゲート782の入力である。ANDゲート
780と784の出力はORゲート776の入力であ
る。
【0118】CPUセクション信号からのNMDOEC
即ち次のサイクルメモリデータ出力イネーブル信号がN
ORゲート786の出力によって供給される。次の状態
どのMR或はどのMC信号及びステートマシーンが状態
MC3にあることの指示は、ORゲート778への入力
として供給される。ORゲート778の出力が、他の入
力がMWR*信号を受信するANDゲート790への入
力として供給される。次状態NMとEBURSTとMW
R*信号はANDゲート792への入力である。次状態
MNとNXTCYCとPWR*とEBURST*信号は
ANDゲート794への入力である。ANDゲート79
7と792と794とRDHLD信号の出力は、NOR
ゲート786への入力である。RDHLD信号は、PC
LK信号でクロックされるD型フリップフロップ796
の非反転出力として形成される。状態MC3とPRMW
R*とEBURST*信号は出力がフリップフロップ7
96のD入力に接続しているANDゲート798に供給
される。
【0119】IMALE信号は、MACK信号の1PC
LK分遅延させたバージョンである。この信号は、MW
R信号を展開するためにPWR信号をラッチし、MDC
信号を展開するためにPDC信号をラッチし、LSPD
60信号を展開するためにSPD6O即ちメモリ速度6
0信号をラッチするために使われる。
【0120】HHLDA信号がローであり、MACK信
号が真であり、MCYC信号が真である時には、ページ
ヒット検知器と一緒に使われたPMALE即ちプロセッ
サメモリアドレスラッチ信号が開発される。NXTCY
C信号は、図46で示されるように、ORゲート800
の出力として生成される。SPADSとPMIO信号
は、出力がORゲート800への一入力であるANDゲ
ート802への入力として供給され、MCYC信号がO
Rゲート800への他入力である。
【0121】コンピュータシステムCには、操作できる
追加の型のバスマスタも存在する。これらの1つは、E
ISAスロット108に位置するISA即ちIndustry S
tandard Architectureバスマスタである。これらのバス
マスタが主メモリをアドレスできるので、それらの操作
の使用に制御モジュール、ISABM432及びステー
トマシーンを持つことは適当である。このステートマシ
ーンは、図48のISAステートマシーンである。ステ
ートマシーンは、リセットで状態IIから始める。これ
はISAアイドル状態である。ISAコマンドがアクテ
ィブでない時、制御は状態IIで留まる。後に定義され
た信号の定義と共にISAコマンドがアクティブな時
に、制御は状態IIから状態IR2に進行する。制御
は、次のPCLK信号クロックの縁(エッジ)で、状態
IR2から状態IR3に進行し、その後状態IR3から
状態IR4に進行する。もしスヌープ・ライトバックが
発生しているならば、即ち、プロセッサ152のライト
バックキャッシュが読出ヒットが発生したことを決定
し、このライトバックが適切であるならば、この操作が
完了されるまで、制御は状態IR4に留まる。スヌープ
ライトバックが完了した時に、制御は状態IR4から状
態IC1に進行する。その後、PCLK信号の連続立上
りエッジで、制御は状態IC1から状態IC2に、状態
IC3に進行し、その後状態ILに進行する。制御は、
ISACMD信号が活発化される間、状態ILで留ま
る。ISAコマンドが完了した時に、制御は状態ILか
ら状態IIに進行する。
【0122】ISACMD信号の展開が、図49で示さ
れる。MRDCとMWTC信号はORゲート600に2
入力として供給される。ORゲートの出力は、4入力A
NDゲート602への一入力である。ANDゲート60
2への他入力は、HHLDAとREFRESH*とEM
STR16信号である。従って、ISAバスマスタがE
ISAバスEの制御を持ち、活性的にサイクルを動作さ
せた時には、ANDゲート602の出力がアクティブで
ある。このANDゲート602の出力がXISACMD
信号であって、そしてD型フリップフロップ604のD
入力に供給される。フリップフロップ604の反転クロ
ック入力は、66MHzのPCLK信号のために2でP
CLK信号を分周して開発されたHCLK即ちホストバ
スクロック信号を受信する。勿論、ANDゲート602
の出力は、正のクロック入力がホストバスHからHCL
K信号を受信するD型フリップフロップ606のD入力
に供給される。フリップフロップ604と606の非反
転出力は、それぞれ2:1マルチプレクサ608の第0
及び第1入力である。マルチプレクサ608への選択入
力には、PCLK信号がHCLK信号と位相があったこ
と即ち2つの立上がり縁が位置合わせされたことを指示
するPHASE信号によって供給される。PHASE信
号は、PCLK信号によってクロックされて、そしてそ
のD入力でHCLK*信号を受信するD型フリップフロ
ップの非反転出力である。マルチプレクサ608の出力
が、クロック入力がPCLK信号を受信するD型フリッ
プフロップ610のD入力に供給される。フリップフロ
ップ610の非反転出力は、ISACMD信号である。
【0123】メモリステートマシーンに関して、ISA
ステートマシーンは、アドレス/制御バッファチップ1
68とデータバッファ158を制御する毎に複数の信号
を形成する。MRASSI即ちマスタRASセットIS
A信号は、ISAステートマシーンが状態IIにあり、
ISACMD信号が真であり、サイクルが主メモリをア
ドレスしている時に、アクティブである。ISA信号に
よってリセットされるMRASRI即ちマスタRAS
は、ISACMD信号がアサートされない時、状態IL
でアサートされる。ISA信号によるNMCASI即ち
次のサイクルマスタCASは、次の状態が状態IC1、
IC2及びIC3のいずれかである時、操作が主メモリ
に対した時及び操作が書込保護メモリに対してでなく或
いは読出操作である時に、アサートされる。ISA部分
信号からのNMWEI即ち次の状態MWEは、次状態が
IR4、或はIC1、IC2或はIC3状態の1つであ
り、ISA書込操作が要求されて、それが書込保護スペ
ースでない時に、アサートされる。MALLBESI即
ちメモリ全バイトイネーブルISA信号は、ISACM
D信号がアサートされる時、読出サイクルの間にアサー
トされる。ISAシステム信号からのNDMHLEI即
ち次のメモリデータ対ホストデータラッチイネーブル信
号は、状態IR2における書込中或いは状態IC2にお
ける読出中に形成される。DHOEI即ちISA信号に
よるイネーブルホストデータ出力は、ISACMD信号
がアサートされる時、ISA読出操作の間に供給され
る。NMDOEI信号は、読出操作毎に次の状態がIR
4、IC1、IC2或いはIC3状態であり、現行の状
態が状態IC3であり、或いはRDHLD信号がアサー
トされる時に、ネゲートされる。
【0124】勿論、ISABM論理432は、CHRD
Y信号を供給することを分担する。このための論理が、
図50で示される。SNPWB信号は、D型フリップフ
ロップ620のD入力に供給される。PCLK信号は、
フリップフロップ620をクロックする。同期クリア入
力は、ISAステートマシーンが状態II或いはIC3
にあることを指示する信号を入力として受信する2入力
ORゲート622の出力を受信する。フリップフロップ
620の非反転出力が、ステートマシーンが状態IC2
であり、読出操作が発生している指示を他の2入力で受
信する3入力ANDゲート624への一入力として供給
される。ANDゲート624の出力が、7〜0ダウンカ
ウンタ626のロード入力に供給される。TPCLK信
号は、カウンタ626をクロックする。カウンタ626
の出力は、CHRDYTO或はCHRDYタイムアウト
信号として参照されるゼロ信号である。この信号は、2
入力ANDゲート628への一入力として供給され、他
入力がステートマシーンが状態ILにあるという指示を
受信している。XISACMD信号及びHCW*即ち非
ライトバック信号は2入力ANDゲート630への入力
として供給される。XISACMD*信号と状態IIの
指示が2入力ANDゲート632への入力として供給さ
れる。2入力ANDゲート634は、ORゲート636
の出力とNANDゲート638の出力を受信する。NA
NDゲート638への入力は、フリップフロップ620
の出力及びISAバスマスタによる読出操作を指示する
ISARD信号である。ORゲート636への入力は、
ISAステートマシーンが状態IC1、IC2或いはI
C3にあるという指示である。ANDゲート628と6
30と632と634の出力が、出力がCHRDY信号
であるORゲート640への入力として供給される。
【0125】ISAバスマスタが分離した制御モジュー
ル432を持つように、EISABMモジュール434
は、形成され、図51で示されるEISAステートマシ
ーンとして参照されたステートマシーンを含む。このス
テートマシーンは、リセット後に状態EI或いはEIS
Aアイドルで操作を始める。これは、EISA STA
RT或はESTRT信号が受信されるまで、この状態に
留まる。ESTRT信号は、STARTとSBCLKと
HMIOとREFRESH*とEMSTR16*とHH
LDA信号が真である時に真であり、PCLK信号がH
CLK信号と位相合わせされる。その時、それは状態E
RSに進行する。制御は、PCLK同期化BCLK或は
SBCLK信号がアサートされないまで、状態ERSで
留まる。制御その後は、状態ERWに進行する。制御は
この状態に留まり、一方SBCLK信号がアサートされ
ない。制御は、アサートされていたSBCLK信号と発
生している書込操作のケースにおいてERWから状態E
W1に状態進行する。SBCLKHI信号によって示さ
れるように、SBCLK信号とBCLK信号がアサート
されない時、制御は状態EW1で留まる。これら両者が
アサートされた時には、制御が制御はEW1から状態E
W2に進行する。制御は、次のPCLK信号サイクル上
の全てのケースにおいて状態EW2からEC1に進行す
る。SBCLK信号が真であり、読出操作が発生してい
る時に、制御は状態ERWから直接状態EC1に進行す
る。
【0126】制御は、PCLK信号の次の立ち上がり縁
で、状態EC1から状態EC2に進行する。制御は読出
操作の間に状態EC2から状態EC3に進行する。そし
て次の上の状態ESTにPCLKは縁に合図する。制御
は書込操作のために状態ESTに状態EC2から直接に
進行する。もしスヌープライトバックが発生しているな
らば、制御は、状態ESTから状態EWBに進行して、
そのライトバック操作の間留まる。ライトバックが完了
した時には、制御が状態EWBから状態EC1に進行し
て、ライトバックによって割込まれた操作を再実行す
る。もしスヌープライトバックが発生せず、SBCLK
LO信号によって示されるようにSBCLKとBCLK
信号がローであるならば、或いはもしスヌープライトバ
ックが発生せず、書込が発生していたならば、制御は状
態ESTから状態ENに進行する。他の全ケースでは制
御が状態ESTで留まる。もし同期化EXRDY即ちS
BEXRDY信号がアサートされないならば、制御は状
態ENから状態ENWに進行する。このSBEXRDY
信号は、まずBCLK信号の立ち下がりエッジに同期さ
れ、その後HCLK信号と位相合わせされたPCLK信
号に同期するEXRDY信号である。制御は、SBCL
K及びBCLK信号のいずかがアサートされる時、状態
ENWに留まり、SBCLKLO信号で状態ENに遷移
する。もしEISAバーストが発生し、操作がSMSB
URSTとSBEXRDY信号によって示されるように
用意できたならば、制御は状態ENから状態ERWに進
行する。SMSBURST信号は、BCLKとHCLK
信号がローである時、PCLK信号に同期させられたM
SBURST信号である。もしバーストが発生せず、ハ
イになるSBEXRDY信号によって示されるようにサ
イクルが完了したならば、制御はアイドル状態に入るた
めに、状態ENから状態EIに進行する。
【0127】ISA及びCPUMEMモジュール432
及び430がアドレス/制御バッファ166とデータバ
ッファ158を制御する種々の信号を展開しなければな
らないのと同様に、EISAモジュール434も展開す
る。生成された1つの信号は、フルBCLKウエイト状
態をとることなしに、ある漸増タイミングを形成するた
めにBCLK信号を拡張するために、EISAバス制御
器110に供給されたHSTRETCH*信号である。
HSTRETCH*信号を開発するための論理が、図5
2で示される。D型フリップフロップ650は、PCL
K信号によってクロックされて、その非反転出力に接続
されたその入力を持っている。状態ERWとRESET
信号は、出力がフリップフロップ650の同期クリア入
力に供給された2入力ORゲート652への入力であ
る。状態EWB指示は、フリップフロップ650の同期
セット入力に供給される。
【0128】勿論、フリップフロップ650の非反転出
力は、2入力ANDゲート654の一入力に供給され、
その他入力がEC即ち状態EC1、2或いは3指示を受
信する。ANDゲート654の出力が、D型フリップフ
ロップ656のD入力に供給される。PHASEとPC
LK信号を受信する2入力ANDゲート658の出力
が、フリップフロップ656のクロック入力に供給され
る。フリップフロップ656の非反転出力は3入力OR
ゲート660の1つの入力に供給され、残りの2入力
は、次の状態が状態EC1、EC2或はEC3であるこ
とを指示する信号或いは現行の状態が状態EC1、EC
2或はEC3であることを指示する信号を受信する。O
Rゲート660の出力が、3入力ANDゲート662へ
の一入力として供給される。ANDゲート662の残り
の入力は、主メモリ読出を指示するHWR*とLOCM
EM信号である。2入力ANDゲート664は、SNP
WBと、EI*即ちEISAステートマシーンが状態E
Iにない信号とを受信する。ANDゲート664の出力
とANDゲート662の出力は、出力がD型フリップフ
ロップ668のD入力に供給されたORゲート666へ
の2入力である。PHASEとPCLK信号は、出力が
フリップフロップ668をクロックするANDゲート6
70に供給される。フリップフロップ668の非反転出
力とANDゲート664の出力は、出力がHSTRET
CH*信号であるNORゲート672への2入力として
供給される。
【0129】MRASSE即ちEISA部によってセッ
トされたマスタRAS信号は、次状態が状態ERWであ
る時或いはMRASSR信号が供給されている時に形成
される。このMRASSR信号が、状態RBにあるリフ
レッシュステートマシーンに基づくセット信号である。
このリフレッシュステートマシーンは後述する。MRA
SRE即ちEISAによるマスタRASリセット信号
は、次状態が状態EIであり、現行の状態が状態ENで
あって、アイドルへの遷移を指示する時に、或いはMR
ASSR信号がアサートされる時に、形成される。この
MRASRR信号は、リフレッシュステートマシーンが
状態RCにあり、SBCLKLO信号がアサートされて
いることを指示する。NMCASR即ち次のサイクルマ
スタCASリフレッシュ信号は、リフレッシュステート
マシーンが状態RA或はRBにある時にアサートされ
る。NMCASE即ち次のEISAサイクルによるマス
タCAS信号は、NMCASR信号がアサートされる
時、或いは、次状態が状態ECで、主メモリ操作が発生
し、それが書込保護されていず、或いは読出操作である
時にアサートされる。NMWEE即ちEISAによる次
のサイクルメモリ書込イネーブル信号は、次状態がEW
2、EC或いはEWBで、主メモリへの書込保護されて
いない書込が発生している時に形成される。NMALE
E信号は、次状態が状態EC1、EC2或はEC3以外
の時に形成される。MALLBESE信号は、読出操作
期間中に、状態がEI或はERSの以外の時或いはリフ
レッシュステートマシーンが状態RIにない時に形成さ
れる。NDMHLEE即ちEISAによる次のサイクル
MDHDラッチイネーブル信号は読出毎の状態EW1及
び書込毎の状態EC2期間中に形成される。NDHOE
E即ちEISAによる次のサイクルHD出力イネーブル
信号は、ローカルメモリへの読出しで、CMD*信号の
ハイレベルでオープン即ちイネーブル期間を持つラッチ
の入力に供給されるERW状態の期間中に形成される。
このラッチの出力は、DHOEE信号である。NMDO
EE即ちEISAによる次のサイクルMD出力イネーブ
ル信号は、読出操作時において、次状態が状態ERW、
EC1、EC2、EC3或いはEBWであり、その状態
が状態EC1、EC2或いはEC3であり、或いは状態
EC1、EC2或はEC3に続く状態即ち状態ESTへ
の最初のエントリ状態の時にアサートされない。
【0130】REFSMモジュール442で使われたR
EFRESHステートマシーンが、図53で示される。
リセット後状態RIで操作が始まり、RSTRT即ちリ
フレッシュ開始信号が検知されるまで留まる。このRS
TRT信号は、SBCLK信号とSTART信号とRE
FRESH信号とHHLDA信号がアサートされる時、
形成される。これは、EISAバスでのリフレッシュサ
イクルの開始部分の起動の指示である。RSTRT信号
がアサートされる時、制御は状態RIから状態RWに進
行する。制御は状態RAに進行し、その後連続PCLK
信号の立ち上がりエッジで状態RBに進行する。SBC
LKHI信号がアサートされるまで、制御は状態RBで
留まる。アサート時には、状態RCに、その後状態RI
に進行する。
【0131】MABCONモジュール436は、アドレ
ス/制御バッファ166への種々のMRAS*とMCA
S*とMALLBES*とMALEとMWE*とMSE
LCA*とMADRINC*信号を供給する。MRAS
即ちマスタRAS信号及びMRAS*信号は、JK型フ
リップフロップの出力から供給され、そのJ入力がMR
ASSC,MRASSI及びMRASSE信号の論理和
を受信し、そのK入力がMRASRC,MRASRI及
びMRASRE信号の論理和を受信する。このフリップ
フロップは、PCLK信号によってクロックされる。M
CAS*信号は、PCLK信号によってクロックされる
D型フリップフロップの反転出力として形成され、その
D入力でNMCASCとNMCASIとNMCASEの
論理和を受信する。NMSELCA信号は、MRAS信
号、SPD6O信号及びマスタサイクルが進行中でない
ことを指示する信号の論理積によって生成される。この
信号は、MRASとPCLK信号を受信するANDゲー
トの出力によってクロックされたフリップフロップのD
入力に供給される。反転出力は、MSELCA*信号で
ある。MALLBES*信号は、ライトバックが発生し
ていないことを指示する信号を選択入力として受信する
マルチプレクサの出力として供給され、このマルチプレ
クサは、第0入力としてMALLBESE及びMALL
BESI信号信号を受信するNORゲートの出力、第1
入力としてMALLBESC信号の反転信号を持ってい
る。MALE信号は、入力がNMALECとNMALE
E信号の論理積を受信し、PCLK信号によってクロッ
クされるD型フリップフロップの出力で供給される。M
ADRINC*信号は、NMADRINCC*信号を受
信して、PCLK信号によってクロックされるD型フリ
ップフロップの非反転出力で生成される。MWE*信号
は、NMWEI及びNMWEE信号の論理和をD入力で
受信して、ライトバックが施行中でない時にPCLK信
号によってクロックされるD型フリップフロップの反転
出力で生成される。
【0132】MDBCONモジュール438は、種々の
他のソースと結合することによって、データバッファ1
58に種々の選択、ラッチ及び出力イネーブル信号を供
給する。MDSEL<1..0>信号は、入力がNDM
SEL<1..0>信号を受信して、PCLK信号によ
ってクロックされる2つのD型フリップフロップの出力
によって供給される。NDMSEL<1>信号はライト
バックが進行中でないことを指示する信号を受信し、一
方、NDMSEL<0>信号は、NDMSELOC信号
とBMNOWB*信号をその入力で受信するANDゲー
トの出力を受信する。MDHDLE信号は、D入力がN
DMHLEI及びNDMHLEE信号を受信するORゲ
ートの出力を受信し、PCLK信号でクロックされたD
型フリップフロップの非反転出力で形成される。MDP
DLE信号は、その入力でNDMPLE信号を受信し、
PCLK信号でクロックされたD型フリップフロップの
出力で供給される。MDOE*信号は、D入力がNMD
OEI及びNMDOEE信号の論理積を受信し、入力が
同期化BMNOWB及びPCLK信号であるANDゲー
トでクロックされた入力が同期化BMNOWB及びPC
LK信号であるANDゲートでクロック反転出力で形成
される。HDOE*信号は、DHOEIとDHOEE信
号を受信するNORゲートの出力で供給される。
【0133】MCONモジュール402の1つの他の機
能は、SNPCON即ちスヌープ制御モジュール440
である。このモジュール440は、種々のキャッシュに
よって使われ、ライトバックが発生していることの指示
を形成するためにスヌープストローブを供給することを
分担する。このモジュール440は、図54で示された
スヌープステートマシーンを利用する。このステートマ
シーンは、リセット時に状態SIで始まる。PEADS
即ちプロセッサ外部アドレス信号が受信されない時に制
御は状態SIに留まる。PEADS信号はPCLK信号
でクロックされるD型フリップフロップの出力で形成さ
れ、そのD入力がキャッシュ化できるアドレスを指示す
るHNCA*信号及びSNPSTBI及びSNPSNB
E信号の論理和を受信するANDゲートの出力を受信す
る。SNPSTBE信号は、SBCLK信号がアサート
される時、状態ERWの間に生成される。NISACM
D信号が真であり、ISACMD信号が真でない時に、
SNPSTBI信号がアサートされる。それが受信され
る時、制御は状態SW1に進行し、その後、そして状態
に後続する連続のPCLK信号立ち上がりエッジで状態
SW2とSW3に進行する。プロセッサキャッシュヒッ
トが発生したという、どんな指示も存在しないならば、
制御は状態SIへ戻る。もしヒットが発生するならば、
制御は状態SWB1に進行する。SPADS信号が受信
されるまで、制御は状態SWB1で留まる。その後制御
は、SWB2に進行する。制御は、LMRDY信号が受
信されるまでこの状態に留まり、その時点で状態SWB
3に進行し、そこから状態SIに進行する。ステートマ
シーンが状態SWB1、SWB2或はSWB3にある
時、SNPWB即ちスヌープライトバック進展信号が供
給される。
【0134】種々の他の雑多な信号は、MCONモジュ
ール402で生成される。たとえばBMPROG即ちバ
スマスタ進展信号がBMPROGIとBMPROGE信
号の論理和によって生成される。BMPROGI信号が
ISACMD信号であり、一方BMPROGE信号は、
EISAステートマシーンが状態ECでない時、或はリ
フレッシュステートマシーンが状態R1でない時に形成
される。BMNOWB即ちバスマスタ進展及び非ライト
バック信号は、BMPROGバスマスタ進展及びSWB
PROG*即同期化ライトバック進展信号の論理積によ
って形成される。SWBPROG信号は、スヌープステ
ートマシーンが状態SWB1にある時、或いは次状態が
状態SWB2である時に供給される。
【0135】MDHDSEL<1..0>信号は、次に
述べる通り、生成されたHA<3..2>信号によって
生成される。NHALEIとNHALEE信号は論理積
されて、NHALEBM信号を形成する。NHALEE
信号は、EISAステートマシーンの次状態が状態E
I、ENW或はENである時、状態がEI或はERSで
ある時、アクティブである。NHALEI信号はISA
CMD信号の反転信号である。NHALEBM信号は、
順にPCLK信号によってクロックされた2つのD型フ
リップフロップのD入力に接続されたマルチプレクサの
ための選択入力として使われる。マルチプレクサの1つ
の入力が、HA<3>とHA<4>信号をバスマスタに
よって駆動されることとしてHAバスから受信する。マ
ルチプレクサのゼロ入力がフリップフロップの非反転出
力を受信する。フリップフロップの非反転出力が、2ラ
ッチの入力にも供給される。BMLEIとBMLEE信
号のORが、ラッチのためにイネーブル入力として供給
される。ISAステートマシーンが状態IR2にある
時、BMLEI信号がアサートされる。EISAステー
トマシーンが状態ERWにある時、BMLEE信号がア
サートされる。ラッチの非反転出力は、MDHDSEL
<1..0>信号でもあるBM HA<3..2>信号
である。
【0136】勿論、HCONモジュール404は、必要
な信号を展開するためにたくさんのステートマシーンと
モジュールを含む。これらのモジュールの最初は、HS
YNC即ちホスト同期モジュール446である。HSY
NCステートマシーンは、図55で示される。制御は、
リセットで状態HSIに進行し、FECONモジュール
400からのHCYC信号が受信されない間、制御が留
まる。HCYC信号が受信されるやいなや、制御は、状
態HSHに進行し、NHSTRT即ち次のサイクルホス
トスタート信号が真になるまで、或いは位相(phase)
が適当にアサートされない時即ち、PCLKとHCLK
信号が位置合わせされた立ち上がりエッジを持てないま
でそこに留まる。もしNHSTRT信号がアサートされ
ず、位相が適当であるならば、制御は状態HSPに進行
する。NHSTRT信号がアサートされず、一方制御は
状態HSPで留まる。他のサイクルが要求されることを
示して、HCYC信号と同時にNHSTRT信号がアサ
ートされるならば、制御は状態HSHへ戻る。NHST
RT信号がアサートされ、HCYC信号がアサートされ
ないならば、制御は、アイドル状態HSIへ戻る。
【0137】NHACK即ち次のサイクルHACK信号
は、次状態が状態HSIである時に、或いは現行の状態
が状態HSPで、NHSTRT信号がアサートされる時
に転送の間に供給される。このHACK信号は、PCL
K信号によってクロックされたD型フリップフロップの
出力で供給され、そのD入力がNHACK信号を受信す
る。HREQ即ちホストサイクル要求信号は、HSH状
態の間に次状態がHSH状態である時に或いはHATO
信号がアサートされない時に、アサートされる。HAT
O信号は必要なアドレスサイクルが完了したことを示
す。
【0138】HCONモジュール404で利用された次
制御モジュールは、図56で示されたHOSTステート
マシーンを使うHOSTモジュール448である。この
モジュール448は、メモリ制御器156がバスマスタ
の役をした時に、ホストバスでの信号の制御を形成す
る。制御は、リセット時に状態HTIで始まって、そし
てホストバスサイクルが要求されなかったことを示すH
REQ信号がアサートされない間、その状態に留まる。
HREQ信号がアサートされる時に、制御は状態HT1
に進行する。PCLK信号の次の立ち上がりエッジ制御
はHT2に進行する。制御は、もしHRDY信号がアサ
ートされ、HREQ信号がアサートされて、一サイクル
が完了し、他のものが待機中であることを指示するなら
ば、状態HT2から状態HT1に戻る。HREQ信号が
アサートされ、ホスト操作が完了したことを指示するH
RDY信号がアサートされる時には、制御が状態HT2
から状態HTIに戻る。もしHRDY信号がアサートさ
れず、HREQ信号がアサートされず、HNA信号がア
サートされるならば、制御が状態HT2から状態HT2
Iに進行する。これはホストバスHのパイプラインを初
期化するアイドル状態である。もしHRDY信号がアサ
ートされず、HREQ信号がアサートされ、HNA信号
がアサートされるならば、制御が状態HT2から状態H
T2Pに進行する。これは、パイプラインであるが、ア
イドル状態ではない。それで、これらHT2IとHT2
Pはパイプライン状態である。他の全ての状態毎に制御
は状態HT2で留まる。
【0139】制御は、HRDY信号とHREQ信号があ
って、パイプラインと新規サイクル要求からの出口を示
した時に、状態HT2Iから状態HT1に後に進行す
る。HRDY信号が受信され、HREQ信号がアクティ
ブでない時には、制御が状態HT2Iから状態HTIに
進行する。制御はアイドル状態を始めるために、状態H
TIへ戻る。もしHRDY信号がアサートされず、HR
EQ信号がアサートされるならば、制御は状態HT2I
から状態HT2Pに進行する。他の全ケースでは制御が
状態HT2Iで留まる。HRDY信号がアサートされる
時に、制御は状態HT2Pから状態HT1Pに進行す
る。さもなければ制御は状態H2Pで留まる。制御は、
HREQ信号がアサートされて新しいサイクルが要求さ
れたことを指示し、HNA信号がアサートされて新しい
パイプラインアドレスが供給されることを指示し、それ
がホストバスでの特別のサイクルでない時に、状態HT
1Pから状態HT2Pに戻る。もしHREQ信号がアサ
ートされず、HNA信号がアサートされるならば、或い
はHREQ信号がアサートされ、HNA信号がアサート
されて、それが特別のサイクルであるならば、制御は状
態HT1Pから状態HT2Iに進行する。HNA信号が
アサートされないで、パイプラインモードを出ることを
指示したならば、制御が状態HT1Pから状態HT2に
進行する。
【0140】NHADSとして参照される信号は、次状
態がHT1或はHT2Pで、操作が主メモリに対してで
ない時にアサートされる。HADS*信号は、PHAS
E信号中にD入力でNHADS信号及びPHASE*信
号中に非反転出力を受信し、PCLK信号によってクロ
ックされるD型フリップフロップの反転出力によってア
サートされる。NLHADS信号は、次状態がHT1或
いはHT2Pで、主メモリとの転送操作である時に、ア
サートされる。LHADS信号は、PHASE信号中に
D入力でNHADS信号及びPHASE*信号中に非反
転出力を受信し、PCLK信号によってクロックされる
D型フリップフロップの非反転出力としてアサートされ
る。
【0141】HACON即ちホストアドレス制御モジュ
ール452はHBEとHA信号を展開するために使われ
る。HADD即ちホストアドレスステートマシーンとし
て参照されたステートマシーンが、図57で示される。
このステートマシーンは、リセット時に状態HAIから
始める。制御は、HADS信号がアサートされる時に、
状態HAlに進行して、そして他のケースにおいて状態
HAIで留まる。制御は、HATO信号がアサートされ
ない間、最後のホストアドレスサイクルが実行されなか
ったことを指示して、状態HAlで留まる。最後のサイ
クルが完了したことを指示するHATO信号がアサート
される時に、制御は状態HAlから状態HA2に進行す
る。HATO信号は、進行中にサイクルを完了するため
に、どれくらい多くの32ビットサイクルが走行(動
作)しなければならないことを指示している値がロード
されるダウンカウンタによって供給される。HADS信
号がアサートされず、HNA或はHRDY信号がアサー
トされる時には、制御が状態HA2から状態HAIに進
行する。他の場合、制御が状態HA2で留まる。NHS
TRT信号は次の状態がHAIであり、或いは現行の状
態がHAIである時にアサートされる。NHASLE信
号即ち次のホストアドレス・ラッチイネーブル信号は、
次の状態がHAIであり、NHACK信号がアサートさ
れる時、或いは次の状態がHA2であり、HADS信号
がアサートされなかった時に形成される。HALE信号
は、PCLK信号によってクロックされ、そのD入力で
NHASLE信号を受信するD型フリップフロップの非
反転出力として供給される。HALE信号は、ホストバ
スへのプロセッササイクル定義信号をラッチして、そし
てトランシーバーラッチ160でアドレスをラッチする
ために使われる。
【0142】勿論、HDCON即ちホストデータ制御モ
ジュール454はステートマシーンを利用する。この場
合、ステートマシーンは、図58で示されたHDAT即
ちホストデータ・ステートマシーンである。このステー
トマシーンは、データバッファー158が適当に操作す
ることができるように、データに関してホストバスサイ
クルを追跡する。ステートマシーンはリセット時に状態
HDIから始まって、そしてHADS信号がアサートさ
れない間、その状態に留まる。その後HADS信号がア
サートされる時、制御は状態HD1に進行する。HDT
O信号がアサートされ、HRDY信号がアサートされ、
HADS信号がアサートされないで、全データが転送さ
れて、新しいサイクルが要求されていないことを指示し
た時には、制御が状態HD1から状態HDIに戻る。H
DTO信号は、データ転送数を計数する事以外はHAT
O信号に類似している。異なるカウンタは、パイプライ
ンの為に必要である。HDTO信号がアサートされ、H
RDY信号がアサートされないで、最後の転送が完了し
てないことを指示した時に、制御は状態HD1から状態
HD2に進行する。制御は全ての他のケースにおいて状
態HD1で留まる。HRDY信号がアサートされ、HA
DS信号がアサートされて、先のサイクルが完了し、新
しいサイクルが要求されていることを指示した時には、
制御が状態HD2から状態HD1に進行する。HRDY
信号がアサートされ、HADS信号がアサートされない
で、サイクルが完了したが、新しいサイクルが要求され
てないことを指示した時に、制御は状態HD2から状態
HDIに進行する。MRDY信号がアサートされない
間、制御は状態HD2で留まる。ステートマシーンの次
状態が状態HD1である時に、HPROG即ちホストサ
イクル進展信号が供給される。HEND即ちホストサイ
クル終了信号は状態HD2で形成される。
【0143】記述されるように、HDCONモジュール
454は、勿論データバッファー158に信号を供給す
ることを分担する。結局、HDSEL<1..0>信号
は開発される。HDSEL<1>信号は、HHLDA信
号である。HDSEL<0>信号は、同調時にPCLK
信号によってクロックされ、ホストデータサイクルが進
行中であり、先の転送が完了して、キャッシュラインフ
ルが進行中の時、或いはホストデータサイクルが進行中
であり、先のデータ転送が数え終わり、キャッシュライ
ンフルが発生せず、プロセッサ152の下位4バイトが
利用されている時に、D入力に供給されたゼロ値を持っ
ているD型フリップフロップの出力によって開発され
る。このD入力は、真性のHTDO信号によって指示さ
れるようにデータ開始が初期化され、ホストサイクルが
進行中であり、ホストキャッシュラインフルが発生せ
ず、或いは上位4バイトイネーブルが用いられなかった
時に、1値を受信する。サイクルが発生せず、HRDY
信号がアサートされる時には、フリップフロップの反転
出力がその入力に供給される。全ての他のケースにおい
てフリップフロップの出力が、同じままである。
【0144】HDOE*信号は、MCONモジュール4
02から供給されたHDOEM*信号及びHDOEH*
として参照される信号のAND結合である。HDOEH
*信号は、PCLK信号及びPHASE信号の結合によ
ってクロックされるD型フリップフロップの出力として
供給される。もしホストサイクルが進行中であるなら
ば、入力は、HDWR信号の反転信号を受信する。もし
HEND信号とHRDY信号が真であるならば、同調し
た次PCLKエッジでHDOEH*信号がデアサートさ
れるように、1つが供給される。HDPDLE<1..
O>信号は、2つのJ−Kフリップフロップの出力で供
給される。これらフリップフロップは、PCLK信号に
よってクロックされる。フリップフロップへのK入力
が、フリップフロップのそれぞれの出力を受信する。フ
リップフロップへのJ入力は、PHASE信号、HER
DY信号及びHDLWRとして参照した信号の論理積結
合で、ビット1用に上位ダブル語が操作されるDHLO
*信号或いはビット0用に下位ダブル語が操作されるH
DLO信号である。HDLWR信号は、PHASE信号
とHPROG信号と論理積されたPCLK信号によって
クロックされたD型フリップフロップの出力によって供
給される。この入力は、HDWR信号の反転信号を受信
する。
【0145】HARB即ちホストバス・アービトレータ
408はステートマシーン(図59のHARBステート
マシーン)を利用する。このステートマシーンは、リセ
ットで状態Aで始まり、SHHOLD即ち同期化HHO
LD信号がアサートされるまで、状態Aに留まる。その
後制御は、状態Bに進行する。SPHLDA即ち同期化
PHLDA信号及びFEHLDA信号がアサートされる
まで、制御は状態Bで留まる。その後制御は、状態Cに
進行する。SHHOLD*信号がアサートされる時に、
制御は状態Cから状態Dに進行する。制御は全てのケー
スにおいて状態Dから状態Aに進行する。SWBREQ
信号がアサートされる時に、制御は状態Cから状態Eに
進行する。他の全ケースでは制御が状態Cで留まる。制
御は、SWBREQ*信号がアサートされる時に状態E
から状態Fに進行し、SWBREQ即ち同期化ライトバ
ック要求信号がアサートされる間、状態Eに留まる。S
PHLDA信号とFEHLDA信号がアサートされる時
に、制御は状態Fから状態Cに進行する。さもなければ
制御は状態Fで留まる。プロセッサ152に供給された
AHOLD即ちアドレスホールド信号は、NPAHOL
D信号とCAHOLD信号を受信するORゲートの出力
をその入力で受信するD型フリップフロップの出力で開
発される。次状態が状態C、状態D、状態E或は状態F
である時に、NPAHOLD信号がアサートされる。C
AHOLD信号は、L2キャッシュ154の読出アロケ
ート・キャッシュラインフルサイクル期間中にキャッシ
ュ制御器406から供給される。次状態が状態B、状態
C、状態D或は状態Fである時、NPHOLD信号がア
サートされる。PHOLD信号は、その入力でNPHO
LD信号を受信して、そしてPCLK信号によってクロ
ックされるD型フリップフロップの出力からプロセッサ
152にアサートされる。次状態が状態C、状態E或は
状態Fである時に、NHHLDA信号がアサートされ
る。HHLDA信号はその入力でNHHLDA信号を受
信するD型フリップフロップの出力によって供給され
て、そしてPCLKとPHASE信号の結合によってク
ロックされる。
【0146】図61〜78は、本発明のメモリ制御器に
従った多数の信号の操作を説明する多くのタイミング図
である。多くの場合、種々のステートマシーンの状態
は、ステートマシーンの遷移図と同等を許すために示さ
れる。図61は、60nsメモリへの64ビットプロセ
ッサ対メモリページヒット書込を示す。図62は、60
nsメモリからの64ビットプロセッサページ・ヒット
読出を示す。図63は、80nsメモリへの64ビット
プロセッサ対メモリページミス書込を示す。図64は、
60nsメモリからの64ビットプロセッサページミス
読出を示す。図65は、図64との綿密な比較のために
80nsメモリからの64ビットプロセッサページミス
読出を示す。図66は、60nsメモリからのページヒ
ットキャッシュラインフルを示す。図67は、60ns
メモリへのページミスライトバックを示す。図68は、
書込保護されたメモリへの書込を示す。図69は、ホス
ト読出に続くホストバスHからの64ビットプロセッサ
パイプライン化読出を示す。図70はホストバスHへの
非パイプライン64ビットプロセッサ書込を示す。図7
1は、メモリ最初、およびホストバスHへの同時プロセ
ッサ書込サイクルを示す。図72は、メモリから同時プ
ロセッサ読出サイクルを示す。図73は、ホストバスH
最初に、およびメモリへの同時プロセッサ書込サイクル
を示す。図74は、次サイクルのメモリ読出とパイプラ
インに続き、ホストバスH書込に続くEISAバスE書
込を示すことによって共起を示す。図75は、ISAバ
スマスタ書込を示す。図76がISAバスマスタ読出サ
イクルを示す。図77は、EISAバスマスタ書込サイ
クルを示す。図78が修正された位置へのEISAバス
マスタ読出ヒットを示す。注目されるように、メモリ制
御器156のタイミングの実施例の見本が示されてい
る。当該技術者は、容易に残る可能性を展開できる。
【0147】本発明の前述の開示及び記述は、実施例及
びそれの説明であって、記述された回路及び構成及び操
作方法と同様に、サイズ、形、材料、構成要素、回路素
子、ワイヤ接続及び接点における種々の変更が本発明の
精神を逸脱しないでなされてもよい。
【図面の簡単な説明】
【図1】本発明と協働するコンピュータシステムのブロ
ック図である。
【図2】図1のシステム基板のブロック図である。
【図3】図1のI/O基板のブロック図である。
【図4】図1のプロセッサ基板のブロック図である。
【図5】図4のプロセッサ基板の部分のより詳細なブロ
ック図である。
【図6】図4のアドレス/制御バッファのブロック図で
ある。
【図7】図4のデータバッファのブロック図である。
【図8】図4のデータバッファのブロック図である。
【図9】図4のデータバッファのブロック図である。
【図10】図4のメモリ制御器の主な部分のブロック図
である。
【図11】図4のメモリ制御器中の種々のステートマシ
ーンの概略配置図である。
【図12】図4のメモリ制御器中の種々のステートマシ
ーンの概略配置図である。
【図13】図4のメモリ制御器中の種々のステートマシ
ーンの概略配置図である。
【図14】図4のメモリ制御器中のPPROGステート
マシーンの遷移図である。
【図15】図4のメモリ制御器中のPPENDステート
マシーンの遷移図である。
【図16】図4のメモリ制御器中のDPOEステートマ
シーンの遷移図である。
【図17】図4のメモリ制御器中のMPROGステート
マシーンの遷移図である。
【図18】図4のメモリ制御器中のMPENDステート
マシーンの遷移図である。
【図19】図4のメモリ制御器中のMPMLEステート
マシーンの遷移図である。
【図20】図4のメモリ制御器中のPMDRDYステー
トマシーンの遷移図である。
【図21】図4のメモリ制御器中のMWEPBRDYス
テートマシーンの遷移図である。
【図22】図4のメモリ制御器中のMREPBRDYス
テートマシーンの遷移図である。
【図23】種々のステートマシーンと共に使われた図4
のメモリ制御器の部分の概略図である。
【図24】図4のメモリ制御器中のHRDステートマシ
ーンの遷移図である。
【図25】図4のメモリ制御器中のHRDPNDステー
トマシーンの遷移図である。
【図26】図4のメモリ制御器中のHWTステートマシ
ーンの遷移図である。
【図27】図4のメモリ制御器中のHWL1PNDステ
ートマシーンの遷移図である。
【図28】図4のメモリ制御器中のHWL2PNDステ
ートマシーンの遷移図である。
【図29】図4のメモリ制御器中のHREPBRDYス
テートマシーンの遷移図である。
【図30】図4のメモリ制御器中のDPSELステート
マシーンの遷移図である。
【図31】図4のメモリ制御器中のPNAステートマシ
ーンの遷移図である。
【図32】図4のメモリ制御器中のRDPNAステート
マシーンの遷移図である。
【図33】図4のメモリ制御器中のWRPNAステート
マシーンの遷移図である。
【図34】図4のメモリ制御器中のWPEPBRDYス
テートマシーンの遷移図である。
【図35】種々のステートマシーンと共に使われた図4
のメモリ制御器のMCYCロジック部分の概略図であ
る。
【図36】種々のステートマシーンと共に使われた図4
のメモリ制御器のHCYCロジック部分の概略図であ
る。
【図37】図4のメモリ制御器中のMEMステートマシ
ーンの遷移図である。
【図38】図4のメモリ制御器中のBURSTステート
マシーンの遷移図である。
【図39】図4のメモリ制御器中のCPUMEMモジュ
ールの第1部分の概略図である。
【図40】図4のメモリ制御器中のCPUMEMモジュ
ールの第2部分の概略図である。
【図41】図4のメモリ制御器中のCPUMEMモジュ
ールの第3部分の概略図である。
【図42】図4のメモリ制御器中のCPUMEMモジュ
ールの第4部分の概略図である。
【図43】図4のメモリ制御器中のCPUMEMモジュ
ールの第5部分の概略図である。
【図44】図4のメモリ制御器中のCPUMEMモジュ
ールの第6部分の概略図である。
【図45】図4のメモリ制御器中のCPUMEMモジュ
ールの第7部分の概略図である。
【図46】図4のメモリ制御器中のCPUMEMモジュ
ールの第8部分の概略図である。
【図47】図4のメモリ制御器中のCPUMEMモジュ
ールの第9部分の概略図である。
【図48】図4のメモリ制御器中のISAステートマシ
ーンの遷移図である。
【図49】図4のメモリ制御器中のISAモジュールの
第1部分の概略図である。
【図50】図4のメモリ制御器中のISAモジュールの
第2部分の概略図である。
【図51】図4のメモリ制御器中のEISAステートマ
シーンの遷移図である。
【図52】図4のメモリ制御器中のEISAモジュール
の概略図である。
【図53】図4のメモリ制御器中のREFRESHステ
ートマシーンの遷移図である。
【図54】図4のメモリ制御器中のSNOOPステート
マシーンの遷移図である。
【図55】図4のメモリ制御器中のHSYNCステート
マシーンの遷移図である。
【図56】図4のメモリ制御器中のHOSTステートマ
シーンの遷移図である。
【図57】図4のメモリ制御器中のHADDステートマ
シーンの遷移図である。
【図58】図4のメモリ制御器中のHDATステートマ
シーンの遷移図である。
【図59】図4のメモリ制御器中のHARBステートマ
シーンの遷移図である。
【図60】図4のメモリ制御器中のHARBモジュール
の概略図である。
【図61】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図62】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図63】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図64】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図65】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図66】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図67】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図68】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図69】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図70】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図71】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図72】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図73】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図74】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図75】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図76】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図77】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【図78】図4のメモリ制御器中の種々のサイクルのタ
イミング図である。
【符号の説明】
156 メモリ制御器 164 DDF 166 アドレス/制御バッファ 168 基本メモリ 170 追加DRAM
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ガリー・ダブリュー・ソーム アメリカ合衆国テキサス州77075トムボー ル・メラット・コート16406 (72)発明者 ポール・エイ・サンテーラ アメリカ合衆国テキサス州77429サイプラ ス・ミスティヒルズ・ドライブ13211 (72)発明者 ランディー・エム・ボネーラ アメリカ合衆国テキサス州77429サイプラ ス・メイプル・メドウズ・ドライブ15302 (72)発明者 マイクル・ジェイ・コリンズ アメリカ合衆国テキサス州77375トムボー ル・レイクストーン・ドライブ16030

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】アドレス出力、データ及び制御端子を持
    ち、操作サイクルを実行し、信号が前記アドレス出力及
    び実行されるべき操作を指示する前記制御端子に形成さ
    れ、前記制御端子が操作サイクル開始を指示する出力及
    び操作サイクル完了指示を受信する入力を含むプロセッ
    サと、 このプロセッサに接続されて、同プロセッサとの間で信
    号を行き来し、アドレス、データ及び制御信号を転送す
    るアドレス、データ及び制御部分を持つプロセッサバス
    と、 アドレス、データ及び制御信号を転送するアドレス、デ
    ータ及び制御部分を持つホストバスと、 アドレス入力及び制御及びデータ端子を持ち、前記ホス
    トバスに接続されてアドレスを受信し、前記ホストバス
    に亙って、制御及びデータ信号を受信及び転送し、前記
    制御端子が操作サイクル開始指示を受信する入力及び操
    作サイクル完了指示を形成する出力を含むデバイスと、 アドレス及び制御入力及びデータ端子を持つ複数のメモ
    リデバイスと、 アドレス、制御及びデータ部分を持ち、前記複数のメモ
    リデバイスに接続されて、アドレス及び制御信号を前記
    複数のメモリデバイスに転送し、及びデータ信号を前記
    複数のメモリデバイスとの間で行き来させるメモリバス
    と、 前記プロセッサ、ホスト及びメモリデータバス部分に接
    続されて、これらバス間でデータを転送し、前記バス間
    の転送を制御する信号を受信する制御入力を持つデータ
    バッファと、 前記プロセッサ及びホストアドレスバス部分に接続され
    て、これらバス間でアドレスを転送する手段と、 前記
    プロセッサアドレスバス部分に接続されて、前記プロセ
    ッサバスから前記メモリバスにアドレスを供給し前記ア
    ドレスの供給を制御する信号を受信する制御入力を持つ
    メモリアドレス手段と、 前記プロセッサバスに接続されて、前記プロセッサバス
    の操作サイクルが前記複数のメモリデバイス或いは前記
    ホストバスデバイスに向けさせるか否かを決定する手段
    と、 前記プロセッサ、ホスト及びメモリ制御バス部分に、前
    記データバッファに、前記プロセッサ及びホストバス間
    でアドレスを転送する前記手段に、前記操作サイクル指
    向決定手段に及び前記データバッファの操作を制御する
    前記メモリアドレス手段に接続されて、前記操作サイク
    ル指向決定手段で決定した向き及び操作サイクルによる
    順序に基づいて、前記プロセッサ及びホストバス、前記
    メモリアドレス手段及び前記複数のメモリデバイス間に
    アドレスを転送するメモリ制御器とを備え、このメモリ
    制御器は、 前記プロセッサから操作サイクル開始指示を受信し、前
    記プロセッサに操作サイクル完了指示を供給し、前記デ
    ータバッファに制御信号を供給して前記プロセッサデー
    タバスからのデータを受信し同プロセッサバスにデータ
    を供給し、前記複数のメモリデバイスに向けた操作サイ
    クルの受理を示す制御信号を形成し、前記ホストバスに
    向けた操作サイクルの受理を示す制御信号を形成し、前
    記複数のメモリデバイスに対する前記操作サイクルの完
    了を指示する信号を受信する入力を持ち、前記ホストバ
    スに対する前記操作サイクルの完了を指示する信号を受
    信する入力を持つプロセッサ制御インターフェース部分
    と、 前記プロセッサ制御インターフェース部分から前記ホス
    トバスに向けた操作サイクルの受理を指示する前記制御
    信号を受信し、前記ホストバスに操作サイクル開始指示
    を供給し、前記ホストバスから操作サイクル完了指示を
    受信し、前記データバッファに制御信号を供給して前記
    ホストバスからデータを受信し、前記ホストバスにデー
    タを供給し、前記ホストバスに対する前記操作サイクル
    の完了を指示する信号を前記プロセッサ制御インターフ
    ェース部分に供給するホストバス制御インターフェース
    部分と、 前記プロセッサ制御インターフェース部分から前記複数
    のメモリデバイスに向けた操作サイクルの受理を指示す
    る前記制御信号を受信し、前記複数のメモリデバイスに
    制御信号を供給し、前記メモリアドレス手段に制御信号
    を供給して前記複数のメモリデバイスにアドレス及び制
    御信号を供給し、前記データバッファに制御信号を供給
    して、前記プロセッサバスからデータを受信し、前記プ
    ロセッサバスにデータを供給し、前記複数のメモリデバ
    イスに対する前記操作サイクルの完了を指示する信号を
    前記プロセッサ制御インターフェース部分に供給するメ
    モリ制御インターフェース部分とを含むコンピュータシ
    ステム。
  2. 【請求項2】前記プロセッサ制御端子は次の操作サイク
    ルのアドレスを受信できることを指示する入力を含み、
    前記プロセッサが次の操作サイクルのアドレスをパイプ
    ラインで供給でき、 前記プロセッサインターフェース制御部分は次のアドレ
    スを供給できることを指示する制御信号を形成する出力
    を持ち、この次のアドレス制御信号は前記メモリ制御器
    が未決定の操作サイクルの完了前に前記次のアドレスを
    受信できた時に形成される請求項1に記載のコンピュー
    タシステム。
  3. 【請求項3】前記データバッファは、前記複数のメモリ
    デバイスに前記データを供給するために、前記プロセッ
    サバスからデータを受信するラッチと、前記ホストバス
    に前記データを供給するために、前記プロセッサバスか
    らデータを受信するラッチとを含み、 前記プロセッサ制御インターフェース部分は、前記操作
    サイクルの向きに基づいて前記データバッファを制御し
    て、前記プロセッサバスからのデータを最適な前記ラッ
    チにラッチさせ、前記データがラッチされた時及び前記
    複数のメモリデバイス或いは前記ホストバスへのサイク
    ルが最適に完了する前に前記操作サイクル完了指示を前
    記プロセッサバスに供給する請求項2に記載のコンピュ
    ータシステム。
  4. 【請求項4】前記プロセッサがバースト操作サイクルを
    実行し、アドレスが形成され、複数の順序的データ要素
    が形成され、前記バースト操作サイクルが単一操作サイ
    クル指示を用いて、各データ要素毎に1つの複数の操作
    サイクル完了指示を受信し、 前記プロセッサ制御インターフェースが各データ要素毎
    に操作サイクル完了指示を形成する請求項3に記載のコ
    ンピュータシステム。
  5. 【請求項5】前記複数のメモリデバイスにデータを供給
    する前記データバッファラッチは、バースト操作サイク
    ルにおける全データ要素を受信するに十分な複数のラッ
    チを含み、 前記プロセッサ制御インターフェース部分が前記データ
    バッファ内の前記ラッチを制御して、バースト操作サイ
    クルにおける全データ要素をラッチする請求項4に記載
    のコンピュータシステム。
  6. 【請求項6】前記プロセッサは、前記ホストバス或は前
    記複数のメモリデバイスの1つに向けた操作書込サイク
    ルを形成し、前記複数のメモリデバイス或はホストバス
    の他に向けた操作サイクルが追従し、 前記プロセッサ制御インターフェース部分は、前記制御
    信号を前記データバッファ及び前記プロセッサに供給し
    て、データを前記データバッファにラッチさせ、操作サ
    イクル受理信号が前記ホストバス制御インターフェース
    部分或は前記メモリ制御インターフェース部分の適所に
    供給され、操作サイクル完了指示が第1前記サイクル毎
    に前記プロセッサに供給され、前記プロセッサ制御イン
    ターフェース部分は、第2操作サイクル毎に操作サイク
    ル開始指示を受信し、操作サイクル受理信号を前記ホス
    トバス制御インターフェース部分或は前記メモリ制御イ
    ンターフェース部分の他に供給し、従って2つの操作サ
    イクルが同時に前記メモリ制御器によって処理される請
    求項3に記載のコンピュータシステム。
  7. 【請求項7】前記ホストバスに接続される前記デバイス
    は、 アドレス、制御及びデータ部分を持って、アドレス、デ
    ータ及び制御信号を転送する入力/出力バスと、 前記入力/出力バスに接続されて、アドレス入力及びデ
    ータ及び制御端子を持って、アドレスを受信し、前記入
    力/出力バスを経て制御及びデータ信号を受信及び転送
    するデバイスと、 前記ホスト及び前記入力/出力バスデータ部分間に接続
    されて、これらバス間でデータを転送し、前記バス間の
    転送を制御する信号を受信する制御入力及び前記ホスト
    バスからのデータを受信して前記入力/出力バスに供給
    するラッチを持つデータバッファと、 前記入力/出力及びホストアドレスバス部分に接続され
    て、前記バス間でアドレスを転送する手段と、 前記ホスト及び入力/出力バス制御部分に、前記入力/
    出力データバッファ及び前記入力/出力及びホストバス
    間にアドレスを転送する前記手段に接続されて、前記入
    力/出力データバッファ及び前記入力/出力及びホスト
    バス間にアドレスを転送する前記手段の操作を操作サイ
    クルの順序として制御し、前記入力/出力バス上で操作
    サイクルを実行し、前記ホストバスの操作サイクル開始
    指示を受信する入力と、前記ホストバスのサイクル完了
    指示を形成する出力とを含むバス制御器とを備え、 前記プロセッサは、前記ホストバスに向けた前記操作サ
    イクルの形成に先立って、前記入力/出力バスの前記デ
    バイスに向けた操作を形成し、 前記バス制御器は、前記制御信号を前記入力/出力デー
    タバッファに供給して、前記入力/出力データバッファ
    にデータをラッチさせ、入力/出力バスでの操作サイク
    ルの完了前に、前記操作サイクル完了指示を前記ホスト
    バスに供給し、従って3つの操作サイクルがコンピュー
    タシステムによって同時に処理される請求項6に記載の
    コンピュータシステム。
  8. 【請求項8】第2の前記ホストバスの或は前記複数のメ
    モリデバイスへの操作は書込サイクルであり、 前記プ
    ロセッサが前記第2操作サイクルに続く操作サイクルを
    形成し、 前記プロセッサ制御インターフェース部分は、前記制御
    信号を前記データバッファに供給して、前記サイクル毎
    にデータを前記データバッファにラッチさせ、操作サイ
    クル完了指示が前記サイクル毎に前記プロセッサに供給
    され、前記プロセッサ制御インターフェース部分が操作
    サイクル毎に前記第2操作サイクルに続く、操作サイク
    ル開始指示を受信し、従って4つの操作サイクルがコン
    ピュータシステムによって同時に処理されるその内3つ
    がメモリ制御器によって同時に処理される請求項7に記
    載のコンピュータシステム。
  9. 【請求項9】前記ホストバスに接続される前記デバイス
    は、 アドレス、制御及びデータ部分を持って、アドレス、デ
    ータ及び制御信号を転送する入力/出力バスと、 前記入力/出力バスに接続されて、アドレス入力及びデ
    ータ及び制御端子を持って、アドレスを受信し、前記入
    力/出力バスを経て制御及びデータ信号を受信及び転送
    するデバイスと、 前記ホスト及び前記入力/出力バスデータ部分間に接続
    されて、これらバス間でデータを転送し、前記バス間の
    転送を制御する信号を受信する制御入力を持つデータバ
    ッファと、 前記入力/出力及びホストアドレスバス部分に接続され
    て、前記バス間でアドレスを転送する手段と、 前記ホスト及び入力/出力バス制御部分に、前記入力/
    出力データバッファ及び前記入力/出力及びホストバス
    間にアドレスを転送する前記手段に接続されて、前記入
    力/出力データバッファ及び前記入力/出力及びホスト
    バス間にアドレスを転送する前記手段の操作を操作サイ
    クルの順序として制御し、前記入力/出力バス上で操作
    サイクルを実行し、前記ホストバスの操作サイクル開始
    指示を受信する入力と、前記ホストバスのサイクル完了
    指示を形成する出力とを含むバス制御器と、 アドレス出力及び制御及びデータ端子を持ち、前記入力
    /出力バスに接続されて、前記入力/出力バスの操作サ
    イクルを制御し、前記複数のメモリデバイスへの操作を
    指向するバスマスタとを備え、 前記バス制御器は、前記複数のメモリデバイスに向けら
    れる前記バスマスタ操作サイクルを検知し、前記入力/
    出力データバッファを制御して、前記入力/出力及びホ
    ストデータバス部分間でデータを転送させ、前記入力/
    出力及びホストアドレスバス部分に接続される前記手段
    を制御して、アドレスを前記入力/出力及びホストバス
    間で転送させ、 前記メモリ制御器は、前記プロセッサ及びホストアドレ
    スバス部分に接続される前記手段を制御して、アドレス
    を前記プロセッサ及びホストバス間で転送するために、
    前記メモリ制御器が前記複数のメモリデバイスに向けた
    前記バスマスタサイクルを検知した時に、アドレスを前
    記プロセッサ及びホストバス間に転送させ、 前記メモリ制御インターフェース部分は、前記入力/出
    力バスから制御信号を受信し、制御信号を前記データバ
    ッファに供給して、データを前記複数のメモリデバイス
    及び前記ホストバス間に転送させ、前記バスマスタが操
    作サイクルを前記複数のメモリデバイスに向けた時に、
    制御信号を前記メモリアドレス手段に供給して、前記プ
    ロセッサバス上のアドレス信号及び前記入力/出力バス
    上の制御信号に基づいて、アドレス及び制御信号を前記
    複数のメモリデバイスに供給する請求項1に記載のコン
    ピュータシステム。
JP6075302A 1993-03-22 1994-03-22 フルパイプライン共起メモリ制御器 Expired - Fee Related JP2597954B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/034,290 US5537555A (en) 1993-03-22 1993-03-22 Fully pipelined and highly concurrent memory controller
US034,290 1993-03-22

Publications (2)

Publication Number Publication Date
JPH076084A true JPH076084A (ja) 1995-01-10
JP2597954B2 JP2597954B2 (ja) 1997-04-09

Family

ID=21875479

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6075302A Expired - Fee Related JP2597954B2 (ja) 1993-03-22 1994-03-22 フルパイプライン共起メモリ制御器

Country Status (6)

Country Link
US (1) US5537555A (ja)
EP (1) EP0617365B1 (ja)
JP (1) JP2597954B2 (ja)
AT (1) ATE202227T1 (ja)
CA (1) CA2119174C (ja)
DE (1) DE69427421T2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8853341B2 (en) 2008-03-05 2014-10-07 Sika Technology Ag Composition featuring enhanced adhesion to porous substrates
US10144317B2 (en) 2010-12-24 2018-12-04 Ts Tech Co., Ltd. Vehicle seat

Families Citing this family (92)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU703750B2 (en) * 1994-10-14 1999-04-01 Compaq Computer Corporation Easily programmable memory controller which can access different speed memory devices on different cycles
US5634112A (en) * 1994-10-14 1997-05-27 Compaq Computer Corporation Memory controller having precharge prediction based on processor and PCI bus cycles
JP4084428B2 (ja) * 1996-02-02 2008-04-30 富士通株式会社 半導体記憶装置
US5745914A (en) * 1996-02-09 1998-04-28 International Business Machines Corporation Technique for converting system signals from one address configuration to a different address configuration
US6038620A (en) * 1996-09-09 2000-03-14 International Business Machines Corporation Method and system for optimal high speed match in a high performance controller which ensures an input/output interface stays ahead of a host interface
US6009482A (en) * 1997-03-28 1999-12-28 International Business Machines Corporation Method and apparatus for enabling cache streaming
US5915126A (en) * 1997-08-12 1999-06-22 International Business Machines Corporation Computer system memory controller and method of burst data ordering translation
US6240474B1 (en) 1997-09-16 2001-05-29 International Business Machines Corporation Pipelined read transfers
US6085285A (en) * 1997-11-13 2000-07-04 International Business Machines Corporation Intermixing different devices along a single data communication link by placing a strobe signal in a parity bit slot
US6279065B1 (en) * 1998-06-03 2001-08-21 Compaq Computer Corporation Computer system with improved memory access
US6272609B1 (en) * 1998-07-31 2001-08-07 Micron Electronics, Inc. Pipelined memory controller
US6295592B1 (en) 1998-07-31 2001-09-25 Micron Technology, Inc. Method of processing memory requests in a pipelined memory controller
US6515914B2 (en) * 2001-03-21 2003-02-04 Micron Technology, Inc. Memory device and method having data path with multiple prefetch I/O configurations
US8621137B2 (en) * 2007-12-27 2013-12-31 Sandisk Enterprise Ip Llc Metadata rebuild in a flash memory controller following a loss of power
US8365041B2 (en) 2010-03-17 2013-01-29 Sandisk Enterprise Ip Llc MLC self-raid flash data protection scheme
US8910020B2 (en) 2011-06-19 2014-12-09 Sandisk Enterprise Ip Llc Intelligent bit recovery for flash memory
US8909982B2 (en) 2011-06-19 2014-12-09 Sandisk Enterprise Ip Llc System and method for detecting copyback programming problems
US8938658B2 (en) 2011-11-07 2015-01-20 Sandisk Enterprise Ip Llc Statistical read comparison signal generation for memory systems
US8954822B2 (en) 2011-11-18 2015-02-10 Sandisk Enterprise Ip Llc Data encoder and decoder using memory-specific parity-check matrix
US8924815B2 (en) 2011-11-18 2014-12-30 Sandisk Enterprise Ip Llc Systems, methods and devices for decoding codewords having multiple parity segments
US9048876B2 (en) 2011-11-18 2015-06-02 Sandisk Enterprise Ip Llc Systems, methods and devices for multi-tiered error correction
US9699263B1 (en) 2012-08-17 2017-07-04 Sandisk Technologies Llc. Automatic read and write acceleration of data accessed by virtual machines
US9501398B2 (en) 2012-12-26 2016-11-22 Sandisk Technologies Llc Persistent storage device with NVRAM for staging writes
US9239751B1 (en) 2012-12-27 2016-01-19 Sandisk Enterprise Ip Llc Compressing data from multiple reads for error control management in memory systems
US9612948B2 (en) 2012-12-27 2017-04-04 Sandisk Technologies Llc Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device
US9454420B1 (en) 2012-12-31 2016-09-27 Sandisk Technologies Llc Method and system of reading threshold voltage equalization
US9003264B1 (en) 2012-12-31 2015-04-07 Sandisk Enterprise Ip Llc Systems, methods, and devices for multi-dimensional flash RAID data protection
US9214965B2 (en) 2013-02-20 2015-12-15 Sandisk Enterprise Ip Llc Method and system for improving data integrity in non-volatile storage
US9329928B2 (en) 2013-02-20 2016-05-03 Sandisk Enterprise IP LLC. Bandwidth optimization in a non-volatile memory system
US9870830B1 (en) 2013-03-14 2018-01-16 Sandisk Technologies Llc Optimal multilevel sensing for reading data from a storage medium
US9244763B1 (en) 2013-03-15 2016-01-26 Sandisk Enterprise Ip Llc System and method for updating a reading threshold voltage based on symbol transition information
US9136877B1 (en) 2013-03-15 2015-09-15 Sandisk Enterprise Ip Llc Syndrome layered decoding for LDPC codes
US9367246B2 (en) 2013-03-15 2016-06-14 Sandisk Technologies Inc. Performance optimization of data transfer for soft information generation
US9009576B1 (en) 2013-03-15 2015-04-14 Sandisk Enterprise Ip Llc Adaptive LLR based on syndrome weight
US9092350B1 (en) 2013-03-15 2015-07-28 Sandisk Enterprise Ip Llc Detection and handling of unbalanced errors in interleaved codewords
US9236886B1 (en) 2013-03-15 2016-01-12 Sandisk Enterprise Ip Llc Universal and reconfigurable QC-LDPC encoder
US10049037B2 (en) 2013-04-05 2018-08-14 Sandisk Enterprise Ip Llc Data management in a storage system
US9170941B2 (en) 2013-04-05 2015-10-27 Sandisk Enterprises IP LLC Data hardening in a storage system
US9159437B2 (en) 2013-06-11 2015-10-13 Sandisk Enterprise IP LLC. Device and method for resolving an LM flag issue
US9043517B1 (en) 2013-07-25 2015-05-26 Sandisk Enterprise Ip Llc Multipass programming in buffers implemented in non-volatile data storage systems
US9384126B1 (en) 2013-07-25 2016-07-05 Sandisk Technologies Inc. Methods and systems to avoid false negative results in bloom filters implemented in non-volatile data storage systems
US9524235B1 (en) 2013-07-25 2016-12-20 Sandisk Technologies Llc Local hash value generation in non-volatile data storage systems
US9639463B1 (en) 2013-08-26 2017-05-02 Sandisk Technologies Llc Heuristic aware garbage collection scheme in storage systems
US9361221B1 (en) 2013-08-26 2016-06-07 Sandisk Technologies Inc. Write amplification reduction through reliable writes during garbage collection
US9442670B2 (en) 2013-09-03 2016-09-13 Sandisk Technologies Llc Method and system for rebalancing data stored in flash memory devices
US9519577B2 (en) 2013-09-03 2016-12-13 Sandisk Technologies Llc Method and system for migrating data between flash memory devices
US9158349B2 (en) 2013-10-04 2015-10-13 Sandisk Enterprise Ip Llc System and method for heat dissipation
US9323637B2 (en) 2013-10-07 2016-04-26 Sandisk Enterprise Ip Llc Power sequencing and data hardening architecture
US9442662B2 (en) 2013-10-18 2016-09-13 Sandisk Technologies Llc Device and method for managing die groups
US9298608B2 (en) 2013-10-18 2016-03-29 Sandisk Enterprise Ip Llc Biasing for wear leveling in storage systems
US9436831B2 (en) 2013-10-30 2016-09-06 Sandisk Technologies Llc Secure erase in a memory device
US9263156B2 (en) 2013-11-07 2016-02-16 Sandisk Enterprise Ip Llc System and method for adjusting trip points within a storage device
US9244785B2 (en) 2013-11-13 2016-01-26 Sandisk Enterprise Ip Llc Simulated power failure and data hardening
US9152555B2 (en) 2013-11-15 2015-10-06 Sandisk Enterprise IP LLC. Data management with modular erase in a data storage system
US9703816B2 (en) 2013-11-19 2017-07-11 Sandisk Technologies Llc Method and system for forward reference logging in a persistent datastore
US9520197B2 (en) 2013-11-22 2016-12-13 Sandisk Technologies Llc Adaptive erase of a storage device
US9520162B2 (en) 2013-11-27 2016-12-13 Sandisk Technologies Llc DIMM device controller supervisor
US9122636B2 (en) 2013-11-27 2015-09-01 Sandisk Enterprise Ip Llc Hard power fail architecture
US9280429B2 (en) 2013-11-27 2016-03-08 Sandisk Enterprise Ip Llc Power fail latching based on monitoring multiple power supply voltages in a storage device
US9582058B2 (en) 2013-11-29 2017-02-28 Sandisk Technologies Llc Power inrush management of storage devices
US9250676B2 (en) 2013-11-29 2016-02-02 Sandisk Enterprise Ip Llc Power failure architecture and verification
US9092370B2 (en) 2013-12-03 2015-07-28 Sandisk Enterprise Ip Llc Power failure tolerant cryptographic erase
US9235245B2 (en) 2013-12-04 2016-01-12 Sandisk Enterprise Ip Llc Startup performance and power isolation
US9129665B2 (en) 2013-12-17 2015-09-08 Sandisk Enterprise Ip Llc Dynamic brownout adjustment in a storage device
US9549457B2 (en) 2014-02-12 2017-01-17 Sandisk Technologies Llc System and method for redirecting airflow across an electronic assembly
US9497889B2 (en) 2014-02-27 2016-11-15 Sandisk Technologies Llc Heat dissipation for substrate assemblies
US9703636B2 (en) 2014-03-01 2017-07-11 Sandisk Technologies Llc Firmware reversion trigger and control
US9519319B2 (en) 2014-03-14 2016-12-13 Sandisk Technologies Llc Self-supporting thermal tube structure for electronic assemblies
US9485851B2 (en) 2014-03-14 2016-11-01 Sandisk Technologies Llc Thermal tube assembly structures
US9348377B2 (en) 2014-03-14 2016-05-24 Sandisk Enterprise Ip Llc Thermal isolation techniques
US9448876B2 (en) 2014-03-19 2016-09-20 Sandisk Technologies Llc Fault detection and prediction in storage devices
US9454448B2 (en) 2014-03-19 2016-09-27 Sandisk Technologies Llc Fault testing in storage devices
US9390814B2 (en) 2014-03-19 2016-07-12 Sandisk Technologies Llc Fault detection and prediction for data storage elements
US9626400B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Compaction of information in tiered data structure
US9390021B2 (en) 2014-03-31 2016-07-12 Sandisk Technologies Llc Efficient cache utilization in a tiered data structure
US9626399B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Conditional updates for reducing frequency of data modification operations
US9697267B2 (en) 2014-04-03 2017-07-04 Sandisk Technologies Llc Methods and systems for performing efficient snapshots in tiered data structures
US10656842B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device
US9703491B2 (en) 2014-05-30 2017-07-11 Sandisk Technologies Llc Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device
US9645749B2 (en) 2014-05-30 2017-05-09 Sandisk Technologies Llc Method and system for recharacterizing the storage density of a memory device or a portion thereof
US10162748B2 (en) 2014-05-30 2018-12-25 Sandisk Technologies Llc Prioritizing garbage collection and block allocation based on I/O history for logical address regions
US10114557B2 (en) 2014-05-30 2018-10-30 Sandisk Technologies Llc Identification of hot regions to enhance performance and endurance of a non-volatile storage device
US10372613B2 (en) 2014-05-30 2019-08-06 Sandisk Technologies Llc Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device
US9070481B1 (en) 2014-05-30 2015-06-30 Sandisk Technologies Inc. Internal current measurement for age measurements
US10656840B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Real-time I/O pattern recognition to enhance performance and endurance of a storage device
US9093160B1 (en) 2014-05-30 2015-07-28 Sandisk Technologies Inc. Methods and systems for staggered memory operations
US10146448B2 (en) 2014-05-30 2018-12-04 Sandisk Technologies Llc Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device
US8891303B1 (en) 2014-05-30 2014-11-18 Sandisk Technologies Inc. Method and system for dynamic word line based configuration of a three-dimensional memory device
US9652381B2 (en) 2014-06-19 2017-05-16 Sandisk Technologies Llc Sub-block garbage collection
US9443601B2 (en) 2014-09-08 2016-09-13 Sandisk Technologies Llc Holdup capacitor energy harvesting
US9626286B2 (en) 2014-10-03 2017-04-18 Sandisk Technologies Llc Hardware and firmware paths for performing memory read processes
US10423563B2 (en) 2017-10-13 2019-09-24 International Business Machines Corporation Memory access broker system with application-controlled early write acknowledgment support and identification of failed early write acknowledgment requests to guarantee in-order execution of memory requests of applications

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS52102643A (en) * 1976-02-25 1977-08-29 Hitachi Ltd Data processor
JPS6142049A (ja) * 1984-07-31 1986-02-28 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション デ−タ処理システム
JPS61190647A (ja) * 1985-02-20 1986-08-25 Toshiba Corp デ−タ処理装置
JPS63308656A (ja) * 1987-06-10 1988-12-16 Fujitsu Ltd ブロックアクセス制御装置
JPH01180663A (ja) * 1988-01-12 1989-07-18 Fujitsu Ltd 主記憶アクセスデータ転送制御方式
JPH04332067A (ja) * 1990-08-31 1992-11-19 Advanced Micro Devicds Inc コンピュータ処理装置と複数の周辺装置との間の交信を行なうためのシステム
JPH0520165A (ja) * 1991-07-17 1993-01-29 Nec Corp システムバス制御装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5140687A (en) * 1985-10-22 1992-08-18 Texas Instruments Incorporated Data processing apparatus with self-emulation capability
JPH0212541A (ja) * 1988-04-29 1990-01-17 Internatl Business Mach Corp <Ibm> コンピユーテイング・システム及びその動作方法
US5083259A (en) * 1988-12-07 1992-01-21 Xycom, Inc. Computer bus interconnection device
EP0440457A3 (en) * 1990-01-31 1992-01-02 Hewlett-Packard Company Burst mode read implementation
US5305436A (en) * 1990-04-02 1994-04-19 Hewlett-Packard Company Hose bus video interface in personal computers
JPH0444136A (ja) * 1990-06-11 1992-02-13 Nec Corp メモリアクセス制御装置
DE69233510T2 (de) * 1991-03-01 2006-02-02 Advanced Micro Devices, Inc., Sunnyvale Ausgangspuffer für Mikroprozessor
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
US5289584A (en) * 1991-06-21 1994-02-22 Compaq Computer Corp. Memory system with FIFO data input
US5353415A (en) * 1992-10-02 1994-10-04 Compaq Computer Corporation Method and apparatus for concurrency of bus operations

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS52102643A (en) * 1976-02-25 1977-08-29 Hitachi Ltd Data processor
JPS6142049A (ja) * 1984-07-31 1986-02-28 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション デ−タ処理システム
JPS61190647A (ja) * 1985-02-20 1986-08-25 Toshiba Corp デ−タ処理装置
JPS63308656A (ja) * 1987-06-10 1988-12-16 Fujitsu Ltd ブロックアクセス制御装置
JPH01180663A (ja) * 1988-01-12 1989-07-18 Fujitsu Ltd 主記憶アクセスデータ転送制御方式
JPH04332067A (ja) * 1990-08-31 1992-11-19 Advanced Micro Devicds Inc コンピュータ処理装置と複数の周辺装置との間の交信を行なうためのシステム
JPH0520165A (ja) * 1991-07-17 1993-01-29 Nec Corp システムバス制御装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8853341B2 (en) 2008-03-05 2014-10-07 Sika Technology Ag Composition featuring enhanced adhesion to porous substrates
US10144317B2 (en) 2010-12-24 2018-12-04 Ts Tech Co., Ltd. Vehicle seat

Also Published As

Publication number Publication date
DE69427421D1 (de) 2001-07-19
US5537555A (en) 1996-07-16
CA2119174C (en) 1998-10-20
CA2119174A1 (en) 1994-09-23
DE69427421T2 (de) 2001-11-15
JP2597954B2 (ja) 1997-04-09
EP0617365B1 (en) 2001-06-13
EP0617365A1 (en) 1994-09-28
ATE202227T1 (de) 2001-06-15

Similar Documents

Publication Publication Date Title
JP2597954B2 (ja) フルパイプライン共起メモリ制御器
JPH076083A (ja) 単一デバイスから同期形成された全dramアドレス及び制御信号を持つメモリ制御器
JPH076094A (ja) システム管理モードの実行中に書込み保護状態を上書きするコンピュータシステムの操作方法及びコンピュータシステム
US5893136A (en) Memory controller for independently supporting Synchronous and Asynchronous DRAM memories
KR100349787B1 (ko) 싱글칩마이크로컴퓨터
US6026464A (en) Memory control system and method utilizing distributed memory controllers for multibank memory
CN107924375B (zh) 用于高速存储器接口的命令仲裁
US5524235A (en) System for arbitrating access to memory with dynamic priority assignment
US6269433B1 (en) Memory controller using queue look-ahead to reduce memory latency
US6209067B1 (en) Computer system controller and method with processor write posting hold off on PCI master memory request
US8296541B2 (en) Memory subsystem with positional read data latency
US8037253B2 (en) Method and apparatus for global ordering to insure latency independent coherence
US5793693A (en) Cache memory using unique burst counter circuitry and asynchronous interleaved RAM banks for zero wait state operation
EP0663087A1 (en) Method and apparatus for non-snoop window reduction
WO1994008297A1 (en) Method and apparatus for concurrency of bus operations
WO1994008297A9 (en) Method and apparatus for concurrency of bus operations
JP2004110785A (ja) メモリコントローラ
US5333293A (en) Multiple input frequency memory controller
JPH08227377A (ja) 異なったサイクルで異なる速度のメモリデバイスにアクセスできるメモリ制御器
US20030023794A1 (en) Cache coherent split transaction memory bus architecture and protocol for a multi processor chip device
US6233661B1 (en) Computer system with memory controller that hides the next cycle during the current cycle
US5577214A (en) Programmable hold delay
JPH0271344A (ja) マイクロコンピユータ・システム
US5590316A (en) Clock doubler and smooth transfer circuit
WO1999014683A1 (en) Clocking scheme for digital signal processor system

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees