The Designer's Guide Community Forum
https://designers-guide.org/forum/YaBB.pl Simulators >> RF Simulators >> QPSS Oversampling with non-50% duty cycle https://designers-guide.org/forum/YaBB.pl?num=1223563305 Message started by fz2101 on Oct 9th, 2008, 7:41am |
Title: QPSS Oversampling with non-50% duty cycle Post by fz2101 on Oct 9th, 2008, 7:41am I'm simulating a quadrature mixer using QPSS Flexible Balance. The LO signals are rail-to-rail digital signals with non-50% duty-cycle. In fact they have a duty cycle of 25%, with clk1 high (0 to T/4), clk2 high (T/4 to 2T/4), clk3 high (2T/4 to 3T/4) and clk4 high (3T/4 to T). The settings are as follows: freq = 100.15MHz, Mxham = 3, Ovsap=1, Tstab=yes. Strangely, the spectrum (as well as the ifft) of one of these LO signals looks very different from the others (clk2). It has a different DC value and lower magnitude in the fundamental. I increased the Mxham, and the simulation ran out of memory. I increased the Ovsap value from 1 to 2, and this seems to solve the problem. What is the reason for this? Does this mean if I change the duty-cycle to 10% I have to increase the oversampling ratio to 5? |
Title: Re: QPSS Oversampling with non-50% duty cycle Post by pancho_hideboo on Nov 22nd, 2008, 6:41am fz2101 wrote on Oct 9th, 2008, 7:41am:
I think HB_Order=3 is too few for expressing waveform of non-50% duty cycle. So you should increase HB_Order, e. g. HB_Order=7. Since HB-QPSS of Cadence Spectre is very inferior than Agilent ADS or Agilent GoldenGate, I don't use HB-QPSS of Cadence Spectre. http://www.designers-guide.org/Forum/YaBB.pl?num=1205223090 HB-QPSS of Cadence Spectre consume huge memory compared to Agilent ADS or Agilent GoldenGate. But if you don't have other simulator than Cadence Spectre, you have no choice. I don't know details and relations about HB_Order, HB_Oversample and HB_Sample_Number in HB analysis of Cadence Spectre. The followings are for HB analysis of Agilent ADS. HB_Order=3, 7, 15, 31, 63, .... HB_Oversample=1, 2, 4, 8, 16, .... HB_Sample_Number=2**Int[log2{(2*HB_Order+1)*HB_Oversample}+0.5] In your case, HB_Order=3. HB_Oversample=1 --> HB_Sample_Number=8 HB_Oversample=2 --> HB_Sample_Number=16 HB_Oversample=4 --> HB_Sample_Number=32 HB_Sample_Number=8 is too few I think. Before doing total simulation, check validity of HB_Order and HB_Oversample by simulating only local signal and observing waveform using IFFT. |
The Designer's Guide Community Forum » Powered by YaBB 2.2.2! YaBB © 2000-2008. All Rights Reserved. |