09.08.2013 Views

Design and Verification of Adaptive Cache Coherence Protocols ...

Design and Verification of Adaptive Cache Coherence Protocols ...

Design and Verification of Adaptive Cache Coherence Protocols ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Migratory Rule Migratory Imperative & Directive Rules<br />

P1 Loadl-on-Clean<br />

P2 Loadl-on-Dirty<br />

P3<br />

P4 C-Send-<strong>Cache</strong>Req<br />

P5 Storel-on-Clean<br />

P6 Storel-on-Dirty<br />

P7<br />

P8 C-Send-<strong>Cache</strong>Req<br />

P9 Commit-on-Clean<br />

P10 Commit-on-Dirty<br />

P11<br />

P12 Commit-on-Invalid<br />

P13 Reconcile-on-Clean<br />

P14 Reconcile-on-Dirty<br />

P15<br />

P16 Reconcile-on-Invalid<br />

VC1 C-Send-Flush<br />

VC2 C-Send-Purge<br />

VC3 C-Send-<strong>Cache</strong>Req<br />

MC1 C-Receive-<strong>Cache</strong><br />

MC2 C-Receive-<strong>Cache</strong><br />

MC3 C-Receive-FlushReq + C-Send-Purge<br />

MC4 C-Receive-FlushReq + C-Send-Flush<br />

MC5 C-Receive-FlushReq<br />

MC6 C-Receive-FlushReq<br />

VM1 M-Send-<strong>Cache</strong><br />

VM2 M-Send-FlushReq<br />

MM1 M-Receive-<strong>Cache</strong>Req + M-Send-<strong>Cache</strong><br />

MM2 M-Send-FlushReq<br />

MM3 M-Receive-<strong>Cache</strong>Req<br />

MM4<br />

MM5 M-Receive-<strong>Cache</strong>Req<br />

MM6 M-Receive-Purge<br />

MM7 M-Receive-Purge<br />

MM8 M-Receive-Flush<br />

MM9 M-Receive-Flush<br />

Figure 6.7: Derivation <strong>of</strong> Migratory from Imperative & Directive Rules<br />

6.5 Liveness Pro<strong>of</strong> <strong>of</strong> the Migratory Protocol<br />

We prove the liveness <strong>of</strong> Migratory by showing that each processor can always make progress.<br />

We assume FIFO message passing <strong>and</strong> proper bu er management as described in Section 6.3.<br />

The lemmas <strong>and</strong> theorems in this section are given in the context <strong>of</strong> the integrated rules <strong>of</strong><br />

Migratory.<br />

6.5.1 Some Invariants <strong>of</strong> Migratory<br />

Lemma 44 is the same as Lemma 36, except that the C[id ] state <strong>of</strong> the imperative rules is<br />

replaced by the C[id ] <strong>and</strong> T[id ] states <strong>of</strong> the integrated rules.<br />

Lemma 44 Given a Migratory term s,<br />

126

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!