掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本发明属于轨道信号技术领域,特别涉及一种基于UVM的脉冲采集板/主控板系统验证平台搭建方法及验证方法。

背景技术

目前铁路信号系统多采用冗余结构来保障整个铁路系统安全可靠性,铁路信号传输系统中脉冲采集板和主控板即为二乘二取二冗余结构系统,从而保障数据安全可靠传输。铁路轨道上脉冲采集板往往需要收集列车行进过程中发出的实时脉冲信号,经过处理得到列车速度、列车状态以及行进方向等相关信息。脉冲采集板与主控板通过总线进行通信,脉冲采集板将处理后的数据信息保存在内存中,供主控板读取。该系统中脉冲采集板与主控板相互独立,协同工作。

为了最大程度的模拟该系统实际应用场景,保证系统各项功能正常,对系统搭建集成测试环境,该测试平台既可以对系统进行仿真,也可以单独对脉冲采集板或主控板进行有效的读写操作。

系统测试主要包括仿真环境的搭建和功能仿真,仿真环境搭建基于UVM方法学,仿真基于VCS MX。UVM方法学提供了丰富的基础库类和基本验证结构,可以让验证工程师方便快速的构建可靠的验证框架。基于UVM方法学搭建系统集成测试环境,充分应用了UVM方法学提供的验证环境组件与多种机制,例如sequence机制,objection机制、factory机制等。但是该方法学中只提供了单一验证环境中各叶结点组件之间的通信,缺少多模块、多验证环境之间叶节点组件之间交叉联合的信号通信方法。

发明内容

鉴于上述问题,本发明提出了一种基于UVM的脉冲采集板/主控板系统验证平台搭建方法及验证方法。方便验证人员在搭建联合测试平台过程中,有效的控制UVM树中叶结点之间的信号通信,提高了验证平台中脉冲采集板与主控板之间的通信效率,便于多个系统结构联合测试时,多个系统之间实时进行通信;具有扩展性。

本发明具体方案提供一种基于UVM的脉冲采集板/主控板系统验证平台搭建方法,包括:

在top_tb模块中例化待测模块为脉冲采集板和主控板模块;

所述脉冲采集板包括:第一FPGA1和第一FPGA2,所述第一FPGA1与第一FPGA2标识ID不一致,各个结构相互冗余;

第一FPGA1或第一FPGA2包括:顶层模块、全局时钟/复位模块、双机同步模块以及脉冲采集模块;

所述主控板包括:第二FPGA1和第二FPGA2、顶层单元、全局时钟/复位单元模块、CPU总线接口单元以及串行总线协议(Serial Bus Protocol,SBP)单元。

优选的,所述方法包括:

所述全局时钟/复位模块用于脉冲采集板和主控板双机同步复位;

所述主控板与所述脉冲采集板通过SBP总线通信;

所述第一FPGA1与第二FPGA1、第一FPGA2与第二FPGA2通过SBP进行底层链路链接通信。

优选的,所述方法包括:

所述第一FPGA1与第一FPGA2之间通过SBP总线进行双机交互,用于第一FPGA1与第一FPGA2之间同步数据信息和同步状态信息。

优选的,所述双机同步模块,包括:

第一SBP单元和第二SBP单元,第一SBP单元和第二SBP单元用于第一FPGA1与第一FPGA2之间数据交互;

所述双机同步模块用于接收本端FPGA的交互信息,并通过SBP单元将交互信息发送到对端FPGA;

同时,通过SBP单元接收对端FPGA发送的对端FPGA的交互数据。

优选的,将接收的本端FPGA的交互信息与接收的对端FPGA发送的对端FPGA的交互数据进行比对,生成比对结果。

基于同一发明构思,本发明实施例还提供一种基于UVM的脉冲采集板/主控板系统验证方法,包括:

脉冲采集板连续采集脉冲信号,根据连续采集的脉冲信号获取脉冲频率,在间隔单位时间时长后处理脉冲信号数据;

其中,根据每组传感器输入的脉冲信号之间的相位关系进行方向判定,根据脉冲信号频率变化进行速度计算,并将处理结果保存在RAM中。

优选的,所述验证方法还包括:

