虹科AXI性能监视器辅助zynq开发调试

APM,AXI Performance Monitor,AXI性能监视器。AXI(Advanced eXtensible Interface)是一种总线协议,该协议是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)3.0协议中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。它的地址/控制和数据相位是分离的,支持不对齐的数据传输,同时在突发传输中,只须要首地址,同时分离的读写数据通道、并支持Outstanding传输访问和乱序访问,并更加容易进行时序收敛。AXI 是AMBA 中一个新的高性能协议。AXI 技术丰富了现有的AMBA 标准内容,知足超高性能和复杂的片上系统(SoC)设计的需求。编程

1. 背景

赛灵思zynq系列,SoC's和UltraScale+ MPSoC’s等,其独特的创新之处在于将传统的FPGA可编程逻辑(PL,Programmable Logic)与ARM的处理系统(PS,Processing Logic)结合起来,使得这类集成芯片(理论上已经超出FPGA的范畴)能够兼具高性能运算和低延迟处理的特色。性能

而在zynq系列的芯片中,PS与PL部分是经过AXI总结及接口链接以及数据传输的,同时在PL内部也是经过AXI互联进行通讯。AXI总线是一种多通道传输总线,将地址、读数据、写数据、握手信号在不一样的通道中发送,不一样的访问之间顺序能够打乱,用BUSID来表示各个访问的归属。主设备在没有获得返回数据的状况下可发出多个读写操做。读回的数据顺序能够被打乱,同时还支持非对齐数据访问。优化

AXI 可以使SoC 以更小的面积、更低的功耗,得到更加优异的性能。AXI 得到如此优异性能的一个主要缘由,就是它的单向通道体系结构。单向通道体系结构使得片上的信息流只以单方向传输,减小了延时。设计

2. 需求

AXI总线做为zynq系列芯片中数据传输的主要总线,其总线传输性能密切影响着用户设计的性能,因为SoC开发设计中某些疏漏,可能致使在某一时刻总线burst传输超出所设定的预期值,轻则形成预期以外的延迟,重则致使设计功能出现较大误差或者错误。因此AXI性能监控就显得尤其重要,经过监控总线上不一样端口的突发数据传输量以及总线占用率,发现设计中存在的缺陷,从而作到合理分配总线资源,以便进一步提升性能。调试

AXI 性能监视器(APM,AXI Performance Monitor),就是专门针对赛灵思的zynq开发设计进行的调试,监控运行中AXI总线上数据传输性能,从而在调试过程当中有针对性的提升AXI总线利用率。orm

赛灵思Vivado中的Debug功能拥有自嵌入的验证IP(VIP,Verification IP),经过对IP Catalog的设定便可实现AMP功能,其可以以波形捕获的形式将人为添加过Debug信号的总线端口上数据以波形图的形式显示出来(以下图),而后经过对时间轴的缩放进行人为的性能分析。blog

Vivado APM

 

可是这种人为的调试监控AXI不只费时费力,经过波形捕获图分析起来也很是不直观,并且若是用户设计过于复杂(以下图),想要在庞大的电路原理图中找寻到涉及AXI的总线无疑是一件庞大的工程。接口

3. 虹科AXI性能分析仪:VARON

虹科VARON是一款针对Soc开发的硬件仿真调试,辅助用户进行AXI总线使用率优化的软件,运行于Cent OS Linux系统,适用于集成度偏高的Soc开发。VARON经过自主研发的验证IP(VIP)链接到开发系统,监视AXI总线上的多种属性和性能,并经过三大类直观的图表显示出来,从而使开发者可以更直观的观测系统的运行状况,从而有针对性的进行优化调整。事务

相较于市面上广泛的用于APM的验证IP,VARON是一个完整的产品,带有可配置的片上验证IP和专有图形用户界面;支持模拟仿真、FPGA和ASIC开发调试;快速分析事务级数据的性能;实现SoC开发调试过程劳动成本低,大幅缩短开发调试周期。资源

虹科VARON特有的优点:

1. 涵盖LSI设计验证的整个过程;

2. 按端口组独立配置的验证IP,易于分析系统中跨总线级联的事务;

3. 硬件IP将AXI数据缓冲到缓冲区,监视器和缓冲区都是可综合的;

4. 在事务级别监视AXI,快速显示全部性能图表,不依赖于设计尺寸;

4. 实际使用效果图

虹科VARON经过丰富的性能图表组合进行很是简单的分析:

1. 每一个端口组20个图表;

2. 经过6种图表类型了解2个分析目标的5个关键设计标准;

3. 自由缩放以及自适应缩放功能;

4. 水平同步显示3个时序图,以在一个时间窗口内验证相关数据;

5. 高亮超出预期阈值的数据

突出显示超出预期的值
总线传输总量及利用率
数据传输时序图(总览)
数据传输时序图(具体)