历史上的今天
返回首页

历史上的今天

今天是:2025年02月04日(星期二)

2018年02月04日 | 使用系统优化编译器加速汽车电子产品设计

2018-02-04 来源:互联网

得益于摩尔定律,汽车电气系统经历了快速的技术增长。现代化的汽车已获得长足发展,不再是耦合了 AM 无线电的简单发动机电气系统。如今现代化的汽车搭载了多种高级电子系统,能够执行发动机控制、高级驾驶员辅助系统 (ADAS)、牵引力与稳定性控制、信息娱乐等功能,此外还针对某些尖端应用提供了自主操作能力。


这种汽车内电子系统部署的显著增长也带来了几个必须由设计人员解决的挑战:


· 性能 – 需要实时、低时延与高确定性的性能以实现例如 ADAS、ECU、牵引力与稳定性控制等多种车载功能。


· 安全 – 汽车电子系统实现关键功能,故障会导致受伤或死亡。因此,系统必须实现信息安全保障与防篡改技术,以防止未授权的修改。


· 安全性 – 必须符合 ISO26262 规定的汽车安全完整性水平。


· 接口 – 必须能够连接多种传感器、驱动器与其他制动器。


· 功率效率 – 必须在有限的功耗预算内高效运行。


· 软件定义 – 具备高灵活性以适应多种市场中的不同标准与条件。


为应对这些挑战,汽车电子系统开发人员正在部署片上异构系统 (SoC) 器件。异构器件将一个处理单元(通常为多核)与一个或多个异构协同处理器(例如 GPU、DSP 或可编程逻辑)相结合。


将处理单元与可编程逻辑相结合可构成紧密集成型系统,以便利用可编程逻辑的固有并行特性。该特性支持使用可编程逻辑 (PL) 实现高性能算法和接口连接,同时由处理系统实现更高级的决策制定、通信与系统管理功能。完成结合后,便可使可编程逻辑分担处理任务,从而创建更具响应性、确定性并且能效更高的解决方案。


就接口连接而言,异构 SoC 可支持多种业界标准接口,这些接口可通过处理系统或可编程逻辑实现。得益于 IO 结构的灵活性,可使用可编程逻辑实现关键的原有接口与定制接口。然而,这需要添加一个外部 PHY 来实现协议的物理层,从而提供任意连接。


某些异构 SoC 面向多个器件级与系统级安全功能提供支持,便于轻松实现。这些器件能够对启动和配置过程进行加密与验证。如果处理器内核是基于 ARM 处理器的,那么可使用 Trustzone 保证软件环境安全。有了 Trustzone,开发团队便可创建正交环境,通过使用程序管理器,对软件访问底层硬件进行限制。此外,这里也提供几个额外的设计选择,例如功能隔离,可以在设计中实现,以进一步加强取决于需求的安全解决方案。


传统的异构 SoC 开发流程把设计划分为处理器系统和可编程逻辑两大部分。这种方法在过去需要两个独立的开发团队,这会增加非重复性工程成本、开发时间与技术风险。此外,该方法还将设计功能固定在处理器内核或可编程逻辑中,使后期优化难以进行。


人们所需的开发工具应该可实现整个器件的软件定义开发,并有能力根据需要将功能从处理器内核转移到可编程逻辑,而且非 HDL 专家也能完成。


这正是系统优化编译器的用武之地。系统优化编译器能利用 C、C++ 或 OpenCL™ 等高级语言以软件方式定义整个系统行为。然后,使用系统优化编译器执行处理器系统与可编程逻辑之前的功能分区,该编译器能够使功能无缝移动,以便选择是在处理器系统中运行还是在可编程逻辑中实现。


通过使用处理系统内部的内置定时器来为功能执行时间计时,可找出造成瓶颈的功能,从而创建瓶颈功能列表。这些瓶颈功能便成为候选,以备通过使用系统优化编译器在可编程逻辑中实现加速。


处理系统与可编程逻辑之间的移动是通过系统优化编译器的高层次综合(可将 C、C++、OpenCL 程序转换为 Verilog 或 VHDL 描述的工具)与软件定义连接框架之间的结合来实现的。软件定义连接框架能够无缝地将 HLS 结果连接至软件应用,设计团队使用这种方法,一键点击就能在处理器和可编程逻辑间移动功能。当然在用户把功能移动到可编程逻辑时,他们也得到了明显的性能提升,自然这是使用可编程逻辑的结果。与 CPU/GPU 解决方案相比,在 PL 中进行加速还能提高确定性并降低时延,这对诸如 ECU 和 ADAS 的应用来说是至关重要的。


库支持


很多汽车应用都是使用业界标准开源库进行开发,例如在 ADAS 系统中使用 OpenCV 或 Caffe,或在 ECU 中使用标准数学库。为加快这些应用的开发,系统优化编译器需要能够支持多个 HLS 库,以便开发人员在其应用中使用。系统优化编译器应支持多个关键库,其中包括:


· OpenCV – 能够加速计算机视觉功能


· Caffe – 能够加速机器学习推理引擎


· 数学库 – 提供标准数学库的可综合实现。


· IP 库 – 为实现 FFT、FIR 和移位寄存器 LUT 功能提供 IP 库。


· 线性代数库 – 提供通用线性代数功能库。


· 任意精度数据类型库 – 使用有符号和无符号整数支持非2次幂的任意长度数据。该库允许开发人员更高效地使用 FPGA 资源。


这些库的提供为开发团队提供相当大的支持,让开发团队不必开发类似的功能。


真实实例


很多汽车应用的关键元素是保护数据以防止未授权修改,避免导致不安全操作。用来保护存储数据与传输数据安全的一种常用算法是高级加密标准 (AES)。AES 是在高级层面描述的,但最适合在可编程逻辑架构中实现的算法的范例。为了演示使用系统优化编译器的优势,已开发一款面向三种常用操作系统的简单 AES 256 应用。该实例最初只在处理器系统中执行,然后在可编程逻辑中实现功能的加速。


结论


异构 SoC 能够解决汽车电子系统设计人员面临的挑战。通过使用高级语言,系统优化编译器能够对这些器件进行开发,一旦使用处理器完成对应用功能的开发与原型设计后,处理器系统与可编程逻辑之间的功能分区即可得到优化,从而缩短开发时间,实现更安全、响应性更强、能效更高的解决方案。

推荐阅读

史海拾趣

EPCOS/TDK公司的发展小趣事

2009年,EPCOS与TDK元件事业部合并,标志着两家公司在电子元器件领域的强强联合。合并后的公司更名为TDK-EPC,由位于日本的TDK-EPC公司管理。这一合并进一步增强了EPCOS在电子元器件领域的实力,使其在全球市场中的地位更加稳固。合并后,公司继续投入大量研发资源,致力于开发更小、更轻、更高效的电子元器件,以满足不断增长的市场需求。

兵字(BingZi)公司的发展小趣事

随着市场的不断变化和客户需求的日益多样化,兵字公司意识到,要想在市场中保持领先地位,就必须不断进行技术创新。于是,公司投入大量研发资源,成功研发出了小型精密互感器。这一创新产品不仅填补了市场空白,还为公司带来了可观的收益。同时,兵字公司也凭借这一技术突破,进一步巩固了在电子元器件领域的领先地位。

Caddell-Burns Manufacturing公司的发展小趣事

随着环保意识的日益增强,Caddell-Burns Manufacturing公司也积极响应国家号召,致力于实现绿色发展。公司引进了先进的环保设备和技术,对生产过程中的废弃物进行无害化处理。同时,公司还研发了一系列环保型电子产品,满足了客户对绿色产品的需求。此外,公司还加强了对员工的环保教育,提高他们的环保意识,共同为保护环境贡献力量。

通过以上五个故事,我们可以看到Caddell-Burns Manufacturing公司在电子行业里发展起来的艰辛与辉煌。他们凭借过硬的技术实力、敏锐的市场洞察力和卓越的管理能力,在激烈的市场竞争中脱颖而出,成为一家备受瞩目的电子制造企业。

AdaptivEnergy公司的发展小趣事

随着环保意识的日益增强,Caddell-Burns Manufacturing公司也积极响应国家号召,致力于实现绿色发展。公司引进了先进的环保设备和技术,对生产过程中的废弃物进行无害化处理。同时,公司还研发了一系列环保型电子产品,满足了客户对绿色产品的需求。此外,公司还加强了对员工的环保教育,提高他们的环保意识,共同为保护环境贡献力量。

