如何通过PC向Elbert V2 Spartan 3A FPGA施加激励并查看硬件输出
Elbert V2 Spartan 3A FPGA开发板PC端施加激励+硬件输出观测方案
完全可以实现你需要的功能,下面给出两种适合入门、不需要额外增加硬件的实现方案:
方案1:用自带USB-UART通路实现基础交互
Elbert V2板载了USB转串口芯片,你只需要在自己的Verilog工程里增加UART收发逻辑即可完成PC和FPGA的双向通信,开发成本极低:
- 施加激励:PC端用任意串口调试工具发送自定义格式的数据包,FPGA侧完成数据包解析后直接转换成你需要的输入激励信号,完全不受板载按键数量限制,可以自定义任意数量的输入逻辑
- 观测输出:FPGA将需要观测的输出信号打包后通过串口回传给PC,有两种方式匹配仿真查看需求:
- 简单场景下可以直接在串口工具中打印解码后的信号数值,做基础的功能验证
- 需要看波形的话,把串口收到的时序数据导出为
vcd格式的波形文件,直接导入Modelsim、Xilinx Simulator等仿真工具中,就可以查看硬件真实运行的波形,还能和你事前做的仿真波形做对比
提示:UART逻辑实现难度极低,你有Verilog基础的话最快半天就能调通,波特率选115200就能覆盖绝大多数入门场景的需求
方案2:内置逻辑分析仪实现高速信号观测
如果你的测试场景信号速率较高,UART带宽不足以满足实时传输需求,可以用内置逻辑分析仪方案:
- 激励输入依旧可以复用上述UART通路,输出观测侧在Verilog工程中集成逻辑分析仪IP即可,Spartan3A可以兼容老版本Xilinx ISE自带的
ChipScopeIP,也可以用开源的sigrok适配的简易逻辑分析仪逻辑 - 逻辑分析仪IP会先把你要观测的信号缓存到FPGA片上RAM中,待采样完成后再通过USB串口批量上传到PC,你可以直接在上位机工具中查看波形,也可以导出为仿真工具支持的格式
提示:Elbert V2搭载的Spartan 3A片上RAM资源足够支撑最多32路1bit信号、连续数千个周期的波形采样,完全满足入门学习需求
入门调试步骤建议
- 先跑通基础UART收发例程:实现FPGA收到PC发送的指定字节后翻转板载LED,先确认串口通信通路没有问题
- 实现激励解析逻辑:自定义简单的通信协议,比如串口收到
0x01就给你的测试逻辑输入一个高电平脉冲,收到0x02就拉低对应输入,验证激励施加功能正常 - 实现输出回传逻辑:把需要观测的输出信号按固定周期或者触发条件打包上报给PC,再把收到的数据转成对应格式导入仿真工具查看
内容的提问来源于stack exchange,提问作者Sparsh
相关产品推荐
相关产品推荐