在验证环境的Env1和Env2中,Env1和Env2分别例化in_agent组件、out_agent组件、reference model组件及scoreboard组件;

在验证环境的Env1中以及验证环境的Env2中内部,设计接口组件virtualinterface;

在验证环境的Env1和Env2中,将上述in_agent组件、out_agent组件、referencemodel组件及scoreboard组件例化为冗余组件,分别为冗余模块的验证组件;特定组件中的特定事务通过TLM通信实现交互;其中,所述特定组件包括:sequencer组件与driver组件之间,imonitor组件与referencemodel组件之间、imonitor组件与scoreboard组件之间以及omonitor组件与scoreboard组件之间通信。

优选的,所述特定组件中的特定事务通过TLM通信实现交互,包括:

driver组件将特定事务转换成信号线级别的通信发送给DUT组件,monitor将DUT组件输出的信号线级别的通信转换成transaction通信,发送到reference model或scoreboard组件。

优选的,在验证环境的Env1中以及验证环境的Env2中内部,通过将冗余模块相关的组件之间交叉联合实现冗余模块之间的信息交互,包括:

除特定组件之间通过TLM通信以外,通过在测试平台中将冗余模块相关的in_agent组件、out_agent组件、reference model组件以及scoreboard组件交叉联合,实现冗余模块之间信息交互与取二数据对比功能。

优选的,所述方法还包括:

在Env1组件中,脉冲采集板采集列车传感器发出的脉冲信号,在指定时间处理完该时间段数据,将Env1中与FPGA1-Slave对应的imonitor1所采集数据作为实际输入数据送给scoreboard1,同时将与FPGA2-Slave对应的imonitor2所采集数据作为参考模型数据送给对端reference model1,实现在FGPA1-Slave端的接收取二比较功能;

同样在Env1中,将与FPGA2-Slave对应的imonitor2所采集数据作为实际输入数据送给scoreboard2,同时将与FPGA1-Slave对应的imonitor1所采集数据作为参考模型数据送给对端reference model2,实现在FPGA2-Slave端的接收取二比较功能;

在Env2中,将与FPGA1-Master对应的omonitor1所采集的输出数据作为实际输出结果送给scoreboard1,同时将imonitor2所采集的FPGA2-Master将要发送给对端的数据作为参考模型数据送给reference model1,实现在FPGA1-Master端的发送取二比较功能;

同样在Env2中,将与FPGA2-Master对应的omonitor2所采集的输出数据作为实际输出结果送给scoreboard2,同时将imonitor1所采集的FGPA1-Master将要发送给对端的数据作为参考模型数据送给referencemodel2,实现在FPGA2-Master端的发送取二比较功能。

基于同一发明构思,本发明实施例另一方面还提供一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器、通信接口和存储器通过通信总线完成相互间的通信;

存储器,存储有计算机程序;

处理器,执行存储器存储的程序时,实现基于UVM的脉冲采集板/主控板系统验证方法。

基于同一发明构思,本发明实施例另一方面还提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现基于UVM的脉冲采集板/主控板系统验证方法。

本发明的有益效果:本发明基于系统实际应用场景,通过设计与多个待测模块对应的多个验证平台之间叶结点组件之间交叉联合的信号通信机制,扩展了UVM验证方法学中目前使用广泛的单一验证环境中各组件之间通信机制,针对多个工程联合调试情况,方便验证人员在搭建联合测试平台过程中,有效的控制UVM树中叶结点之间的信号通信,提高了验证平台中脉冲采集板与主控板之间的通信效率。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书以及附图中所指出的结构来实现和获得。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明基于UVM的脉冲采集板/主控板系统结构图;

图2为本发明top_tb例化待测模块及接口组件示意图;

图3为本发明基于UVM的脉冲采集板/主控板系统验证平台示意图;

图4为本发明FPGA1-Master端发送取二数据流示意图;

图5为本发明FPGA2-Master端发送取二数据流示意图;

图6为本发明FPGA1-Slave端接收取二数据流示意图;

图7为本发明FPGA2-Slave端接收取二数据流示意图;

图8为本发明系统及方法应用的电子设备示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地说明,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,本申请中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。在本申请中,术语“上”、“下”、“左”、“右”、“前”、“后”、“顶”、“底”、“内”、“外”、“中”、“竖直”、“水平”、“横向”、“纵向”等指示的方位或位置关系为基于附图所示的方位或位置关系。

