System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 自动化配置芯片IO的SOC验证方法、系统和设备技术方案_技高网

自动化配置芯片IO的SOC验证方法、系统和设备技术方案

技术编号:43330134 阅读:7 留言:0更新日期:2024-11-15 20:27
本发明专利技术涉及自动化配置芯片IO的SOC验证方法、系统和设备,通过基于UVM验证方法学和SystemVerilog语言搭建了验证系统,基于测试用例基类创建了相应的平台环境组件、环境配置组件、IO连接信号和IO连接文件,测试用例基类中含有IO配置函数,平台环境组件中含有各种子模块代理组件,可产生随机化激励进行验证。通过自动化python脚本读取IO复用表格的方式,为各个子模块生成相应的IO连接文件和IO配置文件。测试用例启动后将自动配置好所需的IO口寄存器,完成验证系统与待测SOC芯片的连接,实现了自动化IO配置的功能,优化统一了配置流程,大幅提升了SOC级验证效率和SOC验证系统的可重用性。

【技术实现步骤摘要】

本专利技术属于芯片验证,涉及一种自动化配置芯片io的soc验证方法、系统和设备。


技术介绍

1、系统级芯片(system on chip,记作soc)集成了一个芯片的所有功能,在车规芯片中一般包括处理器核、存储器和各种外设。芯片根据规模大小具有几十或几百的输入输出口(input/output,记作io),用于芯片与外部进行数据交换和通讯,在进行soc级验证时,验证平台也需要通过io与芯片连接,进而与芯片内部的模块进行通讯,对其功能进行逐个验证。

2、io口具有可复用的特性,即同一个io口既可供芯片内部的模块1使用,也可供芯片内部的模块2使用,同时一个模块的信号组既可被io组1使用,也可被io组2使用,这是相互的。在soc级验证时,验证工程师需要通过查找io模块的复用表格来为芯片内部的待测模块选择一io组进行通讯,同时还要配置对应io的寄存器以建立待测模块和io的连接关系。当芯片规模较大时,一个复用表格中的io数量将会很多,难以定位到想要的io口,不同项目间的io复用关系也不一样,导致验证工程师在soc级验证时会浪费精力在调试配置io上,存在着验证效率较低的技术问题。


技术实现思路

1、针对上述传统方法中存在的问题,本专利技术提出了一种自动化配置芯片io的soc验证方法、一种自动化配置芯片io的soc验证系统、一种计算机设备以及一种计算机可读存储介质,能够有效提高soc级验证的验证效率,提升验证环境和测试用例的重用性,使芯片io配置流程标准化。

2、为了实现上述目的,本专利技术实施例采用以下技术方案:

3、一方面,提供一种自动化配置芯片io的soc验证方法,应用于一种基于uvm验证方法学和systemverilog语言搭建的验证系统,验证系统基于测试用例基类创建了平台环境组件、环境配置组件、io连接信号和io连接文件,测试用例基类中含有用于配置io模块寄存器的io配置函数,平台环境组件中含有对应于待测soc芯片内各子模块的各种子模块代理组件,环境配置组件用于配置验证系统的环境,io连接信号作为待测soc芯片与验证系统连接的中间信号,io连接文件用于连接待测soc芯片和验证系统,验证系统采用python脚本读取待测soc芯片的io复用表格并自动生成各个子模块的io连接文件和io配置文件,io配置文件用于配置子模块所需的io口;

4、soc验证方法包括步骤:

5、在验证系统的顶层仿真文件中为待测soc芯片定义输入输出连接信号后,初始化验证系统;

6、采用python脚本读取待测soc芯片的io复用表格并识别io复用表格中所有的子模块名字,根据子模块名字进行io口去重得到各io口列表,利用各io口列表生成各个子模块的io连接文件和io配置文件;

7、通过`include语法将io连接文件放入顶层仿真文件中;

8、通过`include语法将io配置文件放入验证系统的测试用例中;

9、启动验证系统的测试用例对待测soc芯片进行soc级验证仿真,将仿真的结果进行数据比较和结果分析,完成验证。

10、另一方面,还提供一种自动化配置芯片io的soc验证系统,soc验证系统基于uvm验证方法学和systemverilog语言搭建,soc验证系统基于测试用例基类创建了平台环境组件、环境配置组件、io连接信号和io连接文件,测试用例基类中含有用于配置io模块寄存器的io配置函数,平台环境组件中含有对应于待测soc芯片内各子模块的各种子模块代理组件,环境配置组件用于配置soc验证系统的环境,io连接信号作为待测soc芯片与soc验证系统连接的中间信号,io连接文件用于连接待测soc芯片和soc验证系统,soc验证系统采用python脚本读取待测soc芯片的io复用表格并识别io复用表格中所有的子模块名字,根据子模块名字进行io口去重得到各io口列表,利用各io口列表生成各个子模块的io连接文件和io配置文件,io配置文件用于配置子模块所需的io口。

11、又一方面,还提供一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述自动化配置芯片io的soc验证方法的步骤。

12、再一方面,还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述自动化配置芯片io的soc验证方法的步骤。

13、上述技术方案中的一个技术方案具有如下优点和有益效果:

