游乐游手机版
首页/AI教程/文章详情

全面解析当Codex接管Vivado后AI如何加速实现FPGA设计自动化

时间:2026-06-09 15:39
让Codex全权操控装有Vivado的电脑,基于ArtyC 1开发板自动完成6个FPGA工程(GPIO、计数闪灯、RGBPWM、消抖FSM、UART回显、PmodGPIO)的设计、仿真、综合及JTAG下载验证,并输出含工程源码与教程的Word文档,实现从需求到硬件的全自动化闭环。

之前聊过,任何EDA软件只要支持Tcl或类似的脚本,就完全可以被AI Agent操控,从而搭上AI时代的快车,甩开那些老派的开发方式——让工程师先扔掉鼠标再说。

于是,我谋划了一件事:让Codex完全接管一台装有Vivado的电脑,纯自动化运行、不加干预,看看它最终能把FPGA开发任务完成到什么程度。

\

怎么做

把Codex授予最高管理员权限,同时把FPGA开发板的JTAG调试线接到电脑上,然后在Codex工作区里放了一份开发板原理图。随后要求Codex基于这块板子,做一个面向初学者的FPGA开发教程(以Word形式给出)。每章教程必须对应一个实际Vivado工程,并且每个工程都要在板子上验证过。

点击开始后,就放任不管了。3个多小时后,Codex交出了答案。

ImageImage

\

结果比预期的好很多——它孜孜不倦,把工程文件、仿真文件、在线调试、写文档全部完成了。如下表格里罗列了 Codex 输出的最终成果。

成果

说明

Word

基于 Arty C.1 的初学者 FPGA 应用设计教程

Vivado 工程

GPIO、计数闪灯、RGB PWM、消抖 FSM、UART、Pmod GPIO

6 个 bitstream

全部由 Vivado 2019.1 成功生成,并通过 JTAG 下载

硬件验证记录

识别 xc7a35t_0,6 个 PROGRAM OK

UART 实测

COM4 发送 35 41 5A,回显 35 41 5A

附件包

源码、仿真、约束、工程、bitstream、报告和 Word 教程

把这些内容都打开看了下,文档的排版、逻辑、内容甚至好过部分开发板厂商。而且每一个Vivado工程都是经过功能验证的,还提供了编译好的bit文件。

日志上看,Codex 的行为流程完全就和人一样:先写代码,再调试,最后写报告。为了便于展示,把它的行为脉络总结如下。

ImageImage

第一步:理解任务

Codex 首先从PDF原理图里提取了文本,确认这块板是Digilent Arty C.1,FPGA 是 XC7A35T-L1CSG324I。随后它把教程要用到的板载资源整理出来。

这里最有意思的一点是,它并没有一上来就把DDR3、以太网、MicroBlaze之类的大系统塞进教程。它判断初学者第一阶段更应该从小而完整的应用开始:先把GPIO、计数、PWM、状态机、UART这些基本功跑通,再进入复杂IP。这个判断很像一个有经验工程师会做的取舍。

第二步:建 Vivado 工程

确定板卡资源后,Codex 开始生成工程文件。它写了通用XDC约束,把RTL端口和Arty C.1的真实引脚对应起来;又给每个demo建了src/top.v、sim/tb_top.v、README和Vivado工程生成脚本。这种清晰的层级感,超越了绝大部分FPGA工程师。

Demo

主题

初学者能学到什么

01_gpio_led_switch

GPIO

开关、按键、LED、组合逻辑和引脚约束

02_counter_blink

计数闪灯

100 MHz 时钟、寄存器、计数器、复位和暂停

03_rgb_pwm

RGB PWM

占空比、亮度控制、RGB 混色和呼吸效果

04_debounce_fsm

按键消抖 FSM

同步、消抖、边沿检测和状态机

05_uart_echo

UART 回显

115200 8N1 串口接收、发送和缓冲

06_pmod_gpio

Pmod GPIO

外部扩展口、跑马灯和开关/按键镜像

这一步的成果就是一套可以打开、可以验证的Vivado工程包。每个demo都有Vivado .xpr,生成好的bitstream,还有timing和utilization报告。可谓面面俱到。

ImageImage

第三步:调试

让人觉得它“有点东西”的地方,应该是它会自己找办法解决遇到的问题。

最开始它用project flow批量跑综合实现,可Vivado在run launcher处报了一个Windows下的Access denied错误。但Codex没有卡住,也没有让人去查,而是切换到更稳的in-memory direct flow:直接read_verilog、synth_design、opt_design、place_design、route_design、write_bitstream。这个问题即便让人去解决也不一定能搞定,因为这个方案就没接触过。反而Codex调整得很工程化——它保留了.xpr让人能在GUI里打开,又用direct flow负责稳定地产出bitstream。

第四步:硬件调试

生成bitstream后,Codex调用Vivado hardware manager开始调试板子。它启动hw_server,把6个bitstream逐个下载到FPGA,直到脚本检测到每个demo最后都返回了PROGRAM OK。

这一步非常关键,因为这属于AI把整个硬件链路调试跑通了——大部分AI Coding其实只是停留在代码层面,压根没有和硬件进行交互。毕竟对FPGA来说,能综合只是第一层,能生成bitstream是第二层,能通过JTAG下载到真实芯片才是真正接近工程闭环。

ImageImage

第五步:迭代

整个实验中最精彩的小插曲发生在调试UART demo时。

