CN115130406B - 基于uvm的fc协议验证平台装置及方法 - Google Patents

基于uvm的fc协议验证平台装置及方法 Download PDF

Info

Publication number
CN115130406B
CN115130406B CN202211063844.1A CN202211063844A CN115130406B CN 115130406 B CN115130406 B CN 115130406B CN 202211063844 A CN202211063844 A CN 202211063844A CN 115130406 B CN115130406 B CN 115130406B
Authority
CN
China
Prior art keywords
layer
data
link layer
protocol
link
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
CN202211063844.1A
Other languages
English (en)
Other versions
CN115130406A (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.)
Jingxin Microelectronics Technology Tianjin Co Ltd
Original Assignee
Jingxin Microelectronics Technology Tianjin 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 Jingxin Microelectronics Technology Tianjin Co Ltd filed Critical Jingxin Microelectronics Technology Tianjin Co Ltd
Priority to CN202211063844.1A priority Critical patent/CN115130406B/zh
Publication of CN115130406A publication Critical patent/CN115130406A/zh
Application granted granted Critical
Publication of CN115130406B publication Critical patent/CN115130406B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3676Test management for coverage analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Quality & Reliability (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)

Abstract

本公开提出了一种基于UVM的FC协议验证平台装置及方法。本公开通过将各个协议层从信号级连接方式改进为事务连接方式,从传输层到链路层以事务数据包的方式传递数据,并且,通过添加覆盖率模块来分析覆盖率,方便加大数据结构随机化,构造出复杂测试场景,加速芯片验证收敛速度,便于验证平台装置以覆盖率为驱动进行科学验证。

Description

