1.基于关键路径分区的生成式异构逻辑优化方法,其特征在于,所述方法包括:步骤S1:构建针对数字逻辑电路关键路径的强化学习分区智能体模型;
步骤S2:将数字逻辑电路通过针对数字电路关键路径的强化学习图分区智能体模型进行分区,得到多个分区电路;
步骤S3:多个分区电路采用强化学习优化模型自动进行优化空间探索,得到多个优化后分区电路;
步骤S4:将各个优化后分区电路进行合并,获得最终优化结果;
步骤S1具体是:
S101:构建数字逻辑电路转图:
获取不同数字逻辑电路,构建数据集;
将数据集中的数字逻辑电路转换为AIG图格式,得到数字逻辑电路转图;根据原始数字逻辑电路中逻辑功能描述,将其逻辑功能化简为“逻辑与”和“逻辑非”操作,在数字逻辑电路转图中每个节点代表“逻辑与”功能,每条边代表节点之间的连接关系,同时边在翻转情况下代表“逻辑非”功能;
S102:标记电路关键路径:
标记电路关键路径至步骤S101中所得数字逻辑电路转图上;其中电路关键路径为数字逻辑电路中时延最长路径,也就是数字逻辑电路转图中层级最多的路径;
然后将所有的关键路径节点在步骤S101中所得数字逻辑电路转图上找到对应节点,以及这些节点之间的边,标记为关键路径,最终得到具有关键路径信息的待分区电路表征图;
S103:利用强化学习A2C模型对具有关键路径信息的待分区电路表征图进行分区操作,并计算单步分区奖励函数 更新模型参数;
S104:对数据集中的所有数字逻辑电路重复步骤S101至步骤S103,直到强化学习A2C模型收敛,获得针对数字逻辑电路关键路径的强化学习分区智能体模型。
2.根据权利要求1所述方法,其特征在于,步骤S102中,所述电路关键路径的获取具体是:通过对数字逻辑电路中所有PO进行深度优先搜索,遍历该PO下所有路径中每个节点的子节点,若该子节点不是基本输入PI且level数为父节点level数减1,则说明该子节点属于电路关键路径,反之则认为该子节点不属于电路关键路径,直至得到所有关键路径节点。
3.根据权利要求1所述方法,其特征在于,步骤S103中,强化学习A2C模型训练过程中的单步损失函数 为: 式(1)
式(2)
其中 表示模型参数, 表示 时刻图状态, 表示t时刻选择的动作, 表示在 下的概率分布, 表示 估计值,表示损失系数; 表示折扣系数, 表示 时刻的单步奖函数;
引入电路关键路径后的t时刻单步奖励函数 为:
式(3)
式(4)
式(5)
其中 为执行单步分区操作后图状态,为关键路径因数; 为当前分区操作关键路径被切割的次数; 为分区归一化函数;G为分区后的图状态,Vn代表分区n, 为分区的容量函数, 函数为统计分区切割的边数量;Q∈[1,n],deg(v)函数为节点的度函数。
4.根据权利要求1所述方法,其特征在于,所述步骤S2包括以下分步骤:S201:对数字逻辑电路进行图分区:
将待分区的数字逻辑电路转换成AIG图格式,然后输入至训练好的强化学习图分区智能体模型进行分区,得到具有关键路径的图分区信息;
S202:对数字逻辑电路进行电路分区:
根据图分区信息转换为节点分区信息,随后对原始数字逻辑电路进行电路分区;然后对每个电路分区遍历原始数字逻辑电路的每个节点,根据每个节点分区信息构建分区电路。
5.根据权利要求4所述方法,其特征在于,步骤S202中,所述根据每个节点分区信息构建分区电路具体是:对每个电路分区进行每个节点的遍历,若当前节点本身是原始数字逻辑电路的PI或PO,则在分区电路中添加为PI或PO;若当前节点不是PI或PO且当前节点的扇入节点属于当前节点的分区,则将当前节点添加到该分区电路中;若当前节点不是PI或PO且当前节点的扇入节点不属于当前节点的分区,则将当前节点的扇入节点在分区电路中添加为PI;若当前节点不是PI或PO且当前节点的扇出节点不属于当前节点的分区,则将当前节点的扇出节点在新分区电路中添加为PO;若当前节点不是PI或PO且当前节点的扇出节点属于当前节点的分区,则将当前节点添加到该分区电路中。
6.根据权利要求1所述方法,其特征在于,所述步骤S3包括以下分步骤:S301:初始化:
对每个分区电路进行初始化,确定优化环境,设置探索迭代长度;
S302:优化算子选择:
提取分区电路的特征,将分区电路的特征标准化处理后结果和多种优化算子历史数据传入强化学习优化模型,得到当前分区电路最适合的优化算子;
S303:分区电路优化:
根据所选优化算子,对分区电路进行优化,同时计算单步优化奖励函数更新强化学习优化模型;
S304:重复步骤S302‑S303,直至达到最大迭代次数,获得最终的多个优化后分区电路。
7.根据权利要求6所述方法,其特征在于,步骤S302中,所述分区电路的特征包括数字逻辑电路转图的节点数量、边的数量、电路对应AIG图的层级数量、锁存器的数量、“逻辑与”门和“逻辑非”门的占比、工艺映射后数字逻辑电路最大扇入数量和扇出数量、逻辑节点平均扇入数量和扇出数量。
8.根据权利要求6所述方法,其特征在于,步骤S303中,所述单步优化奖励函数为: 式(6)
式(7)
其中 和 分别为分区电路进行工艺映射后的时延与面积,为权重系数; 表示k时刻的电路状态,表示迭代次数。
9.根据权利要求1所述方法,其特征在于,所述步骤S4具体是:根据原始节点分区信息,遍历各个优化后分区电路的PO,判断该PO是否为原始数字逻辑电路的PO,若是则在合并电路中添加PO,若不是则说明该PO为原始数字逻辑电路中的内部节点,向合并电路中添加内部节点;
遍历各个优化后分区电路的内部节点,在合并电路中相应添加对应内部节点;
遍历各个优化后分区电路的PI,判断该PI是否为原始数字逻辑电路的PI,若是则在合并电路中添加PI;若不是则说明该PI为原始数字逻辑电路中的内部节点,向合并电路中添加内部节点。