1.一种基于预测反馈的电路逻辑优化方法,其特征在于,所述方法包括以下步骤:构建逻辑综合的数据集;所述数据集包含RTL Verilog描述的电路和由逻辑综合工具提供的多个优化算子排列组合的优化序列;将电路逻辑综合后的面积和延迟作为数据集的标签;
对数据集进行预处理;
构建预测模型并利用预处理后的数据集进行训练;
构建逻辑优化模型并利用预处理后的数据集进行训练;所述逻辑优化模型包括预测模型模块、Transformer模块和强化学习模块;所述预测模型模块用于预测电路映射后的面积和延迟,作为强化学习模型的结果评估器;所述Transformer模块用于提取基于预测模型结果和优化序列的特征;所述强化学习模块用于将Transformer模块提取后的特征作为当前状态,并根据当前状态选择电路合适的优化算子;
利用训练好的逻辑优化模型在电路上进行逻辑优化。
2.根据权利要求1所述的方法,其特征在于,所述预处理包含如下步骤:将RTL Verilog描述的电路转换为AIG格式的电路,根据AIG格式电路构建有向无环图;其中V为节点的集合,包括逻辑与门节点和逻辑非门节点;E为边的集合,边表示节点间的连接关系;
根据AIG格式电路获得统计特征;所述统计特征包括主要输入数量、主要输出数量、AND节点数量、边数量和图的深度;
根据有向无环图 获取节点特征;所述节点特征包括节点类型、节点的逻辑级别、扇入数量和扇出数量;
将所有优化算子分别映射到一个唯一的数字索引,得到数字编码后的优化序列;
将电路逻辑综合后的面积和延迟进行归一化处理。
3.根据权利要求2所述的方法,其特征在于,所述节点类型是0或1,其中0代表AND节点,
1代表NOT节点;所述节点的逻辑级别是指从任何主输入到节点的最长路径上的节点数量;
所述扇入数量是指该节点的输入数量;所述扇出数量是指该节点的输出数量。
4.根据权利要求1所述的方法,其特征在于,所述预测模型包含图神经网络模块、循环神经网络模块和解码器模块;
所述图神经网络模块的输入为统计特征和节点特征,包括两个分支:第一分支包括依次串联的第一GAT层、激活函数层、第一池化层、第二GAT层和第二池化层;第二分支包括依次串联的第一线性层、激活函数层、第二线性层;将两个分支的输出拼接后作为所述图神经网络模块的输出;
所述循环神经网络模块的输入为优化序列,具体包括依次串联的第一LSTM层、第二LSTM层、注意力机制层;
将所述循环神经网络模块的输出和所述图神经网络模块的输出拼接后作为所述解码器的输入;所述解码器包括依次串联的第一线性层、第一激活函数层、第二线性层、第二激活函数层、第三线性层。
5.根据权利要求4所述的方法,其特征在于,所述第一GAT层和第二GAT层通过注意力机制学习不同邻居的权重分配,聚合邻居节点特征,实现更新自身节点特征。
6.根据权利要求1所述的方法,其特征在于,逻辑优化模型的训练过程包括以下步骤:构建强化学习的动作空间,所述动作空间中的动作为优化算子;
构建强化学习的奖励函数,以减少预测后的面积和延迟为目标;所述奖励函数由预测模型提供的预测值与目标值之间的差异计算得到;
将预训练好的预测模型作为结果评估器,所述的预测模型根据电路的统计特征、节点特征和优化序列来预测映射后的面积和延迟;
利用Transformer模块对预测后的面积、延迟和当前优化序列进行特征提取,将提取得到的特征形成状态表示向量来作为强化学习模块的状态,以此增强状态的全局感知能力;
所述强化学习模块基于输入的状态,利用策略网络生成动作;所述动作用于选择当前状态下的面积与延迟乘积最小的优化算子,并据此更新当前优化序列,形成新的候选优化序列;
利用预处理后的数据集对逻辑优化模型进行训练。
7.根据权利要求6所述的方法,其特征在于,所述强化学习模块包含状态、多头策略网络和价值网络;
其中状态由Transformer模块得到;
所述多头策略网络包括两个输出头,分别用于生成位置选择的概率分布和优化算子选择的概率分布,从而联合决定在当前状态下应在序列中哪一位置应用何种优化算子;
所述价值网络对当前状态进行评估,并结合实际反馈计算优势函数,以优化策略网络的参数更新。
8.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1‑7任一项所述方法。
9.一种机器可读存储介质,其特征在于,该机器可读存储介质存储有机器可执行指令, 该机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现权利要求1‑
7任一项所述方法。