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!

AR# 59829

Vivado HLS - unsupported memory access on variable '****' which is (or contains) an array with unknown size at compile time


I have the following code which fails with unsupported memory access on the variable 'src', which is (or contains) an array with unknown size at compile time:
void sInvTrans16_HEVCDec(tEmzInt16 *src, tEmzUint8 *predPtr, tEmzInt32 frameWidth)
lEEO[0] = sInvTran_4x4_Table[4]*src[ 64 ] + sInvTran_4x4_Table[12]*src[192];
lEEE[0] = sInvTran_4x4_Table[0]*src[ 0 ] + sInvTran_4x4_Table[8]*src[128];

How can I resolve this?


In this case 'src' is used as a pointer and has been accessed with non-sequential mode. 

This interface can be synthesized only when it has been declared as ap_bus.

Use the directive INTERFACE and set it as ap_bus.

For more information about using INTINTERFACE , please refer to (UG902)


AR# 59829
Date Created 03/18/2014
Last Updated 03/25/2015
Status Active
Type Error Message
  • Vivado Design Suite - 2013.4
  • Vivado Design Suite - 2014.1
  • Vivado Design Suite - 2014.2
  • More
  • Vivado Design Suite - 2014.3
  • Vivado Design Suite - 2014.4
  • Less