基于UVM的FC协议验证平台装置及方法
技术领域
本公开涉及芯片测试技术领域,具体涉及一种基于UVM(Univerdal VerificarionMethodoloy,通用验证方法学)的FC(Fibre Channel,光纤通道)协议验证平台装置及方法。
背景技术
近年来,越来越多验证IP(VIP,Verificatioin Intellectual Properties)在芯片开发流程中使用,极大提高芯片开发效率。
以光纤通道(FC,Fibre Channel)协议验证IP为例,验证IP已经提供层次化协议模型、用户可配置的协议参数、层次化协议检查以及层次化的激励函数等内容,极大方便验证者对于FC协议芯片的验证。
目前的FC验证IP,例如现有的光纤通道系统验证组件(Fibre Channel systemVerification Component),通常是以verilog task(verilog是一种硬件描述语言,verilog task是指verilog任务)构成FC 协议层次结构,各个协议层通过信号进行连接,上层协议数据结构随机化不灵活。
发明内容
本公开提出了一种基于UVM的FC协议验证平台装置及方法。
第一方面,本公开提供一种基于UVM的FC协议验证平台装置,所述FC协议包括传输层、链路层和物理层,所述基于UVM的FC协议验证平台装置包括:序列器,部署于所述传输层,被配置成以事务为单位向所述链路层发送数据包;驱动器,部署于所述链路层,被配置成接收所述数据包,将所述数据包转换成信号级的数据流,驱动到所述物理层的发送端口;监测器,包括链路层监测器和传输层监测器,所述链路层监测器被配置成监测所述物理层的接收端口,所述传输层监测器被配置成监测所述链路层监测器;覆盖率模块,包括链路层覆盖率模块和传输层覆盖率模块,所述链路层覆盖率模块被配置成采样所述链路层监测器监测的数据,分析所述链路层的覆盖率;所述传输层覆盖率模块被配置成采样所述传输层监测器监测的数据,分析所述传输层的覆盖率。
在一些可选的实施方式中,所述基于UVM的FC协议验证平台装置进一步包括:转换模块,部署于所述传输层,被配置成将所述序列器发出的以事务为单位的数据包,从传输层数据转换为链路层数据,然后发送给所述驱动器。
在一些可选的实施方式中,所述基于UVM的FC协议验证平台装置进一步包括总线功能模型BFM单元,所述BFM单元包括:传输层BFM单元,被配置成将所述传输层监测器监测的数据转换为FC协议传输层行为级的数据,发送给所述转换模块;链路层BFM单元,被配置成将所述链路层监测器监测的数据转换为FC协议链路层行为级的数据,根据该数据控制所述驱动器。
在一些可选的实施方式中,所述转换模块,进一步被配置成将所述FC协议传输层行为级的数据转换成为链路层数据,然后发送给所述驱动器。
第二方面,本公开提供一种FC协议芯片的验证方法,所述方法采用如第一方面所述的基于UVM的FC协议验证平台装置,所述FC协议包括传输层、链路层和物理层,所述验证平台装置包括:部署于所述传输层的序列器、部署于所述链路层的驱动器、监测器和覆盖率模块,所述监测器包括链路层监测器和传输层监测器,所述覆盖率模块包括链路层覆盖率模块和传输层覆盖率模块;所述方法包括:所述序列器以事务为单位向所述链路层发送数据包;所述驱动器接收所述数据包,将所述数据包转换成信号级的数据流,驱动到所述物理层的发送端口;所述链路层监测器监测所述物理层的接收端口;所述链路层覆盖率模块采样所述链路层监测器监测的数据,分析所述链路层的覆盖率;所述传输层监测器监测所述链路层监测器;所述传输层覆盖率模块采样所述传输层监测器监测的数据,分析所述传输层的覆盖率。
在一些可选的实施方式中,所述验证平台装置进一步包括部署于所述传输层的转换模块,所述方法进一步包括:所述转换模块将所述序列器发出的以事务为单位的数据包,从传输层数据转换为链路层数据,然后发送给所述驱动器。
在一些可选的实施方式中,所述基于UVM的FC协议验证平台装置进一步包括总线功能模型BFM单元,所述BFM单元包括传输层BFM单元和链路层BFM单元;所述方法进一步包括:所述传输层BFM单元将所述传输层监测器监测的数据转换为FC协议传输层行为级的数据,发送给所述转换模块;所述链路层BFM单元将所述链路层监测器监测的数据转换为FC协议链路层行为级的数据,根据该数据控制所述驱动器。
在一些可选的实施方式中,所述方法进一步包括:所述转换模块将所述FC协议传输层行为级的数据转换成为链路层数据,然后发送给所述驱动器。
第三方面,本公开提供一种计算机设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如第二方面所述的FC协议芯片的验证方法。
第四方面,本公开提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被一个或多个处理器执行时实现如第四方面所述的FC协议芯片的验证方法。
为了解决现有的FC验证IP存在各个协议层通过信号进行连接,上层协议数据结构随机化不灵活等问题,本公开提出了一种基于UVM的FC协议验证平台装置及方法。本公开通过将各个协议层从信号级连接方式改进为事务(transaction)连接方式,从传输层到链路层以事务数据包的方式传递数据,并且,通过添加覆盖率模块来分析覆盖率,方便加大数据结构随机化,构造出复杂测试场景,加速芯片验证收敛速度,便于验证平台装置以覆盖率为驱动进行科学验证。
现有的FC验证IP存在的上述问题,在本公开的基于UVM的FC协议验证平台装置中可以很好的得到解决。本公开的验证平台装置,是由覆盖率驱动的验证平台装置,随机化的数据激励让验证者可以摆脱大量构造直接用例负担,从而验证者更加专注于特殊测试场景的构造;各协议层以事务(transaction)为单位进行数据的传递,可以加速仿真器的仿真速度,同时,验证平台装置在可重用性、可移植性、随机化性以及覆盖率驱动验证特性方面也具有巨大的优势。
本公开能够以覆盖率为驱动进行FC协议芯片的设计与开发,对比直接测试用例,减少大量重复直接测试用例开发,从而加速协议层设计功能收敛;通过改变测试平台装置的参数或者改变随机化种子,可以更快达到验证目标;对比以时钟驱动下,信号级数据在协议层间传递,以事务的方式进行数据交互,加速仿真时间,协议行为可读性、重用性都变得较好。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本公开的其它特征、目的和优点将会变得更明显:
图1是根据本公开一实施例的基于UVM的FC协议验证平台装置的结构示意图;
图2是根据本公开一实施例的FC协议芯片的验证方法的流程示意图;
图3是根据本公开一实施例的计算机设备的硬件组成结构示意图。
具体实施方式
下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
在本公开的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系,仅是为了便于描述本公开和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本公开的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本公开的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”等应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本公开中的具体含义。
在本公开的描述中,需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
参考图1,图1是根据本公开的一种基于UVM的FC协议验证平台装置(本文简称验证平台装置)100的一个实施例的结构示意图。如图1所示,FC协议包括以下多个协议层:传输层(transport layer)、链路层(link layer)与物理层(physical layer),本公开的验证平台装置100可包括:
序列器(sequencer)101,部署于传输层,可称为传输层序列器(trans_sqr);
驱动器(driver)102,部署于链路层,可称为链路层驱动器(Link_driver);
发送(Tx)端口103和接收(Rx)端口104,部署于物理层,这两个端口均可以采用串行解串器(serdes)实现,即,发送端口103可以为Tx serdes,接收端口104可以为Rxserdes;
监测器(monitor),包括部署于链路层的链路层监测器(Link_ monitor)105和部署于传输层的传输层监测器(Link2trans_ monitor)106;
覆盖率模块,包括部署于链路层的链路层覆盖率模块(Link_cover)107和部署于传输层的传输层覆盖率模块(trans_ cover)108;以及
总线功能模型(BFM,Bus Functional Model)单元,包括部署于链路层的链路层BFM(link layer BFM)单元109和部署于传输层的传输层BFM(transport layer BFM)单元110。
其中,序列器101被配置成以事务为单位向链路层发送数据包;
驱动器102被配置成接收传输层的序列器发送的数据包,将接收的数据包转换成信号级的数据流,驱动到物理层的发送端口103;
监测器被配置成监测数据,其中,链路层监测器105被配置成监测物理层的接收端口104,传输层监测器106被配置成监测链路层监测器105;
覆盖率模块被配置成通过采样监测器监测的数据,分析覆盖率;其中,链路层覆盖率模块107被配置成采样链路层监测器105监测的数据,分析链路层的覆盖率;传输层覆盖率模块108被配置成采样传输层监测器106监测的数据,分析传输层的覆盖率。这里所说的覆盖率是指代码覆盖率(Code coverage),它是软件测试中的一种度量,描述程序中源代码被测试的比例和程度,所得比例称为代码覆盖率。
在一些可选的实施方式中,本公开的验证平台装置100可进一步包括:转换模块111,部署于传输层,被配置成将序列器发出的以事务为单位的数据包,从传输层数据转换为链路层数据,然后发送给驱动器。转换模块用于实现从传输层到链路层的转换,可用trans_to_link_seq(传输层到链路层序列)表示。
在一些可选的实施方式中,总线功能模型(BFM)单元,被配置成将监测器监测的数据转换为协议层行为级的数据,用来控制或影响驱动器;其中,
传输层BFM单元110,被配置成将传输层监测器106监测的数据转换为FC协议传输层行为级的数据,发送给转换模块111;
链路层BFM单元109,被配置成将链路层监测器105监测的数据转换为FC协议链路层行为级的数据,根据该数据控制驱动器102。
在一些可选的实施方式中,转换模块111进一步被配置成将FC协议传输层行为级的数据转换成为链路层数据,然后发送给驱动器102。驱动器102接受传输层BFM单元110和链路层BFM单元109的共同控制或者说影响。
本公开的验证平台装置100能够用来验证FC协议芯片,在验证时,本公开的验证平台装置100既可以作为发送端,用来验证作为接收端的被测芯片;也可以作为接收端,用来验证作为发送端的被测芯片。在验证时,本公开的验证平台装置100和被测芯片均挂载在总线上,通过总线通信。可选的,本公开中的总线例如可以采用高速通道线。
下面以作为发送端为例,对本公开的验证平台装置作进一步详细说明。
本公开验证平台装置的一个主要特征是,传输层从上层协议中以事务(transaction)为单位进行数据发送。Transaction的传输单位为帧,相对于以比特为传输单位的信号,有助于加速仿真速度,加大数据结构随机化。
本公开的验证平台装置基于UVM,在UVM验证平台装置结构中,通过构建并运行序列(sequence),最终实现对被测芯片的验证。序列(sequence)在传输层被构建,又可称为传输层序列(trans_ sequence,简称trans_seq)。序列(sequence)通常用于创建事务,产生数据包形式的传输层事务(transaction),即事务数据包。事务数据包包含在序列中被加载到序列器(sequencer),在序列器启动,然后传递给驱动器(driver),最终转换为信号级的数据流驱动到物理层发送端口(Tx serdes),用来驱动被测芯片。
本公开中,传输层序列(trans_seq)可以在例化之后,通过调用启动任务(starttask),把传输层事务(即事务数据包)加载在序列器上进行发送。
在UVM验证平台装置结构中,序列器(sequencer)与驱动器(driver)通过TLM(transaction level modeling,事务级建模)进行数据包的传递。本公开的验证平台装置在传输层与链路层也模拟这种类似传递机制,由于传输层和链路层的数据格式不同,传输层可以进一步设有转换模块,以实现数据格式的转换。该转换模块用于实现从传输层序列(trans_seq)到链路层序列(link_seq)的转换,可称为trans_to_link_seq(传输层到链路层序列)转换模块。传输层的事务(transaction)数据包可以在trans_to_link_seq转换模块中转换为链路层的事务(transaction)数据包之后,通过与链路层的接口传递到链路层。
可选的,可以在trans_to_link_seq)转换模块中定义以传输层transaction(事务)为参数类型的sequencer(up_sequencer,上序列器),同时在transport_layercomponent(传输层组件)的run_phase(运行阶段)把传输层sequencer(trans_sqr,传输层序列器)同trans_to_link_seq转换模块中的up_sequencer相连接,这样在trans_to_link_seq中up_sequencer就可以调用get_next_item(获取下一个项目)得到传输层transaction(transport_trans,传输层事务)。这里,在转换模块中定义的up_sequencer,可以理解成是一个链路层序列器(link_sqr)或者是一个传输层到链路层的接口。
传输层的行为级类,即传输层BFM(trans_bfm),主要用于把传输层监测器(trans_monitor)监测到的数据转换为FC协议传输层行为级的数据,主要涉及FC传输层端口状态机状态跳转、原语序列与原语信号生成行为等。
传输层转换模块(trans_to_link_seq)中的transport_item_convert_link_itemtask(传输层项目转换链路层项目任务)的输入参数除了包括传输层transaction(transport_trans,传输层事务)之外,还可以包括传输层的行为级类(即传输层行为级的数据),它可以同时把传输层事务数据包与传输层行为级的数据转换为链路层的数据link_trans(链路层事务)发送给链路层驱动器。
链路层驱动器(link_driver)主要用于把接收到的链路层事务(link_trans)数据包转换为例如8b/10b编码的信号级的数据流,然后驱动到物理层的发送端口(Tx serdes)。
链路层BFM(Link_bfm)主要用于实现把链路层监测器(link_monitor)监测到的数据转换为FC链路层行为级的数据,这里主要涉及FC链路层传输字同步状态机状态跳转、失同步状态生成行为等。链路层BFM中的link_item_convert_phy_item task(链路层项目转换物理层项目任务),可根据输入链路层行为级的行为进行链路层数据发送与终止,即,控制驱动器(link_driver)是否发送数据。 可选的,驱动器(link_driver)是否发送数据还受到它从转换模块收到的传输层行为级的数据的影响或控制。
发送端口(Tx serdes),用于根据配置的速率把接收到的并行数据转换为bit(位,比特)数据流输出到高速通道线。
接收端口(Rx serdes):用于从高速通道线中恢复出时钟和并行数据。接收端口接收的数据包括被测芯片响应的数据。
链路层监测器(link_monitor)主要用于监测物理层接收端口(Rx serdes),实现把RX serdes端口的并行数据通过8b/10b解码还原出链路层数据以及链路层行为。link_monitor 中的第一收集模块(collect_link_trans)接收Rx serdes端口的数据,再经过8b/10b解码输出链路层数据link_trans(链路层事务)。link_monitor 中的ap为link_trans类型的port端口,可调用write函数广播link_trans(链路层事务)。同理collect_link_trans还会输出链路层状态类link_status(链路层状态数据)。link_monitor 中的第二收集模块(collect_status)为link_status类型的port端口,可调用write函数广播link_status。
链路层BFM(Link_bfm)可以从link_monitor(监测器)得到链路层状态数据link_status,解析链路层状态,从而影响link_driver(驱动器)驱动数据,例如控制驱动器(link_driver)是否发送数据。
本公开验证平台装置的另一个主要特征是引入覆盖率。
UVM验证平台装置的优点是采用以覆盖率为驱动的验证方法,利用随机化数据结构和仿真资源,大量进行仿真测试,以达到覆盖测试单元的主要功能点。在链路层的覆盖率类(function_coverage,func_cover),即,链路层覆盖率模块(Link_cover,cover是coverage的简写),可以衡量测试单元功能是否被测试充分,它的实现过程为:func_cov通过采样link_status数据分析链路层状态机跳转覆盖率(即状态机覆盖率);func_cov采样link_trans数据统计分析8b/10b编解码码表数据覆盖率(即功能覆盖率)等等功能。分析计算得到的覆盖率可作为开发测试用例、构建测试序列的参考依据。
链路层监测器(Link_ monitor)与传输层监测器(Link2trans_ monitor)的通信连接是在link_layer 的connect_phase(连接阶段)中实现,link_monitor中ap的port端口可通过调用connect函数连接到Link2trans_monitor的expert端口。
链路层监测器(link_monitor)中的ap为link_trans类型的port端口,调用write函数广播link_trans到link2trans_monitor的export端口。
传输层监测器(link2trans_monitor)调用link2trans函数把链路层link_trans转换到传输层transport_trans与传输层状态行为transport_status。传输层监测器的第一收集模块(collect_trans)为transport_trans类型的port端口,可调用write函数对transport_trans广播。传输层监测器的第二收集模块(collect_status)为transport_status类型的port端口,可调用write函数对transport_status广播。
传输层BFM(transport_bfm)可以从link2trans_monitor得到传输层状态数据transport_status与帧数据包transport_trans,解析并维护端口状态机状态以及生成对应的原语序列行为,同时还可以检查协议帧数据正确性。
同链路层覆盖率类link_cover相似,传输层的覆盖率类func_cov,即传输层覆盖率模块(trans_cover)可用于衡量传输层功能是否被测试充分,它的实现过程为: 通过采样transport_status数据分析传输层端口状态机行为覆盖率(即状态机覆盖率);通过采样transport_trans数据统计分析帧数据内容覆盖率(即功能覆盖率)等等功能。
综上,为了解决现有的FC验证IP存在各个协议层通过信号进行连接,上层协议数据结构随机化不灵活等问题,本公开提出了一种基于UVM的FC协议验证平台装置及方法。本公开通过将各个协议层从信号级连接方式改进为事务(transaction)连接方式,从传输层到链路层以事务数据包的方式传递数据,并且,通过添加覆盖率模块来分析覆盖率,方便加大数据结构随机化,构造出复杂测试场景,加速芯片验证收敛速度,便于验证平台装置以覆盖率为驱动进行科学验证。
现有的FC验证IP存在的上述问题,在本公开的基于UVM的FC协议验证平台装置中可以很好的得到解决。本公开的验证平台装置,是由覆盖率驱动的验证平台装置,随机化的数据激励让验证者可以摆脱大量构造直接用例负担,从而验证者更加专注于特殊测试场景的构造;各协议层以事务(transaction)为单位进行数据的传递,可以加速仿真器的仿真速度,同时,验证平台装置在可重用性、可移植性、随机化性以及覆盖率驱动验证特性方面也具有巨大的优势。
本公开能够以覆盖率为驱动进行FC协议芯片的设计与开发,对比直接测试用例,减少大量重复直接测试用例开发,从而加速协议层设计功能收敛;通过改变测试平台装置的参数或者改变随机化种子,可以更快达到验证目标;对比以时钟驱动下,信号级数据在协议层间传递,以事务的方式进行数据交互,加速仿真时间,协议行为可读性、重用性都变得较好。
参考图2,图2是根据本公开的FC协议芯片的验证方法的一个实施例的流程示意图。本公开的方法采用如上文所述的基于UVM的FC协议验证平台装置,FC协议包括传输层、链路层和物理层,验证平台装置包括:部署于传输层的序列器、部署于链路层的驱动器、监测器和覆盖率模块,监测器包括链路层监测器和传输层监测器,覆盖率模块包括链路层覆盖率模块和传输层覆盖率模块。
如图2所示,本公开的方法包括以下步骤:
步骤201、序列器以事务为单位向链路层发送数据包;
步骤202、驱动器接收数据包,将数据包转换成信号级的数据流,驱动到物理层的发送端口;
步骤203、链路层监测器监测物理层的接收端口,链路层覆盖率模块采样链路层监测器监测的数据,分析链路层的覆盖率;
步骤204、传输层监测器监测链路层监测器,传输层覆盖率模块采样传输层监测器监测的数据,分析传输层的覆盖率。
在一些可选的实施方式中,验证平台装置进一步包括部署于传输层的转换模块,在步骤202之前,本公开的方法进一步包括:转换模块将序列器发出的以事务为单位的数据包,从传输层数据转换为链路层数据,然后发送给驱动器。
在一些可选的实施方式中,验证平台装置进一步包括总线功能模型BFM单元,BFM单元包括传输层BFM单元和链路层BFM单元;本公开的方法进一步包括:
传输层BFM单元将传输层监测器监测的数据转换为FC协议传输层行为级的数据,发送给转换模块;
链路层BFM单元将链路层监测器监测的数据转换为FC协议链路层行为级的数据,根据该数据控制驱动器。
在一些可选的实施方式中,在步骤202之前,本公开的方法进一步包括:
转换模块将FC协议传输层行为级的数据转换成为链路层数据,然后发送给驱动器。
参考图3,图3是根据本公开的用于实现服务器的计算机设备的一个实施例的结构示意图。如图3所示,本公开的计算机设备300可包括:
一个或多个处理器301;
存储器302,其上存储有一个或多个程序303;
处理器301和存储器302等组件可通过总线系统304耦合在一起;总线系统304用于实现这些组件之间的连接通信;
当一个或多个程序303被一个或多个处理器301执行时,使得一个或多个处理器301实现如上文方法实施例中所公开的FC协议芯片的验证方法。
其中,总线系统304除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线。存储器302可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。处理器301可能是具有信号处理能力的集成电路芯片,可以是通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
本公开实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被一个或多个处理器执行时实现如上文方法实施例中所公开的FC协议芯片的验证方法。
本公开是参照根据本公开实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
应理解,本公开中术语“系统”和“网络”在本文中常被可互换使用。本公开中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
以上,通过具体实施例对本公开的技术方案进行了详细说明。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其它实施例的相关描述。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (4)

