UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Newbie tintu.pm
Newbie
5,057 Views
Registered: ‎07-22-2015

C Callable IPs : SDSoC

Hi,

 

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

 

  • Is control register is necessary.
  • How we can write to the control register from the application (main.cpp)
  • What is the M in array copy example stands for.
  • Is there any mechanism for writing to a particular register inside our c callable IP from the application.

 

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

 

0 Kudos
2 Replies
Xilinx Employee
Xilinx Employee
5,034 Views
Registered: ‎08-02-2011

Re: C Callable IPs : SDSoC

Hello,

 

 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
application.

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.

www.xilinx.com
0 Kudos
Newbie tintu.pm
Newbie
4,818 Views
Registered: ‎07-22-2015

Re: C Callable IPs : SDSoC

Hi,

 

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.

 

Regards,

Tintu

 

 

 

0 Kudos