cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
freeze
Explorer
Explorer
386 Views
Registered: ‎07-03-2020

C/C++ and/or RTL Kernel Hierarchy Support

Jump to solution

Is there a mechanism to support C/C++ and/or RTL kernel hierarchy (aka encapsulation)?

For example,

                                      ______________________________________

                                     |          RTL (or C /C++) Top-Kernel        |

                                     |     ________________________________     |

                                     |    |    RTL (or C/C++) Sub-Kernel    |    |

                                     |    |                                                  |    |

                                     |    |                                                  |    |

                                     |    |________________________________|    |

                                     |______________________________________|

    

0 Kudos
1 Solution

Accepted Solutions
hongh
Moderator
Moderator
283 Views
Registered: ‎11-04-2010

You can keep your kernel with hierarchy.

But the interfaces of the kernel are all in top level of kernel and the kernel will be compiled as a CU depending on FPGA's architecture. (No PE in FPGA)

-------------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------

View solution in original post

0 Kudos
2 Replies
HRZ
Adventurer
Adventurer
314 Views
Registered: ‎03-01-2020

I am not sure about RTL kernels, but you can have sub-functions in C/C++ kernels and unless you use "#pragma HLS inline" or the compiler automatically inlines the sub-function, the sub-function will appear as a separate level of hierarchy in the resulting RTL code generated by the HLS compiler (Reference: https://www.xilinx.com/html_docs/xilinx2019_1/sdaccel_doc/hls-pragmas-okr1504034364623.html#jka1504034359550). However, note that you cannot call the sub-function from the host side; you can only call the top-level function from the host.

0 Kudos
hongh
Moderator
Moderator
284 Views
Registered: ‎11-04-2010

You can keep your kernel with hierarchy.

But the interfaces of the kernel are all in top level of kernel and the kernel will be compiled as a CU depending on FPGA's architecture. (No PE in FPGA)

-------------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------

View solution in original post

0 Kudos