Codex第一次上电验证并不成功。它用COM4做了串口测试,连续发送35 41 5A。结果回显只收到35 5A,中间的41丢了。但Codex根据这个现象判断:顶层在TX busy时直接丢掉了新收到的字节。于是它给UART顶层补了一个1字节pending buffer,更新testbench,重新仿真连续3字节,重新生成bitstream,重新下载,再次用COM4测试。第二次结果是TX=35 41 5A,RX=35 41 5A。成功了。

ImageImage

这事挺有意思的。大家都知道,Verilog的时序问题AI经常会搞不定,而且DeepSeek、ChatGPT这类聊天式AI还难以将嵌入式代码应用到硬件上去进行功能验证。所以谁解决了“代码设计→硬件验证→迭代”的这个闭环流程,谁就解决了AI难以给嵌入式开发提效的问题。显然,以Codex为代表的Agent方案目前是最佳答案。

第六步:成果

工程跑通之后,Codex把整个成果整理成一份面向初学者的Word教程。教程没有泛泛讲FPGA,而是围绕这块开发板真实可操作的6个例子展开:每个例子讲学习目标、关键概念、实验步骤、文件入口和拓展练习。

最后,它还把附件包整理出来做了说明:Word教程、6个Vivado工程、通用XDC、脚本、bitstream、报告和硬件下载记录。

ImageImage

(完整成果已打包,感兴趣的读者可以自行获取)

感想

这次的尝试倒是让人想起一位前同事。因为身体原因,他有段时间居家办公。我们把他在公司的电脑开着机,连好硬件板卡,再给他开通远程权限。于是,他隔着一根网线写代码、调试硬件,仿佛人就在工位上。

只不过这一次,网线另一头好像不再是人,而是Codex。传统的开发模式已经变了。

当然,嵌入式开发由于距离前端开发比较远,对AI coding的能力边界还不敏感。从粉丝群了解到,大部分人用AI还停留在“帮我写一段Verilog”或者“帮我解释一段约束”的程度。

但从Codex接管Vivado的案例可以看到,人类给个FPGA需求,AI已经可以全自动输出可落地的工程文件了。包括:设计代码、创建Vivado工程、仿真、和实际电路板进行调试、生成可执行的文件、输出文档。涉及到流程和规范方面,AI甚至做得比大部分人还好。

当然AI还存在一些瑕疵,但能力边界已经展示,剩下的就交给时间和token吧。

\

彩蛋

实际上,这篇文章差点也是Codex帮我完成的。Codex在完成了FPGA教程的编写后,直接让它把这件事记录下来总结成了一篇文章。它写的其实真的挺不错,吩咐的内容和情绪都表达出来了。但想在这个AI味的时代洪流里留点人味,产出点不一样的,于是重写了大部分文字。

ImageImage

来源:https://cloud.tencent.com.cn/developer/article/2684379
上一篇可解释生物医学图像分析的通用基础模型 下一篇AI商业化遇冷四大残酷现实重写行业规则
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
企业组织级AI赋能具体实施方法
AI教程 · 2026-06-30

企业组织级AI赋能具体实施方法

前段时间收到一位读者的留言,希望聊聊企业级、组织级的AI赋能究竟该怎么落地。巧的是,前几天刚看到一份咨询调研机构的数据:对近一两年所有企业级AI赋能项目的统计显示,超过90%的甲方企业认为,AI赋能在核心业务价值链上没有发挥任何实质性作用。除了AI辅助办公、企业智能知识库这类边缘应用起到了一些辅助效

Scrapy与Redis分布式架构的日本电商多平台数据聚合系统
AI教程 · 2026-06-30

Scrapy与Redis分布式架构的日本电商多平台数据聚合系统

从事日本电商数据聚合工作时,最大的难点在于要同时应对雅虎拍卖、煤炉(Mercari)、乐天和亚马逊日本站等截然不同的平台。以往使用单机爬虫,经常出现运行中崩溃的情况——单点故障、带宽利用率不足、数据存储混乱,这三大痛点令人困扰。 本文分享一套基于Scrapy + Redis的分布式爬虫方案,专门解决

详细PuTTY 0.81安装教程 SSH远程连接与自定义路径设置
AI教程 · 2026-06-30

详细PuTTY 0.81安装教程 SSH远程连接与自定义路径设置

​ PuTTY(简称PT)是一款轻量级开源SSH Telnet客户端,凭借简洁高效的特性,多年来始终是系统管理员与开发者进行远程连接的首选利器。本教程将详细介绍PuTTY 0 81版本的完整安装过程,并指导您自定义安装路径,以便更灵活地管理SSH远程连接工具。 安装准备 首先需要说明的是,整个安装流

在线教育系统必备功能:直播课堂与题库考试架构
AI教程 · 2026-06-30

在线教育系统必备功能:直播课堂与题库考试架构

很多人一想到做在线教育系统,第一反应往往是先把直播间和课程播放器搭起来,觉得“能看课”就万事大吉了。真到落地那天才发现,系统能不能顺滑跑起来,关键全藏在那些细节里——课程怎么组织、学习进度怎么记、考试怎么处理、后台怎么管得住。前端看起来就几个页面,后端其实是一整条业务链路。不管你是要做在线教育APP

ZStack源码级AI诊断套件让故障排查秒出答案
AI教程 · 2026-06-30

ZStack源码级AI诊断套件让故障排查秒出答案

一次故障排查,到底要花多少时间? 运维人员处理私有云、虚拟化平台的问题,流程大致都是这样:先翻日志看现象,再去文档里找对应机制,然后搜社区有没有类似案例,最后综合判断给出答复。简单问题半小时,复杂问题可能要跨天——而这些时间里,大部分精力耗在了“找信息”而不是“做决策”上。 类似的问题,也许每天都在