3.6.1.23 Partition Memory

Syntax
#pragma HLS memory partition variable(<var_name>) type(block|cyclic|complete|struct_fields|none) dim(<int>) factor(<int>)
Description
This pragma specifies a variable to be partitioned. Dimension 1 corresponds to the left-most dimension of an array and higher dimensions correspond to right-ward dimensions. The dim parameter is only applicable for block|cyclic|complete types. If dim is 0, the specified partitioning will be applied to all dimensions. The factor parameter is only applicable for block|cyclic types to specify the number of partitions. factor must be larger than 1. For more details about the pragma options, see User-Specified Memory Partitioning.
Parameters
ParameterValueOptionalDefaultDescription
variablestringNo-Variable name
typeblock, cyclic, complete, struct_fields, noneYescompletePartition type
dimintegerYes0Partition dimension
factorintegerYes-Number of partitions
Position
Before the global / local variable declaration.
Examples
#pragma HLS memory partition variable(b) type(none)
int b[100];

int fun(int *a) {
  ...
  #pragma HLS memory partition variable(c) type(block) dim(1) factor(2)
  int c[100][100];
  ...
}