中文 英语

增量设计分解

重用有多少价值?尽管它仍是大多数公司方法论的必要组成部分,但其优势正在减弱。

受欢迎程度

在过去的二十年里,大多数设计本质上都是增量式的。他们大量利用了之前设计中使用的IP,而这些IP通常是由第三方开发的。但是这种方法的问题越来越多,特别是在高级节点上,后端问题和“左移”的影响正在减少重用带来的节省。

的价值知识产权重用已经很好地建立起来了。“随着系统变得越来越大、越来越复杂,构件的重用在系统设计中是根本必要的,”Björn Zeugmann说,他是该公司集成传感器电子研究小组的小组经理弗劳恩霍夫IIS的自适应系统工程部。“在复杂的设计中,并不是每个块都可以从零开始设计。第一个原因是设计过程本身的时间更少。第二个是子块的置信度。重复使用的块比新的块更容易被验证,因为不止一个设计师或团队在反复检查,而且在许多情况下已经被硅验证过了。增量设计是最具成本效益的方法,具有最高的设计安全性,前提是构建模块得到了良好的验证和测量。”

但是,尽管有必要,它们可能不像过去那么有价值了。“我支持这样一种假设或观察,即增量设计的效益正在下降。Synopsys对此.“就技术的有效性而言,它并没有崩溃。从一个版本到另一个版本,或从一个平台到另一个衍生品,需要发生的事情的数量来看,它正在分解,这使得它在生产力和经济方面有意义。增量的东西太多了,太相互依赖了,它们开始看起来像是每次优化。”

问题是设计的许多方面不能被封装和隔离。“设计正变得越来越模块化,”AMS at的产品管理和营销主管萨蒂什•巴拉苏布拉曼尼亚(Sathish Balasubramanian)表示西门子EDA.“我说的更加模块化,是指你能够抽象出来,创建一个CPU。这包括任何与CPU相关的东西,从实现,到如何编写测试平台,到功能覆盖.如果你能尽可能地保持它的模块化和隔离,如果你在组件中进行增量更改,这将使你的工作更容易。”

工程变更命令
物理设计就是工程变更指令的概念。eco是一些小的变更,接近于带出,它限制了变更的影响,因此也限制了必要的返工量。

Synopsys的Diamantidis说:“ECO的设计非常精确。“它不是被设计成一个大批量的过程。但是我们怎样才能让ECO的工艺更大批量呢?人工智能和机器学习在这个领域为我们提供了一些解决方案。我们被训练成追求最优的工程师。当我们有一组新的目标时,我们希望能够退出并重新优化。退回到某个点,然后重新优化到一个新的点的过程是我们以前没有做过的。然而,机器学习非常善于学习,并在设计发展的不同阶段统计分配某些解决方案的有用性。这是一个高维的大数据问题,我们可以开发模型,允许我们将设计倒退到一个点,然后重新优化到一个新的解决方案,具有高度自动化,由人类指导。如今,它是由人类手动执行的,我们遇到了生产力瓶颈。”

其中一个解决方案是利用高级合成.“在高级综合(HLS)的背景下,有一个有限的问题集,它工作得非常好,”Frank Schirrmeister说,at的解决方案与生态系统高级组主管节奏.“他们甚至称之为ECO。当您发现某些东西在实现中不起作用时,您可以快速做出更改,然后重新运行高级综合到实现流。”

其中许多类型的变化仅限于数字设计。“在射频设计中,对输出的最小变化都会产生很大的影响,”公司的系统模拟部门经理Ian Rippke说Keysight技术.“也许你会发现你的天线设计师不能像你希望的那样宽带上网。现在你有了一个稍微不同的阻抗剖面,这几乎需要回顾整个RF设计过程——当然,很快,因为你是在迭代。但没有办法将这些变化的影响本地化。”

但即使是数字化,也越来越难以将这些影响本地化。西门子的Balasubramanian说:“即使是一个简单的增量ECO看起来也应该非常小,但它可能会产生许多后端影响,迫使你运行整个流程。”“就后端实现而言,自动化程度很高,但验证是一个瓶颈。”

处理器设计
特定领域已经开发了工具和方法来实现增量。一个主要的例子是处理器设计。可扩展处理器包括Tensilica、ARC以及RISC-V。

