• 検索結果がありません。

照会およびバス・アービトレーション・サイクル

ドキュメント内 000 (ページ 154-176)

第 6 章 バス・サイクル

6.5 照会およびバス・アービトレーション・サイクル

AMD-K6

プロセッサは、内蔵型レベル

1

・データ&命令キャッシュを装備してい る。キャッシュはそれぞれ

32K

バイトで、

2

ウエイ・セットアソーシエイティブであ る。共有(

Shared

)メモリ・スペースにアクセスしようとする場合、システム・ロ ジックまたは他のバス・マスタ・デバイスは照会サイクルを開始することができ、

キャッシュ/メモリの統一性を維持する。照会サイクルに応答してプロセッサは 照会アドレスを両キャッシュのキャッシュ・タグ・アドレスと比較し、必要な場合は キャッシュ・ラインの

MESI

ステートを更新し、メモリへのライトバックを行う。

照会サイクルは

AHOLD

BOFF#

または

HOLD

のアサートで開始できる。

AHOLD

は照会サイクルのサポートに特化している。

AHOLD

起動による照会サ イクルの間、プロセッサはただアドレス・バスをフロートさせているだけである。

BOFF#

は、進行中のプロセッサ・サイクルをアボートするため、バスへのアクセ スは最も速く、一方

AHOLD

および

HOLD

は、両方とも、進行中のバス・サイクル を完了させる。

HOLD

起動による、および

BOFF#

起動による照会サイクルの 間、プロセッサは全バス・ドライビング信号をフロートさせる。

ホールドおよびホールド・アクノリッジ・サイクル

システム・ロジックまたは別のバス・デバイスが

HOLD

をアサートし、照会サイク ルを開始したり、バスの全制御権を得ることもできる。

AMD-K6

プロセッサが アサートされた状態でサンプリングする場合、同プロセッサは進行中のバス・サ イクルを完了させ、

HLDA

をアサートし、バスの開放をアクノリッジする。プロ セッサは下記の信号を、

HLDA

がアサートされた同じクロック・エッジでフロー トさせる。

A[31:3]

DP[7:0]

ADS#

LOCK#

AP#

M/IO#

BE[7:0]#

PCD

CACHE#

PWT

D[63:0]

SCYC

アサートされた状態でサンプリングされたクロック・エッジの

1

つ後のクロック・

エッジで出力をフロートさせる。システム・ロジックは、自身がバスの使用に必 要な間だけ、

HOLD

をアサートできる。プロセッサは各クロック・エッジで

HOLD

をサンプリングするが、ロックト・サイクルの進行中サイクルまたはシーケンス が完了するまでは

HLDA

をアサートしない。

ホールド・アクノリッジ・サイクル中、

HOLD

をネゲートされた状態でサンプリン グする場合、プロセッサは次のクロック・エッジから

HLDA

をする。プロセッサは バス制御権を取り戻し、

HLDA

がネゲートされた同じクロック・エッジから

ADS#

をアサートすることができる。

CLK A[31:3]

BE[7:0]#

ADS#

M/IO#

D/C#

W/R#

D[63:0]

HOLD HLDA BRDY#

51.

 基本

HOLD/HLDA

命令

HOLD

起動による共有(

Shared

)または専有ラインへの照会ヒット

52

に、

HOLD

起動による照会サイクルを示す。この例では、プロセッサはバー スト・メモリ・リード・サイクル中に、アサートされた状態で

HOLD

をサンプリング する。プロセッサは現在のサイクルを完了し(予期された最後の

BRDY#

がア サートされた状態でサンプリングされるまで)、

HLDA

をアサートし、前述の通 り出力をフロートさせる。

ホールド・アクノリッジ・サイクル内では、システム・ロジックは照会サイクルをド ライブし、

EADS#

をアサートし、これが

A[31:5]

上で照会アドレスを有効化

Validate

)する。

HOLD

がネゲートされた状態でサンプリングされる前に

EADS#

がアサートされた状態でサンプリングされる場合、プロセッサはそれを 有効(

Valid

)照会サイクルとして認識する。

52

では、プロセッサは、

EADS#

がアサートされた状態でサンプリングされた クロック・エッジの後のクロック・エッジで

HIT#

をアサートし、

HITM#

をネゲート し、したがって現在の照会サイクルは共有(

Shared

)または専有キャッシュ・ラ インをヒットすることになる。(プロセッサのデータまたは命令キャッシュ内の共 有(

Shared

)および専有キャッシュ・ラインは、外部メモリ内のデータと同じ内容 である。)照会サイクル中、プロセッサは

INV

をサンプリングして、プロセッサの 命令またはデータ・キャッシュ内で見つかった、アドレスされたキャッシュ・ライ ンが無効(

Invalid

)ステートまたは共有(

Shared

)ステートのいずれに遷移さ れるのかを決定する。この例では、プロセッサは、

EADS#

でアサートされた状態

INV

