CN115694740B - Uvm验证平台系统和验证方法 - Google Patents
Uvm验证平台系统和验证方法 Download PDFInfo
- Publication number
- CN115694740B CN115694740B CN202211719836.8A CN202211719836A CN115694740B CN 115694740 B CN115694740 B CN 115694740B CN 202211719836 A CN202211719836 A CN 202211719836A CN 115694740 B CN115694740 B CN 115694740B
- Authority
- CN
- China
- Prior art keywords
- data frame
- component
- verification
- serial
- pcs
- 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
Links
- 238000012795 verification Methods 0.000 title claims abstract description 153
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000006243 chemical reaction Methods 0.000 claims abstract description 63
- 238000012545 processing Methods 0.000 claims abstract description 47
- 238000001514 detection method Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 8
- 238000013461 design Methods 0.000 claims description 8
- 239000000835 fiber Substances 0.000 claims description 8
- 230000006978 adaptation Effects 0.000 claims description 6
- 238000004891 communication Methods 0.000 claims description 6
- 238000012937 correction Methods 0.000 claims description 6
- 238000012549 training Methods 0.000 claims description 5
- 230000006870 function Effects 0.000 description 35
- 238000010586 diagram Methods 0.000 description 15
- 239000003795 chemical substances by application Substances 0.000 description 8
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000033772 system development Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Maintenance And Management Of Digital Transmission (AREA)
Abstract
本公开提出了一种UVM验证平台系统和验证方法。本公开的UVM验证平台系统,由配置管理组件根据需要验证的PCS模块的频点进行相应的时钟配置,由第一验证组件发出第一串行数据帧,由串并转换组件根据时钟配置进行串行转换,由DUT组件对第一串行数据帧进行环回处理,最终由第一验证组件将得到的第二串行数据帧与第一串行数据帧进行逐帧比对,以此实现对包括多个PCS模块的FC系统的验证。本公开适用于FC系统多PCS场景,使得多PCS下频点可以正常切换,适用于FC系统的速率自适应,数据可按照不同频点特征进行比对,保证验证功能的完整性和数据比对的正确性。解决了现有技术不适用于对多PCS的FC系统进行验证的技术难题。
Description
技术领域
本公开涉及验证平台技术领域,具体涉及一种UVM验证平台系统和验证方法。
背景技术
FC(Fiber Channel / Fibre Channel,光纤通道或网状信道)技术是一种能够为存储设备、IP数据网、音频流等应用提供高速数据传输的技术,由于其传输数据稳定,FC通讯协议广泛应用于航空航天领域。
在FC系统中,由于其支持多频点的特性,在系统开发中,复用频点并在此基础上添加新频点进行代码迭代的可能性很高。由于FC协议在不同频点下编码不同,加扰存在细微差异,功能方面高频点与低频点也有很大的差异,如training(训练),FEC(Forward ErrorCorrection,前向纠错)等功能,这些功能大多由系统中的PCS(Physical CodingSublayer,物理编码子层)模块实现,因此,若是在原基础上进行PCS的改动会对系统本身造成相对较大的风险,带来不必要的麻烦和资源浪费。
在原PCS的基础上叠加新的高频点PCS,可以使得系统结构相对清晰,并且高频点PCS可以单独验证,功能点不冲突,并且低频点PCS不需要在原本的验证基础上进行完全验证,这种系统的开发方式就会形成在一个系统中多个频点下PCS共同工作的系统,即多PCS系统。
基于这种多PCS的FC系统,UVM(Univerdal Verificarion Methodoloy,通用验证方法学)验证环境需要进行配合设计,以使得针对多PCS的FC系统的验证称为可能,并使验证更加简洁充分。
发明内容
本公开提出了一种UVM验证平台系统和验证方法,以实现对包括多个PCS模块的FC系统进行验证。
第一方面,本公开提供一种UVM验证平台系统,应用于验证包括多个物理编码子层PCS模块的光纤通道FC系统,所述UVM验证平台系统包括:配置管理组件,第一验证组件,串并转换组件,以及待测设计DUT组件;其中,
所述DUT组件,为包括多个PCS模块的FC系统,所述多个PCS模块工作于多个不同频点;一个PCS模块可以仅对应于一个频点,也可以对应于一个以上频点;
所述配置管理组件,用于进行系统配置及环境配置,包括根据需要验证的PCS模块的频点进行相应的时钟配置;
所述第一验证组件,用于发出第一串行数据帧到所述串并转换组件;
所述串并转换组件,用于按照相应的时钟配置对所述第一串行数据帧进行串并转换,将转换得到的第一并行数据帧输出到所述DUT组件;
所述DUT组件,用于对所述第一并行数据帧进行环回处理,包括:获取所述第一并行数据帧,按照系统配置选择相应频点下的PCS模块对所述第一并行数据帧进行处理,处理后的数据在出口处环回,再经由相应频点下的PCS模块处理,将处理后得到的第二并行数据帧输出到所述串并转换组件;
所述串并转换组件,还用于按照相应的时钟配置对所述第二并行数据帧进行并串转换,将转换得到的第二串行数据帧输出到所述第一验证组件;
所述第一验证组件,还用于将所述第一串行数据帧与所述第二串行数据帧进行逐帧比对,实现对所述DUT组件的验证。
在一些可选的实施方式中,所述的UVM验证平台系统还包括:第二验证组件;
所述第二验证组件,用于发出第三并行数据帧到所述DUT组件;
所述DUT组件,用于对所述第三并行数据帧进行环回处理,包括:获取所述第三并行数据帧,由相应频点下的PCS模块对所述第三并行数据帧进行处理,处理后的数据通过所述串并转换组件环回,再经由相应频点下的PCS模块处理,将处理后得到的第四并行数据帧输出到所述第二验证组件;
所述第二验证组件,还用于将所述第三并行数据帧与所述第四并行数据帧进行逐帧比对,实现对所述DUT组件的验证。
在一些可选的实施方式中,所述第一验证组件包括:
FC核心模块,用于生成并发出所述第一串行数据帧;
第一发送端监测器,用于对所述第一串行数据帧进行收包检测;
第一接收端监测器,用于对所述第二串行数据帧进行收包检测;
第一比对组件,用于将所述第一串行数据帧与所述第二串行数据帧进行逐帧比对,实现对所述DUT组件中PCS模块的验证。
在一些可选的实施方式中,所述第二验证组件包括:
FC数据包驱动器,用于生成并发出所述第三并行数据帧;
第二发送端监测器,用于对所述第三并行数据帧进行收包检测;
第二接收端监测器,用于对所述第四并行数据帧进行收包检测;
第二比对组件,用于将所述第三并行数据帧与所述第四并行数据帧进行逐帧比对,实现对所述DUT组件中PCS模块的验证。
在一些可选的实施方式中,所述的UVM验证平台系统还包括:缓存模块,位于所述DUT组件的出口处;所述PCS模块对所述第一并行数据帧进行处理后的数据,通过所述缓存模块进行环回,重新回到所述DUT组件。
在一些可选的实施方式中,所述DUT组件还包括:PCS选择模块,用于获取所述第一并行数据帧,根据系统配置的频点选择相应的PCS模块,将所述第一并行数据帧输入到所选择的PCS模块。
在一些可选的实施方式中,所述第一验证组件,还用于对所述第一串行数据帧的类型进行配置,并根据不同频点的速率选择时钟进行切换,以及,对所述第一串行数据帧的最大值和最小值进行约束,以及,根据FC协议内容配置决定是否进行加扰,是否开启前向纠错功能、训练功能和速率自适应功能中的至少一种。
第二方面,本公开提供一种基于UVM验证平台系统的验证方法,所述UVM验证平台系统包括:配置管理组件,第一验证组件,串并转换组件,以及待测设计DUT组件;所述DUT组件,为包括多个物理编码子层PCS模块的光纤通道FC系统,所述多个PCS模块工作于多个不同频点;所述方法包括:所述配置管理组件进行系统配置及环境配置,包括根据需要验证的PCS模块的频点进行相应的时钟配置;所述第一验证组件发出第一串行数据帧到所述串并转换组件;所述串并转换组件按照相应的时钟配置对所述第一串行数据帧进行串并转换,将转换得到的第一并行数据帧输出到所述DUT组件;所述DUT组件对所述第一并行数据帧进行环回处理,包括:获取所述第一并行数据帧,按照系统配置选择相应频点下的PCS模块对所述第一并行数据帧进行处理,处理后的数据在出口处环回,再经由相应频点下的PCS模块处理,将处理后得到的第二并行数据帧输出到所述串并转换组件;所述串并转换组件按照相应的时钟配置对所述第二并行数据帧进行并串转换,将转换得到的第二串行数据帧输出到所述第一验证组件;所述第一验证组件获取所述第二串行数据帧,通过将所述第一串行数据帧与所述第二串行数据帧进行逐帧比对,实现对所述DUT组件中PCS模块的验证。
第三方面,本公开提供一种计算机设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如第二方面提供的基于UVM验证平台系统的验证方法。
第四方面,本公开提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被一个或多个处理器执行时实现如第二方面提供的基于UVM验证平台系统的验证方法。
为了解决多PCS的FC系统的验证问题,本公开提出了一种UVM验证平台系统和验证方法。本公开的UVM验证平台系统,由配置管理组件根据需要验证的PCS模块的频点进行相应的时钟配置,由第一验证组件发包(发出第一串行数据帧),由串并转换组件根据时钟配置进行串行转换,由DUT(待测设计)组件对第一串行数据帧进行环回处理,再由串并转换组件将环回处理得到的数据转换为第二串行数据帧,再由第一验证组件将得到的第二串行数据帧与第一串行数据帧进行逐帧比对,以此实现对包括多个PCS模块的FC系统(DUT组件)的验证。
本公开的UVM验证平台系统,适用于FC系统多PCS场景,使得多PCS下频点可以正常切换,并且适用于FC系统的速率自适应,数据可以按照不同频点的特征进行比对,保证验证功能的完整性和数据比对的正确性。以此,解决了现有技术不适用于对多PCS的FC系统进行验证的技术难题。
本公开的UVM验证平台系统,适用于FC系统多PCS场景,可以针对不同的PCS进行速率适配,以完成FC系统低频点各项基础功能的验证和高频点涉及特殊功能的验证,并且适配多频点的速率自适应验证,并且可实现FC系统大流量下的自动比对,错误自动上报等。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本公开的其它特征、目的和优点将会变得更明显:
图1是根据本公开一实施例的UVM验证平台系统的结构图;
图2是根据本公开一实施例的UVM验证平台系统的系统架构图;
图3是根据本公开一实施例的DUT的系统框图;
图4是根据本公开一实施例的计算机设备的硬件组成结构示意图。
具体实施方式
下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
在本公开的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系,仅是为了便于描述本公开和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本公开的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本公开的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”等应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本公开中的具体含义。
在本公开的描述中,需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
本公开实施例的目的主要在于,提供一种UVM验证平台系统,实现对包括多个PCS模块的FC系统进行验证。本公开实施例的目的还在于,使得多PCS下频点可以正常切换,并且适用于FC系统的速率自适应,数据可以按照不同频点的特征进行比对,保证验证功能的完整性和数据比对的正确性。
参考图1至图3,图1是本公开一个实施例的UVM验证平台系统的结构图,图2示出了本公开一个实施例的UVM验证平台系统的详细的系统架构和数据流,图3是DUT(待测设计)的系统框图,DUT为需要验证的包括多个PCS模块的FC系统。
如图1所示,本公开实施例的UVM验证平台系统包括:配置管理组件10,第一验证组件20,串并转换组件30,DUT组件40;进一步的,还可以包括第二验证组件50。
其中,配置管理组件10可包括:
总线配置模块(ahb agent / axi agent),可用于进行ahb总线和axi总线以及相应寄存器的配置;硬件配置模块(hard_cfg),可用于进行硬件配置。配置管理组件10通过上述模块,可实现对整个系统进行系统配置及环境配置,包括根据需要验证的PCS模块的频点进行相应的时钟配置。PCS模块工作的频点不同,则信号速率不同,对应的时钟配置就不同,需要进行正确的时钟配置,才能确保对应的PCS模块对数据进行准确的编码处理。
第一验证组件20可以包括:FC核心模块(FC vip model),第一发送端监测器(txmonitor),第一接收端监测器(rx monitor),以及第一比对组件(Scoreboard 1)。其中,FC核心模块可以生成并发送串行数据帧到DUT组件40,以实现对DUT组件40进行验证。
串并转换组件(Serdes model)30可以包括:第一转换单元(Serdes Rx),可以将串行数据转换为并行数据后,输入到DUT组件40的接收端口;第二转换单元(Serdes Rx),可以将并行数据转换为串行数据后,输入到第一验证组件20。Serdes是英文SERializer(串行器)/DESerializer(解串器)的简称。
DUT组件40可以包括:接收端组件和发送端组件。接收端组件和发送端组件均包括:PCS单元,包括PCS选择(PCS SEL)模块和多个PCS模块,例如10/100GE/8G的PCS模块等;MAC(Media Access Control,数据链路层介质访问控制器)模块,以及交换适配模块(Adapter)。整个DUT组件40的核心部分可以由软件定义协议控制器件(SDPC)实现,例如可以由8端口(8 port)的SDPC实现。MAC模块用于实现数据链路层,主要负责控制与连接物理层。
第二验证组件50可以包括:FC数据包驱动器(FC packet drive),第二发送端监测器(FC packet tx monitor),第二接收端监测器(FC packet rx monitor),以及第二比对组件(Scoreboard 2)。其中,FC数据包驱动器可以生成并发送并行数据帧到DUT组件40,以实现对DUT组件40进行验证。
其中,可选的,串并转换组件30可以选择与DUT组件40集成到一起。
本公开实施例的UVM验证平台系统采用环回验证方法。验证的整体流程可以设置为一个从FC核心模块(FC vip model)发包到FC核心模块收包的PCS远端环回流程,还可以进一步设置一个从FC数据包驱动器(FC packet drive)发包到FC数据包驱动器收包的PCS近端环回流程。以下分别进行说明。
(一)PCS远端环回流程。
在PCS远端环回流程中,具体流程步骤如下:
步骤1:由配置管理组件10利用总线配置模块(ahb _agent/axi_agent)和硬件配置模块(hard_cfg)进行系统和环境的相应配置,由第一验证组件20中的FC核心模块生成串行数据帧,由第一发送端监测器(tx monitor)进行收包检测,串行数据帧发送至串并转换组件(Serdes model)30中进行串并转换。
步骤2:串行数据帧经过串并转换组件(Serdes model)30后并行输入到FC系统的PCS选择模块(PCS SEL)中,PCS选择模块会通过系统配置频点速率,选择相应的PCS模块对数据进行处理;PCS模块可以对数据进行编码处理,示例性的,可以进行 8B/10B编码处理,将数据以8比特为单位编码为10比特,或者反过来将数据以10比特为单位编码为8比特。
步骤3:PCS模块处理后的数据帧进入MAC模块,在MAC模块出口处环回,环回时由UVM验证环境中的缓存模块保证其数据时序的正确性;即,MAC模块出口处设有缓存模块,数据通过缓存模块进行环回。
步骤4:数据由缓存模块再经过MAC模块进入PCS模块进行处理,处理后的数据由串并转换组件(Serdes model)30进行并串转换,最终由第一接收端监测器(rx monitor)收集并回到FC核心模块中。其中,数据由tx和rx方向的监测器(monitor),即第一发送端监测器(tx monitor)和第一接收端监测器(rx monitor),收集并传给第一比对组件(Scoreboard1)进行比对,第一比对组件(Scoreboard 1)对数据进行逐帧比对,并可打印比对信息,实时监测系统链路各项功能是否正确,实现对DUT组件40的验证。
在PCS远端环回流程中,UVM验证平台系统中各组件实现功能如下:
配置管理组件10,用于进行系统配置及环境配置,包括根据需要验证的PCS模块的频点进行相应的时钟配置;
第一验证组件20,用于发出第一串行数据帧到串并转换组件30;
串并转换组件30,用于按照相应的时钟配置对第一串行数据帧进行串并转换,将转换得到的第一并行数据帧输出到DUT组件40;
DUT组件40,用于对第一并行数据帧进行环回处理,包括:获取第一并行数据帧,按照系统配置选择相应频点下的PCS模块对第一并行数据帧进行处理,处理后的数据在出口处环回,再经由相应频点下的PCS模块处理,将处理后得到的第二并行数据帧输出到串并转换组件30;其中,环回前后进行数据处理的PCS模块,可以是同一个PCS模块,也可以是同一频点下的不同的PCS模块;
串并转换组件30,还用于按照相应的时钟配置对第二并行数据帧进行并串转换,将转换得到的第二串行数据帧输出到第一验证组件20;
第一验证组件20,还用于获取第二串行数据帧,通过将第一串行数据帧与第二串行数据帧进行逐帧比对,实现对DUT组件40的验证。
其中,第一验证组件20中各个模块实现功能如下:
FC核心模块,用于生成并发出第一串行数据帧;
第一发送端监测器,用于对第一串行数据帧进行收包检测;
第一接收端监测器,用于对第二串行数据帧进行收包检测;
第一比对组件,用于将第一串行数据帧与第二串行数据帧进行逐帧比对,实现对DUT组件中PCS模块的验证。
其中,DUT组件40中的环回可以通过位于DUT组件的出口处缓存模块进行: PCS模块对第一并行数据帧进行处理得到的处理后的数据,通过缓存模块进行环回,重新回到DUT组件。
其中,DUT组件40获取的第一并行数据帧,可以首先进入PCS选择模块,由PCS选择模块根据系统配置的频点速率选择相应的PCS模块,再将第一并行数据帧输入到所选择的PCS模块。
在一些可选的实施方式中,第一验证组件20中的FC核心模块,还可用于对第一串行数据帧的类型进行配置,并根据不同频点的速率选择时钟进行切换,以及,对第一串行数据帧的最大值和最小值进行约束,以及,根据FC协议内容配置决定是否进行加扰,是否开启前向纠错功能、训练功能和速率自适应功能中的至少一种。
(二)PCS近端环回流程。
PCS近端环回流程则改为由FC数据包驱动器(FC packet drive)进行发包,tx,rx方向与PCS远端环回流程的发包流程相反。
在PCS远端环回流程中,具体流程步骤如下:
步骤1:由配置管理组件10利用总线配置模块(ahb _agent/axi_agent)和硬件配置模块(hard_cfg)进行系统和环境的相应配置,由第二验证组件50中的FC数据包驱动器(FC packet drive)生成并行数据帧,由第二发送端监测器(FC packet tx monitor)进行收包检测;
步骤2:并行数据帧输入到FC系统(即DUT组件40),由相应频点下的PCS模块对数据进行处理。
步骤3:PCS模块处理后的数据帧通过串并转换组件(Serdes model)30环回,重新回到DUT组件40。
步骤4:数据由进入相应频点下的PCS模块进行处理,最终由第二接收端监测器(FCpacket rx monitor)收集并回到FC数据包驱动器中。第二比对组件(Scoreboard 2)对发出及回来的数据进行逐帧比对,实时监测系统链路各项功能是否正确,实现对DUT组件40的验证。
在PCS近端环回流程中,UVM验证平台系统中各组件实现功能如下:
第二验证组件,用于发出第三并行数据帧到DUT组件;
DUT组件,用于对第三并行数据帧进行环回处理,包括:获取第三并行数据帧,由相应频点下的PCS模块对第三并行数据帧进行处理,处理后的数据通过串并转换组件环回,再经由相应频点下的PCS模块处理,将处理后得到的第四并行数据帧输出到第二验证组件;
第二验证组件,还用于获取第四并行数据帧,通过将第三并行数据帧与第四并行数据帧进行逐帧比对,实现对DUT组件的验证。
其中,第二验证组件50中各个模块实现功能如下:
FC数据包驱动器,用于生成并发出第三并行数据帧;
第二发送端监测器,用于对第三并行数据帧进行收包检测;
第二接收端监测器,用于对第四并行数据帧进行收包检测;
第二比对组件,用于将第三并行数据帧与第四并行数据帧进行逐帧比对,实现对DUT组件中PCS模块的验证。
在一些可选的实施方式中,第二验证组件50中的FC数据包驱动器,还可用于对第三并行数据帧的类型进行配置,并根据不同频点的速率选择时钟进行切换,以及,对第三并行数据帧的最大值和最小值的约束,以及,根据FC协议内容配置决定是否进行加扰,是否开启前向纠错功能、训练功能和速率自适应功能中的至少一种。
以上,对本公开实施例的UVM验证平台系统的结构组成及两种环回模式进行了说明。
本公开实施例中,FC核心模块(FC vip model)和FC数据包驱动器(FC packetdrive)为控制两种环回模式的发包组件,监测器(包括tx_monitor、rx_monitor、FC packettx monitor、FC packet rx monitor)是在链路发送数据和接收数据时对数据的收集组件,比对组件(包括Scoreboard 1和Scoreboard 2)是验证平台对链路的功能检测和数据比对组件,总线配置模块(ahb _agent/axi_agent)和硬件配置模块(Hard Cfg)是系统和环境中的配置管理组件。
其中,FC核心模块(FC vip model)和FC数据包驱动器(FC packet drive)可以进行各项发包配置和用户task(任务)的编写,根据系统需要包类型和需要验证的FC链路情况进行配置。FC协议涉及到的帧数据样式种类繁多,各种帧类型不同,还包括拥有扩展帧头的非基础帧,通过配置,验证环境可以根据不同频点的速率选择时钟进行切换,保证多PCS应用场景下的发包功能,同时,环境支持FC协议中的ClassII,ClassIII和ClassF类型帧发送,支持1553B和ASM FC协议类型,支持扩展帧头VFT、ENC、ENC+IFR、ENC+IFR+VFT帧发送和识别,环境中packet(数据包)对帧数据有最大和最小值的约束,以保证发送帧的正确性,在用户配置失误的情况下也可以发送符合要求的帧数据。针对多PCS,环境可以按照FC协议内容配置帧数据是否进行加扰,是否开启FEC功能、Training功能、速率自适应等功能,最大程度上完备FC各频点下的功能验证情况。
监测器(Monitor)对tx、rx方向的数据进行逐帧收集,比对组件(Scoreboard)对数据帧进行比对保证比对的时效性和正确性。Scoreboard在数据比对时对每一帧tx方向的发送包和rx方向的接收包进行比对,如若出现数据不一致的情况会在缓存中存储相应的异常数据并且上报UVM_ERROR,由于FC数据帧不会出现后发先出的情况,因此不需要考虑时序上的限制,逐帧比较即可满足比对条件。可选的,验证环境可以在testbench(验证平台)顶层集成白盒验证的断言,对FC链路中各个状态机状态和跳转情况进行检测,在发生异常跳转或者状态机进行异常状态超时的时候进行告警。
本公开的UVM验证环境有着稳定,功能全面,比对及时且反馈数据内容详细等特点,在验证过程中,可以及时清晰的发现系统问题进行反馈,并且通过时钟配置和serdes模块的配合可以针对FC多PCS系统进行检测且实现时钟自动调整的速率自适应检测,在不同FC频点用不同PCS进行数据传输的情况下,本公开将极大程度上方便验证,减少验证人员的工作冗余性和工作复杂程度。
本公开实施例的UVM验证平台系统,针对FC多PCS系统,功能全面,支持数据类型相对全面,可以根据不同频点调整时钟配置,并且是用环回方式进行检测,不用考虑除去FC系统之外的干扰因素,因此拥有很强的可复用性,针对不同的FC系统进行接口修改即可复用。
本公开的技术关键点包括:
1、UVM验证环境中串并转换组件(serdes)的加入以及时钟的可配置选择让针对多PCS系统的验证成为可能。
2、UVM验证环境的环回验证配置以及在环回时加入缓存模块使得整个环境的稳定性更强,验证内容不受除FC系统之外的其他外界条件干扰。
3、FC核心模块(FC vip model)和FC数据包驱动器(FC packet drive)限制条件的加入使得环境能够验证FC多PCS系统多种功能,支持多种帧类型的验证,并且由于针对各类型帧防误用的限制条件的加入使得使用者不容易因为误操作导致验证结果失效,在增加验证正确性的同时使得验证环境拥有可复用性。
本公开实施例的UVM验证平台系统,具有以下优点:
1.验证系统可以针对FC多PCS系统进行不同的时钟配置和串并转换组件(serdes)配置,从而对不同频点下不同PCS下的FC系统进行有效的验证,应用广泛,受限条件相对较少;
2.验证系统在FC vip model和FC packet drive中加入各种task和防差错限制,支持多种FC协议的帧类型和各项使能配置,可验证内容全面,且不会因为用户的误操作而出现不期望的发包错误,环境鲁棒性整体较高。
3.采用环回验证的方式,比对组件(scoreboard)中比对信息实时、全面,且可以在testbench中加入断言以判断各种状态机的状态和正确跳转,有效的排除FC系统外的干扰和不确定性,有效提高验证的准确性、时效性和稳定性;
4.应用到其他FC系统时,环境只需要适应性修改系统接口即可使用,具有复用性强的特点。
本公开一个实施例还提供一种基于UVM验证平台系统的验证方法。其中,UVM验证平台系统包括:配置管理组件,第一验证组件,串并转换组件,以及待测设计DUT组件;DUT组件,为包括多个物理编码子层PCS模块的光纤通道FC系统,多个PCS模块分别工作于多个不同频点。方法包括:
步骤301、配置管理组件10进行系统配置及环境配置,包括:根据需要验证的PCS模块的频点进行相应的时钟配置;
步骤302、第一验证组件20发出第一串行数据帧到串并转换组件;
步骤303、串并转换组件30相应的时钟配置对第一串行数据帧进行串并转换,将转换得到的第一并行数据帧输出到DUT组件40;
步骤304、DUT组件40对第一并行数据帧进行环回处理,包括:获取第一并行数据帧,按照系统配置选择相应频点下的PCS模块对第一并行数据帧进行处理,处理后的数据在出口处环回,再经由相应频点下的PCS模块处理,将处理后得到的第二并行数据帧输出到串并转换组件30;
步骤305、串并转换组件30按照相应的时钟配置对第二并行数据帧进行并串转换,将转换得到的第二串行数据帧输出到第一验证组件20;
步骤306、第一验证组件20获取第二串行数据帧,通过将第一串行数据帧与第二串行数据帧进行逐帧比对,实现对DUT组件的验证。
在一些可选的实施方式中,上述方法还可以包括:
步骤307、第二验证组件50发出第三并行数据帧到DUT组件40;
步骤308、DUT组件40对第三并行数据帧进行环回处理,包括:获取第三并行数据帧,由相应频点下的PCS模块对第三并行数据帧进行处理,处理后的数据通过串并转换组件30环回,再经由相应频点下的PCS模块处理,将处理后得到的第四并行数据帧输出到第二验证组件50;
步骤309、第二验证组件50将第三并行数据帧与第四并行数据帧进行逐帧比对,实现对DUT组件的验证。
参考图4,图4是根据本公开的计算机设备的一个实施例的结构示意图。如图4所示,本公开的计算机设备400可包括:
一个或多个处理器401;
存储器402,其上存储有一个或多个程序403;
处理器401和存储器402等组件可通过总线系统404耦合在一起;总线系统404用于实现这些组件之间的连接通信;
当一个或多个程序403被一个或多个处理器401执行时,使得一个或多个处理器401实现如上文方法实施例中所公开的验证方法。
其中,总线系统404除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线。存储器402可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。处理器401可能是具有信号处理能力的集成电路芯片,可以是通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
本公开实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被一个或多个处理器执行时实现如上文方法实施例中所公开的验证方法。
本公开是参照根据本公开实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
应理解,本公开中术语“系统”和“网络”在本文中常被可互换使用。本公开中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
以上,通过具体实施例对本公开的技术方案进行了详细说明。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其它实施例的相关描述。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种UVM验证平台系统,其特征在于,应用于验证包括多个物理编码子层PCS模块的光纤通道FC系统,所述UVM验证平台系统包括:配置管理组件,第一验证组件,串并转换组件,以及待测设计DUT组件;其中,
所述DUT组件,为包括多个PCS模块的FC系统,所述多个PCS模块工作于多个不同频点;
所述配置管理组件,用于进行系统配置及环境配置,包括根据需要验证的PCS模块的频点进行相应的时钟配置;
所述第一验证组件,用于发出第一串行数据帧到所述串并转换组件;
所述串并转换组件,用于按照相应的时钟配置对所述第一串行数据帧进行串并转换,将转换得到的第一并行数据帧输出到所述DUT组件;
所述DUT组件,用于对所述第一并行数据帧进行环回处理,包括:获取所述第一并行数据帧,按照系统配置选择相应频点下的PCS模块对所述第一并行数据帧进行处理,处理后的数据在出口处环回,再经由相应频点下的PCS模块处理,将处理后得到的第二并行数据帧输出到所述串并转换组件;
所述串并转换组件,还用于按照相应的时钟配置对所述第二并行数据帧进行并串转换,将转换得到的第二串行数据帧输出到所述第一验证组件;
所述第一验证组件,还用于将所述第一串行数据帧与所述第二串行数据帧进行逐帧比对,实现对所述DUT组件的验证。
2.根据权利要求1所述的UVM验证平台系统,其特征在于,还包括:第二验证组件;
所述第二验证组件,用于发出第三并行数据帧到所述DUT组件;
所述DUT组件,用于对所述第三并行数据帧进行环回处理,包括:获取所述第三并行数据帧,由相应频点下的PCS模块对所述第三并行数据帧进行处理,处理后的数据通过所述串并转换组件环回,再经由相应频点下的PCS模块处理,将处理后得到的第四并行数据帧输出到所述第二验证组件;
所述第二验证组件,还用于将所述第三并行数据帧与所述第四并行数据帧进行逐帧比对,实现对所述DUT组件的验证。
3.根据权利要求1所述的UVM验证平台系统,其特征在于,所述第一验证组件包括:
FC核心模块,用于生成并发出所述第一串行数据帧;
第一发送端监测器,用于对所述第一串行数据帧进行收包检测;
第一接收端监测器,用于对所述第二串行数据帧进行收包检测;
第一比对组件,用于将所述第一串行数据帧与所述第二串行数据帧进行逐帧比对,实现对所述DUT组件中PCS模块的验证。
4.根据权利要求2所述的UVM验证平台系统,其特征在于,所述第二验证组件包括:
FC数据包驱动器,用于生成并发出所述第三并行数据帧;
第二发送端监测器,用于对所述第三并行数据帧进行收包检测;
第二接收端监测器,用于对所述第四并行数据帧进行收包检测;
第二比对组件,用于将所述第三并行数据帧与所述第四并行数据帧进行逐帧比对,实现对所述DUT组件中PCS模块的验证。
5.根据权利要求1所述的UVM验证平台系统,其特征在于,还包括:缓存模块,位于所述DUT组件的出口处;所述PCS模块对所述第一并行数据帧进行处理后的数据,通过所述缓存模块进行环回,重新回到所述DUT组件。
6.根据权利要求1所述的UVM验证平台系统,其特征在于,所述DUT组件还包括:PCS选择模块,用于获取所述第一并行数据帧,根据系统配置的频点选择相应的PCS模块,将所述第一并行数据帧输入到所选择的PCS模块。
7.根据权利要求1所述的UVM验证平台系统,其特征在于,所述第一验证组件,还用于对所述第一串行数据帧的类型进行配置,并根据不同频点的速率选择时钟进行切换,以及,对所述第一串行数据帧的最大值和最小值进行约束,以及,根据FC协议内容配置决定是否进行加扰,是否开启前向纠错功能、训练功能和速率自适应功能中的至少一种。
8.一种基于UVM验证平台系统的验证方法,其特征在于,所述UVM验证平台系统包括:配置管理组件,第一验证组件,串并转换组件,以及待测设计DUT组件;所述DUT组件,为包括多个物理编码子层PCS模块的光纤通道FC系统,多个PCS模块工作于多个不同频点;所述方法包括:
所述配置管理组件进行系统配置及环境配置,包括根据需要验证的PCS模块的频点进行相应的时钟配置;
所述第一验证组件发出第一串行数据帧到所述串并转换组件;
所述串并转换组件按照相应的时钟配置对所述第一串行数据帧进行串并转换,将转换得到的第一并行数据帧输出到所述DUT组件;
所述DUT组件对所述第一并行数据帧进行环回处理,包括:获取所述第一并行数据帧,按照系统配置选择相应频点下的PCS模块对所述第一并行数据帧进行处理,处理后的数据在出口处环回,再经由相应频点下的PCS模块处理,将处理后得到的第二并行数据帧输出到所述串并转换组件;
所述串并转换组件按照相应的时钟配置对所述第二并行数据帧进行并串转换,将转换得到的第二串行数据帧输出到所述第一验证组件;
所述第一验证组件获取所述第二串行数据帧,通过将所述第一串行数据帧与所述第二串行数据帧进行逐帧比对,实现对所述DUT组件中PCS模块的验证。
9.一种计算机设备,其特征在于,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求8所述的基于UVM验证平台系统的验证方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被一个或多个处理器执行时实现如权利要求8所述的基于UVM验证平台系统的验证方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211719836.8A CN115694740B (zh) | 2022-12-30 | 2022-12-30 | Uvm验证平台系统和验证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211719836.8A CN115694740B (zh) | 2022-12-30 | 2022-12-30 | Uvm验证平台系统和验证方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115694740A CN115694740A (zh) | 2023-02-03 |
CN115694740B true CN115694740B (zh) | 2023-03-10 |
Family
ID=85057082
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211719836.8A Active CN115694740B (zh) | 2022-12-30 | 2022-12-30 | Uvm验证平台系统和验证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115694740B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102201799A (zh) * | 2011-05-11 | 2011-09-28 | 深圳市华普特科技有限公司 | 多载频/多频带选频的实现方法及电路 |
CN104393610A (zh) * | 2014-10-10 | 2015-03-04 | 许继电气股份有限公司 | 一种pcs系统和装置 |
CN105354160A (zh) * | 2015-10-09 | 2016-02-24 | 中国科学院上海高等研究院 | 一种速率可配式fpga片间通信的连接方法及系统 |
CN114465934A (zh) * | 2022-02-10 | 2022-05-10 | 芯河半导体科技(无锡)有限公司 | 一种多速率灵活可配以太网接口验证方法 |
CN114745071A (zh) * | 2022-04-13 | 2022-07-12 | 芯河半导体科技(无锡)有限公司 | 一种基于uvm的高精度时戳验证方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7406118B2 (en) * | 2003-09-11 | 2008-07-29 | Xilinx, Inc. | Programmable logic device including programmable multi-gigabit transceivers |
-
2022
- 2022-12-30 CN CN202211719836.8A patent/CN115694740B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102201799A (zh) * | 2011-05-11 | 2011-09-28 | 深圳市华普特科技有限公司 | 多载频/多频带选频的实现方法及电路 |
CN104393610A (zh) * | 2014-10-10 | 2015-03-04 | 许继电气股份有限公司 | 一种pcs系统和装置 |
CN105354160A (zh) * | 2015-10-09 | 2016-02-24 | 中国科学院上海高等研究院 | 一种速率可配式fpga片间通信的连接方法及系统 |
CN114465934A (zh) * | 2022-02-10 | 2022-05-10 | 芯河半导体科技(无锡)有限公司 | 一种多速率灵活可配以太网接口验证方法 |
CN114745071A (zh) * | 2022-04-13 | 2022-07-12 | 芯河半导体科技(无锡)有限公司 | 一种基于uvm的高精度时戳验证方法 |
Non-Patent Citations (1)
Title |
---|
陶涛.一种处理器直连接口PCS接收逻辑的设计与验证.全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN115694740A (zh) | 2023-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2017012517A1 (zh) | 混合物理编码子层以及数据发送、接收方法、存储介质 | |
TWI535251B (zh) | 低延遲聯網方法及系統 | |
CN111984477B (zh) | 一种PCIe设备信号参数动态校正装置和方法 | |
US11323179B2 (en) | Testing method for optical communication module, and test device | |
CN1809176B (zh) | 基于数字配线架的对线方法及其对线装置 | |
US7986884B2 (en) | Optical network test access point device | |
CN115694740B (zh) | Uvm验证平台系统和验证方法 | |
CN109815073B (zh) | 一种基于pxi平台的高速串口srio的测试方法 | |
US7546518B2 (en) | Received data compensating device | |
CN111682966B (zh) | 带故障主动报告功能的网络通信装置,系统及其方法 | |
CN101355589B (zh) | 以太网设备、以太网通信系统、及以太网设备的配置方法 | |
CN115334485B (zh) | 蓝牙设备的测试装置和蓝牙测试系统 | |
CN101826998B (zh) | 实现交换网片全交换功能测试的方法及交换网片 | |
CN113726425B (zh) | 一种有线通信方法、装置、设备及可读存储介质 | |
CN115842871A (zh) | 一种基于多型phy芯片的网口通信桥接及管理的方法 | |
CN115842588A (zh) | 一种信号传输方法、装置及存储介质 | |
CN112350785B (zh) | 一种检验serdes通信链路性能的方法及系统 | |
CN112925684B (zh) | 建链逻辑的测试方法及相关设备 | |
JP3997106B2 (ja) | データ伝送速度調停方法および光通信装置 | |
KR100650588B1 (ko) | 기지국의 보드간 고속 데이터 전송 패스 검증 장치 및 방법 | |
WO2012071925A1 (zh) | 单板通信系统及其通信方法 | |
US6819830B2 (en) | System and method for communicating data in a network using backchannel signaling | |
CN115396382B (zh) | 网络装置的操作方法及网络装置的控制芯片 | |
RU2269154C1 (ru) | Мультиплексор телекоммуникационный многофункциональный | |
CN112511271A (zh) | 一种以太接口前向纠错模式自动选择方法、芯片及设备 |
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 |