# DMA questions

**URL:** https://discuss.pynq.io/t/dma-questions/8467
**Category:** Support
**Created:** [May 26, 2025, 5:02pm UTC](https://discuss.pynq.io/t/dma-questions/8467 "2025-05-26T17:02:29Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![redson](https://avatars.discourse-cdn.com/v4/letter/r/cab0a1/32.png) [@redson](https://discuss.pynq.io/u/redson)
#### Post date: [May 26, 2025, 5:02pm UTC](https://discuss.pynq.io/t/dma-questions/8467/1 "2025-05-26T17:02:29Z")

</div>

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?

---

<div class="post-metadata">

### Author: ![marioruiz](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/marioruiz/32/2177_2.png) [@marioruiz](https://discuss.pynq.io/u/marioruiz)
#### Post date: [May 27, 2025, 7:19am UTC](https://discuss.pynq.io/t/dma-questions/8467/2 "2025-05-27T07:19:40Z")

</div>

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?

> [@How to address axilite interface in pynq v3.0](https://discuss.pynq.io/t/how-to-address-axilite-interface-in-pynq-v3-0/4831/15):
>
> Thanks Mizan, I’ll do some more testing on this and let you know when the full fix is up. For the caching issue, did you still have to restart the board even after running? from pynq import PL PL.reset() I’ll look into the caching issue today, not quite sure we are seeing the same situation on our boards but I’ll try to recreate your issue and get back to you. All the best, Shane

Mario

---

<div class="post-metadata">

### Author: ![redson](https://avatars.discourse-cdn.com/v4/letter/r/cab0a1/32.png) [@redson](https://discuss.pynq.io/u/redson)
#### Post date: [May 27, 2025, 8:06am UTC](https://discuss.pynq.io/t/dma-questions/8467/3 "2025-05-27T08:06:53Z")

</div>

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.

---

<div class="post-metadata">

### Author: ![marioruiz](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/marioruiz/32/2177_2.png) [@marioruiz](https://discuss.pynq.io/u/marioruiz)
#### Post date: [May 27, 2025, 10:39am UTC](https://discuss.pynq.io/t/dma-questions/8467/4 "2025-05-27T10:39:15Z")

</div>

> 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](https://stackoverflow.com/a/2352846), whichever is easier for you.

---

<div class="post-metadata">

### Author: ![redson](https://avatars.discourse-cdn.com/v4/letter/r/cab0a1/32.png) [@redson](https://discuss.pynq.io/u/redson)
#### Post date: [May 27, 2025, 10:50am UTC](https://discuss.pynq.io/t/dma-questions/8467/5 "2025-05-27T10:50:39Z")

</div>

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

---

<div class="post-metadata">

### Author: ![system](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/system/32/2_2.png) [@system](https://discuss.pynq.io/u/system)
#### Post date: [October 6, 2025, 5:14pm UTC](https://discuss.pynq.io/t/dma-questions/8467/6 "2025-10-06T17:14:53Z")

</div>

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.