をサンプリングし、これがそのキャッシュ・ラインを無効化(

Invalidate

ている。

システム・ロジックは、

EADS#

がアサートされた状態でサンプリングされた同じ クロック・エッジから

HOLD

をネゲートできる。プロセッサは、次の照会サイクル まで、同じステートで

HIT#

のドライブを継続する。

HITM#

HIT#

がアサートさ れない限りアサートされない。

Burst Memory Read Inquire CLK

A[31:3]

BE[7:0]#

ADS#

M/IO#

D/C#

W/R#

HIT#

HITM#

D[63:0]

KEN#

BRDY#

HOLD HLDA EADS#

INV

52.

HOLD

起動による共有(

Shared

)または専有ラインへの照会ヒット

HOLD

起動による修正ラインへの照会ヒット

53

は、図

52

と同じシーケンスを示すが、図

53

では、照会サイクルは修正済み

Modified

)ラインをヒットしており、プロセッサは

HIT#

HITM#

の両方をア サートする。この例では、プロセッサは照会サイクルの直後にライトバック・サイ クルを実行し、修正されたキャッシュ・ラインを外部メモリ(通常レベル

2

キャッ シュまたは

DRAM

)にアップデートする。プロセッサは、照会サイクル中にラッチ されたアドレス(

A[31:5]

)を使用してライトバック・サイクルを実行する。プロ セッサはライトバック・サイクル中ずっと

HITM#

をアサートし、ライトバックの予 期された最後の

BRDY#

がアサートされた状態でサンプリングされた

1

クロッ ク・エッジ後のクロック・エッジで

HITM#

をネゲートする。

照会サイクル中で

EADS#

をサンプリングする場合、プロセッサは同じく

INV

をサ ンプリングして、照会サイクル後のキャッシュ・ライン

MESI

ステートを決定する。

照会サイクル中に

INV

がアサートされた状態でサンプリングされた場合、プロ セッサはそのライン(見つかった場合)を、その以前のステートに関係なく無効

Invalid

)ステートに遷移させる。キャッシュ・ライン・インバリデーション・命令 はバス上では見えない。照会サイクル中に

INV

がアサートされた状態でサンプ リングされ た 場 合 、プロセッサ は そ の ライン( 見 つ かった 場 合 )を 共 有

Shared

)ステートに遷移させる。図

53

では、プロセッサは照会サイクル中にア サートされた状態で

INV

をサンプリングしている。

HOLD

起動による照会サイクルでは、システム・ロジックは、

EADS#

がアサート された状態でサンプリングされた同じクロック・エッジから、

HOLD

をネゲートす ることができる。プロセッサは、

EADS#

がアサートされた状態でサンプリングさ れたクロック・エッジの後のクロック・エッジで

HIT#

および

HITM#

をドライブす る。

Burst Memory Read Inquire Writeback Cycle CLK

A[31:3]

BE[7:0]#

ADS#

M/IO#

D/C#

W/R#

EADS#

HIT#

HITM#

D[63:0]

KEN#

BRDY#

HOLD HLDA

INV

53.

HOLD

起動による修正ラインへの照会ヒット

AHOLD

起動による照会ミス

システムは

AHOLD

をアサートして、

1

つ以上の照会サイクルを開始できる。照 会サイクル中にシステムがアドレス・バスをドライブできるようにするため、プロ セッサは、

AHOLD

がアサートされた状態でサンプリングされたクロック・エッジ から

A[31:3]

をフロートする。データ・バスおよびその他すべての制御およびス テータス信号は、引き続きプロセッサの制御下に置かれ、フロートされることは ない。この機能によって、

AHOLD

がアサートされた状態でサンプリングされた 時点で進行中のバス・サイクルは、完了するまで継続できる。プロセッサは、

AHOLD

がネゲートされた状態でサンプリングされたクロック・エッジから、アド レス・バスのドライブを再開する。

54

では、プロセッサはメモリ・バースト・リード・サイクル中に、アサートされた 状態で

AHOLD

をサンプリングしており、プロセッサは、

AHOLD

がアサートされ てサンプリングされた同じクロック・エッジからアドレス・バスをフロートする。

プロセッサは依然としてバスの制御を行っているが、予期された最後の

BRDY#

がアサートされてサンプリングされるまで現在のサイクルを完了する。照会サ イクル中、システム・ロジックは

A[31:5]

上の照会アドレスで

EADS#

をドライブす る。プロセッサはアサートされた状態で

EADS#

をサンプリングし、命令および データ両キャッシュ内で照会アドレスをそのタグ・アドレスと比較する。図

54

で は、照会アドレスは、プロセッサ内でタグ・アドレスをミスしている(

H I T #

HITM#

が共にネゲートされている)。したがって、プロセッサは、

AHOLD

をネ ゲートされた状態でサンプリングした時点で次のサイクルへ進む。(プロセッサ は、

AHOLD

をネゲートした状態でサンプリングした同じクロック・エッジから

ADS#

をアサートして新規サイクルをドライブすることができる。)

認識されるべき

A H O L D

起動による照会サイクルの場合、プロセッサは、

EADS#

をアサートされた状態でサンプリングする前に、少なくとも

2

つの連続 するクロックにわたり、アサートされた状態で

AHOLD

をサンプリングしなけれ ばならない。プロセッサが照会サイクル中にアドレス・パリティ・エラーを検出す る場合、

APCHK#

1

クロック間アサートされる。システム・ロジックはこの信号 のアサーションに対し、適切に応答しなければならない。

ドキュメント内 000 (ページ 154-176)