This PR adds support for DMA to the BlackParrot+Manycore Platform. This is a different mechanism than the backdoor simulation, which uses a DPI bridge to manually change the memory contents. In HammerBlade, we write to the V$ directly from BP, which means that we do not need to flush or invalidate the V$ as part of the DMA routines. Because of this, we add a configuration to select whether the DMA targets V$ or DRAM directly
This PR adds support for DMA to the BlackParrot+Manycore Platform. This is a different mechanism than the backdoor simulation, which uses a DPI bridge to manually change the memory contents. In HammerBlade, we write to the V$ directly from BP, which means that we do not need to flush or invalidate the V$ as part of the DMA routines. Because of this, we add a configuration to select whether the DMA targets V$ or DRAM directly
Depends on #827 #826 #825