I'd like to double check my assumptions about using the Spartan 3 DCM in combination with a BUFGMUX.
I am trying to use a BUFGMUX as input to the clk pin of the DCM so that I can switch between 2 clock sources.
In this regard, I assume that each clk input goes through an IBUFG, the outputs of these IBUFs feed into the inputs of the BUFGMUX, and the output of the BUFGMUX then feeds the clk pin of the DCM.
The output of the DCM uses both clk0 and clk2x, both of which feed into the inputs of yet another BUFGMUX. The reason for this configuration is that when I use one clock input I want to double its frequency (clk2x) while for the other clock I just want clk0.
Is there anything wrong with this configuration?
A related question is the inclusion of "defparam DCM_INST.CLK_FEEDBACK = "1X";" (In Verilog template.) I presume that the other value can be "2X".
Since I am using external feedback, does this parameter matter, or does switching between clk2x and clk1x make a difference?