当前位置: 首页 > news >正文

BerkeleyLab Bedrock:为 FPGA 与加速计算打造的开源基石

简介

Bedrock 是由 Lawrence Berkeley National Laboratory(LBNL)多年累积的一套开源 Verilog 代码库,旨在把可移植的数字与射频模块快速带到 FPGA 平台(如 Xilinx)上。项目包含平台无关的 Verilog 源码、仿真环境、板级支持以及将设计综合、实现并生成 bitstream 所需的脚本与约束。它更像一套工程级参考实现集合,而不是单一的示例工程,适合用于研究原型、教学与工程开发。

代码组织(主要子目录)

dsp:平台无关的数字信号处理模块及 testbench(例如 DDS、上/下变频、CIC 滤波器、低/高通滤波器、混频器等)。

cordic:独立的 CORDIC Verilog 实现,支持多种工作模式(可在编译时或运行时选择)。

rtsim:射频系统的实时仿真组件,包括谐振腔、电/机电模式、ADC、电缆、压电器件等,用于在上板前做系统级仿真。

cmoc:RF 控制器的 Verilog 实现,可连接真实 ADC 或 rtsim 仿真模块,支持软硬件协同验证。

badger:在 FPGA fabric 中运行的实时以太网/IPv4/UDP 报文响应核心。

fpga_family:针对不同 FPGA 家族的约束文件与 vendor 特性钩子(hooks)。

localbus:项目内部广泛使用的片内 localbus(总线)规范与文档。

board_support:板级引脚映射与板相关配置文件。

projects:若干已实例化的工程,能被编译、综合并生成可下板的 bit 文件(覆盖不同板卡/平台)。

构建、仿真与工具链

开发环境:面向 *nix 系统(Linux/macOS),构建与自动化以 GNU Make 为中心。

仿真工具:默认使用 iverilog 进行仿真;部分模块开始支持并使用 Verilator。

综合 / 实现:主要以 Xilinx 工具链为主,部分模块或示例也正在支持开源工具链(如 Yosys)。

持续集成:仓库接入 GitLab CI,提交后会自动运行基于仿真的回归测试,降低破坏性改动风险。可在本地通过 selftest.sh 运行一套子集测试以重现部分 CI 步骤。

命令行自动化与图形化操作并存

Bedrock 借助传统的 *nix 工具(make、grep、shell、python)实现强自动化能力,方便脚本化构建、生成接口、代码骨架等。不过在以下情形,图形化界面仍然有用:查看综合或实现后的电路图、手动调整布局/约束、定制厂商 IP 等。

为此,Bedrock 会把厂商相关的生成文件放到合成目录中的 _<VENDOR_NAME> 子目录(例如 _xilinx),这样可以在自动化流程之外,直接用厂商工具打开该项目,例如在 Vivado 中打开:

vivado <PROJECT_DIRECTORY>/_xilinx/<TOP_LEVEL_DESIGN_NAME>/<TOP_LEVEL_DESIGN_NAME>.xpr

其中 <PROJECT_DIRECTORY> 是你运行 make 的目录,<TOP_LEVEL_DESIGN_NAME> 为 bitstream 名称(不含 .bit 扩展名)。

开发与贡献

项目提供了一套基本的贡献指南(见仓库 “On contributing”),并通过 CI 保证提交的质量。欢迎通过 fork/PR 的方式提交补丁、测试或文档改进。项目采用开源许可证(详见仓库 LICENSE 文件),在贡献前建议先阅读许可条款。

项目文档

https://berkeleylab.github.io/Bedrock/

项目地址

https://github.com/BerkeleyLab/Bedrock/tree/master/projects

http://www.cnnetsun.cn/news/74680.html

相关文章:

  • 【毕业设计】基于springboot高校体育运动会比赛系统运动项目、运动论坛(源码+文档+远程调试,全bao定制等)
  • 干货收藏:AI大模型进化史,从ChatGPT到智能体的三次关键跃迁
  • Docker Compose编排LLama-Factory多节点训练集群详细配置示例
  • Wan2.2-T2V-A14B模型部署指南:从VSCode配置C/C++环境说起
  • 计算机Java毕设实战-基于springboot公寓管理系统基于Springboot的公寓报修管理系统【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • 如何制作支持离线地图的GPS自行车码表:从硬件选型到功能实现的完整指南
  • 计算机Java毕设实战-基于springboot国风彩妆网站springboot国风彩妆化妆品网站电商销售商城系统【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • Honey Select 2 HF Patch技术架构深度解析与模块化部署指南
  • 【课程设计/毕业设计】基于springboot的自习室预订系统设计与实现基于springboot高校自习室预约系统的设计与实现【附源码、数据库、万字文档】
  • 大学计算机基础系列(合集)
  • 【课程设计/毕业设计】基于Web的高校大学生奖学金评定系统设计与实现基于springboot高校学生奖学金评定系统的设计与实现【附源码、数据库、万字文档】
  • 【爬虫框架-8】其他
  • Vue-next-admin终极指南:打造现代化后台管理系统的完整解决方案
  • vgmstream终极指南:游戏音频转换与播放全攻略
  • vgmstream音频解码神器:游戏音频格式转换终极指南
  • 印象大红袍通过上市聆讯:上半年营收5588万 利润678万
  • 蔡东青创办的奥动冲刺港股:靠换电半年营收3.2亿同比降32% 亏1.57亿 蔚来资本是股东
  • 基于Next.js的LobeChat为何成为GitHub星标项目?技术架构全拆解
  • 广合科技冲刺港股:前9个月营收38亿净利7亿 刚斥资3.2亿买楼
  • Vue Signature Pad电子签名组件完整使用指南:快速集成步骤与实用配置技巧
  • Joy-Con Toolkit终极指南:如何轻松自定义你的游戏手柄
  • 暗黑破坏神II存档编辑器:多版本兼容的角色定制解决方案
  • [自动化办公] 【Python】【低代码】在明道云中实现无需 pandas 的数据聚合与 HTML 表格生成技巧
  • OpenFace完整指南:从零开始掌握面部行为分析终极工具
  • Python协同过滤算法 音乐推荐系统_731w447o 论坛 浏览历史
  • 17、图像深度处理技术:从理论到实践
  • GitHub项目Star暴涨:Stable Diffusion 3.5 FP8成AIGC开发者新宠
  • Windows显示器亮度控制终极方案:Twinkle Tray完整使用手册
  • VideoDownloadHelper 终极使用指南:轻松下载网页视频资源
  • 高效STL转STEP工具:3D格式转换的完整解决方案