Isn't that a divide-by-2, not a multiply-by-2, circuit that you showed? CLKB will be half the frequency (twice the period) of CLKA.
--- Quote Start ---
I myself think that:
Thouth the phase shift between CLKA & CLKB is based on fitting result, but TimeQuest should also know the phase shift, so it should create tge generated clock automatically.
--- Quote End ---
Yes, TimeQuest knows the delay the register and routing creates between CLKA and CLKB, but TimeQuest does not know the effect on the frequency. You use a generated clock for CLKB to tell TimeQuest how to compute the CLKB frequency from the upstream CLKA frequency. You do not specify a phase shift--TimeQuest adds a clock network delay automatically.
Do not use a circuit like this if you still have a PLL available to create CLKB. Another option is to use a divide-by-2 clock enable instead of a derived clock.
If you do create a clock with logic this way, be aware of the caveats in my posts at
http://www.alteraforum.com/forum/showthread.php?t=754. As discussed in my first post in that thread, it is OK if CLKB uses global routing, you set up your design so that no data paths between the CLKA and CLKB domains are synchronous, and you use set_false_path or set_clock_groups to cut analysis on the cross-domain data paths.