cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
yxwwwwxy2
Visitor
Visitor
689 Views
Registered: ‎12-10-2019

Using the same memory address on an AXI slave port for both read and write commands

Jump to solution

Hi everyone,

I'm wondering whether it is possible to create a block with an AXI slave port that can give different values when PS read or write the same address. For example,

  • When PS write at 0xA0000000, pass it to a internal counter as an initial value
  • Update the counter on the rising edge of clk signal
  • When PS read at 0xA0000000, return the updated counter value

Obviously this problem can be solved if I create another AXI slave port and use a different address for the read command. I'm just curious whether it can be achieved in HLS.

Thanks in advance!

0 Kudos
1 Solution

Accepted Solutions
u4223374
Advisor
Advisor
571 Views
Registered: ‎04-26-2015

Sort of. HLS refuses (at least in my experience - I'm still on 2016.2) to create a read-write register on the AXI Lite interface; instead a register that should be read-write ends up as a read port and a separate write port. However, if you make it a RAM instead (a two element RAM is fine - when I tried it, one element wasn't enough) then each address is full read-write.

View solution in original post

0 Kudos
1 Reply
u4223374
Advisor
Advisor
572 Views
Registered: ‎04-26-2015

Sort of. HLS refuses (at least in my experience - I'm still on 2016.2) to create a read-write register on the AXI Lite interface; instead a register that should be read-write ends up as a read port and a separate write port. However, if you make it a RAM instead (a two element RAM is fine - when I tried it, one element wasn't enough) then each address is full read-write.

View solution in original post

0 Kudos