一种器件选型寻优方法与流程

摘要: 【】本发明涉及电子设计自动化,特别涉及一种器件选型寻优方法。背景技术0、背景技术:1、器件选型是硬件电路设计中的关键环节。原理图中的器件符号用于表达电路器件的逻...
一种器件选型寻优方法与流程

【】本发明涉及电子设计自动化,特别涉及一种器件选型寻优方法。

背景技术

0、 背景技术:

1、器件选型是硬件电路设计中的关键环节。原理图中的器件符号用于表达电路器件的逻辑功能,完成器件选型后,每个器件符号进一步对应明确的物理器件,并由此体现厂商、型号、功耗、噪声、尺寸、价格、库存、品牌来源以及生产状态等实际物理和供应链因素,电路由逻辑设计进一步落实到可制造、可采购的真实硬件。

2、器件选型不仅需要考虑器件性能,还需要考虑器件价格以及供应链情况。例如,库存数量不足或者处于即将停产状态的器件通常不适合作为长期生产产品的优先选型,否则可能使后续生产和维护受到影响,甚至因器件缺失而需要重新设计电路。器件选型的输入通常包括具有器件符号及其连接关系的原理图和包含大量待选物理器件的器件库,最终结果可以由物料清单bom表示。bom通常列出各器件符号对应的厂商、型号、物料编码和值,所述值可以表示电阻阻值、电容容值、电感量或者器件型号。

3、电路仿真是在计算机软件中模拟硬件工作过程并获得输出结果的技术。工程师可以利用仿真结果观察电路是否能够按照预期工作以及是否达到设计目标。仿真结果并不等同于实际硬件的全部真实表现,但能够在电路设计阶段用于排查错误并估计电路性能。不同的器件选型方案形成不同bom,不同bom可能使电路呈现不同的增益、带宽、建立时间、压摆率、功耗、总谐波失真率等性能,因此器件选型与电路仿真之间具有直接联系。

4、现有器件选型流程通常分为两个阶段。第一阶段,在完成原理图后调用仿真工具,输入测试激励信号,人工调整电阻阻值、电容容值、放大倍数等参数,并通过观察仿真参数或曲线确定带宽、建立时间、压摆率、增益等设计指标;如果电路表现不能满足要求,则继续重复调整和仿真。一些eda软件能够辅助工程师确定参数,但其主要作用仍是辅助参数选择,并未改变先确定参数、后匹配实际器件的基本流程。

5、第二阶段,根据第一阶段确定的器件参数,在器件待选数据库中按照参数进行查找,得到多个替代料,再进一步结合价格、供应链和品牌等因素完成器件选型并输出bom。该流程需要反复人工仿真和调参,耗时较长;同时,第二阶段通常将第一阶段的参数结果作为固定输入,难以继续回到实际物理器件组合层面对参数进行联合调整,因而会压缩实际可比较的bom范围。

6、对于包含多个器件符号的电路,物理器件组合数量会迅速增大。例如,一个原理图包含六个器件符号,每个器件符号具有十个可选物理器件时,理论组合数量达到10的6次方,即一百万种;实际设计可能包含上百个器件符号,每个器件符号又可能有数十、数百甚至更多可选器件,难以通过遍历全部组合直接获得高质量选型结果。此外,并非所有bom都能够使电路正常工作,因此还需要识别和剔除不可行组合。

7、工程师的实际优化要求还可能同时涉及板子尺寸相关指标、总功耗、总成本和供应链等条件,并且不同设计的要求具有个性化特征。例如,在要求总谐波失真率尽可能小的同时,还可能要求电路价格尽可能低并优先选择供应链安全的器件。现有分阶段流程难以把这些个性化目标与电路参数调优和实际器件选型统一处理。

8、还应注意,器件参数寻优与实际器件选型寻优并不相同。实际可用的电阻阻值、电容容值等由具体可获得的物理器件决定,不是任意连续值;同一物理器件的尺寸、价格、功耗和供应状态等属性彼此绑定,也不能任意重新组合。因此,实际器件选型属于具有约束关系的离散值组合优化问题。

