Sixty-Four Beats Ninety-Six

A Polyphase Channelizer for an Amateur Microwave Uplink and the Engineering Case for Power-of-Two

Wideband channelization for narrowband multiplex is a recurring problem in satellite communications. A single payload allocation must accommodate many simultaneous users, each with a much smaller channel than the allocation, recovered cleanly under realistic Doppler shift, oscillator drift, and prototype-filter rolloff. The channel-count decision, or how finely to subdivide the allocation, has consequences in four directions at once, including signal geometry, frequency stability, filter realizability, and space on silicon targets such as Field Programmable Gate Arrays (FPGA). This article presents a worked example of that decision space for Haifuraiya, an open-source channelizer reference design developed by the Open Research Institute (ORI) for next-generation amateur geostationary microwave payloads. The design originally targeted 96 channels on spectrum-efficiency grounds and was rebuilt for 64 channels after engineering review. The reasons are general to wideband channelizer design and are summarized here for the broader microwave engineering community.

Amateur Satellite Context

The current operational amateur geostationary microwave transponder is Qatar-OSCAR 100 (QO-100), carried as a secondary payload on the Es’hail-2 satellite (launched November 2018). QO-100 provides a 2.4 GHz uplink and 10 GHz downlink bent-pipe transponder accessible from approximately one-third of the Earth’s surface, and it has supported thousands of operators since service began in 2019. The non-commercial and international amateur radio satellite community, organized through AMSAT national societies, AMSAT-DL in Germany, ESA-supported futureGEO studies, and independent groups including ORI, has a long history of contributing technical work to small-satellite design, software-defined radio, and digital communications. The first amateur satellite payload was launched four years after Sputnik. Successors to QO-100 are being planned now, and the central engineering requirement is something QO-100 was not built to do: multiplex many simultaneous narrowband users into one wideband uplink and deliver them as a combined single-carrier downlink.

Three Channel Counts on the Table

The Haifuraiya design targets a 5.6 GHz uplink with 10 MHz of allocated bandwidth and an X-band coherent downlink, carrying ORI’s open-source Opulent Voice digital voice protocol. Opulent Voice occupies approximately 81 kHz null-to-null at its current minimum-shift-keying parameters (54.2 kBd symbol rate). Three channel counts were considered: 64, 96, and 128. For the 10 MHz allocation these map to channel spacings of 156.25 kHz, 104.17 kHz, and 78.13 kHz respectively. At 64 channels the signal occupies 51.8% of each channel with 37.5 kHz of guard band on each side. At 96 channels it occupies 77.8% with only 11.5 kHz of guard. At 128 channels it occupies 103.7% of the channel. This does not fit, straddles channel boundaries, and is disqualified outright.

Ninety-six was the aspirational target on spectrum-efficiency grounds. We would get a 50% improvement in carrying capacity for the same spectral allocation. A Python reference model, prototype-filter design, polyphase decomposition, and initial FPGA resource projection were completed at 96 channels. Engineering review then identified four reasons that argued for the power of two.

First, real frequency uncertainty at 5.6 GHz. Ground-station temperature-compensated crystal oscillator drift at a typical 2.5 ppm specification is about 14 kHz at 5.6 GHz, worst case across temperature and aging. Slightly-inclined geostationary Doppler contributes a few kHz peak-to-peak per pass. Satellite oscillator drift, transponder local-oscillator offsets, and post-launch frequency-calibration effects add another few kHz. The aggregate frequency-uncertainty budget is on the order of 10 to 20 kHz, which exceeds the 11.5 kHz guard band available at 96 channels and consumes it entirely before the prototype filter is even considered. The 64-channel design absorbs the same budget with comfortable headroom.

The 37.5 kHz guard band on each side of the Opulent Voice signal in the 64-channel design absorbs oscillator frequency error, slightly-inclined geostationary Doppler, prototype-filter transition, and thermal-and-aging margin, with comfortable headroom. The same budget applied to a 96-channel design would consume the entire guard band.

Second, prototype-filter realizability. Tighter channels require a steeper prototype filter. The 96-channel design needs roughly 11.5 kHz of transition band between signal edge and channel edge; the 64-channel design has 37.5 kHz. The relaxed filter can use fewer taps per polyphase branch for the same out-of-band rejection, closes timing more easily on the FPGA fabric, and tolerates fixed-point arithmetic effects with greater margin.

