一种针对asic设计中网表逻辑冗余的优化方法及系统的制作方法_2

文档序号:9375989阅读:来源:国知局
统,以达到有效减少ASIC设计逻辑冗余,进而降低设计冗余度的目的。
[0044]为了使本技术领域的人员更好地理解本发明方案,下面结合附图和【具体实施方式】对本发明作进一步的详细说明。
[0045]参考图1,示出了本发明实施例提供的一种减少ASIC设计逻辑冗余的方法的流程图,该方法具体可以包括如下步骤:
[0046]步骤SlOOjiASIC设计过程中的网表进行针对逻辑冗余的分析处理,得到初始分析数据;
[0047]具体地,利用常规的逻辑综合、逻辑等价性检查手段对网表进行分析处理,得到初始分析数据。进一步更具体的实现请参考下一实施例中进行详细阐述。
[0048]步骤S101、提取初始分析数据中的冗余特征,并识别出网表的逻辑冗余;
[0049]具体地,冗余逻辑识别软件结合初始分析数据完成对逻辑综合后网表的冗余特征分析,识别出网表中的逻辑冗余。
[0050]步骤S102、利用冗余特征,对网表的逻辑冗余进行分类,并利用逻辑冗余所属类别对应的划分方式,对逻辑冗余进行冗余节点划分,得到逻辑冗余的冗余节点;
[0051]本发明中,逻辑冗余的类别可以为无负载冗余、自反馈冗余及逻辑空间冗余,还可以是常值冗余、并联冗余及互斥结构冗余等多种冗余逻辑,本发明中,冗余逻辑分类软件利用识别出来的冗余特征对网表的逻辑冗余进行细致分类,具体地,根据不同的冗余特征对设计逻辑进行细致分类,并综合利用多种追踪算法对冗余边界进行划分。即使是自反馈冗余或者是其它现有技术中无法识别进行优化处理的类别也能分类出来。
[0052]本发明中,当知道某个逻辑冗余的全部冗余节点时,就能够知道这个逻辑冗余的边界,然后就可以参照这个边界自动删除逻辑冗余,得到优化后的网表。
[0053]步骤S103、利用逻辑冗余的冗余节点,删除逻辑冗余,得到优化后的网表。
[0054]具体地,根据步骤S102中冗余逻辑删除软件划分的冗余节点对逻辑综合后网表进行冗余去除,产生优化后的逻辑网表
[0055]在实际应用中,必要时可以采用本发明的方法对逻辑设计在不同工作模式下多次进行循环优化以尽可能降低设计冗余度。
[0056]本发明中,步骤SlOl至步骤S103完成了对网表逻辑冗余的优化,包括冗余识别、冗余分类和冗余删除,其为自研软件完成的功能,其也是本发明的重点所在。进一步地,还可以在冗余优化步骤后新增一项逻辑等价性检查,以验证冗余优化的正确性。
[0057]综上,相较现有技术,本发明能识别出更多类别的逻辑冗余并进行优化,以及能够对不同类别的逻辑冗余进行自动删除,以此,有效地减少了 ASIC设计逻辑冗余,进而降低了设计冗余度。
[0058]并且,本发明所提供的技术方案中涉及的逻辑综合、逻辑等价性检查为常规ASIC设计流程可以完成的步骤,即步骤SlOO中可以从常规流程中获取初始分析数据。由此可见,本发明的优化方法与常规的ASIC设计流程相结合,不会扰乱常规的ASIC设计流程,它可以方便、完整地嵌入到常规的ASIC设计流程中,既是对常规设计流程的有益补充,又能高效地完成设计中冗余逻辑的识别和优化功能,极大地提高了冗余优化的效率。
[0059]基于上述本发明各实施例所公开的一种减少ASIC设计逻辑冗余的方法,在本发明另一实施例中,参考图2,具体地,可以通过以下内容执行步骤S100、对ASIC设计过程中的网表进行针对逻辑冗余的分析处理,得到初始分析数据:
[0060]步骤S200、利用综合工具对网表进行逻辑综合,得到综合后的网表;
[0061 ] 步骤S201、对综合后的网表进行逻辑等价性检查,得到初始分析数据。
[0062]由此可见,本发明的优化方法与常规的ASIC设计流程相结合,不会扰乱常规的ASIC设计流程,它可以方便、完整地嵌入到常规的ASIC设计流程中,既是对常规设计流程的有益补充,又能高效地完成设计中冗余逻辑的识别和优化功能,极大地提高了冗余优化的效率。
[0063]基于上述本发明实施例所公开的一种减少ASIC设计逻辑冗余的方法,在本发明另一实施例中,进一步地,参考图3,图中圆角框的内容表示流程输入或输出的文件。直角框的内容表示流程中各主体步骤。实线箭头表示流程的运行方向,虚线箭头表示各步骤产生的输出文件。
[0064]在步骤SlOl中识别出网表的逻辑冗余之后,可以利用识别出的网表的逻辑冗余,生成冗余识别报告,以便用户对设计中的逻辑冗余进行查看和确认。
[0065]在步骤S103中得到逻辑冗余的冗余节点之后,可以利用对网表的逻辑冗余进行分类的分类结果及对逻辑冗余进行冗余节点划分的划分结果,生成冗余分类报告。实际应用中,还可以基于冗余分类报告生成冗余优化指导文件,生成的冗余分类报告和冗余优化指导文件便于用户对设计中的冗余逻辑进行确认。对经确认需要保留的ASIC逻辑在冗余优化指导文件中给予明确指示。对经确认需要优化删除的冗余逻辑通过该指导文件传递给冗余删除软件自动完成删除处理。
[0066]进一步地,在步骤S103中得到优化后的网表之后,还可以对优化后的网表进行逻辑等价性检查,得到检查报告,以验证冗余优化的正确性。另外,在得到优化后的网表之后,本发明能够自动产生用于后续逻辑等价性检查的验证配置文件。
[0067]基于上述本发明各实施例所公开的一种减少ASIC设计逻辑冗余的方法,为了便于本领域技术人员理解本发明所提供的技术方案,在本发明再一实施例中,参考图4,本实施例结合本发明技术方案和实际应用展示了逻辑冗余的几种可能情况,同时通过这几种情况的说明可以对本发明的内容及实施过程作一个直观的介绍:
[0068]在图中寄存器1、寄存器2作为ASIC逻辑的存储单元把组合逻辑分成前后两部分。通过时序控制,寄存器能够按节拍保存其前部分组合逻辑的输出,并为其后部分的组合逻辑提供输入值。芯片输出端口与寄存器一样都可用于对其前部分的逻辑输出进行观测,它们统称为测试的观测点。
[0069]冗余逻辑的一种类别为无负载冗余,是指ASIC逻辑的输出未连接有效的观测点,不能对后续逻辑进行控制。如图中的组合逻辑C和寄存器I,若它们后面未连接逻辑单元或输出端口,则它们为无负载冗余逻辑,可以在冗余优化中被删除。同时该逻辑又是其前部分逻辑的负载。如图中若组合逻辑A只有寄存器I为其唯一的观测点,当寄存器I被删除后,组合逻辑A也成为无负载冗余逻辑。同理,对冗余逻辑的分析可以根据逻辑结构一步一步往前推进。
[0070]冗余逻辑的另一类别为自反馈冗余,是指ASIC逻辑的观测寄存器的输出值除反馈至其前部分组合逻辑外,无其它观测点。如图中的逻辑门2、逻辑门3、组合逻辑B、寄存器2构成自反馈环路。在组合逻辑A、组合逻辑C和寄存器I被冗余删除后,寄存器2的输出除反馈至该环路本身外,没有其它观测点。该反馈环路对其它逻辑不起控制作用,寄存器2仅能起到观测作用。从功能控制的观点看,该反馈环路为自反馈冗余,可以在冗余优化中被删除。
[0071]目前业界的EDA工具对某些类别的冗余逻辑能够做优化处理,但仍有许多冗余类别处理不好。如上述的无负载冗余,某些综合工具能够识别并删除,但对自反馈冗余却并不作处理。本发明的作用即对这些EDA工具处理不好的逻辑冗余进行优化。在本发明的冗余识别过程中,识别算法通过对各设计逻辑进行冗余特征分析,确定逻辑冗余的存在。如图中寄存器1、组合逻辑C无后续观测点,它们满足无负载冗余的特征。但寄存器2存在后续观测点,即寄存器I和它本身,不符合无负载冗余的特征。在本发明的冗余分类过程,分类算法会对满足冗余特征的逻辑进一步分析细化,进行类别划分。同时对冗余逻辑进行追踪,查找冗余逻辑边界。如图中寄存器I被认定为无负载冗余后,会根据无负载冗余追踪算法继续向前查找该类冗余逻辑的边界。由于逻辑门3的输出分别传递给组合逻辑A和组合逻辑B,逻辑门3之前部分逻辑信号存在两个观测
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1