隐性成本的转移了

可以节省多少时间和精力,做某些任务前,和在哪里疼痛点。

受欢迎程度

“左移位”一词被使用越来越多的半导体内的开发流程来表示曾经是顺序执行的任务现在必须同时完成。这通常是由于紧缩任务之间的依赖性。今天讲过这样的一个例子是需要执行硬件/软件集成流中更早,而不是让它作为一个连续的任务开始时第一个硅可用。但它的工作,它确实节省时间和精力吗?


图1:左移位影响硬件/软件开发。来源:半导体工程

系统已经明显改变了过去10年。从历史上看,提出软件硬件并不困难。系统架构仍然相当恒定,任务是相当可预见的。但这与现代系统已经发生了改变。“产品”越来越复杂,宣告亚历克斯·斯塔尔高级微设备公司高级研究员。“一个典型的系统今天有超过三十固件引擎,除了实际的CPU。有一个巨大的复杂性会增加+也有安全关心这些固件引擎,电源管理,所有由固件控制引擎。”

Suman Mandal,仿真架构师英特尔补充说,“还有更多的在系统可编程组件,和列表保持增长。你可以不再只是验证硬件。你可以不再仅仅是验证软件基于一个可伸缩的不变的硬件,并没有改变多少。你有奢侈的建筑在巨人的肩膀上,不用担心太多。今天,我们看到的这些聚在一起的时间很多工程社区不习惯。”

即使所有的知识产权块中使用一个系统详尽的验证,仍然存在验证挑战。“除非有一个公司让一切,那么你将总是有集成问题,“说Nasr Ullah,资深的工程总监三星奥斯汀研发中心。“即使你有一个公司,你会有集成问题。事情不一起工作,不管如何写。要求人们外观和算出来。”

当软件添加到方程,事情变得更糟。“什么软件做硬件和如何有效隔离非确定性等内容调试?”Mandal问道。“当你在做验证,如何找出什么时候会有错误,当只是按预期工作的事?有时只是你不希望它发生。隔离这些条件增加了挑战。”

它是不够的,只有软件运行。它运行得很好,需要协调。“你必须这样做之前在这个过程中为了保持竞争力,”斯塔尔补充道。验证工程师”,复杂性是很困难的,因为它并不总是与验证。你不能使用标准的工具,如模拟器。你需要模拟,你需要虚拟的平台,你必须理解软件在做什么。没有人知道发生了什么在这些大型软件工作负载,我们最终必须运行。”

这需要新的工具。“我们必须建立因果关系和之间的关系正在发生的事情在硬件、软件和正在发生的事情”Mandal说。“这些工具需要解决的挑战,我们需要一系列的工具从组件子系统到一个完整的系统。”

对速度的需要
当软件,运行时成为一个问题。“我们谈论仿真能够得到这些软件工作负载,我们已经做了很多系统仿真工作——但它太慢了,”斯塔尔说。“你不能得到足够的完成系统级模拟。”

Mandal表示同意。“模拟器速度越来越快,但设计也越来越大。在过去的五年中,性能基本持平。fpga原型有优势的领域。他们可以更快。也许5或10 x。差异是宽容的阈值延迟,交互性。这几个X有时足以跨越边界之间的软件团队说,“我不能使用这个,”好吧,我将管理。”

没有一种方法是最好的所有的问题。“即使最先进的仿真器,是不可能去很多角情况下,”比尔Neifert说,市场拓展部的高级主管手臂。“有时它只是原始的吞吐量,你需要。混合的帮助,但是如果你需要真正实现精确的行为,您需要使用fpga来处理。”

混合动力是什么?“未来的婚姻是模拟和仿真,“Ullah解释道。“你必须混合和匹配和有一个机制,可以很好地协同工作解决的速度和复杂性。”

需要软件模型的一些系统的组件。“这是20年前,当我开始使用虚拟建模、“Neifert说。“不幸的是,它并没有举起所有早期的承诺。但它是一个有效的和有价值的流的一部分。什么工作是分离模型的处理器上运行的软件连接到一个仿真系统运行的硬件。部分完成的速度,但也承认有一个处理器和它需要运行的所有软件,这使得更快调试。”

