watsonhua
驱动牛犊
驱动牛犊
  • 注册日期2008-04-23
  • 最后登录2009-07-27
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望24点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
阅读:2076回复:1

Cypress 68013 FX2LP 的 GPIF 开发应用的经验

楼主#
更多 发布于:2008-05-07 14:59
我的应用环境是bulk,autoin,约20MB/s(更高的没测过)。GPIF外部时钟,有2根RDY,没有CTL,需要综合运用GPIFTCB和RDY。
FSM和程序设计的小技巧就不提了,地球人都能想到,下面介绍一些需要try才知道的东西:
 
1. TCB计数是不会向下溢出的,但是,如果FIFO满,采样节点循环时,TCB仍然会递减。等到FIFO full中断起来后处理时,TCB和错过数据的数量是不可预测的。
2. 至少在没有采样的情况下,读取FIFOBC,适当处理后写BC,是可以的,但之后最好在适当的时候reset一下FIFO。
3. 将gpifinit() 放到第一次trig前,而不是TD_init()中可以解决一些初始化的问题。可能与外部时钟有关。
4. 如果可能的话,重新trig前最好reset一下FIFO,可以解决一些问题。
 
感觉文档有太多没有说清楚地,demo也太简单。GPIF,FIFO两个模块间有一定程度的耦合,对它们的操作要注意。
上面这些也不一定对,但目前系统还是挺稳定的,连续几天测试都没有出问题。
gutian98
禁止发言
禁止发言
  • 注册日期2003-01-12
  • 最后登录2016-12-11
  • 粉丝4
  • 关注2
  • 积分760分
  • 威望8026点
  • 贡献值1点
  • 好评度364点
  • 原创分0分
  • 专家分21分
  • 金点子奖
  • 社区居民
沙发#
发布于:2008-05-08 16:49
用户被禁言,该主题自动屏蔽!
游客

返回顶部