This brief demo show how to capture the performance of a Zynq device using the AXI Performance monitor IP and the AXI Traffic Generator.
This demo uses the driver API for the APM in an SDK application.
This demo shows how to manually set up the performance monitor.
Step 1: Create the Hardware
This demo targets a ZC702 board.
However, any Zynq device can be used.
Launch Vivado 2015.1, and create a Block Design (BD).
Add the following IP
Highlight 1 AXI Traffic Generator, 1 AXI interconnect, and 1 Constant IP and select Create Hierarchy.
Name this "TrafficGenX"
Where X will be 0 -> 5
Repeat this for all the AXI Traffic Generators.
Click into TrafficGen0, and configure the AXI Traffic Generator as follows.
Click on Interconnect, and configure as follows:
The Concat IP, should be set to 1, and 1 for width and val.
Next, highlight the following pins and make them external:
Finally, make the connection below:
Close the TrafficGen0 hierarchy, and return to main BD canvas and remove the external pins:
Repeat this for all ATG hierarchies (except TrafficGen5, which has a AXI Master Width of 32 instead of 64)
Double Click on the AXI Performance Monitor IP to configure as shown below:
Run Block Automation (only applicable for demo boards).
The Zynq GUI will now appear.Select OK.
Double Click on the Zynq Processing System, and configure the interfaces as shown below:
Open the Address Editor, right click on the processing_system7_0, and select Auto Assign Address.
Generate Output Products.
Generate HDL wrapper.
Export to SDK.
Step 2: Create Application
In SDK, create a new Empty Application.
To do this, select New -> Application Project, and follow the steps below:
Once this is done, right click on the src folder in the newly created application project, and follow the steps below:
Open the apm_test.c and copy in the source code attached to this AR.
Save and build.
Once this is done, the application is ready to test.
Note: This source code is to be used as reference only.
For more information on the API used here, please see the APM driver:
|Name||File Size||File Type|