Hello, I am studying the Mesi two level protocol. This is related to the buffers that serve as an interface between the Ruby protocol and the interconnection network.
I want to know the exact place where a message gets enqueued to the proper queue based on Requestor and Destination machines For example, below code is from Mesi_two_level-L2cache.sm // L1 Request in_port(L1RequestL2Network_in, RequestMsg, L1RequestToL2Cache, rank = 0) { if(L1RequestL2Network_in.isReady(clockEdge())) { peek(L1RequestL2Network_in, RequestMsg) { I understand that L1RequestL2Network_in serves as a queue from which L2 gets requests sent by L1s through the network. But there are many such queues, my question is where is it decided that a message should be put in L1RequestL2Network_in ? I am aware that NetworkInterface calls the enqueue() function, which enqueues messages in m_prio_heap as per MessageBuffer.cc, this seems to be common to all queues. Thanks in advance, Vedika.
_______________________________________________ gem5-users mailing list -- gem5-users@gem5.org To unsubscribe send an email to gem5-users-le...@gem5.org %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s