亚搏电子
工业文章

通过enRode减少共同设计的SOC中的设计周期长度

2019年4月16日经过Greg Sullivan,Dover Microsystems

在本文中,我们解释了如何使用Antmicro的RENODE等开源功能模拟器可以是硬件软件共同设计工作的一个组成部分。

在本文中,我们解释了如何使用Antmicro的RENODE等开源功能模拟器可以是硬件软件共同设计工作的一个组成部分。

随着市场从嵌入式系统中需求更多,下一代SoC正在变得更加复杂,导致较长的设计周期和成本上升,根据Semico研究

设备制造商的令人沮丧的现实是提供新的创新功能的唯一方法,更大的安全,以及他们的客户要求的更好的性能是在串联中互动“整个堆栈”共设计,不断变化的硬件,固件,运行时(OS)和开发工具链。这样做允许硬件和软件团队解决复杂的权衡堆栈中的地方实现功能和优化。

遗憾的是,共同设计通常是延长设计周期的关键驱动器 - 因此,成本 - 当正确的仿真工具未到位时。

在本文中,我们解释了如何使用Antmicro的RENODE等开源功能模拟器可以是硬件软件共同设计工作的一个组成部分。Further, we’ll show you an example of how Renode users are able to leverage the tool to drastically reduce the length of their design cycles, provide a simple and effective means for customers to evaluate their solutions, and to begin adapting software collateral in parallel with hardware integration efforts.

软件模拟器可以缩短

在多佛显微系统的情况下,最好地说明挑选正确仿真工具的重要性。

Dover的CoreGuard®技术是唯一可以防止开发软件漏洞的解决方案,并使处理器能够防御基于网络的攻击。Dover能够通过八年的研发来实现这一目标,首先是DARPA崩溃计划中最大的表演者,然后在DRAPER实验室 - 这导致嵌入式系统的独特硬件/软件混合解决方案。

这种混合解决方案需要在硬件和软件组件之间紧密集成。CoreGuard Silicon IP是一种作为保镖的哨兵处理器,保护来自网络攻击的嵌入式系统。它监视主处理器执行的每个指令,以确保它符合已调用的定义安全性,安全性和隐私规则集微电机 - 核心套件的软件组件。如果指令违反现有规则,CoreGuard会在任何损坏完成之前停止其执行。

要完成此操作,CoreGuard需要跟上主处理器的执行。即平均而言,它必须能够以与受保护的主处理器的速率相同的速率退休(通过跨微大批准)指令。还希望CoreGuard最小化所需的内存量元数据管理

因此,满足性能,功率和面积要求需要复杂的优化与硬件和软件层的相互作用。

Dover的硬件团队使用标准SystemVerilog的过程和工具链。CoreGuard系统的初始原型是基于RISC-V的SOC。由于CoreGuard除了硬件IP之外,CoreGuard还具有大量软件组件,因此在任何硬件原型可用之前,软件团队能够良好地开始。

Dover的软件团队最初使用了Spike Risc-V ISA软件模拟器可从RISC-V GitHub Repos获得。他们遇到了两个问题,基于斯派克周围的CoreGuard商业发展:

  1. 斯派克没有提供任何现实的外围设备;也就是说,尖峰是ISA模拟器,而不是SOC模拟器。Dover团队开始将外围设备添加到UARTS和持久存储器上飙升,这是很多工作。
  2. 根据定义,Spike是RISC-V特定的,但Dover Microsystems的初始客户都是RISC-V和ARM的。

这些缺点突出了Dover对灵活的多架构模拟器的需求,其中包含概念的外围模型概念代替尖峰。

RENODE如何解决重要的共同设计需求

面对类似的异构硬件/软件共同设计工程挑战,源于使用开源Softcores,前沿计算平台,FPGA SoC的早期软件,以及RISC-V,Antmicro-Ane Open-Source的新兴CPU架构技术和服务提供商 - 开发了一种柔性仿真框架,称为enRode。

RENODE是一个分层,模块化模拟框架,用于在各种复杂系统中运行实际生产(即未修改)固件,包括互联的多节点,多架构,异构,MCU级和能力的系统。

为了解决这些各种复杂性,endode围绕着强烈的抽象概念构建,采用面向对象的模拟方法来构建。核心和外围设备被视为可以通过不同配置的接口连接的构建块,反映了真正的SOC是如何构建的。

模拟RISC-V SOC的示例

