Dear list,
I have a question regarding the use of MessageBuffer. I am using
MSI_MOSI_CMP_directory protocol. I want to create a MessageBuffer that
connects an in_port and an out_port, both belong to the L2Cache_Controller.
Basically the L2 controller sends message to the out_port and the in_port just
process each message in FIFO order. No data needs to go in or out of the L2
cache.
Right now I defined the following in my MSI_MOSI_CMP_directory-L2cache.sm file:
MessageBuffer LocalL2Request, ordered="true";
out_port(LocalL2Request_out, RequestMsg, LocalL2Request);
in_port(LocalL2Request_in, RequestMsg, LocalL2Request) {
if(LocalL2Request_in.isReady()) {
peek(LocalL2Request_in, RequestMsg) {
// Do something;
}
}
}
However it seems that the two ports are not "connected" even if they share the
same MessageBuffer. The simulator goes to an infinite loop when I send
requests to the out_port, which implies that those requests were never
processed by the in_port.
Please help!!
Thanks a lot!
Lei
_________________________________________________________
This message was sent through the NU ECE webmail gateway.
|