一种集成电路展平式设计的字符串存储与查询系统及方法技术方案

技术编号:35458034 阅读:18 留言:0更新日期:2022-11-03 12:20
本发明专利技术属于集成电路展平式设计技术领域,公开了一种集成电路展平式设计的字符串存储与查询系统及方法,所述集成电路展平式设计的字符串存储与查询系统包括:电路图设计模块、电路字符获取模块、字符数据结构构建模块、字符串查询模块、字符串存储模块、电路模拟测试模块。本发明专利技术通过字符串查询模块不需要遍历数据库中的所有电路元素字符串数据,能够保证较高的检索查询效率;同时,通过字符串存储模块所得到的属于字段值可控的字段的字符组的编码值所占用的字节数小于对该字符组中的各个字符进行逐字编码所得到该字符组的编码值所占用的字节数;因此,在存储电路元素字符串时,可以节省存储空间。可以节省存储空间。可以节省存储空间。

【技术实现步骤摘要】
一种集成电路展平式设计的字符串存储与查询系统及方法


[0001]本专利技术属于集成电路展平式设计
,尤其涉及一种集成电路展平式设计的字符串存储与查询系统及方法。

技术介绍

[0002]集成电路(integrated circuit)是一种微型电子器件或部件。采用一定的工艺,把一个电路中所需的晶体管、电阻、电容和电感等元件及布线互连一起,制作在一小块或几小块半导体晶片或介质基片上,然后封装在一个管壳内,成为具有所需电路功能的微型结构;其中所有元件在结构上已组成一个整体,使电子元件向着微小型化、低功耗、智能化和高可靠性方面迈进了一大步。它在电路中用字母“IC”表示。集成电路专利技术者为杰克
·
基尔比(基于锗(Ge)的集成电路)和罗伯特
·
诺伊斯(基于硅(Si)的集成电路)。当今半导体工业大多数应用的是基于硅的集成电路。然而,现有集成电路展平式设计的字符串存储与查询系统及方法在每次检索遍历整个电路元素字符串数据库,检索查询效率较低;同时,在对电路元素字符串进行存储时,需要首先根据所选定的字符集,对待编码的电路元素字符串逐字进行编码;进而,存储所得到的电路元素字符串的二进制编码,因此,在存储电路元素字符串时,可能浪费更多存储空间。
[0003]通过上述分析,现有技术存在的问题及缺陷为:
[0004](1)现有集成电路展平式设计的字符串存储与查询系统及方法在每次检索遍历整个电路元素字符串数据库,检索查询效率较低。
[0005](2)在对电路元素字符串进行存储时,需要首先根据所选定的字符集,对待编码的电路元素字符串逐字进行编码;进而,存储所得到的电路元素字符串的二进制编码,因此,在存储电路元素字符串时,可能浪费更多存储空间。

技术实现思路

