掌桥专利:专业的专利平台
掌桥专利
首页

PCB模块自动布局方法、装置、电子设备和存储介质

文献发布时间:2024-05-31 01:29:11


PCB模块自动布局方法、装置、电子设备和存储介质

技术领域

本申请涉及PCB布局设计技术领域,尤其涉及一种PCB模块自动布局方法、装置、电子设备和存储介质。

背景技术

印制电路板(Printed Circuit Board,PCB)是电子元器件的支撑体,是电子元器件电气相互连接的载体。面对如今硬件平台的集成度越来越高、系统越来越复杂的电子产品,无论是在硬件原理图的设计还是在PCB布线中均使用模块化、结构化的设计方法。

当前PCB布局主要靠PCB工程师人为利用工业软件、EDA软件、PCB版图设计软件实现,需依赖电路原理图、PCB封装库。工程师在进行布局设计时,通过解析文件获取元器件信息,直接将所有元器件以一个整体的形式平铺在布局设计软件的画布中,根据电路原理图的逻辑关系手动一个个的进行元件位置摆放,依次对每个电路原理图进行模块布局。

上述方式会由于不同工程师的经验差异以及PCB布局问题的复杂性大大降低布局效率。例如,由于用户自身经验以及习惯不同,导致布局结果差异性较大。当原理图中的回路模块多且相似度高时,人工布局往往存在大量重复工作,且用户往往凭借自己的经验,难以在布局时做出新的突破,布局的结果比较单一。又例如,当PCB模块的可布局画布的形状发生较大变化时,工程师需要根据新的画布对布局进行调整。且为了满足元器件的布局约束以及预期的布局效果,工程师需要不断进行微调来满足需求,繁琐重复的工作大大降低了工程师的作业时间,无法提高PCB布局工作效率,特别是当元器件规模增加,布局约束增加时,需要更长的作业时间才能完成布局任务。

综上所述,提供一种高效率的PCB模块化自动布局方法是亟需解决的问题。

发明内容

有鉴于此,本申请的目的在于提出一种PCB模块自动布局方法、装置、电子设备和存储介质,本申请能够针对性的解决现有的问题。

基于上述目的,第一方面,本申请提出了一种PCB模块自动布局方法,所述方法包括:将PCB模块自动布局问题建模为马尔可夫决策过程;以最大程度满足布局约束条件的最优PCB模块布局结果为目标函数,建立基于所述马尔可夫决策过程的PCB模块自动布局模型;通过所述马尔可夫决策过程对所述PCB模块自动布局模型进行优化迭代,得到PCB模块布局结果。

可选地,将PCB模块自动布局问题建模为马尔可夫决策过程,包括:基于分布式深度强化学习算法,得到强化学习代理策略网络;通过所述强化学习代理策略网络将布局问题的各项参数和马尔可夫决策过程的四元组进行建模,根据布局约束条件将待布局的元器件逐个放置到给定的布局区域中;其中,所述四元组包括决策过程的状态空间、动作空间、奖励函数以及状态转移。

可选地,在通过所述马尔可夫决策过程对所述PCB模块自动布局模型进行优化迭代的过程中,所述方法包括:创建数据并行化学习框架;使用所述数据并行化学习框架进行训练数据的收集,所述训练数据用于更新PCB模块自动布局模型的参数。

可选地,在通过所述马尔可夫决策过程对所述PCB模块自动布局模型进行优化迭代的过程中,所述方法包括:基于强化学习代理策略网络根据当前布局区域所观察到的状态,输出当前要放置元器件的放置信息,并得到奖励信号和下一时刻的状态,直至完成所有元器件的放置或因无法满足布局约束条件而提前终止元器件放置过程;所述放置信息包括当前要放置元器件的位置和朝向。

可选地,所述强化学习代理策略网络基于当前布局区域所观察到的状态包括PCB模块布局区域的整体信息、已经放置和待放置的元器件信息和当前将要放置元器件的信息,所述基于强化学习代理策略网络根据当前布局区域所观察到的状态,输出当前要放置元器件的放置信息,包括:通过多层感知机得到对应于所述PCB模块布局区域的整体信息的第一向量;通过图卷积神经网络得到对应于所述已经放置和待放置的元器件信息的第二向量,以及对应于当前将要放置元器件的信息的第三向量;将所述第一向量、第二向量和第三向量的拼接向量作为决策网络的状态输入,输出当前要放置元器件的放置信息,所述决策网络用于预测当前要放置元器件可能的放置信息的概率分布。

