changes for Vivado HLS
support for multi-dimentional array access by flattening access pattern