DMA questions

Hello, just have a quick question here that’s related to basic use of the DMA core.

I want to use the DMA to fill a FIFO buffer of commands to keep them contemporaneous with the data the commands are affecting. Is it possible to send these commands in one long 128-bit word? Or do I need to buffer the buffer and fill it 32 bits at a time?

Also, I generated a bitstream and loaded everything up to the Jupyter server as usual, but ol.ip_dict doesn’t show the DMA cores at all, even though I can see them clearly in the .hwh file. Is there a step I’m missing? Did something not compile correctly in the bitstream generation?

Hi @redson,

I moved the question to a new topic.

I want to use the DMA to fill a FIFO buffer of commands to keep them contemporaneous with the data the commands are affecting. Is it possible to send these commands in one long 128-bit word? Or do I need to buffer the buffer and fill it 32 bits at a time?

Set the Stream Data Width to 128 in the DMA, this should be enough.

Also, I generated a bitstream and loaded everything up to the Jupyter server as usual, but ol.ip_dict doesn’t show the DMA cores at all, even though I can see them clearly in the .hwh file. Is there a step I’m missing? Did something not compile correctly in the bitstream generation?

Did you try resetting the cache?

Mario

Hi Mario,

Thanks for the quick reply! Resetting the cache worked perfectly, thanks.

My question is more about the use on the Jupyter side when allocating the buffer. Obviously u4 isn’t the correct type for a 128-bit binary. I haven’t gotten to testing it yet, but I’m hoping np.float128 is fine and just passing it the binary string will work.

1 Like

My question is more about the use on the Jupyter side when allocating the buffer. Obviously u4 isn’t the correct type for a 128-bit binary. I haven’t gotten to testing it yet, but I’m hoping np.float128 is fine and just passing it the binary string will work.

I see, you can also create a custom datatype with numpy for this. https://stackoverflow.com/a/2352846, whichever is easier for you.

Ah, that’s a nice elegant solution. I’ll do that. Seems a little less spaghetti.

1 Like