可选地,在通过所述马尔可夫决策过程对所述PCB模块自动布局模型进行优化迭代的过程中,所述方法还包括:通过构建动作空间的掩码对所述元器件的放置信息进行优化;其中,所述动作空间根据给定的布局区域大小和元器件的朝向个数创建。

可选地,所述布局约束条件包括硬约束和软约束,所述得到的奖励信号包含用于使强化学习代理策略网络获得满足硬约束的布局结果的硬约束奖励和用于使强化学习代理策略网络具有最大化软约束满足程度的软约束奖励,通过所述马尔可夫决策过程对所述PCB模块自动布局模型进行优化迭代,所述方法包括:根据所述硬约束奖励和所述软约束奖励对所述PCB模块自动布局模型进行优化迭代。

第二方面,还提供了一种PCB模块自动布局装置,包括:处理模块,用于将PCB模块自动布局问题建模为马尔可夫决策过程;模型创建模块,用于以最大程度满足布局约束条件的最优PCB模块布局结果为目标函数,建立基于所述马尔可夫决策过程的PCB模块自动布局模型;决策模块,用于通过所述马尔可夫决策过程对所述PCB模块自动布局模型进行优化迭代,得到PCB模块布局结果。

第三方面,还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器运行所述计算机程序以实现第一方面所述的方法。

第四方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行实现第一方面任一项所述的方法。

总的来说,本申请的有益效果在于:

通过将PCB模块自动布局问题建模为马尔可夫决策过程;以最大程度满足布局约束条件的最优PCB模块布局结果为目标函数,建立基于马尔可夫决策过程的PCB模块自动布局模型,将待布局的元器件根据约束按照一定的顺序逐个放置到给定的PCB模块布局区域当中,以实现元器件的自动布局,且基于分布式深度强化学习算法,通过所述马尔可夫决策过程对所述PCB模块自动布局模型进行优化迭代,得到PCB模块布局结果,可以加快模型布局效率,得到最大程度满足布局约束条件的最优PCB模块布局结果。

附图说明

在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本申请公开的一些实施方式,而不应将其视为是对本申请范围的限制。

图1示出本申请的PCB模块自动布局方法的步骤流程图;

图2示出根据本申请实施例的PCB模块自动布局的序列决策过程示意图;

图3示出一种并行化学习框架的结构示意图;

图4示出根据本申请实施例的一种状态输入特征处理网络架构;

图5示出根据本申请实施例的决策网络的结构示意图;

图6示出了本申请一实施例所提供的PCB模块自动布局装置结构示意图;

图7示出了本申请一实施例所提供的一种电子设备的结构示意图;

图8示出了本申请一实施例所提供的一种存储介质的示意图。

具体实施方式

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

图1示出本申请的PCB模块自动布局方法的步骤流程图,本实施例提供的PCB模块自动布局方法可以由服务器或具备数据处理能力的电子设备执行,其中,电子设备可以是计算机。

本实施例中,分布式深度强化学习算法(Distributed Proximal PolicyOptimization,DPPO)是一种在处理复杂、多面和顺序的决策问题方面具有良好表现的算法,分布式深度强化学习算法通过Agent代理与环境相互作用,从环境中获取当前状态,根据当前状态执行某种行为,根据执行的行为获得对应的奖惩来学习解决问题的策略,通过对环境进行探索,并根据得到的奖惩反馈来调整自己的策略,以使得策略可以最大化未来的累积回报。

为了解决现有PCB模块人工布局效率低的问题,本实施例通过分布式深度强化学习算法来处理PCB模块的元器件布局问题,在布局约束条件的约束下通过对布局策略的学习,来实现PCB模块自动布局结果的最优化,将待布局的元器件自动布局在PCB模块的布局区域内。

参考图1,本申请的实施例中,PCB模块自动布局方法包括如下步骤S101~S103:

S101、将PCB模块自动布局问题建模为马尔可夫决策过程。

本实施例中,PCB模块自动布局模型的布局问题包括如何确定待布局的元器件放置位置和朝向、对布局效果的影响等,从而实现最终PCB模块布局结果的最优。本实施例中,布局效果可以是布局之后元器件的整齐度、所需元器件的数量、所有元器件所占用的面积等。

