[an error occurred while processing this directive]
|
У меня была похожая проблемма, и полазив по докам, я обнаружил, что Xilinx рекомендует для этих целей использовать "BUFGMUX", привожу код который у меня получился:
-- DCM
dcm0_ibufg_inst : IBUFG Port Map (
I => CLK_PAD,
O => clkIN_ibufg0);
dcm0_bufg0 : BUFG Port Map (
I => clkin,
O => clk);
dcm0_bufg1 : BUFG Port Map (
I => clk2xin,
O => clk2x);
BUFGMUX_inst : BUFGMUX Port map (
O => clkIN_ibufg1, -- Clock MUX output (в данном случае I1)
I0 => clkin, -- Clock0 input
I1 => clk2xin, -- Clock1 input
S => '1' -- Clock select input
);
dcm1_bufg0 : BUFG Port Map (
I => clk2,
O => clkddr);
dcm1_bufg1 : BUFG Port Map (
I => clkddr90in,
O => clkddr90);
dcm1_bufg3 : BUFG Port Map (
I => clkddr180in,
O => clkddr180);
dcm1_bufg4 : BUFG Port Map (
I => clkddr270in,
O => clkddr270);
dcm0 : DCM
Generic Map(
CLKFX_MULTIPLY => 2,
CLKOUT_PHASE_SHIFT => "FIXED",
PHASE_SHIFT => - 0)
Port Map (
CLKFB => clk,
CLKIN => clkIN_ibufg0,
DSSEN => '0',
PSclk => '0',
PSEN => '0',
PSINCDEC => '0',
RST => '0',
clk0 => clkin,
clkfx => clk2xin,
LOCKED => locked0);
dcm1 : DCM
Port Map (
CLKFB => clkddr,
CLKIN => clkIN_ibufg1,
DSSEN => '0',
PSclk => '0',
PSEN => '0',
PSINCDEC => '0',
RST => '0',
clk0 => clk2,
clk90 => clkddr90in,
clk180 => clkddr180in,
clk270 => clkddr270in,
LOCKED => locked1);
Удачи. :)
E-mail: info@telesys.ru