Re: [Gems-users] how does L1 cache with block state "S" handle Fwd_GetS from L2 cache


Date: Sun, 11 Oct 2009 12:07:52 -0400
From: Greg Byrd <gbyrd@xxxxxxxx>
Subject: Re: [Gems-users] how does L1 cache with block state "S" handle Fwd_GetS from L2 cache
I don't think the last paragraph is strictly true.  In SLICC, when you
declare an in_port or out_port, you must declare a message type
(such as DataMsg, AddressMsg, etc.).  So a particular MessageBuffer
only carries one type of message.  And there's no way to connect
multiple MessageBuffers to a virtual network, so the same
restriction applies to virtual networks, also.
(This does seem a little odd, since a virtual network just
represents a communication channel, and shouldn't care about
the message format. But I'm pretty sure this is accurate. Someone will surely correct me, if I'm wrong.)

Of course, you can create a generic type that carries lots of
different messages with different kinds of information. But at the data type level, they must all have the same message type.

...Greg



Niket Agarwal wrote:
Yes, there is no way to connect different MessageBuffers to different links, even now, in the default GEMS.

I think the point being made is that the same virtual network can be used for different kind of messages. In this case the L1->L1 and L2-> L1 responses use the same virtual network. Virtual networks are only used avoid protocol-level deadlocks and otherwise have no restriction on what messages go in which virtual network.

Niket

\
[← Prev in Thread] Current Thread [Next in Thread→]