1.一种基于层次化处理与分簇约束的多阈值单元替换方法,其特征在于,包括:参数提取阶段、参数分析计算阶段、待替换电路节点选取阶段;
所述参数提取阶段,用于读取电路网表与设计约束文件、统计组合逻辑电路节点、获取电路节点的单元延迟、静态功耗及时序路径数;
所述参数分析计算阶段,用于计算电路节点的单元延迟变化量、静态功耗变化量、静态功耗变化量与单元延迟变化量的比值;
所述待替换电路节点选取阶段,用于选取满足以下条件的电路节点:该处电路节点采用高阈值类型的标准单元后依然满足设计约束条件;
所述基于层次化处理与分簇约束的多阈值单元替换方法的实现步骤如下:步骤1:读取电路网表与设计约束文件进行静态时序分析,统计组合逻辑单元,将组合逻辑单元作为电路节点;
步骤2:访问电路节点,获取静态功耗与单元延迟值,统计电路节点的时序路径数,将所有电路节点全部替换为高阈值类型的标准单元,获取静态功耗与单元延迟值,然后将所有电路节点全部替换回原阈值类型的标准单元;
步骤3:计算步骤2中电路节点替换前后的静态功耗变化、单元延迟变化与权重;其中,静态功耗变化量等于低阈值类型静态功耗值减高阈值类型静态功耗值,单元延迟变化量等于高阈值类型单元延迟值减低阈值类型单元延迟值,权重等于静态功耗变化量除以单元延迟变化量;
步骤4:将步骤2获取的电路节点时序路径数按数值的大小排序,剔除其中数值相等的值得到时序路径序列;根据此序列将电路节点分为多层,时序路径序列中的最小值对应顶层电路节点,第二小的数值对应第二层电路节点,依次类推,每层电路节点对应的时序路径数值为该层电路节点的分层参数;
步骤5:访问顶层电路节点,并执行步骤6‑8,直到顶层电路节点全部访问结束,访问第二层电路节点,重复执行步骤6‑8,直到第二层电路节点全部访问结束,依次类推,直到所有层访问结束,最后执行步骤10;
步骤6:追溯选中的电路节点所在所有路径中最差的时序路径;
步骤7:访问最差时序路径中的所有电路节点,筛选出该路径中处于当前层的电路节点,将此类同层同路径的电路节点设为同簇电路节点,在该层电路节点中将该簇电路节点标记为已访问;
步骤8:获取该簇电路节点的权重,作为处理该簇电路节点的优先级参数,其中权重越大,优先级越高,从优先级高的电路节点依次访问,并执行步骤9,直到该簇电路节点全部访问结束,然后替换待替换电路节点并更新时序;
步骤9:获取时序路径的时序余量,第一次访问该路径的电路节点时时序余量由EDA工具提供,再次访问该路径中电路节点时,由前一个电路节点单元延迟变化量与路径时序余量的比较结果提供;比较电路节点单元延迟变化量与路径时序余量,如果电路节点单元延迟变化量小于时序余量,将其列为待替换电路节点,并将路径时序余量赋值为路径时序余量与电路单元延迟变化量的差值;
步骤10:输出待替换电路节点,供后续ASIC设计流程中使用。