Specifying flow control, Array subscript operator, Array subscript operator –26 – Altera Nios II C2H Compiler User Manual
Page 66
 
3–26
9.1
Altera Corporation
Nios II C2H Compiler User Guide
November 2009
Memory Accesses
connects the variable
x
in function
myfunc
to the memory
module named
sdram
with an arbitration share of 16.
Example 3–17. Pragma Specifying Arbitration Share
#pragma altera_accelerate connect_variable myfunc/x to sdram \
 arbitration_share 16
Specifying Flow Control
Avalon-MM transfers with flow control force a master port to obey flow 
control signals controlled by a slave port. For example, a slave FIFO might 
assert flow control signals to prevent write transfers when the FIFO 
memory is full. The C2H Compiler provides a flow control pragma which 
enables flow control for all master ports related to a specific pointer 
variable. 
The flow control pragma is defined as follows:
 #pragma altera_accelerate \
 enable_flow_control_for_pointer \
 <
function name
>/<
variable name
>
The flow control pragma must be placed in the same file as the function 
to be accelerated, but outside the function. <function name> and 
<variable name> are the exact names of the accelerated function and the 
pointer variable.
f
valon Memory-
Mapped Interface Specification
.
Array Subscript Operator
The C2H Compiler converts array subscript operations to equivalent 
pointer dereferences, and then translates the pointer dereferences to 
hardware. An array is a pointer with abstractions of length and 
dimension. The value of an array type is defined to be a pointer to its first 
element. The C language specification defines the array subscript 
operator as follows:
The definition of the subscript operator
[]
is that
E1[E2]
is identical to
(*((E1)+(E2)))
.
By this definition, any array subscripting (indexing) operation can be 
expressed in terms of an indirection (pointer dereference) operation.