1.一种基于UVM的FC协议验证平台装置,所述FC协议包括传输层、链路层和物理层,其特征在于,所述基于UVM的FC协议验证平台装置包括:
序列器,部署于所述传输层,被配置成以事务为单位向所述链路层发送数据包;
驱动器,部署于所述链路层,被配置成接收所述数据包,将所述数据包转换成信号级的数据流,驱动到所述物理层的发送端口;
监测器,包括链路层监测器和传输层监测器,所述链路层监测器被配置成监测所述物理层的接收端口,所述传输层监测器被配置成监测所述链路层监测器;
覆盖率模块,包括链路层覆盖率模块和传输层覆盖率模块,所述链路层覆盖率模块被配置成采样所述链路层监测器监测的数据,分析所述链路层的覆盖率;所述传输层覆盖率模块被配置成采样所述传输层监测器监测的数据,分析所述传输层的覆盖率;
所述基于UVM的FC协议验证平台装置进一步包括:转换模块,部署于所述传输层,被配置成将所述序列器发出的以事务为单位的数据包,从传输层数据转换为链路层数据,然后发送给所述驱动器;
所述基于UVM的FC协议验证平台装置进一步包括总线功能模型BFM单元,所述BFM单元包括:传输层BFM单元和链路层BFM单元;
所述传输层BFM单元,被配置成将所述传输层监测器监测的数据转换为FC协议传输层行为级的数据,发送给所述转换模块;所述FC协议传输层行为级的数据包括FC传输层端口状态机状态跳转、原语序列与原语信号生成行为;所述传输层BFM单元,还被配置成解析并维护端口状态机状态,生成对应的原语序列行为,检查协议帧数据正确性;
所述转换模块,进一步被配置成将所述FC协议传输层行为级的数据转换成为链路层数据,然后发送给所述驱动器;
所述链路层BFM单元,被配置成将所述链路层监测器监测的数据转换为FC协议链路层行为级的数据,根据该数据控制所述驱动器,所述驱动器接受所述传输层BFM单元和所述链路层BFM单元的控制;所述FC协议链路层行为级的数据包括FC链路层传输字同步状态机状态跳转、失同步状态生成行为;所述链路层BFM单元,还被配置成解析链路层状态。
2.一种FC协议芯片的验证方法,其特征在于,所述方法采用如权利要求1所述的基于UVM的FC协议验证平台装置,所述FC协议包括传输层、链路层和物理层,所述验证平台装置包括:部署于所述传输层的序列器、部署于所述链路层的驱动器、监测器和覆盖率模块,所述监测器包括链路层监测器和传输层监测器,所述覆盖率模块包括链路层覆盖率模块和传输层覆盖率模块;
所述方法包括:
所述序列器以事务为单位向所述链路层发送数据包;
所述驱动器接收所述数据包,将所述数据包转换成信号级的数据流,驱动到所述物理层的发送端口;
所述链路层监测器监测所述物理层的接收端口;所述链路层覆盖率模块采样所述链路层监测器监测的数据,分析所述链路层的覆盖率;
所述传输层监测器监测所述链路层监测器;所述传输层覆盖率模块采样所述传输层监测器监测的数据,分析所述传输层的覆盖率;
所述基于UVM的FC协议验证平台装置进一步包括部署于所述传输层的转换模块,所述方法进一步包括:所述转换模块将所述序列器发出的以事务为单位的数据包,从传输层数据转换为链路层数据,然后发送给所述驱动器;
所述基于UVM的FC协议验证平台装置进一步包括总线功能模型BFM单元,所述BFM单元包括传输层BFM单元和链路层BFM单元;所述方法进一步包括:
所述传输层BFM单元将所述传输层监测器监测的数据转换为FC协议传输层行为级的数据,发送给所述转换模块;所述FC协议传输层行为级的数据包括FC传输层端口状态机状态跳转、原语序列与原语信号生成行为;所述传输层BFM单元,还被配置成解析并维护端口状态机状态,生成对应的原语序列行为,检查协议帧数据正确性;
所述转换模块将所述FC协议传输层行为级的数据转换成为链路层数据,然后发送给所述驱动器;
所述链路层BFM单元将所述链路层监测器监测的数据转换为FC协议链路层行为级的数据,根据该数据控制所述驱动器,所述驱动器接受所述传输层BFM单元和所述链路层BFM单元的控制;所述FC协议链路层行为级的数据包括FC链路层传输字同步状态机状态跳转、失同步状态生成行为;所述链路层BFM单元,还被配置成解析链路层状态。
3.一种计算机设备,其特征在于,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求2所述的FC协议芯片的验证方法。
4.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被一个或多个处理器执行时实现如权利要求2所述的FC协议芯片的验证方法。
CN202211063844.1A 2022-09-01 2022-09-01 基于uvm的fc协议验证平台装置及方法 Active CN115130406B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211063844.1A CN115130406B (zh) 2022-09-01 2022-09-01 基于uvm的fc协议验证平台装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211063844.1A CN115130406B (zh) 2022-09-01 2022-09-01 基于uvm的fc协议验证平台装置及方法

