原创 FPGA的可靠性设计

2009-9-19 00:45 3420 8 8 分类: FPGA/CPLD

最近在做项目时,在实际运用环境中老出问题.在实验室跳没问题,仿真更是没有问题.


在实际运用环境中,比较苛刻,电磁干扰什么比较多,虽说FPGA是数字的,可靠的.但一旦干扰了就容易出错,甚至错误累加.在设计状态时,一般会考虑重新恢复的问题.


但这次遇到是数据流的可靠性恢复.一般数据流经过处理后或处理前都得用FIFO缓存一下.


(一) FIFO的设计很关键,有没有可能FIFO即处于满又处于空的情况,造成即不能写又不能读的假像.前来的设计错误就是FIFO的空满用不同的counter组合逻辑来判断.


(二)数据流用两个FIFO并行实现,这是错误的,尽量用一个FIFO来实现.在实现过程中原来的设计是:一个FIFO存数据流,一个FIFO存数据流的信息(如控制信息),两个FIFO的数据有一个对应关系.一旦某个时候打雷,一个FIFO多读一次,就会造成永远错误下去.永远不能恢复了.如果一个FIFO不能实现,可用一个FIFO来缓存控制信息,另一FIFO由自己控制的双端口RAM来实现.


总之,要保证数据流的可恢复时,仿真是发现不了问题的.

文章评论0条评论)

登录后参与讨论
我要评论
0
8
关闭 站长推荐上一条 /2 下一条