CN107016189A - 一种基于perl实现断言自动插入RTL的方法 - Google Patents

一种基于perl实现断言自动插入RTL的方法 Download PDF

Info

Publication number
CN107016189A
CN107016189A CN201710217903.9A CN201710217903A CN107016189A CN 107016189 A CN107016189 A CN 107016189A CN 201710217903 A CN201710217903 A CN 201710217903A CN 107016189 A CN107016189 A CN 107016189A
Authority
CN
China
Prior art keywords
rtl
asserted
perl
code
storehouse
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.)
Pending
Application number
CN201710217903.9A
Other languages
English (en)
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.)
Guangdong Inspur Smart Computing Technology Co Ltd
Original Assignee
Guangdong Inspur Big Data Research 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 Guangdong Inspur Big Data Research Co Ltd filed Critical Guangdong Inspur Big Data Research Co Ltd
Priority to CN201710217903.9A priority Critical patent/CN107016189A/zh
Publication of CN107016189A publication Critical patent/CN107016189A/zh
Pending legal-status Critical Current

Links

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/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
    • 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
    • G06F30/3323Design verification, e.g. functional simulation or model checking using formal methods, e.g. equivalence checking or property checking

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及一种基于perl实现断言自动插入RTL的方法,其特征在于,包括如下步骤:步骤1:RTL设计代码中插入相应的代表相关断言验证的关键字,确定插入断言的位置;步骤2:从断言库中精确匹配插入关键字位置的断言程序,使断言库和RTL设计代码的有机结合,创建perl脚本;步骤3:执行perl脚本,实现向RTL代码中插入断言程序;步骤4:将插入后的代码写回到RTL代码文件中。

Description

一种基于perl实现断言自动插入RTL的方法
技术领域
本发明属于集成电路设计验证技术领域,具体涉及一种基于perl实现断言自动插入RTL的方法。
背景技术
当今超大规模集成电路复杂度高、规模大、层次多,验证复杂度剧增,采用断言方式的验证也愈来愈多,但在实际应用中,仅一个单一模块可能用到的断言监视器可能就达几十乃至百个之多,对于规模大的芯片,由设计人员手动在RTL代码中插入断言的方式,不仅会占用设计人员不少的时间和精力,而且手动操作更易出错,同时,迭代过程对元素进行删增等操作会出现断言错误,往往需要更多的精力进行修改。此为现有技术的不足之处。
发明内容
本发明的目的在于,针对在设计中插入断言的繁琐以及花费时间长,不便于迭代的缺陷,提供设计一种基于perl实现断言自动插入RTL的方法。
为了达到上述目的,本发明的技术方案为:
一种基于perl实现断言自动插入RTL的方法,其特征在于,包括如下步骤:
步骤1:RTL设计代码中插入相应的代表相关断言验证的关键字,确定插入断言的位置;
步骤2:从断言库中精确匹配插入关键字位置的断言程序,使断言库和RTL设计代码的有机结合,创建perl脚本;
步骤3:执行perl脚本,实现向RTL代码中插入断言程序;
步骤4:将插入后的代码写回到RTL代码文件中。
在进行上述步骤1之前,根据功能验证的配置参数,命名关键字,确定统一风格的关键字命名,并且关键字以库的形式进行管理;RTL编码前把设计划分为多个模块,创建所有模块所有需要插入的断言,各断言代码中定义相应的配置参数来完成功能的验证,并以库的形式进行管理。
步骤3中,RTL设计完成后执行perl脚本在关键字位置一键插入所有模块的断言。
优选地,根据不同验证点确定统一风格的关键字命名,验证点包括FIFO、Interface、存储器、信号明确有时间限制的关系点。
优选地,插入的关键字为FLAG_FIFO。
断言的产生过程包括:产生确认集成电路设计中各模块规格的设计数据或文档,并将数据进行存储;分析设计数据产生用于验证模块规格的特性,并将特性转换为断言描述;关键词库通过关键词匹配,验证通过,建立对应关系与断言库建立连接。
每个断言只验证一个条件。
为任何功能划分模糊或边角逻辑添加断言验证。
将分散在各层级各模块中分散状态的断言以库的形式统一管理;在RTL代码设计过程中,只需要向代码中插入提前命名好的关键字,代码完成后可通过perl的文本精确处理能力,在关键字位置一键插入所有模块的断言。
本发明的有益效果在于,利用perl的强大文本处理能力,通过实现自动化插入的方式,降低出错率,节省开发时间也便于迭代,迭代过程节省修改时间。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著地进步,其实施的有益效果也是显而易见的。
附图说明
图1 为本实施例提供的一种基于perl实现断言自动插入RTL的方法中perl的结构图。
图2为一种基于perl实现断言自动插入RTL的方法中自动插入过程示图。
具体实施方式
下面结合附图并通过具体实施例对本发明进行详细阐述,以下实施例是对本发明的解释,而本发明并不局限于以下实施方式。
如图1所示,本实施例提供的一种基于perl实现断言自动插入RTL的方法,包括如下步骤:
步骤1:RTL设计代码中插入相应的代表相关断言验证的关键字,确定插入断言的位置;
步骤2:从断言库中精确匹配插入关键字位置的断言程序,使断言库和RTL设计代码的有机结合,创建perl脚本;
步骤3:执行perl脚本,实现向RTL代码中插入断言程序;
步骤4:将插入后的代码写回到RTL代码文件中。
在进行上述步骤1之前,根据功能验证的配置参数,命名关键字,确定统一风格的关键字命名,并且关键字以库的形式进行管理;RTL编码前把设计划分为多个模块,创建所有模块所有需要插入的断言,各断言代码中定义相应的配置参数来完成功能的验证,并以库的形式进行管理。
步骤3中,RTL设计完成后执行perl脚本在关键字位置一键插入所有模块的断言。
根据不同验证点确定统一风格的关键字命名,验证点包括FIFO、Interface、存储器、信号明确有时间限制的关系点。
在RTL代码设计过程中,插入关键字FLAG_FIFO,编码完成后,执行perl脚本,根据关键词库和断言库的连接,从断言库中精确匹配应该插入FLAG_FIFO位置的断言程序,将插入后的代码写回到RTL代码文件中,如图2所示。
以上公开的仅为本发明的优选实施方式,但本发明并非局限于此,任何本领域的技术人员能思之的没有创造性的变化,以及在不脱离本发明原理前提下所作的若干改进和润饰,都应落在本发明的保护范围内。