14、上述自动化配置芯片io的soc验证方法、系统和设备,通过基于uvm验证方法学和systemverilog语言搭建了验证系统,基于测试用例基类创建了相应的平台环境组件、环境配置组件、io连接信号和io连接文件,测试用例基类中含有io配置函数,平台环境组件中含有各种子模块代理组件,在功能上使得验证系统的结构科学合理,可以产生随机化激励进行验证。通过自动化python脚本读取io复用表格的方式,为各个子模块生成相应的io连接文件和io配置文件。测试用例启动后将自动配置好所需的io口寄存器,完成验证系统与待测soc芯片的连接,实现了自动化io配置的功能,优化统一了配置流程。在io模块进行了修改,或者进入到不同soc项目中时,只需要加载新的io复用表格并启动python脚本,便可重新生成io连接文件和io配置文件,大幅提升了soc级验证效率和soc验证系统的可重用性。

本文档来自技高网...

【技术保护点】

1.一种自动化配置芯片IO的SOC验证方法,其特征在于,应用于一种基于UVM验证方法学和SystemVerilog语言搭建的验证系统,所述验证系统基于测试用例基类创建了平台环境组件、环境配置组件、IO连接信号和IO连接文件,所述测试用例基类中含有用于配置IO模块寄存器的IO配置函数,所述平台环境组件中含有对应于待测SOC芯片内各子模块的各种子模块代理组件,所述环境配置组件用于配置验证系统的环境,所述IO连接信号作为所述待测SOC芯片与所述验证系统连接的中间信号,所述IO连接文件用于连接所述待测SOC芯片和所述验证系统,所述验证系统采用python脚本读取所述待测SOC芯片的IO复用表格并自动生成各个子模块的IO连接文件和IO配置文件,所述IO配置文件用于配置子模块所需的IO口;

2.根据权利要求1所述的自动化配置芯片IO的SOC验证方法,其特征在于,利用各IO口列表生成各个子模块的IO连接文件和IO配置文件的过程中,生成各个子模块的IO连接文件时使用的预先设定的模板为:

3.根据权利要求1或2所述的自动化配置芯片IO的SOC验证方法,其特征在于,所述IO连接文件中对子模块的连接采用宏隔离。

4.一种自动化配置芯片IO的SOC验证系统,其特征在于,所述SOC验证系统基于UVM验证方法学和SystemVerilog语言搭建,所述SOC验证系统基于测试用例基类创建了平台环境组件、环境配置组件、IO连接信号和IO连接文件,所述测试用例基类中含有用于配置IO模块寄存器的IO配置函数,所述平台环境组件中含有对应于待测SOC芯片内各子模块的各种子模块代理组件,所述环境配置组件用于配置所述SOC验证系统的环境,所述IO连接信号作为所述待测SOC芯片与所述SOC验证系统连接的中间信号,所述IO连接文件用于连接所述待测SOC芯片和所述SOC验证系统,所述SOC验证系统采用python脚本读取所述待测SOC芯片的IO复用表格并识别IO复用表格中所有的子模块名字,根据子模块名字进行IO口去重得到各IO口列表,利用各IO口列表生成各个子模块的IO连接文件和IO配置文件,所述IO配置文件用于配置子模块所需的IO口。

5.根据权利要求4所述的自动化配置芯片IO的SOC验证系统,其特征在于,利用各IO口列表生成各个子模块的IO连接文件和IO配置文件的过程中,生成各个子模块的IO连接文件时使用的预先设定的模板为:

6.根据权利要求4或5所述的自动化配置芯片IO的SOC验证系统,其特征在于,所述IO连接文件中对子模块的连接采用宏隔离。

7.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至3任一项所述自动化配置芯片IO的SOC验证方法的步骤。

8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至3任一项所述自动化配置芯片IO的SOC验证方法的步骤。

...

【技术特征摘要】

1.一种自动化配置芯片io的soc验证方法,其特征在于,应用于一种基于uvm验证方法学和systemverilog语言搭建的验证系统,所述验证系统基于测试用例基类创建了平台环境组件、环境配置组件、io连接信号和io连接文件,所述测试用例基类中含有用于配置io模块寄存器的io配置函数,所述平台环境组件中含有对应于待测soc芯片内各子模块的各种子模块代理组件,所述环境配置组件用于配置验证系统的环境,所述io连接信号作为所述待测soc芯片与所述验证系统连接的中间信号,所述io连接文件用于连接所述待测soc芯片和所述验证系统,所述验证系统采用python脚本读取所述待测soc芯片的io复用表格并自动生成各个子模块的io连接文件和io配置文件,所述io配置文件用于配置子模块所需的io口;

2.根据权利要求1所述的自动化配置芯片io的soc验证方法,其特征在于,利用各io口列表生成各个子模块的io连接文件和io配置文件的过程中,生成各个子模块的io连接文件时使用的预先设定的模板为:

3.根据权利要求1或2所述的自动化配置芯片io的soc验证方法,其特征在于,所述io连接文件中对子模块的连接采用宏隔离。

4.一种自动化配置芯片io的soc验证系统,其特征在于,所述soc验证系统基于uvm验证方法学和systemverilog语言搭建,所述soc验证系统基于测试用例基类创建了平台环境组件、环境配置组件、io连接信号和io连接文件,所述测试用例...

【专利技术属性】
技术研发人员:刘昱玮冯华刘功哲冷勇陈洁詹贵阳
申请(专利权)人:上海芯钛信息科技有限公司
类型:发明
国别省市:

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

1