CN114650246A - Ip核调用的检测方法、装置及设备 - Google Patents
Ip核调用的检测方法、装置及设备 Download PDFInfo
- Publication number
- CN114650246A CN114650246A CN202011508063.XA CN202011508063A CN114650246A CN 114650246 A CN114650246 A CN 114650246A CN 202011508063 A CN202011508063 A CN 202011508063A CN 114650246 A CN114650246 A CN 114650246A
- Authority
- CN
- China
- Prior art keywords
- chip
- information
- design
- core
- target chip
- 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
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 26
- 238000000034 method Methods 0.000 claims abstract description 121
- 238000013461 design Methods 0.000 claims description 1834
- 238000012795 verification Methods 0.000 claims description 697
- 238000010586 diagram Methods 0.000 claims description 364
- 230000006870 function Effects 0.000 claims description 305
- 238000011160 research Methods 0.000 claims description 143
- 238000012360 testing method Methods 0.000 claims description 85
- 238000012938 design process Methods 0.000 claims description 42
- 230000005540 biological transmission Effects 0.000 claims description 36
- 238000012986 modification Methods 0.000 claims description 25
- 230000004048 modification Effects 0.000 claims description 25
- 238000012546 transfer Methods 0.000 claims description 22
- 238000012512 characterization method Methods 0.000 claims description 20
- 238000012790 confirmation Methods 0.000 claims description 8
- 238000013515 script Methods 0.000 claims description 8
- 238000013475 authorization Methods 0.000 claims description 7
- 238000010200 validation analysis Methods 0.000 claims description 2
- 238000004891 communication Methods 0.000 abstract description 2
- 238000004088 simulation Methods 0.000 description 16
- 239000003550 marker Substances 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000002194 synthesizing effect Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 239000003990 capacitor Substances 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000005498 polishing Methods 0.000 description 2
- 235000013599 spices Nutrition 0.000 description 2
- 108010001267 Protein Subunits Proteins 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明提供一种IP核调用的检测方法、装置及设备,属于通信技术领域,其中一种方法包括:根据第一信息,确定目标芯片中和/或所述目标芯片的信息中,是否调用IP核和/或是否疑似调用IP核;和/或,根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核;其中,所述目标芯片的信息为一种信息或多种信息。本发明提高了IP核调用情况检测的准确性和可信度。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种IP核调用的检测方法、装置及设备。
背景技术
芯片设计是芯片产业链的核心和源头,其自主可控度在整个芯片的自主可控度中占有举足轻重的地位。
随着芯片规模的逐步扩大,芯片设计时会借助和集成一些成熟的知识产权核(Intellectual Property Core,IP核)以降低设计时间、提高效率。因此IP核的自主情况是芯片设计自主可控度的一个重要评判指标。
但是,目前的IP核检测方法的准确度和可信度有限。
发明内容
有鉴于此,本发明提供一种IP核调用的检测方法、装置及设备,用于解决目前的芯片IP核检查方法的准确度和可信度有限的问题。
为解决上述技术问题,第一方面,本发明提供一种IP核调用的检测方法,包括:
根据第一信息,确定目标芯片中和/或所述目标芯片的信息中,是否调用IP核和/或是否疑似调用IP核;和/或,
根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核;
其中,所述目标芯片的信息为一种信息或多种信息。
第二方面,本发明还提供一种IP核调用的检测装置,包括:
IP核调用判断模块,用于根据第一信息,确定目标芯片中和/或所述目标芯片的信息中,是否调用IP核和/或是否疑似调用IP核;和/或,
IP核调用确定模块,用于根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核;
其中,所述目标芯片的信息为一种信息或多种信息。
可选的,所述目标芯片为整个或者部分芯片,所述芯片的种类包括但不限于以下一种或多种:已完成封装的芯片、未封装的裸片、裸片中的模块、裸片中的单元。
可选的,所述第一信息与所述第二信息相同或者不同。
可选的,所述第一信息包括芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,和/或芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图;
所述IP核调用判断模块,包括但不限于以下一种或多种:
第一判断子模块,用于芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中,若其中有空白区域和/或空白区域面积大于或等于第一预设门限和/或空白区域占据比例大于或等于第二预设门限和/或空白区域为规整的几何图形,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述空白区域占据比例是指空白区域占据所述设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的比例,所述规整的几何图形包括但不限于以下一种或多种:正方形、长方形、菱形、梯形、平行四边形、圆形、椭圆形、三角形、多边形、弓形、弧形;
第二判断子模块,用于将芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图与对应的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图比对,若比对不一致,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核,所述比对不一致的情况包括但不限于以下一种或多种:所有层和/或部分层和/或一层比对不一致;所有层和/或部分层和/或一层中,整个区域和/或多个局部区域和/或一个局部区域比对不一致;
第三判断子模块,用于若所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中,和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中存在第一标识,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述第一标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第四判断子模块,用于若所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中,和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中存在第二标识,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述第二标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第五判断子模块,用于将所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,与第一预设库中的版图和/或布图和/或布局布线和/或布局布线图进行比对,若所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的第一区域,与所述第一预设库中的版图和/或布图和/或布局布线和/或布局布线图的第二区域相同和/或相似和/或相似度大于或等于第三预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第一预设库中不包含所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图;
第六判断子模块,用于将所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,与第二预设库中的版图和/或布图和/或布局布线和/或布局布线图进行比对,若所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的第三区域,与所述第二预设库中的版图和/或布图和/或布局布线和/或布局布线图的第四区域相同和/或相似和/或相似度大于或等于第四预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第二预设库中为所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图、和/或所述目标芯片的设计公司的版图和/或布图和/或布局布线和/或布局布线图IP核库、和/或所述目标芯片的设计公司的IP核库;
第七判断子模块,用于将所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,与第三预设库中的版图和/或布图和/或布局布线和/或布局布线图进行比对,若所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的第五区域,与所述第三预设库中的版图和/或布图和/或布局布线和/或布局布线图的第六区域相同和/或相似和/或相似度大于或等于第五预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第三预设库中不包含所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图;
第八判断子模块,用于将所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,与第四预设库中的版图和/或布图和/或布局布线和/或布局布线图进行比对,若所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的第七区域,与所述第四预设库中的版图和/或布图和/或布局布线和/或布局布线图的第八区域相同和/或相似和/或相似度大于或等于第六预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第四预设库中为所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图、和/或所述目标芯片的设计公司的版图和/或布图和/或布局布线和/或布局布线图IP核库、和/或所述目标芯片的设计公司的IP核库。
可选的,所述第一信息包括芯片的原理图,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;
所述IP核调用判断模块包括但不限于以下一种或多种:
第九判断子模块,用于若所述芯片的原理图中存在第三标识,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述第三标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第十判断子模块,用于若所述芯片的原理图中存在第四标识,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述第四标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第十一判断子模块,用于将所述芯片的原理图与第五预设库中的原理图进行比对,若所述芯片原理图中的第九区域与所述第五预设库中的原理图的第十区域相同和/或相似和/或相似度大于或等于第七预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第五预设库中不包含所述目标芯片的设计公司设计的原理图;
第十二判断子模块,用于将所述芯片的原理图与第六预设库中的原理图进行比对,若所述芯片原理图中的第十一区域与所述第六预设库中的原理图的第十二区域相同和/或相似和/或相似度大于或等于第八预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第六预设库中为所述目标芯片的设计公司设计的原理图、和/或所述目标芯片的设计公司的原理图IP核库、和/或所述目标芯片的设计公司的IP核库;
第十三判断子模块,用于针对所述芯片的原理图与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第十四判断子模块,用于针对所述芯片的原理图与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
可选的,所述第一信息包括芯片晶体管级的网表,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;所述晶体管级的网表包括但不限于以下一种或多种:描述为晶体管级别的网表,芯片原理图对应的晶体管级的网表,芯片完成最终设计的门级网表对应的晶体管级的网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的晶体管级的网表,模数混合芯片中由模拟模块原理图对应的晶体管级的网表和/或数字模块完成最终设计的门级网表对应的晶体管级的网表所组成的晶体管级的网表;
所述IP核调用判断模块包括但不限于以下一种或多种:
第十五判断子模块,用于若所述芯片晶体管级的网表中存在第五标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第五标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第十六判断子模块,用于若所述芯片晶体管级的网表中存在第六标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第六标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第十七判断子模块,用于将所述芯片晶体管级的网表与第七预设库中的晶体管级的网表进行比对,若所述芯片晶体管级的网表中的第一部分与所述第七预设库中的晶体管级的网表中的第二部分相同和/或相似和/或相似度大于或等于第九预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第七预设库中不包含所述目标芯片的设计公司设计的晶体管级的网表;
第十八判断子模块,用于将所述芯片晶体管级的网表与第八预设库中的晶体管级的网表进行比对,若所述芯片晶体管级的网表中的第三部分与所述第八预设库中的晶体管级的网表中的第四部分相同和/或相似和/或相似度大于或等于第十预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第八预设库中为所述目标芯片的设计公司设计的晶体管级的网表、和/或所述目标芯片的设计公司的晶体管级的网表IP核库、和/或所述目标芯片的设计公司的IP核库;
第十九判断子模块,用于针对所述芯片晶体管级的网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第二十判断子模块,用于针对所述芯片晶体管级的网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
可选的,所述第一信息包括芯片的门级网表,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;所述芯片的门级网表包括但不限于以下一种或多种:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片寄存器传输级RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表;所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表;
所述IP核调用判断模块包括但不限于以下一种或多种:
第二十一判断子模块,用于若所述芯片的门级网表中存在第七标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第七标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第二十二判断子模块,用于若所述芯片的门级网表中存在第八标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第八标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第二十三判断子模块,用于将所述芯片的门级网表与第九预设库中的门级网表进行比对,若所述芯片的门级网表中的第五部分与所述第九预设库中的门级网表的第六部分相同和/或相似和/或相似度大于或等于第十一预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第九预设库中不包含所述目标芯片的设计公司设计的门级网表;
第二十四判断子模块,用于将所述芯片的门级网表与第十预设库中的门级网表进行比对,若所述芯片的门级网表中的第七部分与所述第十预设库中的门级网表的第八部分相同和/或相似和/或相似度大于或等于第十二预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第十预设库中为所述目标芯片的设计公司设计的门级网表、和/或所述目标芯片的设计公司的门级网表IP核库、和/或所述目标芯片的设计公司的IP核库;
第二十五判断子模块,用于针对所述芯片的门级网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第二十六判断子模块,用于针对所述芯片的门级网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第二十七判断子模块,用于将芯片的门级网表转化为芯片晶体管级的网表后,针对转化的芯片晶体管级的网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第二十八判断子模块,用于将芯片的门级网表转化为芯片晶体管级的网表后,针对转化的芯片晶体管级的网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,修改其中一个或者部分数量或者所有的模块和/或单元的名称、并在修改之后使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第二十九判断子模块,用于针对芯片的门级网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、修改其中一个或者部分数量或者所有的模块和/或单元的名称,再将修改后的门级网表转化为芯片晶体管级的网表,针对转化的芯片晶体管级的网表与修改后的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第三十判断子模块,用于针对芯片的两种门级网表,使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证,若其中一次或者多次的形式验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第三十一判断子模块,用于针对芯片的两种门级网表,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证,若其中一次或者多次的形式验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
其中,开展形式验证时,如果两种门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;其中,对该差异对应的功能和/或逻辑不验证包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
可选的,所述第一信息包括芯片RTL代码,和/或芯片的门级网表;所述芯片的门级网表包括但不限于以下一种或多种:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表;所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表;
所述IP核调用判断模块包括但不限于以下一种或多种:
第三十二判断子模块,用于若所述芯片RTL代码中存在第九标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第九标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第三十三判断子模块,用于若所述芯片RTL代码中存在第十标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第十标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第三十四判断子模块,用于若所述芯片RTL代码中存在除寄存器传输级描述之外的其他级别描述,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述除寄存器传输级描述之外的其他级别描述包括但不限于门级描述;其中,所述第三十四判断子模块还用于检查所述芯片RTL代码中是否存在除寄存器传输级描述之外的其他级别描述,所述第三十四判断子模块包括但不限于以下一种或多种:第一检索单元,用于对芯片RTL代码进行关键词检索;第一比对单元,用于对芯片RTL代码与芯片的门级网表进行比对,若所述芯片RTL代码中的第九部分与所述芯片的门级网表的第十部分相同和/或相似和/或相似度大于或等于第十三预设门限,则确定所述芯片RTL代码中存在除寄存器传输级描述之外的其他级别描述;其中,所述第一检索单元包括但不限于以下一种或多种:第一检索子单元,用于使用代表除寄存器传输级描述之外的其他级别描述的一种或多种关键词对RTL代码进行检索,若发现RTL代码中存在其中一种或多种关键词和/或RTL代码中存在其中一种或多种关键词的总数量大于或等于第十四预设门限和/或RTL代码中存在其中一种或多种关键词的总数量占据整个RTL代码词总量的比例大于或等于第十五预设门限,则确定所述芯片RTL代码中存在除寄存器传输级描述之外的其他级别描述;第二检索子单元,用于使用代表寄存器传输级描述的一种或多种关键词对RTL代码进行检索,若发现其中各种关键词在RTL代码中均不存在和/或其中一种或多种关键词在RTL代码中不存在,则确定所述芯片RTL代码中存在除寄存器传输级描述之外的其他级别描述;所述关键词的种类包括但不限于以下一种或多种:表征描述级别的代码、表征描述级别的词汇和/或词组、表征描述级别的脚本、表征描述级别的程序、表征描述级别的RTL代码、表征描述级别的网表,其中所述网表包括但不限于门级网表;
第三十五判断子模块,用于将所述芯片RTL代码与第十一预设库中的RTL代码进行比对,若所述芯片RTL代码中的第十一部分与所述第十一预设库中的RTL代码的第十二部分相同和/或相似和/或相似度大于或等于第十六预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第十一预设库中不包含所述目标芯片的设计公司设计的RTL代码;
第三十六判断子模块,用于将所述芯片RTL代码与第十二预设库中的RTL代码进行比对,若所述芯片RTL代码中的第十三部分与所述第十二预设库中的RTL代码的第十四部分相同和/或相似和/或相似度大于或等于第十七预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第十二预设库中为所述目标芯片的设计公司设计的RTL代码、和/或所述目标芯片的设计公司的RTL代码IP核库、和/或所述目标芯片的设计公司的IP核库;
第三十七判断子模块,用于针对所述芯片RTL代码与所述芯片的门级网表,使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证,若其中一次或者多次的形式验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第三十八判断子模块,用于针对所述芯片RTL代码与所述芯片的门级网表,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的形式验证软件和/或工具和/或环境中进行一次或者多次的形式验证,若任何一次或者多次的形式验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
其中,开展形式验证时,如果RTL代码与门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;其中,对该差异对应的功能和/或逻辑不验证包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
可选的,所述第二信息包括芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,和/或芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图;
所述IP核调用确定模块包括但不限于以下一种或多种:
第一确定子模块,用于确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的空白区域、和/或面积大于或等于第十八预设门限的空白区域、和/或占据比例大于或等于第十九预设门限的空白区域、和/或规整几何图形的空白区域,将所述空白区域,和/或所述空白区域所对应的设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、和/或所述空白区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述占据比例是指所述空白区域占据所述设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的比例,所述规整的几何图形包括但不限于以下一种或多种:正方形、长方形、菱形、梯形、平行四边形、圆形、椭圆形、三角形、多边形、弓形、弧形;所述空白区域包括但不限于一个或多个区域;
第二确定子模块,用于确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图与对应的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图比对时的不一致处,将所述不一致处、和/或不一致处所对应的设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、和/或不一致处所对应的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图、和/或不一致处所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;其中所述不一致处包括但不限于以下一种或多种情况:所有层和/或部分层和/或一层比对不一致处;所有层和/或部分层和/或一层中,整个区域和/或多个局部区域和/或一个局部区域比对不一致处;所述不一致处包括但不限于一处或者多处的版图和/或布图和/或布局布线和/或布局布线图;
第三确定子模块,用于确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十一标识所在位置和/或第十一标识所在区域和/或与第十一标识距离小于或等于第二十预设门限的区域,和/或所述位置和/或区域和/或第十一标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第四确定子模块,用于确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十一标识所在位置和/或第十一标识所在区域和/或与第十一标识距离小于或等于第二十一预设门限的区域,和/或所述位置和/或区域和/或第十一标识所对应的模块和/或单元和/或设计信息后,将一层或多层的所述位置和/或区域、和/或所述一层或多层的所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;其中所述第二十一预设门限与所述第二十预设门限相同或者不同;
其中,所述第十一标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第五确定子模块,用于确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十二标识所在位置和/或第十二标识所在区域和/或与第十二标识距离小于或等于第二十二预设门限的区域,和/或所述位置和/或区域和/或第十二标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第六确定子模块,用于确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十二标识所在位置和/或第十二标识所在区域和/或与第十二标识距离小于或等于第二十三预设门限的区域,和/或所述位置和/或区域和/或第十二标识所对应的模块和/或单元和/或设计信息后,将一层或多层的所述位置和/或区域、和/或所述一层或多层的所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;其中所述第二十三预设门限与所述第二十二预设门限相同或者不同;
其中,所述第十二标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第七确定子模块,用于将与第十三预设库中的版图和/或布图和/或布局布线和/或布局布线图的第十三区域相同和/或相似和/或相似度大于或等于第二十四预设门限的、所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的第十四区域、和/或第十四区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十三预设库中不包含所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图;
第八确定子模块,用于将与第十四预设库中的版图和/或布图和/或布局布线和/或布局布线图的第十五区域相同和/或相似和/或相似度大于或等于第二十五预设门限的、所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的第十六区域、和/或第十六区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十四预设库中为所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图、和/或所述目标芯片的设计公司的版图和/或布图和/或布局布线和/或布局布线图IP核库、和/或所述目标芯片的设计公司的IP核库;
第九确定子模块,用于将与第十五预设库中的版图和/或布图和/或布局布线和/或布局布线图的第十七区域相同和/或相似和/或相似度大于或等于第二十六预设门限的、所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的第十八区域、和/或第十八区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十五预设库中不包含所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图;
第十确定子模块,用于将与第十六预设库中的版图和/或布图和/或布局布线和/或布局布线图的第十九区域相同和/或相似和/或相似度大于或等于第二十七预设门限的、所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的第二十区域、和/或第二十区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十六预设库中为所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图、和/或所述目标芯片的设计公司的版图和/或布图和/或布局布线和/或布局布线图IP核库、和/或所述目标芯片的设计公司的IP核库;
第十一确定子模块,用于将确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息,所对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核。
可选的,所述第二信息包括芯片的原理图,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;
所述IP核调用确定模块包括但不限于以下一种或多种:
第十二确定子模块,用于确定芯片的原理图中第十三标识所在位置和/或第十三标识所在区域和/或与第十三标识距离小于或等于第二十八预设门限的区域,和/或所述位置和/或区域和/或第十三标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十三标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第十四确定子模块,用于确定芯片的原理图中第十四标识所在位置和/或第十四标识所在区域和/或与第十四标识距离小于或等于第二十九预设门限的区域,和/或所述位置和/或区域和/或第十四标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十四标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第十五确定子模块,用于将与第十七预设库中的原理图的第二十一区域相同和/或相似和/或相似度大于或等于第三十预设门限的、所述芯片的原理图中的第二十二区域、和/或第二十二区域所对应的模块和/或单元和/或设计信息,确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十七预设库中不包含所述目标芯片的设计公司设计的原理图;
第十六确定子模块,用于将与第十八预设库中的原理图的第二十三区域相同和/或相似和/或相似度大于或等于第三十一预设门限的、所述芯片的原理图中的第二十四区域、和/或第二十四区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十八预设库中为所述目标芯片的设计公司设计的原理图、和/或所述目标芯片的设计公司的原理图IP核库、和/或所述目标芯片的设计公司的IP核库;
第十七确定子模块,用于根据芯片的原理图与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十七确定子模块包括但不限于以下一种或多种:第一确定单元,用于确定验证中未通过的原理图区域、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第二确定单元,用于确定验证中发现的原理图中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的原理图区域、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第十八确定子模块,用于根据芯片的原理图与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十八确定子模块包括但不限于以下一种或多种:第三确定单元,用于确定验证中未通过的原理图区域、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第四确定单元,用于确定验证中发现的原理图中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的原理图区域、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核。
可选的,所述第二信息包括芯片晶体管级的网表,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;所述晶体管级的网表包括但不限于以下一种或多种:描述为晶体管级别的网表,芯片原理图对应的晶体管级的网表,芯片完成最终设计的门级网表对应的晶体管级的网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的晶体管级的网表,模数混合芯片中由模拟模块原理图对应的晶体管级的网表和/或数字模块完成最终设计的门级网表对应的晶体管级的网表所组成的晶体管级的网表;
所述IP核调用确定模块包括但不限于以下一种或多种:
第十九确定子模块,用于确定芯片晶体管级的网表中第十五标识所在位置和/或第十五标识所在部分和/或与第十五标识之间的代码长度小于或等于第三十二预设门限的部分和/或与第十五标识之间的代码长度在所述芯片晶体管级的网表中的占比小于或等于第一比例阈值的部分,和/或所述位置和/或部分和/或第十五标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十五标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第二十确定子模块,用于确定芯片晶体管级的网表中第十六标识所在位置和/或第十六标识所在部分和/或与第十六标识之间的代码长度小于或等于第三十三预设门限的部分和/或与第十六标识之间的代码长度在所述芯片晶体管级的网表中的占比小于或等于第二比例阈值的部分,和/或所述位置和/或部分和/或第十六标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十六标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第二十一确定子模块,用于将与第十九预设库中的晶体管级的网表的第十五部分相同和/或相似和/或相似度大于或等于第三十四预设门限的、所述芯片晶体管级的网表中的第十六部分、和/或第十六部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十九预设库中不包含所述目标芯片的设计公司设计的晶体管级的网表;
第二十二确定子模块,用于将与第二十预设库中的晶体管级的网表的第十七部分相同和/或相似和/或相似度大于或等于第三十五预设门限的、所述芯片晶体管级的网表中的第十八部分、和/或第十八部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十预设库中为所述目标芯片的设计公司设计的晶体管级的网表、和/或所述目标芯片的设计公司的晶体管级的网表IP核库、和/或所述目标芯片的设计公司的IP核库;
第二十三确定子模块,用于根据芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十三确定子模块包括但不限于以下一种或多种:第五确定单元,用于确定验证中未通过的晶体管级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第六确定单元,用于确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第二十四确定子模块,用于根据芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十四确定子模块包括但不限于以下一种或多种:第七确定单元,用于确定验证中未通过的晶体管级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第八确定单元,用于确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核。
可选的,所述第二信息包括芯片的门级网表,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;所述芯片的门级网表包括但不限于以下一种或多种:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表;所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表;
所述IP核调用确定模块包括但不限于以下一种或多种:
第二十五确定子模块,用于确定芯片的门级网表中第十七标识所在位置和/或第十七标识所在部分和/或与第十七标识之间的代码长度小于或等于第三十六预设门限的部分和/或与第十七标识之间的代码长度在所述芯片的门级网表中的占比小于或等于第三比例阈值的部分,和/或所述位置和/或部分和/或第十七标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十七标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第二十六确定子模块,用于确定芯片的门级网表中第十八标识所在位置和/或第十八标识所在部分和/或与第十八标识之间的代码长度小于或等于第三十七预设门限的部分和/或与第十八标识之间的代码长度在所述芯片的门级网表中的占比小于或等于第四比例阈值的部分,和/或所述位置和/或部分和/或第十八标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十八标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第二十七确定子模块,用于将与第二十一预设库中的门级网表的第十九部分相同和/或相似和/或相似度大于或等于第三十八预设门限的、所述芯片的门级网表中的第二十部分、和/或第二十部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十一预设库中不包含所述目标芯片的设计公司设计的门级网表;
第二十八确定子模块,用于将与第二十二预设库中的门级网表的第二十一部分相同和/或相似和/或相似度大于或等于第三十九预设门限的、所述芯片的门级网表中的第二十二部分、和/或第二十二部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十二预设库中为所述目标芯片的设计公司设计的门级网表、和/或所述目标芯片的设计公司的门级网表IP核库、和/或所述目标芯片的设计公司的IP核库;
第二十九确定子模块,用于根据芯片的门级网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十九确定子模块包括但不限于以下一种或多种:第九确定单元,用于确定验证中未通过的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第十确定单元,用于确定验证中发现的门级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的门级网表部分、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第三十确定子模块,用于根据芯片的门级网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第三十确定子模块包括但不限于以下一种或多种:第十一确定单元,用于确定验证中未通过的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第十二确定单元,用于确定验证中发现的门级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的门级网表部分、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第三十一确定子模块,用于根据芯片的门级网表转化为芯片晶体管级的网表后,转化的芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第三十一确定子模块包括但不限于以下一种或多种:第十三确定单元,用于确定验证中未通过的晶体管级网表部分、和/或未通过的晶体管级网表部分所对应的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第十四确定单元,用于确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或对应的晶体管级网表部分所对应的门级网表部分、和/或对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第三十二确定子模块,用于根据芯片的门级网表转化为芯片晶体管级的网表后,转化的芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第三十二确定子模块包括但不限于以下一种或多种:第十五确定单元,用于确定验证中未通过的晶体管级网表部分、和/或未通过的晶体管级网表部分所对应的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第十六确定单元,用于确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或对应的晶体管级网表部分所对应的门级网表部分、和/或对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第三十三确定子模块,用于根据芯片的门级网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、将修改后的门级网表转化为芯片晶体管级的网表、将转化的芯片晶体管级的网表与修改后的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第三十三确定子模块包括但不限于以下一种或多种:第十七确定单元,用于确定验证中未通过的晶体管级网表部分、和/或未通过的晶体管级网表部分所对应的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第十八确定单元,用于确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或对应的晶体管级网表部分所对应的门级网表部分、和/或对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第三十四确定子模块,用于根据芯片的两种门级网表、使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第三十四确定子模块包括但不限于以下一种或多种:第十九确定单元,用于确定验证中未通过的门级网表部分,和/或所述未通过部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第二十确定单元,用于确定验证中发现的不匹配点所对应的门级网表部分,和/或所述部分和/或不匹配点所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第二十一确定单元,用于确定验证中发现的不等价部分,和/或所述不等价部分所对应的门级网表部分、和/或所述不等价部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第二十二确定单元,用于确定验证中发现的两种门级网表中的逻辑和/或功能的差异处,和/或差异处所对应的门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第三十五确定子模块,用于根据芯片的两种门级网表、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第三十五确定子模块包括但不限于以下一种或多种:第二十三确定单元,用于确定验证中未通过的门级网表部分,和/或所述未通过部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第二十四确定单元,用于确定验证中发现的不匹配点所对应的门级网表部分,和/或所述部分和/或不匹配点所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第二十五确定单元,用于确定验证中发现的不等价部分,和/或所述不等价部分所对应的门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第二十六确定单元,用于确定验证中发现的两种门级网表中的逻辑和/或功能的差异处,和/或差异处所对应的门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
其中,开展形式验证时,如果两种门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;其中,对该差异对应的功能和/或逻辑不验证包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
可选的,所述第二信息包括芯片RTL代码,和/或芯片的门级网表;所述芯片的门级网表包括但不限于以下一种或多种:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表;所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表;
所述IP核调用确定模块包括但不限于以下一种或多种:
第三十六确定子模块,用于确定芯片RTL代码中第十九标识所在位置和/或第十九标识所在部分和/或与第十九标识之间的代码长度小于或等于第四十预设门限的部分和/或与第十九标识之间的代码长度在所述芯片RTL代码中的占比小于或等于第五比例阈值的部分,和/或所述位置和/或部分和/或第十九标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十九标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第三十七确定子模块,用于确定芯片RTL代码中第二十标识所在位置和/或第二十标识所在部分和/或与第二十标识之间的代码长度小于或等于第四十一预设门限的部分和/或与第二十标识之间的代码长度在所述芯片RTL代码中的占比小于或等于第六比例阈值的部分,和/或所述位置和/或部分和/或第二十标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第三十八确定子模块,用于根据芯片RTL代码中、除寄存器传输级描述之外的其他级别描述所在部分确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述除寄存器传输级描述之外的其他级别描述包括但不限于门级描述;其中,所述第三十八确定子模块包括但不限于以下一种或多种:第二十七确定单元,用于确定芯片RTL代码中存在的一种或多种关键词、和/或芯片RTL代码中存在一种或多种关键词的总数量大于或等于第四十二预设门限所对应的关键词、和/或芯片RTL代码中存在一种或多种关键词的总数量占据整个芯片RTL代码的比例大于或等于第四十三预设门限所对应的关键词,将所述关键词所在位置和/或所在部分和/或与所述关键词之间的代码长度小于或等于第四十四预设门限的部分和/或与所述关键词之间的代码长度在所述芯片RTL代码中的占比小于或等于第七比例阈值的部分、和/或所述位置和/或部分和/或所述关键词所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核,其中,所述关键词为代表除寄存器传输级描述之外的其他级别描述的关键词,所述关键词的种类包括但不限于以下一种或多种:表征描述级别的代码、表征描述级别的词汇和/或词组、表征描述级别的脚本、表征描述级别的程序、表征描述级别的网表、其中所述网表包括但不限于门级网表;第二十八确定单元,用于将与所述芯片的门级网表的第二十三部分相同和/或相似和/或相似度大于或等于第四十五预设门限的、所述芯片RTL代码中的第二十四部分、和/或第二十四部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第三十九确定子模块,用于将与第二十三预设库中的RTL代码的第二十五部分相同和/或相似和/或相似度大于或等于第四十六预设门限的、所述芯片RTL代码中的第二十六部分、和/或第二十六部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十三预设库中不包含所述目标芯片的设计公司设计的RTL代码;
第四十确定子模块,用于将与第二十四预设库中的RTL代码的第二十七部分相同和/或相似和/或相似度大于或等于第四十七预设门限的、所述芯片RTL代码中的第二十八部分、和/或第二十八部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十四预设库中为所述目标芯片的设计公司设计的RTL代码、和/或所述目标芯片的设计公司的RTL代码IP核库、和/或所述目标芯片的设计公司的IP核库;
第四十一确定子模块,用于根据芯片RTL代码与芯片的门级网表、使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第四十一确定子模块包括但不限于以下一种或多种:第二十九确定单元,用于确定验证中未通过的RTL代码部分、和/或未通过的门级网表部分,和/或未通过部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第三十确定单元,用于确定验证中发现的不匹配点所对应的RTL代码部分、和/或门级网表部分,和/或所述部分和/或不匹配点所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第三十一确定单元,用于确定验证中发现的不等价部分,和/或所述不等价部分所对应的RTL代码部分、和/或门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第三十二确定单元,用于确定验证中发现的RTL代码中的逻辑和/或功能、与门级网表中的逻辑和/或功能的差异处,和/或差异处所对应的RTL代码部分、和/或门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第四十二确定子模块,用于根据芯片RTL代码与芯片的门级网表、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第四十二确定子模块包括但不限于以下一种或多种:第三十三确定单元,用于确定验证中未通过的RTL代码部分、和/或未通过的门级网表部分,和/或未通过部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不匹配点所对应的RTL代码部分、和/或门级网表部分,和/或所述部分和/或不匹配点所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第三十四确定单元,用于确定验证中发现的不等价部分,和/或所述不等价部分所对应的RTL代码部分、和/或门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第三十五确定单元,用于确定验证中发现的RTL代码中的逻辑和/或功能、与门级网表中的逻辑和/或功能的差异处,和/或差异处所对应的RTL代码部分、和/或门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
其中,开展形式验证时,如果RTL代码与门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;其中,对该差异对应的功能和/或逻辑不验证包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
可选的,根据第一信息、确定目标芯片中和/或所述目标芯片的信息中、是否调用IP核和/或是否疑似调用IP核时、所使用的预设门限和/或标识和/或预设库和/或其中的区域和/或部分,与根据第二信息,确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核、所使用的预设门限和/或标识和/或预设库和/或其中的区域和/或部分,相同或者不同;
根据第一信息、确定目标芯片中和/或所述目标芯片的信息中、是否调用IP核和/或是否疑似调用IP核时、所使用的预设门限和/或标识和/或预设库和/或其中的区域和/或部分中,相同类型的预设门限和/或标识和/或预设库和/或其中的区域和/或部分,相同或者不同;
根据第二信息,确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核、所使用的预设门限和/或标识和/或预设库和/或其中的区域和/或部分中,相同类型的预设门限和/或标识和/或预设库和/或其中的区域和/或部分,相同或者不同。
可选的,所述IP核包括但不限于非自研IP核和/或自研IP核;
其中,所述非自研IP核,包括但不限于以下一种或多种:不是所述目标芯片的设计公司所设计的IP核,所述目标芯片的设计公司从其他公司购买的IP核,所述目标芯片的设计公司从非自研IP核库中调用的IP核,知识产权不归属于所述目标芯片的设计公司的IP核;
其中,所述自研IP核,包括但不限于以下一种或多种:所述目标芯片的设计公司所设计的IP核,所述目标芯片的设计公司自主研发的IP核,所述目标芯片的设计公司自有的IP核,所述目标芯片的设计公司自身积累的IP核,知识产权归属于所述目标芯片的设计公司的IP核。
可选的,所述装置还包括:IP核分类模块,用于根据第一信息和/或第二信息和/或所述目标芯片的信息和/或所述目标芯片的设计文件和/或所述目标芯片的授权资料,确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核,是否为非自研IP核、和/或是否为自研IP核;和/或
所述IP核分类模块,用于在根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核的同时,确定所述IP核是否为非自研IP核、和/或是否为自研IP核;
其中,所述IP核分类模块包括:第一分类子模块,用于确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核为非自研IP核;所述第一分类子模块包括但不限于以下一种或多种:
第一分类单元,用于确定通过芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的空白区域和/或空白区域所对应的内容确定的IP核为非自研IP核;
第二分类单元,用于确定通过芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图与对应的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图比对时的不一致处、和/或不一致处所对应的内容确定的IP核为非自研IP核;
第三分类单元,用于确定通过所述目标芯片的第三信息中的第二十一标识确定的IP核为非自研IP核;所述第二十一标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第四分类单元,用于确定通过与第二十五预设库中的信息的第二十五区域相同和/或相似和/或相似度大于或等于第四十八预设门限的、所述目标芯片的第三信息中的第二十六区域,和/或第二十六区域所对应的内容确定的IP核为非自研IP核;所述第二十五预设库中不包含所述目标芯片的设计公司设计的信息;
第五分类单元,用于确定通过与第二十六预设库中的信息的第二十九部分相同和/或相似和/或相似度大于或等于第四十九预设门限的、所述目标芯片的第三信息中的第三十部分,和/或第三十部分所对应的内容确定的IP核为非自研IP核;所述第二十六预设库中不包含所述目标芯片的设计公司设计的信息;
第六分类单元,用于确定通过确定为非自研IP核的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息,将其所对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为的IP核,为非自研IP核;
第七分类单元,用于确定根据一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告所确定的IP核为非自研IP核;
第八分类单元,用于确定根据一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告所确定的IP核为非自研IP核;
第九分类单元,用于确定根据芯片RTL代码中、除寄存器传输级描述之外的其他级别描述所在部分所确定的IP核为非自研IP核;
第十分类单元,用于针对所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核,若确定该IP核不是所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的自研IP核,则确定该IP核为所述目标芯片中和/或所述目标芯片的信息调用和/或疑似调用的非自研IP核;
其中,所述IP核分类模块包括:第二分类子模块,用于确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核为自研IP核,所述第二分类子模块包括但不限于以下一种或多种:
第十一分类单元,用于确定通过所述目标芯片的第三信息中的第二十二标识确定的IP核为自研IP核;所述第二十二标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第十二分类单元,用于确定通过与第二十七预设库中的信息的第二十七区域相同和/或相似和/或相似度大于或等于第五十预设门限的、所述目标芯片的第三信息中的第二十八区域,和/或第二十八区域所对应的内容确定的IP核为自研IP核;所述第二十七预设库中为所述目标芯片的设计公司设计的信息、和/或所述目标芯片的设计公司的信息IP核库、和/或所述目标芯片的设计公司的IP核库;
第十三分类单元,用于确定通过与第二十八预设库中的信息的第三十一部分相同和/或相似和/或相似度大于或等于第五十一预设门限的、所述目标芯片的第三信息中的第三十二部分,和/或第三十二部分所对应的内容确定的IP核为自研IP核;所述第二十八预设库中为所述目标芯片的设计公司设计的信息、和/或所述目标芯片的设计公司的信息IP核库、和/或所述目标芯片的设计公司的IP核库;
第十四分类单元,用于确定通过确定为自研IP核的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息,将其所对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为的IP核,为自研IP核;
第十五分类单元,用于针对所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核,若确定该IP核不是所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的非自研IP核,则确定该IP核为所述目标芯片中和/或所述目标芯片的信息调用和/或疑似调用的自研IP核;
其中,所述目标芯片的第三信息包括但不限于以下一种或多种:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,芯片的原理图,芯片晶体管级的网表,芯片的门级网表,芯片RTL代码,第一信息中的一种或者多种信息的所有或者部分信息,第二信息中的一种或者多种信息的所有或者部分信息;
其中,所述第二十五预设库和/或第二十六预设库和/或第二十七预设库和/或第二十八预设库和/或所述目标芯片的设计公司设计的信息、和/或所述目标芯片的设计公司的信息IP核库中的信息、的信息种类,包括但不限于以下一种或多种:版图和/或布图和/或布局布线和/或布局布线图,原理图,晶体管级的网表,门级网表,RTL代码。
可选的,所述装置还包括:判定模块,用于判定芯片的自主度和/或可控度;所述判定模块包括但不限于以下一种或多种:
第一需求确定单元,用于确定为判定芯片的自主度和/或可控度所需要的一种或多种第四信息,所述第四信息包括但不限于以下一种或多种:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,芯片的原理图,芯片晶体管级的网表,芯片的门级网表,芯片RTL代码,第一信息中的一种或者多种信息的所有或者部分信息,第二信息中的一种或者多种信息的所有或者部分信息,芯片的除第一信息、第二信息之外的其他信息;
第一分值分配单元,用于针对所述需要的一种或多种第四信息中的每一种第四信息,分配该种第四信息对应的分值;其中,所述第一分值分配单元包括但不限于:第一分配子单元,用于根据每种第四信息实现和/或设计的难易程度和/或关键程度分配分值;
第一分值确定单元,用于针对每种所述需要的第四信息,如果获取的该种第四信息中未包含所述要判定芯片的所有该种信息、和/或未包含所述要判定芯片的所有功能和/或所有逻辑和/或所有模块和/或所有单元,和/或如果获取的该种第四信息中调用了非自研IP核和/或疑似调用了非自研IP核,则确定所述芯片获得的分值为:该种第四信息对应的分值,减去获取的该种第四信息中所缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元所对应的分值,减去获取的该种第四信息中调用和/或疑似调用的非自研IP核所对应的分值之后,所剩下的分值;和/或,确定所述芯片获得的分值为:该种第四信息对应的分值,减去获取的该种第四信息中所缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元所对应的分值的第一比例的分值,减去获取的该种第四信息中调用和/或疑似调用的非自研IP核所对应的分值的第二比例的分值之后,所剩下的分值;其中,若所述获取的该种第四信息中所缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元,与所述获取的该种第四信息中调用和/或疑似调用的非自研IP核有重复和/或交叠的内容,则针对重复和/或交叠的内容,只减一次分、和/或不重复减分;其中,所述第一分值确定单元包括:第一比例确定子单元,所述第一比例确定子单元用于确定第一比例和/或第二比例,所述第一比例和/或第二比例需满足的条件包括但不限于以下一种或多种:比例小于或等于1,比例大于或等于0,所述缺少的要判定芯片的信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元为国产时的比例小于或等于为非国产时的比例,所述调用和/或疑似调用的非自研IP核为国产时的比例小于或等于所述非自研IP核为非国产时的比例;
第二分值确定单元,用于针对每种所述需要的第四信息,如果获取的该种第四信息包含了所述要判定芯片的所有该种信息和/或包含了所述要判定芯片的所有功能和/或所有逻辑和/或所有模块和/或所有单元,且获取的该种第四信息中未调用非自研IP核且未疑似调用非自研IP核,则确定所述芯片获得的分值为:该种第四信息对应的分值;
第三分值确定单元,用于针对每种所述需要的第四信息,若未获取到该种第四信息、和/或无法确认所述获取的该种第四信息为所述芯片的第四信息,则确定所述芯片在该种第四信息下不获得分值;
第一判定单元,用于将所述芯片针对所述需要的一种或多种第四信息中的每种第四信息所获得的实际分值求和,作为芯片的总得分,通过总得分对芯片的自主度和/或可控度进行判定;
其中,获取的第四信息中未包含所述要判定芯片的所有该种信息和/或未包含所述要判定芯片的所有功能和/或所有逻辑和/或所有模块和/或所有单元的一种情况为,该种第四信息完成设计后的其他信息中调用了非自研IP核、而该种第四信息中暂未针对所述IP核对应的功能和/或逻辑和/或模块和/或单元进行设计;
其中,针对所述需要的一种或多种第四信息,分配各种第四信息对应的分值时,需要确保一个既定功能的芯片在不同方案下、在相同的自主度和/或可控度所对应的得分均相同;所述确保在相同的自主度和/或可控度所对应的得分均相同的前提包括但不限于:一个既定功能的芯片在不同方案下、所述需要的各种第四信息所对应的分值之和均相同;
第二需求确定单元,用于确定为判定芯片的自主度和/或可控度所需要的各种功能和/或逻辑和/或模块和/或单元;
第二分值分配单元,用于针对所述需要的各种功能和/或逻辑和/或模块和/或单元中的每一种,分配该种功能和/或逻辑和/或模块和/或单元对应的分值;其中,所述第二分值分配单元包括但不限于:第二分配子单元,用于根据每种功能和/或逻辑和/或模块和/或单元、实现和/或设计的难易程度和/或关键程度分配分值;
第四分值确定单元,用于针对每种所述需要的功能和/或逻辑和/或模块和/或单元,如果所述要判定芯片的该种功能和/或逻辑和/或模块和/或单元中、没有调用非自研IP核且没有疑似调用非自研IP核,确定所述芯片获得该种功能和/或逻辑和/或模块和/或单元对应的分值;
第五分值确定单元,用于针对每种所述需要的功能和/或逻辑和/或模块和/或单元,如果所述要判定芯片的该种功能和/或逻辑和/或模块和/或单元中、调用了非自研IP核和/或疑似调用了非自研IP核,确定所述芯片不获得该种功能和/或逻辑和/或模块和/或单元对应的分值、和/或确定所述芯片获得该种功能和/或逻辑和/或模块和/或单元对应的分值的第三比例的分值;其中,所述第三比例需要满足的条件包括但不限于以下一种或多种:比例小于或等于1,比例大于或等于0,所述调用和/或疑似调用的非自研IP核为国产时的比例大于或等于所述非自研IP核为非国产时的比例;
第六分值确定单元,用于针对每种所述需要的功能和/或逻辑和/或模块和/或单元,如果所述要判定芯片缺少该功能和/或逻辑和/或模块和/或单元,则确定所述芯片在该种功能和/或逻辑和/或模块和/或单元下不获得分值;
第二判定单元,用于将所述芯片针对所述需要的各种功能和/或逻辑和/或模块和/或单元中的每种功能和/或逻辑和/或模块和/或单元所获得的实际分值求和,作为芯片的总得分,通过总得分对芯片的自主度和/或可控度进行判定;
其中,针对所述需要的各种功能和/或逻辑和/或模块和/或单元,分配各种功能和/或逻辑和/或模块和/或单元对应的分值时,需要确保一个既定功能的芯片在不同方案下、在相同的自主度和/或可控度所对应的得分均相同;所述确保在相同的自主度和/或可控度所对应的得分均相同的前提包括但不限于:一个既定功能的芯片在不同方案下、所述需要的各种功能和/或逻辑和/或模块和/或单元对应的分值之和均相同。
可选的,所述第一分值确定单元,还用于计算所述获取的第四信息中所缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元所对应的分值,和/或所述获取的第四信息中调用和/或疑似调用的非自研IP核对应的分值,所述第一分值确定单元还包括但不限于以下一种或多种:
第一分值分配子单元,用于针对所述需要的该种第四信息,针对其中的各种功能和/或逻辑和/或模块和/或单元,分配各种功能和/或逻辑和/或模块和/或单元所对应的分值,且各种功能和/或逻辑和/或模块和/或单元所对应分值之和为该种第四信息对应的分值;其中,所述第一分值分配子单元用于但不限于:根据每种功能和/或逻辑和/或模块和/或单元、实现和/或设计的难易程度和/或关键程度分配分值;
第一分值确定子单元,用于在所述需要的该种第四信息中的各种功能和/或逻辑和/或模块和/或单元中,找出所述获取的第四信息中所缺少的要判定芯片的信息部分和/或功能和/或逻辑和/或模块和/或单元,并确定这部分功能和/或逻辑和/或模块和/或单元所分配的分值或分值之和即为获取的第四信息中所缺少的要判定芯片的信息部分、和/或所缺少的功能和/或逻辑和/或模块和/或单元所对应的分值;
第二分值确定子单元,用于在所述需要的该种第四信息中的各种功能和/或逻辑和/或模块和/或单元中,找出所述获取的第四信息中调用和/或疑似调用的非自研IP核所对应的功能和/或逻辑和/或模块和/或单元,并确定这部分功能和/或逻辑和/或模块和/或单元所分配的分值或分值之和即为获取的第四信息中调用和/或疑似调用的非自研IP核所对应的分值。
可选的,所述装置还包括确认模块,用于确认获取的信息为所述目标芯片的信息;所述信息包括但不限于以下一种或多种:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,芯片的原理图,芯片晶体管级的网表,芯片的门级网表,芯片RTL代码,第一信息中的一种或者多种信息的所有或者部分信息,第二信息中的一种或者多种信息的所有或者部分信息;芯片的除第一信息、第二信息之外的其他信息;所述确认模块包括但不限于以下一种或多种:
第一确认子模块,用于确认获取的信息,是否已经声明或者鉴定为所述目标芯片的信息;
第二确认子模块,用于将获取的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图确定为所述目标芯片的信息;
第三确认子模块,用于对获取的信息进行比对和/或验证确认是否为所述目标芯片的信息,所述第三确认子模块包括但不限于以下一种或多种:第一确认单元,用于将获取的信息与已经声明或者鉴定为所述目标芯片的信息、进行一次或者多次的比对和/或验证,如果比对和/或验证通过,则确认所述获取的信息为所述目标芯片的信息;第二确认单元,用于将获取的信息与芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图、进行一次或者多次的比对和/或验证,如果比对和/或验证通过,则确认所述获取的信息为所述目标芯片的信息;
第四确认子模块,用于将获取的信息,与经过比对和/或验证确认为所述目标芯片的信息,进行一次或者多次的比对和/或验证,若比对和/或验证通过,则所述获取的信息为所述目标芯片的信息。
可选的,所述第一确认单元和/或所述第二确认单元和/或所述第四确认子模块包括但不限于以下一种或多种:
第一比对子单元,用于将芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、与芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图进行比对;
第二比对子单元,用于将芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、与芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元后,对余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、与余下的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图进行比对;
第一验证子单元,用于将芯片的原理图、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
第二验证子单元,用于将芯片的原理图、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片的原理图、与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
第三验证子单元,用于将芯片晶体管级的网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
第四验证子单元,用于将芯片晶体管级的网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片晶体管级的网表、与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
第五验证子单元,用于将芯片的门级网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
第六验证子单元,用于将芯片的门级网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片的门级网表、与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
第七验证子单元,用于将芯片的门级网表转化为芯片晶体管级的网表后,对转化的芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
第八验证子单元,用于将芯片的门级网表转化为芯片晶体管级的网表后,将转化的芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片晶体管级的网表、与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
第九验证子单元,用于将芯片的门级网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,将余下的门级网表转化为晶体管级的网表,对转化的晶体管级的网表与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图部分进行LVS验证;
第十验证子单元,用于将芯片的一种门级网表、与芯片的另一种门级网表进行形式验证;
第十一验证子单元,用于将芯片的一种门级网表、与芯片的另一种门级网表,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片的一种门级网表、与余下的芯片的另一种门级网表进行形式验证;
第十二验证子单元,用于将芯片RTL代码、与芯片的门级网表进行形式验证;
第十三验证子单元,用于将芯片RTL代码、与芯片的门级网表,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片RTL代码、与余下的芯片的门级网表进行形式验证;
其中,开展形式验证时,如果验证的两种门级网表之间、和/或验证的RTL代码与门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;其中,对该差异对应的功能和/或逻辑不验证包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
可选的,所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的区域,包括但不限于所有层和/或部分层和/或一层的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,对于其中一层,所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图包括但不限于整个区域和/或多个局部区域和/或一个局部区域的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;其中,不同层的整个区域和/或多个局部区域和/或一个局部区域的位置和/或范围相同或者不同;和/或,
所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图、和/或芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的区域,包括但不限于所有层和/或部分层和/或一层的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,对于其中一层,所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图包括但不限于整个区域和/或多个局部区域和/或一个局部区域的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图;其中,不同层的整个区域和/或多个局部区域和/或一个局部区域的位置和/或范围相同或者不同;和/或,
所述预设库中的版图和/或布图和/或布局布线和/或布局布线图、和/或版图和/或布图和/或布局布线和/或布局布线图中的区域,包括但不限于所有层和/或部分层和/或一层的版图和/或布图和/或布局布线和/或布局布线图,对于其中一层,所述版图和/或布图和/或布局布线和/或布局布线图包括但不限于整个区域和/或多个局部区域和/或一个局部区域的版图和/或布图和/或布局布线和/或布局布线图;其中,不同层的整个区域和/或多个局部区域和/或一个局部区域的位置和/或范围相同或者不同;和/或,
所述芯片的原理图、和/或芯片的原理图中的区域,包括但不限于整个区域和/或多个局部区域和/或一个局部区域的芯片原理图;和/或,
所述预设库中的原理图、和/或原理图中的区域,包括但不限于整个区域和/或多个局部区域和/或一个局部区域的原理图;和/或,
所述芯片晶体管级的网表、和/或晶体管级的网表中的部分,包括但不限于:整个晶体管级的网表,部分晶体管级的网表;和/或,
所述预设库中的晶体管级的网表、和/或晶体管级的网表中的部分,包括但不限于:整个晶体管级的网表,部分晶体管级的网表;和/或,
所述芯片的门级网表、和/或门级网表中的部分,包括但不限于:整个门级网表,部分门级网表;和/或,
所述预设库中的门级网表、和/或门级网表中的部分,包括但不限于:整个门级网表,部分门级网表;和/或,
所述芯片RTL代码、和/或RTL代码中的部分,包括但不限于以下一种或多种:整个RTL代码,部分RTL代码,所述目标芯片的设计公司声称的RTL代码,所述目标芯片的设计公司在RTL设计阶段设计的代码;和/或,
所述预设库中的RTL代码、和/或RTL代码中的部分,包括但不限于:整个RTL代码,部分RTL代码;和/或,
所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图包括但不限于以下一种或多种:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的注释和/或说明;和/或,
所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图包括但不限于以下一种或多种:芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的注释和/或说明;和/或,
所述芯片的原理图包括但不限于以下一种或多种:芯片的原理图,芯片的原理图中的注释和/或说明;和/或,
所述芯片晶体管级的网表包括但不限于以下一种或多种:芯片晶体管级的网表,芯片晶体管级的网表中的注释和/或说明;和/或,
所述芯片的门级网表包括但不限于以下一种或多种:芯片的门级网表,芯片的门级网表中的注释和/或说明;和/或,
所述芯片RTL代码包括但不限于以下一种或多种:芯片RTL代码,芯片RTL代码中的注释和/或说明;和/或,
所述标识包括以下一种或多种:文本、图形、商标、名称、标志、标记、水印。
第三方面,本发明还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的程序;所述处理器执行所述程序时实现上述任一种IP核调用的检测方法中的步骤。
第四方面,本发明还提供一种可读存储介质,其上存储有程序,该程序被处理器执行时实现上述任一种IP核调用的检测方法中的步骤。
本发明的上述技术方案的有益效果如下:
本发明实施例,提高了IP核调用情况检测的准确性和可信度。
附图说明
图1为本发明实施例一中的一种IP核调用的检测方法的流程示意图;
图2为本发明实施例二中的一种IP核调用的检测装置的结构示意图;
图3为本发明实施例三中的一种电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,图1为本发明实施例一提供的一种IP核调用的检测方法的流程示意图,包括以下步骤:
步骤11:根据第一信息,确定目标芯片中和/或所述目标芯片的信息中,是否调用(也可以称作使用、借用、嵌入、嵌套等,下同)IP核和/或是否疑似调用IP核;
步骤12:根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核;
其中,所述目标芯片的信息为一种信息或多种信息。
需要说明的是,所述第一信息和所述第二信息可以是所述目标芯片的实物信息和/或设计信息,所述第一信息和所述第二信息相同或不同。所述目标芯片的信息可以是所述目标芯片的实物信息和/或设计信息。具体的,可参阅下述。
本发明实施例可以提高IP核调用情况检测的准确性和可信度。
在其他的可选具体实施方式中,可以只执行步骤11,也即可以只根据第一信息,确定目标芯片中和/或所述目标芯片的信息中,是否调用IP核和/或是否疑似调用IP核,并不执行步骤12。也可以只执行步骤12,也即可以只根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核,并不执行步骤11。
可选的,所述目标芯片为整个或者部分芯片,所述芯片的种类包括但不限于以下一种或多种:已完成封装的芯片、未封装的裸片(裸片亦称为裸晶、晶粒)、裸片中的模块(包括裸片中的功能模块)、裸片中的单元(包括裸片中的功能单元)。
需要说明的是,从分类的角度,这里的芯片是一个统称,包括但不限于集成电路IC、微系统MEMS、微机电系统、半导体器件、分立器件、传感器、执行器等多个类别。
可选的,所述第一信息与所述第二信息相同或者不同。
可选的,所述确定目标芯片中和/或所述目标芯片的信息中是否调用IP核和/或是否疑似调用IP核,与所述确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核,分为两步进行或者合为一步进行;
可选的,所述确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核亦是所述确定目标芯片中和/或所述目标芯片的信息中是否调用IP核和/或是否疑似调用IP核的一种方法。
可选的,所述第一信息包括芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,和/或芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图;
可选的,所述根据第一信息,确定目标芯片中和/或所述目标芯片的信息中是否调用IP核和/或是否疑似调用IP核,包括但不限于以下5.1-5.8中的一种或多种:
5.1、芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中,若其中有空白区域和/或空白区域面积大于或等于第一预设门限和/或空白区域占据比例大于或等于第二预设门限和/或空白区域为规整的几何图形,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;
可选的,所述空白区域占据比例是指空白区域占据所述设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的比例;
可选的,所述规整的几何图形包括但不限于以下一种或多种:正方形、长方形、菱形、梯形、平行四边形、圆形、椭圆形、三角形、多边形、弓形、弧形;
5.2、将芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图与对应的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图比对,若比对不一致,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;
可选的,所述比对不一致的情况包括但不限于以下一种或多种:所有层和/或部分层和/或一层比对不一致;所有层和/或部分层和/或一层中,整个区域和/或多个局部区域和/或一个局部区域比对不一致;
5.3、若所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中,和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中存在第一标识,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述第一标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
5.4、若所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中,和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中存在第二标识,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述第二标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
5.5、将所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,与第一预设库中的版图和/或布图和/或布局布线和/或布局布线图进行比对,若所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的第一区域,与所述第一预设库中的版图和/或布图和/或布局布线和/或布局布线图的第二区域相同和/或相似和/或相似度大于或等于第三预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第一预设库中不包含所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图;
5.6、将所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,与第二预设库中的版图和/或布图和/或布局布线和/或布局布线图进行比对,若所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的第三区域,与所述第二预设库中的版图和/或布图和/或布局布线和/或布局布线图的第四区域相同和/或相似和/或相似度大于或等于第四预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第二预设库中为所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图、和/或所述目标芯片的设计公司的版图和/或布图和/或布局布线和/或布局布线图IP核库、和/或所述目标芯片的设计公司的IP核库。
5.7、将所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,与第三预设库中的版图和/或布图和/或布局布线和/或布局布线图进行比对,若所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的第五区域,与所述第三预设库中的版图和/或布图和/或布局布线和/或布局布线图的第六区域相同和/或相似和/或相似度大于或等于第五预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第三预设库中不包含所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图;
5.8、将所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,与第四预设库中的版图和/或布图和/或布局布线和/或布局布线图进行比对,若所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的第七区域,与所述第四预设库中的版图和/或布图和/或布局布线和/或布局布线图的第八区域相同和/或相似和/或相似度大于或等于第六预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第四预设库中为所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图、和/或所述目标芯片的设计公司的版图和/或布图和/或布局布线和/或布局布线图IP核库、和/或所述目标芯片的设计公司的IP核库。
可选的,所述第一信息包括芯片的原理图,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;
可选的,所述根据第一信息,确定目标芯片中和/或所述目标芯片的信息中是否调用IP核和/或是否疑似调用IP核,包括但不限于以下6.1-6.6中的一种或多种:
6.1、若所述芯片的原理图中存在第三标识,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述第三标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
6.2、若所述芯片的原理图中存在第四标识,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述第四标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
6.3、将所述芯片的原理图与第五预设库中的原理图进行比对,若所述芯片原理图中的第九区域与所述第五预设库中的原理图的第十区域相同和/或相似和/或相似度大于或等于第七预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第五预设库中不包含所述目标芯片的设计公司设计的原理图;
6.4、将所述芯片的原理图与第六预设库中的原理图进行比对,若所述芯片原理图中的第十一区域与所述第六预设库中的原理图的第十二区域相同和/或相似和/或相似度大于或等于第八预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第六预设库中为所述目标芯片的设计公司设计的原理图、和/或所述目标芯片的设计公司的原理图IP核库、和/或所述目标芯片的设计公司的IP核库;
6.5、针对所述芯片的原理图与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套电子设计自动化(Electronic design automation,EDA)环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
6.6、针对所述芯片的原理图与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,修改其中一个或者部分数量或者所有的模块(可以是模块本身,也可以是例化的模块等)和/或单元的名称,并在修改后使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
可选的,所述第一信息包括芯片晶体管级的网表,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;
可选的,所述晶体管级的网表包括但不限于以下一种或多种:描述为晶体管级别的网表,芯片原理图对应的晶体管级的网表,芯片完成最终设计的门级网表对应的晶体管级的网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的晶体管级的网表,模数混合芯片中由模拟模块原理图对应的晶体管级的网表和/或数字模块完成最终设计的门级网表对应的晶体管级的网表所组成的晶体管级的网表;需要说明的是,晶体管级的网表是指描述的是晶体管级别(包括晶体管、电容、电阻等器件),形式多种多样,如cdl网表、scs网表、spice网表等;
可选的,所述根据第一信息,确定目标芯片中和/或所述目标芯片的信息中,是否调用IP核和/或是否疑似调用IP核,包括但不限于以下7.1-7.6中的一种或多种:
7.1、若所述芯片晶体管级的网表中存在第五标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第五标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
7.2、若所述芯片晶体管级的网表中存在第六标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第六标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
7.3、将所述芯片晶体管级的网表与第七预设库中的晶体管级的网表进行比对,若所述芯片晶体管级的网表中的第一部分与所述第七预设库中的晶体管级的网表中的第二部分相同和/或相似和/或相似度大于或等于第九预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第七预设库中不包含所述目标芯片的设计公司设计的晶体管级的网表;
7.4、将所述芯片晶体管级的网表与第八预设库中的晶体管级的网表进行比对,若所述芯片晶体管级的网表中的第三部分与所述第八预设库中的晶体管级的网表中的第四部分相同和/或相似和/或相似度大于或等于第十预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第八预设库中为所述目标芯片的设计公司设计的晶体管级的网表、和/或所述目标芯片的设计公司的晶体管级的网表IP核库、和/或所述目标芯片的设计公司的IP核库;
7.5、针对所述芯片晶体管级的网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
7.6、针对所述芯片晶体管级的网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
可选的,所述第一信息包括芯片的门级网表,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;
可选的,所述芯片的门级网表包括但不限于以下一种或多种:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片寄存器传输级RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表;所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表;
可选的,所述根据第一信息,确定目标芯片中和/或所述目标芯片的信息中,是否调用IP核和/或是否疑似调用IP核,包括但不限于以下8.1-8.11中的一种或多种:
8.1、若所述芯片的门级网表中存在第七标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第七标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
8.2、若所述芯片的门级网表中存在第八标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第八标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
8.3、将所述芯片的门级网表与第九预设库中的门级网表进行比对,若所述芯片的门级网表中的第五部分与所述第九预设库中的门级网表的第六部分相同和/或相似和/或相似度大于或等于第十一预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第九预设库中不包含所述目标芯片的设计公司设计的门级网表;
8.4、将所述芯片的门级网表与第十预设库中的门级网表进行比对,若所述芯片的门级网表中的第七部分与所述第十预设库中的门级网表的第八部分相同和/或相似和/或相似度大于或等于第十二预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第十预设库中为所述目标芯片的设计公司设计的门级网表、和/或所述目标芯片的设计公司的门级网表IP核库、和/或所述目标芯片的设计公司的IP核库;
8.5、针对所述芯片的门级网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
8.6、针对所述芯片的门级网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
8.7、将芯片的门级网表转化为芯片晶体管级的网表后,针对转化的芯片晶体管级的网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
8.8、将芯片的门级网表转化为芯片晶体管级的网表后,针对转化的芯片晶体管级的网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,修改其中一个或者部分数量或者所有的模块和/或单元的名称、并在修改之后使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
8.9、针对芯片的门级网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、修改其中一个或者部分数量或者所有的模块和/或单元的名称,再将修改后的门级网表转化为芯片晶体管级的网表,针对转化的芯片晶体管级的网表与修改后的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
8.10、针对芯片的两种门级网表,使用一种或者多种的形式验证(FormalVerification,FV)软件和/或工具和/或环境进行一次或者多次的形式验证,若其中一次或者多次的形式验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
需要说明的是,两种门级网表可以是包括但不限于以下一种或多种中的任意两种,和/或一种中的两个:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片寄存器传输级RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表,所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表。
另外需要说明的是,形式验证环境可以是:包含形式验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做形式验证。举一个例子,针对所述验证对象,在一套形式验证环境中验证通过,但是在另一套形式验证环境中不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
8.11、针对芯片的两种门级网表,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证,若其中一次或者多次的形式验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
需要说明的是,两种门级网表可以是包括但不限于以下一种或多种中的任意两种,和/或一种中的两个:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片寄存器传输级RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表,所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表。需要说明的是,两种门级网表可以是包括但不限于以下一种或多种中的任意两种,和/或一种中的两个:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片寄存器传输级RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表,所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表。需要说明的是,形式验证环境可以是:包含形式验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做形式验证。举一个例子,针对所述验证对象,在一套形式验证环境中验证通过,但是在另一套形式验证环境中不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
可选的,其中,开展形式验证时,如果两种门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;
举例如,一个门级网表是前端的,一个门级网表是后端的,并且后端网表增加了可测性设计的扫描链,如果认为这是方便后续芯片测试的功能,不作为IP核检测的关注点,可以不验证;反之,如果认为也需要做IP核检测,则验证;同样,对于其他功能和/或逻辑,也可以根据是否为IP核检测的关注点来判断是否验证。
可选的,对该差异对应的功能和/或逻辑不验证的方法包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;
可选的,所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
可选的,所述第一信息包括芯片RTL代码,和/或芯片的门级网表;
可选的,所述芯片的门级网表包括但不限于以下一种或多种:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表;所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表;
可选的,所述根据第一信息,确定目标芯片中和/或所述目标芯片的信息中,是否调用IP核和/或是否疑似调用IP核,包括但不限于以下9.1-9.7中的一种或多种:
9.1、若所述芯片RTL代码中存在第九标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第九标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
9.2、若所述芯片RTL代码中存在第十标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第十标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
9.3、若所述芯片RTL代码中存在除寄存器传输级描述之外的其他级别描述,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
可选的,所述除寄存器传输级描述之外的其他级别描述包括但不限于门级描述;
可选的,其中,检查所述芯片RTL代码中是否存在除寄存器传输级描述之外的其他级别描述的方法,包括但不限于以下一种或多种:
可选的,对芯片RTL代码进行关键词检索;
可选的,对芯片RTL代码与芯片的门级网表进行比对,若所述芯片RTL代码中的第九部分与所述芯片的门级网表的第十部分相同和/或相似和/或相似度大于或等于第十三预设门限,则确定所述芯片RTL代码中存在除寄存器传输级描述之外的其他级别描述;
可选的,其中,所述对芯片RTL代码进行关键词检索的方法包括但不限于以下一种或多种:使用代表除寄存器传输级描述之外的其他级别描述的一种或多种关键词对RTL代码进行检索,若发现RTL代码中存在其中一种或多种关键词和/或RTL代码中存在其中一种或多种关键词的总数量大于或等于第十四预设门限和/或RTL代码中存在其中一种或多种关键词的总数量占据整个RTL代码词总量的比例大于或等于第十五预设门限,则确定所述芯片RTL代码中存在除寄存器传输级描述之外的其他级别描述;使用代表寄存器传输级描述的一种或多种关键词对RTL代码进行检索,若发现其中各种关键词在RTL代码中均不存在和/或其中一种或多种关键词在RTL代码中不存在,则确定所述芯片RTL代码中存在除寄存器传输级描述之外的其他级别描述;所述关键词的种类包括但不限于以下一种或多种:表征描述级别的代码、表征描述级别的词汇和/或词组、表征描述级别的脚本、表征描述级别的程序、表征描述级别的RTL代码、表征描述级别的网表,其中所述网表包括但不限于门级网表;
9.4、将所述芯片RTL代码与第十一预设库中的RTL代码进行比对,若所述芯片RTL代码中的第十一部分与所述第十一预设库中的RTL代码的第十二部分相同和/或相似和/或相似度大于或等于第十六预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第十一预设库中不包含所述目标芯片的设计公司设计的RTL代码;
9.5、将所述芯片RTL代码与第十二预设库中的RTL代码进行比对,若所述芯片RTL代码中的第十三部分与所述第十二预设库中的RTL代码的第十四部分相同和/或相似和/或相似度大于或等于第十七预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第十二预设库中为所述目标芯片的设计公司设计的RTL代码、和/或所述目标芯片的设计公司的RTL代码IP核库、和/或所述目标芯片的设计公司的IP核库;
9.6、针对所述芯片RTL代码与所述芯片的门级网表,使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证,若其中一次或者多次的形式验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
需要说明的是,形式验证环境可以是:包含形式验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做形式验证。举一个例子,针对所述验证对象,在一套形式验证环境中验证通过,但是在另一套形式验证环境中不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
9.7、针对所述芯片RTL代码与所述芯片的门级网表,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的形式验证软件和/或工具和/或环境中进行一次或者多次的形式验证,若任何一次或者多次的形式验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
需要说明的是,形式验证环境可以是:包含形式验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做形式验证。举一个例子,针对所述验证对象,在一套形式验证环境中验证通过,但是在另一套形式验证环境中不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
可选的,其中,开展形式验证时,如果RTL代码与门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;
举例如,门级网表是后端的,并且相比RTL代码增加了可测性设计的扫描链,如果认为这是方便后续芯片测试的功能,不作为IP核检测的关注点,可以不验证;反之,如果认为也需要做IP核检测,则验证;同样,对于其他功能和/或逻辑,也可以根据是否为IP核检测的关注点来判断是否验证。
可选的,其中,对该差异对应的功能和/或逻辑不验证的方法包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;
可选的,所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
可选的,所述第二信息包括芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,和/或芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图;
可选的,所述根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核,包括但不限于以下10.1-10.11中的一种或多种:
10.1、确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的空白区域、和/或面积大于或等于第十八预设门限的空白区域、和/或占据比例大于或等于第十九预设门限的空白区域、和/或规整几何图形的空白区域,将所述空白区域,和/或所述空白区域(指前面的:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的空白区域、和/或面积大于或等于第十八预设门限的空白区域、和/或占据比例大于或等于第十九预设门限的空白区域、和/或规整几何图形的空白区域)所对应的设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、和/或所述空白区域(指前面的:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的空白区域、和/或面积大于或等于第十八预设门限的空白区域、和/或占据比例大于或等于第十九预设门限的空白区域、和/或规整几何图形的空白区域)所对应的模块(可以是版图本身,也可以是模块对应的版图/原理图/门级网表/RTL代码等一系列信息,单元亦如此;文后多处此类“对应的模块”均为此含义,可以是本身那一类信息,也可以是模块对应的版图/原理图/门级网表/RTL代码等一系列信息)和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
可选的,所述占据比例是指所述空白区域占据所述设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的比例;
可选的,所述规整的几何图形包括但不限于以下一种或多种:正方形、长方形、菱形、梯形、平行四边形、圆形、椭圆形、三角形、多边形、弓形、弧形;所述空白区域包括但不限于一个或多个区域;
10.2、确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图与对应的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图比对时的不一致处,将所述不一致处、和/或不一致处所对应的设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、和/或不一致处所对应的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图、和/或不一致处所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
可选的,其中所述不一致处包括但不限于以下一种或多种情况:所有层和/或部分层和/或一层比对不一致处;所有层和/或部分层和/或一层中,整个区域和/或多个局部区域和/或一个局部区域比对不一致处;所述不一致处包括但不限于一处或者多处的版图和/或布图和/或布局布线和/或布局布线图;
10.3、确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十一标识所在位置和/或第十一标识所在区域和/或与第十一标识距离小于或等于第二十预设门限的区域,和/或所述位置和/或区域(指前面的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十一标识所在位置和/或第十一标识所在区域和/或与第十一标识距离小于或等于第二十预设门限的区域)和/或第十一标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
10.4、确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十一标识所在位置和/或第十一标识所在区域和/或与第十一标识距离小于或等于第二十一预设门限的区域,和/或所述位置和/或区域(指前面的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十一标识所在位置和/或第十一标识所在区域和/或与第十一标识距离小于或等于第二十一预设门限的区域)和/或第十一标识所对应的模块和/或单元和/或设计信息后,将一层或多层的所述位置和/或区域、和/或所述一层或多层的所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;其中所述第二十一预设门限与所述第二十预设门限相同或者不同;
可选的,其中,所述第十一标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
10.5、确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十二标识所在位置和/或第十二标识所在区域和/或与第十二标识距离小于或等于第二十二预设门限的区域,和/或所述位置和/或区域(指前面的:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十二标识所在位置和/或第十二标识所在区域和/或与第十二标识距离小于或等于第二十二预设门限的区域)和/或第十二标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
10.6、确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十二标识所在位置和/或第十二标识所在区域和/或与第十二标识距离小于或等于第二十三预设门限的区域,和/或所述位置和/或区域(指前面的:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十二标识所在位置和/或第十二标识所在区域和/或与第十二标识距离小于或等于第二十三预设门限的区域)和/或第十二标识所对应的模块和/或单元和/或设计信息后,将一层或多层的所述位置和/或区域、和/或所述一层或多层的所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;其中所述第二十三预设门限与所述第二十二预设门限相同或者不同;
可选的,其中,所述第十二标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
10.7、将与第十三预设库中的版图和/或布图和/或布局布线和/或布局布线图的第十三区域相同和/或相似和/或相似度大于或等于第二十四预设门限的、所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的第十四区域、和/或第十四区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十三预设库中不包含所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图;
10.8、将与第十四预设库中的版图和/或布图和/或布局布线和/或布局布线图的第十五区域相同和/或相似和/或相似度大于或等于第二十五预设门限的、所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的第十六区域、和/或第十六区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十四预设库中为所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图、和/或所述目标芯片的设计公司的版图和/或布图和/或布局布线和/或布局布线图IP核库、和/或所述目标芯片的设计公司的IP核库;
10.9、将与第十五预设库中的版图和/或布图和/或布局布线和/或布局布线图的第十七区域相同和/或相似和/或相似度大于或等于第二十六预设门限的、所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的第十八区域、和/或第十八区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十五预设库中不包含所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图;
10.10、将与第十六预设库中的版图和/或布图和/或布局布线和/或布局布线图的第十九区域相同和/或相似和/或相似度大于或等于第二十七预设门限的、所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的第二十区域、和/或第二十区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十六预设库中为所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图、和/或所述目标芯片的设计公司的版图和/或布图和/或布局布线和/或布局布线图IP核库、和/或所述目标芯片的设计公司的IP核库;
10.11、将确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息,所对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核。
可选的,所述第二信息包括芯片的原理图,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;
可选的,所述根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核,包括但不限于以下11.1-11.6中的一种或多种:
11.1、确定芯片的原理图中第十三标识所在位置和/或第十三标识所在区域和/或与第十三标识距离小于或等于第二十八预设门限的区域,和/或所述位置和/或区域(指前面的:芯片的原理图中第十三标识所在位置和/或第十三标识所在区域和/或与第十三标识距离小于或等于第二十八预设门限的区域)和/或第十三标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十三标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
11.2、确定芯片的原理图中第十四标识所在位置和/或第十四标识所在区域和/或与第十四标识距离小于或等于第二十九预设门限的区域,和/或所述位置和/或区域(指前面的:芯片的原理图中第十四标识所在位置和/或第十四标识所在区域和/或与第十四标识距离小于或等于第二十九预设门限的区域)和/或第十四标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十四标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
11.3、将与第十七预设库中的原理图的第二十一区域相同和/或相似和/或相似度大于或等于第三十预设门限的、所述芯片的原理图中的第二十二区域、和/或第二十二区域所对应的模块和/或单元和/或设计信息,确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十七预设库中不包含所述目标芯片的设计公司设计的原理图;
11.4、将与第十八预设库中的原理图的第二十三区域相同和/或相似和/或相似度大于或等于第三十一预设门限的、所述芯片的原理图中的第二十四区域、和/或第二十四区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十八预设库中为所述目标芯片的设计公司设计的原理图、和/或所述目标芯片的设计公司的原理图IP核库、和/或所述目标芯片的设计公司的IP核库;
11.5、根据芯片的原理图与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则可根据后者确定IP核。
可选的,所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的原理图区域、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过区域(指前面的:未通过的原理图区域、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域)所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的原理图中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的原理图区域、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
11.6、根据芯片的原理图与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则可根据后者确定IP核)(需要说明的是,若确定的IP核恰好是在验证时被修改名称的模块和/或单元,则模块和/或单元修改名称前、修改名称后都是IP。
可选的,所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的原理图区域、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过区域(指前面的:未通过的原理图区域、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域)所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的原理图中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的原理图区域、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核。
可选的,所述第二信息包括芯片晶体管级的网表,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;
可选的,所述晶体管级的网表包括但不限于以下一种或多种:描述为晶体管级别的网表,芯片原理图对应的晶体管级的网表,芯片完成最终设计的门级网表对应的晶体管级的网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的晶体管级的网表,模数混合芯片中由模拟模块原理图对应的晶体管级的网表和/或数字模块完成最终设计的门级网表对应的晶体管级的网表所组成的晶体管级的网表;
需要说明的是,晶体管级的网表是指描述的是晶体管级别(包括晶体管、电容、电阻等器件),形式多种多样,如cdl网表、scs网表、spice网表等。
可选的,所述根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核,包括但不限于以下12.1-12.6中的一种或多种:
12.1、确定芯片晶体管级的网表中第十五标识所在位置和/或第十五标识所在部分和/或与第十五标识之间的代码长度小于或等于第三十二预设门限的部分和/或与第十五标识之间的代码长度在所述芯片晶体管级的网表中的占比小于或等于第一比例阈值的部分,和/或所述位置和/或部分(指前面的:芯片晶体管级的网表中第十五标识所在位置和/或第十五标识所在部分和/或与第十五标识之间的代码长度小于或等于第三十二预设门限的部分和/或与第十五标识之间的代码长度在所述芯片晶体管级的网表中的占比小于或等于第一比例阈值的部分)和/或第十五标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十五标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
12.2、确定芯片晶体管级的网表中第十六标识所在位置和/或第十六标识所在部分和/或与第十六标识之间的代码长度小于或等于第三十三预设门限的部分和/或与第十六标识之间的代码长度在所述芯片晶体管级的网表中的占比小于或等于第二比例阈值的部分,和/或所述位置和/或部分(指前面的:芯片晶体管级的网表中第十六标识所在位置和/或第十六标识所在部分和/或与第十六标识之间的代码长度小于或等于第三十三预设门限的部分和/或与第十六标识之间的代码长度在所述芯片晶体管级的网表中的占比小于或等于第二比例阈值的部分)和/或第十六标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十六标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
12.3、将与第十九预设库中的晶体管级的网表的第十五部分相同和/或相似和/或相似度大于或等于第三十四预设门限的、所述芯片晶体管级的网表中的第十六部分、和/或第十六部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十九预设库中不包含所述目标芯片的设计公司设计的晶体管级的网表;
12.4、将与第二十预设库中的晶体管级的网表的第十七部分相同和/或相似和/或相似度大于或等于第三十五预设门限的、所述芯片晶体管级的网表中的第十八部分、和/或第十八部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十预设库中为所述目标芯片的设计公司设计的晶体管级的网表、和/或所述目标芯片的设计公司的晶体管级的网表IP核库、和/或所述目标芯片的设计公司的IP核库;
12.5、根据芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则可根据后者确定IP核。
可选的,所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的晶体管级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域(指前面的:未通过的晶体管级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域)所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
12.6、根据芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则可根据后者确定IP核)(需要说明的是,若确定的IP核恰好是在验证时被修改名称的模块和/或单元,则模块和/或单元修改名称前、修改名称后都是IP。
可选的,所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的晶体管级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域(指前面的:未通过的晶体管级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域)所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核。
可选的,所述第二信息包括芯片的门级网表,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;
可选的,所述芯片的门级网表包括但不限于以下一种或多种:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表;所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表;
可选的,所述根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核,包括但不限于以下13.1-13.11中的一种或多种:
13.1、确定芯片的门级网表中第十七标识所在位置和/或第十七标识所在部分和/或与第十七标识之间的代码长度小于或等于第三十六预设门限的部分和/或与第十七标识之间的代码长度在所述芯片的门级网表中的占比小于或等于第三比例阈值的部分,和/或所述位置和/或部分(指前面的:芯片的门级网表中第十七标识所在位置和/或第十七标识所在部分和/或与第十七标识之间的代码长度小于或等于第三十六预设门限的部分和/或与第十七标识之间的代码长度在所述芯片的门级网表中的占比小于或等于第三比例阈值的部分)和/或第十七标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十七标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
13.2、确定芯片的门级网表中第十八标识所在位置和/或第十八标识所在部分和/或与第十八标识之间的代码长度小于或等于第三十七预设门限的部分和/或与第十八标识之间的代码长度在所述芯片的门级网表中的占比小于或等于第四比例阈值的部分,和/或所述位置和/或部分(指前面的:芯片的门级网表中第十八标识所在位置和/或第十八标识所在部分和/或与第十八标识之间的代码长度小于或等于第三十七预设门限的部分和/或与第十八标识之间的代码长度在所述芯片的门级网表中的占比小于或等于第四比例阈值的部分)和/或第十八标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十八标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
13.3、将与第二十一预设库中的门级网表的第十九部分相同和/或相似和/或相似度大于或等于第三十八预设门限的、所述芯片的门级网表中的第二十部分、和/或第二十部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十一预设库中不包含所述目标芯片的设计公司设计的门级网表;
13.4、将与第二十二预设库中的门级网表的第二十一部分相同和/或相似和/或相似度大于或等于第三十九预设门限的、所述芯片的门级网表中的第二十二部分、和/或第二十二部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十二预设库中为所述目标芯片的设计公司设计的门级网表、和/或所述目标芯片的设计公司的门级网表IP核库、和/或所述目标芯片的设计公司的IP核库;
13.5、根据芯片的门级网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则可根据后者确定IP核。
可选的,所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域(指前面的:未通过的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域)所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的门级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的门级网表部分、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
13.6、根据芯片的门级网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则可根据后者确定IP核)(需要说明的是,若确定的IP核恰好是在验证时被修改名称的模块和/或单元,则模块和/或单元修改名称前、修改名称后都是IP。
可选的,所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域(指前面的:未通过的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域)所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的门级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的门级网表部分、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
13.7、根据芯片的门级网表转化为芯片晶体管级的网表后,转化的芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则根据后者确定IP核。
可选的,所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的晶体管级网表部分、和/或未通过的晶体管级网表部分所对应的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域(指前面的:未通过的晶体管级网表部分、和/或未通过的晶体管级网表部分所对应的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域)所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或对应的晶体管级网表部分所对应的门级网表部分、和/或对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
13.8、根据芯片的门级网表转化为芯片晶体管级的网表后,转化的芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则可根据后者确定IP核)(需要说明的是,若确定的IP核恰好是在验证时被修改名称的模块和/或单元,则模块和/或单元修改名称前、修改名称后都是IP。
可选的,所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的晶体管级网表部分、和/或未通过的晶体管级网表部分所对应的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域(指前面的:未通过的晶体管级网表部分、和/或未通过的晶体管级网表部分所对应的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域)所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或对应的晶体管级网表部分所对应的门级网表部分、和/或对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
13.9、根据芯片的门级网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、将修改后的门级网表转化为芯片晶体管级的网表、将转化的芯片晶体管级的网表与修改后的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
需要说明的是,LVS验证环境可以是:包含LVS验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做LVS验证。举一个例子,针对所述验证对象,在一套LVS验证环境中验证通过,但是在另一套LVS验证环境中不通过,则可根据后者确定IP核)(需要说明的是,若确定的IP核恰好是在验证时被修改名称的模块和/或单元,则模块和/或单元修改名称前、修改名称后都是IP。
可选的,所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的晶体管级网表部分、和/或未通过的晶体管级网表部分所对应的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域(指前面的:未通过的晶体管级网表部分、和/或未通过的晶体管级网表部分所对应的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域)所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或对应的晶体管级网表部分所对应的门级网表部分、和/或对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
13.10、根据芯片的两种门级网表、使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
需要说明的是,两种门级网表可以是包括但不限于以下一种或多种中的任意两种,和/或一种中的两个:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片寄存器传输级RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表,所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表。
另外需要说明的是,形式验证环境可以是:包含形式验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做形式验证。举一个例子,针对所述验证对象,在一套形式验证环境中验证通过,但是在另一套形式验证环境中不通过,则可可根据后者确定IP核。
可选的,所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的门级网表部分,和/或所述未通过部分(指前面的:未通过的门级网表部分)所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不匹配点所对应的门级网表部分,和/或所述部分(指前面的:验证中发现的不匹配点所对应的门级网表部分)和/或不匹配点所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不等价部分,和/或所述不等价部分所对应的门级网表部分、和/或所述不等价部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的两种门级网表中的逻辑和/或功能的差异处,和/或差异处所对应的门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
13.11、根据芯片的两种门级网表、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
需要说明的是,两种门级网表可以是包括但不限于以下一种或多种中的任意两种,和/或一种中的两个:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片寄存器传输级RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表,所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表。需要说明的是,形式验证环境可以是:包含形式验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做形式验证。举一个例子,针对所述验证对象,在一套形式验证环境中验证通过,但是在另一套形式验证环境中不通过,则可根据后者确定IP核。需要说明的是,若确定的IP核恰好是在验证时被修改名称的模块和/或单元,则模块和/或单元修改名称前、修改名称后都是IP。
可选的,所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的门级网表部分,和/或所述未通过部分(指前面的:验证中未通过的门级网表部分)所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不匹配点所对应的门级网表部分,和/或所述部分(指前面的:验证中发现的不匹配点所对应的门级网表部分)和/或不匹配点所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不等价部分,和/或所述不等价部分所对应的门级网表部分、和/或所述不等价部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的两种门级网表中的逻辑和/或功能的差异处,和/或差异处所对应的门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
可选的,其中,开展形式验证时,如果两种门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;举例如,一个门级网表是前端的,一个门级网表是后端的,并且后端网表增加了可测性设计的扫描链,如果认为这是方便后续芯片测试的功能,不作为IP核检测的关注点,可以不验证;反之,如果认为也需要做IP核检测,则验证;同样,对于其他功能和/或逻辑,也可以根据是否为IP核检测的关注点来判断是否验证。
可选的,其中,对该差异对应的功能和/或逻辑不验证的方法包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;
可选的,所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
可选的,所述第二信息包括芯片RTL代码,和/或芯片的门级网表;
可选的,所述芯片的门级网表包括但不限于以下一种或多种:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表;所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表;
可选的,所述根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核,包括但不限于以下14.1-14.7中的一种或多种:
14.1、确定芯片RTL代码中第十九标识所在位置和/或第十九标识所在部分和/或与第十九标识之间的代码长度小于或等于第四十预设门限的部分和/或与第十九标识之间的代码长度在所述芯片RTL代码中的占比小于或等于第五比例阈值的部分,和/或所述位置和/或部分(指前面的:芯片RTL代码中第十九标识所在位置和/或第十九标识所在部分和/或与第十九标识之间的代码长度小于或等于第四十预设门限的部分和/或与第十九标识之间的代码长度在所述芯片RTL代码中的占比小于或等于第五比例阈值的部分)和/或第十九标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十九标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
14.2、确定芯片RTL代码中第二十标识所在位置和/或第二十标识所在部分和/或与第二十标识之间的代码长度小于或等于第四十一预设门限的部分和/或与第二十标识之间的代码长度在所述芯片RTL代码中的占比小于或等于第六比例阈值的部分,和/或所述位置和/或部分(指前面的:芯片RTL代码中第二十标识所在位置和/或第二十标识所在部分和/或与第二十标识之间的代码长度小于或等于第四十一预设门限的部分和/或与第二十标识之间的代码长度在所述芯片RTL代码中的占比小于或等于第六比例阈值的部分)和/或第二十标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
14.3、根据芯片RTL代码中、除寄存器传输级描述之外的其他级别描述所在部分确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
可选的,所述除寄存器传输级描述之外的其他级别描述包括但不限于门级描述;
可选的,其中,所述确定的方法,包括但不限于以下一种或多种:确定芯片RTL代码中存在的一种或多种关键词、和/或芯片RTL代码中存在一种或多种关键词的总数量大于或等于第四十二预设门限所对应的关键词、和/或芯片RTL代码中存在一种或多种关键词的总数量占据整个芯片RTL代码的比例大于或等于第四十三预设门限所对应的关键词,将所述关键词所在位置和/或所在部分和/或与所述关键词之间的代码长度小于或等于第四十四预设门限的部分和/或与所述关键词之间的代码长度在所述芯片RTL代码中的占比小于或等于第七比例阈值的部分、和/或所述位置和/或部分(指前面的:所述关键词所在位置和/或所在部分和/或与所述关键词之间的代码长度小于或等于第四十四预设门限的部分和/或与所述关键词之间的代码长度在所述芯片RTL代码中的占比小于或等于第七比例阈值的部分)和/或所述关键词所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核,其中,所述关键词为代表除寄存器传输级描述之外的其他级别描述的关键词,所述关键词的种类包括但不限于以下一种或多种:表征描述级别的代码、表征描述级别的词汇和/或词组、表征描述级别的脚本、表征描述级别的程序、表征描述级别的网表、其中所述网表包括但不限于门级网表;将与所述芯片的门级网表的第二十三部分相同和/或相似和/或相似度大于或等于第四十五预设门限的、所述芯片RTL代码中的第二十四部分、和/或第二十四部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
14.4、将与第二十三预设库中的RTL代码的第二十五部分相同和/或相似和/或相似度大于或等于第四十六预设门限的、所述芯片RTL代码中的第二十六部分、和/或第二十六部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十三预设库中不包含所述目标芯片的设计公司设计的RTL代码;
14.5、将与第二十四预设库中的RTL代码的第二十七部分相同和/或相似和/或相似度大于或等于第四十七预设门限的、所述芯片RTL代码中的第二十八部分、和/或第二十八部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十四预设库中为所述目标芯片的设计公司设计的RTL代码、和/或所述目标芯片的设计公司的RTL代码IP核库、和/或所述目标芯片的设计公司的IP核库;
14.6、根据芯片RTL代码与芯片的门级网表、使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
需要说明的是,形式验证环境可以是:包含形式验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做形式验证。举一个例子,针对所述验证对象,在一套形式验证环境中验证通过,但是在另一套形式验证环境中不通过,则可根据后者确定IP核。
可选的,所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的RTL代码部分和/或未通过的门级网表部分,和/或未通过部分(指前面的:未通过的RTL代码部分和/或未通过的门级网表部分)所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不匹配点所对应的RTL代码部分和/或门级网表部分,和/或所述部分(指前面的:不匹配点所对应的RTL代码部分和/或门级网表部分)和/或不匹配点所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不等价部分,和/或所述不等价部分所对应的RTL代码部分、和/或所述不等价部分所对应的门级网表部分、和/或所述不等价部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的RTL代码中的逻辑和/或功能、与门级网表中的逻辑和/或功能的差异处,和/或差异处所对应的RTL代码部分、和/或门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
14.7、根据芯片RTL代码与芯片的门级网表、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
需要说明的是,形式验证环境可以是:包含形式验证在内的一套EDA环境,比如一套可以做设计、仿真、验证的EDA软件环境,直接在此全套环境中做形式验证。举一个例子,针对所述验证对象,在一套形式验证环境中验证通过,但是在另一套形式验证环境中不通过,则可根据后者确定IP核)(需要说明的是,若确定的IP核恰好是在验证时被修改名称的模块和/或单元,则模块和/或单元修改名称前、修改名称后都是IP。
可选的,所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的RTL代码部分和/或未通过的门级网表部分,和/或未通过部分(指前面的:未通过的RTL代码部分和/或未通过的门级网表部分)所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不匹配点所对应的RTL代码部分和/或门级网表部分,和/或所述部分(指前面的:不匹配点所对应的RTL代码部分和/或门级网表部分)和/或不匹配点所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不等价部分,和/或所述不等价部分所对应的RTL代码部分和/或门级网表部分、和/或所述不等价部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的RTL代码中的逻辑和/或功能、与门级网表中的逻辑和/或功能的差异处,和/或差异处所对应的RTL代码部分、和/或门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
可选的,其中,开展形式验证时,如果RTL代码与门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;举例如,门级网表是后端的,并且相比RTL代码增加了可测性设计的扫描链,如果认为这是方便后续芯片测试的功能,不作为IP核检测的关注点,可以不验证;反之,如果认为也需要做IP核检测,则验证;同样,对于其他功能和/或逻辑,也可以根据是否为IP核检测的关注点来判断是否验证。
可选的,其中,对该差异对应的功能和/或逻辑不验证的方法包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;
可选的,所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
可选的,根据第一信息、确定目标芯片中和/或所述目标芯片的信息中、是否调用IP核和/或是否疑似调用IP核时、所使用的预设门限和/或标识和/或预设库和/或其中的区域和/或部分,与根据第二信息,确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核、所使用的预设门限和/或标识和/或预设库和/或其中的区域和/或部分,相同或者不同;
可选的,根据第一信息、确定目标芯片中和/或所述目标芯片的信息中、是否调用IP核和/或是否疑似调用IP核时、所使用的预设门限和/或标识和/或预设库和/或其中的区域和/或部分中,相同类型的预设门限和/或标识和/或预设库和/或其中的区域和/或部分,相同或者不同;
可选的,根据第二信息,确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核、所使用的预设门限和/或标识和/或预设库和/或其中的区域和/或部分中,相同类型的预设门限和/或标识和/或预设库和/或其中的区域和/或部分,相同或者不同。
可选的,所述IP核包括但不限于非自研IP核和/或自研IP核;
可选的,其中,所述非自研IP核,包括但不限于以下一种或多种:不是所述目标芯片的设计公司所设计的IP核,所述目标芯片的设计公司从其他公司购买的IP核,所述目标芯片的设计公司从非自研IP核库中调用的IP核,知识产权不归属于所述目标芯片的设计公司的IP核;
可选的,其中,所述自研IP核,包括但不限于以下一种或多种:所述目标芯片的设计公司所设计的IP核,所述目标芯片的设计公司自主研发的IP核,所述目标芯片的设计公司自有的IP核,所述目标芯片的设计公司自身积累的IP核,知识产权归属于所述目标芯片的设计公司的IP核。
可选的,方法还包括:根据第一信息和/或第二信息和/或所述目标芯片的信息和/或所述目标芯片的设计文件和/或所述目标芯片的授权资料(包括但不限于:IP核授权资料,芯片自身授权资料,芯片设计公司的授权资料等),确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核,是否为非自研IP核、和/或是否为自研IP核;和/或
可选的,在根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核的同时,确定所述IP核是否为非自研IP核、和/或是否为自研IP核;
可选的,其中,确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核为非自研IP核的方法,包括但不限于以下17.1.1-17.1.10中的一种或多种:
17.1.1、通过芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的空白区域和/或空白区域所对应的内容确定的IP核为非自研IP核;(举例如,将10.1确定的IP核视为非自研IP核)
17.1.2、通过芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图与对应的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图比对时的不一致处、和/或不一致处所对应的内容确定的IP核为非自研IP核;(举例如,将10.2确定的IP核视为非自研IP核)
17.1.3、通过所述目标芯片的第三信息中的第二十一标识确定的IP核为非自研IP核;所述第二十一标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;(举例如,将10.3确定的IP核视为非自研IP核,将10.4确定的IP核视为非自研IP核,将11.1确定的IP核视为非自研IP核,将12.1确定的IP核视为非自研IP核,将13.1确定的IP核视为非自研IP核,将14.1确定的IP核视为非自研IP核)
17.1.4、通过与第二十五预设库中的信息的第二十五区域相同和/或相似和/或相似度大于或等于第四十八预设门限的、所述目标芯片的第三信息中的第二十六区域,和/或第二十六区域所对应的内容确定的IP核为非自研IP核;所述第二十五预设库中不包含所述目标芯片的设计公司设计的信息;(举例如,将10.7确定的IP核视为非自研IP核,将10.9确定的IP核为视非自研IP核,将11.3确定的IP核视为非自研IP核)
17.1.5、通过与第二十六预设库中的信息的第二十九部分相同和/或相似和/或相似度大于或等于第四十九预设门限的、所述目标芯片的第三信息中的第三十部分,和/或第三十部分所对应的内容确定的IP核为非自研IP核;所述第二十六预设库中不包含所述目标芯片的设计公司设计的信息;(举例如,将12.3确定的IP核视为非自研IP核,将13.3确定的IP核视为非自研IP核,将14.4确定的IP核视为非自研IP核)
17.1.6、通过确定为非自研IP核的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息,将其所对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为的IP核,为非自研IP核;
举例如,10.11中,将确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的非自研IP核的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息,所对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的非自研IP核。
17.1.7、根据一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告所确定的IP核为非自研IP核;(举例如,将11.5确定的IP核视为非自研IP核,将11.6确定的IP核视为非自研IP核,将12.5确定的IP核视为非自研IP核,将12.6确定的IP核视为非自研IP核,将13.5确定的IP核视为非自研IP核,将13.6确定的IP核视为非自研IP核,将13.7确定的IP核视为非自研IP核,将13.8确定的IP核视为非自研IP核,将13.9确定的IP核视为非自研IP核)
17.1.8、根据一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告所确定的IP核为非自研IP核;(举例如,将13.10确定的IP核视为非自研IP核,将13.11确定的IP核视为非自研IP核,将14.6确定的IP核视为非自研IP核,将14.7确定的IP核视为非自研IP核)
17.1.9、根据芯片RTL代码中、除寄存器传输级描述之外的其他级别描述所在部分所确定的IP核为非自研IP核;(举例如,将14.3确定的IP核视为非自研IP核)
17.1.10、针对所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核,若确定该IP核不是所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的自研IP核,则该IP核为所述目标芯片中和/或所述目标芯片的信息调用和/或疑似调用的非自研IP核;
可选的,其中,确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核为自研IP核的方法,包括但不限于以下17.2.1-17.2.5中的一种或多种:
17.2.1、通过所述目标芯片的第三信息中的第二十二标识确定的IP核为自研IP核;所述第二十二标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;(举例如,将10.5确定的IP核视为自研IP核,将10.6确定的IP核视为自研IP核,将11.2确定的IP核视为自研IP核,将12.2确定的IP核视为自研IP核,将13.2确定的IP核视为自研IP核,将14.2确定的IP核视为自研IP核)
17.2.2、通过与第二十七预设库中的信息的第二十七区域相同和/或相似和/或相似度大于或等于第五十预设门限的、所述目标芯片的第三信息中的第二十八区域,和/或第二十八区域所对应的内容确定的IP核为自研IP核;所述第二十七预设库中为所述目标芯片的设计公司设计的信息、和/或所述目标芯片的设计公司的信息IP核库、和/或所述目标芯片的设计公司的IP核库;(举例如,将10.8确定的IP核视为自研IP核,将10.10确定的IP核视为自研IP核,将11.4确定的IP核视为自研IP核,将14.5确定的IP核视为自研IP核)
17.2.3、通过与第二十八预设库中的信息的第三十一部分相同和/或相似和/或相似度大于或等于第五十一预设门限的、所述目标芯片的第三信息中的第三十二部分,和/或第三十二部分所对应的内容确定的IP核为自研IP核;所述第二十八预设库中为所述目标芯片的设计公司设计的信息、和/或所述目标芯片的设计公司的信息IP核库、和/或所述目标芯片的设计公司的IP核库;(举例如,将12.4确定的IP核视为自研IP核,将13.4确定的IP核视为自研IP核)
17.2.4、通过确定为自研IP核的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息,将其所对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为的IP核,为自研IP核;
举例如,10.11中,将确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的自研IP核的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息,所对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的自研IP核
17.2.5、针对所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核,若确定该IP核不是所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的非自研IP核,则该IP核为所述目标芯片中和/或所述目标芯片的信息调用和/或疑似调用的自研IP核;
可选的,其中,所述目标芯片的第三信息包括但不限于以下一种或多种:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,芯片的原理图,芯片晶体管级的网表,芯片的门级网表,芯片RTL代码,第一信息中的一种或者多种信息的所有或者部分信息,第二信息中的一种或者多种信息的所有或者部分信息;
可选的,其中,所述第二十五预设库和/或第二十六预设库和/或第二十七预设库和/或第二十八预设库和/或所述目标芯片的设计公司设计的信息和/或所述目标芯片的设计公司的信息IP核库中的信息、的信息种类,包括但不限于以下一种或多种:版图和/或布图和/或布局布线和/或布局布线图,原理图,晶体管级的网表,门级网表,RTL代码。
可选的,方法还包括:判定芯片的自主度和/或可控度;所述判定的方法包括但不限于以下18.1-18.15中的一种或多种:
18.1、确定为判定芯片的自主度和/或可控度所需要的一种或多种第四信息,所述第四信息包括但不限于以下一种或多种:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,芯片的原理图,芯片晶体管级的网表,芯片的门级网表,芯片RTL代码,第一信息中的一种或者多种信息的所有或者部分信息,第二信息中的一种或者多种信息的所有或者部分信息,芯片的除第一信息、第二信息之外的其他信息;
18.2、针对所述需要的一种或多种第四信息中的每一种第四信息,分配该种第四信息对应的分值;
可选的,其中,分配分值的方法包括但不限于:根据每种第四信息实现和/或设计的难易程度和/或关键程度分配分值;
18.3、针对每种所述需要的第四信息,如果获取的该种第四信息中未包含所述要判定芯片的所有该种信息、和/或未包含所述要判定芯片的所有功能和/或所有逻辑和/或所有模块和/或所有单元,和/或如果获取的该种第四信息中调用了非自研IP核和/或疑似调用了非自研IP核,则所述芯片获得的分值为:该种第四信息对应的分值,减去获取的该种第四信息中所缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元所对应的分值,减去获取的该种第四信息中调用和/或疑似调用的非自研IP核所对应的分值之后,所剩下的分值;和/或,所述芯片获得的分值为:该种第四信息对应的分值,减去获取的该种第四信息中所缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元所对应的分值的第一比例的分值,减去获取的该种第四信息中调用和/或疑似调用的非自研IP核所对应的分值的第二比例的分值之后,所剩下的分值;
可选的,若所述获取的该种第四信息中所缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元,与所述获取的该种第四信息中调用和/或疑似调用的非自研IP核有重复和/或交叠的内容,则针对重复和/或交叠的内容,只减一次分、和/或不重复减分;
可选的,第一比例和/或第二比例的确定方法包括但不限于以下一种或多种:比例小于或等于1,比例大于或等于0,所述缺少的要判定芯片的信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元为国产时的比例小于或等于为非国产时的比例,所述调用和/或疑似调用的非自研IP核为国产时的比例小于或等于所述非自研IP核为非国产时的比例;
18.4、针对每种所述需要的第四信息,如果获取的该种第四信息包含了所述要判定芯片的所有该种信息和/或包含了所述要判定芯片的所有功能和/或所有逻辑和/或所有模块和/或所有单元,且获取的该种第四信息中未调用非自研IP核且未疑似调用非自研IP核,则所述芯片获得的分值为:该种第四信息对应的分值;
18.5、针对每种所述需要的第四信息,若未获取到该种第四信息、和/或无法确认所述获取的该种第四信息为所述芯片的第四信息,则所述芯片在该种第四信息下不获得分值;
18.6、将所述芯片针对所述需要的一种或多种第四信息中的每种第四信息所获得的实际分值求和,作为芯片的总得分,通过总得分对芯片的自主度和/或可控度进行判定;
18.7、其中,获取的第四信息中未包含所述要判定芯片的所有该种信息和/或未包含所述要判定芯片的所有功能和/或所有逻辑和/或所有模块和/或所有单元的一种情况为,该种第四信息完成设计后的其他信息中调用了非自研IP核、而该种第四信息中暂未针对所述IP核对应的功能和/或逻辑和/或模块和/或单元进行设计;
18.8、其中,针对所述需要的一种或多种第四信息,分配各种第四信息对应的分值时,需要确保一个既定功能的芯片在不同方案下、在相同的自主度和/或可控度所对应的得分均相同;所述确保在相同的自主度和/或可控度所对应的得分均相同的实现方法包括但不限于:一个既定功能的芯片在不同方案下、所述需要的各种第四信息所对应的分值之和均相同;
举例1,确定需要的第四信息是芯片实物、芯片设计版图、芯片门级网表、芯片RTL代码,每种第四信息分值均为25分;
发现获取的芯片门级网表中缺少一个模块A的功能,则芯片在门级网表这里获得的分值为RTL代码的25分-模块A分值(假定为5分)=20分;
发现获取的芯片设计版图中调用了非自研IP核B,则芯片在设计版图这里获得的分值为设计版图的25分-非自研IP核B的分值(假定为5分)=20分;
发现获取的芯片实物包含了所述要判定芯片的所有该种信息和/或包含了所述要判定芯片的所有功能和/或所有逻辑和/或所有模块和/或所有单元,且未调用非自研IP核且未疑似调用非自研IP核,则芯片在芯片实物这里获得的分值为芯片实物的25分;
未获取到RTL代码,则芯片在RTL代码这里不获得分值;
那么最后芯片的总分为20分+20分+25分=65。
举例2,确定需要的第四信息是芯片实物、芯片设计版图、芯片门级网表、芯片RTL代码,每种第四信息分值均为25分;
发现获取的芯片门级网表中缺少一个模块A的功能,则芯片在门级网表这里获得的分值为RTL代码的25分-模块A分值(假定为5分)*第一比例(假定为0.6)=22分;
发现获取的芯片设计版图中调用了非自研IP核B,则芯片在设计版图这里获得的分值为设计版图的25分-非自研IP核B的分值(假定为5分)*第二比例(假定为0.4)=23分;
发现获取的芯片实物包含了所述要判定芯片的所有该种信息和/或包含了所述要判定芯片的所有功能和/或所有逻辑和/或所有模块和/或所有单元,且未调用非自研IP核且未疑似调用非自研IP核,则芯片在芯片实物这里获得的分值为芯片实物的25分;
未获取到RTL代码,则芯片在RTL代码这里不获得分值;
那么最后芯片的总分为22分+23分+25分=70。
举例3,针对某种需要的第四信息,如果缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元,和/或调用和/或疑似调用的非自研IP核,不只一个,则陆续减掉即可。
举例4,针对某种需要的第四信息,如果缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元,和/或调用和/或疑似调用的非自研IP核,不只一个,且有重复,那么重复的部分在减的时候只减一次,避免重复扣分。而对于不同种的需要的第四信息,如果之间的有重复,则可以没有这个限制。
举例5,不同IP核如IP核C、IP核D、IP核E等,其第二比例可相同或者不同;同样的,不同模块的第一比例可相同或者不同。
18.9、确定为判定芯片的自主度和/或可控度所需要的各种功能和/或逻辑和/或模块和/或单元;
18.10、针对所述需要的各种功能和/或逻辑和/或模块和/或单元中的每一种,分配该种功能和/或逻辑和/或模块和/或单元对应的分值;
可选的,其中,分配分值的方法包括但不限于:根据每种功能和/或逻辑和/或模块和/或单元、实现和/或设计的难易程度和/或关键程度分配分值;
18.11、针对每种所述需要的功能和/或逻辑和/或模块和/或单元,如果所述要判定芯片的该种功能和/或逻辑和/或模块和/或单元中、没有调用非自研IP核且没有疑似调用非自研IP核,所述芯片获得该种功能和/或逻辑和/或模块和/或单元对应的分值;
18.12、针对每种所述需要的功能和/或逻辑和/或模块和/或单元,如果所述要判定芯片的该种功能和/或逻辑和/或模块和/或单元中、调用了非自研IP核和/或疑似调用了非自研IP核,所述芯片不获得该种功能和/或逻辑和/或模块和/或单元对应的分值、和/或所述芯片获得该种功能和/或逻辑和/或模块和/或单元对应的分值的第三比例的分值;
可选的,所述第三比例的确定方法包括但不限于以下一种或多种:比例小于或等于1,比例大于或等于0,所述调用和/或疑似调用的非自研IP核为国产时的比例大于或等于所述非自研IP核为非国产时的比例;
18.13、针对每种所述需要的功能和/或逻辑和/或模块和/或单元,如果所述要判定芯片缺少该功能和/或逻辑和/或模块和/或单元,则所述芯片在该种功能和/或逻辑和/或模块和/或单元下不获得分值;
18.14、将所述芯片针对所述需要的各种功能和/或逻辑和/或模块和/或单元中的每种功能和/或逻辑和/或模块和/或单元所获得的实际分值求和,作为芯片的总得分,通过总得分对芯片的自主度和/或可控度进行判定;
18.15、其中,针对所述需要的各种功能和/或逻辑和/或模块和/或单元,分配各种功能和/或逻辑和/或模块和/或单元对应的分值时,需要确保一个既定功能的芯片在不同方案下、在相同的自主度和/或可控度所对应的得分均相同;所述确保在相同的自主度和/或可控度所对应的得分均相同的实现方法包括但不限于:一个既定功能的芯片在不同方案下、所述需要的各种功能和/或逻辑和/或模块和/或单元对应的分值之和均相同。
举例1,确定为判定芯片的自主度和/或可控度所需要的各种功能和/或逻辑和/或模块和/或单元为模块1、模块2、模块3、模块3,三者分配的分值均为25分;
发现芯片的模块1中,没有调用非自研IP核且没有疑似调用非自研IP核,所述芯片获得模块1对应的分值25分;
发现芯片的模块2中,调用了非自研IP核a,则所述芯片获得模块2对应的分值的第三比例(假定第三比例在a是国产时是0.6,非国产时是0,而本例中a为国产)的分值,即25分*0.6=15分;
发现芯片的模块3中,调用了非自研IP核b,则所述芯片获得模块3对应的分值的第三比例(假定第三比例在b是国产时是0.4,非国产时是0,而本例中b为非国产)的分值,即25分*0=0分;
发现芯片缺少模块4,则所述芯片在模块4下不获得分值;
芯片的总得分为25分+15分+0分=40分。
举例2,不同IP核如IP核c、IP核d、IP核e等,其第三比例可相同或者不同。
可选的,所述获取的第四信息中所缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元所对应的分值,和/或所述获取的第四信息中调用和/或疑似调用的非自研IP核对应的分值的计算方法,包括但不限于以下19.1-19.3中的一种或多种:
19.1、针对所述需要的该种第四信息,针对其中的各种功能和/或逻辑和/或模块和/或单元,分配各种功能和/或逻辑和/或模块和/或单元所对应的分值,且各种功能和/或逻辑和/或模块和/或单元所对应分值之和为该种第四信息对应的分值;
可选的,其中,分配分值的方法包括但不限于:根据每种功能和/或逻辑和/或模块和/或单元、实现和/或设计的难易程度和/或关键程度分配分值;
19.2、在所述需要的该种第四信息中的各种功能和/或逻辑和/或模块和/或单元中,找出所述获取的第四信息中所缺少的要判定芯片的信息部分和/或功能和/或逻辑和/或模块和/或单元,这部分功能和/或逻辑和/或模块和/或单元所分配的分值或分值之和即为获取的第四信息中所缺少的要判定芯片的信息部分、和/或所缺少的功能和/或逻辑和/或模块和/或单元所对应的分值;
19.3、在所述需要的该种第四信息中的各种功能和/或逻辑和/或模块和/或单元中,找出所述获取的第四信息中调用和/或疑似调用的非自研IP核所对应的功能和/或逻辑和/或模块和/或单元,这部分功能和/或逻辑和/或模块和/或单元所分配的分值或分值之和即为获取的第四信息中调用和/或疑似调用的非自研IP核所对应的分值。
可选的,方法还包括:确认获取的信息为所述目标芯片的信息;
可选的,所述信息包括但不限于以下一种或多种:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,芯片的原理图,芯片晶体管级的网表,芯片的门级网表,芯片RTL代码,第一信息中的一种或者多种信息的所有或者部分信息,第二信息中的一种或者多种信息的所有或者部分信息;芯片的除第一信息、第二信息之外的其他信息;
可选的,所述确认的方法包括但不限于以下20.1-20.4中的一种或多种:
20.1、获取的信息,已经声明或者鉴定为所述目标芯片的信息;
20.2、将获取的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图确定为所述目标芯片的信息;
20.3、对获取的信息进行比对和/或验证确认是否为所述目标芯片的信息,包括但不限于以下一种或多种:将获取的信息与已经声明或者鉴定为所述目标芯片的信息、进行一次或者多次的比对和/或验证,如果比对和/或验证通过,则所述获取的信息为所述目标芯片的信息;将获取的信息与芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图、进行一次或者多次的比对和/或验证,如果比对和/或验证通过,则所述获取的信息为所述目标芯片的信息;
20.4、将获取的信息,与经过比对和/或验证确认为所述目标芯片的信息,进行一次或者多次的比对和/或验证,若比对和/或验证通过,则所述获取的信息为所述目标芯片的信息。
可选的,所述比对和/或验证,包括但不限于以下21.1-21.16中的一种或多种:
21.1、将芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、与芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图进行比对;
21.2、将芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、与芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元后,对余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、与余下的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图进行比对;
21.3、将芯片的原理图、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
21.4、将芯片的原理图、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片的原理图、与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
21.5、将芯片晶体管级的网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
21.6、将芯片晶体管级的网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片晶体管级的网表、与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
21.7、将芯片的门级网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
21.8、将芯片的门级网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片的门级网表、与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
21.9、将芯片的门级网表转化为芯片晶体管级的网表后,对转化的芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
21.10、将芯片的门级网表转化为芯片晶体管级的网表后,将转化的芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片晶体管级的网表、与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
21.11、将芯片的门级网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,将余下的门级网表转化为晶体管级的网表,对转化的晶体管级的网表与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图部分进行LVS验证;
21.12、将芯片的一种门级网表、与芯片的另一种门级网表进行形式验证;
21.13、将芯片的一种门级网表、与芯片的另一种门级网表,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片的一种门级网表、与余下的芯片的另一种门级网表进行形式验证;
21.14、将芯片RTL代码、与芯片的门级网表进行形式验证;
21.15、将芯片RTL代码、与芯片的门级网表,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片RTL代码、与余下的芯片的门级网表进行形式验证;
21.16、其中,开展形式验证时,如果验证的两种门级网表之间、和/或验证的RTL代码与门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;
可选的,其中,对该差异对应的功能和/或逻辑不验证的方法包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;
可选的,所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
可选的,包括但不限于以下22.1-22.18中的一种或多种:
22.1、所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的区域,包括但不限于所有层和/或部分层和/或一层的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,对于其中一层,所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图包括但不限于整个区域和/或多个局部区域和/或一个局部区域的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;其中,不同层的整个区域和/或多个局部区域和/或一个局部区域的位置和/或范围相同或者不同;
22.2、所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图、和/或芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的区域,包括但不限于所有层和/或部分层和/或一层的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,对于其中一层,所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图包括但不限于整个区域和/或多个局部区域和/或一个局部区域的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图;其中,不同层的整个区域和/或多个局部区域和/或一个局部区域的位置和/或范围相同或者不同;
22.3、所述预设库中的版图和/或布图和/或布局布线和/或布局布线图、和/或版图和/或布图和/或布局布线和/或布局布线图中的区域,包括但不限于所有层和/或部分层和/或一层的版图和/或布图和/或布局布线和/或布局布线图,对于其中一层,所述版图和/或布图和/或布局布线和/或布局布线图包括但不限于整个区域和/或多个局部区域和/或一个局部区域的版图和/或布图和/或布局布线和/或布局布线图;其中,不同层的整个区域和/或多个局部区域和/或一个局部区域的位置和/或范围相同或者不同;
22.4、所述芯片的原理图、和/或芯片的原理图中的区域,包括但不限于整个区域和/或多个局部区域和/或一个局部区域的芯片原理图;
22.5、所述预设库中的原理图、和/或原理图中的区域,包括但不限于整个区域和/或多个局部区域和/或一个局部区域的原理图;
22.6、所述芯片晶体管级的网表、和/或晶体管级的网表中的部分,包括但不限于:整个晶体管级的网表,部分晶体管级的网表;
22.7、所述预设库中的晶体管级的网表、和/或晶体管级的网表中的部分,包括但不限于:整个晶体管级的网表,部分晶体管级的网表;
22.8、所述芯片的门级网表、和/或门级网表中的部分,包括但不限于:整个门级网表,部分门级网表;
22.9、所述预设库中的门级网表、和/或门级网表中的部分,包括但不限于:整个门级网表,部分门级网表;
22.10、所述芯片RTL代码、和/或RTL代码中的部分,包括但不限于以下一种或多种:整个RTL代码,部分RTL代码,所述目标芯片的设计公司声称的RTL代码,所述目标芯片的设计公司在RTL设计阶段设计的代码;
22.11、所述预设库中的RTL代码、和/或RTL代码中的部分,包括但不限于:整个RTL代码,部分RTL代码;
22.12、所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图包括但不限于以下一种或多种:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的注释和/或说明;
22.13、所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图包括但不限于以下一种或多种:芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的注释和/或说明;
22.14、所述芯片的原理图包括但不限于以下一种或多种:芯片的原理图,芯片的原理图中的注释和/或说明;
22.15、所述芯片晶体管级的网表包括但不限于以下一种或多种:芯片晶体管级的网表,芯片晶体管级的网表中的注释和/或说明;
22.16、所述芯片的门级网表包括但不限于以下一种或多种:芯片的门级网表,芯片的门级网表中的注释和/或说明;
22.17、所述芯片RTL代码包括但不限于以下一种或多种:芯片RTL代码,芯片RTL代码中的注释和/或说明;
22.18、所述标识包括以下一种或多种:文本、图形、商标、名称、标志、标记、水印。
请参阅图2,图2是本发明实施例二提供的一种IP核调用的检测装置的结构示意图,该IP核调用的检测装置20包括:
IP核调用判断模块21,用于根据第一信息,确定目标芯片中和/或所述目标芯片的信息中,是否调用IP核和/或是否疑似调用IP核;
IP核调用确定模块22,用于根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核;
其中,所述目标芯片的信息为一种信息或多种信息。
其他可选的具体实施方式中,IP核调用的检测装置20也可以仅包括IP核调用判断模块21,或者仅包括IP核调用确定模块22。
可选的,所述目标芯片为整个或者部分芯片,所述芯片的种类包括但不限于以下一种或多种:已完成封装的芯片、未封装的裸片、裸片中的模块、裸片中的单元。
可选的,所述第一信息与所述第二信息相同或者不同。
可选的,所述第一信息包括芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,和/或芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图;
所述IP核调用判断模块21,包括但不限于以下一种或多种:
第一判断子模块,用于芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中,若其中有空白区域和/或空白区域面积大于或等于第一预设门限和/或空白区域占据比例大于或等于第二预设门限和/或空白区域为规整的几何图形,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述空白区域占据比例是指空白区域占据所述设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的比例,所述规整的几何图形包括但不限于以下一种或多种:正方形、长方形、菱形、梯形、平行四边形、圆形、椭圆形、三角形、多边形、弓形、弧形;
第二判断子模块,用于将芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图与对应的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图比对,若比对不一致,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核,所述比对不一致的情况包括但不限于以下一种或多种:所有层和/或部分层和/或一层比对不一致;所有层和/或部分层和/或一层中,整个区域和/或多个局部区域和/或一个局部区域比对不一致;
第三判断子模块,用于若所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中,和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中存在第一标识,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述第一标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第四判断子模块,用于若所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中,和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中存在第二标识,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述第二标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第五判断子模块,用于将所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,与第一预设库中的版图和/或布图和/或布局布线和/或布局布线图进行比对,若所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的第一区域,与所述第一预设库中的版图和/或布图和/或布局布线和/或布局布线图的第二区域相同和/或相似和/或相似度大于或等于第三预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第一预设库中不包含所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图;
第六判断子模块,用于将所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,与第二预设库中的版图和/或布图和/或布局布线和/或布局布线图进行比对,若所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的第三区域,与所述第二预设库中的版图和/或布图和/或布局布线和/或布局布线图的第四区域相同和/或相似和/或相似度大于或等于第四预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第二预设库中为所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图、和/或所述目标芯片的设计公司的版图和/或布图和/或布局布线和/或布局布线图IP核库、和/或所述目标芯片的设计公司的IP核库;
第七判断子模块,用于将所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,与第三预设库中的版图和/或布图和/或布局布线和/或布局布线图进行比对,若所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的第五区域,与所述第三预设库中的版图和/或布图和/或布局布线和/或布局布线图的第六区域相同和/或相似和/或相似度大于或等于第五预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第三预设库中不包含所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图;
第八判断子模块,用于将所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,与第四预设库中的版图和/或布图和/或布局布线和/或布局布线图进行比对,若所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的第七区域,与所述第四预设库中的版图和/或布图和/或布局布线和/或布局布线图的第八区域相同和/或相似和/或相似度大于或等于第六预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第四预设库中为所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图、和/或所述目标芯片的设计公司的版图和/或布图和/或布局布线和/或布局布线图IP核库、和/或所述目标芯片的设计公司的IP核库。
可选的,所述第一信息包括芯片的原理图,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;
所述IP核调用判断模块21包括但不限于以下一种或多种:
第九判断子模块,用于若所述芯片的原理图中存在第三标识,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述第三标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第十判断子模块,用于若所述芯片的原理图中存在第四标识,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述第四标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第十一判断子模块,用于将所述芯片的原理图与第五预设库中的原理图进行比对,若所述芯片原理图中的第九区域与所述第五预设库中的原理图的第十区域相同和/或相似和/或相似度大于或等于第七预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第五预设库中不包含所述目标芯片的设计公司设计的原理图;
第十二判断子模块,用于将所述芯片的原理图与第六预设库中的原理图进行比对,若所述芯片原理图中的第十一区域与所述第六预设库中的原理图的第十二区域相同和/或相似和/或相似度大于或等于第八预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第六预设库中为所述目标芯片的设计公司设计的原理图、和/或所述目标芯片的设计公司的原理图IP核库、和/或所述目标芯片的设计公司的IP核库;
第十三判断子模块,用于针对所述芯片的原理图与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第十四判断子模块,用于针对所述芯片的原理图与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
可选的,所述第一信息包括芯片晶体管级的网表,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;所述晶体管级的网表包括但不限于以下一种或多种:描述为晶体管级别的网表,芯片原理图对应的晶体管级的网表,芯片完成最终设计的门级网表对应的晶体管级的网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的晶体管级的网表,模数混合芯片中由模拟模块原理图对应的晶体管级的网表和/或数字模块完成最终设计的门级网表对应的晶体管级的网表所组成的晶体管级的网表;
所述IP核调用判断模块21包括但不限于以下一种或多种:
第十五判断子模块,用于若所述芯片晶体管级的网表中存在第五标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第五标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第十六判断子模块,用于若所述芯片晶体管级的网表中存在第六标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第六标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第十七判断子模块,用于将所述芯片晶体管级的网表与第七预设库中的晶体管级的网表进行比对,若所述芯片晶体管级的网表中的第一部分与所述第七预设库中的晶体管级的网表中的第二部分相同和/或相似和/或相似度大于或等于第九预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第七预设库中不包含所述目标芯片的设计公司设计的晶体管级的网表;
第十八判断子模块,用于将所述芯片晶体管级的网表与第八预设库中的晶体管级的网表进行比对,若所述芯片晶体管级的网表中的第三部分与所述第八预设库中的晶体管级的网表中的第四部分相同和/或相似和/或相似度大于或等于第十预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第八预设库中为所述目标芯片的设计公司设计的晶体管级的网表、和/或所述目标芯片的设计公司的晶体管级的网表IP核库、和/或所述目标芯片的设计公司的IP核库;
第十九判断子模块,用于针对所述芯片晶体管级的网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第二十判断子模块,用于针对所述芯片晶体管级的网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
可选的,所述第一信息包括芯片的门级网表,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;所述芯片的门级网表包括但不限于以下一种或多种:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片寄存器传输级RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表;所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表;
所述IP核调用判断模块21包括但不限于以下一种或多种:
第二十一判断子模块,用于若所述芯片的门级网表中存在第七标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第七标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第二十二判断子模块,用于若所述芯片的门级网表中存在第八标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第八标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第二十三判断子模块,用于将所述芯片的门级网表与第九预设库中的门级网表进行比对,若所述芯片的门级网表中的第五部分与所述第九预设库中的门级网表的第六部分相同和/或相似和/或相似度大于或等于第十一预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第九预设库中不包含所述目标芯片的设计公司设计的门级网表;
第二十四判断子模块,用于将所述芯片的门级网表与第十预设库中的门级网表进行比对,若所述芯片的门级网表中的第七部分与所述第十预设库中的门级网表的第八部分相同和/或相似和/或相似度大于或等于第十二预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第十预设库中为所述目标芯片的设计公司设计的门级网表、和/或所述目标芯片的设计公司的门级网表IP核库、和/或所述目标芯片的设计公司的IP核库;
第二十五判断子模块,用于针对所述芯片的门级网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第二十六判断子模块,用于针对所述芯片的门级网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第二十七判断子模块,用于将芯片的门级网表转化为芯片晶体管级的网表后,针对转化的芯片晶体管级的网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第二十八判断子模块,用于将芯片的门级网表转化为芯片晶体管级的网表后,针对转化的芯片晶体管级的网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,修改其中一个或者部分数量或者所有的模块和/或单元的名称、并在修改之后使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第二十九判断子模块,用于针对芯片的门级网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、修改其中一个或者部分数量或者所有的模块和/或单元的名称,再将修改后的门级网表转化为芯片晶体管级的网表,针对转化的芯片晶体管级的网表与修改后的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第三十判断子模块,用于针对芯片的两种门级网表,使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证,若其中一次或者多次的形式验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第三十一判断子模块,用于针对芯片的两种门级网表,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证,若其中一次或者多次的形式验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
其中,开展形式验证时,如果两种门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;其中,对该差异对应的功能和/或逻辑不验证包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
可选的,所述第一信息包括芯片RTL代码,和/或芯片的门级网表;所述芯片的门级网表包括但不限于以下一种或多种:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表;所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表;
所述IP核调用判断模块21包括但不限于以下一种或多种:
第三十二判断子模块,用于若所述芯片RTL代码中存在第九标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第九标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第三十三判断子模块,用于若所述芯片RTL代码中存在第十标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第十标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第三十四判断子模块,用于若所述芯片RTL代码中存在除寄存器传输级描述之外的其他级别描述,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述除寄存器传输级描述之外的其他级别描述包括但不限于门级描述;其中,所述第三十四判断子模块还用于检查所述芯片RTL代码中是否存在除寄存器传输级描述之外的其他级别描述,所述第三十四判断子模块包括但不限于以下一种或多种:第一检索单元,用于对芯片RTL代码进行关键词检索;第一比对单元,用于对芯片RTL代码与芯片的门级网表进行比对,若所述芯片RTL代码中的第九部分与所述芯片的门级网表的第十部分相同和/或相似和/或相似度大于或等于第十三预设门限,则确定所述芯片RTL代码中存在除寄存器传输级描述之外的其他级别描述;其中,所述第一检索单元包括但不限于以下一种或多种:第一检索子单元,用于使用代表除寄存器传输级描述之外的其他级别描述的一种或多种关键词对RTL代码进行检索,若发现RTL代码中存在其中一种或多种关键词和/或RTL代码中存在其中一种或多种关键词的总数量大于或等于第十四预设门限和/或RTL代码中存在其中一种或多种关键词的总数量占据整个RTL代码词总量的比例大于或等于第十五预设门限,则确定所述芯片RTL代码中存在除寄存器传输级描述之外的其他级别描述;第二检索子单元,用于使用代表寄存器传输级描述的一种或多种关键词对RTL代码进行检索,若发现其中各种关键词在RTL代码中均不存在和/或其中一种或多种关键词在RTL代码中不存在,则确定所述芯片RTL代码中存在除寄存器传输级描述之外的其他级别描述;所述关键词的种类包括但不限于以下一种或多种:表征描述级别的代码、表征描述级别的词汇和/或词组、表征描述级别的脚本、表征描述级别的程序、表征描述级别的RTL代码、表征描述级别的网表,其中所述网表包括但不限于门级网表;
第三十五判断子模块,用于将所述芯片RTL代码与第十一预设库中的RTL代码进行比对,若所述芯片RTL代码中的第十一部分与所述第十一预设库中的RTL代码的第十二部分相同和/或相似和/或相似度大于或等于第十六预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第十一预设库中不包含所述目标芯片的设计公司设计的RTL代码;
第三十六判断子模块,用于将所述芯片RTL代码与第十二预设库中的RTL代码进行比对,若所述芯片RTL代码中的第十三部分与所述第十二预设库中的RTL代码的第十四部分相同和/或相似和/或相似度大于或等于第十七预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第十二预设库中为所述目标芯片的设计公司设计的RTL代码、和/或所述目标芯片的设计公司的RTL代码IP核库、和/或所述目标芯片的设计公司的IP核库;
第三十七判断子模块,用于针对所述芯片RTL代码与所述芯片的门级网表,使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证,若其中一次或者多次的形式验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
第三十八判断子模块,用于针对所述芯片RTL代码与所述芯片的门级网表,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的形式验证软件和/或工具和/或环境中进行一次或者多次的形式验证,若任何一次或者多次的形式验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
其中,开展形式验证时,如果RTL代码与门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;其中,对该差异对应的功能和/或逻辑不验证包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
可选的,所述第二信息包括芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,和/或芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图;
所述IP核调用确定模块22包括但不限于以下一种或多种:
第一确定子模块,用于确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的空白区域、和/或面积大于或等于第十八预设门限的空白区域、和/或占据比例大于或等于第十九预设门限的空白区域、和/或规整几何图形的空白区域,将所述空白区域,和/或所述空白区域所对应的设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、和/或所述空白区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述占据比例是指所述空白区域占据所述设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的比例,所述规整的几何图形包括但不限于以下一种或多种:正方形、长方形、菱形、梯形、平行四边形、圆形、椭圆形、三角形、多边形、弓形、弧形;所述空白区域包括但不限于一个或多个区域;
第二确定子模块,用于确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图与对应的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图比对时的不一致处,将所述不一致处、和/或不一致处所对应的设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、和/或不一致处所对应的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图、和/或不一致处所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;其中所述不一致处包括但不限于以下一种或多种情况:所有层和/或部分层和/或一层比对不一致处;所有层和/或部分层和/或一层中,整个区域和/或多个局部区域和/或一个局部区域比对不一致处;所述不一致处包括但不限于一处或者多处的版图和/或布图和/或布局布线和/或布局布线图;
第三确定子模块,用于确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十一标识所在位置和/或第十一标识所在区域和/或与第十一标识距离小于或等于第二十预设门限的区域,和/或所述位置和/或区域和/或第十一标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第四确定子模块,用于确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十一标识所在位置和/或第十一标识所在区域和/或与第十一标识距离小于或等于第二十一预设门限的区域,和/或所述位置和/或区域和/或第十一标识所对应的模块和/或单元和/或设计信息后,将一层或多层的所述位置和/或区域、和/或所述一层或多层的所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;其中所述第二十一预设门限与所述第二十预设门限相同或者不同;
其中,所述第十一标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第五确定子模块,用于确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十二标识所在位置和/或第十二标识所在区域和/或与第十二标识距离小于或等于第二十二预设门限的区域,和/或所述位置和/或区域和/或第十二标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第六确定子模块,用于确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十二标识所在位置和/或第十二标识所在区域和/或与第十二标识距离小于或等于第二十三预设门限的区域,和/或所述位置和/或区域和/或第十二标识所对应的模块和/或单元和/或设计信息后,将一层或多层的所述位置和/或区域、和/或所述一层或多层的所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;其中所述第二十三预设门限与所述第二十二预设门限相同或者不同;
其中,所述第十二标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第七确定子模块,用于将与第十三预设库中的版图和/或布图和/或布局布线和/或布局布线图的第十三区域相同和/或相似和/或相似度大于或等于第二十四预设门限的、所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的第十四区域、和/或第十四区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十三预设库中不包含所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图;
第八确定子模块,用于将与第十四预设库中的版图和/或布图和/或布局布线和/或布局布线图的第十五区域相同和/或相似和/或相似度大于或等于第二十五预设门限的、所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的第十六区域、和/或第十六区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十四预设库中为所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图、和/或所述目标芯片的设计公司的版图和/或布图和/或布局布线和/或布局布线图IP核库、和/或所述目标芯片的设计公司的IP核库;
第九确定子模块,用于将与第十五预设库中的版图和/或布图和/或布局布线和/或布局布线图的第十七区域相同和/或相似和/或相似度大于或等于第二十六预设门限的、所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的第十八区域、和/或第十八区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十五预设库中不包含所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图;
第十确定子模块,用于将与第十六预设库中的版图和/或布图和/或布局布线和/或布局布线图的第十九区域相同和/或相似和/或相似度大于或等于第二十七预设门限的、所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的第二十区域、和/或第二十区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十六预设库中为所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图、和/或所述目标芯片的设计公司的版图和/或布图和/或布局布线和/或布局布线图IP核库、和/或所述目标芯片的设计公司的IP核库;
第十一确定子模块,用于将确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息,所对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核。
可选的,所述第二信息包括芯片的原理图,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;
所述IP核调用确定模块22包括但不限于以下一种或多种:
第十二确定子模块,用于确定芯片的原理图中第十三标识所在位置和/或第十三标识所在区域和/或与第十三标识距离小于或等于第二十八预设门限的区域,和/或所述位置和/或区域和/或第十三标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十三标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第十四确定子模块,用于确定芯片的原理图中第十四标识所在位置和/或第十四标识所在区域和/或与第十四标识距离小于或等于第二十九预设门限的区域,和/或所述位置和/或区域和/或第十四标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十四标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第十五确定子模块,用于将与第十七预设库中的原理图的第二十一区域相同和/或相似和/或相似度大于或等于第三十预设门限的、所述芯片的原理图中的第二十二区域、和/或第二十二区域所对应的模块和/或单元和/或设计信息,确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十七预设库中不包含所述目标芯片的设计公司设计的原理图;
第十六确定子模块,用于将与第十八预设库中的原理图的第二十三区域相同和/或相似和/或相似度大于或等于第三十一预设门限的、所述芯片的原理图中的第二十四区域、和/或第二十四区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十八预设库中为所述目标芯片的设计公司设计的原理图、和/或所述目标芯片的设计公司的原理图IP核库、和/或所述目标芯片的设计公司的IP核库;
第十七确定子模块,用于根据芯片的原理图与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十七确定子模块包括但不限于以下一种或多种:第一确定单元,用于确定验证中未通过的原理图区域、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第二确定单元,用于确定验证中发现的原理图中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的原理图区域、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第十八确定子模块,用于根据芯片的原理图与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十八确定子模块包括但不限于以下一种或多种:第三确定单元,用于确定验证中未通过的原理图区域、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第四确定单元,用于确定验证中发现的原理图中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的原理图区域、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核。
可选的,所述第二信息包括芯片晶体管级的网表,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;所述晶体管级的网表包括但不限于以下一种或多种:描述为晶体管级别的网表,芯片原理图对应的晶体管级的网表,芯片完成最终设计的门级网表对应的晶体管级的网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的晶体管级的网表,模数混合芯片中由模拟模块原理图对应的晶体管级的网表和/或数字模块完成最终设计的门级网表对应的晶体管级的网表所组成的晶体管级的网表;
所述IP核调用确定模块22包括但不限于以下一种或多种:
第十九确定子模块,用于确定芯片晶体管级的网表中第十五标识所在位置和/或第十五标识所在部分和/或与第十五标识之间的代码长度小于或等于第三十二预设门限的部分和/或与第十五标识之间的代码长度在所述芯片晶体管级的网表中的占比小于或等于第一比例阈值的部分,和/或所述位置和/或部分和/或第十五标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十五标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第二十确定子模块,用于确定芯片晶体管级的网表中第十六标识所在位置和/或第十六标识所在部分和/或与第十六标识之间的代码长度小于或等于第三十三预设门限的部分和/或与第十六标识之间的代码长度在所述芯片晶体管级的网表中的占比小于或等于第二比例阈值的部分,和/或所述位置和/或部分和/或第十六标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十六标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第二十一确定子模块,用于将与第十九预设库中的晶体管级的网表的第十五部分相同和/或相似和/或相似度大于或等于第三十四预设门限的、所述芯片晶体管级的网表中的第十六部分、和/或第十六部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十九预设库中不包含所述目标芯片的设计公司设计的晶体管级的网表;
第二十二确定子模块,用于将与第二十预设库中的晶体管级的网表的第十七部分相同和/或相似和/或相似度大于或等于第三十五预设门限的、所述芯片晶体管级的网表中的第十八部分、和/或第十八部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十预设库中为所述目标芯片的设计公司设计的晶体管级的网表、和/或所述目标芯片的设计公司的晶体管级的网表IP核库、和/或所述目标芯片的设计公司的IP核库;
第二十三确定子模块,用于根据芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十三确定子模块包括但不限于以下一种或多种:第五确定单元,用于确定验证中未通过的晶体管级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第六确定单元,用于确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第二十四确定子模块,用于根据芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十四确定子模块包括但不限于以下一种或多种:第七确定单元,用于确定验证中未通过的晶体管级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第八确定单元,用于确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核。
可选的,所述第二信息包括芯片的门级网表,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;所述芯片的门级网表包括但不限于以下一种或多种:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表;所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表;
所述IP核调用确定模块22包括但不限于以下一种或多种:
第二十五确定子模块,用于确定芯片的门级网表中第十七标识所在位置和/或第十七标识所在部分和/或与第十七标识之间的代码长度小于或等于第三十六预设门限的部分和/或与第十七标识之间的代码长度在所述芯片的门级网表中的占比小于或等于第三比例阈值的部分,和/或所述位置和/或部分和/或第十七标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十七标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第二十六确定子模块,用于确定芯片的门级网表中第十八标识所在位置和/或第十八标识所在部分和/或与第十八标识之间的代码长度小于或等于第三十七预设门限的部分和/或与第十八标识之间的代码长度在所述芯片的门级网表中的占比小于或等于第四比例阈值的部分,和/或所述位置和/或部分和/或第十八标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十八标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第二十七确定子模块,用于将与第二十一预设库中的门级网表的第十九部分相同和/或相似和/或相似度大于或等于第三十八预设门限的、所述芯片的门级网表中的第二十部分、和/或第二十部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十一预设库中不包含所述目标芯片的设计公司设计的门级网表;
第二十八确定子模块,用于将与第二十二预设库中的门级网表的第二十一部分相同和/或相似和/或相似度大于或等于第三十九预设门限的、所述芯片的门级网表中的第二十二部分、和/或第二十二部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十二预设库中为所述目标芯片的设计公司设计的门级网表、和/或所述目标芯片的设计公司的门级网表IP核库、和/或所述目标芯片的设计公司的IP核库;
第二十九确定子模块,用于根据芯片的门级网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十九确定子模块包括但不限于以下一种或多种:第九确定单元,用于确定验证中未通过的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第十确定单元,用于确定验证中发现的门级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的门级网表部分、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第三十确定子模块,用于根据芯片的门级网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第三十确定子模块包括但不限于以下一种或多种:第十一确定单元,用于确定验证中未通过的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第十二确定单元,用于确定验证中发现的门级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的门级网表部分、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第三十一确定子模块,用于根据芯片的门级网表转化为芯片晶体管级的网表后,转化的芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第三十一确定子模块包括但不限于以下一种或多种:第十三确定单元,用于确定验证中未通过的晶体管级网表部分、和/或未通过的晶体管级网表部分所对应的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第十四确定单元,用于确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或对应的晶体管级网表部分所对应的门级网表部分、和/或对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第三十二确定子模块,用于根据芯片的门级网表转化为芯片晶体管级的网表后,转化的芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第三十二确定子模块包括但不限于以下一种或多种:第十五确定单元,用于确定验证中未通过的晶体管级网表部分、和/或未通过的晶体管级网表部分所对应的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第十六确定单元,用于确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或对应的晶体管级网表部分所对应的门级网表部分、和/或对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第三十三确定子模块,用于根据芯片的门级网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、将修改后的门级网表转化为芯片晶体管级的网表、将转化的芯片晶体管级的网表与修改后的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第三十三确定子模块包括但不限于以下一种或多种:第十七确定单元,用于确定验证中未通过的晶体管级网表部分、和/或未通过的晶体管级网表部分所对应的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第十八确定单元,用于确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或对应的晶体管级网表部分所对应的门级网表部分、和/或对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第三十四确定子模块,用于根据芯片的两种门级网表、使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第三十四确定子模块包括但不限于以下一种或多种:第十九确定单元,用于确定验证中未通过的门级网表部分,和/或所述未通过部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第二十确定单元,用于确定验证中发现的不匹配点所对应的门级网表部分,和/或所述部分和/或不匹配点所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第二十一确定单元,用于确定验证中发现的不等价部分,和/或所述不等价部分所对应的门级网表部分、和/或所述不等价部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第二十二确定单元,用于确定验证中发现的两种门级网表中的逻辑和/或功能的差异处,和/或差异处所对应的门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第三十五确定子模块,用于根据芯片的两种门级网表、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第三十五确定子模块包括但不限于以下一种或多种:第二十三确定单元,用于确定验证中未通过的门级网表部分,和/或所述未通过部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第二十四确定单元,用于确定验证中发现的不匹配点所对应的门级网表部分,和/或所述部分和/或不匹配点所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第二十五确定单元,用于确定验证中发现的不等价部分,和/或所述不等价部分所对应的门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第二十六确定单元,用于确定验证中发现的两种门级网表中的逻辑和/或功能的差异处,和/或差异处所对应的门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
其中,开展形式验证时,如果两种门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;其中,对该差异对应的功能和/或逻辑不验证包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
可选的,所述第二信息包括芯片RTL代码,和/或芯片的门级网表;所述芯片的门级网表包括但不限于以下一种或多种:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表;所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表;
所述IP核调用确定模块22包括但不限于以下一种或多种:
第三十六确定子模块,用于确定芯片RTL代码中第十九标识所在位置和/或第十九标识所在部分和/或与第十九标识之间的代码长度小于或等于第四十预设门限的部分和/或与第十九标识之间的代码长度在所述芯片RTL代码中的占比小于或等于第五比例阈值的部分,和/或所述位置和/或部分和/或第十九标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十九标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第三十七确定子模块,用于确定芯片RTL代码中第二十标识所在位置和/或第二十标识所在部分和/或与第二十标识之间的代码长度小于或等于第四十一预设门限的部分和/或与第二十标识之间的代码长度在所述芯片RTL代码中的占比小于或等于第六比例阈值的部分,和/或所述位置和/或部分和/或第二十标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第三十八确定子模块,用于根据芯片RTL代码中、除寄存器传输级描述之外的其他级别描述所在部分确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述除寄存器传输级描述之外的其他级别描述包括但不限于门级描述;其中,所述第三十八确定子模块包括但不限于以下一种或多种:第二十七确定单元,用于确定芯片RTL代码中存在的一种或多种关键词、和/或芯片RTL代码中存在一种或多种关键词的总数量大于或等于第四十二预设门限所对应的关键词、和/或芯片RTL代码中存在一种或多种关键词的总数量占据整个芯片RTL代码的比例大于或等于第四十三预设门限所对应的关键词,将所述关键词所在位置和/或所在部分和/或与所述关键词之间的代码长度小于或等于第四十四预设门限的部分和/或与所述关键词之间的代码长度在所述芯片RTL代码中的占比小于或等于第七比例阈值的部分、和/或所述位置和/或部分和/或所述关键词所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核,其中,所述关键词为代表除寄存器传输级描述之外的其他级别描述的关键词,所述关键词的种类包括但不限于以下一种或多种:表征描述级别的代码、表征描述级别的词汇和/或词组、表征描述级别的脚本、表征描述级别的程序、表征描述级别的网表、其中所述网表包括但不限于门级网表;第二十八确定单元,用于将与所述芯片的门级网表的第二十三部分相同和/或相似和/或相似度大于或等于第四十五预设门限的、所述芯片RTL代码中的第二十四部分、和/或第二十四部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第三十九确定子模块,用于将与第二十三预设库中的RTL代码的第二十五部分相同和/或相似和/或相似度大于或等于第四十六预设门限的、所述芯片RTL代码中的第二十六部分、和/或第二十六部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十三预设库中不包含所述目标芯片的设计公司设计的RTL代码;
第四十确定子模块,用于将与第二十四预设库中的RTL代码的第二十七部分相同和/或相似和/或相似度大于或等于第四十七预设门限的、所述芯片RTL代码中的第二十八部分、和/或第二十八部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十四预设库中为所述目标芯片的设计公司设计的RTL代码、和/或所述目标芯片的设计公司的RTL代码IP核库、和/或所述目标芯片的设计公司的IP核库;
第四十一确定子模块,用于根据芯片RTL代码与芯片的门级网表、使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第四十一确定子模块包括但不限于以下一种或多种:第二十九确定单元,用于确定验证中未通过的RTL代码部分、和/或未通过的门级网表部分,和/或未通过部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第三十确定单元,用于确定验证中发现的不匹配点所对应的RTL代码部分、和/或门级网表部分,和/或所述部分和/或不匹配点所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第三十一确定单元,用于确定验证中发现的不等价部分,和/或所述不等价部分所对应的RTL代码部分、和/或门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第三十二确定单元,用于确定验证中发现的RTL代码中的逻辑和/或功能、与门级网表中的逻辑和/或功能的差异处,和/或差异处所对应的RTL代码部分、和/或门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
第四十二确定子模块,用于根据芯片RTL代码与芯片的门级网表、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第四十二确定子模块包括但不限于以下一种或多种:第三十三确定单元,用于确定验证中未通过的RTL代码部分、和/或未通过的门级网表部分,和/或未通过部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不匹配点所对应的RTL代码部分、和/或门级网表部分,和/或所述部分和/或不匹配点所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第三十四确定单元,用于确定验证中发现的不等价部分,和/或所述不等价部分所对应的RTL代码部分、和/或门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;第三十五确定单元,用于确定验证中发现的RTL代码中的逻辑和/或功能、与门级网表中的逻辑和/或功能的差异处,和/或差异处所对应的RTL代码部分、和/或门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
其中,开展形式验证时,如果RTL代码与门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;其中,对该差异对应的功能和/或逻辑不验证包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
可选的,根据第一信息、确定目标芯片中和/或所述目标芯片的信息中、是否调用IP核和/或是否疑似调用IP核时、所使用的预设门限和/或标识和/或预设库和/或其中的区域和/或部分,与根据第二信息,确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核、所使用的预设门限和/或标识和/或预设库和/或其中的区域和/或部分,相同或者不同;
根据第一信息、确定目标芯片中和/或所述目标芯片的信息中、是否调用IP核和/或是否疑似调用IP核时、所使用的预设门限和/或标识和/或预设库和/或其中的区域和/或部分中,相同类型的预设门限和/或标识和/或预设库和/或其中的区域和/或部分,相同或者不同;
根据第二信息,确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核、所使用的预设门限和/或标识和/或预设库和/或其中的区域和/或部分中,相同类型的预设门限和/或标识和/或预设库和/或其中的区域和/或部分,相同或者不同。
可选的,所述IP核包括但不限于非自研IP核和/或自研IP核;
其中,所述非自研IP核,包括但不限于以下一种或多种:不是所述目标芯片的设计公司所设计的IP核,所述目标芯片的设计公司从其他公司购买的IP核,所述目标芯片的设计公司从非自研IP核库中调用的IP核,知识产权不归属于所述目标芯片的设计公司的IP核;
其中,所述自研IP核,包括但不限于以下一种或多种:所述目标芯片的设计公司所设计的IP核,所述目标芯片的设计公司自主研发的IP核,所述目标芯片的设计公司自有的IP核,所述目标芯片的设计公司自身积累的IP核,知识产权归属于所述目标芯片的设计公司的IP核。
可选的,所述装置还包括:IP核分类模块,用于根据第一信息和/或第二信息和/或所述目标芯片的信息和/或所述目标芯片的设计文件和/或所述目标芯片的授权资料,确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核,是否为非自研IP核、和/或是否为自研IP核;和/或
所述IP核分类模块,用于在根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核的同时,确定所述IP核是否为非自研IP核、和/或是否为自研IP核;
其中,所述IP核分类模块包括:第一分类子模块,用于确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核为非自研IP核;所述第一分类子模块包括但不限于以下一种或多种:
第一分类单元,用于确定通过芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的空白区域和/或空白区域所对应的内容确定的IP核为非自研IP核;
第二分类单元,用于确定通过芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图与对应的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图比对时的不一致处、和/或不一致处所对应的内容确定的IP核为非自研IP核;
第三分类单元,用于确定通过所述目标芯片的第三信息中的第二十一标识确定的IP核为非自研IP核;所述第二十一标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
第四分类单元,用于确定通过与第二十五预设库中的信息的第二十五区域相同和/或相似和/或相似度大于或等于第四十八预设门限的、所述目标芯片的第三信息中的第二十六区域,和/或第二十六区域所对应的内容确定的IP核为非自研IP核;所述第二十五预设库中不包含所述目标芯片的设计公司设计的信息;
第五分类单元,用于确定通过与第二十六预设库中的信息的第二十九部分相同和/或相似和/或相似度大于或等于第四十九预设门限的、所述目标芯片的第三信息中的第三十部分,和/或第三十部分所对应的内容确定的IP核为非自研IP核;所述第二十六预设库中不包含所述目标芯片的设计公司设计的信息;
第六分类单元,用于确定通过确定为非自研IP核的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息,将其所对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为的IP核,为非自研IP核;
第七分类单元,用于确定根据一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告所确定的IP核为非自研IP核;
第八分类单元,用于确定根据一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告所确定的IP核为非自研IP核;
第九分类单元,用于确定根据芯片RTL代码中、除寄存器传输级描述之外的其他级别描述所在部分所确定的IP核为非自研IP核;
第十分类单元,用于针对所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核,若确定该IP核不是所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的自研IP核,则确定该IP核为所述目标芯片中和/或所述目标芯片的信息调用和/或疑似调用的非自研IP核;
其中,所述IP核分类模块包括:第二分类子模块,用于确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核为自研IP核,所述第二分类子模块包括但不限于以下一种或多种:
第十一分类单元,用于确定通过所述目标芯片的第三信息中的第二十二标识确定的IP核为自研IP核;所述第二十二标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
第十二分类单元,用于确定通过与第二十七预设库中的信息的第二十七区域相同和/或相似和/或相似度大于或等于第五十预设门限的、所述目标芯片的第三信息中的第二十八区域,和/或第二十八区域所对应的内容确定的IP核为自研IP核;所述第二十七预设库中为所述目标芯片的设计公司设计的信息、和/或所述目标芯片的设计公司的信息IP核库、和/或所述目标芯片的设计公司的IP核库;
第十三分类单元,用于确定通过与第二十八预设库中的信息的第三十一部分相同和/或相似和/或相似度大于或等于第五十一预设门限的、所述目标芯片的第三信息中的第三十二部分,和/或第三十二部分所对应的内容确定的IP核为自研IP核;所述第二十八预设库中为所述目标芯片的设计公司设计的信息、和/或所述目标芯片的设计公司的信息IP核库、和/或所述目标芯片的设计公司的IP核库;
第十四分类单元,用于确定通过确定为自研IP核的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息,将其所对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为的IP核,为自研IP核;
第十五分类单元,用于针对所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核,若确定该IP核不是所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的非自研IP核,则确定该IP核为所述目标芯片中和/或所述目标芯片的信息调用和/或疑似调用的自研IP核;
其中,所述目标芯片的第三信息包括但不限于以下一种或多种:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,芯片的原理图,芯片晶体管级的网表,芯片的门级网表,芯片RTL代码,第一信息中的一种或者多种信息的所有或者部分信息,第二信息中的一种或者多种信息的所有或者部分信息;
其中,所述第二十五预设库和/或第二十六预设库和/或第二十七预设库和/或第二十八预设库和/或所述目标芯片的设计公司设计的信息、和/或所述目标芯片的设计公司的信息IP核库中的信息、的信息种类,包括但不限于以下一种或多种:版图和/或布图和/或布局布线和/或布局布线图,原理图,晶体管级的网表,门级网表,RTL代码。
可选的,所述装置还包括:判定模块,用于判定芯片的自主度和/或可控度;所述判定模块包括但不限于以下一种或多种:
第一需求确定单元,用于确定为判定芯片的自主度和/或可控度所需要的一种或多种第四信息,所述第四信息包括但不限于以下一种或多种:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,芯片的原理图,芯片晶体管级的网表,芯片的门级网表,芯片RTL代码,第一信息中的一种或者多种信息的所有或者部分信息,第二信息中的一种或者多种信息的所有或者部分信息,芯片的除第一信息、第二信息之外的其他信息;
第一分值分配单元,用于针对所述需要的一种或多种第四信息中的每一种第四信息,分配该种第四信息对应的分值;其中,所述第一分值分配单元包括但不限于:第一分配子单元,用于根据每种第四信息实现和/或设计的难易程度和/或关键程度分配分值;
第一分值确定单元,用于针对每种所述需要的第四信息,如果获取的该种第四信息中未包含所述要判定芯片的所有该种信息、和/或未包含所述要判定芯片的所有功能和/或所有逻辑和/或所有模块和/或所有单元,和/或如果获取的该种第四信息中调用了非自研IP核和/或疑似调用了非自研IP核,则确定所述芯片获得的分值为:该种第四信息对应的分值,减去获取的该种第四信息中所缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元所对应的分值,减去获取的该种第四信息中调用和/或疑似调用的非自研IP核所对应的分值之后,所剩下的分值;和/或,确定所述芯片获得的分值为:该种第四信息对应的分值,减去获取的该种第四信息中所缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元所对应的分值的第一比例的分值,减去获取的该种第四信息中调用和/或疑似调用的非自研IP核所对应的分值的第二比例的分值之后,所剩下的分值;其中,若所述获取的该种第四信息中所缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元,与所述获取的该种第四信息中调用和/或疑似调用的非自研IP核有重复和/或交叠的内容,则针对重复和/或交叠的内容,只减一次分、和/或不重复减分;其中,所述第一分值确定单元包括:第一比例确定子单元,所述第一比例确定子单元用于确定第一比例和/或第二比例,所述第一比例和/或第二比例需满足的条件包括但不限于以下一种或多种:比例小于或等于1,比例大于或等于0,所述缺少的要判定芯片的信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元为国产时的比例小于或等于为非国产时的比例,所述调用和/或疑似调用的非自研IP核为国产时的比例小于或等于所述非自研IP核为非国产时的比例;
第二分值确定单元,用于针对每种所述需要的第四信息,如果获取的该种第四信息包含了所述要判定芯片的所有该种信息和/或包含了所述要判定芯片的所有功能和/或所有逻辑和/或所有模块和/或所有单元,且获取的该种第四信息中未调用非自研IP核且未疑似调用非自研IP核,则确定所述芯片获得的分值为:该种第四信息对应的分值;
第三分值确定单元,用于针对每种所述需要的第四信息,若未获取到该种第四信息、和/或无法确认所述获取的该种第四信息为所述芯片的第四信息,则确定所述芯片在该种第四信息下不获得分值;
第一判定单元,用于将所述芯片针对所述需要的一种或多种第四信息中的每种第四信息所获得的实际分值求和,作为芯片的总得分,通过总得分对芯片的自主度和/或可控度进行判定;
其中,获取的第四信息中未包含所述要判定芯片的所有该种信息和/或未包含所述要判定芯片的所有功能和/或所有逻辑和/或所有模块和/或所有单元的一种情况为,该种第四信息完成设计后的其他信息中调用了非自研IP核、而该种第四信息中暂未针对所述IP核对应的功能和/或逻辑和/或模块和/或单元进行设计;
其中,针对所述需要的一种或多种第四信息,分配各种第四信息对应的分值时,需要确保一个既定功能的芯片在不同方案下、在相同的自主度和/或可控度所对应的得分均相同;所述确保在相同的自主度和/或可控度所对应的得分均相同的前提包括但不限于:一个既定功能的芯片在不同方案下、所述需要的各种第四信息所对应的分值之和均相同;
第二需求确定单元,用于确定为判定芯片的自主度和/或可控度所需要的各种功能和/或逻辑和/或模块和/或单元;
第二分值分配单元,用于针对所述需要的各种功能和/或逻辑和/或模块和/或单元中的每一种,分配该种功能和/或逻辑和/或模块和/或单元对应的分值;其中,所述第二分值分配单元包括但不限于:第二分配子单元,用于根据每种功能和/或逻辑和/或模块和/或单元、实现和/或设计的难易程度和/或关键程度分配分值;
第四分值确定单元,用于针对每种所述需要的功能和/或逻辑和/或模块和/或单元,如果所述要判定芯片的该种功能和/或逻辑和/或模块和/或单元中、没有调用非自研IP核且没有疑似调用非自研IP核,确定所述芯片获得该种功能和/或逻辑和/或模块和/或单元对应的分值;
第五分值确定单元,用于针对每种所述需要的功能和/或逻辑和/或模块和/或单元,如果所述要判定芯片的该种功能和/或逻辑和/或模块和/或单元中、调用了非自研IP核和/或疑似调用了非自研IP核,确定所述芯片不获得该种功能和/或逻辑和/或模块和/或单元对应的分值、和/或确定所述芯片获得该种功能和/或逻辑和/或模块和/或单元对应的分值的第三比例的分值;其中,所述第三比例需要满足的条件包括但不限于以下一种或多种:比例小于或等于1,比例大于或等于0,所述调用和/或疑似调用的非自研IP核为国产时的比例大于或等于所述非自研IP核为非国产时的比例;
第六分值确定单元,用于针对每种所述需要的功能和/或逻辑和/或模块和/或单元,如果所述要判定芯片缺少该功能和/或逻辑和/或模块和/或单元,则确定所述芯片在该种功能和/或逻辑和/或模块和/或单元下不获得分值;
第二判定单元,用于将所述芯片针对所述需要的各种功能和/或逻辑和/或模块和/或单元中的每种功能和/或逻辑和/或模块和/或单元所获得的实际分值求和,作为芯片的总得分,通过总得分对芯片的自主度和/或可控度进行判定;
其中,针对所述需要的各种功能和/或逻辑和/或模块和/或单元,分配各种功能和/或逻辑和/或模块和/或单元对应的分值时,需要确保一个既定功能的芯片在不同方案下、在相同的自主度和/或可控度所对应的得分均相同;所述确保在相同的自主度和/或可控度所对应的得分均相同的前提包括但不限于:一个既定功能的芯片在不同方案下、所述需要的各种功能和/或逻辑和/或模块和/或单元对应的分值之和均相同。
可选的,所述第一分值确定单元,还用于计算所述获取的第四信息中所缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元所对应的分值,和/或所述获取的第四信息中调用和/或疑似调用的非自研IP核对应的分值,所述第一分值确定单元还包括但不限于以下一种或多种:
第一分值分配子单元,用于针对所述需要的该种第四信息,针对其中的各种功能和/或逻辑和/或模块和/或单元,分配各种功能和/或逻辑和/或模块和/或单元所对应的分值,且各种功能和/或逻辑和/或模块和/或单元所对应分值之和为该种第四信息对应的分值;其中,所述第一分值分配子单元用于但不限于:根据每种功能和/或逻辑和/或模块和/或单元、实现和/或设计的难易程度和/或关键程度分配分值;
第一分值确定子单元,用于在所述需要的该种第四信息中的各种功能和/或逻辑和/或模块和/或单元中,找出所述获取的第四信息中所缺少的要判定芯片的信息部分和/或功能和/或逻辑和/或模块和/或单元,并确定这部分功能和/或逻辑和/或模块和/或单元所分配的分值或分值之和即为获取的第四信息中所缺少的要判定芯片的信息部分、和/或所缺少的功能和/或逻辑和/或模块和/或单元所对应的分值;
第二分值确定子单元,用于在所述需要的该种第四信息中的各种功能和/或逻辑和/或模块和/或单元中,找出所述获取的第四信息中调用和/或疑似调用的非自研IP核所对应的功能和/或逻辑和/或模块和/或单元,并确定这部分功能和/或逻辑和/或模块和/或单元所分配的分值或分值之和即为获取的第四信息中调用和/或疑似调用的非自研IP核所对应的分值。
可选的,所述装置还包括确认模块,用于确认获取的信息为所述目标芯片的信息;所述信息包括但不限于以下一种或多种:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,芯片的原理图,芯片晶体管级的网表,芯片的门级网表,芯片RTL代码,第一信息中的一种或者多种信息的所有或者部分信息,第二信息中的一种或者多种信息的所有或者部分信息;芯片的除第一信息、第二信息之外的其他信息;所述确认模块包括但不限于以下一种或多种:
第一确认子模块,用于确认获取的信息,是否已经声明或者鉴定为所述目标芯片的信息;
第二确认子模块,用于将获取的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图确定为所述目标芯片的信息;
第三确认子模块,用于对获取的信息进行比对和/或验证确认是否为所述目标芯片的信息,所述第三确认子模块包括但不限于以下一种或多种:第一确认单元,用于将获取的信息与已经声明或者鉴定为所述目标芯片的信息、进行一次或者多次的比对和/或验证,如果比对和/或验证通过,则确认所述获取的信息为所述目标芯片的信息;第二确认单元,用于将获取的信息与芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图、进行一次或者多次的比对和/或验证,如果比对和/或验证通过,则确认所述获取的信息为所述目标芯片的信息;
第四确认子模块,用于将获取的信息,与经过比对和/或验证确认为所述目标芯片的信息,进行一次或者多次的比对和/或验证,若比对和/或验证通过,则所述获取的信息为所述目标芯片的信息。
可选的,所述第一确认单元和/或所述第二确认单元和/或所述第四确认子模块包括但不限于以下一种或多种:
第一比对子单元,用于将芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、与芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图进行比对;
第二比对子单元,用于将芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、与芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元后,对余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、与余下的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图进行比对;
第一验证子单元,用于将芯片的原理图、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
第二验证子单元,用于将芯片的原理图、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片的原理图、与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
第三验证子单元,用于将芯片晶体管级的网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
第四验证子单元,用于将芯片晶体管级的网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片晶体管级的网表、与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
第五验证子单元,用于将芯片的门级网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
第六验证子单元,用于将芯片的门级网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片的门级网表、与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
第七验证子单元,用于将芯片的门级网表转化为芯片晶体管级的网表后,对转化的芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
第八验证子单元,用于将芯片的门级网表转化为芯片晶体管级的网表后,将转化的芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片晶体管级的网表、与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
第九验证子单元,用于将芯片的门级网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,将余下的门级网表转化为晶体管级的网表,对转化的晶体管级的网表与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图部分进行LVS验证;
第十验证子单元,用于将芯片的一种门级网表、与芯片的另一种门级网表进行形式验证;
第十一验证子单元,用于将芯片的一种门级网表、与芯片的另一种门级网表,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片的一种门级网表、与余下的芯片的另一种门级网表进行形式验证;
第十二验证子单元,用于将芯片RTL代码、与芯片的门级网表进行形式验证;
第十三验证子单元,用于将芯片RTL代码、与芯片的门级网表,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片RTL代码、与余下的芯片的门级网表进行形式验证;
其中,开展形式验证时,如果验证的两种门级网表之间、和/或验证的RTL代码与门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;其中,对该差异对应的功能和/或逻辑不验证包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
可选的,所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的区域,包括但不限于所有层和/或部分层和/或一层的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,对于其中一层,所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图包括但不限于整个区域和/或多个局部区域和/或一个局部区域的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;其中,不同层的整个区域和/或多个局部区域和/或一个局部区域的位置和/或范围相同或者不同;和/或,
所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图、和/或芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的区域,包括但不限于所有层和/或部分层和/或一层的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,对于其中一层,所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图包括但不限于整个区域和/或多个局部区域和/或一个局部区域的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图;其中,不同层的整个区域和/或多个局部区域和/或一个局部区域的位置和/或范围相同或者不同;和/或,
所述预设库中的版图和/或布图和/或布局布线和/或布局布线图、和/或版图和/或布图和/或布局布线和/或布局布线图中的区域,包括但不限于所有层和/或部分层和/或一层的版图和/或布图和/或布局布线和/或布局布线图,对于其中一层,所述版图和/或布图和/或布局布线和/或布局布线图包括但不限于整个区域和/或多个局部区域和/或一个局部区域的版图和/或布图和/或布局布线和/或布局布线图;其中,不同层的整个区域和/或多个局部区域和/或一个局部区域的位置和/或范围相同或者不同;和/或,
所述芯片的原理图、和/或芯片的原理图中的区域,包括但不限于整个区域和/或多个局部区域和/或一个局部区域的芯片原理图;和/或,
所述预设库中的原理图、和/或原理图中的区域,包括但不限于整个区域和/或多个局部区域和/或一个局部区域的原理图;和/或,
所述芯片晶体管级的网表、和/或晶体管级的网表中的部分,包括但不限于:整个晶体管级的网表,部分晶体管级的网表;和/或,
所述预设库中的晶体管级的网表、和/或晶体管级的网表中的部分,包括但不限于:整个晶体管级的网表,部分晶体管级的网表;和/或,
所述芯片的门级网表、和/或门级网表中的部分,包括但不限于:整个门级网表,部分门级网表;和/或,
所述预设库中的门级网表、和/或门级网表中的部分,包括但不限于:整个门级网表,部分门级网表;和/或,
所述芯片RTL代码、和/或RTL代码中的部分,包括但不限于以下一种或多种:整个RTL代码,部分RTL代码,所述目标芯片的设计公司声称的RTL代码,所述目标芯片的设计公司在RTL设计阶段设计的代码;和/或,
所述预设库中的RTL代码、和/或RTL代码中的部分,包括但不限于:整个RTL代码,部分RTL代码;和/或,
所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图包括但不限于以下一种或多种:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的注释和/或说明;和/或,
所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图包括但不限于以下一种或多种:芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的注释和/或说明;和/或,
所述芯片的原理图包括但不限于以下一种或多种:芯片的原理图,芯片的原理图中的注释和/或说明;和/或,
所述芯片晶体管级的网表包括但不限于以下一种或多种:芯片晶体管级的网表,芯片晶体管级的网表中的注释和/或说明;和/或,
所述芯片的门级网表包括但不限于以下一种或多种:芯片的门级网表,芯片的门级网表中的注释和/或说明;和/或,
所述芯片RTL代码包括但不限于以下一种或多种:芯片RTL代码,芯片RTL代码中的注释和/或说明;和/或,
所述标识包括以下一种或多种:文本、图形、商标、名称、标志、标记、水印。
请参阅图3,图3是本发明实施例三提供的一种电子设备的结构示意图,该电子设备30包括处理器31、存储器32及存储在所述存储器32上并可在所述处理器31上运行的程序;所述处理器31执行上述任一种IP核调用的检测方法中的步骤,详细请参阅上述,此处不再赘述。
本发明实施例四提供一种可读存储介质,其上存储有程序,该程序被处理器执行时实现上述实施例中任一种IP核调用的检测方法中的步骤。详细请参阅以上对应实施例中方法步骤的说明。
上述可读存储介质,包括计算机可读存储介质。计算机可读存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (25)
1.一种IP核调用的检测方法,其特征在于,包括:
根据第一信息,确定目标芯片中和/或所述目标芯片的信息中,是否调用IP核和/或是否疑似调用IP核;和/或,
根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核;
其中,所述目标芯片的信息为一种信息或多种信息。
2.根据权利要求1所述的方法,其特征在于,所述目标芯片为整个或者部分芯片,所述芯片的种类包括但不限于以下一种或多种:已完成封装的芯片、未封装的裸片、裸片中的模块、裸片中的单元。
3.根据权利要求1所述的方法,其特征在于,所述第一信息与所述第二信息相同或者不同。
4.根据权利要求1所述的方法,其特征在于,所述确定目标芯片中和/或所述目标芯片的信息中是否调用IP核和/或是否疑似调用IP核,与所述确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核,分为两步进行或者合为一步进行;所述确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核亦是所述确定目标芯片中和/或所述目标芯片的信息中是否调用IP核和/或是否疑似调用IP核的一种方法。
5.根据权利要求1所述的方法,其特征在于,所述第一信息包括芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,和/或芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图;
所述根据第一信息,确定目标芯片中和/或所述目标芯片的信息中,是否调用IP核和/或是否疑似调用IP核,包括但不限于以下一种或多种:
芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中,若其中有空白区域和/或空白区域面积大于或等于第一预设门限和/或空白区域占据比例大于或等于第二预设门限和/或空白区域为规整的几何图形,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述空白区域占据比例是指空白区域占据所述设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的比例,所述规整的几何图形包括但不限于以下一种或多种:正方形、长方形、菱形、梯形、平行四边形、圆形、椭圆形、三角形、多边形、弓形、弧形;
将芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图与对应的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图比对,若比对不一致,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核,所述比对不一致的情况包括但不限于以下一种或多种:所有层和/或部分层和/或一层比对不一致;所有层和/或部分层和/或一层中,整个区域和/或多个局部区域和/或一个局部区域比对不一致;
若所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中,和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中存在第一标识,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述第一标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
若所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中,和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中存在第二标识,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述第二标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
将所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,与第一预设库中的版图和/或布图和/或布局布线和/或布局布线图进行比对,若所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的第一区域,与所述第一预设库中的版图和/或布图和/或布局布线和/或布局布线图的第二区域相同和/或相似和/或相似度大于或等于第三预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第一预设库中不包含所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图;
将所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,与第二预设库中的版图和/或布图和/或布局布线和/或布局布线图进行比对,若所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的第三区域,与所述第二预设库中的版图和/或布图和/或布局布线和/或布局布线图的第四区域相同和/或相似和/或相似度大于或等于第四预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第二预设库中为所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图、和/或所述目标芯片的设计公司的版图和/或布图和/或布局布线和/或布局布线图IP核库、和/或所述目标芯片的设计公司的IP核库;
将所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,与第三预设库中的版图和/或布图和/或布局布线和/或布局布线图进行比对,若所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的第五区域,与所述第三预设库中的版图和/或布图和/或布局布线和/或布局布线图的第六区域相同和/或相似和/或相似度大于或等于第五预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第三预设库中不包含所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图;
将所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,与第四预设库中的版图和/或布图和/或布局布线和/或布局布线图进行比对,若所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的第七区域,与所述第四预设库中的版图和/或布图和/或布局布线和/或布局布线图的第八区域相同和/或相似和/或相似度大于或等于第六预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第四预设库中为所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图、和/或所述目标芯片的设计公司的版图和/或布图和/或布局布线和/或布局布线图IP核库、和/或所述目标芯片的设计公司的IP核库。
6.根据权利要求1所述的方法,其特征在于,所述第一信息包括芯片的原理图,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;
所述根据第一信息,确定目标芯片中和/或所述目标芯片的信息中,是否调用IP核和/或是否疑似调用IP核,包括但不限于以下一种或多种:
若所述芯片的原理图中存在第三标识,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述第三标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
若所述芯片的原理图中存在第四标识,则确定所述目标芯片中和/或所述目标芯片的信息中调用了IP核和/或疑似调用了IP核;所述第四标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
将所述芯片的原理图与第五预设库中的原理图进行比对,若所述芯片原理图中的第九区域与所述第五预设库中的原理图的第十区域相同和/或相似和/或相似度大于或等于第七预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第五预设库中不包含所述目标芯片的设计公司设计的原理图;
将所述芯片的原理图与第六预设库中的原理图进行比对,若所述芯片原理图中的第十一区域与所述第六预设库中的原理图的第十二区域相同和/或相似和/或相似度大于或等于第八预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第六预设库中为所述目标芯片的设计公司设计的原理图、和/或所述目标芯片的设计公司的原理图IP核库、和/或所述目标芯片的设计公司的IP核库;
针对所述芯片的原理图与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
针对所述芯片的原理图与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
7.根据权利要求1所述的方法,其特征在于,所述第一信息包括芯片晶体管级的网表,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;所述晶体管级的网表包括但不限于以下一种或多种:描述为晶体管级别的网表,芯片原理图对应的晶体管级的网表,芯片完成最终设计的门级网表对应的晶体管级的网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的晶体管级的网表,模数混合芯片中由模拟模块原理图对应的晶体管级的网表和/或数字模块完成最终设计的门级网表对应的晶体管级的网表所组成的晶体管级的网表;
所述根据第一信息,确定目标芯片中和/或所述目标芯片的信息中,是否调用IP核和/或是否疑似调用IP核,包括但不限于以下一种或多种:
若所述芯片晶体管级的网表中存在第五标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第五标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
若所述芯片晶体管级的网表中存在第六标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第六标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
将所述芯片晶体管级的网表与第七预设库中的晶体管级的网表进行比对,若所述芯片晶体管级的网表中的第一部分与所述第七预设库中的晶体管级的网表中的第二部分相同和/或相似和/或相似度大于或等于第九预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第七预设库中不包含所述目标芯片的设计公司设计的晶体管级的网表;
将所述芯片晶体管级的网表与第八预设库中的晶体管级的网表进行比对,若所述芯片晶体管级的网表中的第三部分与所述第八预设库中的晶体管级的网表中的第四部分相同和/或相似和/或相似度大于或等于第十预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第八预设库中为所述目标芯片的设计公司设计的晶体管级的网表、和/或所述目标芯片的设计公司的晶体管级的网表IP核库、和/或所述目标芯片的设计公司的IP核库;
针对所述芯片晶体管级的网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
针对所述芯片晶体管级的网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核。
8.根据权利要求1所述的方法,其特征在于,所述第一信息包括芯片的门级网表,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;所述芯片的门级网表包括但不限于以下一种或多种:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片寄存器传输级RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表;所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表;
所述根据第一信息,确定目标芯片中和/或所述目标芯片的信息中,是否调用IP核和/或是否疑似调用IP核,包括但不限于以下一种或多种:
若所述芯片的门级网表中存在第七标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第七标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
若所述芯片的门级网表中存在第八标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第八标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
将所述芯片的门级网表与第九预设库中的门级网表进行比对,若所述芯片的门级网表中的第五部分与所述第九预设库中的门级网表的第六部分相同和/或相似和/或相似度大于或等于第十一预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第九预设库中不包含所述目标芯片的设计公司设计的门级网表;
将所述芯片的门级网表与第十预设库中的门级网表进行比对,若所述芯片的门级网表中的第七部分与所述第十预设库中的门级网表的第八部分相同和/或相似和/或相似度大于或等于第十二预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第十预设库中为所述目标芯片的设计公司设计的门级网表、和/或所述目标芯片的设计公司的门级网表IP核库、和/或所述目标芯片的设计公司的IP核库;
针对所述芯片的门级网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
针对所述芯片的门级网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
将芯片的门级网表转化为芯片晶体管级的网表后,针对转化的芯片晶体管级的网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
将芯片的门级网表转化为芯片晶体管级的网表后,针对转化的芯片晶体管级的网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,修改其中一个或者部分数量或者所有的模块和/或单元的名称、并在修改之后使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
针对芯片的门级网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、修改其中一个或者部分数量或者所有的模块和/或单元的名称,再将修改后的门级网表转化为芯片晶体管级的网表,针对转化的芯片晶体管级的网表与修改后的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证,若其中一次或者多次的LVS验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
针对芯片的两种门级网表,使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证,若其中一次或者多次的形式验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
针对芯片的两种门级网表,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证,若其中一次或者多次的形式验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
其中,开展形式验证时,如果两种门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;其中,对该差异对应的功能和/或逻辑不验证的方法包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
9.根据权利要求1所述的方法,其特征在于,所述第一信息包括芯片RTL代码,和/或芯片的门级网表;所述芯片的门级网表包括但不限于以下一种或多种:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表;所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表;
所述根据第一信息,确定目标芯片中和/或所述目标芯片的信息中,是否调用IP核和/或是否疑似调用IP核,包括但不限于以下一种或多种:
若所述芯片RTL代码中存在第九标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第九标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
若所述芯片RTL代码中存在第十标识,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第十标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
若所述芯片RTL代码中存在除寄存器传输级描述之外的其他级别描述,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述除寄存器传输级描述之外的其他级别描述包括但不限于门级描述;其中,检查所述芯片RTL代码中是否存在除寄存器传输级描述之外的其他级别描述的方法,包括但不限于以下一种或多种:对芯片RTL代码进行关键词检索;对芯片RTL代码与芯片的门级网表进行比对,若所述芯片RTL代码中的第九部分与所述芯片的门级网表的第十部分相同和/或相似和/或相似度大于或等于第十三预设门限,则确定所述芯片RTL代码中存在除寄存器传输级描述之外的其他级别描述;其中,所述对芯片RTL代码进行关键词检索的方法包括但不限于以下一种或多种:使用代表除寄存器传输级描述之外的其他级别描述的一种或多种关键词对RTL代码进行检索,若发现RTL代码中存在其中一种或多种关键词和/或RTL代码中存在其中一种或多种关键词的总数量大于或等于第十四预设门限和/或RTL代码中存在其中一种或多种关键词的总数量占据整个RTL代码词总量的比例大于或等于第十五预设门限,则确定所述芯片RTL代码中存在除寄存器传输级描述之外的其他级别描述;使用代表寄存器传输级描述的一种或多种关键词对RTL代码进行检索,若发现其中各种关键词在RTL代码中均不存在和/或其中一种或多种关键词在RTL代码中不存在,则确定所述芯片RTL代码中存在除寄存器传输级描述之外的其他级别描述;所述关键词的种类包括但不限于以下一种或多种:表征描述级别的代码、表征描述级别的词汇和/或词组、表征描述级别的脚本、表征描述级别的程序、表征描述级别的RTL代码、表征描述级别的网表,其中所述网表包括但不限于门级网表;
将所述芯片RTL代码与第十一预设库中的RTL代码进行比对,若所述芯片RTL代码中的第十一部分与所述第十一预设库中的RTL代码的第十二部分相同和/或相似和/或相似度大于或等于第十六预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第十一预设库中不包含所述目标芯片的设计公司设计的RTL代码;
将所述芯片RTL代码与第十二预设库中的RTL代码进行比对,若所述芯片RTL代码中的第十三部分与所述第十二预设库中的RTL代码的第十四部分相同和/或相似和/或相似度大于或等于第十七预设门限,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;所述第十二预设库中为所述目标芯片的设计公司设计的RTL代码、和/或所述目标芯片的设计公司的RTL代码IP核库、和/或所述目标芯片的设计公司的IP核库;
针对所述芯片RTL代码与所述芯片的门级网表,使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证,若其中一次或者多次的形式验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
针对所述芯片RTL代码与所述芯片的门级网表,修改其中一个或者部分数量或者所有的模块和/或单元的名称,并在修改后使用一种或者多种的形式验证软件和/或工具和/或环境中进行一次或者多次的形式验证,若任何一次或者多次的形式验证不通过,则确定所述目标芯片和/或所述目标芯片的信息调用了IP核和/或疑似调用了IP核;
其中,开展形式验证时,如果RTL代码与门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;其中,对该差异对应的功能和/或逻辑不验证的方法包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
10.根据权利要求1所述的方法,其特征在于,所述第二信息包括芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,和/或芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图;
所述根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核,包括但不限于以下一种或多种:
确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的空白区域、和/或面积大于或等于第十八预设门限的空白区域、和/或占据比例大于或等于第十九预设门限的空白区域、和/或规整几何图形的空白区域,将所述空白区域,和/或所述空白区域所对应的设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、和/或所述空白区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述占据比例是指所述空白区域占据所述设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的比例,所述规整的几何图形包括但不限于以下一种或多种:正方形、长方形、菱形、梯形、平行四边形、圆形、椭圆形、三角形、多边形、弓形、弧形;所述空白区域包括但不限于一个或多个区域;
确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图与对应的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图比对时的不一致处,将所述不一致处、和/或不一致处所对应的设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、和/或不一致处所对应的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图、和/或不一致处所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;其中所述不一致处包括但不限于以下一种或多种情况:所有层和/或部分层和/或一层比对不一致处;所有层和/或部分层和/或一层中,整个区域和/或多个局部区域和/或一个局部区域比对不一致处;所述不一致处包括但不限于一处或者多处的版图和/或布图和/或布局布线和/或布局布线图;
确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十一标识所在位置和/或第十一标识所在区域和/或与第十一标识距离小于或等于第二十预设门限的区域,和/或所述位置和/或区域和/或第十一标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十一标识所在位置和/或第十一标识所在区域和/或与第十一标识距离小于或等于第二十一预设门限的区域,和/或所述位置和/或区域和/或第十一标识所对应的模块和/或单元和/或设计信息后,将一层或多层的所述位置和/或区域、和/或所述一层或多层的所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;其中所述第二十一预设门限与所述第二十预设门限相同或者不同;
其中,所述第十一标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十二标识所在位置和/或第十二标识所在区域和/或与第十二标识距离小于或等于第二十二预设门限的区域,和/或所述位置和/或区域和/或第十二标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
确定芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中、和/或所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中第十二标识所在位置和/或第十二标识所在区域和/或与第十二标识距离小于或等于第二十三预设门限的区域,和/或所述位置和/或区域和/或第十二标识所对应的模块和/或单元和/或设计信息后,将一层或多层的所述位置和/或区域、和/或所述一层或多层的所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;其中所述第二十三预设门限与所述第二十二预设门限相同或者不同;
其中,所述第十二标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
将与第十三预设库中的版图和/或布图和/或布局布线和/或布局布线图的第十三区域相同和/或相似和/或相似度大于或等于第二十四预设门限的、所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的第十四区域、和/或第十四区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十三预设库中不包含所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图;
将与第十四预设库中的版图和/或布图和/或布局布线和/或布局布线图的第十五区域相同和/或相似和/或相似度大于或等于第二十五预设门限的、所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的第十六区域、和/或第十六区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十四预设库中为所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图、和/或所述目标芯片的设计公司的版图和/或布图和/或布局布线和/或布局布线图IP核库、和/或所述目标芯片的设计公司的IP核库;
将与第十五预设库中的版图和/或布图和/或布局布线和/或布局布线图的第十七区域相同和/或相似和/或相似度大于或等于第二十六预设门限的、所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的第十八区域、和/或第十八区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十五预设库中不包含所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图;
将与第十六预设库中的版图和/或布图和/或布局布线和/或布局布线图的第十九区域相同和/或相似和/或相似度大于或等于第二十七预设门限的、所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的第二十区域、和/或第二十区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十六预设库中为所述目标芯片的设计公司设计的版图和/或布图和/或布局布线和/或布局布线图、和/或所述目标芯片的设计公司的版图和/或布图和/或布局布线和/或布局布线图IP核库、和/或所述目标芯片的设计公司的IP核库;
将确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息,所对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核。
11.根据权利要求1所述的方法,其特征在于,所述第二信息包括芯片的原理图,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;
所述根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核,包括但不限于以下一种或多种:
确定芯片的原理图中第十三标识所在位置和/或第十三标识所在区域和/或与第十三标识距离小于或等于第二十八预设门限的区域,和/或所述位置和/或区域和/或第十三标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十三标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
确定芯片的原理图中第十四标识所在位置和/或第十四标识所在区域和/或与第十四标识距离小于或等于第二十九预设门限的区域,和/或所述位置和/或区域和/或第十四标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十四标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
将与第十七预设库中的原理图的第二十一区域相同和/或相似和/或相似度大于或等于第三十预设门限的、所述芯片的原理图中的第二十二区域、和/或第二十二区域所对应的模块和/或单元和/或设计信息,确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十七预设库中不包含所述目标芯片的设计公司设计的原理图;
将与第十八预设库中的原理图的第二十三区域相同和/或相似和/或相似度大于或等于第三十一预设门限的、所述芯片的原理图中的第二十四区域、和/或第二十四区域所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十八预设库中为所述目标芯片的设计公司设计的原理图、和/或所述目标芯片的设计公司的原理图IP核库、和/或所述目标芯片的设计公司的IP核库;
根据芯片的原理图与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的原理图区域、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的原理图中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的原理图区域、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
根据芯片的原理图与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的原理图区域、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的原理图中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的原理图区域、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核。
12.根据权利要求1所述的方法,其特征在于,所述第二信息包括芯片晶体管级的网表,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;所述晶体管级的网表包括但不限于以下一种或多种:描述为晶体管级别的网表,芯片原理图对应的晶体管级的网表,芯片完成最终设计的门级网表对应的晶体管级的网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的晶体管级的网表,模数混合芯片中由模拟模块原理图对应的晶体管级的网表和/或数字模块完成最终设计的门级网表对应的晶体管级的网表所组成的晶体管级的网表;
所述根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核,包括但不限于以下一种或多种:
确定芯片晶体管级的网表中第十五标识所在位置和/或第十五标识所在部分和/或与第十五标识之间的代码长度小于或等于第三十二预设门限的部分和/或与第十五标识之间的代码长度在所述芯片晶体管级的网表中的占比小于或等于第一比例阈值的部分,和/或所述位置和/或部分和/或第十五标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十五标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
确定芯片晶体管级的网表中第十六标识所在位置和/或第十六标识所在部分和/或与第十六标识之间的代码长度小于或等于第三十三预设门限的部分和/或与第十六标识之间的代码长度在所述芯片晶体管级的网表中的占比小于或等于第二比例阈值的部分,和/或所述位置和/或部分和/或第十六标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十六标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
将与第十九预设库中的晶体管级的网表的第十五部分相同和/或相似和/或相似度大于或等于第三十四预设门限的、所述芯片晶体管级的网表中的第十六部分、和/或第十六部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十九预设库中不包含所述目标芯片的设计公司设计的晶体管级的网表;
将与第二十预设库中的晶体管级的网表的第十七部分相同和/或相似和/或相似度大于或等于第三十五预设门限的、所述芯片晶体管级的网表中的第十八部分、和/或第十八部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十预设库中为所述目标芯片的设计公司设计的晶体管级的网表、和/或所述目标芯片的设计公司的晶体管级的网表IP核库、和/或所述目标芯片的设计公司的IP核库;
根据芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的晶体管级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
根据芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的晶体管级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核。
13.根据权利要求1所述的方法,其特征在于,所述第二信息包括芯片的门级网表,和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;所述芯片的门级网表包括但不限于以下一种或多种:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表;所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表;
所述根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核,包括但不限于以下一种或多种:
确定芯片的门级网表中第十七标识所在位置和/或第十七标识所在部分和/或与第十七标识之间的代码长度小于或等于第三十六预设门限的部分和/或与第十七标识之间的代码长度在所述芯片的门级网表中的占比小于或等于第三比例阈值的部分,和/或所述位置和/或部分和/或第十七标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十七标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
确定芯片的门级网表中第十八标识所在位置和/或第十八标识所在部分和/或与第十八标识之间的代码长度小于或等于第三十七预设门限的部分和/或与第十八标识之间的代码长度在所述芯片的门级网表中的占比小于或等于第四比例阈值的部分,和/或所述位置和/或部分和/或第十八标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十八标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
将与第二十一预设库中的门级网表的第十九部分相同和/或相似和/或相似度大于或等于第三十八预设门限的、所述芯片的门级网表中的第二十部分、和/或第二十部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十一预设库中不包含所述目标芯片的设计公司设计的门级网表;
将与第二十二预设库中的门级网表的第二十一部分相同和/或相似和/或相似度大于或等于第三十九预设门限的、所述芯片的门级网表中的第二十二部分、和/或第二十二部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十二预设库中为所述目标芯片的设计公司设计的门级网表、和/或所述目标芯片的设计公司的门级网表IP核库、和/或所述目标芯片的设计公司的IP核库;
根据芯片的门级网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的门级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的门级网表部分、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
根据芯片的门级网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的门级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的门级网表部分、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
根据芯片的门级网表转化为芯片晶体管级的网表后,转化的芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的晶体管级网表部分、和/或未通过的晶体管级网表部分所对应的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或对应的晶体管级网表部分所对应的门级网表部分、和/或对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
根据芯片的门级网表转化为芯片晶体管级的网表后,转化的芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的晶体管级网表部分、和/或未通过的晶体管级网表部分所对应的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或对应的晶体管级网表部分所对应的门级网表部分、和/或对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
根据芯片的门级网表与所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、将修改后的门级网表转化为芯片晶体管级的网表、将转化的芯片晶体管级的网表与修改后的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图使用一种或者多种的LVS验证软件和/或工具和/或环境中进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的晶体管级网表部分、和/或未通过的晶体管级网表部分所对应的门级网表部分、和/或未通过的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或未通过部分和/或未通过区域所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的晶体管级网表中的器件和/或连接关系、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的器件和/或连接关系的差异处,和/或差异处所对应的晶体管级网表部分、和/或对应的晶体管级网表部分所对应的门级网表部分、和/或对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图区域、和/或模块、和/或单元、和/或设计信息,为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
根据芯片的两种门级网表、使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的门级网表部分,和/或所述未通过部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不匹配点所对应的门级网表部分,和/或所述部分和/或不匹配点所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不等价部分,和/或所述不等价部分所对应的门级网表部分、和/或所述不等价部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的两种门级网表中的逻辑和/或功能的差异处,和/或差异处所对应的门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
根据芯片的两种门级网表、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的门级网表部分,和/或所述未通过部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不匹配点所对应的门级网表部分,和/或所述部分和/或不匹配点所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不等价部分,和/或所述不等价部分所对应的门级网表部分、和/或所述不等价部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的两种门级网表中的逻辑和/或功能的差异处,和/或差异处所对应的门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
其中,开展形式验证时,如果两种门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;其中,对该差异对应的功能和/或逻辑不验证的方法包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
14.根据权利要求1所述的方法,其特征在于,所述第二信息包括芯片RTL代码,和/或芯片的门级网表;所述芯片的门级网表包括但不限于以下一种或多种:完成最终设计的门级网表,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图对应的门级网表,芯片RTL代码综合形成的门级网表,前端门级网表,后端门级网表,芯片设计过程中的门级网表;所述前端门级网表和/或后端门级网表和/或芯片设计过程中的门级网表包括但不限于一种或多种的门级网表;
所述根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核,包括但不限于以下一种或多种:
确定芯片RTL代码中第十九标识所在位置和/或第十九标识所在部分和/或与第十九标识之间的代码长度小于或等于第四十预设门限的部分和/或与第十九标识之间的代码长度在所述芯片RTL代码中的占比小于或等于第五比例阈值的部分,和/或所述位置和/或部分和/或第十九标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第十九标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
确定芯片RTL代码中第二十标识所在位置和/或第二十标识所在部分和/或与第二十标识之间的代码长度小于或等于第四十一预设门限的部分和/或与第二十标识之间的代码长度在所述芯片RTL代码中的占比小于或等于第六比例阈值的部分,和/或所述位置和/或部分和/或第二十标识所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
根据芯片RTL代码中、除寄存器传输级描述之外的其他级别描述所在部分确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述除寄存器传输级描述之外的其他级别描述包括但不限于门级描述;其中,所述确定的方法,包括但不限于以下一种或多种:确定芯片RTL代码中存在的一种或多种关键词、和/或芯片RTL代码中存在一种或多种关键词的总数量大于或等于第四十二预设门限所对应的关键词、和/或芯片RTL代码中存在一种或多种关键词的总数量占据整个芯片RTL代码的比例大于或等于第四十三预设门限所对应的关键词,将所述关键词所在位置和/或所在部分和/或与所述关键词之间的代码长度小于或等于第四十四预设门限的部分和/或与所述关键词之间的代码长度在所述芯片RTL代码中的占比小于或等于第七比例阈值的部分、和/或所述位置和/或部分和/或所述关键词所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核,其中,所述关键词为代表除寄存器传输级描述之外的其他级别描述的关键词,所述关键词的种类包括但不限于以下一种或多种:表征描述级别的代码、表征描述级别的词汇和/或词组、表征描述级别的脚本、表征描述级别的程序、表征描述级别的网表、其中所述网表包括但不限于门级网表;将与所述芯片的门级网表的第二十三部分相同和/或相似和/或相似度大于或等于第四十五预设门限的、所述芯片RTL代码中的第二十四部分、和/或第二十四部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
将与第二十三预设库中的RTL代码的第二十五部分相同和/或相似和/或相似度大于或等于第四十六预设门限的、所述芯片RTL代码中的第二十六部分、和/或第二十六部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十三预设库中不包含所述目标芯片的设计公司设计的RTL代码;
将与第二十四预设库中的RTL代码的第二十七部分相同和/或相似和/或相似度大于或等于第四十七预设门限的、所述芯片RTL代码中的第二十八部分、和/或第二十八部分所对应的模块和/或单元和/或设计信息确定为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述第二十四预设库中为所述目标芯片的设计公司设计的RTL代码、和/或所述目标芯片的设计公司的RTL代码IP核库、和/或所述目标芯片的设计公司的IP核库;
根据芯片RTL代码与芯片的门级网表、使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的RTL代码部分和/或未通过的门级网表部分,和/或未通过部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不匹配点所对应的RTL代码部分和/或门级网表部分,和/或所述部分和/或不匹配点所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不等价部分,和/或所述不等价部分所对应的RTL代码部分、和/或所述不等价部分所对应的门级网表部分、和/或所述不等价部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的RTL代码中的逻辑和/或功能、与门级网表中的逻辑和/或功能的差异处,和/或差异处所对应的RTL代码部分、和/或门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
根据芯片RTL代码与芯片的门级网表、在修改其中一个或者部分数量或者所有的模块和/或单元的名称之后、使用一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告,确定所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;所述确定的方法包括但不限于以下一种或多种:确定验证中未通过的RTL代码部分和/或未通过的门级网表部分,和/或未通过部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不匹配点所对应的RTL代码部分和/或门级网表部分,和/或所述部分和/或不匹配点所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的不等价部分,和/或所述不等价部分所对应的RTL代码部分和/或门级网表部分、和/或所述不等价部分所对应的模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;确定验证中发现的RTL代码中的逻辑和/或功能、与门级网表中的逻辑和/或功能的差异处,和/或差异处所对应的RTL代码部分、和/或门级网表部分、和/或模块和/或单元和/或设计信息为所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核;
其中,开展形式验证时,如果RTL代码与门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;其中,对该差异对应的功能和/或逻辑不验证的方法包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
15.根据权利要求1所述的方法,其特征在于,根据第一信息、确定目标芯片中和/或所述目标芯片的信息中、是否调用IP核和/或是否疑似调用IP核时、所使用的预设门限和/或标识和/或预设库和/或其中的区域和/或部分,与根据第二信息,确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核、所使用的预设门限和/或标识和/或预设库和/或其中的区域和/或部分,相同或者不同;
根据第一信息、确定目标芯片中和/或所述目标芯片的信息中、是否调用IP核和/或是否疑似调用IP核时、所使用的预设门限和/或标识和/或预设库和/或其中的区域和/或部分中,相同类型的预设门限和/或标识和/或预设库和/或其中的区域和/或部分,相同或者不同;
根据第二信息,确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核、所使用的预设门限和/或标识和/或预设库和/或其中的区域和/或部分中,相同类型的预设门限和/或标识和/或预设库和/或其中的区域和/或部分,相同或者不同。
16.根据权利要求1所述的方法,其特征在于,所述IP核包括但不限于非自研IP核和/或自研IP核;
其中,所述非自研IP核,包括但不限于以下一种或多种:不是所述目标芯片的设计公司所设计的IP核,所述目标芯片的设计公司从其他公司购买的IP核,所述目标芯片的设计公司从非自研IP核库中调用的IP核,知识产权不归属于所述目标芯片的设计公司的IP核;
其中,所述自研IP核,包括但不限于以下一种或多种:所述目标芯片的设计公司所设计的IP核,所述目标芯片的设计公司自主研发的IP核,所述目标芯片的设计公司自有的IP核,所述目标芯片的设计公司自身积累的IP核,知识产权归属于所述目标芯片的设计公司的IP核。
17.根据权利要求1、或5-14中任一项所述的方法,其特征在于,还包括:
根据第一信息和/或第二信息和/或所述目标芯片的信息和/或所述目标芯片的设计文件和/或所述目标芯片的授权资料,确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核,是否为非自研IP核、和/或是否为自研IP核;和/或
在根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核的同时,确定所述IP核是否为非自研IP核、和/或是否为自研IP核;
其中,确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核为非自研IP核的方法,包括但不限于以下一种或多种:
通过芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的空白区域和/或空白区域所对应的内容确定的IP核为非自研IP核;
通过芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图与对应的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图比对时的不一致处、和/或不一致处所对应的内容确定的IP核为非自研IP核;
通过所述目标芯片的第三信息中的第二十一标识确定的IP核为非自研IP核;所述第二十一标识为除所述目标芯片的设计公司以外的其他公司的标识、和/或代表除所述目标芯片的设计公司以外的其他公司的标识;
通过与第二十五预设库中的信息的第二十五区域相同和/或相似和/或相似度大于或等于第四十八预设门限的、所述目标芯片的第三信息中的第二十六区域,和/或第二十六区域所对应的内容确定的IP核为非自研IP核;所述第二十五预设库中不包含所述目标芯片的设计公司设计的信息;
通过与第二十六预设库中的信息的第二十九部分相同和/或相似和/或相似度大于或等于第四十九预设门限的、所述目标芯片的第三信息中的第三十部分,和/或第三十部分所对应的内容确定的IP核为非自研IP核;所述第二十六预设库中不包含所述目标芯片的设计公司设计的信息;
通过确定为非自研IP核的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息,将其所对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为的IP核,为非自研IP核;
根据一种或者多种的LVS验证软件和/或工具和/或环境进行一次或者多次的LVS验证中、不通过的LVS验证的结果和/或报告所确定的IP核为非自研IP核;
根据一种或者多种的形式验证软件和/或工具和/或环境进行一次或者多次的形式验证中、不通过的形式验证的结果和/或报告所确定的IP核为非自研IP核;
根据芯片RTL代码中、除寄存器传输级描述之外的其他级别描述所在部分所确定的IP核为非自研IP核;
针对所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核,若确定该IP核不是所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的自研IP核,则该IP核为所述目标芯片中和/或所述目标芯片的信息调用和/或疑似调用的非自研IP核;
其中,确定所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的IP核为自研IP核的方法,包括但不限于以下一种或多种:
通过所述目标芯片的第三信息中的第二十二标识确定的IP核为自研IP核;所述第二十二标识为所述目标芯片的设计公司的标识、和/或代表所述目标芯片的设计公司的标识;
通过与第二十七预设库中的信息的第二十七区域相同和/或相似和/或相似度大于或等于第五十预设门限的、所述目标芯片的第三信息中的第二十八区域,和/或第二十八区域所对应的内容确定的IP核为自研IP核;所述第二十七预设库中为所述目标芯片的设计公司设计的信息、和/或所述目标芯片的设计公司的信息IP核库、和/或所述目标芯片的设计公司的IP核库;
通过与第二十八预设库中的信息的第三十一部分相同和/或相似和/或相似度大于或等于第五十一预设门限的、所述目标芯片的第三信息中的第三十二部分,和/或第三十二部分所对应的内容确定的IP核为自研IP核;所述第二十八预设库中为所述目标芯片的设计公司设计的信息、和/或所述目标芯片的设计公司的信息IP核库、和/或所述目标芯片的设计公司的IP核库;
通过确定为自研IP核的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息,将其所对应的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图的位置和/或区域、和/或所述位置和/或区域所对应的模块和/或单元和/或设计信息确定为的IP核,为自研IP核;
针对所述目标芯片和/或所述目标芯片的信息调用和/或疑似调用的IP核,若确定该IP核不是所述目标芯片和/或所述目标芯片的信息、调用和/或疑似调用的非自研IP核,则该IP核为所述目标芯片中和/或所述目标芯片的信息调用和/或疑似调用的自研IP核;
其中,所述目标芯片的第三信息包括但不限于以下一种或多种:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,芯片的原理图,芯片晶体管级的网表,芯片的门级网表,芯片RTL代码,第一信息中的一种或者多种信息的所有或者部分信息,第二信息中的一种或者多种信息的所有或者部分信息;
其中,所述第二十五预设库和/或第二十六预设库和/或第二十七预设库和/或第二十八预设库和/或所述目标芯片的设计公司设计的信息、和/或所述目标芯片的设计公司的信息IP核库中的信息、的信息种类,包括但不限于以下一种或多种:版图和/或布图和/或布局布线和/或布局布线图,原理图,晶体管级的网表,门级网表,RTL代码。
18.根据权利要求1或16所述的方法,其特征在于,还包括:判定芯片的自主度和/或可控度;所述判定的方法包括但不限于以下一种或多种:
确定为判定芯片的自主度和/或可控度所需要的一种或多种第四信息,所述第四信息包括但不限于以下一种或多种:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,芯片的原理图,芯片晶体管级的网表,芯片的门级网表,芯片RTL代码,第一信息中的一种或者多种信息的所有或者部分信息,第二信息中的一种或者多种信息的所有或者部分信息,芯片的除第一信息、第二信息之外的其他信息;
针对所述需要的一种或多种第四信息中的每一种第四信息,分配该种第四信息对应的分值;其中,分配分值的方法包括但不限于:根据每种第四信息实现和/或设计的难易程度和/或关键程度分配分值;
针对每种所述需要的第四信息,如果获取的该种第四信息中未包含所述要判定芯片的所有该种信息、和/或未包含所述要判定芯片的所有功能和/或所有逻辑和/或所有模块和/或所有单元,和/或如果获取的该种第四信息中调用了非自研IP核和/或疑似调用了非自研IP核,则所述芯片获得的分值为:该种第四信息对应的分值,减去获取的该种第四信息中所缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元所对应的分值,减去获取的该种第四信息中调用和/或疑似调用的非自研IP核所对应的分值之后,所剩下的分值;和/或,所述芯片获得的分值为:该种第四信息对应的分值,减去获取的该种第四信息中所缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元所对应的分值的第一比例的分值,减去获取的该种第四信息中调用和/或疑似调用的非自研IP核所对应的分值的第二比例的分值之后,所剩下的分值;其中,若所述获取的该种第四信息中所缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元,与所述获取的该种第四信息中调用和/或疑似调用的非自研IP核有重复和/或交叠的内容,则针对重复和/或交叠的内容,只减一次分、和/或不重复减分;其中,第一比例和/或第二比例的确定方法包括但不限于以下一种或多种:比例小于或等于1,比例大于或等于0,所述缺少的要判定芯片的信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元为国产时的比例小于或等于为非国产时的比例,所述调用和/或疑似调用的非自研IP核为国产时的比例小于或等于所述非自研IP核为非国产时的比例;
针对每种所述需要的第四信息,如果获取的该种第四信息包含了所述要判定芯片的所有该种信息和/或包含了所述要判定芯片的所有功能和/或所有逻辑和/或所有模块和/或所有单元,且获取的该种第四信息中未调用非自研IP核且未疑似调用非自研IP核,则所述芯片获得的分值为:该种第四信息对应的分值;
针对每种所述需要的第四信息,若未获取到该种第四信息、和/或无法确认所述获取的该种第四信息为所述芯片的第四信息,则所述芯片在该种第四信息下不获得分值;
将所述芯片针对所述需要的一种或多种第四信息中的每种第四信息所获得的实际分值求和,作为芯片的总得分,通过总得分对芯片的自主度和/或可控度进行判定;
其中,获取的第四信息中未包含所述要判定芯片的所有该种信息和/或未包含所述要判定芯片的所有功能和/或所有逻辑和/或所有模块和/或所有单元的一种情况为,该种第四信息完成设计后的其他信息中调用了非自研IP核、而该种第四信息中暂未针对所述IP核对应的功能和/或逻辑和/或模块和/或单元进行设计;
其中,针对所述需要的一种或多种第四信息,分配各种第四信息对应的分值时,需要确保一个既定功能的芯片在不同方案下、在相同的自主度和/或可控度所对应的得分均相同;所述确保在相同的自主度和/或可控度所对应的得分均相同的实现方法包括但不限于:一个既定功能的芯片在不同方案下、所述需要的各种第四信息所对应的分值之和均相同;
确定为判定芯片的自主度和/或可控度所需要的各种功能和/或逻辑和/或模块和/或单元;
针对所述需要的各种功能和/或逻辑和/或模块和/或单元中的每一种,分配该种功能和/或逻辑和/或模块和/或单元对应的分值;其中,分配分值的方法包括但不限于:根据每种功能和/或逻辑和/或模块和/或单元、实现和/或设计的难易程度和/或关键程度分配分值;
针对每种所述需要的功能和/或逻辑和/或模块和/或单元,如果所述要判定芯片的该种功能和/或逻辑和/或模块和/或单元中、没有调用非自研IP核且没有疑似调用非自研IP核,所述芯片获得该种功能和/或逻辑和/或模块和/或单元对应的分值;
针对每种所述需要的功能和/或逻辑和/或模块和/或单元,如果所述要判定芯片的该种功能和/或逻辑和/或模块和/或单元中、调用了非自研IP核和/或疑似调用了非自研IP核,所述芯片不获得该种功能和/或逻辑和/或模块和/或单元对应的分值、和/或所述芯片获得该种功能和/或逻辑和/或模块和/或单元对应的分值的第三比例的分值;其中,所述第三比例的确定方法包括但不限于以下一种或多种:比例小于或等于1,比例大于或等于0,所述调用和/或疑似调用的非自研IP核为国产时的比例大于或等于所述非自研IP核为非国产时的比例;
针对每种所述需要的功能和/或逻辑和/或模块和/或单元,如果所述要判定芯片缺少该功能和/或逻辑和/或模块和/或单元,则所述芯片在该种功能和/或逻辑和/或模块和/或单元下不获得分值;
将所述芯片针对所述需要的各种功能和/或逻辑和/或模块和/或单元中的每种功能和/或逻辑和/或模块和/或单元所获得的实际分值求和,作为芯片的总得分,通过总得分对芯片的自主度和/或可控度进行判定;
其中,针对所述需要的各种功能和/或逻辑和/或模块和/或单元,分配各种功能和/或逻辑和/或模块和/或单元对应的分值时,需要确保一个既定功能的芯片在不同方案下、在相同的自主度和/或可控度所对应的得分均相同;所述确保在相同的自主度和/或可控度所对应的得分均相同的实现方法包括但不限于:一个既定功能的芯片在不同方案下、所述需要的各种功能和/或逻辑和/或模块和/或单元对应的分值之和均相同。
19.根据权利要求18所述的方法,其特征在于,所述获取的第四信息中所缺少的要判定芯片的该种信息部分和/或所缺少的功能和/或所缺少的逻辑和/或所缺少的模块和/或所缺少的单元所对应的分值,和/或所述获取的第四信息中调用和/或疑似调用的非自研IP核对应的分值的计算方法,包括但不限于以下一种或多种:
针对所述需要的该种第四信息,针对其中的各种功能和/或逻辑和/或模块和/或单元,分配各种功能和/或逻辑和/或模块和/或单元所对应的分值,且各种功能和/或逻辑和/或模块和/或单元所对应分值之和为该种第四信息对应的分值;其中,分配分值的方法包括但不限于:根据每种功能和/或逻辑和/或模块和/或单元、实现和/或设计的难易程度和/或关键程度分配分值;
在所述需要的该种第四信息中的各种功能和/或逻辑和/或模块和/或单元中,找出所述获取的第四信息中所缺少的要判定芯片的信息部分和/或功能和/或逻辑和/或模块和/或单元,这部分功能和/或逻辑和/或模块和/或单元所分配的分值或分值之和即为获取的第四信息中所缺少的要判定芯片的信息部分、和/或所缺少的功能和/或逻辑和/或模块和/或单元所对应的分值;
在所述需要的该种第四信息中的各种功能和/或逻辑和/或模块和/或单元中,找出所述获取的第四信息中调用和/或疑似调用的非自研IP核所对应的功能和/或逻辑和/或模块和/或单元,这部分功能和/或逻辑和/或模块和/或单元所分配的分值或分值之和即为获取的第四信息中调用和/或疑似调用的非自研IP核所对应的分值。
20.根据权利要求1所述的方法,其特征在于,还包括确认获取的信息为所述目标芯片的信息;所述信息包括但不限于以下一种或多种:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,芯片的原理图,芯片晶体管级的网表,芯片的门级网表,芯片RTL代码,第一信息中的一种或者多种信息的所有或者部分信息,第二信息中的一种或者多种信息的所有或者部分信息;芯片的除第一信息、第二信息之外的其他信息;所述确认的方法包括但不限于以下一种或多种:
获取的信息,已经声明或者鉴定为所述目标芯片的信息;
将获取的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图确定为所述目标芯片的信息;
对获取的信息进行比对和/或验证确认是否为所述目标芯片的信息,包括但不限于以下一种或多种:将获取的信息与已经声明或者鉴定为所述目标芯片的信息、进行一次或者多次的比对和/或验证,如果比对和/或验证通过,则所述获取的信息为所述目标芯片的信息;将获取的信息与芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图、进行一次或者多次的比对和/或验证,如果比对和/或验证通过,则所述获取的信息为所述目标芯片的信息;
将获取的信息,与经过比对和/或验证确认为所述目标芯片的信息,进行一次或者多次的比对和/或验证,若比对和/或验证通过,则所述获取的信息为所述目标芯片的信息。
21.根据权利要求20所述的方法,其特征在于,所述比对和/或验证,包括但不限于以下一种或多种:
将芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、与芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图进行比对;
将芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、与芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元后,对余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、与余下的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图进行比对;
将芯片的原理图、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
将芯片的原理图、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片的原理图、与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
将芯片晶体管级的网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
将芯片晶体管级的网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片晶体管级的网表、与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
将芯片的门级网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
将芯片的门级网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片的门级网表、与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
将芯片的门级网表转化为芯片晶体管级的网表后,对转化的芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
将芯片的门级网表转化为芯片晶体管级的网表后,将转化的芯片晶体管级的网表与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片晶体管级的网表、与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图进行LVS验证;
将芯片的门级网表、与芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,将余下的门级网表转化为晶体管级的网表,对转化的晶体管级的网表与余下的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图部分进行LVS验证;
将芯片的一种门级网表、与芯片的另一种门级网表进行形式验证;
将芯片的一种门级网表、与芯片的另一种门级网表,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片的一种门级网表、与余下的芯片的另一种门级网表进行形式验证;
将芯片RTL代码、与芯片的门级网表进行形式验证;
将芯片RTL代码、与芯片的门级网表,除去已被确认为目标芯片调用或疑似调用的非自研IP核的部分和/或区域和/或模块和/或单元和/或设计信息后,对余下的芯片RTL代码、与余下的芯片的门级网表进行形式验证;
其中,开展形式验证时,如果验证的两种门级网表之间、和/或验证的RTL代码与门级网表之间在辅助设计和/或辅助测试的功能和/或逻辑上有差异,则对该差异对应的功能和/或逻辑不验证或者验证;其中,对该差异对应的功能和/或逻辑不验证的方法包括但不限于:在设置常量时,禁止辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚、和/或设置辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚为无效;所述辅助设计和/或辅助测试的功能和/或逻辑和/或引脚和/或管脚包括但不限于以下一种或多种:扫描SCAN链和/或扫描SCAN链对应的使能引脚和/或使能管脚,JTAG链和/或JTAG链对应的使能引脚和/或使能管脚,芯片可测性设计和/或可测性设计对应的引脚和/或管脚。
22.根据权利要求1-15中任一项所述的方法,其特征在于,包括但不限于以下一种或多种:
所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图、和/或芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的区域,包括但不限于所有层和/或部分层和/或一层的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,对于其中一层,所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图包括但不限于整个区域和/或多个局部区域和/或一个局部区域的芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图;其中,不同层的整个区域和/或多个局部区域和/或一个局部区域的位置和/或范围相同或者不同;
所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图、和/或芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的区域,包括但不限于所有层和/或部分层和/或一层的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,对于其中一层,所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图包括但不限于整个区域和/或多个局部区域和/或一个局部区域的芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图;其中,不同层的整个区域和/或多个局部区域和/或一个局部区域的位置和/或范围相同或者不同;
所述预设库中的版图和/或布图和/或布局布线和/或布局布线图、和/或版图和/或布图和/或布局布线和/或布局布线图中的区域,包括但不限于所有层和/或部分层和/或一层的版图和/或布图和/或布局布线和/或布局布线图,对于其中一层,所述版图和/或布图和/或布局布线和/或布局布线图包括但不限于整个区域和/或多个局部区域和/或一个局部区域的版图和/或布图和/或布局布线和/或布局布线图;其中,不同层的整个区域和/或多个局部区域和/或一个局部区域的位置和/或范围相同或者不同;
所述芯片的原理图、和/或芯片的原理图中的区域,包括但不限于整个区域和/或多个局部区域和/或一个局部区域的芯片原理图;
所述预设库中的原理图、和/或原理图中的区域,包括但不限于整个区域和/或多个局部区域和/或一个局部区域的原理图;
所述芯片晶体管级的网表、和/或晶体管级的网表中的部分,包括但不限于:整个晶体管级的网表,部分晶体管级的网表;
所述预设库中的晶体管级的网表、和/或晶体管级的网表中的部分,包括但不限于:整个晶体管级的网表,部分晶体管级的网表;
所述芯片的门级网表、和/或门级网表中的部分,包括但不限于:整个门级网表,部分门级网表;
所述预设库中的门级网表、和/或门级网表中的部分,包括但不限于:整个门级网表,部分门级网表;
所述芯片RTL代码、和/或RTL代码中的部分,包括但不限于以下一种或多种:整个RTL代码,部分RTL代码,所述目标芯片的设计公司声称的RTL代码,所述目标芯片的设计公司在RTL设计阶段设计的代码;
所述预设库中的RTL代码、和/或RTL代码中的部分,包括但不限于:整个RTL代码,部分RTL代码;
所述芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图包括但不限于以下一种或多种:芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图,芯片设计版图和/或设计布图和/或设计布局布线和/或设计布局布线图中的注释和/或说明;
所述芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图包括但不限于以下一种或多种:芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图,芯片实物和/或实物版图和/或实物布图和/或实物布局布线和/或实物布局布线图中的注释和/或说明;
所述芯片的原理图包括但不限于以下一种或多种:芯片的原理图,芯片的原理图中的注释和/或说明;
所述芯片晶体管级的网表包括但不限于以下一种或多种:芯片晶体管级的网表,芯片晶体管级的网表中的注释和/或说明;
所述芯片的门级网表包括但不限于以下一种或多种:芯片的门级网表,芯片的门级网表中的注释和/或说明;
所述芯片RTL代码包括但不限于以下一种或多种:芯片RTL代码,芯片RTL代码中的注释和/或说明;
所述标识包括以下一种或多种:文本、图形、商标、名称、标志、标记、水印。
23.一种IP核调用的检测装置,其特征在于,包括:
IP核调用判断模块,用于根据第一信息,确定目标芯片中和/或所述目标芯片的信息中,是否调用IP核和/或是否疑似调用IP核;和/或,
IP核调用确定模块,用于根据第二信息,确定所述目标芯片和/或所述目标芯片的信息,调用和/或疑似调用的IP核;
其中,所述目标芯片的信息为一种信息或多种信息。
24.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的程序;其特征在于,所述处理器执行所述程序时实现如权利要求1至22中任一项所述的IP核调用的检测方法中的步骤。
25.一种可读存储介质,其上存储有程序,其特征在于,该程序被处理器执行时实现如权利要求1至22中任一项所述的IP核调用的检测方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011508063.XA CN114650246A (zh) | 2020-12-18 | 2020-12-18 | Ip核调用的检测方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011508063.XA CN114650246A (zh) | 2020-12-18 | 2020-12-18 | Ip核调用的检测方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114650246A true CN114650246A (zh) | 2022-06-21 |
Family
ID=81990117
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011508063.XA Pending CN114650246A (zh) | 2020-12-18 | 2020-12-18 | Ip核调用的检测方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114650246A (zh) |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080034334A1 (en) * | 2004-02-17 | 2008-02-07 | Oussama Laouamri | Integrated Circuit Chip with Communication Means Enabling Remote Control of Testing Means of Ip Cores of the Integrated Circuit |
CN101788644A (zh) * | 2009-12-30 | 2010-07-28 | 北京龙芯中科技术服务中心有限公司 | 具有多个同构ip核的片上系统芯片测试装置和方法 |
CN102542191A (zh) * | 2010-12-31 | 2012-07-04 | 深圳市证通电子股份有限公司 | Rtl级ip核的保护方法 |
CN102591997A (zh) * | 2011-01-05 | 2012-07-18 | 上海华虹Nec电子有限公司 | 多电压芯片设计的版图和原理图一致性比较方法 |
CN102880763A (zh) * | 2012-10-17 | 2013-01-16 | 上海宏力半导体制造有限公司 | Ip核检测版图、版图设计系统及版图设计方法 |
CN103164552A (zh) * | 2011-12-13 | 2013-06-19 | 中芯国际集成电路制造(上海)有限公司 | 芯片版图的检测方法 |
CN109284513A (zh) * | 2017-07-20 | 2019-01-29 | 中芯国际集成电路制造(上海)有限公司 | 芯片版图的检测方法及装置、计算机可读存储介质、终端 |
CN109783118A (zh) * | 2017-11-13 | 2019-05-21 | 阿里巴巴集团控股有限公司 | Fpga云主机开发方法和系统 |
CN109802864A (zh) * | 2017-11-16 | 2019-05-24 | 中兴通讯股份有限公司 | 芯片设计验证方法、装置及芯片测试器 |
CN109960879A (zh) * | 2019-03-25 | 2019-07-02 | 福州大学 | 一种基于不可信ip核的系统级芯片安全设计方法 |
CN110363031A (zh) * | 2018-03-26 | 2019-10-22 | 北京华大信安科技有限公司 | 一种ip核授权方法、装置及pld |
CN110515891A (zh) * | 2019-10-22 | 2019-11-29 | 广东高云半导体科技股份有限公司 | 一种fpga芯片及其配置方法 |
CN111027270A (zh) * | 2019-11-26 | 2020-04-17 | 西安电子科技大学 | 一种用于集成电路设计流程可信设计的方法及电路 |
CN111858306A (zh) * | 2020-06-12 | 2020-10-30 | 海光信息技术有限公司 | 一种芯片验证方法、装置、芯片及存储介质 |
-
2020
- 2020-12-18 CN CN202011508063.XA patent/CN114650246A/zh active Pending
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080034334A1 (en) * | 2004-02-17 | 2008-02-07 | Oussama Laouamri | Integrated Circuit Chip with Communication Means Enabling Remote Control of Testing Means of Ip Cores of the Integrated Circuit |
CN101788644A (zh) * | 2009-12-30 | 2010-07-28 | 北京龙芯中科技术服务中心有限公司 | 具有多个同构ip核的片上系统芯片测试装置和方法 |
CN102542191A (zh) * | 2010-12-31 | 2012-07-04 | 深圳市证通电子股份有限公司 | Rtl级ip核的保护方法 |
CN102591997A (zh) * | 2011-01-05 | 2012-07-18 | 上海华虹Nec电子有限公司 | 多电压芯片设计的版图和原理图一致性比较方法 |
CN103164552A (zh) * | 2011-12-13 | 2013-06-19 | 中芯国际集成电路制造(上海)有限公司 | 芯片版图的检测方法 |
CN102880763A (zh) * | 2012-10-17 | 2013-01-16 | 上海宏力半导体制造有限公司 | Ip核检测版图、版图设计系统及版图设计方法 |
CN109284513A (zh) * | 2017-07-20 | 2019-01-29 | 中芯国际集成电路制造(上海)有限公司 | 芯片版图的检测方法及装置、计算机可读存储介质、终端 |
CN109783118A (zh) * | 2017-11-13 | 2019-05-21 | 阿里巴巴集团控股有限公司 | Fpga云主机开发方法和系统 |
CN109802864A (zh) * | 2017-11-16 | 2019-05-24 | 中兴通讯股份有限公司 | 芯片设计验证方法、装置及芯片测试器 |
CN110363031A (zh) * | 2018-03-26 | 2019-10-22 | 北京华大信安科技有限公司 | 一种ip核授权方法、装置及pld |
CN109960879A (zh) * | 2019-03-25 | 2019-07-02 | 福州大学 | 一种基于不可信ip核的系统级芯片安全设计方法 |
CN110515891A (zh) * | 2019-10-22 | 2019-11-29 | 广东高云半导体科技股份有限公司 | 一种fpga芯片及其配置方法 |
CN111027270A (zh) * | 2019-11-26 | 2020-04-17 | 西安电子科技大学 | 一种用于集成电路设计流程可信设计的方法及电路 |
CN111858306A (zh) * | 2020-06-12 | 2020-10-30 | 海光信息技术有限公司 | 一种芯片验证方法、装置、芯片及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7685545B2 (en) | Methods and devices for independent evaluation of cell integrity, changes and origin in chip design for production workflow | |
US7617467B2 (en) | Electrostatic discharge device verification in an integrated circuit | |
CN109684707A (zh) | 一种标准单元库版图设计规则验证方法 | |
CN101669121B (zh) | 增量式布局分析 | |
US7788612B2 (en) | System, method, and computer program product for matching cell layout of an integrated circuit design | |
EP3866047A1 (en) | Methods and devices for independent evaluation of cell integrity, changes and origin in chip design for production workflow | |
CN1342318A (zh) | 用于将逻辑集成电路的逻辑功能测试数据映射为物理表述的集成电路测试软件系统 | |
US20100042396A1 (en) | Automated Method for Validating Manufacturing Test Rules Pertaining to an Electronic Component | |
US20080244482A1 (en) | Integrated circuit design usage and sanity verification | |
CN109977518B (zh) | 网板阶梯的设计方法、系统、计算机可读存储介质及设备 | |
US10997332B1 (en) | System and method for computing electrical over-stress of devices associated with an electronic design | |
CN1534764A (zh) | 集成电路设计整合方法及其应用的组件、交易方法与产品 | |
US7406671B2 (en) | Method for performing design rule check of integrated circuit | |
JP2020537358A (ja) | 部品極性検出方法、システム、コンピュータで読取可能な記憶媒体及びデバイス | |
US7694241B1 (en) | Automated design process and method for multi-rail cells and connections | |
US20180260511A9 (en) | Design-rule-check waiver | |
US20130195368A1 (en) | Scalable pattern matching between a pattern clip and a pattern library | |
US7546565B2 (en) | Method for comparing two designs of electronic circuits | |
CN108829903B (zh) | 判定fpga冗余设计的代码与综合后电路一致性的方法和系统 | |
US7185296B2 (en) | Method of extraction of wire capacitances in LSI device having diagonal wires and extraction program for same | |
CN114650246A (zh) | Ip核调用的检测方法、装置及设备 | |
CN111045948A (zh) | 模块间接口信号的检查方法、设备和存储介质 | |
Tam et al. | SLIDER: Simulation of layout-injected defects for electrical responses | |
US7073152B2 (en) | System and method for determining a highest level signal name in a hierarchical VLSI design | |
CN113935271A (zh) | 自动布局布线方法 |
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 |