FireSim 简介
FireSim是一个基于 FPGA 的 cycle-exact逐周期精确全系统模拟平台由 UC Berkeley 在 2018 年的 ISCA 论文中首次发表。它是 CHIA 案例研究中的核心基础设施之一用于在公有云中对完整的 RISC-V SoC 进行高速、高保真度的硬件验证。一、FireSim 是什么属性说明全称FPGA-accelerated Cycle-exact Scale-out System Simulation开发方UC BerkeleySagar Karandikar 等首次发表ISCA 2018开源是BSD 许可证核心能力在 FPGA 上运行与真实硬件逐周期等价的完整 SoC运行环境公有云AWS EC2 F1 实例或本地 FPGA概括FireSim 让数字逻辑工程师在 FPGA 上造芯片但不需要流片——它能在 AWS 上以接近真实硬件的速度运行完整的 RISC-V Linux SoC。二、为什么需要 FireSim传统芯片验证方法的痛点方法速度保真度可扩展性成本RTL 软件模拟Verilator/VCS极慢KHz级高cycle-exact差低真实硅片最快GHz级最高差需流片极高数百万美元FPGA 原型快MHz~百MHz级高中等中等需硬件FireSim快MHz~百MHz级高cycle-exact极强云上百实例按需付费FireSim 的核心价值比软件模拟快 1000~10000 倍——可以在合理时间内跑完 SPEC 全量测试25万亿条指令比真实硅片便宜 1000 倍——无需流片按小时租用 AWS FPGA 实例比传统 FPGA 原型更易扩展——可在 AWS 上同时启动数十甚至上百个 FPGA 实例三、FireSim 的技术架构3.1 核心组件┌─────────────────────────────────────────┐ │ FireSim 全系统模拟栈 │ ├─────────────────────────────────────────┤ │ 目标软件Linux 用户程序SPEC等 │ ├─────────────────────────────────────────┤ │ 目标 SoCRISC-V Core 缓存 总线 │ │ DMA 网卡 磁盘控制器 │ ├─────────────────────────────────────────┤ │ FireSim 中间层FPGA 上的 RTL 转换 │ │ - Golden GateRTL→FPGA 综合优化器 │ │ - FAME-1 转换时序分区的 cycle-exact │ ├─────────────────────────────────────────┤ │ AWS F1 FPGAXilinx UltraScale VU9P │ ├─────────────────────────────────────────┤ │ 主机端模拟编排 分布式网络模拟 │ │ - 节点间网络Simulated NIC→Switch │ │ - 磁盘NBD over 网络 │ └─────────────────────────────────────────┘3.2 Golden GateRTL→FPGA 的关键转换FireSim 的核心技术创新是Golden Gate编译器输入Chisel/FIRRTL 描述的 SoC RTL如 Chipyard 生成的 BOOM/MediumRocket输出可在 FPGA 上运行的 bitstreamGolden Gate 执行FAME-1FPGA-Accelerated Microarchitecture Evaluation转换将 RTL 中的组合逻辑和时序逻辑重新分区使得一个 FPGA 时钟周期可以模拟多个目标时钟周期同时保持cycle-exact的行为等价性。这意味着 FPGA 上运行的每一拍都精确对应目标 SoC 的一拍——你可以读取与真实硅片完全一致的 performance counter 数据。3.3 分布式网络模拟FireSim 不仅模拟单个 SoC 节点还能模拟多节点互联的分布式系统每个 FPGA 实例运行一个完整的 SoC 节点节点之间的网络通过 FPGA 间的逻辑连接模拟支持自定义网络拓扑如 Torus、Fat-Tree网络行为也是 cycle-exact 的这使得 FireSim 成为研究数据中心级系统架构如 Rack-scale 设计的强大工具。四、FireSim 在 CHIA 案例中的实际使用CHIA 论文中 FireSim 出现在多个关键验证环节案例 2RISC-V ISA 扩展验证“对于 Bitmanip 和 Zicond…包括所有 25.5 万亿条指令的 SPEC06 参考套件”Bitmanip 和 Zicond 扩展的 RTL 在 Verilator 上通过小规模测试后最终在 FireSim 上启动 Linux 并运行完整 SPEC06在 12 个 FPGA 实例上并行执行大幅缩短验证时间案例 3关键路径优化的 IPC 验证“使用 FireSim 将迭代 7 与基线在所有 25 万亿条指令的 SPECint 2006 参考基准测试套件上进行比较”Verilator 上估算的 IPC 损失3.20%与 FireSim 实测结果3.28%高度吻合这证明了 Verilator 快速筛选 FireSim 最终验证的两级验证策略的有效性案例 4进化式架构发现“人们可以轻松地将更大的设计编译到 FPGA 加速 RTL 模拟器如 FireSim上并在更短的时间内执行更长的工作负载”FireSim 作为进化搜索中的高保真评估后端相比 ChampSim 等软件模拟器FireSim 提供真实的 cycle-by-cycle 性能数据真实的功耗/面积数据通过 Hammer 综合更长的工作负载数十亿 vs 数亿条指令五、FireSim 与相关工具的对比特性FireSimVerilatorQEMUgem5执行速度~100 MHz (FPGA)~1 KHz~1 GHz (主机)~100 KHzCycle-exact✅ 是✅ 是❌ 否⚠️ 可选全系统模拟✅ 是✅ 是✅ 是✅ 是真实 RTL✅ 是✅ 是❌ 否❌ 否PPA 数据✅ 可结合 Hammer❌ 无❌ 无⚠️ 估算云原生✅ AWS F1✅ 任何服务器✅ 任何服务器✅ 任何服务器启动 Linux✅ 是✅ 是慢✅ 是✅ 是FireSim 的不可替代性如果你想快速知道代码是否正确→ Verilator如果你想精确知道性能如何→ FireSim如果你想研究微架构新想法→ gem5如果你想跑真实系统软件→ FireSim 或真实芯片六、FireSim 的技术局限尽管功能强大FireSim 也存在限制FPGA 容量限制单个 AWS F1 FPGAVU9P只能容纳约 ~10M 门电路对于大型多核 SoC 可能需要分片编译时间长从 RTL 到 bitstream 可能需要数小时CHIA 案例中提到 ~1-2 小时云成本AWS F1 实例按小时计费大规模并行实验成本不低CHIA 案例中使用 12-28 台机器调试可见性相比软件模拟器FPGA 上的信号观测更困难需通过 ILA 等调试接口七、总结FireSim 的定位它是连接敏捷开发与真实验证之间的关键桥梁——让你在没有流片的情况下以接近真实硬件的速度和精度验证完整的 SoC 设计。在 CHIA 框架中FireSim 充当最终的、最高保真度的验证关卡AI 生成的 RTL 首先通过软件模拟器快速筛选最终必须在 FireSim 上启动 Linux 并通过全量基准测试才能被认为是成功的。这种快速筛选 精确验证的两级策略正是 CHIA 能够高效处理大规模设计流程的核心支撑之一。