Cadence的Schirrmeister说道:“有一种方法能够重复使用组件,但是能够根据你的工作量进行修改。“这些要求是由工作量决定的。在这个领域,你会故意说,‘如果我添加这五条指令,那么我需要存储更少的东西,我可以得到一个完全不同的算法实现。我可以得到一个完全不同的实现,需要不同的内存,或者更小的内存,或者有一个更低功耗的优化版本的设计,因为你得到了针对工作负载优化的实现。’”

在某些情况下,它从专门针对硬件的高级语言开始。“我们有特定领域的HLS,它是为cpu设计的,”zdenk pinkikryl说,at的CTOCodasip.“它使我们能够捕获关于指令的信息,关于管道的信息,关于它如何连接在一起,如何实现乘法或除法,等等。在最近的一个例子中,我们从RISC-V基线开始,然后尝试不同的扩展组合。我们能够生成模拟器,RTL,我们可以分析它。我们可以看到更改对性能、大小或内存占用的影响。然后我们探索了自定义扩展并定义了一些新的指令。问题得到了控制。”

当特定领域的设计成为一个区别时,能够自定义处理器是至关重要的。公司创始人兼首席执行官西蒙•大卫曼表示:“谈到处理器,每个人都想要稍微不同的东西治之软件.知道了这一点,Tensilica和ARC确保他们有一种方法,可以围绕处理器架构实现多种变体。如今,通过RISC-V, OpenHW正在采取同样的方法。它们围绕其核心提供了一个完整的环境,因此如果您想要进行更改,可以验证您没有破坏其他任何东西。当然,你仍然需要为你所更改的比特添加验证,但问题已经得到了控制。”

模拟的困难
另一种增量式设计可能不会改变设计中的任何内容。相反,它可以将现有的设计重新定位到不同的流程节点,或者适用于不同的细分市场。Balasubramanian说:“这在模拟世界中越来越普遍。“基于垂直应用空间,同样的设计可以针对七西格玛或五西格玛需求。当他们重新定位,或者在基础技术或工艺技术上进行增量设计时,情况就完全不同了。它会影响整个设计周期。”

模拟总是有问题。Schirrmeister说:“模拟世界和数字世界之间存在着巨大的差异,在两者之间还存在着混合信号。”“在纯模拟的世界里,你会做一些IP重用,但更多的是在人们所知道的基础层面上——如何布局晶体管等等。这就是体验发挥作用的地方。”

数字辅助可以提供帮助。Balasubramanian说:“我看到很多数字电路被整合到模拟IP中。“例如,我看到数字校准电路是锁相环电路或时钟电路的一部分,它们实际上构建了一些可变性处理。现在他们可以用数字电路来调整模拟。这意味着它们通过设计获得了正确的模拟行为。如果他们需要调整任何参数,这种设计的操作范围更广,也更灵活。”

模拟的部分问题是工艺技术是为数字优化的。你能改变底层流程而不是改变设计吗?Atomera公司首席技术官罗伯特•米尔斯表示:“模拟设备在规模化方面受到了限制。“在大多数情况下,一个典型的5伏晶体管的栅极长度可能在0.5到0.6微米之间。要在保持这些设备的可靠性的同时扩大规模有点困难。通过不对称结构,我们可以区分源侧和漏侧掺杂谱。然后,当你缩放栅极长度的时候,保持这些掺杂剖面在适当的位置,我们已经能够将栅极长度缩小到0.25微米。这是一个二因素,因此在更高的电流和更低的电阻等方面也是一个二因素。”

Atomera负责业务发展的副总裁Jeff Lewis提供了一些额外的细节。“你可以将硅和薄膜外延生长在一起,形成这些MST层。这将增加任何晶体管的驱动强度(见图1)。在器件的占地面积内,无需改变litho或其他任何东西,您可以获得更好的PPA工作点。你可以决定接受它,采用更高的驱动电流,这将使电路更快。其他人可能想用它来降低成本,通过缩小晶体管,直到驱动电流匹配,在任何节点上都形成一个更密集的平台。或者你可以降低功率,这对一些物联网应用来说可能很有趣,通过降低电源电压,直到驱动电流匹配,或者进行一些调整并将三者结合起来。”

图1:改变流程以实现设计重用。来源:Atomera。

图1:改变流程以实现设计重用。来源:Atomera。

