打印
[Quartus]

请教Spartan6多时钟设计

[复制链接]
4084|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
iampeter|  楼主 | 2011-8-9 17:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
设计需要在Spartan6中完成十个不同的时钟给一个FIR滤波器,不同的参数设置下给FIR滤波器选择不同的时钟,时钟最大60M,最小300K,我们现在使用一个DCM产生一个60M的时钟,再使用计数器分频得到了十个不同的时钟,再将分频得到的时钟给FIR滤波器,我们做了两个实验:
1.使用60M分频得到的时钟做为FIR的时钟,使用chipscope分析FIR滤波效果时,发现FIR滤波器不但没有起到滤波的效果,还给数据带来了很多杂散,波形越滤越差,chipscope看信号使用的时钟是FIR的RDY,它与FIR数据输出同频的一个信号,我们用来观察FIR的输出。
2.我们使用DCM出来的全局时钟直接给FIR做时钟,不使用我们分频的时钟,结果在chipscope中发现滤波效果较好,没有发现滤波后的杂散,chipscope看信号使用的触发时钟是使用那个DCM出来的全局时钟。

分析实验结果可能有两个问题引起:
1.我们两次chipscope使用的触发时钟有差异会导致数据偏差。以前实验发现chipscope的时钟选择不当也会造成数据采集的不理想,我们在chipscope上看到的较坏的波形其实是假象,是由于使用的触发时钟不当引起的。
2.设计中FIR滤波器使用的分频时钟有问题。分频时钟为60M时钟计数分频得到,再根据其他变量选择输出一个clk_fir,综合后clk_fir信号被分配到了全局时钟。

问题:
1.在设计中需要用到多个时钟的情况如何解决,我这种分频的方法是不是有问题。
2.可不可以将分频产生的信号做为一个BUFGCE的CE信号,用一个稳定的全局时钟做为BUFGCE的输入,再将BUFGCE的输出给FIR滤波器的时钟。
3.实验时主要用chipscope观察数据,但是chipscope好像不允许使用全局时钟做为触发的时钟,大家有没有好点的办法!
有好点的办法!

相关帖子

沙发
AutoESL| | 2011-8-15 15:42 | 只看该作者
太复杂了,帮顶

使用特权

评论回复
板凳
dan_xb| | 2011-8-16 09:50 | 只看该作者
同学,不是这么玩的
像你这种情况,其实你就只用一个PLL+BUFG就可以了,通过实时改变PLL的配置来改变输出的时钟。
具体看一下XAPP879

你要是自己通过代码分频,再上BUFG,你没有这么多BUFG来用的,时钟选择也不太现实。

什么叫做“使用全局时钟做为触发的时钟”,不是一直就这么做的吗?

使用特权

评论回复
地板
快乐出发| | 2011-9-10 21:36 | 只看该作者
太难了。对我来说现在。

使用特权

评论回复
5
yimulei| | 2011-9-15 17:59 | 只看该作者
遇到这种问题,问你的技术支持吧,估计他会给你比较好的答复,在设计中我一般不会用太多的分频,顶3楼:D

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

138

帖子

1

粉丝