CN105279050A - 一种检测SoC前后端ROM数据一致性的方法 - Google Patents
一种检测SoC前后端ROM数据一致性的方法 Download PDFInfo
- Publication number
- CN105279050A CN105279050A CN201510631952.8A CN201510631952A CN105279050A CN 105279050 A CN105279050 A CN 105279050A CN 201510631952 A CN201510631952 A CN 201510631952A CN 105279050 A CN105279050 A CN 105279050A
- Authority
- CN
- China
- Prior art keywords
- rom data
- soc
- rom
- data
- file
- 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.)
- Granted
Links
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明公开了一种检测SoC前后端ROM数据一致性的方法,属于集成电路设计技术领域。本方法包括确定产生前端ROM数据、提取电路网表ROM数据、整理输出后端ROM数据和对比前后端ROM数据和结果输出步骤。本发明自动快速地实现了对比前后端ROM数据,降低了人工成本,克服了人工干预的出错率高的问题。
Description
技术领域
本发明涉及一种检测ROM数据一致性的方法,尤其涉及一种检测SoC前后端ROM数据一致性的方法,属于集成电路设计技术领域。
背景技术
片上系统SoC(SystemonChip)技术是20世纪90年代以来迅速发展起来的超大规模集成电路的主流技术,该技术是信息技术领域一门最新的先进技术,是集成电路最新技术与软件技术的有机结合。SoC设计是一个复杂的过程,涵盖了系统级设计、寄存器传输级RTL(RegisterTransmitLevel)设计、可测试性设计、仿真验证、逻辑综合、版图设计、物理验证、寄生参数提取、后仿真等一系列步骤。通常逻辑综合步骤之前称为前端设计,逻辑综合步骤之后的称为后端设计。
SoC技术以嵌入式系统为核心,以知识产权复用技术为基础,集软/硬件于一体,并追求产品系统最大包容的集成芯片。通常情况下,SoC系统上电加载只读存储器ROM(ReadOnlyMemory)中软件程序,通过软件程序配置其他模块实现与中央处理单元核心协同工作。因此,仿真验证过程中的ROM数据与SoC最终版图实现的ROM数据一致性显得尤为重要。
SoC系统的软件程序需要多次仿真验证迭代过程才能确定最终版本,而在设计流程中,为了缩短上市时间,通常在逻辑综合之后将数据交由后端进行版图设计。这期间容易产生前后端ROM数据不一致的情况,从而导致SoC设计失败。
发明内容
由于前后端数据的不一致性,将会导致最终设计的失败,因此需要一种高效和快速检测SoC前后端ROM数据一致性的方法。
为解决上述技术问题,本发明采用以下技术方案,一种检测SoC前后端ROM数据一致性的方法,包括以下步骤:
步骤1:编译器产生ROM调试文件,通过脚本将ROM调试文件转换成前端ROM数据;
步骤2:查找SoC后端的电路网表文件中ROM单元的名称,并从SoC后端的电路网表文件中提取ROM数据;
步骤3:将提取的ROM数据根据ROM属性整理输出,得到SoC后端ROM数据;
步骤4:将SoC前端ROM数据与SoC后端ROM数据进行对比;
步骤5:根据对比结果确定SoC前端ROM数据与SoC后端ROM数据是否一致。
其中,步骤2中,所述的电路网表文件为CDL文件。
其中,步骤4之后还包括:将对比结果打印输出。
采用上述技术方案带来的有益效果是:
1.在SoC设计流程中,本发明能够通过对比前后端ROM数据保证设计实现的准确性;
2.在SoC设计流程中,本发明能够准确对比前后端ROM数据,减少人工干预引入的错误,提高工作效率;
3.在SoC设计流程中,本发明能够自动化对比前后端ROM数据,贴近自动化生产的主要设计流程。
附图说明
图1是本发明的流程图。
具体实施方式
下面结合附图和实施例对本发明做进一步详细的描述。
ROM一致性检查是指仿真模型中的数据和掩模版图中的数据保持一致。由于标准SoC后端设计流程中,通过LVS(LayoutVersusSchematic)步骤可以保证掩模版图和电路网表的一致性,因此ROM仿真模型与掩模版图一致性的检查可以改为仿真模型与电路网表一致性的检查。
电路网表的文件格式为ASCII码格式,可以进行通用文本处理;电路网表记录了只读存储器的晶体管级连接关系,通过研究只读存储器电路原理,掌握只读存储器数据0和数据1的电路结构形式,通过自动化脚本提取电路网表的数据内容;仿真模型的文件格式为ASCII码格式,使用数据0和数据1记录了只读存储器的内容,可以直接与提取的数据内容比较。
如图1所示,一种检测SoC前后端ROM数据一致性的方法,具体包括以下步骤:
步骤1:使用GCC编译器产生ROM调试文件,通过bin2hex.pl脚本将ROM调试文件转换成前端ROM数据,前端ROM数据与由软件MemoryCompiler产生ROM时的初始化文件保持一致。
步骤2:运行脚本cdl_cell.plxx(xx为ROM的CDL文件),查找CDL文件中ROM单元的名称,并从SCDL文件中提取ROM数据。CDL文件中ROM单元的名称与MemoryCompiler生成ROM时指定的名称一致。
提取存储数据时,选择CDL文件作为后端ROM提取数据的标准,是因为掩模文件GSDII是可读性较差的二进制格式文件,而标准后端设计流程中,可以通过LVS(LayoutVersusSchematic)步骤保证CDL与GDSII的一致性;CDL文件实际上是一种SPICE网表文件,记录了晶体管之间的互连关系;只读存储器通过晶体管连接到电源或者地线来存储不同的数据,在确定CDL文件中单元名称后,自动调用extract_data.pl脚本,匹配CDL文件中单元名称之后的晶体管,CDL中的晶体管描述关键字为MNx(x为顺序排列的阿拉伯数字),根据晶体管的第一个参数(栅极G)的连接关系判断存储数据。
步骤3:将从CDL文件中提取的ROM数据按照ROM数据宽度输出到指定文件中,通常输出文件命名为cdl.data,该文件内容为0、1二进制数据。
步骤4:仿真模型中使用的存储数据文件是后缀为RCF的ASCII码格式,产生cdl.data文件后,自动调用rcf_cdl_cpm.pl脚本,逐行对比前端RCF格式ROM数据文件与后端提取数据cdl.data文件。
该过程中,将在当前执行窗口打印辅助信息通知用户对比结果;如:对比结果一致将打印“Congratulation!”;对比结果不一致将打印“CompareFailed!”,并打印不一致行号,根据行号定位不一致数据信息。
以上所述仅为本发明的一种具体的实施方式。本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
Claims (3)
1.一种检测SoC前后端ROM数据一致性的方法,其特征在于包括以下步骤:
步骤1:编译器产生ROM调试文件,通过脚本将ROM调试文件转换成SoC前端ROM数据;
步骤2:查找SoC后端的电路网表文件中ROM单元的名称,并从SoC后端的电路网表文件中提取ROM数据;
步骤3:将提取的ROM数据根据ROM属性整理输出,得到SoC后端ROM数据;
步骤4:将SoC前端ROM数据与SoC后端ROM数据进行对比;
步骤5:根据对比结果确定SoC前端ROM数据与SoC后端ROM数据是否一致。
2.权利要求1所述的一种检测SoC前后端ROM数据一致性的方法,其特征在于:步骤2中,所述的电路网表文件为CDL文件。
3.权利要求1所述的一种检测SoC前后端ROM数据一致性的方法,其特征在于:所述步骤4之后还包括:将对比结果打印输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510631952.8A CN105279050B (zh) | 2015-09-29 | 2015-09-29 | 一种检测SoC前后端ROM数据一致性的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510631952.8A CN105279050B (zh) | 2015-09-29 | 2015-09-29 | 一种检测SoC前后端ROM数据一致性的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105279050A true CN105279050A (zh) | 2016-01-27 |
CN105279050B CN105279050B (zh) | 2019-01-15 |
Family
ID=55148098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510631952.8A Active CN105279050B (zh) | 2015-09-29 | 2015-09-29 | 一种检测SoC前后端ROM数据一致性的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105279050B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106611084A (zh) * | 2016-11-29 | 2017-05-03 | 北京集创北方科技股份有限公司 | 集成电路的设计方法及装置 |
CN108228443A (zh) * | 2016-12-14 | 2018-06-29 | 北京国双科技有限公司 | 一种web应用的测试方法及装置 |
CN112131830A (zh) * | 2020-09-25 | 2020-12-25 | 成都海光微电子技术有限公司 | 一种寄生参数验证方法、装置、电子设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6197605B1 (en) * | 1996-04-10 | 2001-03-06 | Altera Corporation | Method and device for test vector analysis |
CN1316694A (zh) * | 2000-04-03 | 2001-10-10 | 中国人民解放军国防科学技术大学 | Asic芯片设计软硬件合作模拟与测试的一体化仪器 |
CN1622312A (zh) * | 2003-11-27 | 2005-06-01 | 北京北阳电子技术有限公司 | 一种验证芯片硬件行为与软件模拟行为的一致性的方法 |
CN101515301A (zh) * | 2008-02-23 | 2009-08-26 | 炬力集成电路设计有限公司 | 一种片上系统芯片验证的方法和装置 |
CN104346272A (zh) * | 2013-07-24 | 2015-02-11 | 无锡华润微电子有限公司 | 芯片自动仿真验证系统 |
-
2015
- 2015-09-29 CN CN201510631952.8A patent/CN105279050B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6197605B1 (en) * | 1996-04-10 | 2001-03-06 | Altera Corporation | Method and device for test vector analysis |
CN1316694A (zh) * | 2000-04-03 | 2001-10-10 | 中国人民解放军国防科学技术大学 | Asic芯片设计软硬件合作模拟与测试的一体化仪器 |
CN1622312A (zh) * | 2003-11-27 | 2005-06-01 | 北京北阳电子技术有限公司 | 一种验证芯片硬件行为与软件模拟行为的一致性的方法 |
CN101515301A (zh) * | 2008-02-23 | 2009-08-26 | 炬力集成电路设计有限公司 | 一种片上系统芯片验证的方法和装置 |
CN104346272A (zh) * | 2013-07-24 | 2015-02-11 | 无锡华润微电子有限公司 | 芯片自动仿真验证系统 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106611084A (zh) * | 2016-11-29 | 2017-05-03 | 北京集创北方科技股份有限公司 | 集成电路的设计方法及装置 |
CN108228443A (zh) * | 2016-12-14 | 2018-06-29 | 北京国双科技有限公司 | 一种web应用的测试方法及装置 |
CN108228443B (zh) * | 2016-12-14 | 2021-10-15 | 北京国双科技有限公司 | 一种web应用的测试方法及装置 |
CN112131830A (zh) * | 2020-09-25 | 2020-12-25 | 成都海光微电子技术有限公司 | 一种寄生参数验证方法、装置、电子设备和存储介质 |
CN112131830B (zh) * | 2020-09-25 | 2021-06-15 | 成都海光微电子技术有限公司 | 一种寄生参数验证方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105279050B (zh) | 2019-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9355211B2 (en) | Unified tool for automatic design constraints generation and verification | |
US7506292B2 (en) | Method for clock synchronization validation in integrated circuit design | |
US7644382B2 (en) | Command-language-based functional engineering change order (ECO) implementation | |
CN102402430B (zh) | 一种利用脚本生成随机测试例方法和系统 | |
CN104407976B (zh) | 一种接口健壮性测试用例生成方法及装置 | |
US8209650B2 (en) | Method and system for entry and verification of parasitic design constraints for analog integrated circuits | |
US10586003B1 (en) | Circuit design using high level synthesis and linked hardware description language libraries | |
CN102623069B (zh) | 随机激励闪存模型验证方法 | |
CN106776515A (zh) | 数据处理的方法及装置 | |
US10255403B1 (en) | Method and apparatus for concurrently extracting and validating timing models for different views in multi-mode multi-corner designs | |
CN105279050A (zh) | 一种检测SoC前后端ROM数据一致性的方法 | |
US8042085B2 (en) | Method for compaction of timing exception paths | |
CN104091161A (zh) | 一种电路原理图网表比对方法 | |
US8037443B1 (en) | System, method, and computer program product for optimizing an altered hardware design utilizing power reports | |
CN107798030A (zh) | 数据表的拆分方法和装置 | |
CN115563910B (zh) | Upf命令的执行方法、装置、设备及存储介质 | |
CN105653669B (zh) | 超文本标记语言生成方法及装置 | |
CN115509904A (zh) | 一种接口测试用例的断言生成方法及装置 | |
CN102495778B (zh) | 一种测试单包正则匹配逻辑的系统和方法 | |
CN107784185B (zh) | 一种门级网表中伪路径的提取方法、装置及终端设备 | |
CN104021075A (zh) | 用于程序代码的评估方法和装置 | |
CN105446859A (zh) | 功耗分析的软件条件监测及波形文件自动生成方法 | |
US10162917B1 (en) | Method and system for implementing selective transformation for low power verification | |
US10289773B2 (en) | Reset domain crossing management using unified power format | |
US10599802B2 (en) | Methods for automatic engineering change order (ECO) bug fixing in integrated circuit design |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |