完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
在FX3进行开发里,FLAGA,定义为current_Thread_DMA_Ready,FLGAB定义为current_Thread_DMA_WaterMark,我当前的程序是先判断FLAGA是否有效,有效的话进入读状态,在读状态下,判断FLAGB,如果FLAGB有效则读数据,否则退出读状态,现在我在FPGA里面抓到的数据表明,状态一直停留在读状态,此时FLAGA无效时,FLAGB有效,为什么呢,既然FLAGA都无效了,说明当前线程没准备好,那么FLAGB为什么还有效呢!
|
|
相关推荐
1个回答
|
|
|
在FX3开发中,FLAGA(DMA就绪标志)和FLAGB(水位标志)的逻辑冲突可能是由于状态机设计或标志位配置问题导致的。以下是逐步分析和解决方案: 问题分析
可能原因
解决方案1. 重新配置GPIF标志位
2. 修改状态机逻辑在读状态中同时监控FLAGA和FLAGB,任一标志无效则退出: 3. 添加超时机制在固件中增加超时计数器,防止因标志位异常导致死锁: 4. 验证时序与同步
5. 检查DMA缓冲区管理
总结根本问题在于状态机未能在读状态中及时响应FLAGA的无效状态。通过同时监控FLAGA和FLAGB、调整水位阈值、优化时序同步,可解决状态机卡死问题。建议使用逻辑分析仪进一步验证标志位行为,并确保GPIF配置与固件逻辑一致。 |
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
2374 浏览 0 评论
1426 浏览 0 评论
1877 浏览 0 评论
CYUSB3014烧录失败Cypress Benicia USB Boot Device
7871 浏览 1 评论
11295 浏览 0 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 03:27 , Processed in 0.550726 second(s), Total 75, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
497