Hi all,
I was trying to run the MESI_SCMP_tiledL2bank_directory protocol.
I did what Mike had pointed out earlier:
1) Set L2_RESPONSE_LATENCY to be the same as L2_REQUEST_LATENCY
2) In the MESI_SCMP_tiledL2bank_directory-L2cache.sm file, change this
line (#815 i think):
enqueue(L1Network_out, L1Msg) {
To:
enqueue(L1network_out, L1Msg, latency="L2_RESPONSE_LATENCY") {
But I am still getting the FIFO ordering error.
Does the MESI_SCMP--- protocol work for anyone ?
Niket.
Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, Time) in
buffers/MessageBuffer.C:259: *this is [MessageBuffer: consumer-yes
[PrioHeap: [122062, 2563, [RefCnt: [L1Msg: Address=[0x7abe0c0, line
0x7abe0c0] RequestType=RESPONSE ResponseType=DATA
Requestor=NULL-128721088 Sender=L2Cache-8 Destination=[NetDest (3) 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 - 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 - ] MessageSize=Response_Data DataBlk=] Dirty=0
Time=122058 ]]; ], ]] [Queue from port 8 0 0 to PerfectSwitch]
Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, Time) in
buffers/MessageBuffer.C:260: m_name is [Queue from port 8 0 0 to
PerfectSwitch]
Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, Time) in
buffers/MessageBuffer.C:261: current_time is 122059
Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, Time) in
buffers/MessageBuffer.C:262: delta is 1
Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, Time) in
buffers/MessageBuffer.C:263: arrival_time is 122060
Warning: in fn void MessageBuffer::enqueue(const MsgPtr&, Time) in
buffers/MessageBuffer.C:264: m_last_arrival_time is 122062
Fatal Error: in fn void MessageBuffer::enqueue(const MsgPtr&, Time) in
buffers/MessageBuffer.C:265: FIFO ordering violated
*** Simics getting shaky, switching to 'safe' mode.
*** Simics (main thread) received an abort signal, probably an assertion.
|