Publications (2)

Publication Number Publication Date
CN115130406A CN115130406A (zh) 2022-09-30
CN115130406B true CN115130406B (zh) 2023-01-24

Family

ID=83387718

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211063844.1A Active CN115130406B (zh) 2022-09-01 2022-09-01 基于uvm的fc协议验证平台装置及方法

Country Status (1)

Country Link
CN (1) CN115130406B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114595102A (zh) * 2022-03-10 2022-06-07 海光信息技术股份有限公司 验证方法、电子设备以及存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102215422B (zh) * 2010-04-01 2013-10-23 炬力集成电路设计有限公司 一种视频处理集成电路验证码流产生方法、装置及系统
CN103455460B (zh) * 2012-06-01 2017-11-14 广东新岸线计算机系统芯片有限公司 一种验证高级微控制器总线接口的装置
CN110109794A (zh) * 2019-03-25 2019-08-09 电子科技大学 一种基于uvm的总线验证方法
CN110941577A (zh) * 2019-11-06 2020-03-31 南京理工大学 基于fpga的sata接口链路层功能实现方法
CN111914501A (zh) * 2020-05-07 2020-11-10 电子科技大学 一种基于UVM验证方法学的FeRAM接口验证平台的实现方法
CN112463497A (zh) * 2020-12-09 2021-03-09 中国电子科技集团公司第五十八研究所 一种基于uvm的spi验证平台
CN114384403B (zh) * 2022-03-22 2022-07-12 浙江大学 一种芯片验证ip装置及其测试方法
CN114706768A (zh) * 2022-03-28 2022-07-05 四川和芯微电子股份有限公司 I3c总线验证方法及验证系统
CN114781325A (zh) * 2022-04-28 2022-07-22 牛芯半导体(深圳)有限公司 基于uvm的对phy进行验证的验证平台及验证方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114595102A (zh) * 2022-03-10 2022-06-07 海光信息技术股份有限公司 验证方法、电子设备以及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"SystemVerilog|系列开篇:鸟瞰UVM通用验证法学";JKZHAN;《微信公众号:芯片学堂》;20210822;全文 *

