08-29-2019 04:43 AM
We have top function as below :
#pragma HLS INTERFACE s_axilite port=trade_cnt
trade_cnt = trade_cnt + 1;
The variable trade_cnt is mapped on to AXILite as seen above.
Now we create an IP of this using export IP option. This also generates hardware address file.
The generated hardware address file in the exported IP folder gives 3 addresses with extensions _i,_o and _vld.
here is a snippet from the hardware file
// 0x060 : Data signal of trade_cnt_V_i
// bit 31~0 - trade_cnt_V_i[31:0] (Read/Write)
// 0x064 : reserved
// 0x068 : Data signal of trade_cnt_V_o
// bit 31~0 - trade_cnt_V_o[31:0] (Read)
// 0x06c : Control signal of trade_cnt_V_o
// bit 0 - trade_cnt_V_o_ap_vld (Read/COR)
// others - reserved
We used trade_cnt_V_i address (0x060)to write a value to the variable.
Question is, how do we read the values from the variable over AXILite? What address do we use? Is there any protocol
for accessing the variable? how do we go about?
I am attaching the hardware address file along with this post for reference.
09-07-2019 05:44 AM
The same address you are using to read XilIn32(base+0x60), thats it.
Make sure that if you are not using the trade_cnt outside your IP then do not return it and don't use & operator in the declaration. It will only create a single axi light register for read/write.
09-23-2019 03:48 AM
If your question is answered or your issue is solved, please kindly mark the response which helped as solution (click on "Accept as solution" button below the reply).
If this is not solved/answered, please reply in the topic giving more information on your current status.
Thanks and Regards,