sub_function接口的优化-用户不可操作 一、核心代码#include array_FIFO.h //#include hls_stream.h void array_process(dout_t d_o[4], din_t d_i[4]){ #pragma HLS INLINE off For_Loop: for (int i0;i4;i) { d_o[i] d_i[i]; } } void array_FIFO (dout_t d_o[4], din_t d_i[4], didx_t idx[4]) { #pragma HLS INTERFACE s_axilite portd_i int i; din_t local_buff[4]; #pragma HLS ARRAY_PARTITION variablelocal_buff complete dim0 // Breaks FIFO interface d_o[3] d_i[2]; For_Loop: for (i0;i4;i) { #pragma HLS PIPELINE II1 local_buff[i] d_i[i]; } array_process(d_o, local_buff); }二、分析上述代码主要是针对子函数array_process优化说明。注意array_process这个子函数接口的参数用户是没有办法优化的是HLS综合工具依据其母函数也就是上一级别函数中的优化情况结合上下文的逻辑来决定使用什么资源来进行优化的。