Hi guys,
I'm using full system simulation mode with Ruby on x86 platform. I've
implemented a device in gem5 which uses DMA to access memory. I've
connected the device to IO bus and it successfully send DMA request to the
directory using dma_ctrl1 (dma_ctrl0 is connected to IDE).
The problem is that directory sends the response to dma_ctrl0 instead of
dma_ctrl1, so the gem5 gets crashed and gives me the fatal error. I checked
the code and I realized that the "dr_sendDMAData" action in
MESI_Two_Level-dir.sm uses "map_Address_to_DMA" function and this inline
function always returns 0. This is the function code (in Type.py):
*map_Address_to_DMA(const Address &addr)*
* {
MachineID dma = {MachineType_DMA, 0};
return dma;
}*
So I wonder if there is a way I could modify this function or use any other
method to enforce directory to send DMA responce to the original requestor,
rather than IDE controller.
Any help would be really appreciated.
Best Regards,
Amirali
--
--
Amirali Boroumand
PhD Student
Carnegie Mellon University
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users