2016年4月26日 英特尔

在模拟器的海洋中游泳

作者:Jakob Engblom,英特尔产品管理工程师

jakob-for-wr-jive

回到风河博客很有趣,即使它“只是”一个客座博客。lol亚博对抗赛我写了很多关于风河系统公司西米奇我已经从风河公司搬到英特尔软件和服务集团的系统仿真团队,继续这样做是很有趣的。在英特尔内部,我发现了许多很酷的模拟技术(以及许多很棒的产品和聪明的人)。仿真是软件和硬件设计的关键部分,英特尔很好地利用了它。

到现在为止,我已经在Simics*工作了将近15年,甚至在我加入这个团队之前,我就已经在为我的博士学位编写一些模拟器。Simics是一种特殊类型的模拟器(基于快速功能指令集的虚拟平台),但是还有许多其他的抽象层次、细节选择和建模和仿真方法。在这篇文章中,我将介绍到目前为止我遇到的一些模拟技术,包括硬件开发和软件开发。

众所周知,硬件架构师使用微架构级模拟器来评估和探索设计变体。他们还使用更高级的模型,这些模型只处理互连的延迟和带宽,从而勾勒出系统架构。没有单一的工具或框架可以覆盖所有的用例,而是一组用于不同目的的工具。在英特尔生产的每一个产品背后,都有大量的建模和仿真来设计和验证它,并使软件成为可能。这就是硬件设计是如何完成的,并且已经持续了很长一段时间至少要追溯到20世纪60年代!

为了验证对软件有重大影响的系统级更改,您需要一个快速的功能模型,运行代码并为新功能建模,以评估软件将如何利用新的硬件特性。这个角色可以由Simics很好地填补,就像在早些时候博客。类似地,模拟器可以用来评估和原型新的指令集扩展,以确保它们在真实的软件中工作和有用。

当信号处理算法进入一个系统时,仿真被用来验证算法做了它们应该做的事情,并决定把哪些部分放到硬件中,哪些放到软件中。

软件开发人员还需要下一代平台的模型来开发固件、UEFI系统固件、驱动程序和操作系统几年前写的)。这缩短上市时间并提高硬件和系统解决方案的质量。最后,利用这些仿真模型,使围绕英特尔软硬件的整个生态系统,加速系统开发和客户部署新解决方案。工作得越好,解决方案就越快地到达消费者和IT专业人员的手中。

回到硅设计,为了验证硬件设计,您必须在软件模拟器和专用硬件设备上运行实际RTL的模拟。这本身就是一个巨大的领域,在这方面我绝对不是专家。我只想说,如果没有RTL模拟,硅很可能永远不会第一次工作。

电源和电源管理是现代计算机设计中一个非常重要的方面,而我本人也相当接近Docea英特尔去年收购的一个团队。Docea工具套件是关于开发电源模型和运行仿真场景来验证和优化电源设计的。非常酷(或者我应该说热?)的东西,你甚至可以得到一个虚拟的芯片平面图,显示它如何在运行时变暖。

我身边的另一个工具是英特尔®CoFluent™工作室建模工具集,它允许您使用高级模型来评估系统性能、维度和架构系统。Intel CoFluent Studio模型使用数据流对算法、软件、硬件和通信通道的行为进行建模。这是一种非常通用的建模形式,可用于设计硬件加速器的微体系结构,以及确定您的千节点物联网传感器部署,或者抽象地探索数据处理节点的软件体系结构。

这真的就像在模拟器的海洋中游泳,并一直学习东西!

真正有趣的是当你开始这样做的时候组合和集成不同类型的模拟器。当您将模拟不同现象并在不同抽象级别上运行的模拟器组合起来时,您就可以构建一些真正了不起的组合系统。其中一些集成已经公开,例如将一个Intel服务器平台的Simics模型与硬件加速器的详细模型为了测试硬件设计与现实的输入从一个完整的真实的驱动程序堆栈。在一些情况下,我们使用Simics及其平台模型作为一种方式,将子系统或特定现象的不同模拟结合到组合模型中。

我希望我能说出来更多的模拟故事展望未来,有很多东西要告诉我们!

*其他名称和品牌可能被认为是他人的财产。

没有任何计算机系统是绝对安全的。英特尔技术的特性和优势取决于系统配置,可能需要启用硬件、软件或服务激活。在intel.com了解更多,或从OEM或零售商。

以前的风河公司被授予“最佳工作场所”称号
下一个指纹安全漏洞:Linux注意事项