更多数据,不同方法

随着设计中数据量的爆炸式增长,大数据工具和技术正在被添加到EDA和制造业中。

受欢迎程度

从最初的设计到物理布局,再到验证,再到制造阶段,扩展、复杂性的增加和集成都导致了数据的爆炸式增长。现在的问题是如何处理这些数据。

对于SoC设计,这些数据对于识别实际和潜在的问题至关重要。它还允许工作在后端设计流程的验证工程师了解在RTL、放置和路由阶段发生的事情,并为芯片制造商弄清楚为什么他们的芯片在铸造厂产量不佳。但是随着数据量的不断增加,过滤数据以提取有用的信息——数据越多,可以提取的有用信息就越多——需要更多的努力。

“大数据可以改变设计的方式,”公司营销副总裁迈克·吉安法尼亚(Mike Gianfagna)说eSilicon。“你可以为芯片收集所有信息,设定界限并存储这些知识以供以后使用。对于IP管理,您可以保存信息,设置时间表并确定这些时间表,并实际预测何时进行剔除。我们现在都是大数据公司。如果你想想一个巨型芯片,那可能是pb级的数据。”

一般来说,有几种方法可以用来处理不断增长的大量数据。有更多的工具被用于在设计流程的更多点上为高度特定的目的挖掘数据。越来越快的硬件和新的硬件架构被用来运行这些工具和提取重要数据。在数据一致性方面投入了更多的努力。

然而,所有这些都不是完全按照计划进行的——即使在确实有计划的情况下也是如此——而且结果在不同的设计、不同的供应商、不同的工具之间差别很大。什么是重要的理解上SoC设计方面的问题是,许多用于挖掘大数据的技术——例如,可以挑选出单个单词或一组单词或识别银行账号的算法——在设计领域并不适用。RTL,SystemVerilog,和UML包含非常不同类型的数据,而存储在大型商业数据库中的文本、数字、数字化图像和视频或多或少是同质的二进制代码,这是生成所谓的干净数据的关键区别

“第一步是能够从不同的东西中提取数据,这可能是总线结构上的窥探活动,但这些数据不同于代码覆盖度量,也不同于你需要多少模拟器,”验证营销经理Mark Olen说导师图形。“你需要从大量的数据源中提取数据,而不仅仅是一个由1和0组成的Oracle SQL(结构化查询语言)数据库。然后你必须查看时间/趋势数据并创建一个集中的数据库。但这种收集必须非常高效,因为仅第一部分就可以生成数tb的数据。”

下一个挑战是将所有这些数据过滤到系统工程师的单个仪表板中。虽然没有按钮式解决方案,但它至少可以让设计团队弄清楚何时何地需要使用哪些工具。到目前为止,所有数据的转换和关联被证明是这项工作中最棘手的部分之一。这不是一个直接的二进制转换,因为使数据有用的大部分是上下文和相关性。

奥伦说:“问题是你如何关联,‘在主网络的某某时候,这个交易被启动了’,然后,‘在某某时候,某个事情发生了’。”“这不仅仅是1和0。这不仅仅是翻译数据这么简单。你是在将数据随时间关联起来。”

他说这是最重要的比赛之一EDA-建立一个仪表板,可以将不同类型的数据融合在一起并使其有意义,以便工具可以随时随地应用。

设计数据
至少,它给这个问题增加了一种竞争的紧迫感。

“大数据是一个巨大的问题,而且越来越严重,”微软系统和验证组产品管理副总裁迈克尔·西文斯基(michael Siwinski)说节奏。“我们已经从太字节发展到拍字节,我们正在走向艾字节。设计的规模和复杂性呈指数级增长。硬件和软件结合在一起,你就有了更多的载体,必须把它们放在上下文中,才能发现更多的问题。”

在复杂的SoC中,这包括波形、事务数据和大量其他使用混合格式的代码。再加上验证、分析和优化,这些领域中的任何一个都可能很快失去控制。或者他们都可能失去控制,这并不罕见。

“基本上,你有一个巨大的干草堆,你试图找出如何找到几根针,”Siwinski说。“大多数时候,你甚至不知道你在寻找什么,所以你必须寻找问题的原因而不是问题的根源。正式是将问题最小化的一种方法,但了解问题的最佳方法是采取预防措施。”

他将流后端的数据描述为一个全新的噩梦。“系统验证增加了复杂性,从一个节点到另一个节点呈指数增长。首先是软件方面的影响,其次是电源/性能方面的影响,然后是整个芯片的安全和安全故障注入。”

大铁
虽然数据中心在处理大数据方面变得更加智能,但它们仍然依赖于更快的硬件。模拟和FPGA原型是EDA对更快硬件的回答,但处理大数据的更完整的图景涉及从内存到存储到网络的所有内容,并且远远超出了单个机器甚至集群的范围。

在过去的几十年里,商业数据中心一直在为此做准备——大致与20世纪90年代中期互联网的广泛采用一致。在SoC设计中,这仍然是一个相对较新的现象,除了大型芯片制造商的模拟农场现在正在向混合验证农场过渡。那么,芯片制造商能从大数据中心中学到什么呢?

微软高级战略营销经理Ron DiGiuseppe表示:“这一切都始于服务器虚拟化Synopsys对此。“如果你看看VMware正在做什么,它提供了跨多台机器扩展的能力。如果没有大数据,你就不会这样做。”

DiGiuseppe指出,要在芯片领域实现这一目标,需要解决一些问题:

