您当前的位置:五五电子网电子知识单片机-工控设备嵌入式系统-技术快速实现基于AMBA 3 AXI协议的设计 正文
快速实现基于AMBA 3 AXI协议的设计

快速实现基于AMBA 3 AXI协议的设计

点击数:7437 次   录入时间:03-04 11:56:05   整理:http://www.55dianzi.com   嵌入式系统-技术

    最初的基于AMBA 3 AXI 子系统的有效验证通过用DesignWare验证IP替换许多松散耦合的IP和设计模块来完成。这使得内部连接、事物处理和功能能够被快速验证,并创建了一组鲁棒性强的高覆盖率测试向量。DesignWare验证IP的主设备和从设备用来替代组件,主设备VIP用来创建直接的和受约束的随机验证事物处理。这种方法允许快速创建子系统激励源和响应,能够迅速清除任何设计内部的连接问题。DesignWare验证IP中的监视器用来检查AMBA规范的遵守情况,并提供与基于测试平台的评分表(Scoreboard)的直接连接(见图1)。

    评分表本质上是一个测试平台代码模块,它能以自动且智能的方式跟踪事物处理、覆盖和数据流程。对于数据,它能够跟踪源数据,并将其与目的数据比较,针对被测试数据路径创建一个是否通过测试的标准。评分表直接与DesignWare验证IP监视器连接,使得所有的事物处理和覆盖数据能够被提取、捕获和验证。使用DesignWare验证IP监视器的好处之一是:当主设备和从设备的验证IP模块被删除,并用实际的系统级测试RTL替换时,相同的基于评分表的验证环境继续起作用。当监视器是被动组件时,能贯穿整个验证周期而被使用。

    要进一步加速验证工作,声明IP也应当被包含到模块级和子系统级环境中,以便使用形式和混合形式验证工具,如Synopsys Magellan工具。验证IP和声明IP都应当被包含在验证环境中。验证IP监视器提供了先进的仿真功能,如支持跨端口的覆盖和评分表通知。因为ARM提供并定义了AMBA 3 协议声明IP作为可执行的规范,它可以用来作为参考。所有的DesignWare验证IP组件已经被ARM提供的声明IP验证,作为AMBA认证过程的一部分。另外,DesignWare验证IP监视器通过跟踪和登记每一个事物处理、提供覆盖信息、给出违反协议的错误和警告信息,从而帮助确定验证任务何时完成。

    最后的验证步骤是全系统级验证(见图2)。在这个步骤中,应该包括针对松散耦合应用组件和IP的RTL验证。外部接口也必须被验证,其它的DesignWare验证IP此时也被使用,以减少系统级测试的工作。工程师能够使用DesignWare验证IP 的大量文件,它们被作为VCS验证库的一部分。DesignWare的库产品包括:PCI Express 、串行IO 、I2C、以太网、USB、USB-OTG和数以千计基于设备的内存模型。针对AMBA 3 AXI的DesignWare验证IP主设备仍然应被用于产生激励源,最初的子系统测试能够立刻被重新使用。其它的DesignWare验证IP也能够直接与评分表连接,提供一个闭环的智能验证平台。

    验证工程师也想尽可能快速地对设计、测试平台、验证IP和声明IP进行仿真。使用Synopsys VCS仿真器能够完成高性能的仿真。VCS把全部的设计环境、设计、测试平台、验证IP和声明IP优化到单个的统一内核中。这种单个的被编译的内核删除了在传统仿真环境中出现的通信和同步开销,使设计者获得了5倍以上的仿真性能。对验证工程师来说,这意味着以前运行5天的回归验证,现在不到1天就可以完成。

