addRegisterInterface
R2026bClass: hdlcoder.ReferenceDesign
Namespace: hdlcoder
Add and define register interface using AXI4 and AXI4-Lite protocol
Syntax
addRegisterInterface(InterfaceConnection=ref_design_port,BaseAddress=base_addr)
addRegisterInterface(InterfaceConnection=ref_design_port,BaseAddress=base_addr,MasterAddressSpace=master_addr_space)
addRegisterInterface(InterfaceConnection=ref_design_port,BaseAddress=base_addr,Name=Value)
addRegisterInterface(InterfaceConnection=ref_design_port,BaseAddress=base_addr,MasterAddressSpace=master_addr_space,Name=Value)
Description
addRegisterInterface(InterfaceConnection=
adds and defines an AXI4 interface for an Altera® reference design or an AXI4 or AXI4-Lite interface for a Xilinx® ISE reference design.ref_design_port,BaseAddress=base_addr)
addRegisterInterface(InterfaceConnection=
adds and defines an AXI4 or AXI4-Lite interface for Xilinx
Vivado® reference designs.ref_design_port,BaseAddress=base_addr,MasterAddressSpace=master_addr_space)
addRegisterInterface(InterfaceConnection=
adds and defines an AXI4 interface for an Altera reference design or an AXI4 or AXI4-Lite interface for a Xilinx ISE reference design, with additional options specified by one or more
name-value arguments.ref_design_port,BaseAddress=base_addr,Name=Value)
addRegisterInterface(InterfaceConnection=
adds and defines an AXI4 or AXI4-Lite interface for Xilinx
Vivado reference designs, with additional options specified by one or more
name-value arguments.ref_design_port,BaseAddress=base_addr,MasterAddressSpace=master_addr_space,Name=Value)
Input Arguments
Name-Value Pair Arguments
Specify optional pairs of arguments as
Name1=Value1,...,NameN=ValueN, where Name is
the argument name and Value is the corresponding value.
Name-value arguments must appear after other arguments, but the order of the
pairs does not matter.
Type of interface connection, specified as a character
vector or a cell array of character
vectors.
Example: InterfaceType='AXI4-Lite' specifies an
'AXI4–Lite' interface type connection.
Name of the interface, specified as a character vector. When you provide
the InterfaceID, InterfaceType
must be set to either 'AXI4' or
'AXI4–Lite'.
Example: InterfaceID='MyAXI4',InterfaceType='AXI4'
specifies interface name as 'MyAXI4' and interface type
as 'AXI4'.
IDWidth is the width of
all ID signals, such as
AWID, WID,
ARID, and RID, specified as a positive
integer. The ID width only applies when you use the AXI4 interface and does
not apply for the AXI4-Lite interface.
The ID width value is tool-specific, and may need to increase when the AXI4 register interface on the DUT IP core is connected to multiple master interfaces. If you specify a value and enable the Insert AXI Manager parameter, HDL Coder™ increments the ID with value by one. if you do not specify the ID width, HDL Coder attempts to calculate the correct ID with based on the number of masters in the design.
Example: IDWidth=13
Indicate if the processor is one of the
masters to the IP core AXI4 register interface.
To enable device tree generation for the IP core register interface, keep
this value set to true.
Example: HasProcessorConnection=false
Reference to the processor AXI4 master bus
node in the device tree. Set this value to match the name of the
corresponding bus node in the registered device tree. References to device
tree nodes must start with "&". To reference a node
by its label, specify "&" before the label, such as
"&myLabel". To reference a node by its path,
specify the path inside "&{" and
"}", such as
"&{/myNode/childNode}".
Example: DeviceTreeBusNode='&fpga_axi'
Design fragment files to source into the generated Vivado project, specified as a cell array. Use this argument to add hardware components that are required only when the AXI4 or AXI4-Lite interface is mapped, such as AXI Interconnect, peripheral IP cores, or other register-accessible hardware.
Specify file names relative to the reference design plugin folder, as
absolute paths, or relative to folders added by using addIncludeFolder. If the file is located in an added folder,
you can specify only the file name.
This argument supports only Xilinx
Vivado reference designs. The design fragment files must use the
.tcl extension. The generated project sources the
specified files after the base custom block design TCL file and includes
them only when the AXI4 or AXI4-Lite interface is mapped.
Example: DesignFragment={"shared\led_peripheral.tcl"}
specifies a file name relative to the reference design plugin
folder.
Example: DesignFragment={"C:\work\tcl\led_peripheral.tcl"}
specifies an absolute file path.
Example: DesignFragment={"led_peripheral.tcl"} specifies
a file in a folder added by using
addIncludeFolder.
Device tree fragment files to append to the generated Linux® device tree, specified as a cell array. Use this argument to describe register-accessible hardware associated with the AXI4 or AXI4-Lite interface, such as peripheral nodes, address regions, or driver-specific properties.
Specify file names relative to the reference design plugin folder, as
absolute paths, or relative to folders added by using addIncludeFolder. If the file is located in an added folder,
you can specify only the file name.
This argument supports only Xilinx
Vivado reference designs. The device tree fragment files must use the
.dts or .dtsi extension. The
generated device tree appends the specified files and includes them only
when the AXI4 or AXI4-Lite interface is mapped.
Example: DeviceTreeFragment={"shared\led_peripheral.dtsi"}
specifies a file name relative to the reference design plugin
folder.
Example: DeviceTreeFragment={"C:\work\devicetrees\led_peripheral.dtsi"}
specifies an absolute file path.
Example: DeviceTreeFragment={"led_peripheral.dtsi"}
specifies a file in a folder added by using
addIncludeFolder.
Constraint files to add to the generated project, specified as a cell array. Use this argument to specify constraints associated with hardware introduced by the AXI4 or AXI4-Lite interface, such as pin assignments, I/O standards, or timing exceptions.
Specify file names relative to the reference design plugin folder, as
absolute paths, or relative to folders added by using addIncludeFolder. If the file is located in an added folder,
you can specify only the file name.
This argument supports only Xilinx
Vivado reference designs. The constraint files must use the
.xdc extension. The generated project adds the
specified files to the project constraint set and includes them only when
the AXI4 or AXI4-Lite interface is mapped.
Example: ConstraintFragment={"shared\led_peripheral.xdc"}
specifies a file name relative to the reference design plugin
folder.
Example: ConstraintFragment={"C:\work\constraints\led_peripheral.xdc"}
specifies an absolute file path.
Example: ConstraintFragment={"led_peripheral.xdc"}
specifies a file in a folder added by using
addIncludeFolder.
Tips
Before running this method, you must run the
addClockInterfacemethod.The
addRegisterInterfacemethod is optional. You can define your own custom reference design without an AXI4 register interface.To connect the HDL IP core for your DUT to multiple AXI Master interfaces in the reference design, use the
IDWidthproperty of this method. To learn more, see Define Multiple AXI Master Interfaces in Reference Designs to Access DUT AXI4 Subordinate Interface.
Version History
Introduced in R2015aSee Also
addClockInterface | hdlcoder.ReferenceDesign
Topics
- Define Custom Board and Reference Design for AMD Workflow
- Define Custom Board and Reference Design for Intel Workflow
- Register a Custom Board
- Register a Custom Reference Design
- Define Multiple AXI Master Interfaces in Reference Designs to Access DUT AXI4 Subordinate Interface
- Board and Reference Design Registration System
- Use Clock Domain Crossing to Run DUT Algorithm and AXI4-Lite Interface at Different Frequencies