Hi Harald, Indeed, it's been awhile since I've looked at that code!
> On Fri, Sep 11, 2020 at 12:50:02PM +0200, Harald Welte wrote: > > But why does the code ever only use up to three of them? > > tnt has meanwhile solved that mystery (due to the inherent property of > a polyphase filter bank) Yes, among the physical channels there will be one centered at baseband and one aliased across the Nyquist boundary - the latter is unusable. Wider bandwidth / higher channel count was possible though limited by practicality (configuration was difficult) and RF effects (see below). > > And why is there a specific re-ordering, see radioInterfaceMulti.cpp in > > getLogicalChan() ? > > We suspect it is to have a monotonically increasing frequency from logical > transceivers 0, 1, 2. Correct. The mapping itself is arbitrary. Consecutive numbering was one simple approach. I'll also add that one of the most difficult aspects of the multi-carrier implementation had little to do with software. B210 was the target device when the code was developed; the on board AD9361 RFIC was never recommended by ADI for multi-carrier operation. The DC and aliasing effects were quite visible when using shifted carriers in addition to the reduction in dynamic range. Conformance tests for spectrum mask were challenging. -Tom
