拥有数十亿或更多门的大型片上系统 (SoC) 已成为硬件和嵌入式软件验证的关键设计挑战。这些复杂的 SoC 设计集成了大量嵌入式软件,需要数十亿个时钟周期进行验证。它导致了一种多管齐下的 SoC 验证方法,允许将嵌入式软件验证的某些方面从硅后阶段转移到硅前阶段。
为了做好准备,让我们看看传统验证工具在服务于软件密集型 SoC 设计时面临的限制。然后,我们可以看到将这些工具与虚拟技术相结合如何可以在流片前改进大型硬件和软件系统的测试。
寄存器传输级 (RTL) 模拟器处理硬件设计模型。它非常适合硬件调试,因为它相对容易使用,而且设置和编译速度很快。但是,RTL 模拟器不适合嵌入式软件验证,因为需要的验证周期数达到数十亿。
传统硬件仿真
传统硬件仿真将 RTL 中定义的 SoC 设计编译到硬件平台上,并在其上运行验证测试,速度比仿真快 5 到 6 个数量级。然而,尽管它可以有效地调试硬件和软件交互,但仿真器传统上被配置为在线仿真 (ICE) 模式,其中大量电缆将被测设计 (DUT) 连接到外围设备。它是通过将 DUT 连接到现实世界的速度适配器来执行的。
随着复杂 SoC 设计的外围设备数量增加,外围设备的虚拟化大大增加了可用于硬件仿真的使用模型。
FPGA 原型设计主要用于验证芯片设计。传统上,软件开发人员使用 FPGA 原型进行软件验证,因为它比仿真速度更快,并且允许更长的软件运行时间。然而,FPGA 原型设计涉及大量的人工干预,这使得在大型 SoC 设计中调试软件成为一项乏味而痛苦的任务。
虚拟机的兴起
进入虚拟化原型设计和仿真,提供多种选择来验证和验证复杂 SoC 设计中的软件。许多公司现在开始使用仿真工具来确保软件开发在其 IC 设计中的协同作用。例如,多媒体、移动和网络市场的一些主要参与者正在使用Mentor Veloce 仿真平台来访问虚拟和传统方法的混合验证。
首先,有一些虚拟原型系统,从简单的存根代码到在 QEMU 中运行的虚拟板,再到更高级的虚拟原型系统,以帮助工程师验证他们的代码。其次,随着现代 SoC 中外围设备数量的增加,需要更精确的模型来要求接口虚拟化。
在这里,由模拟器和虚拟机组成的混合模型可以极大地简化 SoC 验证环境。混合和虚拟方法比在仿真或仿真上运行的 RTL 模型更快,因为处理器和一些周围的外围设备是在更抽象的级别上建模的。更抽象的模型更容易创建和验证,并且更易于移植。
Mentor Veloce 仿真平台允许通过 Codelink 等工具调试软件堆栈。
Veloce 仿真平台使用虚拟原型设计和类似虚拟实验室的环境,允许 SoC 设计人员通过 Codelink 和 WarpCore 等工具执行软件调试。以 WarpCore 为例,它结合了虚拟机和 RTL 执行环境,只有在不涉及太多硬件的情况下才会发挥作用。
审核编辑:郭婷
-
处理器
+关注
关注
68文章
20158浏览量
247654 -
FPGA
+关注
关注
1656文章
22304浏览量
630773 -
soc
+关注
关注
38文章
4521浏览量
227744
发布评论请先 登录
思尔芯荣登“国产EDA工具口碑榜”,以“芯神瞳”原型验证解决方案赋能芯片创新
如何验证电能质量在线监测装置支持的通信协议是否适用于特定设备?
智多晶EDA工具HqFpga软件的主要重大进展
在Linux ubuntu上使用riscv-formal工具验证蜂鸟E203 SoC的正确性
哪些传感器数据失真检测工具适用于工业环境?
哪些离线语音芯片适用于家电设备
华大九天物理验证EDA工具Empyrean Argus助力芯片设计
用于无线 LAN 的 2.4 GHz 高效前端和适用于蓝牙®应用的端口 skyworksinc
EDA是什么,有哪些方面
适用于 WLAN 和蓝牙®应用的 2.4 GHz 高效前端 skyworksinc
2.4 GHz、256 QAM 前端模块,用于 WLAN/ 和端口,适用于蓝牙®应用 skyworksinc
Veloce Primo补全完整的SoC验证环境

EDA工具适用于SoC软件验证环境
评论