本发明实施例提供一种基于UVM的脉冲采集板/主控板系统验证平台搭建方法,参见图1,包括:

在top_tb模块中例化待测模块为脉冲采集板和主控板模块;

所述脉冲采集板包括:第一FPGA1和第一FPGA2,所述第一FPGA1与第一FPGA2除标识ID不一致,各个结构相互冗余;

第一FPGA1或第一FPGA2包括:顶层模块、全局时钟/复位模块,双机同步模块以及脉冲采集模块;

所述主控板包括:第二FPGA1和第二FPGA2,所述顶层单元、、全局时钟/复位单元模块、CPU总线接口单元以及串行总线协议(Serial Bus Protocol,SBP)单元。

具体地,所述全局时钟/复位模块用于脉冲采集板和主控板双机同步复位;所述主控板与所述脉冲采集板通过SBP总线通信;所述第一FPGA1与第二FPGA1、第一FPGA2与第二FPGA2通过SBP进行底层链路链接通信。

具体来讲,本发明涉及一种基于UVM方法学的脉冲采集板/主控板系统结构的验证方法,包括顶层模块,待测设计DUT(测试中的设备),DUT接口模块,测试用例层。本测试平台在top_tb模块中分别例化脉冲采集板和主控板模块。

在一些可选的实施例中,所述第一FPGA1与第一FPGA2之间通过SBP总线进行双机交互,用于第一FPGA1与第一FPGA2之间同步数据信息和同步状态信息。

在一些可选的实施例中,所述双机同步模块,包括:

第一SBP单元和第二SBP单元,第一SBP单元和第二SBP单元用于第一FPGA1与第一FPGA2之间数据交互;

所述双机同步模块用于接收本端FPGA的交互信息,并通过SBP单元将交互信息发送到对端FPGA;

同时,通过SBP单元接收对端FPGA发送的对端FPGA的交互数据。

具体地,将接收的本端FPGA的交互信息与接收的对端FPGA发送的对端FPGA的交互数据进行比对,生成比对结果;

将所述比对结构发送给主控制单元。

具体来说,脉冲采集板与主控板组成的系统结构如图1所示,脉冲采集板包括FPGA1和FPGA2,主控板中同样包括FPGA1和FPGA2,脉冲采集板与主控板中FGPA1和FPGA2除ID号不一致外,各个结构模块互为冗余。脉冲采集板和主控板FPGA1与FPGA2主要包含串行总线协议(Serial Bus Protocol,SBP)单元、全局时钟/复位单元。

脉冲采集板与主控板中的全局时钟复位模块用于FPGA1与FPGA2同步复位,完成双FPGA的同步启动,只有当FPGA都复位之后,主控板和脉冲采集板才开始正常工作。主控板与脉冲采集板之间通过SBP总线通信,主控板提供SBP Master模块,脉冲采集板提供SBPSlave模块。主控板和脉冲采集板中FPGA1-Master与FPGA1-Slave、FPGA2-Master与FPGA2-Slave之间,以及主控板和脉冲板内部FPGA1-Master和FPGA2-Master、FPGA1-Slave和FPGA2-Slave之间都通过SBP总线进行通信。主控板和脉冲板中FPGA1与FPGA1之间、FPGA2与FPGA2之间通过SBP进行底层链路通信。脉冲采集板和主控板中两个FPGA之间通过SBP进行双机交互,用于两个FPGA之间同步数据信息和同步状态信息。

脉冲板之间的SBP总线用于系间同步状态,双机同步模块包括第一SBP单元和第二SBP单元,主要用于双FPGA间数据交互,接收本端FPGA的交互信息,并通过第一SBP单元发送给对端FPGA,同时通过第二SBP单元接收对端FPGA发送的对端FPGA的交互数据,并对数据进行比对,发送比对结果给主控制单元。

基于同一发明构思,本发明另一方面还提供一种基于UVM的脉冲采集板/主控板系统验证方法,参见图2,包括:

脉冲采集板连续采集脉冲信号,根据连续采集的脉冲信号获取脉冲频率,在间隔单位时间时长后处理脉冲信号数据;

