CN112181739B - 系统总线测试系统及方法 - Google Patents

系统总线测试系统及方法 Download PDF

Info

Publication number
CN112181739B
CN112181739B CN202010912638.8A CN202010912638A CN112181739B CN 112181739 B CN112181739 B CN 112181739B CN 202010912638 A CN202010912638 A CN 202010912638A CN 112181739 B CN112181739 B CN 112181739B
Authority
CN
China
Prior art keywords
master
converter
transaction
slave
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010912638.8A
Other languages
English (en)
Other versions
CN112181739A (zh
Inventor
张平平
秦建
毛智强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bouffalo Lab Nanjing Co ltd
Original Assignee
Bouffalo Lab Nanjing Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bouffalo Lab Nanjing Co ltd filed Critical Bouffalo Lab Nanjing Co ltd
Priority to CN202010912638.8A priority Critical patent/CN112181739B/zh
Publication of CN112181739A publication Critical patent/CN112181739A/zh
Application granted granted Critical
Publication of CN112181739B publication Critical patent/CN112181739B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/221Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明揭示了一种系统总线测试系统及方法,所述测试系统包括:至少一主设备、至少一从设备、至少一主设备监测器、至少一从设备监测器、至少一第一转换器、至少一第二转换器、至少一第一映射器、至少一第二映射器、第一存储单元、第二存储单元、内存地址映射及对比单元;系统总线分别连接各主设备及各从设备;所述主设备连接对应的主设备监测器,所述从设备连接对应的从设备监测器。本发明提出的系统总线测试系统及方法,省去参考模型的建立过程,统一事务类型,即使SoC总线结构以及接口标准发生变化,测试方法也不会改变,可极大提高测试的通用性。

Description

系统总线测试系统及方法
技术领域
本发明属于电子信息技术领域,涉及一种SoC系统,尤其涉及一种系统总线测试系统及方法。
背景技术
SoC系统总线中,主设备master的数量、从设备slave的数量、memorymap(内存地址映射)、master到slave的联通性、所使用的总线接口协议标准会根据SoC功能而做出相应变化。
传统的测试方法,根据master的数量、slave的数量、memorymap、master到slave的联通性进行测试。一方面,需要考虑覆盖到每个master到所有可联通的slave的总线访问;另一方面,需要根据memoryap的定义以及构建参考模型,来产生golden数据(标准数据),然而整个SoC总线的模型是复杂且多变的,参考模型的构建必然是困难的。
此外,需要根据各个总线接口的接口标准定义符合标准协议的driver(驱动器)和monitor(监测器),分别驱动和采集特定事务,不同的总线接口导致不同的特定事务结构(如apb事务、ahb事务、axi事务等等),数据比对不通用。
由此可以看出现有测试方法的的不足,当总线发生变化的时候,测试系统需要重新设计,不通用,缺乏可移植性。
有鉴于此,如今迫切需要设计一种新的SoC系统总线的测试方式,以便克服现有SoC系统总线的测试方式存在的上述至少部分缺陷。
发明内容
本发明提供一种系统总线测试系统及方法,可提高测试的通用性。
为解决上述技术问题,根据本发明的一个方面,采用如下技术方案:
一种系统总线测试系统,所述测试系统包括:至少一主设备、至少一从设备、至少一主设备监测器、至少一从设备监测器、至少一第一转换器、至少一第二转换器、至少一第一映射器、至少一第二映射器、第一存储单元、第二存储单元、内存地址映射及对比单元;
系统总线分别连接各主设备及各从设备;所述主设备连接对应的主设备监测器,所述从设备连接对应的从设备监测器;
所述主设备监测器连接对应的第一转换器,所述第一转换器用以将主设备监测器监测的特定事务转换为通用事务,并将数据存储至第一存储单元相应的存储队列中;所述第一存储单元连接第一映射器,所述第一映射器连接内存地址映射,第一映射器接收第一转换器输出的通用事务并根据内存地址映射对存储队列进行排序;
所述从设备监测器连接对应的第二转换器,所述第二转换器用以将从设备监测器监测的特定事务转换为通用事务,并将数据存储至第二存储单元相应的存储队列中;所述第二存储单元连接第二映射器,所述第二映射器连接内存地址映射,第二映射器接收第二转换器输出的通用事务并根据内存地址映射对存储队列进行排序;
所述对比单元接收所述第一映射器及第二映射器的输出,以此判断系统总线是否存在问题。
作为本发明的一种实施方式,所述第一转换器或/和第二转换器用以将特定事务转换成通用事务。
作为本发明的一种实施方式,所述第一转换器用以将主设备监测器每次采集到的一次特定事务,拆分成多个包含地址、数据、读写信息的通用事务;
所述第二转换器用以将从设备监测器每次采集到的一次特定事务,拆分成多个包含地址、数据、读写信息的通用事务。
作为本发明的一种实施方式,将每个从设备slave的可访问地址空间,按照主设备maser的数量划分成若干个区间,区间数量和主设备master数量相同,每个区间不重叠,保证每个主设备master访问不同的区间。
根据本发明的另一个方面,采用如下技术方案:
一种系统总线测试方法,所述测试方法包括:
主设备监测器监测来自总线的访问,第一转换器将主设备监测器监测的特定事务转换为通用事务,并将数据存储至第一存储单元相应的存储队列中;第一映射器接收第一转换器输出的通用事务并根据内存地址映射对存储队列进行排序;
从设备监测器监测来自总线的访问,第二转换器将从设备监测器监测的特定事务转换为通用事务,并将数据存储至第一存储单元相应的存储队列中;第二映射器接收第二转换器输出的通用事务并根据内存地址映射对存储队列进行排序;
对比单元接收所述第一映射器及第二映射器的输出,以此判断系统总线是否存在问题。
作为本发明的一种实施方式,所述测试方法进一步包括:
定义通用事务;所述通用事务包含地址、数据及读写信息;
为每个主设备maser设置第一转换器,为每个从设备slave设置第二转换器,第一转换器及第二转换器用以实现通用事务和特定事务的转换;主设备master和从设备slave的监测器monitor监测总线的行为;采集特定事务,并将特定事务输出给转换器,转换器将特定事务转换成通用事务。
作为本发明的一种实施方式,所述测试方法进一步包括:
将每个从设备slave的可访问地址空间按照主设备maser的数量划分成若干个区间,区间数量和主设备master数量相同,每个区间不重叠,保证每个主设备master访问不同的区间。
作为本发明的一种实施方式,所述测试方法进一步包括:为每个主设备master分配一个访问区间。
作为本发明的一种实施方式,所述测试方法进一步包括:
所述第一转换器将主设备监测器每次采集到的一次特定事务,拆分成多个包含地址、数据、读写信息的通用事务;
所述第二转换器将从设备监测器每次采集到的一次特定事务,拆分成多个包含地址、数据、读写信息的通用事务。
作为本发明的一种实施方式,每次仿真,主设备master遍历使用分配到的地址发起读或者写操作,各个主设备master的监测器monitor采集主设备master侧的特定事务数据,随即通过转换器把特定事务转换成通用事务,然后把转换后的通用事务数据放入相应的存储队列;
各个从设备slave的监视器monitor采集从设备slave侧的特定事务数据,随即通过转换器把特定事务转换成通用事务,然后把转换后的通用事务数据放入相应的存储队列;
接下来映射器根据内存地址映射memorymap同时对主设备master和从设备slave侧的通用事务存储队列数据进行抽取排序。
作为本发明的一种实施方式,存在N+1个从设备slave,那么对于每个队列,遍历N+1次;
第1次遍历,存储队列(如编号n)里通用事务数据的地址和addr_range0比较,如果落入addr_range0,则将相应Index的内容放入编号为n的输出存储队列,然后对本次放入输出存储队列的数据按地址排序;
第2次遍历,存储队列里通用事务数据的地址和addr_range1比较,如果落入addr_range1,则将相应Index的内容放入编号为n的输出存储队列,然后对本次放入输出存储队列的数据按地址排序;
第N+1次遍历,存储队列里通用事务数据的地址和addr_rangeN比较,如果落入addr_rangeN,则将相应Index的内容放入编号为n的输出存储队列,然后对本次放入输出存储队列的数据按地址排序;
最后依次进行相同编号的输出存储队列通用事务比对,例如,主设备master侧的输出队列0和从设备slave侧的输出队列0的通用事务进行比对,主设备master侧的输出队列1和从设备slave侧的输出队列1的通用事务进行比对,以此类推,两两队列通用事务比对时,比对通用事务的地址、读写标记以及数据。
作为本发明的一种实施方式,步骤S1中,不同的SoC接口标准,特定事务是变化的。
本发明的有益效果在于:本发明提出的系统总线测试系统及方法,省去参考模型的建立过程,统一事务类型,即使SoC总线结构以及接口标准发生变化,测试方法也不会改变,可极大提高测试的通用性。
附图说明
图1为本发明一实施例中系统总线测试系统的组成示意图。
图2为本发明一实施例中系统总线测试方法流程图。
图3为SoC通用总线访问事务结构图。
图4为映射器根据memorymap抽取过程示意图。
具体实施方式
下面结合附图详细说明本发明的优选实施例。
为了进一步理解本发明,下面结合实施例对本发明优选实施方案进行描述,但是应当理解,这些描述只是为进一步说明本发明的特征和优点,而不是对本发明权利要求的限制。
该部分的描述只针对几个典型的实施例,本发明并不仅局限于实施例描述的范围。相同或相近的现有技术手段与实施例中的一些技术特征进行相互替换也在本发明描述和保护的范围内。
说明书中的“连接”既包含直接连接,也包含间接连接。
本发明揭示了一种系统总线测试系统(在本发明的一实施例中,测试系统为SoC系统总线测试系统),图1为本发明一实施例中系统总线测试系统的组成示意图;请参阅图1,所述测试系统包括:至少一主设备1、至少一从设备2、至少一主设备监测器3、至少一从设备监测器4、至少一第一转换器5、至少一第二转换器6、至少一第一映射器7、至少一第二映射器8、第一存储单元9、第二存储单元10、内存地址映射11及对比单元12。当然,系统总线13也可以作为本测试系统的一部分。
系统总线13分别连接各主设备1及各从设备2;所述主设备1连接对应的主设备监测器3,所述从设备2连接对应的从设备监测器4。内存地址映射11用以记录各从设备2的访问地址。
所述主设备监测器3连接对应的第一转换器5,所述第一转换器5将主设备监测器3监测的特定事务转换为通用事务,并数据存储至第一存储单元9相应的存储队列中;所述第一存储单元9连接第一映射器7,所述第一映射器7连接内存地址映射11,第一映射器7接收第一转换器5输出的通用事务并根据内存地址映射11对存储队列进行排序。
所述从设备监测器4连接对应的第二转换器6,所述第二转换器6将从设备监测器4监测的特定事务转换为通用事务,并将数据存储至第二存储单元10相应的存储队列中;所述第二存储单元10连接第二映射器8,所述第二映射器8连接内存地址映射11,第二映射器8接收第二转换器6输出的通用事务并根据内存地址映射11对存储队列进行排序。
所述对比单元12接收所述第一映射器7及第二映射器8的输出,以此判断系统总线是否存在问题。比对的目的是为了发现主设备发送的数据和从设备接收的数据是否完全一致,进而验证总线行为是否正常。如果总线行为正常,那么主设备发送的数据就应该被对应的从设备所接收。不存在数据丢失,接收错误的情况,比对自然无误;反之,如果数据比对存在错,就证明总线存在bug,需要修复。
在本发明的一实施例中,所述第一转换器或/和第二转换器用以将特定事务转换成通用事务(即通用总线访问方式事务)。特定的事务视具体的项目会有所不同,例如有的项目的特定事务是AHB类型的,有的是AXI类型的,这两种是典型,这两种类型的传输存在burst的概念,即每次传输连续多个地址的数据,检测器每次采集的就是其中一次连续多个地址的数据。转换方法:将每次检测器采集到的一次burst的特定事务,拆分成多个包含地址、数据、读写信息的通用事务。特定的事务随不同的项目会有所变化,如AHB、AXI、APB等,但是通用事务的格式是固定的,包含地址、数据、读写信息。
在一实施例中,所述第一转换器用以将主设备监测器每次采集到的一次特定事务,拆分成多个包含地址、数据、读写信息的通用事务;所述第二转换器用以将从设备监测器每次采集到的一次特定事务,拆分成多个包含地址、数据、读写信息的通用事务。
在本发明的一实施例中,将每个从设备slave的可访问地址空间,按照主设备maser的数量划分成若干个区间,区间数量和主设备master数量相同,每个区间不重叠,保证每个主设备master访问不同的区间。
本发明还揭示一种系统总线测试方法,图2为本发明一实施例中系统总线测试方法流程图;请参阅图2,所述测试方法包括:
主设备监测器监测来自总线的访问,第一转换器将主设备监测器监测的特定事务转换为通用事务,并将数据存储至第一存储单元相应的存储队列中;第一映射器接收第一转换器输出的通用事务并根据内存地址映射对存储队列进行排序;
从设备监测器监测来自总线的访问,第二转换器将从设备监测器监测的特定事务转换为通用事务,并将数据存储至第一存储单元相应的存储队列中;第二映射器接收第二转换器输出的通用事务并根据内存地址映射对存储队列进行排序;
对比单元接收所述第一映射器及第二映射器的输出,以此判断系统总线是否存在问题。在本发明的一实施例中,所述测试方法进一步包括:
所述第一转换器将主设备监测器每次采集到的一次特定事务,拆分成多个包含地址、数据、读写信息的通用事务;
所述第二转换器将从设备监测器每次采集到的一次特定事务,拆分成多个包含地址、数据、读写信息的通用事务。
在本发明的一实施例中,所述测试方法具体包括:
步骤S1、定义通用总线访问方式的事务(如图3所示)和转换器;
每个主设备maser、从设备slave设置转换器,转换器用以实现通用事务和特定事务的转换,主设备master和从设备slave的监测器monitor监测总线的行为;采集特定事务,并将特定事务输出给转换器,转换器将特定事务转换成定义的通用总线访问方式事务。在本发明的一实施例中,不同的SoC接口标准,特定事务是变化的。
步骤S2、将每个从设备slave的可访问地址空间,按照主设备maser的数量划分成若干个区间,区间数量和主设备master数量相同,每个区间不重叠,保证每个主设备master访问不同的区间;如表1所示。
表1从设备地址划分为N+1范围表(不重叠)
从设备0 range00 range01 range02 range0. range0N
从设备1 range10 range11 range12 range1. range1N
从设备2 range20 range21 range22 range2. range2N
从设备.. range.0 range.1 range.2 range.. range.N
从设备N rangeN0 rangeN1 rangeN2 rangeN. rangeNN
步骤S3、按照步骤S2划分的区间,给每个主设备master分配一个访问区间。如表2所示。
表2主设备访问从设备地址使用表
步骤S4、定义映射器,映射器接收主设备master端和从设备slave端的转换器输出的通用事务并根据内存地址映射memorymap对存储队列进行排序,为后续的数据比对做准备;
步骤S5、主设备master侧监测器监测各个主设备master的访问,并通过转换器得到通用的主动总线访问事务;
步骤S6、从设备slave侧监测器监测来自总线的访问,并通过转换器得到通用的被动总线访问事务;
步骤S7、主动总线访问事务和被动总线访问事务对比检查。
在本发明的一实施例中,总线测试流程如图2所示,每次仿真,master遍历使用分配到的地址发起读或者写操作,各个master的monitor采集master侧的特定事务数据,随即通过转换器把特定事务转换成通用事务,然后把转换后的通用事务数据放入相应的存储队列。
例如,当master0访问slave0时,则master0的monitor把采集到的事务转换成通用事务后放入存储队列0,访问slave1时,则master0的monitor把采集到的事务转换成通用事务后放入存储队列1,其他master以此类推。
同理,各个slave的monitor采集slave侧的特定事务数据,随即通过转换器把特定事务转换成通用事务,然后把转换后的通用事务数据放入相应的存储队列。
例如,slave0的monitor把采集到的事务转换成通用事务后放入存储队列0,slave1的monitor把采集到的事务转换成通用事务后放入存储队列1,其他slave以此类推;接下来映射器根据memorymap同时对master和slave测的通用事务存储队列数据进行抽取排序;每个队列的数据抽取排序过程如图4所示。存在N+1个slave,那么对于每个队列;遍历N+1次。
第1次遍历,存储队列(如编号n)里通用事务数据的地址和addr_range0比较,如果落入addr_range0,则将相应Index的内容放入编号为n的输出存储队列,然后对本次放入输出存储队列的数据按地址排序。
第2次遍历,存储队列里通用事务数据的地址和addr_range1比较,如果落入addr_range1,则将相应Index的内容放入编号为n的输出存储队列,然后对本次放入输出存储队列的数据按地址排序。
第N+1次遍历,存储队列里通用事务数据的地址和addr_rangeN比较,如果落入addr_rangeN,则将相应Index的内容放入编号为n的输出存储队列,然后对本次放入输出存储队列的数据按地址排序,最后依次进行相同编号的输出存储队列通用事务比对。
例如,master侧的输出队列0和slave侧的输出队列0的通用事务进行比对,master侧的输出队列1和slave侧的输出队列1的通用事务进行比对,以此类推,两两队列通用事务比对时,比对通用事务的地址、读写标记以及数据。
综上所述,本发明提出的系统总线测试系统及方法,可省去参考模型的建立过程,统一事务类型,即使SoC总线结构以及接口标准发生变化,测试方法也不会改变,可极大提高测试的通用性。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
这里本发明的描述和应用是说明性的,并非想将本发明的范围限制在上述实施例中。实施例中所涉及的效果或优点可因多种因素干扰而可能不能在实施例中体现,对于效果或优点的描述不用于对实施例进行限制。这里所披露的实施例的变形和改变是可能的,对于那些本领域的普通技术人员来说实施例的替换和等效的各种部件是公知的。本领域技术人员应该清楚的是,在不脱离本发明的精神或本质特征的情况下,本发明可以以其它形式、结构、布置、比例,以及用其它组件、材料和部件来实现。在不脱离本发明范围和精神的情况下,可以对这里所披露的实施例进行其它变形和改变。

Claims (8)

1.一种系统总线测试系统,其特征在于,所述测试系统包括:至少一主设备、至少一从设备、至少一主设备监测器、至少一从设备监测器、至少一第一转换器、至少一第二转换器、至少一第一映射器、至少一第二映射器、第一存储单元、第二存储单元、内存地址映射及对比单元;
系统总线分别连接各主设备及各从设备;所述主设备连接对应的主设备监测器,所述从设备连接对应的从设备监测器;
所述主设备监测器连接对应的第一转换器,所述第一转换器用以将主设备监测器监测的特定事务转换为通用事务,并将数据存储至第一存储单元相应的存储队列中;所述第一存储单元连接第一映射器,所述第一映射器连接内存地址映射,第一映射器接收第一转换器输出的通用事务并根据内存地址映射对存储队列进行排序;
所述从设备监测器连接对应的第二转换器,所述第二转换器用以将从设备监测器监测的特定事务转换为通用事务,并将数据存储至第二存储单元相应的存储队列中;所述第二存储单元连接第二映射器,所述第二映射器连接内存地址映射,第二映射器接收第二转换器输出的通用事务并根据内存地址映射对存储队列进行排序;
所述对比单元接收所述第一映射器及第二映射器的输出,以此判断系统总线是否存在问题;
每次仿真,主设备master遍历使用分配到的地址发起读或者写操作,各个主设备master的监测器monitor采集主设备master侧的特定事务数据,随即通过转换器把特定事务转换成通用事务,然后把转换后的通用事务数据放入相应的存储队列;
各个从设备slave的监视器monitor采集从设备slave侧的特定事务数据,随即通过转换器把特定事务转换成通用事务,然后把转换后的通用事务数据放入相应的存储队列;
接下来映射器根据内存地址映射memorymap同时对主设备master和从设备slave侧的通用事务存储队列数据进行抽取排序;
存在N+1个从设备slave,那么对于每个队列,遍历N+1次;
第1次遍历,存储队列里通用事务数据的地址和addr_range0比较,如果落入addr_range0,则将相应Index的内容放入编号为n的输出存储队列,然后对本次放入输出存储队列的数据按地址排序;
第2次遍历,存储队列里通用事务数据的地址和addr_range1比较,如果落入addr_range1,则将相应Index的内容放入编号为n的输出存储队列,然后对本次放入输出存储队列的数据按地址排序;
依次至第N+1次遍历,存储队列里通用事务数据的地址和addr_rangeN比较,如果落入addr_rangeN,则将相应Index的内容放入编号为n的输出存储队列,然后对本次放入输出存储队列的数据按地址排序;
最后依次进行相同编号的输出存储队列通用事务比对,主设备master侧的输出队列0和从设备slave侧的输出队列0的通用事务进行比对,主设备master侧的输出队列1和从设备slave侧的输出队列1的通用事务进行比对,以此类推,两两队列通用事务比对时,比对通用事务的地址、读写标记以及数据。
2.根据权利要求1所述的系统总线测试系统,其特征在于:
所述第一转换器或/和第二转换器用以将特定事务转换成通用事务。
3.根据权利要求2所述的系统总线测试系统,其特征在于:
所述第一转换器用以将主设备监测器每次采集到的一次特定事务,拆分成多个包含地址、数据、读写信息的通用事务;
所述第二转换器用以将从设备监测器每次采集到的一次特定事务,拆分成多个包含地址、数据、读写信息的通用事务。
4.根据权利要求1所述的系统总线测试系统,其特征在于:
将每个从设备slave 的可访问地址空间,按照主设备 maser 的数量划分成若干个区间,区间数量和主设备master 数量相同,每个区间不重叠,保证每个主设备master访问不同的区间。
5.一种系统总线测试方法,其特征在于,所述测试方法包括:
主设备监测器监测来自总线的访问,第一转换器将主设备监测器监测的特定事务转换为通用事务,并将数据存储至第一存储单元相应的存储队列中;第一映射器接收第一转换器输出的通用事务并根据内存地址映射对存储队列进行排序;
从设备监测器监测来自总线的访问,第二转换器将从设备监测器监测的特定事务转换为通用事务,并将数据存储至第一存储单元相应的存储队列中;第二映射器接收第二转换器输出的通用事务并根据内存地址映射对存储队列进行排序;
对比单元接收所述第一映射器及第二映射器的输出,以此判断系统总线是否存在问题;
每次仿真,主设备master遍历使用分配到的地址发起读或者写操作,各个主设备master的监测器monitor采集主设备master侧的特定事务数据,随即通过转换器把特定事务转换成通用事务,然后把转换后的通用事务数据放入相应的存储队列;
各个从设备slave的监视器monitor采集从设备slave侧的特定事务数据,随即通过转换器把特定事务转换成通用事务,然后把转换后的通用事务数据放入相应的存储队列;
接下来映射器根据内存地址映射memorymap同时对主设备master和从设备slave侧的通用事务存储队列数据进行抽取排序;
存在N+1个从设备slave,那么对于每个队列,遍历N+1次;
第1次遍历,存储队列里通用事务数据的地址和addr_range0比较,如果落入addr_range0,则将相应Index的内容放入编号为n的输出存储队列,然后对本次放入输出存储队列的数据按地址排序;
第2次遍历,存储队列里通用事务数据的地址和addr_range1比较,如果落入addr_range1,则将相应Index的内容放入编号为n的输出存储队列,然后对本次放入输出存储队列的数据按地址排序;
依次至第N+1次遍历,存储队列里通用事务数据的地址和addr_rangeN比较,如果落入addr_rangeN,则将相应Index的内容放入编号为n的输出存储队列,然后对本次放入输出存储队列的数据按地址排序;
最后依次进行相同编号的输出存储队列通用事务比对,主设备master侧的输出队列0和从设备slave侧的输出队列0的通用事务进行比对,主设备master侧的输出队列1和从设备slave侧的输出队列1的通用事务进行比对,以此类推,两两队列通用事务比对时,比对通用事务的地址、读写标记以及数据。
6.根据权利要求5所述的系统总线测试方法,其特征在于:
所述测试方法进一步包括:
定义通用事务;所述通用事务包含地址、数据及读写信息;
为每个主设备maser设置第一转换器,为每个从设备slave设置第二转换器,第一转换器及第二转换器用以实现通用事务和特定事务的转换;主设备master和从设备slave的监测器monitor监测总线的行为;采集特定事务,并将特定事务输出给转换器,转换器将特定事务转换成通用事务。
7.根据权利要求5所述的系统总线测试方法,其特征在于:
所述测试方法进一步包括:
将每个从设备slave 的可访问地址空间按照主设备 maser 的数量划分成若干个区间,区间数量和主设备master 数量相同,每个区间不重叠,保证每个主设备master访问不同的区间;为每个主设备master分配一个访问区间。
8.根据权利要求5所述的系统总线测试方法,其特征在于:
所述测试方法进一步包括:
所述第一转换器将主设备监测器每次采集到的一次特定事务,拆分成多个包含地址、数据、读写信息的通用事务;
所述第二转换器将从设备监测器每次采集到的一次特定事务,拆分成多个包含地址、数据、读写信息的通用事务。
CN202010912638.8A 2020-09-03 2020-09-03 系统总线测试系统及方法 Active CN112181739B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010912638.8A CN112181739B (zh) 2020-09-03 2020-09-03 系统总线测试系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010912638.8A CN112181739B (zh) 2020-09-03 2020-09-03 系统总线测试系统及方法

Publications (2)

Publication Number Publication Date
CN112181739A CN112181739A (zh) 2021-01-05
CN112181739B true CN112181739B (zh) 2023-08-08

Family

ID=73924786

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010912638.8A Active CN112181739B (zh) 2020-09-03 2020-09-03 系统总线测试系统及方法

Country Status (1)

Country Link
CN (1) CN112181739B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116909474A (zh) * 2022-04-12 2023-10-20 荣耀终端有限公司 器件识别方法和相关装置

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2045715A1 (en) * 1990-06-29 1991-12-30 Rebecca L. Stamm Error transition mode for multi-processor system
WO1996035174A2 (en) * 1995-05-02 1996-11-07 Apple Computer, Inc. Bus transaction reordering using side-band information signals
WO2002041156A2 (en) * 2000-11-16 2002-05-23 Sun Microsystems, Inc. Method and apparatus for synchronizing interrupts in a message passing queue oriented bus system
KR20060039719A (ko) * 2004-11-03 2006-05-09 삼성전자주식회사 시스템 버스 성능 개선을 위한 상호접속 장치
JP2008129921A (ja) * 2006-11-22 2008-06-05 Toshiba Corp 論理機能検証装置及び論理機能検証方法
CN101923494A (zh) * 2009-06-17 2010-12-22 安凯(广州)微电子技术有限公司 一种存储器控制器验证系统、方法及记分板
CN102681525A (zh) * 2011-03-15 2012-09-19 安凯(广州)微电子技术有限公司 一种转换控制器的验证方法及系统
US8948182B1 (en) * 2011-11-08 2015-02-03 Marvell International Ltd. Method and system for verification
CN105938460A (zh) * 2015-03-02 2016-09-14 Arm 有限公司 存储器管理
CN107688515A (zh) * 2016-12-23 2018-02-13 北京国睿中数科技股份有限公司 一种Bufferable模式的验证方法
CN109739699A (zh) * 2018-11-06 2019-05-10 电子科技大学 一种基于uvm验证方法学的spi验证方法
CN110888767A (zh) * 2019-12-19 2020-03-17 山东方寸微电子科技有限公司 一种接口复用模块验证平台架构及快速扩展实现方法
CN111124789A (zh) * 2019-11-19 2020-05-08 博流智能科技(南京)有限公司 一种芯片仿真调试系统及调试方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8904073B2 (en) * 2013-03-14 2014-12-02 Apple Inc. Coherence processing with error checking

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2045715A1 (en) * 1990-06-29 1991-12-30 Rebecca L. Stamm Error transition mode for multi-processor system
WO1996035174A2 (en) * 1995-05-02 1996-11-07 Apple Computer, Inc. Bus transaction reordering using side-band information signals
WO2002041156A2 (en) * 2000-11-16 2002-05-23 Sun Microsystems, Inc. Method and apparatus for synchronizing interrupts in a message passing queue oriented bus system
KR20060039719A (ko) * 2004-11-03 2006-05-09 삼성전자주식회사 시스템 버스 성능 개선을 위한 상호접속 장치
JP2008129921A (ja) * 2006-11-22 2008-06-05 Toshiba Corp 論理機能検証装置及び論理機能検証方法
CN101923494A (zh) * 2009-06-17 2010-12-22 安凯(广州)微电子技术有限公司 一种存储器控制器验证系统、方法及记分板
CN102681525A (zh) * 2011-03-15 2012-09-19 安凯(广州)微电子技术有限公司 一种转换控制器的验证方法及系统
US8948182B1 (en) * 2011-11-08 2015-02-03 Marvell International Ltd. Method and system for verification
CN105938460A (zh) * 2015-03-02 2016-09-14 Arm 有限公司 存储器管理
CN107688515A (zh) * 2016-12-23 2018-02-13 北京国睿中数科技股份有限公司 一种Bufferable模式的验证方法
CN109739699A (zh) * 2018-11-06 2019-05-10 电子科技大学 一种基于uvm验证方法学的spi验证方法
CN111124789A (zh) * 2019-11-19 2020-05-08 博流智能科技(南京)有限公司 一种芯片仿真调试系统及调试方法
CN110888767A (zh) * 2019-12-19 2020-03-17 山东方寸微电子科技有限公司 一种接口复用模块验证平台架构及快速扩展实现方法

Also Published As

Publication number Publication date
CN112181739A (zh) 2021-01-05

Similar Documents

Publication Publication Date Title
CN102035673B (zh) 一种基于光纤通道的通用自动测试系统
CN101937412B (zh) 一种片上系统及其访问方法
CN104348673B (zh) 一种调测的方法、主控板和业务板
CN112732636B (zh) 基于多fpga的芯片原型验证系统的配置方法、装置和设备
CN103605359A (zh) 汽车诊断系统和方法
CN104714907B (zh) 一种pci总线转换为isa和apb总线设计方法
CN112181739B (zh) 系统总线测试系统及方法
CN105430114B (zh) 一种ip地址冲突检测方法、系统及接入层设备
CN109933557A (zh) 一种i2c拓扑图的生成方法及装置
CN104572448A (zh) 一种线程堆栈的使用情况的实现方法和装置
CN103092798A (zh) 片上系统及总线下的访问设备的方法
CN110321260B (zh) 一种基于uvm的axi总线接口读写数据比较方法和uvm验证平台
CN103150281B (zh) 总线互联模块的集成方法、装置以及验证方法和装置
CN101354667A (zh) 一种外围组件互连总线级压力测试方法
CN116521468B (zh) 一种fpga在线调试方法及支持在线调试的fpga
US7020723B2 (en) Method of allowing multiple, hardware embedded configurations to be recognized by an operating system
CN111176926B (zh) 一种基于双口sram的ip核仿真系统及仿真方法
CN100517256C (zh) Ieee1394接口功能测试装置及方法
CN111259014A (zh) 一种fpga的单向链表数据存储方法及系统
CN110334034A (zh) 映射表动态加载的方法、装置、计算机设备及存储介质
CN116070564A (zh) 基于芯片待测设计的仿真通信方法及装置
US20140214355A1 (en) Method and apparatus for verifying circuit design
CN113254290A (zh) 一种内存颗粒多维测试方法、装置、系统和可读存储介质
CN111272212B (zh) 一种i2c设备数据采集方法及其系统
CN107506283B (zh) 一种主机向san存储推送信息的方法和系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant