如何提高SoC的开发效率?了解一下这个!

2018-12-14 14:00:15 来源: 半导体行业观察

近年来,由于SoC集成度的增高,新架构的出现,还有应用范围的扩展,开发者和终端市场对SoC推向市场的时间(Time to market的翻译,以下简称TTM)、软件硬件的集成、系统级别的验证(Validation)、系统性能、Systemic Complexity、异构架构、网络安全和功能安全都提出了更高的需求。

在这种背景下,UltraSoC就应运而生,帮助开发者解决这些问题。这家成立于2015年的公司是一家为系统级芯片(SoC)提供内部分析及监测技术的先锋企业。公司的嵌入式分析技术可支持产品设计人员去增加先进的网络安全、功能安全性以及性能微调等特性,同时还能解决文章开头提到一些SoC新挑战,以下几款工具和合作足以体现了他们对SoC的重要意义:

完整的IDE为SoC提供全面的支持

在今年十月,UltraSoC宣布推出其完整的集成开发环境(IDE)UltraDevelop 2,它为系统级芯片(SoC)开发团队提供了将全面的调试、运行控制和性能调整与先进的可视化和数据科学功能相结合的能力。通过融合UltraSoC合作伙伴Imperas和Percepio的技术,UltraDevelop 2释放出了UltraSoC系统级片上监控和分析基础架构的潜力,通过提供可操作的内在信息来大幅降低开发成本和缩短达成收入的时间,并提高产品的质量。

据介绍,新的UltraDevelop工具套件为SoC开发和调试提供了一种全面的、系统级的方法,从而支持工程师在任何抽象级别上去查看和分析硬件、固件和软件间的相互关联行为,并根据当前的任务在视图和工具之间去进行交互性地切换。UltraSoC新开发的数据分析扩展项提供了诸如异常检测、热点图分析和根本原因分析等先进功能。基于Percepio Tracealyzer工具的可视化功能可为工程师提供硬件操作和高阶软件执行的集成化可视性。而加入Imperas的MPD调试器,则可为当今的多核、多线程平台提供支持,包括那些将基于不同CPU架构的内核组合到复杂异构系统之中的器件。

基于行业标准的Eclipse平台,UltraDevelop 2提供了一个其中包含单步和断点代码执行状态的集成化可视环境,可用于SoC内硬件结构上的多个处理器、指令跟踪、以及实时和协议自适应的总线监控。工程师可以同时查看诸如内存控制器和互连/ NoC等硬件结构行为,以及所有通过多个不同内核的、甚至是不同架构的软件执行。简单单核调试的设计人员可以访问相同的集成化调试功能,同时使用开源GDB调试器。

UltraDevelop 2的架构可为SoC设计人员在选择开发平台时提供平衡功能和灵活性的最优方案。它包括一个调试适配器库,它可以对来自多家供应商的20多种处理器内核架构进行实时运行控制,这些供应商包括Arm、MIPS和RISC-V(由Andes、Esperanto和SiFive开发)等。在统一的Eclipse环境中,工程师团队可以从诸如Lauterbach等UltraSoC现有合作伙伴中选择去部署第三方工具,这些合作伙伴从底层就支持UltraSoC硬件功能,或者他们也可以选择UltraSoC提供的预集成配置。

通过添加新的分析和数据科学功能,UltraSoC独立于供应商的、系统级的硬件/软件调试方法得到了显著增强。UltraDevelop 2提供了一套可以对片上行为进行详细大数据分析的模块,可实现包括异常检测、热图分析和根本原因分析。这些包括案例应用和配置,例如用于诸如ISO26262和其他标准中强制实施的严格验证和确认等功能安全性、检测漏洞或不必要的互动的网络安全、以及诸如识别多线程软件栈中的低效率和在高性能计算环境中导致“长尾”错误的、难以发现的状态等性能优化。

UltraDevelop 2用户可以通过一系列脚本(Python)化模组来扩展这些功能、自定义框架和配置测试系统,这些模组可以直接访问UltraSoC片上监视器提供的数据。这些也提供了诸如终端服务等配置选项和更高级别的功能。

在UltraDevelop 2中加入的Percepio的Tracealyzer工具,为UltraDevelop套件带来了强大的数据分析和可视化功能,这使得硬件和软件开发两者相互结合。Tracealyzer工具“了解”软件或实时操作系统(RTOS)中高级事件的含义,连接相关事件和可视环境,并通过对系统级操作进行高度直观的、视觉化的展望,补充了UltraSoC硬件监视器收集的信息。它集成了一个非常快速和小巧的数据库,可以有效地显示、过滤或分析TB级的Trace文件。

通过集成Imperas的MPD,可允许UltraDevelop 2用户在一个平台中同时对多个应用处理器进行调试,包括单核、多核和多线程变量。外设可以同时与应用一起调试,让开发人员看到运行在平台和应用代码的上下文中的外设,并进一步扩展UltraDevelop 2的硬件/软件协同开发能力。这项集成是两家公司于2018年6月宣布建立广泛合作伙伴关系中的一部分,这将把嵌入式分析和虚拟平台技术结合在一起形成强大的合力,并推动统一的系统级流片前和流片后硅开发流程。

为了进一步实现为开发人员带来更高选择性和灵活性的目标,并为了支持可扩展性,UltraDevelop 2利用了行业标准接口,如Eclipse目标通信框架(TCF)、GDB远程串行协议(RSP)和压缩类型格式( CTF),以及MI这种通常用于在调试器后端和IDE前端之间进行通信的机器接口层。 此外,UltraSoC利用OpenOCD项目并添加自定义扩展,以通过其片上监控和分析硬件来提供调试支持,并将结果发布回开源社区以支持下一步的开发。

携手ResilTech提高汽车系统功能安全性

在今年十一月,UltraSoC和ResilTech日前宣布了一项合作计划,双方将结合其专业知识和技术来进一步提高汽车系统的功能安全合规性,尤其是符合ISO26262标准。UltraSoC的嵌入式分析技术为需要验证和审核其产品安全防护能力和功能安全性的开发人员提供了强大的平台,并集成了诸如异常检测和防止恶意入侵等硬件支持的安全性与安全防护特性。

UltraSoC提供的方法可与ResilTech的丰富经验非常完美地匹配,ResilTech专精于设计和验证高完整性关键系统,以及支持应用公司去提供符合最具挑战性安全标准的产品,特别是汽车应用。通过合作,两家公司将大大简化并提升设计人员对ISO26262和其他汽车安全性标准的理解、部署和合规。

此项合作也支持根据SAE J3061汽车网络安全标准来定义和支持实现安全保护要求,特别是在安全性与安全防护之间有必要进行评估和估算权衡的时候。J3061为具有不同关键性的子系统分配安全级别,该标准要求在从开发到现场使用的整个产品生命周期中监测和控制安全保护功能,包括能够去监测事故和侵入系统的企图并报告此类事件。

UltraSoC的嵌入式分析技术改进了汽车系统开发过程中的验证和审核工作;它可用于在已部署的产品里发现系统性和随机性错误,实现新级别的安全性和安全防护功能,并支持现场系统健康监测和高级取证。UltraSoC的分析基础架构实时工作并独立于主系统,且是非侵入式的。它的嵌入式分析还提供信息和分析,使设计人员能够更轻松地满足诸如ISO26262、SAE J3061、IEC 61508、EN50126/8/9和CE 402/2013等标准的功能安全性、风险评估、测试、报告和可追溯性要求。

ResilTech SRL专精于为包括汽车应用在内的关键性系统提供弹性计算。它支持设计人员和应用公司开发硬件和/或软件架构,并为嵌入在组件或系统级别的安全性相关应用程序提供软件组件。即使面向最新的质量、安全性和安全保护标准,该公司在产品和系统验证和审核方面仍然拥有雄厚的实力。

UltraSoC的基础架构包括专门针对提高汽车安全性与安全防护能力而优化的功能,包括用于检查冗余模块之间一致性的锁步监测器;同时其裸金属安全防护能力(Bare Metal Security®,BMS)提供“比操作系统更底层”的、基于硬件的安全防护级别。对于攻击者,BMS是极难被发现或被破坏的,并且BMS支持SAE J3061标准的要求。

UltraSoC首席战略官Aileen Smith评论道:“我们很高兴能与ResilTech合作,这是一家基因中都有功能安全性的公司。我们正越来越多地看到UltraSoC的嵌入式洞察分析在监测诸如汽车设计等复杂的、安全性至上的系统的不同组件时,所发挥的重要作用。我们看到与ResilTech团队合作的巨大价值,ResilTech本身与世界各地的组织密切合作,助力他们提高功能安全性和标准合规性。”

为注重安全性的系统推出适用“任何处理器”的锁步解决方案

在上个月底,UltraSoC宣布推出其UltraSoC Lockstep Monitor锁步监测器。作为一种基于硬件的可扩展解决方案,新型Lockstep Monitor锁步监测器通过检查关键系统核心单元的处理器内核是否在可靠、安全、无隐患地运行,显著地提高了其功能安全性。 UltraSoC灵活的半导体知识产权(IP)支持所有常见的锁步/冗余架构,包括双冗余锁步、分离/锁定、主系统/核查器、以及利用任意数量内核或子系统投票等全部模式。

UltraSoC Lockstep Monitor锁步监测器可以支持任何处理器架构或其他子系统,包括自定义逻辑或加速器。许多安全标准都要求锁步操作,例如汽车领域的ISO26262、以及IEC 61508、EN50126 / 8/9和CE 402/2013。

新的Lockstep Monitor锁步监测器由一套可配置的半导体知识产权单元模块组成,它们具有协议感知功能且可用于在两个或多个冗余系统之间完成输出、总线繁忙度、代码执行、乃至寄存器状态的交叉检查。它可以用于任何处理器架构,包括诸如新兴的RISC-V结构等那些对锁步配置缺乏原生支持的处理器架构。除了传统的处理器内核,它还可以检查其他子系统或加速器。因为它是在硬件中实现的,所以它能以线速完成响应并且不会为主系统带来任何能耗负担。

与传统方法不同,UltraSoC Lockstep Monitor锁步监测器包含灵活的、运行时可配置的嵌入式智能,从而支持系统级芯片(SoC)设计人员根据应用精确地定制监测和响应系统。监测功能可以在各种细节层次上实现:在子系统级别(比较两个处理器的输出),在指令交互级别(例如比较总线流量),使用UltraSoC的高级指令跟踪功能实现指令级别,以及通过检查内部状态或者寄存器内容在最底层的硬件级别实现。

通过在系统中嵌入智能,UltraSoC还可以在锁步处理器的操作之间实现比传统解决方案更精密的比较。例如,如果锁步处理器共享一个存储空间,它们不能在完美的、逐个周期的同步中运行;UltraSoC的片上分析功能可用于关联冗余处理器内的活动,并根据检测到的任何异常的性质来定制系统的响应。

RISC-V在注重安全性的应用中正在发现越来越多的发展机遇,特别是在汽车行业中前景看好。然而,整个RISC-V生态系统目前缺乏对诸如锁步操作等功能安全性和安全防护规则的支持 ,但是它们却是许多全球性标准强制要求的,如ISO26262强调的功能安全性、J3061强调的网络安全,以及IEC 61508、EN50126 / 8/9和CE 402/2013等全球性标准。UltraSoC的Lockstep Monitor锁步监测器支持无论是使用了开源还是商用内核的任何RISC-V系统去集成精密的安全功能。

锁步系统在一个冗余备份配置中使用两个或多个处理器子系统来运行相同的代码,这些内核可以是时钟周期同步的,或通过少量的周期来进行补偿,这种设计可以防止周边系统中的瞬态误差。通过比较来自子系统的输出、代码执行或总线流量,并在结果出现不同时对其中的错误发出报警信号。带有两个处理器的锁步系统通常以“主系统/核查器”的方式进行配置;而拥有两个以上处理器的系统则可以使用“投票”或者其他冗余方案。更精密的“分离/锁定”处理器部署则可以支持锁步功能被动态地连通和断开,允许内核以冗余模式运行或运行不同的代码以获得更高的性能。

由上可以看到,有了UltraSoC,SoC的很多问题将能迎刃而解。你准备好拥抱他们了吗?

责任编辑:Sophie

相关文章

半导体行业观察
摩尔芯闻

热门评论