To create a project, use the New Project wizard to name the project, add RTL source files
and constraints, and specify the target device.
- Invoke the Vivado® IDE.
- In the Quick Start tab, click Create Project to start the New Project wizard. Click Next.
- In the Project Name page, name the new project jtag_2_axi_tutorial and provide the project location (C:/jtag_2_axi_tutorial). Ensure that Create Project Subdirectory is selected. Click Next.
- In the Project Type page, specify the Type of Project to create as RTL Project. Ensure that Do not specify sources at this time is checked. Click Next.
- In the Default Part page, choose Boards and choose the Kintex-7 KC705
Evaluation Platform. Click Next.
- In the New Project Summary page, click Finish.
- In the leftmost panel of the Flow Navigator under Project Manager, click
Create Block Diagram. A dialog box
appears that allows you to specify a block diagram name. You can choose to
specify a custom name or take the default. Click OK.
- In the far right of the window is an empty block diagram design window
labeled Diagram. Click the + sign in the middle of the pane or the + toolbar
button to bring up a search window. In the Search field, type “JTAG to AXI” and
double-click it to add the JTAG to AXI Master to the block diagram.
- The JTAG to AXI Master core appears on the IP integrator canvas.
Double-click the core to view the Customization dialog. Review the available
settings and click OK to accept the
default core settings.
- Following the same process from the previous step, add the additional IP to the block diagram: AXI BRAM controller and Block Memory Generator. This creates a design using a simple AXI infrastructure to create AXI transactions that demonstrate the debugging capabilities of the System ILA core.
- Before continuing, you need to customize AXI BRAM Controller and Block
Memory Generator. Begin by locating the AXI BRAM Controller in the block diagram
canvas and double-clicking on it. This invokes the Customization Dialog for the
IP. Locate the Number of BRAM interfaces and set the value to 1. Click
OK.
- Next, locate the Block Memory Generator in the block diagram and
double-click as in the previous step to invoke the Customization dialog. Clear
Enable Safety Circuit check box. Click OK.
- At this point the design should look like the following figure.
- Notice the green banner indicating that Designer Assistance is available at
the top of the block diagram canvas. Click the Run
Connection Automation button on this banner. When the Connection
Automation window appears, click the radio button for All Automation, then click
OK.
- Notice, that the Clocking Wizard and Processor System Reset as well as an AXI SmartConnect are auto-inserted into the design. Also, take note that the Clocking Wizard clock and reset inputs are not connected and the Run Connection Automation banner persists. These inputs will be connected to physical input ports on the FPGA, wired to buttons on the KC705 board though customization of the Clocking Wizard.
- Invoke the Customization Dialog for the Clocking Wizard by double-clicking
the IP in the block diagram canvas. When the dialog appears, set
CLKIN_1
tosys_diff_clk
andEXT_RESET¬_IN
to reset. Click OK.Note: It is not necessary to add constraints for these ports because the project has been generated using an evaluation board as the target and the IP allows the constraint information to be selected with thesys_diff_clk
.
- Just as before, locate the green banner indicating that Designer Assistance is Available and click Run Connection Automation. When the Run Connection Automation dialog appears select the button for All Automation. Click OK.
- Now,
sys_diff_clk
and reset are connected to external ports. Examine the connectivity of the design and notice that it might be necessary to monitor AXI transactions between the JTAG to AXI master and the AXI BRAM Controller slave. This is possible if a System ILA is added to probe the AXI bus between the AXI BRAM Controller and the JTAG to AXI master.
- To add a System ILA to the design, click the Add IP (+) button as in
previous steps. Search for System ILA, and double click to add it to the block
diagram. When it appears in the block diagram canvas, double-click on it to
invoke the Customization Dialog. Ensure that both Capture Control and Advanced
Trigger are selected. Also, set the Number of Comparators to the value 3. Click
OK.