基于上述问题,本实施例将PCB模块自动布局模型的布局问题建模为马尔可夫决策过程,包括:基于分布式深度强化学习算法,得到强化学习代理策略网络;通过强化学习代理策略网络将布局问题的各项参数和马尔可夫决策过程的四元组进行建模,根据布局约束条件将待布局的元器件逐个放置到给定的布局区域中;其中,四元组包括决策过程的状态空间、动作空间、奖励函数以及状态转移。

本实施例中,布局问题的各项参数包括待布局元器件的各项参数,例如元器件所属的回路、元器件的类型、元器件的规格以及元器件的引脚信息等。本实施例中,马尔可夫决策过程的四元组的状态空间用于表征元器件在PCB布局区域的可能的放置信息,放置信息包括元器件的放置位置和朝向。动作空间用于表征强化学习代理策略网络(RL agent)可以采取的一组动作,例如,给定当前要放置的元器件,可用动作是PCB布局区域中可以放置该元器件的所有放置信息的集合。奖励函数为在某个状态下RL agent在动作空间的采取的动作的奖励。状态转移即对于给定的一个状态和一个动作,计算下一个状态的概率分布。

可以理解的是,待布局的元器件的数量有多个,对于每一元器件均需要进行一次决策,则需要进行多轮决策,在每一轮布局的序列决策过程中的每一个决策时刻t,RLagent基于当前布局区域所观察到的状态s

图2示出了PCB模块自动布局的序列决策过程示意图,参考图2,初始时刻的状态为s

S102、以最大程度满足布局约束条件的最优PCB模块布局结果为目标函数,建立基于所述马尔可夫决策过程的PCB模块自动布局模型。

本实施例中,布局约束条件包括硬约束和软约束,硬约束即布局时元器件必须要满足的约束,硬约束可以包括任意两个元器件之间的距离不超过预设距离、任意两个元器件不重叠以及所有元器件均位于待布局PCB模块的区域之内。软约束即在满足硬约束的基础上,布局元器件时尽可能满足的根据用户的需求或美观度而设置的约束条件,例如,布局约束条件包括同一回路中的两个元器件之间的距离尽可能小、各回路上的同一类型的元器件放置方式尽可能一致、各回路的同一类型的元器件中心点在同一直线上、不同回路的元器件尽可能水平或者垂直对齐、两元器件的引脚之间的距离在预设范围内且尽可能靠近等使得元器件布局更加美观的约束条件。

针对不同的用户需求,可以根据不同的目标设置目标函数,例如,用户要求的最优PCB模块布局结果为同时实现布局面积和布局效果的平衡,则可以将布局面积和布局效果评价作为目标函数的两个参数,并根据布局面积和布局效果评价的权重创建目标函数,从而得到PCB模块自动布局模型。通过分布式深度强化学习算法对模型进行训练,从而实现PCB模块中元器件的自动布局。

S103、通过马尔可夫决策过程对PCB模块自动布局模型进行优化迭代,得到PCB模块布局结果。

在步骤S102的决策过程中,可以得到多个具有不同奖励信号r

具体地,在基于分布式深度强化学习算法,通过马尔可夫决策过程对PCB模块自动布局模型进行优化迭代的过程中,本实施例还包括:创建数据并行化学习框架;使用数据并行化学习框架进行训练数据的收集,训练数据用于更新PCB模块自动布局模型的参数。

图3示出了一种并行化学习框架的结构示意图,如图3所示,并行化学习框架包括多个拥有相同策略的RL agent、与多个RL agent进行数据传输的经验回放缓冲区ReplayBuffer,以及主策略网络main RL agent。

