买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】UVM寄存器模型快速生成方法及系统、芯片验证方法及系统_博流智能科技(南京)有限公司_202110912228.8 

申请/专利权人:博流智能科技(南京)有限公司

申请日:2021-08-10

公开(公告)日:2024-03-22

公开(公告)号:CN113705161B

主分类号:G06F40/12

分类号:G06F40/12;G06F30/20;G06F16/31

优先权:

专利状态码:有效-授权

法律状态:2024.03.22#授权;2021.12.14#实质审查的生效;2021.11.26#公开

摘要:本发明揭示了一种UVM寄存器模型快速生成方法及系统、芯片验证方法及系统;所述UVM寄存器模型快速生成方法包括:定义寄存器表格;将设定寄存器表格转换成寄存器模型信息;根据转换得到的寄存器模型信息生成寄存器模型;输出UVM寄存器模型。本发明揭示的UVM寄存器模型快速生成方法及系统、芯片验证方法及系统,可解决手动编写繁琐的UVM寄存器模型的低效率高错误率的问题,只需要一份设计人员提供的模块excel格式的表格,便可以立刻输出UVM寄存器模型,省去了繁琐手动编写的过程,且保证了UVM寄存器模型的正确率。

主权项:1.一种UVM寄存器模型快速生成方法,其特征在于,所述方法包括:将设定寄存器表格转换成寄存器模型信息;所述寄存器表格包括基地址,各个寄存器的偏移地址、寄存器名字,寄存器子field的宽度、名字及读写属性;根据转换得到的寄存器模型信息生成寄存器模型;所述将设定寄存器表格转换成寄存器模型信息步骤包括:步骤A、通过perl脚本读取寄存器表格;步骤B、通过perl脚本输出第一文本格式的寄存器表格信息;步骤C、通过perl脚本解析第一文本格式的寄存器表格信息;步骤D、根据解析得到的第一文本格式的寄存器表格信息输出第二文本格式的寄存器模型信息;所述根据转换得到的寄存器模型信息生成寄存器模型步骤包括:通过perl哈希存储的方法存储下所有的信息,用4个哈希,分别存储匹配到的Ral、sub_reg_block、sub_reg、sub_reg_field,4个哈希的名字分别为Ral、sub_reg_block、sub_reg、sub_reg_field,Ral哈希有两级,sub_reg_block哈希有三级,sub_reg哈希有四级,sub_reg_field哈希有五级;首先初始化Ral_cnt,接着读取一行文本格式的寄存器模型信息,依次判断该行是否匹配到Ral、sub_reg_block、sub_reg和sub_reg_field,如果都没匹配到,看是否为最后一行的寄存器模型信息,是则直接结束,否则,继续读取一行文本格式的寄存器模型信息,继续匹配检测;若匹配到任意一种模式,则进行匹配项存入哈希操作;按照寄存器模型信息的排布,匹配到Ral时,将sub_reg_block_cnt置0,为匹配到sub_reg_block的存储做准备,将匹配项以Ral_cnt和NAME分别为以一级、二级索引存入Ral哈希,随后将Ral_cnt加一,为下一次匹配到Ral的存储做准备;接下来匹配到sub_reg_block时,将sub_reg_cnt置0,为匹配到sub_reg的存储做准备,将匹配项以Ral_cnt、sub_reg_block_cnt和NAME分别为以一级、二级、三级索引存入sub_reg_block哈希,随后将sub_reg_block_cnt加一,为下一次匹配到sub_reg_block的存储做准备;再接下来匹配到sub_reg时,将sub_reg_field_cnt置0,为匹配到sub_reg_field的存储做准备,将匹配项以Ral_cnt、sub_reg_block_cnt、sub_reg_cnt和NAME分别为以一级、二级索、三级、四级索引存入sub_reg哈希,随后将sub_reg_cnt加一,为下一次匹配到sub_reg的存储做准备;最后匹配到sub_reg_field时,将匹配项以Ral_cnt、sub_reg_block_cnt、sub_reg_cnt、sub_reg_field_cnt和NAME分别为以一级、二级索、三级、四级、五级索引存入sub_reg_field哈希,随后将sub_reg_field_cnt加一,为下一次匹配到sub_reg_field的存储做准备;上述四个匹配任意一个匹配到并存储完成之后,都会去判断是否是最后一行的寄存器模型信息,是则直接结束,否则,继续读取一行文本寄存器模型信格式的息,继续上述匹配操作;当读取完所有的文本寄存器模型信格式的息时,Ral哈希里面存储了Ral_cnt编号对应的顶层uvm_reg_block的信息,sub_reg_block哈希存储了Ral_cnt编号对应的顶层uvm_reg_block里面的所有子uvm_reg_block信息;子uvm_reg_block的编号为sub_reg_block_cnt,sub_reg哈希存储了Ral_cnt编号对应的顶层uvm_reg_block里面sub_reg_block_cnt编号对应的子uvm_reg_block里面所有的子uvm_reg信息;子uvm_reg的编号为sub_reg_cnt,sub_reg_field哈希的存储以次类推;至此,四个哈希存储了所有构建uvm寄存器模型所需要的信息,只需要从Ral哈希开始向下4层嵌套的依次遍历Ral、sub_reg_block、sub_reg、sub_reg_field哈希储存,并按照uvm寄存器模型的格式输出,便可以按照top-down的形式输出uvm寄存器模型文件。

全文数据:

权利要求:

百度查询: 博流智能科技(南京)有限公司 UVM寄存器模型快速生成方法及系统、芯片验证方法及系统

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。