Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
8 years ago

Cyclone 10 GX LVDS clock buffer

When working with Cyclone 5 I remember having to buffer PLL output clocks before I can feed them to ALTLVDS. There's a cyclonev_pll_lvds_output in cyclonev_atoms.v I can use.

cyclonev_pll_lvds_output# (

.pll_loaden_enable_disable("true"),

.pll_lvdsclk_enable_disable("true"))

cyclonev_pll_lvds_output_inst (

.ccout({load_unbuf, clk_unbuf}),

.loaden(load_buffed),

.lvdsclk(clk_buffed)

);

Cyclone 10GX appears to require this too. After searching a bit there's a cyclone10gx_lvds_clock_tree inside cyclone10gx_atoms.v that looks suspiciously similar to the Cyclone5 version. So I tried this:

cyclone10gx_lvds_clock_tree lvds_clkbuf (

.lvdsfclk_in(clk_unbuf), .loaden_in(load_unbuf),

.lvdsfclk_out(clk_buffed), .loaden_out(load_buffed),

.lvdsfclk_top_out(), .loaden_top_out(),

.lvdsfclk_bot_out(), .loaden_bot_out()

);

However Quartus crashed when compiling. Submitted automated crash report and everything.

But am I on the right track though?
No RepliesBe the first to reply