寄存器模型生成方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:37325958 阅读:14 留言:0更新日期:2023-04-21 23:04
本申请公开了一种寄存器模型生成方法、装置、计算机设备及存储介质,方法包括:获取待验证芯片的多个寄存器描述文件;获取多个寄存器描述文件中每个寄存器描述文件的文件格式,根据文件格式对每个寄存器描述文件进行解析,得到各个主机的寄存器映射信息及每个芯片设计模块的寄存器描述信息;根据寄存器描述信息,生成多个初始寄存器块;根据各个主机的寄存器映射信息及多个初始寄存器块,生成各个主机对应的第一寄存器映射表;根据多个初始寄存器块及第一寄存器映射表,生成待验证芯片对应的寄存器模型。本申请可以支持多种文件格式的寄存器描述文件的解析,自动化水平高,适用于设计中存在多个主机的待验证芯片的寄存器模型生成。成。成。

【技术实现步骤摘要】
寄存器模型生成方法、装置、计算机设备及存储介质


[0001]本申请涉及芯片验证
,具体涉及一种寄存器模型生成方法、装置、计算机设备及存储介质。

技术介绍

[0002]在以通用验证方法学(Universal Verification Methodology,UVM)为验证方法学的芯片验证过程中,寄存器的配置过程依赖于寄存器模型,寄存器模型是进行数字集成电路验证时,对待测试设计(Design Under Test,DUT)中的寄存器进行建模所得到的模型,它是UVM验证方法学的重要组成部分,快速准确的根据设计文件生成UVM寄存器模型是加快DUT验证,提高验证自动化水平的关键步骤。
[0003]现有UVM寄存器模型的生成方法是首先根据每个芯片设计模块的寄存器描述文件生成相应芯片设计模块的寄存器模型,然后通过手工或者脚本将多个子模块的寄存器模型进行组合,得到待验证芯片的寄存器模型。现有UVM寄存器模型的生成方法由于需要后期手工或脚本将多个子模块的寄存器模型整合,自动化水平较低。

技术实现思路