Third, the FPGA resource budget. On a Xilinx Zynq UltraScale+ ZCU102, the measured 64-channel cost after place-and-route is 1346 DSP48E2 slices and 116 K lookup tables. The 96-channel projection was approximately 2086 DSP slices and 174 K lookup tables. This was over 80% of the available DSP resource before accounting for the rest of the payload (multiplexer, encoder, debug instrumentation). The 64-channel design at 53% DSP and 42% LUT utilization leaves comfortable headroom for the full payload pipeline. The 52% channel utilization at the input side is not waste. This utilization absorbs Doppler, oscillator drift, filter transition, and aging margin.

Fourth, the FFT. Sixty-four equals two to the sixth power, reducing the channelizer FFT to a pure radix-2 calculation. It has six stages of butterflies, a well-understood verification methodology, and the smallest possible cost per N log N operation. Ninety-six factors as 32 × 3 and forces a mixed-radix algorithm. This is workable, but with higher implementation cost, more complex verification, and fewer pre-validated reference implementations.

Channelizer Architecture

We are using a polyphase channelizer construction. An M-path commutator at the input demultiplexes the wideband in-phase and quadrature (I/Q) stream across N parallel finite-impulse-response filter branches. Each branch implements one row of the polyphase decomposition of a single prototype low-pass filter. An N-point FFT across the branch outputs separates the spectrum into N adjacent channels, each running at the input rate divided by the decimation factor M. The standard reference is harris [1]. The key property is that the same hardware performs both filtering and frequency translation, with no separate mixer per channel.

For Haifuraiya, M = 16 with N = 64. This is a 4-times oversampled channelizer. Each 156.25 kHz channel emerges at 625 kSps complex sampling rate rather than at the critically sampled 156.25 kSps that M = N would produce. The 4 times oversampling ratio gives 11.53 samples per symbol at the 54.2 kBd symbol rate, which is what downstream timing recovery, Costas-loop carrier recovery, signal-to-noise estimation, and Doppler-correction loops require for lock and track at geostationary bent-pipe signal-to-noise levels. The prototype filter is designed using the pm-remez library [3], a Parks–McClellan / Remez exchange implementation, with the classic 1/f stopband weighting recommendation from [1]. The 1/f weighting concentrates design effort near the channel edge, where adjacent-channel energy matters most. With the relaxed 37.5 kHz transition band, the prototype filter is short enough that each polyphase branch lands on a single DSP48E2 multiply-accumulate at 100 MHz.

Implementation Status

The 64-channel implementation is closed on the Zynq UltraScale+ ZCU102. Synthesis closes at 100 MHz with clean placement and routing. Verification uses bit-true comparison against the Python reference. The design is packaged as an IP-XACT component that integrates into any Vivado block design, with AXI-Stream input and output, AXI-Lite control for runtime configuration, and destination-tag encoding of the channel index on the output stream.

Reference Design for Wider Application

Haifuraiya is part of an open-source reference stack released under the CERN Open Hardware Licence Version 2, Strongly Reciprocal (CERN-OHL-S-2.0). The stack includes the channelizer described here, the Opulent Voice modem (VHDL programmable-logic intellectual property in pluto_msk, and C++ processing-system software in opv-cxx-demod), a DVB-S2 transmit chain (dvb_fpga), a payload-side multiplexer for assembling the coherent downlink, and an operating-system-flexible ground-station interface (Interlocutor) implemented in Python with HTML5, CSS, and JavaScript. There are operator-facing dashboards in the ground station (Speculator) and in the polyphase channelizer (Bouro). Each component is independently usable. A designer working on a commercial satellite bent-pipe payload can adopt the channelizer alone, the modem alone, the ground-station interface alone, or the full pipeline as a starting point.

This architecture places the communications processing onboard the satellite rather than at a ground station accessed via a separate uplink and downlink. Traditional bent-pipe payloads with ground-based processing require a double-hop path. The signal must uplink to satellite, downlink to a processing ground station, re-uplink to satellite, and downlink to the end user, with attendant latency and link-budget penalties. Onboard channelization and demodulation eliminate that double-hop. Commercial trends in digital-transparent and regenerative satellite payloads are moving in the same direction for the same reasons, and Haifuraiya provides a worked example of how to implement that onboard intelligence in a compact, verifiable, open-source form.

The use of reconfigurable hardware in FPGA fabric rather than fixed-function silicon allows the design to evolve through validated case studies. Different demodulator approaches can be compared against the same air-interface recordings. Successive interference cancellation techniques can be added without hardware modification. And, machine-learning enhancements to existing signal-processing blocks can be evaluated through controlled before-and-after comparisons. For an operator with a long-lived satellite asset, this is the difference between a payload that ages out of relevance and one that continues to incorporate state-of-the-art techniques across its operational lifetime.