[0006]针对现有技术存在的问题,本专利技术提供了一种集成电路展平式设计的字符串存储与查询系统及方法。
[0007]本专利技术是这样实现的,一种集成电路展平式设计的字符串存储与查询系统包括:
[0008]电路图设计模块、电路字符获取模块、字符数据结构构建模块、字符串查询模块、字符串存储模块、电路模拟测试模块;
[0009]电路图设计模块,与电路字符获取模块连接,用于通过电路设计程序设计集成电路图;
[0010]电路字符获取模块,与电路图设计模块、字符数据结构构建模块连接,用于获取电路元素对应的字符串;
[0011]字符数据结构构建模块,与电路字符获取模块、字符串查询模块连接,用于构建电路元素字符串数据结构;
[0012]字符串查询模块,与字符数据结构构建模块、字符串存储模块连接,用于通过查询
程序查询电路元素对应的字符串;
[0013]字符串存储模块,与字符串查询模块、电路模拟测试模块连接,用于通过存储器存储电路元素字符串;
[0014]电路模拟测试模块,与字符串存储模块连接,用于通过模拟测试程序对设计的集成电路进行模拟测试。
[0015]一种集成电路展平式设计的字符串存储与查询方法包括以下步骤:
[0016]步骤一,通过电路图设计模块利用电路设计程序设计集成电路图;
[0017]步骤二,通过电路字符获取模块获取电路元素对应的字符串;通过字符数据结构构建模块构建电路元素字符串数据结构;
[0018]步骤三,通过字符串查询模块利用查询程序查询电路元素对应的字符串;通过字符串存储模块利用存储器存储电路元素字符串;
[0019]步骤四,通过电路模拟测试模块利用模拟测试程序对设计的集成电路进行模拟测试。
[0020]进一步,所述字符串查询模块查询方法如下:
[0021](1)构建电路元素字符串数据库;接收检索请求,所述检索请求中请求从数据库中查询包含有检索字符的电路元素字符串数据;并对电路元素字符串进行匹配;
[0022](2)通过索引信息从前缀树中查询目标子树;所述前缀树是基于所述数据库中包含的电路元素字符串数据构建的;所述索引信息用于指示所述前缀树中各个节点作为起始节点的子树所包含的字符组合;所述目标子树是对应的字符组合与所述检索字符相同的子树;
[0023](3)从所述前缀树中获取所述目标子树的前缀字符和后缀字符;所述前缀字符是所述前缀树的根节点到所述目标子树的首个节点之间的各个节点对应的字符组合;所述后缀字符是所述目标子树之后的数据尾节点到所述目标子树的最后一个节点之间的各个节点对应的字符组合;所述数据尾节点是所述前缀树中,对应所述数据库中的电路元素字符串数据的最后一个字符的节点;将所述前缀字符、所述检索字符以及所述后缀字符拼接,得到所述检索请求对应的目标电路元素字符串数据;
[0024]所述对电路元素字符串进行匹配方法:
[0025]通过FPGA并行处理在一个时钟周期找到模式电路元素字符串前j个字符的子串,以及它的前缀和后缀的最大公共元素值,通过前缀和后缀的最大公共元素值可直接得到并输出NEXT数组,利用NEXT数组可实现多个模式的模式电路元素字符串并行匹配,根据实现的NEXT函数,每一个模式对应一个匹配引擎,同时对不同的NEXT函数值和模式电路元素字符串,实现的一对多同时比较,最后根据匹配的标志输出最终的匹配结果;
[0026]所述模式电路元素字符串前j个字符的子串,以及它的前缀和后缀的最大公共元素值的具体寻找过程如下:
[0027]列出前j=2个字符的子串到除去模式电路元素字符串本身的最大的子串;分别比较步骤1中每一个子串的相同大小的前后缀,如果比较相等,输出用一位标志位s=1表示;每一个子串所有的比较的输出标志位s作为一个优先级编码器的输入,编码器输出即可得到所述模式电路元素字符串前j个字符所构成的电路元素字符串最大的前后缀的公共元素值;
[0028]通过NEXT函数值与前j个字符的子串,它的前后缀的最大公共元素值的关系转而得到NEXT数组;
[0029]所述得到NEXT数组的具体过程如下:根据NEXT函数值的定义知,NEXT[1]=0;如果最大公共元素值Max[1]=0,也就是说,j=2时,前2字符是不等的,可得NEXT[2]=1;即如果得到的Max值为零,那么就等于1;如果,最大公共元素值不为零,那么就满足NEXT[j]=Max[j

1];即可一一对应NEXT函数值;
[0030]在所述模式电路元素字符串前j个字符的子串,以及它的前缀和后缀的最大公共元素值的实现方式如下:
[0031]在模式电路元素字符串存储中按地址为分别可得到前j个字符的子串,每一个子串由8bit的ASCII码表示,j的值等于字节的数目;
[0032]根据步骤1中的得到的j字节的二进制数,通过相应位的比较器,比较器输出1bit,相等输出为1,否则为0;
[0033]根据每一个前j个字符的子串,它每一个比较器输出由高位到低位作为编码器的输入,以最高位优先级编码,得到对应第j位的Max值;
[0034]实现NEXT函数值的方式如下:<本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种集成电路展平式设计的字符串存储与查询系统,其特征在于,所述集成电路展平式设计的字符串存储与查询系统包括:电路图设计模块、电路字符获取模块、字符数据结构构建模块、字符串查询模块、字符串存储模块、电路模拟测试模块;电路图设计模块,与电路字符获取模块连接,用于通过电路设计程序设计集成电路图;电路字符获取模块,与电路图设计模块、字符数据结构构建模块连接,用于获取电路元素对应的字符串;字符数据结构构建模块,与电路字符获取模块、字符串查询模块连接,用于构建电路元素字符串数据结构;字符串查询模块,与字符数据结构构建模块、字符串存储模块连接,用于通过查询程序查询电路元素对应的字符串;字符串存储模块,与字符串查询模块、电路模拟测试模块连接,用于通过存储器存储电路元素字符串;电路模拟测试模块,与字符串存储模块连接,用于通过模拟测试程序对设计的集成电路进行模拟测试。2.一种如权利要求1所述的集成电路展平式设计的字符串存储与查询方法,其特征在于,所述集成电路展平式设计的字符串存储与查询方法包括以下步骤:步骤一,通过电路图设计模块利用电路设计程序设计集成电路图;步骤二,通过电路字符获取模块获取电路元素对应的字符串;通过字符数据结构构建模块构建电路元素字符串数据结构;步骤三,通过字符串查询模块利用查询程序查询电路元素对应的字符串;通过字符串存储模块利用存储器存储电路元素字符串;步骤四,通过电路模拟测试模块利用模拟测试程序对设计的集成电路进行模拟测试。3.如权利要求1所述集成电路展平式设计的字符串存储与查询系统,其特征在于,所述字符串查询模块查询方法如下:(1)构建电路元素字符串数据库;接收检索请求,所述检索请求中请求从数据库中查询包含有检索字符的电路元素字符串数据;并对电路元素字符串进行匹配;(2)通过索引信息从前缀树中查询目标子树;所述前缀树是基于所述数据库中包含的电路元素字符串数据构建的;所述索引信息用于指示所述前缀树中各个节点作为起始节点的子树所包含的字符组合;所述目标子树是对应的字符组合与所述检索字符相同的子树;(3)从所述前缀树中获取所述目标子树的前缀字符和后缀字符;所述前缀字符是所述前缀树的根节点到所述目标子树的首个节点之间的各个节点对应的字符组合;所述后缀字符是所述目标子树之后的数据尾节点到所述目标子树的最后一个节点之间的各个节点对应的字符组合;所述数据尾节点是所述前缀树中,对应所述数据库中的电路元素字符串数据的最后一个字符的节点;将所述前缀字符、所述检索字符以及所述后缀字符拼接,得到所述检索请求对应的目标电路元素字符串数据;所述对电路元素字符串进行匹配方法:通过FPGA并行处理在一个时钟周期找到模式电路元素字符串前j个字符的子串,以及它的前缀和后缀的最大公共元素值,通过前缀和后缀的最大公共元素值可直接得到并输出
NEXT数组,利用NEXT数组可实现多个模式的模式电路元素字符串并行匹配,根据实现的NEXT函数,每一个模式对应一个匹配引擎,同时对不同的NEXT函数值和模式电路元素字符串,实现的一对多同时比较,最后根据匹配的标志输出最终的匹配结果;所述模式电路元素字符串前j个字符的子串,以及它的前缀和后缀的最大公共元素值的具体寻找过程如下:列出前j=2个字符的子串到除去模式电路元素字符串本身的最大的子串;分别比较步骤1中每一个子串的相同大小的前后缀,如果比较相等,输出用一位标志位s=1表示;每一个子串所有的比较的输出标志位s作为一个优先级编码器的输入,编码器输出即可得到所述模式电路元素字符串前j个字符所构成的电路元素字符串最大的前后缀的公共元素值;通过NEXT函数值与前j个字符的子串,它的前后缀的最大公共元素值的关系转而得到NEXT数组;所述得到NEXT数组的具体过程如下:根据NEXT函数值的定义知,NEXT[1]=0;如果最大公共元素值Max[1]=0,也就是说,j=2时,前2字符是不等的,可得NEXT[2]=1;即如果得到的Max值为零,那么就等于1;如果,最大公共元素值不为零,那么就满足NEXT[j]=Max[j

1];即可一一对应NEXT函数值;在所述模式电路元素字符串前j个字符的子串,以及它的前缀和后缀的最大公共元素值的实现方式如下:在模式电路元素字符串存储中按地址为分别可得到前j个字符的子串,每一个子串由8bit的ASCII码表示,j的值等于字节的数目;根据步骤1中的得到的j字节的二进制数,通过相应位的比较器,比较器输出1bit,相等输出为1,否则为0;根据每一个前j个字符的子串,它每一个比较器输出由高位到低位作为编码器的输入,以最高位优先级编码,得到对应第j位的Max值;实现NEXT函数值的方式如下:根据得到Max值,此处用到比较器,判断Max值是否为零,然后在不为零的情况用到加法器执行加1操作,否则不执行,直接对应为赋值为1;根据上面比较器和加法器共同作用的结果后,依次按地址存放得到NEXT函数值。4.如权利要求3所述集成电路展平式设计的字符串存储与查询系统,其特征在于,所述通过索引信息从前缀树中查询目标子树,包括:从所述索引信息指示的各种字符组合中确定目标字符组合,所述目标字符组合包含n位字符,且所述目标字符组合与所述检索字符中的前n位字符相同;n为大于或者等于1的整数;将所述目标字符组合对应的起始节点确定为目标起始节点;从所述目标起始节点开始,在所述前缀树中对所述检索字符进行前缀匹配,得到所述目标子树。5.如权利要求3所述集成电路展平式设计的字符串存储与查询系统,其特征在...

【专利技术属性】
技术研发人员:刘庆华钧黄成刚
申请(专利权)人:北京科能腾达信息技术股份有限公司
类型:发明
国别省市:

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

1