一种AXICrossbar设计电路验证方法和系统与流程

文档序号:23718075发布日期:2021-01-24 06:26阅读:562来源:国知局
一种AXICrossbar设计电路验证方法和系统与流程
一种axi crossbar设计电路验证方法和系统
技术领域
[0001]
本发明涉及交叉互联总线设计验证领域,特别是涉及一种全功能模式的axi crossbar设计电路验证方法和系统。


背景技术:

[0002]
axi(advanced extensible interface,高级可扩展接口)是arm公司提出的amba(advance microcontroller bus architecture)协议中最重要的部分,用于描述主设备和从设备之间的数据传输方式。axi总线是一种面向高性能、高带宽、低延迟的片内总线,广泛用作基于arm高性能处理器的soc(system on chip,片上系统)芯片的总线系统,其支持主设备和从设备之间的点对点连接,为了适于多个主设备访问多个从设备的交叉互联的需求,设计出了全功能模式的axi crossbar并得以广泛应用。
[0003]
目前,随着芯片规模的不断扩大,总线互联结构越来越复杂,在不同soc芯片架构中可能需要用到更多不同的m值跟n值的axi crossbar,甚至在一个soc芯片架构中使用的axi crossbar的种类也越来越多,比如之前可能只涉及1个主设备访问2个从设备的1to2类型,而现在的一个soc芯片架构中会同时用到1to2、2to3,、3to1等多个不同m to n(m为主设备个数,n为从设备个数)类型的axi crossbar,所涉及的axi crossbar设计功能必须都正确才能保证soc芯片的正常工作,因此,必须对涉及到的每种axi crossbar都进行验证并保证其功能的正确性。然而,现有的axi crossbar电路设计验证方法仅针对指定个数的主从设备,一套验证环境只能验证一种类型,即对用到的每一种类型都需要单独验证,且每次验证都要修改验证环境使其适用于需要验证的场景,若出现多种就需要同时搭建多个验证环境或者不停地拆搭验证环境进行验证,而不是提供一种通用意义上的验证方法可以支持验证任意m个主设备访问n个从设备的情形。显然,将现有的验证方法应用于同时使用多个不同m值或者n值的axi crossbar的验证场景,务必需要浪费大量的时间和耗费大量人力,为了满足当前的使用需求,亟需提供一种具有通用性,且能够快速、充分、灵活、有效的验证不同m to n类型的全功能模式axi crossbar的方法。


技术实现要素:

[0004]
本发明的目的是实现无需改变或重搭验证环境的情况,即可快速、充分、灵活、有效的验证任意不同m(m大于等于1)个主设备访问n(n大于等于1)个从设备的全功能模式的axi crossbar。
[0005]
为了实现上述目的,有必要针对上述技术问题,提供了一种axi crossbar设计电路验证方法和系统。
[0006]
第一方面,本发明实施例提供了一种axi crossbar设计电路验证方法,所述方法包括以下步骤:
[0007]
预先配置设计参数和验证内容;所述设计参数包括主设备数目和从设备数目;
[0008]
根据所述设计参数和所述验证内容分别生成所述主设备数目的第一数据包和所
述从设备数目的第二数据包;
[0009]
根据所述第一数据包和所述第二数据包,分别驱动第一axi crossbar端口和第二axi crossbar端口收发突发信息;
[0010]
分别监测所述第一axi crossbar端口和第二axi crossbar端口所接收的突发信息,为所述突发信息加入标识号,并将加入标识号后的突发信息分别存入第一信息队列和第二信息队列;
[0011]
比对所述第一信息队列与第二信息队列中具有相同标识号的突发信息。
[0012]
进一步地,所述根据所述设计参数和所述验证内容分别生成所述主设备数目的第一数据包和所述从设备数目的第二数据包的步骤包括:
[0013]
根据所述设计参数和所述验证内容生成所述主设备数目的所述第一数据包;所述第一数据包包括与第一axi crossbar端口所对应的主设备的接口信息;
[0014]
根据所述设计参数和所述验证内容生成所述从设备数目的所述第二数据包;所述第二数据包包括与第二axi crossbar端口所对应的从设备的接口信息。
[0015]
进一步地,所述获取所述第一数据包和所述第二数据包,分别驱动第一axi crossbar端口和第二axi crossbar端口收发突发信息的步骤包括:
[0016]
根据所述第一数据包,驱动所述第一axi crossbar端口发送,并从所述第二axi crossbar端口接收第二突发信息,所述第二突发信息响应于所述第一数据包产生;
[0017]
根据所述第二数据包,驱动所述第二axi crossbar端口发送,并从所述第一axi crossbar端口接收第一突发信息,所述第一突发信息响应于所述第二数据包产生。
[0018]
进一步地,所述分别监测所述第一axi crossbar端口和第二axi crossbar端口所接收的突发信息,为所述突发信息加入标识号,并将加入标识号后的突发信息分别存入第一信息队列和第二信息队列的步骤包括:
[0019]
根据所述第一突发信息和第二突发信息所对应的第一axi crossbar端口和第二axi crossbar端口,分别加入相应的标识号;
[0020]
将加入标识号后的第一突发信息和第二突发信息分别存入第一信息队列和第二信息队列。
[0021]
进一步地,所述比对所述第一信息队列与第二信息队列中具有相同标识号的突发信息的步骤包括:
[0022]
比对第一信息队列和第二信息队列,获取所述第一信息队列和所述第二信息队列中具有相同标识号的所述第一突发信息和所述第二突发信息;
[0023]
比对所述第一突发信息与所述第二突发信息中的端口数据是否完全一致;若完全一致则判定axi crossbar功能设计正确,反之则判定axi crossbar功能设计错误;所述端口数据和包括突发长度、突发尺寸、突发类型、读写操作类型和地址。
[0024]
第二方面,本发明实施例提供了一种axi crossbar设计电路验证系统,所述系统包括:
[0025]
预先配置模块,用于预先配置设计参数和验证内容;所述设计参数包括主设备数目和从设备数目;
[0026]
数据产生模块,用于根据所述设计参数和所述验证内容分别生成所述主设备数目的第一数据包和所述从设备数目的第二数据包;
[0027]
驱动模块,用于根据所述第一数据包和所述第二数据包,分别驱动第一axi crossbar端口和第二axi crossbar端口收发突发信息;
[0028]
监测模块,用于分别监测所述第一axi crossbar端口和第二axi crossbar端口所接收的突发信息,为所述突发信息加入标识号,并将加入标识号后的突发信息分别存入第一信息队列和第二信息队列;
[0029]
比对模块,用于比对所述第一信息队列与第二信息队列中具有相同标识号的突发信息。
[0030]
进一步地,所述数据产生模块包括:
[0031]
第一数据产生模块,用于根据所述设计参数和所述验证内容生成所述主设备数目的所述第一数据包;
[0032]
第二数据产生模块,用于根据所述设计参数和所述验证内容生成所述从设备数目的所述第二数据包。
[0033]
进一步地,所述驱动模块包括:
[0034]
第一驱动模块,用于根据所述第一数据包,驱动所述第一axi crossbar端口,并从所述第二axi crossbar端口接收第二突发信息,所述第二突发信息响应于所述第一数据包产生;
[0035]
第二驱动模块,用于根据所述第二数据包,驱动所述第二axi crossbar端口,并从所述第一axi crossbar端口接收第一突发信息,所述第一突发信息响应于所述第二数据包产生。
[0036]
进一步地,所述监测模块包括:
[0037]
第一监测模块,用于根据所述第一突发信息所对应的第一axi crossbar端口和第二axi crossbar端口,加入相应的标识号,并将加入标识号后的第一突发信息存入第一信息队列;
[0038]
第二监测模块,用于根据所述第二突发信息所对应的第一axi crossbar端口和第二axi crossbar端口,加入相应的标识号,并将加入标识号后的第二突发信息存入第二信息队列。
[0039]
进一步地,所述比对模块包括:
[0040]
第一比对模块,用于比对第一信息队列和第二信息队列,获取所述第一信息队列和所述第二信息队列中具有相同标识号的所述第一突发信息和所述第二突发信息;
[0041]
第二比对模块,用于比对所述第一突发信息与所述第二突发信息中的端口数据是否完全一致;若完全一致则判定axi crossbar功能设计正确,反之则判定axi crossbar功能设计错误。
[0042]
上述本申请提供了一种axi crossbar设计电路的验证方法和系统,通过所述方法,实现了基于参数化组件数目的验证平台和全自动化的监测机制,针对全功能模式axi crossbar设计的验证。与现有技术相比,该方法在全功能模式axi crossbar的验证应用上,既保证了对于任意数目主设备访问任意数目从设备互联的axi crossbar设计的功能验证的灵活性、充分性和有效性,又保证了一套验证环境一次性验证所有可能的m to n组合情况的通用性和快速性,节约了大量的人力、物力和时间成本,这对soc芯片架构的设计验证工作有着非常重大意义。
附图说明
[0043]
图1是本发明实施例中全功能模式axi crossbar的应用场景示意图;
[0044]
图2是本发明实施例中axi crossbar设计电路的验证方法的流程示意图;
[0045]
图3是图2中步骤s12生成第一、二数据包的流程示意图;
[0046]
图4是图2中步骤s13驱动axi crossbar端口收发突发信息的流程示意图;
[0047]
图5是图2中步骤s14监测突发信息并存入信息队列的流程示意图;
[0048]
图6是图2中步骤s15比对标识号相同的突发信息的流程示意图;
[0049]
图7是本发明实施例中axi crossbar设计电路的验证系统的结构示意图;
[0050]
图8是图7中数据产生模块72的结构示意图;
[0051]
图9是图7中驱动模块73的结构示意图;
[0052]
图10是图7中监测模块74的结构示意图;
[0053]
图11是图7中比对模块75的结构示意图;
[0054]
图12是图7中axi crossbar验证系统基于vmm平台运行的实例示意图。
具体实施方式
[0055]
为了使本申请的目的、技术方案和有益效果更加清楚明白,下面结合附图及实施例,对本发明作进一步详细说明,显然,以下所描述的实施例是本发明实施例的一部分,仅用于说明本发明,但不用来限制本发明的范围。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0056]
本发明提供的axi crossbar设计电路的验证方法,可以应用于如图1所示的全功能模式axi crossbar设计功能验证。其中,m和n均为大于等于1的整数,其具体数值可以不相等,即主设备和从设备的个数可以是任意的,如主设备1代表编号为1的主设备,主设备m代表编号为m的主设备,从设备1代表编号为1的从设备,从设备n代表编号为n的从设备,主设备的编号1,

,m与从设备的编号1,

,n仅是按顺序编号便于管理,并无其他特别含义。图1中示出的axi crossbar支持各个axi的读写操作,每个主设备或从设备都可以通过与axi crossbar上对应的端口连接,来实现与对端的设备交叉互联,其主要功能是从m路主设备中裁决出其中一路主设备,并将其发送到n个从设备的目标从设备,即任一主设备通过连接axi crossbar都可以实现访问连接同一axi crossbar的任一从设备。
[0057]
在一个实施例中,如图2所示,提供了一种axi crossbar设计电路的验证方法,包括以下步骤:
[0058]
s11、预先配置设计参数和验证内容;所述设计参数包括主设备数目和从设备数目;
[0059]
其中,主设备数目和从设备数目根据实际验证需求进行预先配置,即由待验证的axi crossbar类型而定,对应的参数值均可设为大于等于1的任一整数,且按顺序给出每个主从设备的编号,用于后续对监测到的突发信息打标识号。结合实际验证场景,测试人员先将主从设备数目参数设置为不同的宏定义,再根据soc芯片中涉及的axi crossbar所有待验证类型设计不同的测试用例,只需在不同的测试用例中根据实际情况修改与主从设备数目参数对应的宏定义值以满足验证axi crossbar类型的需求,无需修改验证环境或额外投入人力专门搭建不同的验证环境,实现了同一套验证环境上可执行不同类型的功能验证的
技术效果,即解决了验证方法的通用性问题。此外,对于设计的axi crossbar里axi的一些地址位宽、数据位宽、id位宽等数据为参数化设计的情况,或验证涉及的组件可以使用定态数据的情况,都可以采用类似的先将相关参数设置为测试用例中的宏定义参数,执行测试用例验证时预先配置参数值的方法达到组件参数灵活修改以适应不同的验证需求的效果,进而能为涉及不同类型axi crossbar的实际验证工作节约大量的人力、物力和时间成本。
[0060]
s12、根据所述设计参数和所述验证内容分别生成所述主设备数目的第一数据包和所述从设备数目的第二数据包;
[0061]
其中,第一数据包和第二数据包根据验证内容随机生成,用于模拟真实场景中的主从设备之间通信的信息,数据包具体的内容可以根据测试场景的需求在测试用例中预先配置,根据验证功能需要,生成用于与主设备数目相等并用于模拟主设备通信的第一数据包,以及生成用于与从设备数目相等并用于模拟从设备通信的第二数据包。
[0062]
s13、根据所述第一数据包和所述第二数据包,分别驱动第一axi crossbar端口和第二axi crossbar端口收发突发信息;
[0063]
其中,第一axi crossbar端口和第二axi crossbar端口分别为主设备和从设备对应的axi crossbar端口。本申请中第一axi crossbar端口、第二axi crossbar端口分别为与所有主设备和所有从设备连接的axi crossbar上对应的端口的统称,且第一axi crossbar端口的数目和编号与主设备的数目与编号对应,第二axi crossbar端口的数目和编号与从设备的数目和编号对应,该编号用于后续监测突发信息时,作为给出突发信息对应标识号和加入所属信息队列的依据。
[0064]
s14、分别监测所述第一axi crossbar端口和第二axi crossbar端口所接收的突发信息,为所述突发信息加入标识号,并将加入标识号后的突发信息分别存入第一信息队列和第二信息队列;
[0065]
其中,考虑到任一第一axi crossbar端口与任一第二axi crossbar端口都可以互通才能保证任一主设备与任一从设备之间的正常互访,此处监测第一axi crossbar端口所接收的突发信息包括与该端口连接的所有第二axi crossbar端口发送的突发信息,监测第二axi crossbar端口所接收的突发信息包括与该端口连接的所有第一axi crossbar端口发送的突发信息来保证实现主设备收发信息功能的充分全面验证。所使用的第一信息队列和第二信息队列是收发主从设备之间互访突发信息的队列,且第一信息队列的数目和编号和主设备的数目和编号对应,用于存放对应主设备发出的第一突发信息和接收的第二突发信息,第二信息队列的数目和编号和从设备的数目和编号对应,用于存放对应从设备发出的第二突发信息和接收的第一突发信息。这种一个设备对应一个信息队列的多信息队列多线程处理方式,既保证了不同设备的信息独立,有利于后续主从设备突发信息的比对验证的信息提取,也保证了信息处理的速度,进而保证验证工作的高效。
[0066]
s15、比对所述信息队列中具有相同所述标识号的所述突发信息。
[0067]
本申请实施例中考虑到适于任意数目主设备访问任意数目从设备需求的不同类型axi crossbar功能验证,通过预先灵活配置主从设备数目、axicrossbar设计参数等组件参数和验证内容,根据组件参数和验证内容模拟生成所需数目的主从设备构造并收发对应的突发信息,在主从设备与axi crossbar连接的对应端口监测突发信息信号,给出对应突发信息的标识号后将其存入对应的信息队列,并依此对主从设备同一标识号的突发信息进
行比对,来判断axi crossbar功能设计是否正确。该方法应用于实际验证场景时,既保证了对于任意数目主设备访问任意数目从设备互联的axi crossbar设计的功能验证的灵活性、充分性和有效性,又保证了一套验证环境一次性验证所有可能的mton组合情况的通用性和快速性,这对soc芯片架构的设计验证工作有着非常重大意义。
[0068]
在一个实施例中,如图3所示,所述根据所述设计参数和所述验证内容分别生成所述主设备数目的第一数据包和所述从设备数目的第二数据包的步骤s12包括:
[0069]
s121、根据所述设计参数和所述验证内容生成所述主设备数目的所述第一数据包;所述第一数据包包括与第一axi crossbar端口所对应的主设备的接口信息;
[0070]
其中,与第一axi crossbar端口所对应的主设备的接口信息包括控制信息和数据信息,控制信息是指驱动主设备连接的端口收发信息的指令信息,数据信息包括用于访问从设备的信息和响应信息,都是由根据实际验证需求预先配置在测试用例中的验证内容,如发往哪个从设备,需要发送什么内容的信息等,结合标记信息发出端主设备的编号和信息目的端从设备的编号封装而成。此处,数据信息特指用于访问从设备的信息。
[0071]
s122、根据所述设计参数和所述验证内容生成所述从设备数目的所述第二数据包;所述第二数据包包括与第二axi crossbar端口所对应的从设备的接口信息。
[0072]
其中,与第二axi crossbar端口所对应的从设备的接口信息包括控制信息和数据信息,控制信息是指驱动从设备连接的端口收发信息的指令信息,数据信息是用于响应主设备的信息,由根据实际验证需求预先配置在测试用例中的验证内容,如需要响应什么内容等,结合标记信息发出端从设备的编号和信息目的端主设备的编号封装而成。
[0073]
本实施例中基于预先配置的设计参数和验证内容分别生成与主从设备数目对应的第一数据包和第二数据包,并在数据包中携带接口信息的方法来构造指定数目的主从设备基于axi crossbar通信的信息,既为后续信息比对验证提供很好依据的,也解决了针对场景需求灵活配置验证内容的问题。
[0074]
在一个实施例中,如图4所示,所述获取所述第一数据包和所述第二数据包,分别驱动第一axi crossbar端口和第二axi crossbar端口收发突发信息的步骤s13包括:
[0075]
s131、根据所述第一数据包,驱动所述第一axi crossbar端口发送,并从所述第二axi crossbar端口接收第二突发信息,所述第二突发信息响应于所述第一数据包产生;
[0076]
其中,第二突发信息根据第二数据包构造,与从设备相对应,即模拟从设备收到主设备的信息时由第二axi crossbar端口发出的响应信息。
[0077]
s132、根据所述第二数据包,驱动所述第二axi crossbar端口发送,并从所述第一axi crossbar端口接收第一突发信息,所述第一突发信息响应于所述第二数据包产生。
[0078]
其中,第一突发信息根据第一数据包构造,与主设备相对应,即模拟主设备通过第一axi crossbar端口发送给从设备的数据信息和响应信息。
[0079]
本实施例中根据第一数据包和第二数据包分别驱动对应连接的axi crossbar端口发送突发信息给目的端设备,及接收目的端收到本端突发信息后会回复指定内容的响应信息的方法来模拟指定数目的主从设备基于axi crossbar互联互访的真实场景的技术手段充分有效的验证全功能模式axi crossbar的各个端口的互联转发功能,进而达到了有效节约验证时间和减少验证失效几率的技术效果。
[0080]
在一个实施例中,如图5所示,所述分别监测所述第一axi crossbar端口和第二
axi crossbar端口所接收的突发信息,为所述突发信息加入标识号,并将加入标识号后的突发信息分别存入第一信息队列和第二信息队列的步骤s14包括:
[0081]
s141、根据所述第一突发信息和第二突发信息所对应的第一axi crossbar端口和第二axi crossbar端口,分别加入相应的标识号;
[0082]
其中,突发信息的标识号主要用于标记该信息的来源和去处,即将主设备发出的第一突发信息加上由该主设备对应的编号和目的端从设备的所属编号构成的标识号,将从设备发出的第二突发信息加上由该从设备对应的编号和目的端主设备的所属编号构成的标识号,用于后续提取相同标识号的突发信息比对验证主从设备之间的互访功能是否正常。
[0083]
s142、将加入标识号后的第一突发信息和第二突发信息分别存入第一信息队列和第二信息队列。
[0084]
本实施例中采用实时监测收发突发信息的第一axi crossbar端口和第二axi crossbar端口的全自动化监测机制,结合根据突发信息对应的第一axi crossbar端口和第二axi crossbar端口加入对应标识号的原则来监测并存储所有突发信息,其axi crossbar端口的全覆盖的监测方法,既有效保证了后续对比信息时的端口快速正确配对,又为比对有误时的问题端口的准确识别确认提供快速查找依据,进而很好的保证了基于同标识号的突发信息比对验证axi crossbar设计功能方法的全面和可靠。
[0085]
在一个实施例中,如图6所示,所述比对所述第一信息队列与第二信息队列中具有相同标识号的突发信息的步骤包括s15包括:
[0086]
s151、比对第一信息队列和第二信息队列,获取所述第一信息队列和所述第二信息队列中具有相同标识号的所述第一突发信息和所述第二突发信息;
[0087]
s152、比对所述第一突发信息与所述第二突发信息中的端口数据是否完全一致;若完全一致则判定axi crossbar功能设计正确,反之则判定axi crossbar功能设计错误;所述端口数据和包括突发长度、突发尺寸、突发类型、读写操作类型和地址。
[0088]
其中,第一突发信息和第二突发信息中除了包括根据验证内容构造的数据外,还包括与信息发送设备和接收设备连接的axi crossbar的对应端口数据,如突发长度、突发尺寸、突发类型、读写操作指示和地址等数据信息。正常axicrossbar互联装发功能可以保证收发信息的一致性,由于标识号相同表示互通的主从设备是一样的,那么其信息中所包含的第一axi crossbar端口和第二axi crossbar端口的数据信息应该是完全一致的。
[0089]
本实施例中基于互联设备收发信息中携带的端口信息的一致性,采用比对相同标识号的突发信息检验端口数据是否一致来确定全功能模式axi crossbar功能设计是否通过验证的方法,实现了所有主从设备端口互通信息的快速、有效、全覆盖比对,既保证了验证的充分性和正确性,又大幅度提高了验证效率。
[0090]
需要说明的是,虽然上述流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。
[0091]
在一个实施例中,如图7所示,提供了一种axi crossbar设计电路验证系统,所述系统包括:
[0092]
预先配置模块71,用于预先配置设计参数和验证内容;所述设计参数包括主设备
数目和从设备数目;
[0093]
数据产生模块72,用于根据所述设计参数和所述验证内容分别生成所述主设备数目的第一数据包和所述从设备数目的第二数据包;
[0094]
驱动模块73,用于根据所述第一数据包和所述第二数据包,分别驱动第一axi crossbar端口和第二axi crossbar端口收发突发信息;
[0095]
监测模块74,用于分别监测所述第一axi crossbar端口和第二axi crossbar端口所接收的突发信息,为所述突发信息加入标识号,并将加入标识号后的突发信息分别存入第一信息队列和第二信息队列;
[0096]
比对模块75,用于比对所述第一信息队列与第二信息队列中具有相同标识号的突发信息。
[0097]
在一个实施例中,如图8所示,所述数据产生模块72还包括:
[0098]
第一数据产生模块721,用于根据所述设计参数和所述验证内容生成所述主设备数目的所述第一数据包;
[0099]
第二数据产生模块722,用于根据所述设计参数和所述验证内容生成所述从设备数目的所述第二数据包。
[0100]
在一个实施例中,如图9所示,所述驱动模块73还包括:
[0101]
第一驱动模块731,用于根据所述第一数据包,驱动所述第一axi crossbar端口,并从所述第二axi crossbar端口接收第二突发信息,所述第二突发信息响应于所述第一数据包产生;第一驱动模块用于模拟主设备,因此,第一数据包中包含有与第一axi crossbar端口相连的主设备接口的控制和数据信息;
[0102]
第二驱动模块732,用于根据所述第二数据包,驱动所述第二axi crossbar端口,并从所述第一axi crossbar端口接收第一突发信息,所述第一突发信息响应于所述第二数据包产生;第二驱动模块用于模拟主设备,因此,第二数据包中包含有与第二axi crossbar端口相连的主设备接口的控制和数据信息。
[0103]
在一个实施例中,如图10所示,所述监测模块74还包括:
[0104]
第一监测模块741,用于根据所述第一突发信息所对应的第一axi crossbar端口和第二axi crossbar端口,加入相应的标识号,并将加入标识号后的第一突发信息存入第一信息队列;
[0105]
第二监测模块742,用于根据所述第二突发信息所对应的第一axi crossbar端口和第二axi crossbar端口,加入相应的标识号,并将加入标识号后的第二突发信息存入第二信息队列。
[0106]
在一个实施例中,如图11所示,所述比对模块75还包括:
[0107]
第一比对模块751,用于比对第一信息队列和第二信息队列,获取所述第一信息队列和所述第二信息队列中具有相同标识号的所述第一突发信息和所述第二突发信息;
[0108]
第二比对模块752,用于比对所述第一突发信息与所述第二突发信息中的端口数据是否完全一致;若完全一致则判定axi crossbar功能设计正确,反之则判定axi crossbar功能设计错误。
[0109]
上述的axi crossbar设计电路验证系统适用于vmm或者uvm的自动化验证平台,在一个实施例中,如图12所示给出该系统基于vmm平台运行的实例。
[0110]
其中,在验证的测试用例中(即预先配置模块)配置表示主设备数目和从设备数目的宏定义参数m和n的值,若设计的axi crossbar里axi的一些地址位宽、数据位宽、id位宽等参数为参数化的设计,这些参数也在测试用例里预先配置;
[0111]
数据产生模块的第一数据产生模块和第二数据产生模块分别根据验证测试用例的内容约束生成m第一数据包和n个第二数据包,其中每个第一数据包都包含第i个主设备接口的控制与数据信息,其中i=1,

