Forum Discussion

Ali8's avatar
Ali8
Icon for New Contributor rankNew Contributor
4 years ago

Simultaneous read and write to the same memory address using HLS

Hello,

I have a specific need to be able to perform a simultaneous read and write to the same memory address in a dual-port RAM with the output of the RAM showing the newly written data. According to this post, this is possible in RTL: What happens when I perform a simultaneous read and write to the same address in dual-port RAM? (intel.com).

Clearly, this is a memory dependency in HLS that will cause the compiler to increase the initiation interval. As I am new to intel HLS, I don’t understand how the ivdep pragma works and I am not sure if it can actually be used to force a simultaneous read and write to the same address. Is this something possible in HLS?

Thanks,

3 Replies

  • Hi @Ali8,

    Thank you for posting in Intel community forum and hope all is well.
    From my understanding it can be done, however it is not recommended as the data width will be reduced.
    Perhaps I would recommend to look into the memory configuration example in the following location <quartus_installation_dir>\hls\examples\tutorials\component_memories\memory_bank_configuration.

    The example provide example as well as some explain on how memory can be configured.
    As for ivdep pragma further explanation can be found here.
    Please do have a look and if that helps clarify your doubts.

    Best Wishes
    BB

    • Ali8's avatar
      Ali8
      Icon for New Contributor rankNew Contributor

      Thank you for your answer. I will sure have a look at the examples you have provided!

  • Hi @Ali8,

    Greetings, as we do not receive any further clarification on what is provided. Hence thread will now be transitioned to community support for further help on doubts in this thread. For new queries, please feel free to open a new thread and we will be right with you. Pleasure having you here.

    Best Wishes
    BB