ISE中,一个时钟输入 如何 驱动2个DCM IP核
如题,我想使用2个DCM模块,外部只有一个时钟输入,现在的问题是 在tanslate的时候 报错,ERROR:NgdBuild:770 - IBUFG 'dcm100M_1/CLKIN_IBUFG_INST' and BUFG 'BUFG_inst' on
net 'clkin_r1' are lined up in series. Buffers of the same direction cannot
be placed in series.
ERROR:NgdBuild:462 - input pad net 'clkin_r1' drives multiple buffers:
ERROR:NgdBuild:924 - input pad net 'clkin_r1' is driving non-buffer primitives:?
代码如下
IBUF_inst : IBUF PORT MAP (I => clkin,
O => clkin_R0);
BUFG_inst : BUFG PORT MAP (I => clkin_r0,
O => clkin_r1);
dcm100M_1 : dcm100M1 PORT MAP (CLKIN_IN => clkin_r1,
CLKIN_IBUFG_OUT => OPEN,
CLK0_OUT => clk,
CLK2X_OUT => clkda1,
CLK2X180_OUT => rd_clk);
dcm100M_2 : dcm100M2 PORT MAP (CLKIN_IN => clkin_r1,
CLKIN_IBUFG_OUT => OPEN,
CLK0_OUT => OPEN,
CLK2X_OUT => clkad1,
CLK2X180_OUT => wr_clk);
我从书上看到 要添加缓冲器,我尝试了下 IBUF+BUFG,IBUFG,IBUF,BUFG,IBUFG+BUFG,都没能解决RTL视如下
http://cache.amobbs.com/bbs_upload782111/files_44/ourdev_665431B4T0KZ.png
现在错误的RTL 在顶层添加了IBUF+BUFG (原文件名:DCMIBUF+BUFG.png)
http://cache.amobbs.com/bbs_upload782111/files_44/ourdev_665432WDD39F.png
缩小点的图 (原文件名:DCMIBUF+BUFG2.png)
我把2个DCM IP核写在一个模块了 蓝色框内 就是模块,框内的缓冲器都是IP核自带的
请问 到底需要怎么写?? 在哪里加缓冲器?怎么加?? 回复【楼主位】pafvell
-----------------------------------------------------------------------
可以考虑用级联,用其中一个DCM的clk0_out的做另一个DCM的输入时钟 回复【1楼】lanliang714
-----------------------------------------------------------------------
谢谢,那并联怎么做啊? 我也不是非要并联,就是出错了 不解决难受啊。。。 回复【2楼】pafvell
-----------------------------------------------------------------------
并联的话将clkin source设为internal,就可以了
CLKIN source 如果选 external 则 DCM 的 CLKIN 会自动连接到 IBUFG。 回复【3楼】lanliang714
-----------------------------------------------------------------------
非常感谢试了 可以通过编译了 lanliang714 发表于 2011-8-8 18:24 static/image/common/back.gif
回复【楼主位】pafvell
-----------------------------------------------------------------------
你好,想请教一下DCM的问题,现在我是需要使用三个spartan3e的DCM,用的就是级联的方式,但是现在的问题是仿真的时候就没有时钟输出。一个时钟的时候是没有问题的 请教呀 谢谢麻烦了
页:
[1]