Author Topic: problem with AXI bus  (Read 2067 times)

0 Members and 1 Guest are viewing this topic.

Offline e0ne199Topic starter

  • Regular Contributor
  • *
  • Posts: 136
  • Country: id
problem with AXI bus
« on: December 31, 2024, 05:52:15 am »
Hello everyone, i have a problem with sending data over AXI bus. The data I want to send is an array of int (392 row and 30 column), but when I try to send it with AXI stream, the AXI stream throws an error...do you know what to do in this situation? any response is really appreciated, thx before.
 

Offline Someone

  • Super Contributor
  • ***
  • Posts: 5184
  • Country: au
    • send complaints here
Re: problem with AXI bus
« Reply #1 on: December 31, 2024, 06:10:58 am »
but when I try to send it with AXI stream, the AXI stream throws an error...
Which error?
You will need to share many more details to get help/advice.
An AXI Stream endpoint/sink provides no status/error/reporting, it is either accepting data or it is not.
 

Online Siwastaja

  • Super Contributor
  • ***
  • Posts: 9437
  • Country: fi
Re: problem with AXI bus
« Reply #2 on: December 31, 2024, 12:27:32 pm »
If
Code: [Select]
if (status != XST_SUCCESS)is failing, then the obvious thing to do is to print the value of status and compare it to the documentation of XAxiDma_SimpleTransfer(), which can be found with 5 seconds of Googling:
https://xilinx.github.io/embeddedsw.github.io/axidma/doc/html/api/group___a_x_i_d_m_a.html#ga32ca6099d7926297a4c17cdb4a19511b
Code: [Select]
Returns

        XST_SUCCESS for success of submission
        XST_FAILURE for submission failure, maybe caused by: Another simple transfer is still going
        XST_INVALID_PARAM if:Length out of valid range [1:8M] Or, address not aligned when DRE is not built in

 

Offline e0ne199Topic starter

  • Regular Contributor
  • *
  • Posts: 136
  • Country: id
Re: problem with AXI bus
« Reply #3 on: December 31, 2024, 01:45:27 pm »
If
Code: [Select]
if (status != XST_SUCCESS)is failing, then the obvious thing to do is to print the value of status and compare it to the documentation of XAxiDma_SimpleTransfer(), which can be found with 5 seconds of Googling:
https://xilinx.github.io/embeddedsw.github.io/axidma/doc/html/api/group___a_x_i_d_m_a.html#ga32ca6099d7926297a4c17cdb4a19511b
Code: [Select]
Returns

        XST_SUCCESS for success of submission
        XST_FAILURE for submission failure, maybe caused by: Another simple transfer is still going
        XST_INVALID_PARAM if:Length out of valid range [1:8M] Or, address not aligned when DRE is not built in


yes I am aware of the error..my problem is i don't know why i am unable to send arrays larger than 30x10 to the PL side...i am still very new to verilog especially AXI communications, and i am not sure if the AXI faces bottleneck or something like that when i try to send large data using AXI stream..do you have any suggestions about that, for example where to look for this kind of problem? or do i have to do some configuration (or add some IP block) on the PL side?
« Last Edit: December 31, 2024, 01:47:20 pm by e0ne199 »
 

Offline Someone

  • Super Contributor
  • ***
  • Posts: 5184
  • Country: au
    • send complaints here
Re: problem with AXI bus
« Reply #4 on: December 31, 2024, 01:55:16 pm »
Where is the AXI stream in this? The code example supplied is using some high level software to interact with a DMA engine.

yes I am aware of the error..my problem is i don't know why i am unable to send arrays larger than 30x10 to the PL side...i am still very new to verilog especially AXI communications, and i am not sure if the AXI faces bottleneck or something like that when i try to send large data using AXI stream..do you have any suggestions about that, for example where to look for this kind of problem? or do i have to do some configuration (or add some IP block) on the PL side?
So you want to send data to the PL, but dont have anything on the PL side? This sounds like you're just throwing stuff at a wall with no plan of how it should function.
 

Offline e0ne199Topic starter

  • Regular Contributor
  • *
  • Posts: 136
  • Country: id
Re: problem with AXI bus
« Reply #5 on: December 31, 2024, 02:18:07 pm »


Where is the AXI stream in this? The code example supplied is using some high level software to interact with a DMA engine.

yes I am aware of the error..my problem is i don't know why i am unable to send arrays larger than 30x10 to the PL side...i am still very new to verilog especially AXI communications, and i am not sure if the AXI faces bottleneck or something like that when i try to send large data using AXI stream..do you have any suggestions about that, for example where to look for this kind of problem? or do i have to do some configuration (or add some IP block) on the PL side?
So you want to send data to the PL, but dont have anything on the PL side? This sounds like you're just throwing stuff at a wall with no plan of how it should function.

I am sorry but do you want to have a look at the PL side too?
 

Offline glenenglish

  • Frequent Contributor
  • **
  • Posts: 473
  • Country: au
  • RF engineer. AI6UM / VK1XX . Aviation pilot. MTBr
Re: problem with AXI bus
« Reply #6 on: January 01, 2025, 01:10:37 am »
please post the waveform  from the simulator output. pre-synthesis  is a good start.
or , post the chipscope / ILA output
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf