07-20-2016 05:46 AM
The doubt is regarding C callable IPs using SDSoC. I was referring ug1146 for creating c callable ips and use it in the SDSoc environment.
I had a look at the array copy example given under Samples in the installation path.
My doubts are
Actually I had an IP which is having one axis master and one axis slave interface. I packed it using vivado and created the library.
I was able to build the project but during board test the function call is happening but got stuck there.
So for debugging I had created a simple IP which only pass through the data in the axis Slave interface to an axis master interface. I had createrd the library but errors are getting while building.
Am attaching my Verilog files, function map and the main.cpp file.
Could you please have a look on this and comment.
Thanks & Regards,
Tintu P M
07-20-2016 10:24 AM
I'm not sure I follow exactly what you're trying to do, but I'll try to answer...
Is control register is necessary. How we can write to the control register from the application (main.cpp)
What control register?
What is the M in array copy example stands for.
You mean 'N' in zc702_axis_io.h? That's the length of the buffer passed via software (i.e. the number of samples passed across the interface each time you call pf_read() or pf_write()).
Is there any mechanism for writing to a particular register inside our c callable IP from the
Are you talking about also having an AXI Lite interface for registers along with your AXI Stream interface? Sure, you can do that and you just read/write to it via it's addresses just like any other AXI peripheral.
07-26-2016 02:39 AM
Thanks for your reply.
ug 1146 tells that "The IP control register must exist at address offset 0x0, and must conform to the following specification, which coincides with the native axilite control interface for an IP generated by Vivado HLS."
also i was talking about the M in "array_copy_axis.cpp"
Here we will be converting our Ips into libraries and we can call it from the application as a function call.
In function call we will be passing arguments. So how can we wrrite/Read from a particular register residing in our IP.