相关新闻

羽球联盟 HarmonyOS NEXT 实战系列 (07/20):NavBar、SearchBar、SegmentTab与卡片组件复用

羽球联盟 HarmonyOS NEXT 实战系列 (07/20):NavBar、SearchBar、SegmentTab与卡片组件复用

文章导读常见页面骨架被抽成 NavBar、SearchBar、SegmentTab、Card 等组件。组件传入数据和回调,不直接耦合业务数据仓库。卡片组件负责展示一致性,页面负责列表、筛选和跳转。页面效果首页、搜索页、赛事页和个人中心会反复出现导航、搜索、分段筛选和卡…

2026/7/6 13:38:33 阅读更多 →
动态数码管(上)

动态数码管(上)

本实验用的开发板是野火的开发板,用的是EP4CE10F17C8这个芯片,还有两片74HC595芯片和一个六位八段的数码管。一、整体的结构框图二、单个模块结构框图和时序图三、数据生成模块的代码module data_gen(input wire clk ,input wire rst_…

2026/7/6 13:34:30 阅读更多 →
VUE动画效果(一):基础篇,<Transition> 组件的 6 个过渡类名和基本用法

VUE动画效果(一):基础篇,<Transition> 组件的 6 个过渡类名和基本用法

前言&#xff1a; 本文是 《Vue 动画效果》系列的第一篇&#xff0c;聚焦于最核心的 <Transition> 组件&#xff0c;带你搞懂它的 6 个过渡类名、name 属性、duration 属性以及与 v-if/v-show 的配合。掌握这些&#xff0c;你就能写出流畅的进入/离开动画了。 核心一&…

2026/7/6 13:34:30 阅读更多 →

最新新闻

无障碍设施开放公告增量采集,实战教学!

无障碍设施开放公告增量采集,实战教学!

㊗️本期内容已收录至专栏《Python爬虫实战》,持续完善知识体系与项目实战,建议先订阅收藏,后续查阅更方便~ ㊙️本期爬虫难度指数:⭐⭐⭐☆☆(进阶级) 🉐福利: 一次订阅后,专栏内的所有文章可永久免费看,持续更新中,保底1000+(篇)硬核实战内容。 全文目录: 🌟…

2026/7/6 14:33:27 阅读更多 →
视频号下载神器:3分钟搞定全网热门资源批量下载的终极指南

视频号下载神器:3分钟搞定全网热门资源批量下载的终极指南

视频号下载神器&#xff1a;3分钟搞定全网热门资源批量下载的终极指南 【免费下载链接】res-downloader 视频号、小程序、抖音、快手、小红书、直播流、m3u8、酷狗、QQ音乐等常见网络资源下载! 项目地址: https://gitcode.com/GitHub_Trending/re/res-downloader 你是否…

2026/7/6 14:31:26 阅读更多 →
怎样判断一个技术人的认知在你之上:不是会说大词,而是这7个信号

怎样判断一个技术人的认知在你之上:不是会说大词,而是这7个信号

文章目录前言一、第一个信号&#xff1a;他先管理身体&#xff0c;而不是先喊意志力二、第二个信号&#xff1a;他遇到问题先找信息差&#xff0c;而不是急着表态三、第三个信号&#xff1a;他不跟你硬吵&#xff0c;因为他看到的是地基四、第四个信号&#xff1a;他情绪稳定&a…

2026/7/6 14:29:23 阅读更多 →
具身智能的定义、特征与原理解析(3)

具身智能的定义、特征与原理解析(3)

前沿技术介绍&#xff1a;AI智能体视觉&#xff08;TVA&#xff0c;Transformer-based Vision Agent&#xff09;是依托Transformer架构与“因式智能体”理论所构建的颠覆性工业视觉技术&#xff0c;属于“物理AI” 领域的一种全新技术形态&#xff0c;完成了从“虚拟世界”到“…

2026/7/6 14:29:23 阅读更多 →
宠物展会活动目录监控:用 Python 构建可复用的展会采集、时间序列化与 CSV 导出系统

宠物展会活动目录监控:用 Python 构建可复用的展会采集、时间序列化与 CSV 导出系统

㊗️本期内容已收录至专栏《Python爬虫实战》,持续完善知识体系与项目实战,建议先订阅收藏,后续查阅更方便~ ㊙️本期爬虫难度指数:⭐⭐⭐☆☆(进阶级) 🉐福利: 一次订阅后,专栏内的所有文章可永久免费看,持续更新中,保底1000+(篇)硬核实战内容。 全文目录: 🌟…

2026/7/6 14:27:22 阅读更多 →
机器学习与模式识别 第十八章 LLM的训练与应用 考点压缩

机器学习与模式识别 第十八章 LLM的训练与应用 考点压缩

第十八章&#xff1a;LLM Training and Applications — 知识点笔记综合来源&#xff1a;Lecture 18 PDF&#xff08;44页&#xff09;、课堂笔记&#xff08;CSDN&#xff09;占位图18.1 LLM完整推理流程 输入文本 → Tokenization → Embedding查表 → PE → Decoder Transf…

2026/7/6 14:27:22 阅读更多 →

日新闻

H2 与 MySQL 单元测试兼容性:5 个关键 SQL 语句差异与规避方案

H2 与 MySQL 单元测试兼容性:5 个关键 SQL 语句差异与规避方案

H2与MySQL单元测试兼容性&#xff1a;5个关键SQL语句差异与规避方案1. 单元测试中的数据库兼容性挑战在Java开发领域&#xff0c;单元测试是保证代码质量的重要环节。当应用涉及数据库操作时&#xff0c;测试环境的搭建往往成为开发者的痛点。H2数据库因其轻量级、内存模式和快…

2026/7/6 0:01:17 阅读更多 →
Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘

Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘

Windows任务栏终极清理指南&#xff1a;用RBTray一键隐藏窗口到系统托盘 【免费下载链接】rbtray A fork of RBTray from http://sourceforge.net/p/rbtray/code/. 项目地址: https://gitcode.com/gh_mirrors/rb/rbtray 你是否厌倦了Windows任务栏上密密麻麻的图标&…

2026/7/6 0:01:17 阅读更多 →
Visual C++ 运行时库一键安装终极指南:告别DLL缺失烦恼

Visual C++ 运行时库一键安装终极指南:告别DLL缺失烦恼

Visual C 运行时库一键安装终极指南&#xff1a;告别DLL缺失烦恼 【免费下载链接】vcredist AIO Repack for latest Microsoft Visual C Redistributable Runtimes 项目地址: https://gitcode.com/gh_mirrors/vc/vcredist 你是否曾经遇到过这样的情况&#xff1a;下载了…

2026/7/6 0:05:19 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools&#xff1a;5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱&#xff0c;支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/6 8:11:50 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里&#xff0c;参与了关于混合后量子密码学的讨论&#xff0c;应付端点攻击找茬的人&#xff0c;还参与留言板讨论后&#xff0c;发现“威胁模型”对多数人仍是陌生概念&#xff0c;且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/6 8:11:52 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”&#xff1a;我理解的渗透测试到底是什么&#xff1f;每次看到新闻里说某个大公司的数据被“黑”了&#xff0c;或者某个网站被攻击导致服务瘫痪&#xff0c;你是不是和我一样&#xff0c;心里会冒出两个念头&#xff1a;一是“这黑客真厉害”&#x…

2026/7/6 6:52:56 阅读更多 →

月新闻