Hi there, I've been spending some time understanding Phaser and cant quite understand the two channel aspect of the PhasedDUC.

I understand that the InterpolateChannel has a supersampled output producing two complex samples each cycle for each of the two input channels. I then see the odd indexed samples are passed to the first channel of the PhasedDUC and the even indexed samples are passed to the second channel. What I dont understand is that by using two channels in the PhasedDUC, the phase signal generated by the PhasedAccumulator has twice the step size (than if you had only one channel). Therefore the complex carrier that is generated for each channel of the DUC has, by my understanding, twice the frequency of what is specified at the module input.

For example, with the above demonstration, there are two channels corresponding to the red and black points. The step size between samples is equal to the step size between the 'base' samples which is f << log2(2) = 2f. Hence each channel has a frequency of twice whatever the input specified frequency was.

how does this work? Is it something to do with the output of the interpolator being supersampled?

Many thanks for any help.

It's as you describe.
Just as in your drawing the three signals have the same frequency.

7 days later

@rjo Okay so if I specify a frequency of f at the input to the PhasedAccumulator and n channels, it will generate me n sets of angles that when subject to a CosSinGen yields n sinusoids of frequency n*f ?

Considering these are the carrier frequencies which modulate the interpolation output channels, does that mean If I want my signal centred at say 100MHz, and I have 2 channels, then I need to specify the frequency input to the PhasedAccumulator as 50MHz?

The phase increment in each lane is indeed multiplied. But frequency is phase increment over sample period.