IPT-C2H-NIOS Altera, IPT-C2H-NIOS Datasheet - Page 64

no-image

IPT-C2H-NIOS

Manufacturer Part Number
IPT-C2H-NIOS
Description
C2H COMPILER FOR NIOS II
Manufacturer
Altera
Series
Nios®IIr
Type
Nios IIr
Datasheet

Specifications of IPT-C2H-NIOS

Function
C to Hardware Compiler
License
Initial License
Software Application
IP CORE, NIOS Processor And Functions
Core Architecture
FPGA
Core Sub-architecture
Cyclone
Rohs Compliant
NA
Lead Free Status / RoHS Status
Not applicable / Not applicable
Memory Accesses
3–24
Nios II C2H Compiler User Guide
Specifying Master-Slave Connections
By default, the C2H Compiler connects all master ports of an accelerator
to all the memory slave ports that the CPU data master port connects to.
These default connections guarantee that the accelerator can access any
memory addresses that the processor can access. However, master-slave
connections have an associated hardware resource cost. The extra
multiplexing and arbitration logic associated with a master-slave
connection often reduces the maximum achievable frequency (f
the system. If an accelerated function, by design, does not ever access
certain memories, you can eliminate the connection to the slave memory
to save resources and improve f
The C2H Compiler provides a connection pragma that associates a
pointer variable with an Avalon-MM slave port, which is typically a
memory. A pointer variable can translate to one or more master ports,
depending on how many times it is dereferenced in the C code. The
connection pragma directs the C2H Compiler to connect all master ports
generated for a particular variable to a specific slave port in the SOPC
Builder system.
The connection pragma is defined as follows:
The connection pragma must be placed outside the function to accelerate
in the same file. <function name> and <variable name> are the exact names
of the accelerated function and the pointer variable. <module> is the exact
name of the component instance, as specified in SOPC Builder.
<slave name> is optional. If <slave name> is provided, it is the exact name
of a specific slave port on <module>. If the module only contains one slave,
you can omit <slave name>. However, if you omit <slave name> when the
module contains multiple slaves, the compiler issues an error.
To connect a variable's master ports to multiple slave ports, you can use
multiple pragmas. If you use the connection pragma for a specific
variable, the C2H Compiler connects only the slave ports specified in
pragma statements.
In addition to reducing arbitration logic, the connection pragma helps the
C2H Compiler determine if two pointers overlap. If the memory
connections for two separate variables are mutually exclusive, the
compiler concludes that the pointers are never dependent on each other.
For more information, refer to section
#pragma altera_accelerate connect_variable \
<function name>/<variable name> to <module>[/<slave name>]
9.1
MAX
.
“Pointer Aliasing” on page
Altera Corporation
November 2009
MAX
3–32.
) of

Related parts for IPT-C2H-NIOS