图1。模拟RISC-V SoC的示例。

图1显示了模拟RISC-V SoC的示例。每个构建块(包括CPU)都具有一组属性和API,可用于构造整个SoC的仿真模型。类似地,可以使用虚拟化无线连接(6LOWPAN,UART,以太网等)进一步组合成多节点系统。所有这些都不需要更改enRode的代码库,而是通过配置和脚本完成,减少学习曲线和限制码字碎碎片。

The Renode framework’s flexible nature, its open-source availability, and the existence of commercial support provided by its authors made it easy for Dover to first build a prototype implementation of their desired workflow and then contract Antmicro to implement (and release into the open-source domain) functionalities that made Renode even better suited for their use case, such as per-instruction execution.

特别是,使用enRode,Dover工程师现在可以:

  • 使用相同的设置切换ARM和RISC-V基于RISC-V的集成工作。
  • 原型SOC(参考/最小和客户定义)在不同级别的细节/保真度。

模型从Dover的硬件组中的硬件架构规范,然后对这些模型写入和测试固件,同时硬件正在开发中。

如何肾致显着降低了多佛的设计周期

Dover的CoreGuard技术是混合网络安全产品,其中硬件和软件设计都在发展。因此,重要的是Dover的开发过程允许对硬件和软件的并行开发和测试进行平行开发和测试。

多佛使用的开发过程。

图2。多佛使用的开发过程。

多佛正在使用图2中概述的开发过程。硬件和软件团队在硬件接口上协作(当然将继续发展)。由于硬件团队在SystemVerilog中的实现块,软件团队在C#中创建新块的模型,indode的母语。然后,软件团队能够编写与新硬件接口通信的固件,并测试该软件下的enerode模拟。最终,该软件在FPGA仿真器上运行。

这种开发过程由RENODE可以实现,已帮助Dover优化“低保真”和“高保真”模拟。

虽然这个“低保真度”仿真摘要摘掉了所有CoreGuard的硬件逻辑,但Dover仍然在以下上下文中找到此设置:

  • 微直通调试:什么时候CoreGuard Microbroicies.正在开发,我们希望快速迭代各种软件测试,检查行为。
  • 演示和客户预览:对于CoreGuard演示,纯软件模拟通常足以教育潜在客户了解CoreGuard®能力,并刺激进一步讨论的兴趣。此外,Dover通常会向客户提供“SDK”,该客户将与此“低保真”模拟器组成,其中一些预定义的微电机,以便客户与Coreguard一起“播放”,包括可能正在运行对客户软件的CoreGuard Microbies

在“高保真”模拟中,复制更准确的硬件模型,Dover工程团队已经能够识别enRode的许多好处,包括:

  • 与硬件启动ROM使用的各种非ELF(例如,散射负载)二进制格式集成。
  • 开发和测试启动过程;从Flash复制到RAM,初始化设备。
  • 使用enRode仪器调试总线流量。
  • 通过仪器调试外围设备(UARTS,PICS,CoreGuard接口本身)。
  • 使用内存地图。
  • 在硬件工作之前实现HDMI视频固件。

如前所述,存在一些具有挑战性的性能和区域限制,即在实施期间SoC设计团队的CoreGuard Place等下一代解决方案。

为了提高性能并降低内存使用情况,需要进行多种优化,这通常跨硬件/软件边界。

重要的是,设计团队能够探索大量可能的硬件/软件共同优化技术和权衡,而无需大型序列化的“第一硬件-To-Software开发过程”。灵活的软件功能模拟器,如RENODE允许Dover工程师在硬件软件鸿沟上进行协作,以便在硬件和软件复杂性之间找到最佳的权衡,使其成为他们的努力。

了解有关RENODE如何简化共同设计项目的更多信息,请访问Renode.io.。要了解有关CoreGuard如何保护嵌入式系统从基于网络的攻击,请求演示在行动中查看Coreguard。

本文是合作的迈克尔·格赖达,VP业务开发和Antmicro的联合创始人。

行业文章是一种内容的形式,允许行业合作伙伴分享有用的新闻,消息和技术,所有关于电路读者的行为编辑内容并不适合。亚搏电子所有行业文章都受到严格的编辑准则,目的是提供读者有用的新闻,技术专业知识或故事。在行业文章中表达的观点和意见是合作伙伴的观点,不一定是关于电路或其作家的所有人。亚搏电子