Claims (7)

1.一种基于perl实现断言自动插入RTL的方法,其特征在于,包括如下步骤:
步骤1:RTL设计代码中插入相应的代表相关断言验证的关键字,确定插入断言的位置;
步骤2:从断言库中精确匹配插入关键字位置的断言程序,使断言库和RTL设计代码的有机结合,创建perl脚本;
步骤3:执行perl脚本,实现向RTL代码中插入断言程序;
步骤4:将插入后的代码写回到RTL代码文件中。
2.根据权利要求1所述的一种基于perl实现断言自动插入RTL的方法,其特征在于,在进行上述步骤1之前,根据功能验证的配置参数,命名关键字,确定统一风格的关键字命名,并且关键字以库的形式进行管理。
3.根据权利要求1或2所述的一种基于perl实现断言自动插入RTL的方法,其特征在于,在进行上述步骤1之前,RTL编码前把设计划分为多个模块,创建所有模块所有需要插入的断言,各断言代码中定义相应的配置参数来完成功能的验证,并以库的形式进行管理。
4.根据权利要求3所述的一种基于perl实现断言自动插入RTL的方法,其特征在于,步骤3中,RTL设计完成后执行perl脚本在关键字位置一键插入所有模块的断言。
5.根据权利要求4所述的一种基于perl实现断言自动插入RTL的方法,其特征在于,关键词库通过关键词匹配,验证通过,建立对应关系与断言库建立连接。
6.根据权利要求5所述的一种基于perl实现断言自动插入RTL的方法,其特征在于,根据不同验证点确定统一风格的关键字命名,验证点包括FIFO、Interface、存储器、信号明确有时间限制的关系点。
7.根据权利要求6任一项所述的一种基于perl实现断言自动插入RTL的方法,其特征在于,关键字为FLAG_FIFO。
CN201710217903.9A 2017-04-05 2017-04-05 一种基于perl实现断言自动插入RTL的方法 Pending CN107016189A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710217903.9A CN107016189A (zh) 2017-04-05 2017-04-05 一种基于perl实现断言自动插入RTL的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710217903.9A CN107016189A (zh) 2017-04-05 2017-04-05 一种基于perl实现断言自动插入RTL的方法

Publications (1)

Publication Number Publication Date
CN107016189A true CN107016189A (zh) 2017-08-04

Family

ID=59446135

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710217903.9A Pending CN107016189A (zh) 2017-04-05 2017-04-05 一种基于perl实现断言自动插入RTL的方法

Country Status (1)