Also Published As

Publication number Publication date
CN115130406A (zh) 2022-09-30

Similar Documents

Publication Publication Date Title
US9547041B2 (en) Testbench builder, system, device and method with phase synchronization
US10015072B2 (en) Consolidation of network test automation tools
CN102118230B (zh) 一种基于ttcn的网络协议性能测试方法
CN109815099B (zh) Jesd204b控制器的fpga验证方法
CN112653600A (zh) 基于usb网卡的网卡性能测试方法、装置及电子设备
US8504344B2 (en) Interface between a verification environment and a hardware acceleration engine
CN105917314A (zh) 用于云流服务的应用错误检测方法及其设备和系统
WO2009062419A1 (fr) Système et procédé de test
CN104657555A (zh) 一种基于uvm验证方法学的toe的验证方法及平台
CN111064449A (zh) 一种基于uvm平台的数字降采样滤波器的验证平台及方法
CN114417768B (zh) 一种以太网芯片的数模混合仿真方法及系统
CN115130406B (zh) 基于uvm的fc协议验证平台装置及方法
CN116756049B (zh) 芯片的通用验证方法、装置、电子设备及存储介质
US20040268318A1 (en) Expert system for intelligent testing
CN116306479A (zh) 基于uvm的以太网phy通用验证平台及验证方法
CN116841874A (zh) 统一诊断服务功能的测试方法、装置、存储介质和电子设备
CN115811489A (zh) 基于uvm的交换芯片验证系统、方法及存储介质
CN115190030A (zh) 一种实现can fd的硬件装置和uvm验证平台
CN114595102A (zh) 验证方法、电子设备以及存储介质
CN113422756A (zh) 验证数据传输方法、速率转换装置以及验证数据传输系统
CN116775390B (zh) 接口协议转换验证系统及方法、电子设备及存储介质
JPH0370059A (ja) 回線シミュレーション方式
CN116643931A (zh) 一种芯片测试方法、装置、电子设备及存储介质
CN116170267A (zh) 基于uvm的ofdm通信系统验证平台及验证方法
CN118012681A (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