1.更快的服务器处理,在安全加密/解密等特定任务上严重依赖协处理器;
2.更快地访问内存,包括新型的低延迟内存和缓存方案;
3.添加网络覆盖,例如虚拟可扩展局域网(VXLAN)和使用通用路由封装的网络虚拟化(NVGRE)将通信推到网络堆栈的更高层次;
4.计算资源的智能调度和优先级
5.的基础上更快地预先编写查询MapReduce的概念。

所有这一切的一个关键因素是拆分处理的能力,以便最大和最关键的任务由最强大的处理器处理。第二个是需要消除在内存之间和内存内来回移动数据的任何瓶颈,可能需要使用DDR4的后续版本,如高带宽内存或混合内存立方体。在单个设备之外,它需要处理器和存储之间更快的网络速度,以及跨高带宽网络的速度。

虽然这类数据量对芯片公司来说可能是新的,尤其是在验证阶段之外,但无论是金融机构还是云服务提供商,同样的原则都在发挥作用。在数据移动或处理的任何地方都需要消除夹点,特别是对于芯片制造商来说,数据需要在流的任何一点上比过去更快地可用。这里的挑战是,它不仅仅是一种类型的数据,而且所有数据都必须馈送到中心点,以与数据中心中的数据相同的方式进行管理。

混合的方法
然而,芯片设计与商业大数据世界的巨大不同之处在于,需要在如此多不同的相互关联的操作中快速收集和处理大量数据。要做到这一点,唯一的方法是提取多个点的数据,并弄清楚这些数据是如何相关的。这需要尽可能多的数据接触点,通常需要芯片制造商能够负担得起的工具,以及如何使用这些工具的强大工作知识。

“在过去,蛮力被应用于所有事情,”Cadence的Siwinski说。“现在的问题是如何让它更简单、更紧凑。要做到这一点,你需要聪明地处理数据,以获得更有用的结果。这在很大程度上取决于你是否充分利用了现有技术的优势。直到几年前,一些用户还在使用更典型的基于模拟的参数。现在他们使用更多的仿真、参数驱动的验证和智能bug。我们得到的反馈是,尽管数据量在增加,但生产率却在提高。所以你看到的是方法论和工具的转变。”

但是,让不同的部分一起工作并不总是像听起来那么简单,它需要技术用户做一些工作来弥合差距。

“我们通过自己的内部数据分析看到了这一点,”谷歌营销副总裁库尔特·舒勒(Kurt Shuler)说Arteris。“我们使用OLAP(在线分析处理),它可以从任何来源获取数据。但获得干净的数据是另一回事。在此基础上,你必须找出有意义的指标。然后你必须想出如何展示它,因为每个观众都是不同的。因此,如果你正在对芯片状态进行数据管理,你必须知道他们使用的是LEF(库交换格式)和DEF(设计交换格式)文件的哪个版本。”

获得所谓的“干净数据”也会一直持续到制造阶段。Optimal+负责全球营销的副总裁戴维•帕克(David Park)表示,即使是在代工厂层面,分析也只能与分析所依据的数据一样好。

“你可以在工厂A和工厂B生产一些东西,它们的运行方式不同,所以数据是不同的,”Park说。“如果你得到一致的数据,你可以对产量和质量进行数据挖掘,看看电子测试,晶圆分类,晶圆测试,最终的系统级测试。你甚至可以用它来创建一个质量指数。所以在坏邻居中可能会有一个好骰子因为其他骰子都失败了,但那个骰子是好的

另一种方法是建立一个数据库,记录芯片制造商内部哪些是正确的,哪些是错误的。Gianfagna说,在过去的五年里,硅谷一直在这样做。“我们做了一个录像,所有人都在甲板上,我们经历了难以置信的旋转,你可能会遇到细胞库的问题,所以你用另一个细胞库把芯片变小,然后再到下一个芯片上。但是你把所有这些配置和实验都存储在数据库中。有了它,您可以运行测试电路的试用实现,进行GDSII布局,提取,并将所有这些存储在数据库中。然后你可以用它来快速优化设计,帮助人们想出正确的芯片配方。”

结论
至少在过去的几个流程节点中,数据过载和不断增长的数据量一直是讨论的主题。在制造业方面,过去十年中检测和测量数据的数量一直在膨胀。在设计方面,可以忽略大部分数据并专注于40nm。在28nm,特别是在finFET在双模式的世界中,铸造厂,架构和两者之间的一切之间的差距,数据量不再可以被安全地忽视。

然而,解决这个问题需要的不仅仅是不同数据类型之间的接口或指标的链接。它需要从根本上改变混合异构数据类型的方式以及从数据中提取信息的方式。然而,结果可能相当令人惊讶。

“最近有一个例子,你可以利用第三世界国家的手机数据来预测霍乱的爆发,”Mentor的Olen说。“你可以跟踪运动和旅行,当人们生病时,这是不同的。你也可以对美国各地的犯罪模式做同样的研究,在美国,某些犯罪之间存在已知的关系,这些关系会引发其他犯罪。”

这些类型的混搭结果是否可以从设计世界中使用大量复杂的异构数据得出,还有待观察。至少,必须对数据进行挖掘,以弄清楚如何完成更平凡的任务,例如预测和识别错误,提高产量,以及按时按预算在高级节点上生产可工作的硅。在那之后,谁也说不准这些不断膨胀的数据能告诉我们什么。



留言回复


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

Baidu