Country Link
CN (1) CN107016189A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107506558A (zh) * 2017-09-05 2017-12-22 郑州云海信息技术有限公司 一种采用断言和脚本提高统计功能覆盖率效率的方法
CN110442929A (zh) * 2019-07-18 2019-11-12 上海磐启微电子有限公司 一种基于perl实现芯片系统顶层自动例化的方法
CN111615688A (zh) * 2019-05-28 2020-09-01 深圳市大疆创新科技有限公司 一种断言验证代码绑定方法及装置
CN112364580A (zh) * 2020-11-13 2021-02-12 上海兆芯集成电路有限公司 自动在寄存器传输级设计文件中插入特定代码的方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101706753A (zh) * 2009-12-11 2010-05-12 武汉虹信通信技术有限责任公司 一种基于Perl的单元测试框架及方法
CN102567193A (zh) * 2010-12-09 2012-07-11 北京新媒传信科技有限公司 测试用例转化为自动化测试脚本的方法及系统
CN105930299A (zh) * 2016-04-25 2016-09-07 浪潮电子信息产业股份有限公司 一种基于BFM的SystemVerilog搭建协议验证平台的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101706753A (zh) * 2009-12-11 2010-05-12 武汉虹信通信技术有限责任公司 一种基于Perl的单元测试框架及方法
CN102567193A (zh) * 2010-12-09 2012-07-11 北京新媒传信科技有限公司 测试用例转化为自动化测试脚本的方法及系统
CN105930299A (zh) * 2016-04-25 2016-09-07 浪潮电子信息产业股份有限公司 一种基于BFM的SystemVerilog搭建协议验证平台的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
杨弢: "基于断言的功能验证方法研究", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107506558A (zh) * 2017-09-05 2017-12-22 郑州云海信息技术有限公司 一种采用断言和脚本提高统计功能覆盖率效率的方法
CN111615688A (zh) * 2019-05-28 2020-09-01 深圳市大疆创新科技有限公司 一种断言验证代码绑定方法及装置
WO2020237508A1 (zh) * 2019-05-28 2020-12-03 深圳市大疆创新科技有限公司 一种断言验证代码绑定方法及装置
CN110442929A (zh) * 2019-07-18 2019-11-12 上海磐启微电子有限公司 一种基于perl实现芯片系统顶层自动例化的方法
CN110442929B (zh) * 2019-07-18 2023-08-01 上海磐启微电子有限公司 一种基于perl实现芯片系统顶层自动例化的方法
CN112364580A (zh) * 2020-11-13 2021-02-12 上海兆芯集成电路有限公司 自动在寄存器传输级设计文件中插入特定代码的方法及装置

Similar Documents

Publication Publication Date Title
CN107016189A (zh) 一种基于perl实现断言自动插入RTL的方法
Smock et al. PubTables-1M: Towards comprehensive table extraction from unstructured documents
CN110348441B (zh) 增值税发票识别方法、装置、计算机设备及存储介质
CN110795482B (zh) 数据对标方法、装置、及存储装置
CN109739766A (zh) 一种快速搭建fpga数字仿真模型的系统及方法
CN104408264B (zh) 一种基于断言的嵌入式存储控制器验证系统及方法
CN109150833A (zh) 一种基于模型检测的安全协议形式化验证方法
CN102129493B (zh) 数字ic设计流程中实现自动化eco网表的方法
CN108153920A (zh) 集成电路设计的rtl阶段期间的时钟门控验证
CN107239616B (zh) 一种集成电路原理图的对比方法
US20230308381A1 (en) Test script generation from test specifications using natural language processing
US20230153499A1 (en) Register-transfer level signal mapping construction method, device, apparatus and storage medium
US20180129771A1 (en) Design support method, and information processing apparatus
US11443089B1 (en) Timing verification of non-standard library blocks
Harris et al. Generating formal hardware verification properties from natural language documentation
CN109165209A (zh) 数据库中对象类型的数据校验方法、装置、设备及介质
CN115796093B (zh) 电路时序优化方法、装置、电子设备及存储介质
CN103377123B (zh) 一种网页代码自动化测试方法及装置
CN110245349A (zh) 一种句法依存分析方法、装置及一种电子设备
CN113536718B (zh) 一种门级仿真网表文件正确性的验证方法及装置
US8010920B2 (en) Constraint management and validation for template-based circuit design
CN112733478A (zh) 用于对设计进行形式验证的装置
CN117555519A (zh) 基于自然语言处理的SysML软件需求建模方法和系统
CN108363567B (zh) 一种基于数据库的验证平台激励器自动化生成方法
US6981238B1 (en) Verification of integrated circuit designs using buffer control

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20170804

RJ01 Rejection of invention patent application after publication