一些常见的模拟问题已经找到了不同的解决方案。Keysight的Rippke说:“SerDes的设计领先于更通用的模拟和射频方面,因为至少有一个建模标准。”“你可以建立一个IBIS模型,或者IBIS- ami模型,它可以捕捉到内部发生的一些影响。但这仍然无法改变一个事实,即对上一代作品的任何小调整,都几乎构成了一个全新的设计。当从DDR4移动到DDR5时,我们可以在内存中看到这种情况。这不仅仅是提高数据速率和坚持使用相同的芯片和模块结构的问题。你又回到了起点。人们知道框架需要是什么样子、输入、输出,以及想要得到什么类型的眼图。但模型内部的内容成为重用的根本挑战。”

隔离
提高重用有效性的另一种方法是增加隔离。”Chiplets自然而然地推动我们进入一个完善的控制点的整个想法,从中我们可以优化前进,”迪亚曼提迪斯说。“这种模式不仅适用于硅。这也适用于系统设计。”

从系统开发过程中可以学到很多东西。Schirrmeister说:“你会发现这些自然的IP重用水平,因为这些东西是固定的。“有些人不再称之为设计了。他们称这些块为“实体”。你可能有三个性能版本的处理器,不同的内存,我把它们连接在一起。我仍然需要处理系统层面的问题,因为突然之间,处理电源启动的软件可能无法在设计实体的某些配置中工作。这增加了一个全新的复杂性层,因为现在你有了芯片的物理限制。”

小芯片增加了它们自身的复杂性。Rippke说:“在系统世界中,IP重用的想法实际上归结为拥有经过验证的模型,这也扩展到芯片的情况。”“在异构集成过程中,最终与该设计的其余部分相匹配的芯片必须具有足够的特性,以便消费它的人能够从模拟中得到合理的结果,并了解性能——包括功能和局限性。他们不一定会以全电路原理图或网络列表的形式,甚至是完整的数据集的形式,放弃所有的IP。这是增强这些不同类型电路或ic的建模过程的绝佳机会。”

随着UCIe标准的引入,这种情况正在发生。“这与模块化架构的创建有关,”Balasubramanian说。“它有助于创建一个更高抽象的标准,功能包含在一个芯片中。对于增量设计,它可能绑定到SoC中的特定芯片。验证或任何需要发生的更改都是非常独立的。这是在半导体设计方面提高吞吐量的方法。但这也有不利的一面。它不是最优的。无论何时使用抽象或模块化架构,与集成架构相比,它都不是最佳的。”

增量设计
当知道可能有许多设计变体,或者将来将使用增量方法时,有一些方法可以帮助最大化收益。迪曼迪迪斯表示:“我们的大多数客户都基于衍生品策略构建产品线。“这种衍生品策略基本上会从几个筹码到10个或20个筹码不等。它们都有相似的架构,但会为不同的市场选择不同的功能和不同的运行条件。问题就变成了,我们不是真正擅长增量地改变一个优化的设计,而是如何后退一步,在一系列条件下,针对不同的目标,快速有效地创建更可探索和优化的设计。换句话说,将其构建到原始设计中。如何将其构建到RTL中,甚至约束,或平面图,物理方面,以便我们可以利用可变性?”

要做到这一点,我们可能必须向邻近领域学习。“在电路板层面,射频和微波领域正在做一些有趣的事情,”Rippke说。“拥有一整套产品系列的公司可能会有一些内部最佳实践,在这些实践中,他们会使用特定的足迹,或者使用某些通用配置。然后,当需要轻微的更改时,您就有了一个方法来处理这些类型的更改或调整。它仍然需要大量的重新模拟和重新设计,因为你不一定要投入新的传输线。但至少拥有这个共同的边界条件对组织是有帮助的。这些方法对各个公司来说都是独一无二的。它不是像IBIS AMI建模标准那样在业界流传的东西。董事会模式没有公开的联盟。”

结论
IP重用不会消失,因为一个IP块中通常集成了大量的领域专业知识。重用的价值并没有减少,事实上,它很可能正在上升。问题是后端越来越多地受到意想不到的耦合的影响,这导致执行越来越多的全局分析。该行业没有适当的模型或方法来妥善处理这个问题。

虽然在设计增量方面取得了一些进展,但验证中的增量问题本身是一个主题,将在未来的故事中进行研究。



留下回复


(注:此名称将公开显示)

Baidu