通过以上五个故事,我们可以看到Caddell-Burns Manufacturing公司在电子行业里发展起来的艰辛与辉煌。他们凭借过硬的技术实力、敏锐的市场洞察力和卓越的管理能力,在激烈的市场竞争中脱颖而出,成为一家备受瞩目的电子制造企业。

Dionics Inc公司的发展小趣事

为了进一步拓展国际市场,Dionics Inc开始寻求与国际知名企业的战略合作。经过多次洽谈,公司最终与一家国际知名电子企业达成战略合作协议,共同开发新一代智能穿戴设备。通过这一合作,Dionics Inc不仅获得了宝贵的技术支持和市场资源,还成功将其产品推向了国际市场。

Equinox公司的发展小趣事

在稳步发展健身业务的同时,Equinox还在不断探索新的领域。例如,公司推出了精品酒店品牌Equinox Hotels,将健身与旅游相结合;同时,Equinox还积极进军健康食品、健康科技等领域,以实现多元化的发展战略。未来,Equinox将继续秉承“健康、活力、高品质”的品牌理念,为全球消费者提供更优质的服务和体验。

问答坊 | AI 解惑

房间热力学仿真演示!

这是一个例子,想说明的就是simulink的模块化,层次化的好处,模型,只需要模型,参数仿真就好! …

查看全部问答>

二种差分探头技术参数比较

这是二种目前顶级的100M,1300V高压差分探头,如果你用这此类探头,从参数上来分析,你认为哪款要好点,探头分为标号1和标号2,点评时不要把标号搞错了,凡是参加的人员,我将把国内市埸上的同一等级(P5205为参照点)共六款在不同频率下所测出的波形与参数提 ...…

查看全部问答>

32位mcu开发全攻略

最近初学arm,感觉有点无从下手,希望高手给些建议,两个附件作为见面礼 [ 本帖最后由 yang_xian521 于 2009-12-10 10:17 编辑 ]…

查看全部问答>

反馈环路的稳定

这是从哪本书里专门讲环路稳定的,看了不错,和大家一起分享! 本书目录:   详细目录: 第一篇 开关电源的优化设计 第一章 绪论 第一节 电源 第二节 负载 第三节 安全 第二章 电路拓朴的实用选择 第一节 概述 第二节 一般性考 ...…

查看全部问答>

本人有全套车载导航程序,有需要的请 联系我。VC开发,无需控件。QQ:626149468

本人有全套车载导航程序,有需要的请 联系我。底层开发,无需控件。QQ:626149468  能用于WINCE平台。…

查看全部问答>

gdb调试问题,高人指教!!!!!

请问如何用gdb调试带命令行参数的汇编程序 如: ./readtest1    cpuid.txt 如果用查看pid的方法,由于readtest运行的很快。没等输入完成就已经运行完了。readtest1是汇编程序. 不知怎么做,才能调试,还有如何才汇编内加入暂停,谢谢 ...…

查看全部问答>

奇怪STM32复位问题?

                                 我用STM32f101c6t6和STM32f103vbt6各做20台仪表,复位电路10K电阻和1UF电容组成复位电路,发现103VBT6有时不能顺利 ...…

查看全部问答>

论坛改版了么,首页找不到TI M3了哦

顺便提个问:这是周立功的LM3S系列系统控制(SysCtl).pdf中的“在所有型号中,不论PLL输出是200MHz还是400MHz,只要分频数相同,则对PLL的分频结果都是一样的,统一按照200MHz进行计算。。例如,LM3S615芯片的PLL是200MHz输出,LM3S1138芯片的PLL是4 ...…

查看全部问答>

【设计工具】VHDL基本语言现象和实用技术教程

本书比较系统地介绍了VHDL 的基本语言现象和实用技术全书以实用和可操作为基点简洁而又不失完整地介绍了VHDL 基于EDA 技术的理论与实践方面的知识 。       …

查看全部问答>

关于差分运放时发生的小问题

谁能告诉我对于一个差分运放来说,其中一个输入电压是怎样线性操作的?…

查看全部问答>