用FPGA做数据采集,每周期采128个,采完的数通过FIFO送给NIOS2,可NIOS2每周期只能读到二三十个点,望指点

AD用8位的TLC549,FIFO是直接调用FPGA中的模块,同步异步的都试过。用异步FIFO时,写时钟是20M,读时钟60M,80M,100M,120M都试过。下面是程... AD用8位的TLC549,FIFO是直接调用FPGA中的模块,同步异步的都试过。用异步FIFO时,写时钟是20M,读时钟60M,80M,100M,120M都试过。下面是程序图。望高手指点!!!!!!!!!1 展开
 我来答
sww的生活
2012-08-26
知道小有建树答主
回答量:19
采纳率:0%
帮助的人:11万
展开全部
你这个要是不能断点只能用大点FIFO缓存128个点,存完以后才能读,不然读时钟比写时钟快那么多,很容易读空,你查看了你的FIFO状态信号吗,肯定出错了,里面都没数据了你还在读。
追问
您好,我是这么做的。我设置FIFO的深度为2048,这个容量应该够了吧。当存满128个点的时候会产生一个半满信号,当NIOS2读到这个信号时才开始读FIFO当中的数。还请指点。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lovinloli
2012-08-22 · 超过13用户采纳过TA的回答
知道答主
回答量:72
采纳率:0%
帮助的人:38.3万
展开全部
我也是新手。。。FIFO不就是用来解决读写时钟不一样的情况才用的么。。。NIOS2只能读到32个点是因为他的频率低啊,不影响你达到目的吧。你看读完以后有没有丢失的点啊,没有丢失就没问题啊
追问
NIOS2的频率最高我给了120M,我买的开发板最高只能到这个频率。120M的频率应该不低了吧,可还是不能把128个点全部读到,只能读到四十多个。真正做的话要每个周期采512个点,采完这些点然后做FFT,如果丢点的话就不行了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
summerliyang
2012-08-20 · TA获得超过1094个赞
知道小有建树答主
回答量:253
采纳率:100%
帮助的人:130万
展开全部
这样是看不出 端倪来的,最好看看你的程序,如果方便,最主要的原因估计就在fifo和时钟匹配上面了,yang_0531510@163.com ,方便就发到这个邮箱,一起学习进步一下!
加油!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jinghangsun
2012-08-23
知道答主
回答量:4
采纳率:0%
帮助的人:3.2万
展开全部
开始读FIFO的时间早了。
更多追问追答
追问
请问应该什么时候读FIFO比较正确啊?
追答
每次读之前确认 FIFO empty=0(FIFO里有数据) 就行了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式