Mon, 10 Dec 2014, 8:28pm


 couple of students have written about this one.  One of them is
  as follows:

> Hi Dr.Patt,
>
> I have question about your state machine model about snoopy cache.
>
> First let's clarify a definition of RSVD state, does it mean that the cache
> has the only clean copy?

No, the first write is a write through to memory, since the cache wants to
notify all other caches to invalidate their copy.  So, in RSVD state, the
cache and memory have valid copies.

> If the cache is in INVALID state, and it get a PW signal, you said it will
> go to RSVD state, not Dirty state.  I have skimmed the paper talked about
> Illinois protocol and read wiki, and I  find that in the paper it will go
> to dirty state, which I think is reasonable.
>
> Do I understand anything wrong?

The RSVD state was introduced in the Goodman scheme, not the Illinois scheme.
I do not remember what Janak Patel called that state.  In the Goodman scheme,
a PW from invalid (or from VALID, which means the line is SHARED with zero or
more other caches, all the same as memory) goes to RSVD, which includes
the write through and guarantees that none of the other caches have the line.

In the Illinois protocol (Patel and his student Papamarcus, ISCA 1984), yes
a PW from INVALID goes to DIRTY.

I believe that Goodman's allocating the RSVD state was to simply the logic,
and that he could have gone to DIRTY from INVALID on a PW, as did Steve Frank
in the Synapse protocol, which we did not talk about (except very briefly
in passing).  I am not sure if Goodman had any other reasons.  I will send
him email right now, and if he provides any insights, I will share them with
you.

By the way, my introduction of Snoopy Protocols in 460N was not to be
comprehensive in any way.  There were about a half dozen options for the 4th
state, including Synapse's not having a 4th state!  I only expect you to
understand the concept and know what Jim Goodman did, and why.

> Thank you.
>
> --
> Sincerely,
> <<name withheld to protect the student who thinks PW should go to DIRTY>>

Thank you.  You are showing good insights.





Yale Patt