本实施例通过同时使用多个拥有相同策略的RL agent在不同环境中的表现进行训练数据的收集,其中,图3中的Environment表征不同的元器件布局环境,每一RL agent通过在对应的Environment的布局过程中进行探索和利用来收集训练数据(s

在收集到训练数据之后,将收集到的训练数据存储到Replay Buffer,主策略网络main RL agent通过调取Replay Buffer中的训练数据,对RL agent的参数进行更新,得到新的参数,并将新的参数同步到每一个RL agent上,从而实现高效率的并行化数据收集以及模型参数的同步,提高模型训练过程的稳定性。

本实施例中,基于分布式深度强化学习算法,通过所述马尔可夫决策过程对所述PCB模块自动布局模型进行优化迭代,包括对状态空间的计算、对动作空间的计算以及对奖励函数的计算,其中,对状态空间的计算、对动作空间的计算以及对奖励函数的计算包括基于强化学习代理策略网络根据当前布局区域所观察到的状态,输出当前要放置元器件的放置信息,并得到奖励信号和下一时刻的状态,并得到奖励信号和下一时刻的状态,直至完成所有元器件的放置或因无法满足布局约束条件而提前终止元器件放置过程。

该步骤对于应的方法与上述步骤S102中PCB模块自动布局的序列决策方法一致,基于当前布局区域所观察到的状态s

可以理解的是,考虑到包含不同数量类型元器件或不同布局约束条件的PCB模块在布局的过程中,具有不同的状态输入特征,因此,本实施例通过构建适用于不同特征的PCB模块的状态输入特征。

图4示出了一种状态输入特征处理网络架构,状态输入特征处理网络架构包括图卷积神经网络GCN和两个多层感知机MLP。

本实施例中,强化学习代理策略网络基于当前布局区域所观察到的状态包括PCB模块布局区域的整体信息、已经放置和待放置的元器件信息和当前将要放置元器件的信息,其中,PCB模块布局区域的整体信息包括PCB模块布局区域的长和宽,其中,已经放置的元器件信息包括放置的每个元器件中心的坐标、元器件的长和宽、元器件边框的边的位置、元器件朝向、元器件类型、所有引脚的坐标和元器件之间的连接关系。本实施例可以通过对未放置的元器件进行标记,将待放置的元器件信息设置为默认值。本实施例中,当前将要放置元器件的信息包括该元器件的id,其中,元器件的id为表征元器件布局顺序的序号,元器件布局顺序可以根据每个元器件在不同回路中的重要程度设置,例如在不同回路中的元器件均要求与同一个元器件的不同引脚尽可能靠近,那么该元器件的重要性将高于所有其它需要靠近它的元器件,因此需要被优先放置,从而简化动作空间的设计和降低模型学习的复杂度。

本实施例基于强化学习代理策略网络根据当前布局区域所观察到的状态,输出当前要放置元器件的放置信息,包括:通过多层感知机得到对应于所述PCB模块布局区域的整体信息的第一向量;通过图卷积神经网络得到分别对应于所述已经放置和待放置的元器件信息和当前将要放置元器件的信息的第二向量和第三向量;将所述第一向量、第二向量和第三向量的拼接向量作为决策网络的状态输入,输出当前要放置元器件的放置信息,所述决策网络用于预测当前要放置元器件可能的放置信息的概率分布,放置信息包括元器件的放置位置和朝向。

参考图4,将PCB模块布局区域的整体信息Region Features作为多层感知机MLP的输入,得到第一向量Region Embedding,将已经放置和待放置的元器件信息Comp Features作为图卷积神经网络GCN的输入,以每个元器件为图的节点,不同元器件之间的连接关系为图的边,提取图特征,其中,通过嵌入层Edge Embeddings得到第二向量Graph Embedding,通过嵌入层Comp Embeddings嵌入当前将要放置元器件的信息,得到第三向量CurrentComp Embedding,其中,第一向量和第三向量为实值向量特征Shared Embedding。再通过一个多层感知机MLP将第一向量、第二向量和第三向量进行拼接,得到拼接向量,将该拼接向量作为决策网络的状态输入,输出当前要放置元器件的放置信息,所述决策网络用于预测当前要放置元器件可能的放置信息的概率分布。其中,决策网络如图5所示。决策网络包括5个反卷积层Deconv,用于生成当前要放置元器件可能的放置信息的概率分布。

本实施例通过观察到的状态对应的不同信息,生成多个向量,并对多个向量进行拼接,能够提升决策的准确度。

本实施例在基于分布式深度强化学习算法,通过所述马尔可夫决策过程对所述PCB模块自动布局模型进行优化迭代的过程中,还包括对动作空间的计算,具体包括:通过构建动作空间的掩码对元器件的放置信息进行优化。

其中,动作空间根据给定的布局区域大小和元器件的朝向个数创建。具体地,为了提高训练效率和布局结果的质量,本实施例将给定的布局区域划分成多个长宽一致的小长方形格子,每个元器件将会被放置到长方形格子的中心上,其中心坐标与格子的中心坐标重合,布局区域网格的行数和列数根据布局区域的长宽进行确定,进而确定网格中每个格子的长和宽。其中,朝向个数指的是每一个元器件所允许的放置方向的数量,例如元器件N相对于某一参考位置所允许的旋转角度分别为30度、45度、60度、90度、120度和180度,则元器件N具有6个不同的放置方式,元器件N的朝向个数则为6。若给定布局区域网格的行和列数分别为n和m,每个元器件的朝向个数为l,则RL agent的动作空间为m×n×l。

参考图5,图5为决策网络的结构示意图,通过将5个反卷积层Deconv对输入的Shared Embedding进行处理,在此过程中,为了满足布局给定的硬约束并能够更快地得到尽可能满足布局软约束,本实施例通过构建动作空间的掩码Mask对元器件的布局位置进行优化,决策网络输出掩码Mask和卷积的点积Masked Output,以此来屏蔽不满足约束的元器件位置选择,在可选的动作概率分布中采样元器件的位置,并将硬约束进一步压缩,例如同一回路中的元器件A和B距离不能超过x个单位长度,压缩后为不超过αx个单位长度(0<α<1),从而加快优化布局软约束满足程度的效率,缩小模型布局的探索空间,使得到的布局结果满足所有约束并加快模型收敛的速度。

本实施例中,布局约束条件包括硬约束和软约束,则在本实施例的布局过程中,RLagent在每个时刻t完成当前元器件的放置后所收到的反馈的奖励信号r

其中,硬约束奖励ra

软约束奖励rb

rb

其中,r

其中,q为权重,dist为相对距离,n为回路个数。

本实施例中的硬约束奖励ra

以上为本实施例的PCB模块自动布局方法,通过将PCB模块自动布局问题建模为马尔可夫决策过程;以最大程度满足布局约束条件的最优PCB模块布局结果为目标函数,建立基于马尔可夫决策过程的PCB模块自动布局模型,将待布局的元器件根据约束按照一定的顺序逐个放置到给定的PCB模块布局区域当中,以实现元器件的自动布局,且基于分布式深度强化学习算法,通过所述马尔可夫决策过程对所述PCB模块自动布局模型进行优化迭代,得到PCB模块布局结果,可以加快模型布局效率,得到最大程度满足布局约束条件的最优PCB模块布局结果。

图6示出根据本申请实施例的PCB模块自动布局装置结构示意图,该PCB模块自动布局装置600用于执行上述实施例所述的PCB模块自动布局方法,如图4所示,该PCB模块自动布局装置包括:

处理模块601,用于将PCB模块自动布局问题建模为马尔可夫决策过程。

模型创建模块602,用于以最大程度满足布局约束条件的最优PCB模块布局结果为目标函数,建立基于所述马尔可夫决策过程的PCB模块自动布局模型。

决策模块603,用于通过所述马尔可夫决策过程对所述PCB模块自动布局模型进行优化迭代,得到PCB模块布局结果。

在一个可行的例子中,处理模块601用于基于分布式深度强化学习算法,得到强化学习代理策略网络;通过所述强化学习代理策略网络将布局问题的各项参数和马尔可夫决策过程的四元组进行建模,根据布局约束条件将待布局的元器件逐个放置到给定的布局区域中;其中,所述四元组包括决策过程的状态空间、动作空间、奖励函数以及状态转移。

在一个可行的例子中,决策模块603用于创建数据并行化学习框架;使用所述数据并行化学习框架进行训练数据的收集,所述训练数据用于更新PCB模块自动布局模型的参数。

在一个可行的例子中,决策模块603还用于基于强化学习代理策略网络根据当前布局区域所观察到的状态,输出当前要放置元器件的放置信息,并得到奖励信号和下一时刻的状态,直至完成所有元器件的放置或因无法满足布局约束条件而提前终止元器件放置过程;所述放置信息包括当前要放置元器件的位置和朝向。

在一个可行的例子中,强化学习代理策略网络基于当前布局区域所观察到的状态包括PCB模块布局区域的整体信息、已经放置和待放置的元器件信息和当前将要放置元器件的信息,决策模块603还用于通过多层感知机得到对应于所述PCB模块布局区域的整体信息的第一向量;通过图卷积神经网络得到对应于所述已经放置和待放置的元器件信息的第二向量,以及当前将要放置元器件的信息的第三向量;将所述第一向量、第二向量和第三向量的拼接向量作为决策网络的状态输入,输出当前要放置元器件的放置信息,所述决策网络用于预测当前要放置元器件可能的放置信息的概率分布。

在一个可行的例子中,决策模块603还用于通过构建动作空间的掩码对所述元器件的放置信息进行优化;其中,所述动作空间根据给定的布局区域大小和元器件的朝向个数创建。

在一个可行的例子中,所述布局约束条件包括硬约束和软约束,所述反馈的奖励信号包含用于使强化学习代理策略网络获得满足硬约束的布局结果的硬约束奖励和用于使强化学习代理策略网络具有最大化软约束满足程度的软约束奖励,决策模块603还用于根据所述硬约束奖励和所述软约束奖励对所述PCB模块自动布局模型进行优化迭代。

申请实施例提供了一种PCB模块自动布局装置,通过将PCB模块自动布局问题建模为马尔可夫决策过程;以最大程度满足布局约束条件的最优PCB模块布局结果为目标函数,建立基于马尔可夫决策过程的PCB模块自动布局模型,将待布局的元器件根据约束按照一定的顺序逐个放置到给定的PCB模块布局区域当中,以实现元器件的自动布局,且基于分布式深度强化学习算法,通过所述马尔可夫决策过程对所述PCB模块自动布局模型进行优化迭代,得到PCB模块布局结果,可以加快模型布局效率,得到最大程度满足布局约束条件的最优PCB模块布局结果。

本申请的上述实施例提供的PCB模块自动布局装置与本申请实施例提供的PCB模块自动布局方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。

本申请实施方式还提供一种与前述实施方式所提供的PCB模块自动布局方法对应的电子设备,以执行上述PCB模块自动布局方法。本申请实施例不做限定。

请参考图5,其示出了本申请的一些实施方式所提供的一种电子设备的示意图。如图5所示,所述电子设备20包括:处理器200,存储器201,总线202和通信接口203,所述处理器200、通信接口203和存储器201通过总线202连接;所述存储器201中存储有可在所述处理器200上运行的计算机程序,所述处理器200运行所述计算机程序时执行本申请前述任一实施方式所提供的PCB模块自动布局方法。

其中,存储器201可能包含高速随机存取存储器(RAM:Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口203(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。

总线202可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器201用于存储程序,所述处理器200在接收到执行指令后,执行所述程序,前述本申请实施例任一实施方式揭示的所述PCB模块自动布局方法可以应用于处理器200中,或者由处理器200实现。

处理器200可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器200中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器200可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器201,处理器200读取存储器201中的信息,结合其硬件完成上述方法的步骤。

本申请实施例提供的电子设备与本申请实施例提供的PCB模块自动布局方法出于相同的发明构思,具有与其采用、运行或实现的方法相同的有益效果。

本申请实施方式还提供一种与前述实施方式所提供的PCB模块自动布局方法对应的计算机可读存储介质,请参考图6,其示出的计算机可读存储介质为光盘30,其上存储有计算机程序(即程序产品),所述计算机程序在被处理器运行时,会执行前述任意实施方式所提供的PCB模块自动布局方法。

需要说明的是,所述计算机可读存储介质的例子还可以包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。

本申请的上述实施例提供的计算机可读存储介质与本申请实施例提供的PCB模块自动布局方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。

需要说明的是:

在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备有固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本申请也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本申请的内容,并且上面对特定语言所做的描述是为了披露本申请的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本申请并帮助理解各个发明方面中的一个或多个,在上面对本申请的示例性实施例的描述中,本申请的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本申请要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本申请的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本申请实施例的虚拟机的创建系统中的一些或者全部部件的一些或者全部功能。本申请还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者系统程序(例如,计算机程序和计算机程序产品)。这样的实现本申请的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本申请进行说明而不是对本申请进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本申请可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干系统的单元权利要求中,这些系统中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

相关技术
  • 服务模块化的抽奖方法、装置、电子设备及存储介质
  • 电子设备的显示控制方法、装置、电子设备和存储介质
  • 电子设备控制方法及装置、电子设备及存储介质
  • 数据分布存储方法、装置、存储介质及电子设备
  • 存储清理方法、装置、电子设备及存储介质
  • 标签自动布局排版方法、装置、电子设备及存储介质
  • 开放式自动布局方法、装置、电子设备和存储介质
技术分类

06120116627361