,m,每个第二数据包包含第j个从设备接口的响应信息,其中j=1,

,n;
[0112]
驱动模块中的第一驱动模块和第二驱动模块分别获取对应的第一数据包和第二数据包,并模拟对应的m个主设备和n个从设备驱动对应的axi crossbar端口收发突发信息;
[0113]
监测模块中的第一监测模块和第二监测模块分别监测连接m个主设备部分的axi crossbar的n个从设备的接口信号与连接n个从设备部分的axi crossbar的m个主设备的接口信号,并将监测到每个突发信息给出标识号,根据标识号存入到对应的第一信息队列和第二信息队列;
[0114]
比对模块中,查找出m个主设备对应的第一信息队列和n个从设备对应的第二信息队列中具有相同标识号的突发信息,然后进行突发信息中端口数据的一致性比对,若突发信息中的突发长度、突发尺寸、突发类型、读写操作指示和地址等数据信息完全一致则判定axi crossbar功能设计正确,反之则判定axi crossbar功能设计错误。
[0115]
关于axi crossbar设计电路验证系统的具体限定可以参见上文中对于axi crossbar设计电路验证方法的限定,在此不再赘述。上述axi crossbar设计电路验证系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0116]
综上,本发明实施例提供的一种axi crossbar设计电路验证方法和系统,其axi crossbar设计电路验证方法通过预先配置设计参数和验证内容,依此生成分别与主设备和从设备数目对应的数据包,并驱动与主从设备连接的对应axi crossbar端口收发信息,全自动化监控所有主从设备对应的axi crossbar端口的突发信息,给出突发信息的标识号后存入对应的信息队列,再通过比对所有标识号相同的突发信息端口数据的一致性来验证axi crossbar功能设计是否正确。该方法应用于实际的全功能模式axi crossbar设计验证时,无需改变验证环境或重新搭建验证环境,只需修改验证平台的相关测试用例相关的设计参数和验证内容即可以实现对不同类型axi crossbar的功能验证,且适用于vmm、uvm等不同的自动化验证平台,既保证了针对全功能模式的axi crossbar的通用、快速、灵活、充分、有效的验证,又节约了大量的人力、物力和时间成本,这对soc芯片架构的设计验证工作有着非常重大意义。
[0117]
本说明书中的各个实施例均采用递进的方式描述,各个实施例直接相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。需要说明的是,上述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技
术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0118]
以上所述实施例仅表达了本申请的几种优选实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和替换,这些改进和替换也应视为本申请的保护范围。因此,本申请专利的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1