9、相关现有技术中,公布号cn102508977a公开了“用于模拟电路移植的电路优化方法和装置”,涉及通过调整器件参数并结合电路仿真进行模拟电路优化,其处理对象主要为器件参数值。公布号cn108595815a公开了“人工智能体训练系统及无源电路优化设计系统及方法”,涉及人工智能体训练及无源电路优化设计。公布号cn112417803a公开了“一种基于人工智能算法的模拟集成电路设计参数自动优化方案”,在固定电路架构的条件下定义器件参数变量,并通过仿真和参数优化获得设计参数组合。公布号cn112347084a公开了“一种智能化pcb bom生成方法及系统”,通过元器件库与原材料数据库共享和同步实现标准化bom生成。

10、上述技术分别解决了电路参数优化、人工智能辅助优化或bom信息生成等问题,但仍需要一种直接以实际物理器件的离散组合为搜索对象,在不改变用户既有电路逻辑和连接关系的条件下,把电路仿真性能与价格、功耗、品牌和供应链等实际器件属性统一纳入器件选型寻优过程的方法。

技术实现思路

0、 技术实现要素:

1、为了克服上述问题,本发明提出一种可有效解决上述问题的器件选型寻优方法。

2、本发明解决上述技术问题提供的一种技术方案是:提供一种器件选型寻优方法,包括如下步骤:

3、步骤s1,获取待选型电路描述、用户输入的自然语言优化目标以及器件库;所述待选型电路描述包括器件符号及器件符号之间的连接关系,各参与器件选型的器件符号配置有初始器件选型和仿真文件;所述器件库包括与各参与器件选型的器件符号相匹配的多个待选物理器件、待选物理器件的器件参数、器件索引以及仿真文件;在器件选型寻优过程中保持所述器件符号之间的电路逻辑和连接关系不变;

4、步骤s2,对所述自然语言优化目标进行解析,确定待优化指标及其优化方向和运算关系,形成用于比较不同物料清单候选解的得分函数;

5、步骤s3,按照所述待选型电路描述中的器件符号顺序构建候选解数组,所述候选解数组的长度等于参与器件选型的器件符号数量,候选解数组中各元素为对应器件符号所选待选物理器件的器件索引,以一个候选解数组表示一个物料清单候选解;

6、步骤s4,随机生成n个物料清单候选解,逐一调用电路仿真引擎对各物料清单候选解对应的电路进行仿真,根据仿真结果判断各物料清单候选解是否为能够使电路正常工作的可行解;对于可行解,获得所述得分函数涉及的电路性能指标,并结合器件库中的器件参数计算得分;

7、步骤s5,对不可行解执行修复,所述修复包括随机选择所述不可行解中的一个数组位置,将该数组位置的器件索引替换为与对应器件符号相匹配的另一待选物理器件的器件索引,形成修复候选解;将所述修复候选解与已有可行解进行比对,在不重复时重新调用所述电路仿真引擎进行可行性判断,若修复候选解成为可行解,则计算其得分并加入可行解集合,否则舍弃;

8、步骤s6,计算当前可行解两两之间的编码距离,并确定其中的最大编码距离distance_max;从得分最高的可行解开始,根据步长因子s以及可行解的得分,在尚未选取的可行解中依次确定下一可行解,形成筛选集合;

9、步骤s7,对所述筛选集合中的可行解进行两两配对,从随机确定的数组下标开始,按照间隔参数l交换每一对可行解的对应数组元素,产生新的候选解;对新的候选解调用所述电路仿真引擎进行可行性判断,可行时计算得分并加入所述筛选集合,不可行时按照步骤s5进行修复;

10、步骤s8,对更新后的筛选集合重新进行编码距离计算和基于步长因子s及得分的可行解筛选,并重复步骤s7和步骤s8;在迭代过程中根据迭代次数调整步长因子s和间隔参数l,使步长因子s总体上随迭代进行而减小、间隔参数l总体上随迭代进行而增大,直至达到预设迭代次数或者得分最高的可行解在预设连续迭代次数内得分保持不变;

11、步骤s9,从终止迭代时的可行解中选取得分最高的物料清单候选解,并输出与该物料清单候选解对应的物料清单作为器件选型结果。

12、优选地,所述待选型电路描述为原理图文件,或者为网表与初始物料清单的组合;所述原理图文件包括.kicad格式文件;所述初始器件选型作为器件选型寻优的优化起点,在器件选型寻优过程中仅改变器件符号对应的物理器件,不改变器件符号之间的电路逻辑和连接关系。

13、优选地,步骤s2中采用大语言模型对所述自然语言优化目标进行解析,使自然语言优化目标转换为用于生成得分函数的目标项、优化方向以及运算关系;所述自然语言优化目标包括电路性能、成本、功耗、器件尺寸、板子尺寸相关指标、品牌和供应链中的一种或多种。

