硬件模拟的基本原理

65 篇文章 0 订阅
47 篇文章 0 订阅

具体来说,这种设计方法减少了集成电路 (IC) 设计和开发的设计迭代次数,并且广泛适用于所有电力电子设计。我详细介绍了我在快速上市 IC 开发方面的经验,并将该方法与其他旨在缩短产品开发时间的技术进行了对比。

产品开发流程

图 1:产品开发流程

图 1 说明了产品开发过程的步骤。开发从新产品要求作为设计阶段的输入开始。制造从设计开始构建产品,然后验证产品是否符合要求。如果在验证步骤中产品不符合要求,则必须重新审视设计(红色箭头)。设计、制造和验证的步骤(通常称为开发周期)重复进行,直到产品成功满足发布生产的要求。

加快新产品开发速度的需求日益增加。市场和竞争迫使公司缩短产品上市时间。开发组织仔细审查每个开发步骤(设计、制造和验证),以加快产品发布,这可能会导致走捷径。我们许多人都目睹过这样的情况,这些捷径导致产品无法通过一项或多项验证测试。当然,由于需要付出努力来纠正问题、重新制造产品并重复验证,开发时间会增加。

加快新产品开发的一种方法是减少开发周期迭代次数。与其关注每个开发步骤(设计、制造和验证),不如考虑如何通过次设计工作来验证产品。我认为,更好地理解设计可以减少迭代次数。模拟设计可以增加工程师的知识,并更好地理解产品。

我曾亲眼目睹过一些公司积极阻止任何增加设计时间的活动。在“快速失败”的口号下,他们宁愿快速制造产品,通过测试物理硬件发现问题,纠正设计并重新制造产品。通过这种方法,负责的工程师可以发现并解决问题,并了解更多有关设计的信息。然而,当开发进入硬件阶段时,解决任何问题都会受到许多限制。与在设计阶段发现和缓解问题相比,在开发阶段更改外形尺寸或添加组件的成本更高。模拟设计以发现问题可以在设计阶段以更低的成本解决问题,并限度地减少开发周期迭代。

有些人认为,用模拟任务来增加设计时间是违反直觉的。毕竟,模拟可能令人望而生畏。一些模拟工具的学习曲线很陡峭,需要工程师花费精力去理解工具的操作和程序。不成功的模拟可能会神秘的错误消息,或者根本无法完成。工程师理所当然地更愿意把精力花在他们被分配的项目上,而不是模拟工具上。除了学习模拟包之外,成功的模拟还需要工程师在模型上花费精力。构建模型可能令人望而生畏。然而,模型构建直接增加了工程师对设计的理解。我认为这是一项值得的投资。在本文后面,我将描述我的模型开发过程。

快速失败需要太长时间

设计阶段的仿真虽然会延长设计时间,但可以缩短端到端的开发时间。图 2 以时间线的形式展示了两种方法的设计周期。快速失败方法通过化设计时间快速制造产品,并在验证测试期间识别问题。相比之下,仿真方法的设计间隔更长。

产品开发时间表

图 2:产品开发时间表

考虑制造和验证产品所需的时间。如果我们确信(通过模拟)产品将次通过验证,那么我们就可以避免重复制造和验证阶段的时间。总的端到端开发时间比具有多个设计迭代的方法要短。在开发时间方面,模拟的合理性是一个简单的不等式。少于制造和验证工作的模拟工作量将缩短开发时间。前提是更好地理解产品设计可以减少开发周期迭代次数。

T模拟< T制造 + T验证

仿真减少开发周期迭代

根据我的经验,包含模拟任务的设计方法确实可以减少设计迭代次数。为英特尔 CPU 供电的 IC 和解决方案的开发就是一个很好的例子。作为背景,英特尔会向多家 IC 供应商发布其下一代 CPU 的电源要求规范和发布时间表。这实际上是一场 IC 供应商之间的竞赛。

首次通过开发过程

图 3:遍开发流程

个向客户提供 IC 和电源解决方案样品的供应商将有可能赢得业务。我在为一家 IC 供应商工作期间使用过仿真来设计电源解决方案并定义控制 IC。我很自豪市场回报了我们,让我们在多代英特尔 CPU 中占据了多数份额。在几代产品的过程中,我们能够在轮就提供 IC 和电源解决方案样品。这一成功有多种因素,包括一支的团队,但使用仿真限制设计迭代次数并快速提供解决方案样品是关键。

初始模拟使用理想模型

图 4:初始模拟采用理想模型

让我将这种包括模拟任务的设计神话与快速失败方法进行对比。快速失败方法的定义意味着总开发时间至少需要两次制造和两次验证间隔。IC 制造时间需要数周,通常需要 8 到 10 周来处理初始晶圆、切割成芯片并将 IC 封装在芯片载体中。作为参考设计的电源解决方案的制造与 IC 制造同时进行,需要数周(取决于复杂程度)来制造印刷电路板 (PCB) 并填充所有组件。

