太大而不能模拟?

传统模拟的蒸汽与自驾车辆和其他复杂的系统。现在怎么办呢?

受欢迎程度

与系统设计复杂性稳步向上的轨道发展,有些情况下,传统的模拟就跟不上。

使用的产品一个是谷歌,Uber,福特、通用汽车、沃尔沃、奥迪等自动车辆——是测试车在路上和收集数据,供以后分析。

“他们不是模拟,他们只是做这一切在现实世界中,因为他们不能模拟这些数以亿计的事情,”说,公司的首席执行官治之软件。“绝对是一个点,你可以不再模拟发生了什么,因为有太多的复杂性和太多的数据。一辆车可能50处理器运行,每一个以一定的速度运行。你可以做50的模拟这些东西,但它确实非常复杂的和复杂的。如果您可以构建它,你可以模拟它,但有些时候,你不妨使用真实世界的东西。如果你有它,把真实的东西,去推动它,看看会发生什么。但是确保你有一个安全帽。”

自动车辆进展现实,需要验证和测试这些复杂系统必须发生在多个水平。

“如果你想测试的所有软件的所有处理器同时,这样做在100%的准确率是不可能的,”尼尔·帕里斯说,高级产品经理手臂。“你不能运行模拟器速度不够快。也许你可以做一些东西模拟,但是速度将是一个挑战。那么大量的工程团队要做的是运行在一些快速模型像一个程序员的视图模型,所以你有一个软件视图,您可以测试所有关键的软件组件运行在该平台的交互和检查的软件高级模拟视图。”

异构的并发症
SoC设计是高度可伸缩的,多核和图形处理器。这种异质性,它相对容易过载模拟器的模拟花费数天时间,而不是房子。

“模拟时间还依赖于描述抽象层次,”博Zalewski说,硬件部门的总经理Aldec。“RTL-behavioral (synthesizable)将模拟速度比结构门水平。功能控制逻辑/ FSM将模拟的速度比计算密集型数据路径(dsp)”。

因此,模拟器对大型项目通常用于验证模块和IP水平,而覆盖SoC系统级硬件验证方法。但是今天,甚至子系统来说是越来越先进单位,导致仿真休息一天或更长时间,复杂,测试的范围也不断增加,他说。虽然UVM验证,已成为一个标准大ASIC和FPGA项目,是一个很好的工具在验证工程师手中,它需要大量的模拟能力。

幸运的是,有多个选项,以防模拟成为一个瓶颈,因为设计和测试环境的复杂性,根据Zalewski。“谈到子系统验证UVM的地方testbench正在测试的IP模块,自然的一步是使用模拟加速度。最新的模拟编译器支持SCE-MI模式,比如基于函数的pipes-based,变得几乎无缝的从UVM模拟UVM加速度。这种迁移减轻了模拟器和使相同的测试环境。感谢缩短仿真时间,可以提高测试的范围和覆盖面,这问题不可见在传统模拟现在在检测和修复范围。”

在SoC级别,可以使用混合动力仿真等方法,它允许一个虚拟平台或的结合SystemC模拟器,模拟器,他建议。这样一个验证方法这两个工具之间的分裂的SoC和提供了验证环境即使只有部分RTL代码可用。

大小的问题
不过,定义“太大”意味着什么不是一个简单的方程。不同的设计,应用程序和公司。

“太大可能是基于gate-counted大小的设计,但在模拟方面可能是一个更好的方法来测量所需的时间运行完整的测试用例集,“Zalewski指出。“可能是几个,但即使数以百计的测试执行,当需要超过一晚运行它使验证团队等待结果,推迟整个项目时间表,“Zalewski指出。

一些设计需要模拟post-place &路线网表计时注释,可以使中型设计“太大”的门数。在这种情况下,它可能是更有用的验证设计,重演RTL模拟测试向量在目标芯片速度。反过来,缩短了测试时间秒,提供了一个真正的系统验证环境。

弗兰克•Schirrmeister高级集团董事、产品管理系统&验证小组节奏建议的方法归结为抽象层次。的复杂性在汽车今天,模拟并不是在同一水平的精度,可用于RTL执行。