The general engineering methodology illustrated in this work is reusable across satellite system designs that share the same problem shape: a wideband allocation to be subdivided into many narrowband channels under non-trivial frequency uncertainty. The recommended order of consideration is
1. signal geometry against channel width and guard band
2. frequency uncertainty budget aggregated across all contributors
3. prototype-filter realizability given the transition band that remains
4. silicon budget given the FFT factorization required by the chosen channel count. Powers of two reduce verification cost and unlock decades of reference implementations, and unless there is a compelling reason to fight them, they tend to win.

The same trade-off space applies in commercial digital-transparent and regenerative satellite payloads, in software-defined VSAT and aeronautical-broadband systems, and in any wideband bent-pipe carrying narrowband users. Haifuraiya is one worked example. The repository [5] contains the channelizer VHDL source, the Python reference model and filter design notebook, the IP-XACT packaging, the block-design integration smoke test, and project documentation. The modem implementations and ground-station interface are in [6]. The entire stack is documented to allow re-instantiation at different channel counts, sample rates, and signal protocols.

The use of amateur radio frequencies to prototype and deploy a communications satellite of this nature can provide clear benefit to commercial operations. Amateur radio bands offer a regulatory environment in which new designs and design variants can be tested without the schedule and revenue pressures of commercial projects, and validated approaches can transfer to commercial implementations with reduced risk. The amateur radio satellite community is also a workforce-development pipeline. Skills in practical radio engineering, signal processing, and small-satellite systems are highly valued by commercial employers, and word of successful technical approaches spreads rapidly through the global amateur radio satellite community. Supporting the non-commercial amateur radio community directly benefits the broader satellite communications workforce.

Conclusion

The Haifuraiya channelizer is one worked answer to a general question facing wideband bent-pipe satellite designers: how many channels does the allocation actually support, given the signal, the frequency uncertainty, and the available silicon? For an 81 kHz signal in 10 MHz at 5.6 GHz on a Zynq UltraScale+ ZCU102, the decision was 64. The article documents the four arguments that produced that answer and the open-source reference design that implements it. The methodology is applicable to any wideband carrying narrowband multiplexed users, in amateur or commercial service. The reference stack is available for adoption, modification, and reuse under CERN-OHL-S-2.0.

Acknowledgments

The author thanks David Bowman (amateur radio call sign G0MRF) for the Mode-Dynamic-Transponder concept, which provided the architectural starting point for the Haifuraiya design. Martin Ling for the hardware reference design that informed the early architecture. Daniel Estévez (amateur radio call sign EA4GPZ) for the pm-remez library used for prototype-filter design. And, Evariste Courjaud (amateur radio call sign F5OEO) for valuable feedback on filter-design trade-offs. The Open Research Institute volunteer engineering team carries the design and implementation work forward.

References

[1]        f. j. harris, Multirate Signal Processing for Communication Systems. Upper Saddle River, NJ, USA: Prentice Hall, 2004.

[2]        f. j. harris, C. Dick, and M. Rice, “Digital receivers and transmitters using polyphase filter banks for wireless communications,” IEEE Trans. Microw. Theory Techn., vol. 51, no. 4, pp. 1395–1412, Apr. 2003, doi: 10.1109/TMTT.2003.809176.

[3]        D. Estévez, “pm-remez: A modern Parks–McClellan / Remez exchange FIR filter designer,” 2024. [Online]. Available: https://github.com/daniestevez/pm-remez

[4]        J. W. Cooley and J. W. Tukey, “An algorithm for the machine calculation of complex Fourier series,” Math. Comput., vol. 19, no. 90, pp. 297–301, Apr. 1965, doi: 10.2307/2003354.

[5]        Open Research Institute, “Mode-Dynamic-Transponder repository,” 2025. [Online]. Available: https://github.com/OpenResearchInstitute/Mode-Dynamic-Transponder

[6]        Open Research Institute, “Opulent Voice protocol and pluto_msk reference modem,” 2025. [Online]. Available: https://github.com/OpenResearchInstitute

[7]        Xilinx, Inc., Zynq UltraScale+ MPSoC Data Sheet: Overview, DS891, Mar. 2022.

Leave a Reply

Your email address will not be published. Required fields are marked *