CN113283213B - 一种基于机器学习的电路设计系统及方法 - Google Patents
一种基于机器学习的电路设计系统及方法 Download PDFInfo
- Publication number
- CN113283213B CN113283213B CN202110810656.XA CN202110810656A CN113283213B CN 113283213 B CN113283213 B CN 113283213B CN 202110810656 A CN202110810656 A CN 202110810656A CN 113283213 B CN113283213 B CN 113283213B
- Authority
- CN
- China
- Prior art keywords
- stage
- sub
- model
- circuit diagram
- circuit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明公开了一种基于机器学习的电路设计系统及方法,其中电路设计方法通过利用上一设计阶段的模型来对当次设计阶段进行运算,生成当次设计阶段的指导电路图,供用户进行参考修正,并利用当次设计阶段的指导电路图对上一阶段模型进行训练,使得在电路设计过程中的不同阶段,分别进行模型的学习和训练,并以修正后的电路图作为模型的输入,输出指导电路图,使得模型随着研发设计过程中不断进行优化,相比于现有的内部参数固化的模型而言,本发明实施例训练得到的模型能够适应电路设计的变化趋势,以匹配具体设计人员的设计习惯,同时能够与电路设计整体发展趋势相匹配,能够适应电路设计的变化趋势,在提高电路设计的效率的同时,不断优化模型。
Description
技术领域
本发明涉及电路设计技术领域,具体涉及一种基于机器学习的电路设计系统及方法。
背景技术
有源电路是指包含有电子器件(如电子管、晶体管、集成电路等)的电路,有源电路的设计相比于无源电路而言,其复杂程度高,变化因素较多。现有的有源电路的设计都是由技术人员根据经验进行设计,但是由于电路结构和器件参数的复杂多变,技术人员在设计时往往会走很多弯路,对电路结构或参数进行多达几百次的调整和改进,导致电路设计效率较低。
基于现有的电路设计方案,以及基于目前关于深度学习相关技术的成熟度,已经出现了将深度学习技术应用于电路设计中。然而,现有的电路设计方案往往是针对无源电路,或者是通过一定量的样本来对神经网络进行训练学习,当模型达到收敛之后,直接将模型用于电路设计。前者由于是针对无源电路,其电路的复杂性和多变性与有源电路并不在一个数量级,可参考性不高;后者则是由于模型本身在训练完成之后,其内部参数固化,其模型只能适用于一个阶段或者一个类型的电路设计,无法适应电路设计的变化趋势,例如,无法匹配具体设计人员的设计习惯,也无法与电路设计整体发展趋势相匹配,这使得原有的模型较为僵化,只能输出一种风格或者类型的电路。
发明内容
因此,本发明要解决现有技术中模型参数固化,无法适应电路设计的变化趋势和用户的设计习惯的技术问题,从而提供一种基于机器学习的电路设计系统及方法。
为了实现上述目的,本发明实施例提供了一种用于电路设计的模型训练方法,包括:获取上次设计阶段训练得到的上一阶段模型;获取当次设计阶段的原始电路设计图和目标参数;将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中,得到第N子阶段的指导电路图,N取1,2,…M,M为自然数;对所述第N子阶段的指导电路图进行仿真,得到仿真结果;当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第N子阶段的指导电路图对所述上一阶段模型进行训练,得到第N子阶段模型;将所述第N子阶段模型作为所述上一阶段模型,将所述第N子阶段修正后的电路图替换掉所述原始电路设计图,将N的值加1,返回执行将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中的步骤,其中,所述第N子阶段修正后的电路图为用户参考所述第N子阶段的指导电路图修正后的电路图;当所述仿真结果符合所述目标参数要求时,将第N子阶段的指导电路图作为符合所述目标参数的电路图;获取所有子阶段经过修正后的电路图;利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,所述当次阶段模型用于在下一设计阶段生成指导电路图。
可选地,通过以下步骤判断所述仿真结果是否符合所述目标参数:判断所述仿真结果中的电路参数与所述目标参数的偏差是否小于预设阈值;当所述偏差大于等于所述预设阈值时,确定所述仿真结果不符合所述目标参数要求;当所述偏差小于所述预设阈值时,确定所述仿真结果符合所述目标参数要求。
可选地,还包括:接收用于保存修正后的电路图的保存指令;基于所述保存指令触发预设程序,以将所述修正后的电路图自动存储至代码仓库。
可选地,还包括:判断保存修正后的电路图的次数是否达到预设次数;当达到所述预设次数时,对保存的修正后的电路图进行仿真,得到仿真结果;将所述仿真结果与所述修正后的电路图一起用于所述第M子阶段模型的训练。
为了实现上述目的,本发明实施例还提供了一种基于机器学习的电路设计系统,包括:第一获取模块,用于获取上次设计阶段训练得到的上一阶段模型;第二获取模块,用于获取当次设计阶段的原始电路设计图和目标参数;第一生成模块,用于将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中,得到第N子阶段的指导电路图,N取1,2,…M,M为自然数;第一仿真模块,用于对所述第N子阶段的指导电路图进行仿真,得到仿真结果;第一训练模块,用于当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第N子阶段的指导电路图对所述上一阶段模型进行训练,得到第N子阶段模型;第一返回模块,用于将所述第N子阶段模型作为所述上一阶段模型,将所述第N子阶段修正后的电路图替换掉所述原始电路设计图,将N的值加1,返回执行将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中的步骤,其中,所述第N子阶段修正后的电路图为用户参考所述第N子阶段的指导电路图修正后的电路图;确定模块,用于当所述仿真结果符合所述目标参数要求时,将第N子阶段的指导电路图作为符合所述目标参数的电路图;第三获取模块,用于获取所有子阶段经过修正后的电路图;第二训练模块,用于利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,所述当次阶段模型用于在下一设计阶段生成指导电路图。
为了实现上述目的,本发明实施例还提供了一种用于电路设计的机器学习模型训练方法,包括:获取上次设计阶段训练得到的上一阶段模型;获取当次设计阶段的原始电路设计图和目标参数;将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中,得到第N子阶段的指导电路图,N取1,2,…M,M为自然数;对所述第N子阶段的指导电路图进行仿真,得到仿真结果;当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第N子阶段的指导电路图对所述上一阶段模型进行训练,得到第N子阶段模型;将所述第N子阶段模型作为所述上一阶段模型,将所述第N子阶段修正后的电路图替换掉所述原始电路设计图,将N的值加1,返回执行将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中的步骤,其中,所述第N子阶段修正后的电路图为用户参考所述第N子阶段的指导电路图修正后的电路图;当所述仿真结果符合所述目标参数时,获取所有子阶段经过修正后的电路图;利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,所述当次阶段模型用于在下一设计阶段生成指导电路图。
可选地,所述第M子阶段模型包括多个子模型,所述修正后的电路图包括与所述多个子模型一一对应的多个子电路模块;其中,所述利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,包括:根据所述多个子电路模块生成第一矩阵,所述第一矩阵包括各个子电路模块的器件参数和用于表示各个子电路模块之间的连接关系的参数;利用所述第一矩阵分别对所述多个子模型进行训练,得到所述当次设计阶段的当次阶段模型。
可选地,所述利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,包括:根据所述多个子电路模块之间设计阶段相关性生成第二矩阵,所述第二矩阵包括用于表示各个子电路模块设计时机的参数;利用所述第二矩阵分别对所述多个子模型进行训练,得到所述当次设计阶段的当次阶段模型。
为了实现上述目的,本发明实施例还提供了一种用于电路设计的模型训练系统,包括:第四获取模块,用于获取上次设计阶段训练得到的上一阶段模型;第五获取模块,用于获取当次设计阶段的原始电路设计图和目标参数;第二生成模块,用于将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中,得到第N子阶段的指导电路图,N取1,2,…M,M为自然数;第二仿真模块,用于对所述第N子阶段的指导电路图进行仿真,得到仿真结果;第四训练模块,用于当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第N子阶段的指导电路图对所述上一阶段模型进行训练,得到第N子阶段模型;第二返回模块,用于将所述第N子阶段模型作为所述上一阶段模型,将所述第N子阶段修正后的电路图替换掉所述原始电路设计图,将N的值加1,返回执行将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中的步骤,其中,所述第N子阶段修正后的电路图为用户参考所述第N子阶段的指导电路图修正后的电路图;第六获取模块,用于当所述仿真结果符合所述目标参数时,获取所有子阶段经过修正后的电路图;第三训练模块,用于利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,所述当次阶段模型用于在下一设计阶段生成指导电路图。
为了实现上述目的,本发明实施例还提供了一种计算机设备,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行上述的方法。
为了实现上述目的,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行上述的方法。
根据本发明实施例,通过利用上一设计阶段的模型(即上一阶段模型)来对当次设计阶段进行运算,生成当次设计阶段的指导电路图,供用户进行参考修正,并利用当次设计阶段的指导电路图对上一阶段模型进行训练,使得在电路设计过程中的不同阶段,分别进行模型的学习和训练,并充分考虑到用户的修正内容,以修正后的电路图作为模型的输入,输出指导电路图,使得模型随着研发设计过程中不断进行优化,相比于现有的内部参数固化的模型而言,本发明实施例训练得到的模型能够适应电路设计的变化趋势,以匹配具体设计人员的设计习惯,同时能够与电路设计整体发展趋势相匹配,能够适应电路设计的变化趋势,在提高电路设计的效率的同时,不断优化模型。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1中用于电路设计的机器学习模型训练方法的一个具体示例的流程图;
图2为本发明实施例2中基于机器学习的电路设计方法的一个具体示例的流程图;
图3为本发明实施例3中用于电路设计的机器学习模型训练系统一个具体示例的原理框图;
图4为本发明实施例4中基于机器学习的电路设计系统的一个具体示例的原理框图;
图5是本发明的计算机设备的一个实施例的结构示意图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
在涉及机器学习的相关技术中,通常是需要先训练出一个网络模型之后,再使用该网络模型进行电路设计或者其他的应用。本发明实施例主要针对电路设计相关领域,采用机器学习相关技术。但是为了使训练得到的模型能够适应电路设计的变化趋势,匹配具体设计人员的设计习惯,本发明将模型的训练过程和电路设计过程相结合,使二者相辅相成,从而达到使训练的模型符合用户(设计人员)的设计习惯。因此,在具体描述电路设计过程的方案之前,先介绍本发明的模型训练方法。
实施例1
本发明实施例提供了一种用于电路设计的模型训练方法,其中,训练得到的模型用于进行电路图设计,在用户研发过程中,生成指导电路图,供用户参考和使用。该模型可以是采用神经网络构成的神经网络模型,通过训练和学习,达到人工智能化,以提高电路设计效率。本发明实施例中所述的电路可以是有源电路,也可以是无源电路,由于有源电路的复杂性和多变性,本发明实施例中所述的模型在有源电路设计应用中效果更加明显,能够极大地提高有源电路设计的效率。
如图1所示,本发明实施例的一种用于电路设计的模型训练方法,包括:
步骤S101,获取上次设计阶段训练得到的上一阶段模型。
由于电路设计在不同的阶段需要设计不同的电路,每次进行当前需求下的电路设计时,需要进行一系列的电路设计和修正过程。本发明实施例中,把每次设计阶段作为一个整体,在每次设计阶段,应用上次设计阶段训练得到的模型(即上一阶段模型)来生成当次设计阶段的指导电路图,然后再利用当次设计阶段生成的指导电路图对上一阶段模型进行训练。
需要说明的是,本发明实施例中,所述的“上次设计阶段”和“当次设计阶段”均属于相对概念,例如,第二次设计阶段的作为当次设计阶段时,那么第一次设计阶段即为上次设计阶段;通过当第三次设计阶段为当次设计阶段时,第二次设计阶段则为上次设计阶段。上次设计阶段对应的模型为上一阶段模型,当次设计阶段对应的模型为当次阶段模型。上一阶段模型用于当次设计阶段,当次阶段模型用于下一设计阶段。
步骤S102,获取当次设计阶段的原始电路设计图和目标参数。
当次设计阶段的原始电路设计图为用户在当次设计阶段设计并绘制的原始电路设计图,以该电路图为基础进行修正和调试。目标参数为最终电路图所需要达到的设计参数。
步骤S103,将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中,得到第N子阶段的指导电路图,N取1,2,…M,M为自然数。所述M为不定自然数,具体可以是仿真结果满足目标参数要求时,N的取值。
步骤S104,对所述第N子阶段的指导电路图进行仿真,得到仿真结果。
步骤S105,当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第N子阶段的指导电路图对所述上一阶段模型进行训练,得到第N子阶段模型。
步骤S106,将所述第N子阶段模型作为所述上一阶段模型,将所述第N子阶段修正后的电路图替换掉所述原始电路设计图,将N的值加1,返回执行将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中的步骤,其中,所述第N子阶段修正后的电路图为用户参考所述第N子阶段的指导电路图修正后的电路图。
本发明实施例中,每个子阶段生成的指导电路图,都用于供用户(也即是用户或者研发人员或者设计人员)进行参考,用户参考之后,依据其个人设计习惯和经验,对指导电路图进行修正,然后得到修正后的电路图。本发明实施例中,用户对指导电路图修正的内容可以是整体修正或者改动,也可以是局部改动。例如,可以将电路图划分为多个子电路模块,在进行指导电路图生成的过程中,每个子阶段生成一个子电路模块的指导电路图(或者是仅对原始电路设计图中的相应的子电路模块,生成的指导电路图,其他子模块电路不变)。这样,用户在进行参考修正的过程中,也仅需要对相应的子模块进行修正,得到局部修正的子模块。
步骤S107,当仿真结果符合所述目标参数要求时,获取所有子阶段生成的指导电路图。
步骤S108,利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,所述当次阶段模型用于在下一设计阶段生成指导电路图。
本发明实施例中,M可以是不定自然数,其最大值为仿真结果满足所述目标参数要求时的N的值。当N的值取1时,先将原始电路设计图和所述目标参数输入到上一阶段模型中,生成第1子阶段的指导电路图;然后对其进行仿真,得到仿真结果;利用仿真结果和第1子阶段的指导电路图对上一阶段模型进行训练,得到第1子阶段模型;用户基于自身经验和设计习惯对指导电路图进行修正,得到修正后的电路图,然后原始电路设计图被第1子阶段修正后的电路图替换,上一阶段模型被第1子阶段模型替换,然后N的值加1,也即是N的值取2时,返回到“将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中”的步骤,也即是执行:将第1子阶段修正后的电路图和目标参数输入到第1子阶段模型中,生成第2子阶段的指导电路图,然后再执行后续仿真和训练步骤,以此类推。
本发明实施例中,可以将第M子阶段模型作为当次设计阶段的当次阶段模型。在确定出模型输出的指导电路图符合目标参数要求时,表示该指导电路图已经符合设计需求,因此可以将其作为最终的电路设计图。在此基础上,再利用所有子阶段经过修正后的电路图对第M子阶段模型进行一次加强训练,充分考虑用户的设计习惯和经验(因为修正后的电路图均是经过用户修正或者确认过的电路图),使得训练出的模型更加匹配用户的设计思路。进一步地,通过在当次设计阶段中每个子阶段利用生成的指导电路图依次对模型进行迭代训练,从而实现对模型的不断优化和改进,提高了模型输出结果的准确性和适应性。
根据本发明实施例,通过利用上一设计阶段的模型(即上一阶段模型)来对当次设计阶段进行运算,生成当次设计阶段的指导电路图,供用户进行参考修正,并利用当次设计阶段的指导电路图对上一阶段模型进行训练,使得在电路设计过程中的不同阶段,分别进行模型的学习和训练,并充分考虑到用户的修正内容,以修正后的电路图作为模型的输入,输出指导电路图,使得模型随着研发设计过程中不断进行优化,相比于现有的内部参数固化的模型而言,本发明实施例训练得到的模型能够适应电路设计的变化趋势,以匹配具体设计人员的设计习惯,同时能够与电路设计整体发展趋势相匹配,能够适应电路设计的变化趋势,在提高电路设计的效率的同时,不断优化模型。
进一步地,本发明实施例中,可以通过以下方式判断仿真结果是否满足目标参数的要求:
S1,判断所述仿真结果中的电路参数与所述目标参数的偏差是否小于预设阈值;本发明实施例中,预设阈值可以根据用户的经验进行设置。
S2,当所述偏差大于等于所述预设阈值时,确定所述仿真结果不满足所述目标参数要求。
S3,当所述偏差小于所述预设阈值时,确定所述仿真结果满足所述目标参数要求。
本发明实施例中,当不满足目标参数要求时,可以对所述第N子阶段的指导电路图进行标记;其中,该标记用于标注第N子阶段的指导电路图的仿真结果不满足所述目标参数,可以是将其作为负样本来进行训练。
在一个示例中,当第1阶段对某一类型电路进行设计完成后,即可得到第1阶段模型训练结果即第1阶段模型。
当用户对同一类型电路进行第2阶段的设计时,第2-1阶段设计时(第2-1次设计指的是第2阶段对同一类型电路进行设计时的第1次尝试,也即是第2阶段的第1子阶段),基于第1阶段模型,将原始电路设计图作为第1阶段模型的输入,输出该第2-1阶段的指导电路图;对第1阶段模型的输出结果(指导电路图)进行仿真,得到仿真结果,该仿真结果可以反馈出生成的指导电路图是偏离设计目标还是接近设计目标(通过目标参数进行判断)。用户还对该指导电路图进行修正,得到修正后的电路图,并将修正后的电路图作为下一子阶段的模型输入。
利用上述仿真结果对上述第1阶段模型进行第2-1次训练,得到第2-1阶段模型(即本发明实施例中当次设计阶段的第1子阶段模型),并利用上述第2-1阶段模型替换第1阶段电路设计时的第1阶段模型。
然后,当用户进行第2-2阶段设计时(第2-2阶段指的是第2阶段的第2子阶段设计),基于第2-1阶段模型,将用户在第2-1阶段的修正后的电路图作为其输入,输出第2-2阶段的指导电路图,根据该指导电路图进行仿真,得到仿真结果,该仿真结果可以反馈出生成的指导电路图是偏离设计目标还是接近设计目标。
利用仿真结果和生成的指导电路图对上述第2-1阶段模型进行训练,即进行第2-2阶段训练,得到第2-2阶段模型,并利用上述第2-2阶段模型替换第2-1阶段模型。用户还对该指导电路图进行修正,得到修正后的电路图,并将修正后的电路图作为下一子阶段的模型输入。
以此类推,直至第2-M次设计后,得到第2阶段设计完成的电路图。
上述过程中,每个子阶段输出的指导电路图,用户均会根据其设计习惯或者而经验进行修正和确认,然后对修正后的电路图均进行保存,再利用第2阶段(包括每个子阶段)修正后的电路图对第2-M阶段模型进行训练,得到第2阶段模型。
当用户对同一类型电路进行第3-1阶段电路设计时,可以重复上述步骤,以达到生成最终的电路图和模型训练结果。
本发明实施例中,修正后的指导电路图为用户(即用户)在模型输出结果(指导电路图)的基础上,基于其自身已有的经验参考给指导电路图,然后修正之后的电路图。本发明实施例中,每次模型输出指导电路图之后,均可以由用户进行电路图修正,然后利用指导电路图进行仿真,得到仿真结果;然后再利用指导电路图对上一子阶段的模型进行训练,得到当前子阶段的模型。
本发明实施例中,利用修正后的电路图进行仿真和训练,能够使得模型输出结果匹配用户的设计习惯,提高了模型输出结果的适配性。
作为本发明实施例的一种可选实施方式,本发明所述提供的训练方法还包括:接收用于保存修正后的指导电路图的保存指令;基于所述保存指令触发预设程序,以将所述修正后的指导电路图自动存储至代码仓库。
本发明实施例所提供的方案,在每次用户修正指导电路图之后,均将修正后的电路图进行保存,本实施例中所述的“保存”是将修正后的指导电路图存储至代码仓库,现有技术中在编辑界面的保存通常是指保存编辑之后的最终版本,而本发明实施例则保存了用户修正的过程文件,相比于现有技术中方案,其保存在用户在修正过程中的每个版本。
具体地,在实际应用过程中,电路开发平台(例如EDA电路设计软件)在每次设计师点击保存按钮时,自动保存所有修改记录。具体实现方式为,修改保存按钮的代码,即在实际保存文件后在程序返回到编辑、关闭等其他代码前插入一行git程序,用git程序把刚刚保存的文件对应的网表文件存入代码仓库,git程序可以高效地实现文件的历史版本保存。在进行后续模型训练的过程中,可以从代码仓库中获取相应的指导电路图对应的网表文件。
本发明实施例中,通过采用上述电路图自动保存流程,高效实现全部电路设计图的保存,方便后续模型训练和追溯。
可选地,本发明实施例中,上述训练方法还包括:判断保存修正后的电路图的次数是否达到预设次数;当达到所述预设次数时,对保存的修正后的电路图进行仿真,得到仿真结果;将所述仿真结果与所述修正后的电路图一起用于所述第M子阶段模型的训练。
也即是说,本发明实施例中,用户在进行指导电路图的修正过程中,当修正次数达到一定值时,可以触发一次仿真,对修正后的电路图进行仿真,然后将仿真结果用于后续的模型训练,从而提高模型输出结果的准确性。
需要说明的是,这里所述的仿真是对修正后的电路图进行仿真,与上述实施例中对指导电路图进行仿真不同,这里是在修正次数达到预设次数时,触发仿真,然后将仿真结果与修正后的电路图一起作为阶段性的模型加强训练;而对指导电路图的仿真结果则用于对于子阶段的模型训练。
在一种可选的实施方式中,本发明实施例的网络模型可以由至少两个神经网络组成,其中一个神经网络用于训练指导电路图的各个子电路模块,另一个神经网络则用于训练每个子模块之间的设计时机,也即是子电路模块之间设计时序关系。当然,本发明实施例中,也可以只包含上述神经网络中的一种。
具体地,本发明实施例中所述第M子阶段模型包括多个子模型,所述修正后的电路图包括与所述多个子模型一一对应的多个子电路模块。需要说明的是,本发明实施例中的每个模型均可以包括多个子模型,该多个子模型属于上述神经网络中的一种。在该神经网络中,每个子模型可以对应一个卷积核,也即是说,一个卷积核对应一个子模型,一个子模型对应一个子电路模块。在进行模型训练时,可以对每个子模型分别进行训练。
针对上述训练步骤,所述利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,可以包括:根据所述多个子电路模块生成第一矩阵,所述第一矩阵包括各个子电路模块的器件参数和用于表示各个子电路模块之间的连接关系的参数;利用所述第一矩阵分别对所述多个子模型进行训练,得到所述当次设计阶段的当次阶段模型。
具体地,本发明实施例中,先将完整的修正后的电路图拆分为多个子电路模块,然后进行分门别类存放;然后,获取各个子电路模块的电路器件参数(器件名称、性能参数等等)以及各个电路器件之间的连接关系相关参数,生成第一矩阵,该第一矩阵可以是每个子电路模块对应个第一矩阵,也可以是每个子电路模块对应第一矩阵中的一个或者一部分矩阵参数;再将第一矩阵输入神经网络中训练得到训练后的第M子阶段模型,也即是当次阶段模型。
电路设计过程一般是用户根据大电路的设计需求,将大电路拆分为若干个子电路进行设计,即第一子电路模块设计完成后再对第二子电路模块进行设计,因此,在模型训练时,也可以针对每一个子电路模块进行训练,得到从而得到最终的模型;在用户进行下一设计阶段的电路设计时,用户输入原始电路设计图和目标参数,由于电路的特殊性,每一个子电路模块的原始电路和目标参数类型均不同,因此,可以根据输入的原始电路和目标参数自动调用相应的子模型输出相应的计算得到的子电路。
作为一种可选实施方式,所述利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,包括:根据所述多个子电路模块之间设计阶段相关性生成第二矩阵,所述第二矩阵包括用于表示各个子电路模块设计时机的参数;利用所述第二矩阵分别对所述多个子模型进行训练,得到所述当次设计阶段的当次阶段模型。
具体地,先将完整的修正后的电路图拆分为多个子电路模块,然后进行分门别类存放;然后根据子电路模块设计阶段相关性生成与子电路拓扑设计阶段相关的第二矩阵;再将第二矩阵输入神经网络中训练得到当前子阶段模型;生成指导电路图之后,将该指导电路图中出现的新的子电路模块更新至第二矩阵,将更新后的第二矩阵输入到第M子阶段模型,进行训练。
一个完整的电路设计过程包括若干个子设计阶段,保存的每张修正后的电路图即被认为是一个子设计阶段;根据第二矩阵可以得到子电路1、子电路2、子电路3等各个子电路的设计时机等特征,比如子电路1的修正主要出现在芯片设计初期,子电路2的设计相对于子电路1时间上靠后等特征,即可让模型学习用户进行电路设计时对各个子电路设计的先后顺序等;在用户进行下次完整的电路设计时,用户输入原始电路设计图和目标参数,由于电路的特殊性,每一个子电路模块的原始电路设计图和目标参数类型均不同,因此,可以根据输入的原始电路设计图和目标参数识别出研发人员准备进行设计的下一个子电路模块是什么,而此时,通过训练得到的模型能判断出上一个子电路模块结束后应该进行另一个子电路模块的设计,此时模型则输出上一个子电路模块加上另一个子电路模块的典型电路的整体电路结构,此时,研发人员发现输出了另一个子电路模块的典型电路,则知道子电路模块的设计顺序存在问题,即可快速进行设计顺序的修正。
实施例2
本实施例提供一种基于机器学习的电路设计方法,该电路设计方法与上述实施例中所述的模型训练方法相辅相成,具体用于生成符合目标参数的电路图,如图2所示,该方法包括:
步骤S201,获取上次设计阶段训练得到的上一阶段模型。
步骤S202,获取当次设计阶段的原始电路设计图和目标参数。
步骤S203, 将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中,得到第N子阶段的指导电路图,N取1,2,…M,M为自然数;
步骤S204,对所述第N子阶段的指导电路图进行仿真,得到仿真结果;
步骤S205,当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第N子阶段的指导电路图对所述上一阶段模型进行训练,得到第N子阶段模型;
步骤S206,将所述第N子阶段模型作为所述上一阶段模型,将所述第N子阶段修正后的电路图替换掉所述原始电路设计图,将N的值加1,返回执行将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中的步骤,其中,所述第N子阶段修正后的电路图为用户参考所述第N子阶段的指导电路图修正后的电路图;
步骤S207,当所述仿真结果符合所述目标参数要求时,将第N子阶段的指导电路图作为符合所述目标参数的电路图;
步骤S208,获取所有子阶段经过修正后的电路图;
步骤S209,利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,所述当次阶段模型用于在下一设计阶段生成指导电路图。
上述步骤S201-S206与图1中所述的步骤S101-S106相同,具体描述可以参见上述实施例,这里不再赘述。
本发明实施例的设计方法的主要不同的地方在于,在确定所述仿真结果符合所述目标参数要求时,认定当前子阶段的指导电路图为符合目标参数要求的电路图,也即是最终版本的电路图。
根据本发明实施例,通过利用上一设计阶段的模型(即上一阶段模型)来对当次设计阶段进行运算,以上一设计阶段修正后的电路图作为输入,生成当次设计阶段的指导电路图,并利用当次设计阶段生成的指导电路图对上一阶段模型进行训练,使得在电路设计过程中的不同阶段,分别进行模型的学习和训练,借助用户的修正图来实现模型与用户的习惯相匹配,从而生成符合目标参数的指导电路图,供用户进行参考,减少人工设计的工作量,提高电路设计的效率。
作为一种可选实施方式,可以通过以下步骤判断所述仿真结果是否符合所述目标参数:判断所述仿真结果中的电路参数与所述目标参数的偏差是否小于预设阈值;当所述偏差大于等于所述预设阈值时,确定所述仿真结果不符合所述目标参数要求;当所述偏差小于所述预设阈值时,确定所述仿真结果符合所述目标参数要求。
可选地,本发明实施例的电路设计方法还可以包括:接收用于保存修正后的电路图的保存指令;基于所述保存指令触发预设程序,以将所述修正后的电路图自动存储至代码仓库。具体描述可以参见上述实施例1,这里不再赘述。
作为一种可选实施方式,本发明实施例的电路设计方法还可以还包括:判断保存修正后的电路图的次数是否达到预设次数;当达到所述预设次数时,对保存的修正后的电路图进行仿真,得到仿真结果;将所述仿真结果与所述修正后的电路图一起用于所述第M子阶段模型的训练。具体描述可以参见上述实施例1,这里不再赘述。
通过上述实施例1的模型训练方法和实施例2的设计方法可知,本发明实施例中模型训练过程和电路图设计过程相辅相成,在训练模型之后,利用模型生成指导电路图,生成的指导电路图则用于后续的模型训练,通过这种不断学习和训练的过程中,提高电路图设计效率的同时,保证模型能够适应电路设计的变化趋势,不断进行优化。
实施例3
本实施例提供一种用于电路设计的机器学习模型训练系统,该系统可以用于执行上述实施例1的模型训练方法如图3所示,该系统包括:
第四获取模块301,用于获取上次设计阶段训练得到的上一阶段模型;
第五获取模块302,用于获取当次设计阶段的原始电路设计图和目标参数;
第二生成模块303,用于将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中,得到第N子阶段的指导电路图,N取1,2,…M,M为自然数;
第二仿真模块304,用于对所述第N子阶段的指导电路图进行仿真,得到仿真结果;
第四训练模块305,用于当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第N子阶段的指导电路图对所述上一阶段模型进行训练,得到第N子阶段模型;
第二返回模块306,用于将所述第N子阶段模型作为所述上一阶段模型,将所述第N子阶段修正后的电路图替换掉所述原始电路设计图,将N的值加1,返回执行将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中的步骤,其中,所述第N子阶段修正后的电路图为用户参考所述第N子阶段的指导电路图修正后的电路图;
第六获取模块307,用于当所述仿真结果符合所述目标参数时,获取所有子阶段经过修正后的电路图;
第三训练模块308,用于利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,所述当次阶段模型用于在下一设计阶段生成指导电路图。该系统是与上述实施例1中的模型训练方法相应的系统,其具体描述和技术效果可以参见上述实施例1,这里不再赘述。
实施例4
本实施例提供一种基于机器学习的电路设计系统,该系统可以用于执行上述实施例2的设计方法,如图4所示,该系统包括:
第一获取模块401,用于获取上次设计阶段训练得到的上一阶段模型;
第二获取模块402,用于获取当次设计阶段的原始电路设计图和目标参数;
第一生成模块403,用于将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中,得到第N子阶段的指导电路图,N取1,2,…M,M为自然数;
第一仿真模块404,用于对所述第N子阶段的指导电路图进行仿真,得到仿真结果;
第一训练模块405,用于当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第N子阶段的指导电路图对所述上一阶段模型进行训练,得到第N子阶段模型;
第一返回模块406,用于将所述第N子阶段模型作为所述上一阶段模型,将所述第N子阶段修正后的电路图替换掉所述原始电路设计图,将N的值加1,返回执行将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中的步骤,其中,所述第N子阶段修正后的电路图为用户参考所述第N子阶段的指导电路图修正后的电路图;
确定模块407,用于当所述仿真结果符合所述目标参数要求时,将第N子阶段的指导电路图作为符合所述目标参数的电路图;
第三获取模块408,用于获取所有子阶段经过修正后的电路图;
第二训练模块409,用于利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,所述当次阶段模型用于在下一设计阶段生成指导电路图。
该系统是与上述实施例2中的设计方法相应的系统,其具体描述和技术效果可以参见上述实施例2,这里不再赘述。
本发明的一个实施例中,还提供了一种计算机设备,该计算机设备可以是上述实施例中的后台服务器,其内部结构图可以如图5 所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口,还可以包括显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的计算机设备通过网络连接通信。该计算机程序被处理器执行时以实现一种用于电路设计的模型训练方法或者电路设计图的修正方法,该计算机设备还可以包括显示屏和输入装置,其显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板等。
另一方面,则该计算机设备可以不包括显示屏和输入装置,本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行以下步骤:
获取上次设计阶段训练得到的上一阶段模型;
获取当次设计阶段的原始电路设计图和目标参数;
将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中,得到第N子阶段的指导电路图,N取1,2,…M,M为自然数;
对所述第N子阶段的指导电路图进行仿真,得到仿真结果;
当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第N子阶段的指导电路图对所述上一阶段模型进行训练,得到第N子阶段模型;
将所述第N子阶段模型作为所述上一阶段模型,将所述第N子阶段修正后的电路图替换掉所述原始电路设计图,将N的值加1,返回执行将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中的步骤,其中,所述第N子阶段修正后的电路图为用户参考所述第N子阶段的指导电路图修正后的电路图;
当所述仿真结果符合所述目标参数要求时,将第N子阶段的指导电路图作为符合所述目标参数的电路图;
获取所有子阶段经过修正后的电路图;
利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,所述当次阶段模型用于在下一设计阶段生成指导电路图。
或者,所述处理器通过执行所述计算机指令,从而执行以下步骤:
获取上次设计阶段训练得到的上一阶段模型;
获取当次设计阶段的原始电路设计图和目标参数;
将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中,得到第N子阶段的指导电路图,N取1,2,…M,M为自然数;
对所述第N子阶段的指导电路图进行仿真,得到仿真结果;
当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第N子阶段的指导电路图对所述上一阶段模型进行训练,得到第N子阶段模型;
将所述第N子阶段模型作为所述上一阶段模型,将所述第N子阶段修正后的电路图替换掉所述原始电路设计图,将N的值加1,返回执行将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中的步骤,其中,所述第N子阶段修正后的电路图为用户参考所述第N子阶段的指导电路图修正后的电路图;
当所述仿真结果符合所述目标参数时,获取所有子阶段经过修正后的电路图;
利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,所述当次阶段模型用于在下一设计阶段生成指导电路图。
在一个实施例中,提供了一种可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行:
获取上次设计阶段训练得到的上一阶段模型;
获取当次设计阶段的原始电路设计图和目标参数;
将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中,得到第N子阶段的指导电路图,N取1,2,…M,M为自然数;
对所述第N子阶段的指导电路图进行仿真,得到仿真结果;
当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第N子阶段的指导电路图对所述上一阶段模型进行训练,得到第N子阶段模型;
将所述第N子阶段模型作为所述上一阶段模型,将所述第N子阶段修正后的电路图替换掉所述原始电路设计图,将N的值加1,返回执行将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中的步骤,其中,所述第N子阶段修正后的电路图为用户参考所述第N子阶段的指导电路图修正后的电路图;
当所述仿真结果符合所述目标参数要求时,将第N子阶段的指导电路图作为符合所述目标参数的电路图;
获取所有子阶段经过修正后的电路图;
利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,所述当次阶段模型用于在下一设计阶段生成指导电路图。
或者,所述处理器通过执行所述计算机指令,从而执行以下步骤:
获取上次设计阶段训练得到的上一阶段模型;
获取当次设计阶段的原始电路设计图和目标参数;
将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中,得到第N子阶段的指导电路图,N取1,2,…M,M为自然数;
对所述第N子阶段的指导电路图进行仿真,得到仿真结果;
当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第N子阶段的指导电路图对所述上一阶段模型进行训练,得到第N子阶段模型;
将所述第N子阶段模型作为所述上一阶段模型,将所述第N子阶段修正后的电路图替换掉所述原始电路设计图,将N的值加1,返回执行将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中的步骤,其中,所述第N子阶段修正后的电路图为用户参考所述第N子阶段的指导电路图修正后的电路图;
当所述仿真结果符合所述目标参数时,获取所有子阶段经过修正后的电路图;
利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,所述当次阶段模型用于在下一设计阶段生成指导电路图。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
Claims (11)
1.一种基于机器学习的电路设计方法,其特征在于,包括:
获取上次设计阶段训练得到的上一阶段模型;
获取当次设计阶段的原始电路设计图和目标参数;
将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中,得到第1子阶段的指导电路图;
对所述第1子阶段的指导电路图进行仿真,得到仿真结果;
当仿真结果符合所述目标参数要求时,将第1子阶段的指导电路图作为符合所述目标参数的电路图;
当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第1子阶段的指导电路图对所述上一阶段模型进行训练,得到第1子阶段模型,设置N=1;并依次执行以下步骤A、B、C和D,直到仿真结果符合所述目标参数要求:
步骤A:将第N子阶段修正后的电路图和所述目标参数输入到所述第N子阶段模型中,得到N+1子阶段的指导电路图,其中,所述第N子阶段修正后的电路图为用户参考所述第N子阶段的指导电路图修正后的电路图;
步骤B:对所述第N+1子阶段的指导电路图进行仿真,得到仿真结果;
步骤C:当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第N+1子阶段的指导电路图对所述第N子阶段模型进行训练,得到第N+1子阶段模型;并将N的值加1,返回执行步骤A;
步骤D:当所述仿真结果符合所述目标参数要求时,将第N+1子阶段的指导电路图作为符合所述目标参数的电路图;
获取所有子阶段经过修正后的电路图;
利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,所述当次阶段模型用于在下一设计阶段生成指导电路图,其中,M为仿真结果满足所述目标参数要求时的N的值。
2.根据权利要求1所述的基于机器学习的电路设计方法,其特征在于,通过以下步骤判断所述仿真结果是否符合所述目标参数:
判断所述仿真结果中的电路参数与所述目标参数的偏差是否小于预设阈值;
当所述偏差大于等于所述预设阈值时,确定所述仿真结果不符合所述目标参数要求;
当所述偏差小于所述预设阈值时,确定所述仿真结果符合所述目标参数要求。
3.根据权利要求1所述的基于机器学习的电路设计方法,其特征在于,还包括:
接收用于保存修正后的电路图的保存指令;
基于所述保存指令触发预设程序,以将所述修正后的电路图自动存储至代码仓库。
4.根据权利要求1所述的基于机器学习的电路设计方法,其特征在于,还包括:
判断保存修正后的电路图的次数是否达到预设次数;
当达到所述预设次数时,对保存的修正后的电路图进行仿真,得到仿真结果;
将所述仿真结果与所述修正后的电路图一起用于所述第M子阶段模型的训练。
5.一种基于机器学习的电路设计系统,其特征在于,包括:
第一获取模块,用于获取上次设计阶段训练得到的上一阶段模型;
第二获取模块,用于获取当次设计阶段的原始电路设计图和目标参数;
第一生成模块,用于将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中,得到第1子阶段的指导电路图;
第一仿真模块,用于对所述第1子阶段的指导电路图进行仿真,得到仿真结果;
确定模块,用于当仿真结果符合所述目标参数要求时,将第1子阶段的指导电路图作为符合所述目标参数的电路图;
第一训练模块,用于当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第1子阶段的指导电路图对所述上一阶段模型进行训练,得到第1子阶段模型,设置N=1;
第一返回模块,用于依次执行以下步骤A、B、C和D,直到仿真结果符合所述目标参数要求:
步骤A:将第N子阶段修正后的电路图和所述目标参数输入到所述第N子阶段模型中,得到N+1子阶段的指导电路图,其中,所述第N子阶段修正后的电路图为用户参考所述第N子阶段的指导电路图修正后的电路图;
步骤B:对所述第N+1子阶段的指导电路图进行仿真,得到仿真结果;
步骤C:当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第N+1子阶段的指导电路图对所述第N子阶段模型进行训练,得到第N+1子阶段模型;并将N的值加1,返回执行步骤A;
步骤D:当所述仿真结果符合所述目标参数要求时,将第N+1子阶段的指导电路图作为符合所述目标参数的电路图;
第三获取模块,用于获取所有子阶段经过修正后的电路图;
第二训练模块,用于利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,所述当次阶段模型用于在下一设计阶段生成指导电路图,其中,M为仿真结果满足所述目标参数要求时的N的值。
6.一种用于电路设计的机器学习模型训练方法,其特征在于,包括:
获取上次设计阶段训练得到的上一阶段模型;
获取当次设计阶段的原始电路设计图和目标参数;
将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中,得到第1子阶段的指导电路图;
对所述第1子阶段的指导电路图进行仿真,得到仿真结果;
当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第1子阶段的指导电路图对所述上一阶段模型进行训练,得到第1子阶段模型,设置N=1;并依次执行以下步骤A、B和C,直到仿真结果符合所述目标参数要求:
步骤A:将第N子阶段修正后的电路图和所述目标参数输入到所述第N子阶段模型中,得到N+1子阶段的指导电路图,其中,所述第N子阶段修正后的电路图为用户参考所述第N子阶段的指导电路图修正后的电路图;
步骤B:对所述第N+1子阶段的指导电路图进行仿真,得到仿真结果;
步骤C:当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第N+1子阶段的指导电路图对所述第N子阶段模型进行训练,得到第N+1子阶段模型;并将N的值加1,返回执行步骤A;
当所述仿真结果符合所述目标参数时,获取所有子阶段经过修正后的电路图;
利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,所述当次阶段模型用于在下一设计阶段生成指导电路图,其中,M为仿真结果满足所述目标参数要求时的N的值。
7.根据权利要求6所述的用于电路设计的机器学习模型训练方法,其特征在于,所述第M子阶段模型包括多个子模型,所述修正后的电路图包括与所述多个子模型一一对应的多个子电路模块;其中,所述利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,包括:
根据所述多个子电路模块生成第一矩阵,所述第一矩阵包括各个子电路模块的器件参数和用于表示各个子电路模块之间的连接关系的参数;
利用所述第一矩阵分别对所述多个子模型进行训练,得到所述当次设计阶段的当次阶段模型。
8.根据权利要求7所述的用于电路设计的机器学习模型训练方法,其特征在于,所述利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,包括:
根据所述多个子电路模块之间设计阶段相关性生成第二矩阵,所述第二矩阵包括用于表示各个子电路模块设计时机的参数;
利用所述第二矩阵分别对所述多个子模型进行训练,得到所述当次设计阶段的当次阶段模型。
9.一种用于电路设计的机器学习模型训练系统,其特征在于,包括:
第四获取模块,用于获取上次设计阶段训练得到的上一阶段模型;
第五获取模块,用于获取当次设计阶段的原始电路设计图和目标参数;
第二生成模块,用于将所述原始电路设计图和所述目标参数输入到所述上一阶段模型中,得到第1子阶段的指导电路图;
第二仿真模块,用于对所述第1子阶段的指导电路图进行仿真,得到仿真结果;
第四训练模块,用于当仿真结果不符合所述目标参数要求时,利用所述仿真结果和所述第1子阶段的指导电路图对所述上一阶段模型进行训练,得到第1子阶段模型,设置N=1;
第二返回模块,用于依次执行以下步骤A、B和C,直到仿真结果符合所述目标参数要求:
步骤A:将第N子阶段修正后的电路图和所述目标参数输入到所述第N子阶段模型中,得到N+1子阶段的指导电路图,其中,所述第N子阶段修正后的电路图为用户参考所述第N子阶段的指导电路图修正后的电路图;
步骤B:对所述第N+1子阶段的指导电路图进行仿真,得到仿真结果;
步骤C:当仿真结果不符合所述目标参数要求时,利用该仿真结果和所述第N+1子阶段的指导电路图对所述第N子阶段模型进行训练,得到第N+1子阶段模型;并将N的值加1,返回执行步骤A;
第六获取模块,用于当所述仿真结果符合所述目标参数时,获取所有子阶段经过修正后的电路图;
第三训练模块,用于利用所有子阶段经过修正后的电路图对第M子阶段模型进行训练,得到所述当次设计阶段的当次阶段模型,所述当次阶段模型用于在下一设计阶段生成指导电路图,其中,M为仿真结果满足所述目标参数要求时的N的值。
10.一种计算机设备,其特征在于,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1-4或6-8中任一项所述的方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行权利要求1-4或6-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110810656.XA CN113283213B (zh) | 2021-07-19 | 2021-07-19 | 一种基于机器学习的电路设计系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110810656.XA CN113283213B (zh) | 2021-07-19 | 2021-07-19 | 一种基于机器学习的电路设计系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113283213A CN113283213A (zh) | 2021-08-20 |
CN113283213B true CN113283213B (zh) | 2021-11-09 |
Family
ID=77286651
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110810656.XA Active CN113283213B (zh) | 2021-07-19 | 2021-07-19 | 一种基于机器学习的电路设计系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113283213B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114036876B (zh) * | 2021-09-17 | 2023-03-24 | 清华大学 | 一种集成电路eda平台 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102479275A (zh) * | 2010-11-30 | 2012-05-30 | 英业达股份有限公司 | 计算机辅助电路设计方法及其系统 |
CN109977534A (zh) * | 2019-03-22 | 2019-07-05 | 清华大学 | 基于强化学习的电路参数优化方法及系统 |
CN112765933A (zh) * | 2021-01-29 | 2021-05-07 | 西安电子科技大学 | 一种基于种群优化算法的集成电路设计方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109960834A (zh) * | 2017-12-25 | 2019-07-02 | 复旦大学 | 一种基于多目标贝叶斯优化的模拟电路多目标优化设计方法 |
CN110245436B (zh) * | 2019-06-19 | 2021-03-30 | 山东大学 | 一种基于遗传算法和机器学习的并行模拟电路优化方法 |
-
2021
- 2021-07-19 CN CN202110810656.XA patent/CN113283213B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102479275A (zh) * | 2010-11-30 | 2012-05-30 | 英业达股份有限公司 | 计算机辅助电路设计方法及其系统 |
CN109977534A (zh) * | 2019-03-22 | 2019-07-05 | 清华大学 | 基于强化学习的电路参数优化方法及系统 |
CN112765933A (zh) * | 2021-01-29 | 2021-05-07 | 西安电子科技大学 | 一种基于种群优化算法的集成电路设计方法 |
Non-Patent Citations (1)
Title |
---|
徐君怡等;人工智能技术在集成电路中的应用研究;《信息与电脑(理论版)》;20210331;第165-167页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113283213A (zh) | 2021-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109783785B (zh) | 生成实验检测报告的方法、装置和计算机设备 | |
CN110162681B (zh) | 文本识别、文本处理方法、装置、计算机设备和存储介质 | |
CN108595815B (zh) | 人工智能体训练系统及无源电路优化设计系统及方法 | |
CN110874528B (zh) | 文本相似度的获取方法及装置 | |
CN113283213B (zh) | 一种基于机器学习的电路设计系统及方法 | |
CN112597124A (zh) | 一种数据字段映射方法、装置及存储介质 | |
CN112016311A (zh) | 基于深度学习模型的实体识别方法、装置、设备及介质 | |
CN112016296A (zh) | 句子向量生成方法、装置、设备及存储介质 | |
CN110991193A (zh) | 一种基于OpenKiWi的翻译矩阵模型选择系统 | |
CN111368029B (zh) | 基于意图三元组的交互方法、装置、设备及存储介质 | |
CN115879450B (zh) | 一种逐步文本生成方法、系统、计算机设备及存储介质 | |
CN113626468B (zh) | 基于人工智能的sql语句生成方法、装置、设备及存储介质 | |
CN109344385B (zh) | 自然语言处理方法、装置、计算机设备和存储介质 | |
CN113486169B (zh) | 基于bert模型的同义语句生成方法、装置、设备及存储介质 | |
CN110780850B (zh) | 需求用例辅助生成方法、装置、计算机设备及存储介质 | |
CN110597874B (zh) | 数据分析模型的创建方法、装置、计算机设备和存储介质 | |
CN111143274B (zh) | 以逻辑综合结果为导向的层级结构优化方法及装置、系统 | |
CN112712202A (zh) | 一种短期风电功率预测方法、装置、电子设备和存储介质 | |
CN113448982A (zh) | Ddl语句的解析方法、装置、计算机设备及存储介质 | |
CN117763140B (zh) | 基于计算特征网络的精准医学信息结论生成方法 | |
CN117193733B (zh) | 示例库的构建、使用方法及生成的示例代码的评估方法 | |
CN109063106A (zh) | 网址修正方法、装置、计算机设备和存储介质 | |
CN117540917B (zh) | 一种培训平台辅助培训方法、装置、设备以及介质 | |
CN117763347A (zh) | 一种识别金融文档的方法、装置、设备及存储介质 | |
CN113536768A (zh) | 一种基于正则表达式建立文本抽取模型的方法及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 215000 Building 1, No. 150, Jici Road, science and Technology City, high tech Zone, Suzhou City, Jiangsu Province Patentee after: Suzhou Baker Microelectronics Co.,Ltd. Address before: 215000 78 Keling Road, science and Technology City, high tech Zone, Suzhou City, Jiangsu Province Patentee before: SUZHOU BAKER MICROELECTRONICS Co.,Ltd. |