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: 
Explorer
Explorer
596 Views
Registered: ‎05-23-2017

ERROR: [XOCC 203-190] Cannot burst array 'feature_or_0.x.V' (....cpp:631): variable is not an array with scalar elements.

Jump to solution

I try to burst the read on the port "feature_or_0" , which is an 512 bit width data_packed structure. See the below code.

The software emulation goes well.

But when run the hardware emulaiton compilation, the compiler complained:

ERROR: [XOCC 203-190] Cannot burst array 'feature_or_0.x.V' (/...cpp:631): variable is not an array with scalar elements.
ERROR: [XOCC 200-70] Synthesizability check failed.
ERROR: [XOCC 60-300] Failed to build kernel(ip) pcaf_fpga, see log for details: ../vivado_hls.log
ERROR: [XOCC 60-599] Kernel compilation failed to complete
ERROR: [XOCC 60-592] Failed to finish compilation
../../../utility/rules.mk:126: recipe for target 'xclbin/pcaf_fpga.hw_emu.xilinx_vcu1525_dynamic_5_1.xo' failed
make: *** [xclbin/pcaf_fpga.hw_emu.xilinx_vcu1525_dynamic_5_1.xo] Error 1
typedef struct point_512_64//for or read 64 value for each read
{
        ap_fixed<8,1> x[512/8]; //8 bit for each value
} D_point_512_64;

extern "C"{
void pcaf_fpga(
              const D_point_512_64  *feature_or_0,//in original feature data
)
{
    #pragma HLS INTERFACE m_axi port=feature_or_0  offset=slave bundle=gmem1 max_read_burst_length=16
    #pragma HLS INTERFACE s_axilite port=feature_or_0  bundle=control
#pragma HLS data_pack variable=feature_or_0 ..... }
void read_feature_or(const D_point_512_64 *feature_or,Dtype_uint data_size, Dtype_uint index, Dtype_s *feature_or_buffer){ D_point_512_64 feature_or_temp[16]; #pragma HLS ARRAY_PARTITION variable = feature_or_temp complete dim=0 memcpy(feature_or_temp, &feature_or[index*D_OR/64], 16*sizeof(D_point_512_64));

Please help.

Tags (2)
0 Kudos
1 Solution

Accepted Solutions
Highlighted
Teacher xilinxacct
Teacher
451 Views
Registered: ‎10-23-2018

Re: ERROR: [XOCC 203-190] Cannot burst array 'feature_or_0.x.V' (....cpp:631): variable is not an array with scalar elements.

Jump to solution

@mathmaxsean

It sound like to me, that the array is made up of non-scalar (simple type; int float, ...) values. Don't use an array with the complex types in this case.

Please mark as solution accepted.

0 Kudos
1 Reply
Highlighted
Teacher xilinxacct
Teacher
452 Views
Registered: ‎10-23-2018

Re: ERROR: [XOCC 203-190] Cannot burst array 'feature_or_0.x.V' (....cpp:631): variable is not an array with scalar elements.

Jump to solution

@mathmaxsean

It sound like to me, that the array is made up of non-scalar (simple type; int float, ...) values. Don't use an array with the complex types in this case.

Please mark as solution accepted.

0 Kudos