其中,根据每组传感器输入的脉冲信号之间的相位关系进行方向判定,根据脉冲信号频率变化进行速度计算,并将处理结果保存在RAM中。

具体地,脉冲采集板实时采集列车上传感器发出的脉冲信号,进行判定并脉冲计数,间隔固定时长之后处理脉冲信号数据,根据每组传感器输入的脉冲信号之间的相位关系进行方向判定,根据脉冲信号频率变化进行速度计算,并将处理结果保存在RAM中。

在一些可选的实施例中,所述验证方法还包括:

在验证环境的Env1和Env2中,Env1和Env2分别例化iagent组件、oagent组件、reference model组件及scoreboard组件;

在验证环境的Env1中以及验证环境的Env2中内部,设计接口组件virtualinterface;

在验证环境的Env1和Env2中,将上述iagent组件、oagent组件、referencemodel组件及scoreboard组件例化为冗余组件,分别为冗余模块的验证组件;特定组件中的特定事务通过TLM通信实现交互;其中,所述特定组件包括:sequencer组件与driver组件之间,driver组件与reference model组件之间以及monitor组件与scoreboard组件之间通信。

基于上述技术方案,下面对其进行详细说明,系统中脉冲采集板实时采集列车上传感器发出的脉冲信号。

主控板在10ms、20ms、30ms、50ms等固定收集脉冲相位差信息和频率速度变化等信息并进行数据处理直至脉冲采集结束。根据实际应用场景,脉冲采集板transaction中的成员变量主要用于描述不同占空比的脉冲以及脉冲周期数,而主控板transaction中成员主要用于描述列车前进方向和速度。

参见图2,本发明基于脉冲采集板与主控板系统验证环境,本测试平台在top_tb中分别例化脉冲采集板和主控板模块。由于主控板和脉冲采集板组成的系统结构为冗余系统,testbench需要为脉冲采集板和主控板中冗余FPGA例化两次待测模块,同时将两个待测模块对应的接口组件分别例化两组。

在一些可选的实施例中,参见图3,所述特定组件中的特定事务通过TLM通信实现交互,包括:

driver组件将特定事务转换成信号线级别的通信发送给DUT组件,monitor将DUT组件输出的信号线级别的通信转换成transaction通信,发送到reference model组件或scoreboard组件。

所述在验证环境的Env1中以及验证环境的Env2中内部,通过将冗余模块相关的组件交叉联合实现冗余模块之间的信息交互,包括:除特定组件之间通过TLM通信以外,通过在测试平台中将冗余模块相关的in_agent组件、out_agent组件、reference model组件以及scoreboard组件交叉联合,实现冗余模块之间信息交互与取二数据对比功能。

在Env1组件中,脉冲采集板采集列车传感器发出的脉冲信号,在指定时间处理完该时间段数据,将Env1中与FPGA1-Slave1对应的imonitor1所采集数据作为实际输入数据送给scoreboard1,同时将与FPGA2-Slave对应的imonitor2所采集数据作为参考模型数据送给对端reference model1,实现在FGPA1-Slave端的接收取二比较功能。

具体地,Env1中主要实现脉冲采集板多重输入比较功能。将Env1imonitor组件采集到的信息给到scoreboard1,同时将in_agent2中imonitor读取到的FPGA2-Slave所缓存的将要发送给FPGA2-Master的信息作为参考模型发送给scoreboard1,scoreboard1因此在FPGA1-Slave端就实现了FPGA1-Slave所接收的信息和FPGA2-Slave所接收参考信息取二数据比较功能。

同样在Env1中,将与FPGA2-Slave对应的imonitor2所采集数据作为实际输入数据送给scoreboard2,同时将与FPGA1-Slave对应的imonitor1所采集数据作为参考模型数据送给对端reference model2,实现在FPGA2-Slave端的接收取二比较功能。

具体地,将Env1in_agent2中imonitor组件采集到的信息给到scoreboard2,同时将in_agent1中imonitor读取到的FPGA1-Slave所缓存的将要发送给FPGA2-Master的信息作为参考模型发送给scoreboard2,scoreboard2因此在FPGA2-Slave端就实现了FPGA2-Slave所接收的信息和FPGA1-Slave所接收的参考信息取二数据比较功能。

