请教一个关于时钟信号的问题

2019-03-25 09:46发布

大家好,我是一个FPGA初学者,最近在用赛灵思的片子做项目。我将60M的全局时钟奇分频为800KHZ(输出),同时又把800KHZ当作时钟信号再分频为8KHZ(输出),但是发现place&route的时候报了警告,大致是说我用800KHZ做时钟信号会有超出指标的延迟。
always@(negedge rst1 or negedge clk800khz)
begin
        if(!rst1)
        begin
                clk8khzreg<=0;
                clk8khz<=0;
        end
        else
        begin
                if(clk8khzreg==49)
                begin
                        clk8khz<=!clk8khz;
                        clk8khzreg<=0;
                end
                else
                        clk8khzreg<=clk8khzreg+1;
        end
end
请问大家有遇到过这样的问题么?是怎么解决的呢?谢谢...... 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
一丝执念
1楼-- · 2019-03-25 18:35
< / 同问 ......... 请高手指教!!
mr.king
2楼-- · 2019-03-25 19:01
如果你的系统不关注两者的相位就忽略,如果关注,那先分频16K再用个DFF,DFF的时钟是60M的那个,打一下出8K

[ 本帖最后由 mr.king 于 2011-12-24 19:49 编辑 ]
sun_ic
3楼-- · 2019-03-25 20:12
 精彩回答 2  元偷偷看……
一丝执念
4楼-- · 2019-03-26 02:04
楼上的你好,我也遇见过这样的问题。DCM只能产生固定的几个分频吧?比如楼主所说的75、100分频等就无法产生。
另,比如说在项目中一定要用到800KHZ、8KHZ、1KHZ等几个频率信号,都用60M奇分频产生么?这样是不是也不合适?请问有什么好的办法么?
sun_ic
5楼-- · 2019-03-26 04:29
可以的。比如spartan3 一般有4个dcm。每个dcm可做 f=(M/D)*fin 运算。m=2-32 d=1-32。几个dcm串起来组合一下。再者,尽量别使用多个时钟。用一个高频基准时钟,其它低频部分用各种频率的使能信号比较好。比如用60m产生所需宽度的800k,8k,1k使能逻辑信号去处理低频部分。这是同步设计的普遍方法.

写了篇短文谈论这个话题。 参见  http://home.eeworld.com.cn/my/space.php?uid=355576&do=blog&id=64386
[ 本帖最后由 sun_ic 于 2011-12-26 04:33 编辑 ]
一丝执念
6楼-- · 2019-03-26 07:46
谢谢sun_ic的耐心解释,研究一下......

一周热门 更多>