一种基于UVM的支持PCIe的千兆以太网芯片的验证平台制造技术

技术编号:34323818 阅读:19 留言:0更新日期:2022-07-31 00:44
本发明专利技术具体涉及一种基于UVM的支持PCIe的千兆以太网芯片的验证平台,属于验证方法领域。SoC设计流程中,充分验证芯片功能,快速收集覆盖率可以有效加快研发过程。本发明专利技术包括由以太网驱动器、定序器和监测器构成的以太网代理,由应用层、事务层、数据链路层和物理层构成的PCIe设备代理,测试序列和待测支持PCIe的千兆以太网芯片设计模块。所述的以太网代理、PCIe设备代理和待测模块依次通过GMII接口和Serdes接口连接。所述的以太网代理内部驱动器和定序器配合启动数据包序列并发送驱动至GMII接口,监测器对发送和接收的数据进行采集并判定时序和数据是否符合以太网协议。所述的PCIe设备代理实现了应用层的收发存储器、IO、配置和消息请求功能,并通过UVM和System Verilog实现了PCIe协议规定的事务层、数据链路层和物理层的功能。本发明专利技术提出的UVM验证环境简介可扩展,移植性强,且具有复用性强、验证效率高的特点。效率高的特点。效率高的特点。

【技术实现步骤摘要】
一种基于UVM的支持PCIe的千兆以太网芯片的验证平台


[0001]本专利技术涉及一种基于UVM的支持PCIe的千兆以太网芯片的验证平台,具有复用性强、可在开发性强和验证效率高的特点,属于验证方法领域。

技术介绍

[0002]由于集成电路的规模呈几何速度增长和其电路设计复杂度的不断提升,芯片设计流程中的验证工作成为流程中不可或缺的步骤。VLSI设计的验证流程分为流片前验证和流片后测试:流片前的验证发现的设计错误可以通过修改对应模块代码进行修复,流片后的测试阶段中,发现设计的错误或者电路缺少技术手册规定的功能是无法通过修改应用程序来弥补的,为消除错误只能修改顶层设计增加相应功能模块验证后重新流片,这将会带来额外的流片成本
[3],单次流片的成本占整个芯片开发成本的10%

20%,要降低设计电路的成本,保证设计电路的质量,避免流芯片后设计模块出现错误或功能丢失,对设计电路进行充分的验证不可或缺。
[0003]验证工作在集成电路开发中占用的时间占比往往在50%以上,随着电路设计功能复杂度的增加,电路设计中检测和定位误差的难度呈指数级增加,导致验证时间增加,拖延验证进度。传统的Verilog硬件描述语言编写的测试平台是无法完成对复杂电路模块功能的完整验证。
[0004]一种具有高度抽象特点的验证语言System Verilog应运而生,验证方法学也在不停发展。System Verilog语言既具备HDL又具备OOP语言即继承、封装和多态的特点,为设计和验证人员搭建起沟通的桥梁,进一步削弱了硬件背景和软件背景的工程师之间的沟通壁垒,得到集成电路研发从业者的青睐,使得验证语言由Verilog语言快速过渡到System Verilog。System Verilog语言中自行封装了多种功能的内置函数和方法,大大加快了验证人员构建验证平台和验证组件中任务的速度。System Verilog于2005年成为IEEE标准,使用率逐渐增加,是时下最主要的验证语言。
[0005]UVM由于其灵活性和可移植性使得它在各种验证方法中脱颖而出,通过在验证平台开发过程中重复使用验证组件和验证序列,大大缩短了验证工作的耗时。采用UVM实现的高效验证平台可有效提高芯片设计验证工作的高效完成,保障芯片的快速开发质量。
[0006]当下常用的PCIe和以太网的验证方案均采用各商业公司提供的VIP搭建符合应用场景的验证环境,由于商业保密各VIP内部的核心机制代码无法查看,导致搭建过程复杂难度较大,可移植性差,可再开发性差。

技术实现思路