带有coreAssembler工具的DesignWare IP
    快速实现基于AMBA 3 AXI协议设计的DesignWare IP解决方案的第三部分是coreAssembler工具。当DesignWare库IP与coreAssembler工具一起使用时,工程师能在更短的时间内自动装配、仿真和综合基于AMBA的子系统。coreAssembler工具使得子系统设计创建以及AMBA 3 AXI和AMBA 2.0 AHB/APB组件的模块集成实现了自动化,它减少了花费在创建包含DesignWare IP的特定应用子系统的时间,允许设计者关注额外的产品测试或差异化工作。coreAssembler工具全面支持SPIRIT格式,因此,符合SPIRIT规范的第三方和用户定制的IP模块能够轻松地封装到集成的子系统中。

    内嵌的、协议特定的集成技术使得coreAssembler工具能够自动地将IP模块相互连接或融合在一起,支持任何AMBA 3 AXI或AMBA 2.0的单个或多层的子系统配置,还包括AMBALite配置。例如,如果设计中包含了AMBA 3 AXI互连架构,以及AMBA 2 AHB 组件到AMBA 3 AXI的桥接,coreAssembler工具将能把两种AMBA 3 AXI接口自动地连接在一起。这种自动纠正的能力消除了布线错误的机会,所有的DesignWare库综合IP组件都封装了这种设计技术和一组缺省参数。因此,只需点击几下鼠标、下拉菜单选项,并确认几个子系统级配置参数的选项即可创建一个初始的子系统设计。

    通过支持具有设计参数和系统级参数交叉传播功能的分层次设计方法, coreAssembler工具避免了多种IP配置丢失问题。比如地址和数据宽度参数能够在最高级锁定并能传播到较低级的IP模块中,以避免IP配置丢失。这种自动操作和内置的参数检查消除了IP配置错误的机会,缩短了子系统调试周期。

    为了达到最佳的综合结果,coreAssembler工具能够自动运行综合工具,该工具包括物理编译器和设计编译器。工程师可以从多种综合方法学中选择,比如area_timeing 、timing_area 、ACS 和低功耗优化流程,也可以创建用户定义流程并将其包含在coreAssembler的自动化流程中。

    为了减少首次仿真的时间,coreAssembler工具自动创建了一个验证基础架构,该架构包含了特别针对集成子系统的DesignWare验证IP。除了基础架构的创建,该工具也产生DesignWare验证IP对子系统进行PINg测试的激励源。目前ping测试很简单,将数据写入一个IP组件寄存器中,然后读出来确保内容被正确写入。这似乎很容易做到,它实际上是很多子系统设计的第一个里程碑,在传统的子系统开发中,要花费几个星期的时间才能完成。使用DesignWare 库IP和coreAssembler流程,这种子系统ping 测试能够在大约几个小时内实现。

    自动化流程也使得对以后项目发生改动时的处理变得非常容易。比如一个子系统设计为32位数据总线,首席设计师在最后时刻决定,为了完成目标性能需要改为64位的数据总线。在传统的设计流程中,工程师将不得不重新配置和修改很多RTL文件,花费很多的时间,并可能引入不正确的连接错误。在coreAssembler流程中,只需要对高层参数作简单的修改就能完成改变,然后将自动向下传播到更低层的模块中。新的RTL代码将和新的测试平台架构文件一起被自动重新创建。

结语
    应用基于AMBA 3 AXI协议进行高性能SoC设计的最大障碍是综合IP和验证IP的可用性,以及在最短的时间里有效创建复杂体系结构的能力。DesignWare库和coreAssembler工具可以提供这样的解决方案。DesignWare基于AMBA 3 AXI和AMBA 2.0 AHB/APB协议的综合IP包含了针对大多数下一代子系统设计必需的构造模块。 DesignWare基于AMBA 3 AXI和AMBA 2.0 AHB/APB协议的验证IP足以应对复杂高性能子系统验证挑战的需求。最后,coreAssembler工具把综合和验证组件集成到一个自动化的流程中,使子系统设计的创建、仿真和综合达到最优化。DesignWare 针对AMBA的 IP 解决方案使得基于AMBA 3 AXI协议设计的实现变得轻松。



上一页  [1] [2] 


本文关键字:暂无联系方式嵌入式系统-技术单片机-工控设备 - 嵌入式系统-技术