他指出整个网络模拟器波音公司开发的一架飞机。涉及到一个非常复杂的任务,不同的系统组件抽象出来,并突然服务器成为系统中的节点,Schirrmeister说。“你现在接触的水平上模拟你将模拟一个网络,如建筑物之间campus-what带宽从房屋建筑,多少纤维需要放在地上,如何开关需要配置,什么数据流量开关需要能够到达吗?这些类型的问题,现在你是抽象层次的抽象”。

嵌入式视觉
也许最复杂的工程挑战过去几年涉及视觉处理。汽车市场,因为它是如此普遍,以及其他市场,如虚拟现实和游戏,仿真其增长有着直接的影响。

“我们都(愿景)太多的理所当然,因为我们一直都这样做,但现实是它是极其复杂的,”迈克汤普森说,高级产品营销经理DesignWare弧处理器Synopsys对此。”我们正在建设的视觉处理器是最复杂的,35年来我一直参与在这个行业,它是有趣的去看底层功能发展。”

但自主车辆的视野只有一个组成部分。随着汽车电子的复杂性增加,交互成为可能更多的问题。

“在某种程度上,就像一辆车,你真的不需要看ABS制动系统与节气门控制系统,即使有明显一些链接,”汤普森说。“你不想地板汽车应用时刹车。但肯定是想看看ecu与ABS系统,这些都是成为复杂系统本身。”

从他的角度来看,传统的仿真方法并没有完全失去动力,特别是因为软件用这样一种方式,它可以分布在多个服务器。事实上,当Synopsys对此验证运行在处理器开发,它运行几个月达到万亿指令执行跨数千台服务器在一个大型服务器农场,汤普森说。

但它并不总是那么简单。副总裁Anush莫汉达斯·营销和业务发展NetSpeed系统指出,RTL模拟复杂的智能手机或一个引擎的汽车芯片是困难和恶化。

像许多其他人一样,莫汉达斯·指出提高抽象层次是必不可少的一步。“如果你真的想去详细的在门水平,你模拟的东西很小,然后提高抽象层次,你试图模拟。如果你试图模拟整个芯片,例如,你不发送的所有比特和字节,而是模拟它与某些事情。痕迹是什么?在抽象级别这个芯片是如何工作的?你模拟。你模拟,比方说,一个主板在车里,然后运行信息娱乐系统。关键是控制抽象层次,并代表这些不同抽象级别的模型。你仍然可以模拟汽车,除非你有非常不同的东西是什么样子的简化模型。关键是得到良好的处理是否有足够的抽象,所以它可以运行在一个有意义的时间有足够的细节,我可以从中获得的见解。”

不过,这会带来的说法太抽象杀死必要的精度,可以用于各种系统分析。这就是深度学习和机器学习可以发挥作用。

“当试图模型复杂的一辆车,或者进入汽车像一个SoC,机器学习可以用来表示有无数参数,”他说。“这是代替人类试图找出从那些不重要的参数。让我们试着使用的东西像一个基于机器学习算法来找出那是什么。”

在一天结束的时候,似乎不太可能,传统的模拟和相关技术将被扔在公共汽车。但是他们必须增强通过新技术来处理日益复杂的设计。

有关的故事
看到的未来愿景
自动驾驶汽车和其它使用要求更复杂的视觉系统。
嵌入式fpga成为主流?
可编程设备采用更多的细分市场,但他们仍然没有包含在主要出类拔萃。这可能会改变。
仿真的足迹
为什么突然模拟器是不可或缺的越来越多的公司,和接下来会发生什么。
一个正式的转换
独家:当你把正式的领导人来自世界各地在同一个房间里,给他们一个小时讨论部署?



2的评论

凯文 说:

RTL无疑是一个坏抽象级别做任何事,但仿真一样可伸缩的任何其他软件。真正的问题是,大多数常规(X86)计算机只是可怕的细粒度的并行处理。

机器用来做神经网络风格处理另一方面很擅长这样的事情,而且可能他们做粗电路模拟程序更容易比其他任务。

抽象级别使用可能是CSP -

https://en.wikipedia.org/wiki/Communicating_sequential_processes
http://usingcsp.com

如果你想用C + + -http://parallel.cc

迪帕克Pathania 说:

使用C语言像周期精确调试器可以是一个很好的解决这个问题。调试器将允许设置条件断点并执行相应的转储。此外使用OSCI模拟器是更好和更快的比传统的RTL模拟器。使用高级合成技术的控制以及数据密集型设计能够解决这个即使使用细粒度的计算系统。

留下一个回复


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

Baidu