初始设计的验证也需要数周时间,具体取决于复杂性和所需的合规性测试。显然,花费额外几周的时间对设计进行建模和仿真,以减少设计迭代次数,可以缩短开发时间。验证失败会使端到端开发时间延长 2 周以上:纠正问题,重新制造 IC 并重复重新验证测试。

另一个首次成功的例子也使用了模拟方法。该公司的目标是降低 LED 灯泡的成本,而我的方法是开发一种新的控制 IC,并对电源驱动器进行一些小的修改。缩短开发时间对于提高公司利润率至关重要。我的职责是定义 IC,并与 IC 供应商合作进行设计和开发。该项目的挑战包括新的 IC 架构和远程 IC 供应商。模拟工作帮助克服了这些挑战,并在首次通过时就产生了功能 IC,使我们能够开始验证。设计团队在初始 IC 的一个引脚上发现了一个小的 ESD 问题,但这个问题很快就得到了纠正,使我们能够满足初的时间表。次成功有很多因素,但模拟模型是关键因素之一。

模拟模板

图 3 详细说明了产品开发过程中的仿真任务。成功的仿真策略会构建相关参数的模型。明确定义您的建模目标,以避免不必要的复杂性。从一个简单的初始模型开始,然后运行快速仿真。如果结果符合您的预期,请继续逐步构建模型。仿真允许您快速发现和缓解任何问题,而不受硬件的限制。

我很难将设计和仿真活动分开。设计参数计算与将组件放置到仿真工具的原理图中是同时进行的。下面我以 LED 灯泡开发为例描述建模和仿真步骤。这些步骤包括初始模型、定义模型和开发模型。

初始模拟使用简单且理想化的模型。例如,电压控制开关代表主开关 MOSFET(图 4a),带电容器的电压控制电流源代表误差放大器(图 4b)。保持初始模型简单可加快模拟速度,并且更容易排除故障。我使用此初始模型来开发控制算法。对于新的控制算法,从简单的模拟行为模型开始,并随着模型的发展添加数字元素。成功验证后,其他参数将添加或替换初始模型的理想功能。

定义模型开发确定了要集成的功能,并添加了带宽、偏移时间延迟和共模信号限制。我使用参数仿真来帮助确定 IC 规范中的限制。定义模型的进一步参数变化记录了外部元件公差和变化对系统要求的影响。

我与 IC 设计团队分享了包括启动和瞬态干扰在内的模拟结果。模拟模型和结果补充了 IC 规范。与规范中显示的静态限制相比,模拟为操作范围内的预期系统性能提供了极好的沟通媒介。

该模型在 IC 开发过程中不断发展。仿真结果有助于与供应商的 IC 设计师沟通一些设计细节。IC 开发模型支持通常涉及 IC 功能重用的权衡和设计决策。随着设计的演变,IC 开发模型会根据终设计所选功能的参数和特性进行修改。

我选择的仿真工具是 SIMPLIS,其功能在参考文献中有记录。我喜欢 SIMPLIS,因为它易于使用,专为电力电子而设计,并且没有收敛问题。SIMPLIS 帮助我专注于产品设计。它直观易用,只需很少的学习即可上手,并且还支持功能,可满足更复杂的建模需求。在 LED 灯泡开发过程中,我通过在LED 驱动器定义模型的交流源中串联一个TRIAC 调光器模型来评估相位调光。我还通过在定义模型前面添加一个 LISN 模型来评估传导 EMI,并获得了良好的结果。这两个仿真都需要在略低于 100 kHz 的频率下切换,同时运行模型超过 500 毫秒,SIMPLIS 在不到 3 分钟的时间内完成了每个任务。

我还发现仿真模型对于难以仅用硬件解决的问题很有帮助。有些节点很难在硬件中监控,这会使故障排除变得复杂。通过仿真,您可以轻松探测这些节点,同时与硬件上容易观察到的信号进行比较。此外,仿真可以帮助您评估组件的公差和参数偏移,这有助于提高大批量设计的制造良率(您可能拥有来自整个分布曲线的组件)。

不可否认,开发有效的模型需要时间和精力,但您可以在未来的设计中重复使用经过验证的模型。始终权衡模拟工作量与简单测试硬件。例如,上面提到的 TRIAC 调光器的模型仅适用于单个调光器。为市场上提供的每个调光器开发和验证模型将是一项艰巨的任务。相反,我们选择使用具有代表性的调光器样本来验证 LED 灯泡硬件。我使用单个 TRIAC 调光器模型来验证 IC 中包含的调光算法。

我有幸成为一些出色的开发团队的一员,这些团队在设计上就取得了成功。所有首次成功所采用的设计方法都得益于通过模拟获得的知识。我鼓励所有工程师对他们的设计进行模拟。

未来几年,产品开发时间必定会越来越短。如果我们认识到产品的成功验证是工程师对设计的了解的结果,那么产品开发团队就应该在设计间隔内投入精力,目标是次就验证产品。我的经验表明,对设计进行建模和模拟是获取知识以实现成功的方法。

  • 16
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值