还有其他的时候添加虚拟模型可以帮助。“有一些事情我们还不知道,因为他们还没有实现,所以我们有软件模型,“Ullah说。“关键是时间。我们不想花费太多时间混合解决方案工作,我们不能用它。”

混合产生了另一个技术问题。”在一个混合的环境中获得足够高的性能需要大量带宽交易人,”斯塔尔说。“你怎么能养活交易人,实时,没有减慢系统吗?成为一个限制因素,fpga甚至不能接近解决。您可以使用fpga进行集中测试,但需要模拟器和混合,供应商需要投资来提高。”

离开多远?
正确的时间是什么时候开始开发和集成软件?“当手臂发展IP,我们就开始开发一个系统和软件甚至在概念阶段,“Neifert说。“我们从最早的方法我们可以开始。我们现在正在开发模型的处理器,我们甚至不会和伴侣谈谈一两年。”

臂并不是唯一一个。“我们开发性能模型在硬件开始之前,“Ullah补充道。“我们必须能够给建筑师关于他们需要做什么,我们依赖于模型允许我们做出权衡。这些是c++虚拟模型。”

这种情况是大多数设计了增量的本质。尤其如此的处理器和许多接口设计。“我们从上一代的设计和提取的痕迹的模型软件,我们可以运行在下一代,”继续Ullah。“一些可以虚拟模型,可以硬件,如果我们很幸运,我们得到,我们可以引导操作系统。然后我们可以看看更新的软件。在过去,曾经是所有功能完成时,但我们正。”

如果这么大的好处,为什么更多的人不这样做呢?“我离开我的整个职业生涯一直倡导转变,“Ullah承认。“我很高兴这个行业走向。我没有设想的是它的成本。它比我预期的高得多。有一个隐藏的成本,我们没有看。我们得到的所有模型,我们得到的硬件和软件,但是这一起工作是一个巨大的代价。”

斯塔尔表示同意。“是的,它一直有效。是的,它是痛苦的。有一个技术层面。但最难的一点是它的文化方面。你是用来做东西拖团队pre-silicon post-silicon环境和拉他们。软件团队总是以光速运行,试图让他们接受这些较慢的领域,即使验证团队认为他们是成千上万的时间更快,那些被推了。他们是令人难以置信的慢。”

这一切都回来的速度。“挑战总是从人们在右边,左看,Mandal说。“他们看到的一切是非常缓慢的。当我们说左移位我们实际上意味着离开,因为需要两个小时所做的环境中使用它们,可能需要两周左移位。是的,他们将做两到三个季度前,但这需要更长时间。这意味着需要分配更多的时间去完成的事情。”

也有把这个方法。”当你开始把东西留下的问题是,这些团队的周期不同步,”斯塔尔说。”的仿真工作可能是点他们想要在真正的硅,但你不希望他们就放弃一切,硅。这是一个资源分配的问题。”

Ullah表明这个问题的另一种方法。“有时解决这个问题的唯一方法,开始了战略转移时,是把它放在一个团队。而不是等待跟进团队学会做事情两个季度提前使用新工具,您构建一个团队,使主要的焦点。如果你改变文化的同时你把新的工具和方法,很难成功。”

有很多行业可以帮忙。验证工具,特别是针对系统级任务,必须考虑更多的软件和集成的意义。的Accellera便携式刺激标准是一个例子,这是一个问题。当前的提议草案不包括硬件/软件界面(HSI)层。如果它不使它成为第一个草案,这将意味着这个行业没有目标集成测试的标准方法。而有些供应商承诺包括此功能,将他们之间不具有可移植性。

有关的故事
最终的左移位
许多实现步骤移动早在设计流程。平面布置图是下一个,它包含从架构到物理。
芯片测试转变左
半导体测试移动过程中早些时候质量和可靠性变得越来越重要。



留下一个回复


(注意:这个名字会显示公开)

Baidu