[0004]本申请实施例提供一种寄存器模型生成方法、装置、计算机设备及存储介质,可以支持多种文件格式的寄存器描述文件的解析,无需后期手工或脚本将多个子模块的寄存器模型整合,自动化水平高,且适用于设计中存在多个主机的待验证芯片的寄存器模型生成。
[0005]一方面,本申请提供一种寄存器模型生成方法,所述寄存器模型生成方法包括:获取待验证芯片的多个寄存器描述文件,所述待验证芯片包括多个芯片设计模块,所述待验证芯片设计中存在多个主机,所述多个寄存器描述文件包括用于描述所述多个主机中各个主机的寄存器映射信息的映射表文件及用于描述所述多个芯片设计模块中每个芯片设计模块的寄存器描述信息的寄存器文件;获取所述多个寄存器描述文件中每个寄存器描述文件的文件格式,根据所述文件格式对所述每个寄存器描述文件进行解析,得到所述各个主机的寄存器映射信息及所述每个芯片设计模块的寄存器描述信息;根据所述每个芯片设计模块的寄存器描述信息,生成多个第一寄存器块对象;根据所述各个主机的寄存器映射信息及所述多个第一寄存器块对象,生成所述各个主机对应的第一寄存器映射表对象;根据所述多个第一寄存器块对象及所述第一寄存器映射表对象,生成所述待验证芯片对应的寄存器模型。
[0006]在本申请一些实施方案中,所述根据所述文件格式对所述每个寄存器描述文件进行解析,得到所述各个主机的寄存器映射信息及所述每个芯片设计模块的寄存器描述信息,包括:根据所述文件格式,从预先设置的多个初始文件解析模块中确定所述每个寄存器
描述文件对应的目标文件解析模块,所述目标文件解析模块为所述多个初始文件解析模块中与所述文件格式匹配的模块;通过所述目标文件解析模块对所述每个寄存器描述文件进行解析,得到所述各个主机的寄存器映射信息及所述每个芯片设计模块的寄存器描述信息。
[0007]在本申请一些实施方案中,所述寄存器描述信息包括寄存器域信息、寄存器信息、寄存器文件信息、第一寄存器块信息及第二寄存器块信息,所述根据所述每个芯片设计模块的寄存器描述信息,生成多个第一寄存器块对象,包括:根据所述寄存器域信息、所述寄存器信息、所述寄存器文件信息及所述第二寄存器块信息,生成多个第二寄存器块对象;基于所述多个第二寄存器块对象及所述第一寄存器块信息,生成多个第一寄存器块对象。
[0008]在本申请一些实施方案中,所述根据所述寄存器域信息、所述寄存器信息、所述寄存器文件信息及所述第二寄存器块信息,生成多个第二寄存器块对象,包括:根据所述寄存器域信息,生成所述待验证芯片对应的多个域对象;基于所述寄存器信息对所述多个域对象进行实例化,生成所述待验证芯片对应的多个初始寄存器对象;基于所述多个初始寄存器对象及所述寄存器文件信息,生成每个所述初始寄存器对象的寄存器文件对象;基于所述多个初始寄存器对象、所述寄存器文件对象及所述第二寄存器块信息,生成多个第二寄存器块对象。
[0009]在本申请一些实施方案中,所述基于所述多个初始寄存器对象、所述寄存器文件对象及所述第二寄存器块信息,生成多个第二寄存器块对象,包括:基于所述第二寄存器块信息,从所述多个初始寄存器对象中确定所述多个第二寄存器块对象中每个第二寄存器块对象对应的候选寄存器对象;基于所述候选寄存器对象及所述候选寄存器对象的寄存器文件对象,生成多个第二寄存器块对象。
[0010]在本申请一些实施方案中,所述每个第二寄存器块对象包括第二寄存器映射表对象,所述基于所述候选寄存器对象及所述候选寄存器对象的寄存器文件对象,生成多个第二寄存器块对象之后,所述方法还包括:获取所述候选寄存器对象的偏移地址及所述候选寄存器对象的访问属性;将所述候选寄存器对象的偏移地址及所述候选寄存器对象的访问属性添加至所述第二寄存器映射表对象。
[0011]在本申请一些实施方案中,所述基于多个所述第二寄存器块对象及所述第一寄存器块信息,生成多个第一寄存器块对象,包括:基于所述第一寄存器块信息,从多个所述第二寄存器块对象中确定每个所述第一寄存器块对象对应的若干候选寄存器块对象,所述若干候选寄存器块对象为多个所述第二寄存器块对象中与每个所述第一寄存器块对象匹配的寄存器块对象;基于所述若干候选寄存器块对象,生成多个第一寄存器块对象。
[0012]另一方面,本申请提供一种寄存器模型生成装置,所述寄存器模型生成装置包括:
文件获取单元,用于获取待验证芯片的多个寄存器描述文件,所述待验证芯片包括多个芯片设计模块,所述待验证芯片设计中存在多个主机,所述多个寄存器描述文件包括用于描述所述多个主机中各个主机的寄存器映射信息的映射表文件及用于描述所述多个芯片设计模块中每个芯片设计模块的寄存器描述信息的寄存器文件;文件解析单元,用于获取所述多个寄存器描述文件中每个寄存器描述文件的文件格式,根据所述文件格式对所述每个寄存器描述文件进行解析,得到所述各个主机的寄存器映射信息及所述每个芯片设计模块的寄存器描述信息;第一生成单元,用于根据所述每个芯片设计模块的寄存器描述信息,生成多个第一寄存器块对象;第二生成单元,用于根据所述各个主机的寄存器映射信息及所述多个第一寄存器块对象,生成所述各个主机对应的第一寄存器映射表对象;模型生成单元,用于根据所述多个第一寄存器块对象及所述第一寄存器映射表对象,生成所述待验证芯片对应的寄存器模型。
[0013]另一方面,本申请还提供一种计算机设备,所述计算机设备包括:一个或多个处理器;存储器;以及一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现第一方面中任一项所述的寄存器模型生成方法。
[0014]第四方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行第一方面任一项所述的寄存器模型生成方法中的步骤。
[0015]本申请根据文件格式对每个寄存器描述文件进行解析,可以支持多种文件格式的寄存器描述文件的解析,根据多个第一寄存器块本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种寄存器模型生成方法,其特征在于,所述寄存器模型生成方法包括:获取待验证芯片的多个寄存器描述文件,所述待验证芯片包括多个芯片设计模块,所述待验证芯片设计中存在多个主机,所述多个寄存器描述文件包括用于描述所述多个主机中各个主机的寄存器映射信息的映射表文件及用于描述所述多个芯片设计模块中每个芯片设计模块的寄存器描述信息的寄存器文件;获取所述多个寄存器描述文件中每个寄存器描述文件的文件格式,根据所述文件格式对所述每个寄存器描述文件进行解析,得到所述各个主机的寄存器映射信息及所述每个芯片设计模块的寄存器描述信息;根据所述每个芯片设计模块的寄存器描述信息,生成多个第一寄存器块对象;根据所述各个主机的寄存器映射信息及所述多个第一寄存器块对象,生成所述各个主机对应的第一寄存器映射表对象;根据所述多个第一寄存器块对象及所述第一寄存器映射表对象,生成所述待验证芯片对应的寄存器模型。2.根据权利要求1所述的寄存器模型生成方法,其特征在于,所述根据所述文件格式对所述每个寄存器描述文件进行解析,得到所述各个主机的寄存器映射信息及所述每个芯片设计模块的寄存器描述信息,包括:根据所述文件格式,从预先设置的多个初始文件解析模块中确定所述每个寄存器描述文件对应的目标文件解析模块,所述目标文件解析模块为所述多个初始文件解析模块中与所述文件格式匹配的模块;通过所述目标文件解析模块对所述每个寄存器描述文件进行解析,得到所述各个主机的寄存器映射信息及所述每个芯片设计模块的寄存器描述信息。3.根据权利要求1所述的寄存器模型生成方法,其特征在于,所述寄存器描述信息包括寄存器域信息、寄存器信息、寄存器文件信息、第一寄存器块信息及第二寄存器块信息,所述根据所述每个芯片设计模块的寄存器描述信息,生成多个第一寄存器块对象,包括:根据所述寄存器域信息、所述寄存器信息、所述寄存器文件信息及所述第二寄存器块信息,生成多个第二寄存器块对象;基于所述多个第二寄存器块对象及所述第一寄存器块信息,生成多个第一寄存器块对象。4.根据权利要求3所述的寄存器模型生成方法,其特征在于,所述根据所述寄存器域信息、所述寄存器信息、所述寄存器文件信息及所述第二寄存器块信息,生成多个第二寄存器块对象,包括:根据所述寄存器域信息,生成所述待验证芯片对应的多个域对象;基于所述寄存器信息对所述多个域对象进行实例化,生成所述待验证芯片对应的多个初始寄存器对象;基于所述多个初始寄存器对象及所述寄存器文件信息,生成每个所述初始寄存器对象的寄存器文件对象;基于所述多个初始寄存器对象、所述寄存器文件对象及所述第二寄存器块信息,生成多个第二寄存器块对象。5.根据权利要求4所述的寄存器模型生成方法,其特征在于,所述基于所述多个初始寄
存器对象、所述寄存器文件...

【专利技术属性】
技术研发人员:黄威孙宇豪胡涛
申请(专利权)人:湖北芯擎科技有限公司
类型:发明
国别省市:

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

1