在Env2中,将与FPGA1-Master对应的omonitor1所采集的输出数据作为实际输出结果送给scoreboard1,同时将imonitor2所采集的FPGA2-Master将要发送给对端的数据作为参考模型数据送给reference model1,实现在FPGA1-Master端的发送取二比较功能。

具体地,Env2主要实现主控板输出数据多重比较功能。将Env2out_agent1中omonitor所收集到的数据作为实际输入数据发送给scoreboard1,同时将对端in_agent2收集的数据作为参考模型信息发送给scoreboard1,scoreboard1因此在FPGA1-Master端实现了FPGA1-Master实际输出的信息与FPGA2-Master输出的参考信息取二数据比较功能。

同样在Env2中,将与FPGA2-Master对应的omonitor2所采集的输出数据作为实际输出结果送给scoreboard2,同时将imonitor1所采集的FGPA1-Master将要发送给对端的数据作为参考模型数据送给referencemodel2,实现在FPGA2-Master端的发送取二比较功能。

具体地,在Env2out_agent2中omonitor所收集到的数据作为实际输入数据发送给scoreboard2,同时将对端in_agent1收集到的数据作为参考输入数据发送给scoreboard2,scoreboard2因此在FPGA2-Master端实现了FPGA2-Master所实际输出的信息与FPGA1-Master输出的参考信息取二数据比较功能。

在本发明冗余结构联合验证平台中Env1和Env2中所例化的组件in_agent、out_agent、reference model以及scoreboard之间的连接关系及transaction传递过程的进一步描述参见图4~7所示。图4显示在Env1中以FPGA1-Master输出数据为测试目标,以对端将要发送的数据为参考模型,以判断在FPGA1-Master侧的发送取二是否一致。

图5显示在Env1中以FPGA2-Master输出数据为测试目标,以对端将要发送的数据为参考模型,以判断在FPGA2-Master侧的发送取二是否一致。

图6显示在Env2中以FPGA1-Slave输出数据为测试目标,以对端将要发送的数据为参考模型,以判断在FPGA1-Slave侧的发送取二是否一致。

图7显示在Env2中以FPGA2-Slave输出数据为测试目标,以对端将要发送的数据为参考模型,以判断在FPGA2-Slave侧的发送取二是否一致。

基于同一发明构思,本发明还提供了一种电子设备161,参见图8,包括处理器164、通信接口165、存储器162和通信总线,其中,处理器164、通信接口165和存储器162通过通信总线完成相互间的通信;

存储器162,存储有计算机程序163;

处理器164,执行存储器162存储的程序时,实现基于UVM的脉冲采集板/主控板系统验证方法。

上述的通信总线可以是外设部件互连标准(PeripheralComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended IndustryStandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。

通信接口165用于上述电子设备161与其他设备之间的通信。

存储器162可以包括随机存取存储器162(Random Access Memory,简称RAM),也可以包括非易失性存储器162(non-volatile memory),例如至少一个磁盘存储器162。可选的,存储器162还可以是至少一个位于远离前述处理器164的存储装置。

上述的处理器164可以是通用处理器164,包括中央处理器164(CentralProcessing Unit,简称CPU)、网络处理器164(Network Processor,简称NP)等;还可以是数字信号处理器164(Digita lSigna lProcessing,简称DSP)、专用集成电路(ApplicationSpecific Integrated Circuit,简称ASIC)、现场可编程门阵列(Field-ProgrammableGate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

基于同一发明构思,本发明还提供了一种计算机可读存储介质,存储有计算机程序163,所述计算机程序163被处理器164执行时实现基于UVM的脉冲采集板/主控板系统验证方法。

该计算机可读存储介质可以是上述实施例中描述的设备/装置中所包含的;也可以是单独存在,而未装配入该设备/装置中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的基于UVM的脉冲采集板/主控板系统验证方法。

以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

相关技术
  • 一种基于LabVIEW的脉冲同步控制二维扫描和信号采集实现方法
  • 基于主控板倒换的数据处理方法、线卡及主控板
  • 基于主控板倒换的数据处理方法、线卡及主控板
技术分类

06120116624061