14、优选地,当自然语言优化目标包括提高增益并降低功耗时,所述得分函数采用score=0.8×g+0.2/p;其中,score表示物料清单候选解的综合得分,g表示通过电路仿真获得的增益,p表示通过电路仿真获得的功耗且p大于0,0.8和0.2分别表示增益项和低功耗项的示例系数;参与同一轮候选解比较的g和p采用一致的单位和数值尺度。

15、优选地,步骤s4中,n为用户输入的正整数,n的默认值为100;设置筛选比例v,v表示候选解的保留比例且默认值为20%;当本次随机生成的n个物料清单候选解中的可行解数量低于所述n个物料清单候选解总数的20%时,再次随机生成n个物料清单候选解并进行可行性判断,直至获得的可行解数量达到n的一半以上。

16、优选地,对可行解按照得分进行排序,并建立得分与物料清单候选解之间的有序映射关系,以根据所述有序映射关系确定当前得分最高的可行解。

17、优选地,对于两个可行解bom_a和bom_b,所述编码距离按照下式计算:

18、distance(bom_a,bom_b)=∑(k=0至n-1)|a_k-b_k|;

19、其中,distance(bom_a,bom_b)表示bom_a与bom_b在器件索引编码空间中的编码距离;bom_a和bom_b分别表示参与编码距离计算的第一可行物料清单候选解和第二可行物料清单候选解;n表示候选解数组长度;k表示候选解数组的位置索引,k的取值范围为0至n-1;a_k表示bom_a在位置k处的器件索引;b_k表示bom_b在位置k处的器件索引;∑表示对k从0至n-1的各项进行求和;|a_k-b_k|表示a_k与b_k之差的绝对值;distance_max表示当前可行解两两之间的编码距离的最大值。

20、优选地,步骤s6包括:将得分最高的可行解确定为bom_max;在尚未选取的可行解中,选取与bom_max之间的编码距离相对于步长因子s最接近的可行解作为bom_next,在存在多个具有相同编码距离的可行解时选取得分最高者;再以bom_next作为当前已选可行解,在尚未选取的可行解中重复确定下一bom_next,直至不能继续取得下一可行解,将bom_max及依次取得的bom_next加入所述筛选集合。

21、优选地,步骤s7中的间隔参数l满足1

22、优选地,设当前迭代轮次为iter,iter为正整数,一种可选的步长因子取值关系为s=distance_max/iter;一种可选的间隔参数取值关系为l=iter,且该取值关系在满足1

23、优选地,所述电路仿真引擎为支持器件仿真模型和电路网表的第三方电路仿真工具,所述第三方电路仿真工具包括ngspice;所述电路仿真引擎用于判断候选解对应的电路能否正常工作以及计算所述得分函数所涉及的电路性能指标。

24、优选地,步骤s9输出的物料清单至少包括各器件符号对应的物理器件的厂商、型号、物料编码和值,所述值包括电阻阻值、电容容值、电感量或者器件型号中的至少一种;当器件库具有价格、库存数量、品牌来源和生产状态时,输出的物料清单还关联相应的价格、库存数量、品牌来源和生产状态信息。

25、与现有技术相比,本发明的器件选型寻优方法具有以下有益效果:

26、1、将器件参数调优与实际物理器件选型融合到同一自动化过程中,以具有确定厂商、型号、器件值、功耗、价格、库存和生产状态等属性的实际物理器件离散组合为候选对象,减少先确定连续或近似连续参数再匹配实际器件导致的搜索空间割裂。

27、2、将用户自然语言表达的个性化优化目标转换为可计算得分函数,使电路性能指标能够与器件功耗、成本、品牌和供应链等属性在同一候选bom评价过程中参与比较,从而使输出器件选型更贴近用户实际设计要求。

28、3、通过电路仿真引擎对候选bom进行可行性判断,在迭代过程中剔除不能使电路正常工作的器件组合;通过对不可行解进行单位置替换修复,在保留原候选组合其余器件选择的情况下重新形成候选bom,有利于扩大高质量可行解的搜索范围。

29、4、通过编码距离、得分、步长因子s以及间隔参数l共同控制候选解筛选和元素交换,并随迭代过程调整s和l,在无法遍历全部离散bom组合的情况下扩大对候选解空间的搜索,并提高获得满足用户目标的高得分可行bom的机会。