Create a new Integrated Logic Analyzer debug core
Syntax
create_debug_core [‑quiet] [‑verbose] <name> <type>
Returns
New debug_core object.
Usage
Name | Description |
---|---|
[-quiet]
|
Ignore command errors |
[-verbose]
|
Suspend message limits during command execution |
<name>
|
Name of the new debug core instance |
<type>
|
Type of the new debug core |
Description
Adds a new Integrated Logic Analyzer (ILA) debug core to an open netlist design in the current project. The ILA debug core defines ports for connecting nets to for debugging the design in the logic analyzer feature of the Vivado® Design Suite available through the open_hw
command.
The ILA core is created with a CLK port and a PROBE port by default. The CLK port defines the clock domain for the ILA core, and allows you to probe signals that are common to that domain. The CLK port only supports one clock signal, and so you must create a separate debug core for each clock domain. The PROBE port provides a probe point for nets marked for debug with the MARK_DEBUG property. The PROBE port offers multiple channels to probe multiple nets from a single ILA core.
You can add new ports to an existing ILA core with the create_debug_port
command, and connect signals to the ports using the connect_debug_port
command.
Arguments
-quiet
- (Optional) Execute the command quietly, returning no messages from the command. The command also returns TCL_OK regardless of any errors encountered during execution.
-verbose
- (Optional) Temporarily override any message limits and return all messages from this command.
set_msg_config
command.
<name>
- (Required) The name of the ILA debug core to add to the project.
<type>
- (Required) The type of debug core to insert. Only the ILA debug core is currently supported in the Vivado® tool. The ILA debug core simply adds another load onto a connected net without otherwise altering it.
Examples
open_run -name netlist_1 synth_1
create_debug_core myCore ila
set_property
command as in the following example:
set_property C_DATA_DEPTH 2048 [get_debug_cores myCore]
set_property MARK_DEBUG true [get_nets [list {control_reg[0]} {control_reg[1]} \
{control_reg[2]} {control_reg[3]} {control_reg[4]} {control_reg[5]} \
{control_reg[6]} {control_reg[7]} {control_reg[8]} {control_reg[9]} \
{control_reg[10]} {control_reg[11]} {control_reg[12]} {control_reg[13]} \
{control_reg[14]} {control_reg[15]} {control_reg[16]} {control_reg[17]} \
{control_reg[18]} {control_reg[19]} {control_reg[20]} {control_reg[21]} \
{control_reg[22]} {control_reg[23]} {control_reg[24]} {control_reg[25]} \
{control_reg[26]} {control_reg[27]} {control_reg[28]} {control_reg[29]} \
{control_reg[30]} {control_reg[31]}]]
create_debug_core u_ila_0 ila
set_property port_width 1 [get_debug_ports u_ila_0/CLK]
connect_debug_port u_ila_0/CLK [get_nets [list wbClk ]]
set_property port_width 32 [get_debug_ports u_ila_0/PROBE0]
connect_debug_port u_ila_0/PROBE0 [get_nets [list {control_reg[0]}
{control_reg[1]} {control_reg[2]} {control_reg[3]} {control_reg[4]} \
{control_reg[5]} {control_reg[6]} {control_reg[7]} {control_reg[8]} \
{control_reg[9]} {control_reg[10]} {control_reg[11]} {control_reg[12]} \
{control_reg[13]} {control_reg[14]} {control_reg[15]} {control_reg[16]} \
{control_reg[17]} {control_reg[18]} {control_reg[19]} {control_reg[20]} \
{control_reg[21]} {control_reg[22]} {control_reg[23]} {control_reg[24]} \
{control_reg[25]} {control_reg[26]} {control_reg[27]} {control_reg[28]} \
{control_reg[29]} {control_reg[30]} {control_reg[31]} ]]