[0007]本专利技术目的在于提供一种基于UVM的支持PCIe的千兆以太网芯片的验证平台,实现了以太网代理和PCIe设备代理,完成以太网协议和PCIe协议核心机制,解决传统验证方法搭建过程复杂难度大、可再开发性差和可移植性差的问题。
[0008]为解决上述问题,本专利技术提供了以太网侧和PCIe侧的验证组件,相互配合搭建起
验证平台,使用UVM和System Verilog语言搭建验证环境。所述验证平台如图1所示,包括以太网验证环境组件和PCIe验证环境组件。
[0009]如图2所示,以太网验证环境Ethernet_env内有以太网代理Ethernet_agent,其结构为:以太网驱动器Ethernet_Driver将事务级信号驱动至待测硬件接口;以太网定序器Ethernet_Sequencer负责测试序列的调度和仲裁并配合驱动器实现激励输入;以太网收发数据监测器Ethernet_Monitor采集待测硬件接口的数据,检查时序并验证数据是否符合以太网协议。
[0010]如图3所示,PCIe验证环境PCIe_env内有PCIe设备代理PCIe_device_agent由应用层Application Layer和PCIe核代理PCIe_mac_agent组成。其中PCIe核代理内利用UVM与System Verilog实现了PCIe协议规定的事务层Transaction Layer、数据链路层Data Link Layer和物理层Physical Layer。
[0011]应用层向下层发起存储器、IO、配置和消息请求并接收来自事务层对应类型的数据包。
[0012]事务层将来自应用层事务请求生成事务层数据包向下方数据链路层传递。事务层还从数据链路层接收事务层数据包并根据类型路由到正确的应用程序。
[0013]数据链路层将来自事务层的数据包加上序列号与循环冗余校验码封装成数据链路层数据包,以确保远程接收器接收的数据包没有任何错误。在此基础上,数据链路层通过数据链路层数据包实现链路管理等功能。类似于事务层,数据链路层还将接收来自物理层的数据包并剥离序列号和循环冗余校验码,发送至事务层。
[0014]物理层将从数据链路层接收到的数据包并对数据进行并串转换、按照规范进行编码驱动至输出接口,并将接收数据通道上的数据组合成数据包发回数据链路层。同时,物理层通过定义的有续集实现PCIe链路训练状态机和低功耗功能。
[0015]所述应用层、事务层、数据链路层和物理层内均有实现事务级信号驱动至对应接口的驱动器、与驱动器配合调度仲裁序列的定序器和监测接口上数据验证数据是否符合PCIe协议的监测器。
[0016]上述以太网代理通过GMII接口与待测硬件连接,PCIe设备代理通过Serdes接口与待测硬件连接,如图1所示。
[0017]从数据流角度,上述验证环境完成的功能是:
[0018]以太网代理内部的序列完成以太网帧数据的生成封装(可配置帧数据的DA、SA、类型/数据长度、数据负载及添加相应的FCS码)。定序器和驱动器配合,实现序列的仲裁与调度,将序列生成的事务数据转化成信号级数据驱动至GMII接口。监测器将收集并检查对应GMII接口上数据时序(使能信号拉高拉低时机)及数据的正确性(数据的FCS码、DA与SA的比对)。
[0019]待测硬件接收来自以太网代理的数据,写入接收缓存内,DMA将接收缓存内的数据搬运至PCIe设备代理内部存储器,待数据传输完成后,对存储器存储的以太网帧数据中DA与SA互换,开启DMA写传输,DMA将从PCIe设备代理内部存储器内搬运数据至发送缓存,待测硬件将发送缓存内部数据添加相应的FCS校验码,发送至以太网代理。
[0020]PCIe设备代理内部应用层、事务层、数据链路层与物理层,完成数据包在各个层次的转化。序列实现各个层次的数据包(可配置数据包类型Mem、IO、Cfg与Message)。定序器与
驱动器配合实现将序列生成的事务数据转化成信号级数据驱动至Serdes接口。监测器收集并检查Serdes接口上数据正确性。
[0021]通过配置待测硬件内部寄存器,使得待测硬件在不同工作模式下,可以实现PCIe根节点设备即PCIe设备代理向待测硬件发送数据包,待测硬件内部DMA将数据搬运至发送缓存,待测硬件发送以太网数据包至以太网代理,其内部监测器检查数据校验码及DA、SA正本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于UVM的支持PCIe的千兆以太网芯片的验证平台,其特征在于,使用UVM和System Verilog语言搭建验证环境,所述验证平台包括:1)以太网代理:将事务级信号驱动至待测硬件接口的以太网驱动器、负责测试序列的调度和仲裁并配合驱动器实现激励输入的定序器和采集待测硬件接口上数据检查时需并验证数据是否符合以太网协议的以太网收发监测器;2)PCIe设备代理:向下层发起存储器、IO、配置和消息请求并接收来自事务层对应类型的数据包的应用层、将来自应用层事务请求生成事务层数据包向下方数据链路层传递并将从数据链路层接收的事务层数据包根据类型路由至正确应用程序的事务层、将来自事务层的数据包加上序列号与循环冗余校验码封装成数据链路层数据包确保远程接收器接收的数据包没有任何错误并接收来自物理层的数据包剥离序列号和循环冗余校验码发送至事务层的数据链路层和接收数据链路层数据包并对数据进行并串转换按照规范进行编码驱动至输出接口并将接收通道上数据组合成数据包发回数据链路层的物理层;3)所述PCIe设备代理内部的应用层、事务层、数据链路层和物理层内均有实现事务级信号驱动至对应接口的驱动器、与驱动器配合调度仲裁序列的定序器和监测接口上数据验证数据是否符合PCIe协议的监测器。2.按照权利要求1所述的基于UVM的支持PCIe的千兆以太网芯...

【专利技术属性】
技术研发人员:王忆文金黄斌王瑶潘涛
申请(专利权)人:电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1