FPGA 学习笔记:解决FPGA程序固化重新上电程序不运行的问题

本文记录了在FPGA开发过程中遇到的程序固化后无法运行的问题。经过分析,发现原因是误配置了适用于256Mb SPI Flash的选项,而实际开发板使用的是128Mb SPI Flash。去除错误配置后,问题得到解决。总结了FPGA外部SPI Flash固化流程的重要点,强调了正确匹配SPI Flash大小和配置的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

  • FPGA开发板:正点原子 达芬奇PRO,FPGA 型号 xc7a35tfgg484-2

  • 问题描述:自己写的程序固化后,烧写到FPGA开发板,重新上电,发现程序不运行

  • 通过对比官方的例程,找到了问题的原因

问题分析

在这里插入图片描述

  • 自己搭建的工程,烧写FPGA后,程序正常运行,但是固化到SPI Flash后,断电上电,发现程序不工作,所有的LED常亮,就像是SPI Flash 程序没有烧写的感觉

  • SPI Flash 可以正常的擦除、烧写,说明没有SPI Flash 配置的型号没有问题,排除【SPI Flash 器件】不工作问题

  • 自己又重新搭建一个LED 闪烁的Demo程序,下载到FPGA后正常运行,但是固化后,LED 闪烁的程序也依旧不工作

  • 然后 BITSTREAM 的约束配置

解决FPGA程序固化重新程序运行问题时,可以采取以下措施: 1. 检查源连接:确认FPGA芯片的源连接是否正常,检查供压是否达到规定范围。如果稳定或低于要求,可能导致FPGA芯片无法正常启动。 2. 确认配置文件:检查FPGA芯片的配置文件是否正确,包括程序代码、时钟设置、引脚分配等。确保程序代码被正确加密并烧录FPGA芯片中。 3. 初始化过程:在重新后,确保FPGA芯片的初始化过程正常。这包括复位、时钟配置等操作。可以通过检查FPGA芯片的状态寄存器来确认初始化状态是否正常。 4. 时钟问题FPGA芯片的时钟设置非常重要。如果时钟信号异常,可能会导致FPGA芯片无法正确工作。确保时钟源和时钟分频设置正确,并检查时钟信号的稳定性。 5. 引脚分配:检查FPGA芯片的引脚分配是否正确。如果引脚分配错误,可能无法正确连接到外部设备或其他芯片,导致程序无法运行。 6. 调试工具:使用FPGA芯片的调试工具(如JTAG调试工具)进行调试,检查程序运行时的状态和寄存器值。通过调试工具可以定位问题,并查看可能的错误信息。 总结起来,解决FPGA程序固化重新程序运行问题需要仔细检查源连接、确认配置文件正确性、确保初始化过程正常、处理时钟问题、检查引脚分配和使用调试工具进行调试。通过这些措施可以解决FPGA重新程序无法正常运行问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhangsz_sh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值