A working, fully parameterized FPGA IP library of synthesizable, configurable blocks for Software Defined Radio systems. Developed by Mintaka as a full FPGA design and verification project, it is designed for reuse and composition across Xilinx/AMD and Intel/Altera FPGA platforms.
SDR-LIB is Mintaka's in-house FPGA IP library, actively used across our FPGA, SDR and SatCom engineering services. It provides a production-ready foundation for Software Defined Radio systems. The library covers the entire SDR signal chain — from high-speed ADC/DAC interfaces through digital down/up conversion, filtering, synchronization, modulation/demodulation, forward error correction, and packet processing.
It contains 210+ synthesizable RTL/IP modules organized into 25 functional groups: foundational packages and fixed-point math; DSP, synchronization and modulation chains; OFDM and FEC; streaming, CDC, memory, interfaces, control and debug infrastructure.
Every module is written in SystemVerilog IEEE 1800-2017 and uses AXI4-Stream as the standard data transport interface, enabling seamless composition without glue logic. The library is fully parameterized, supporting various data widths, decimation/interpolation rates, and filter configurations through compile-time parameters.
Copernicus AI Copilot helps engineers configure and combine these ready-to-synthesize blocks into SDR system architectures. The engineer remains in control of the architecture, requirements and implementation decisions.
SDR-LIB works with FPGA hardware platforms in the Orion Signal Research Platform, where its real-time processing blocks are configured, integrated and evaluated as part of complete SDR communication systems.
Complete SDR signal chain from ADC to host and back
| Domain | Responsibility |
|---|---|
FPGA Fabric |
Real-time SDR processing using SDR-LIB's synthesizable IP blocks |
Host / Control |
Configuration, orchestration, data handling and higher-layer system functions |
Control Plane |
Configuration of frequency, gain, rates and other SDR-LIB block parameters |
Data Plane |
Streaming IQ and packet data between FPGA processing and the system host |
25 functional IP groups covering the complete SDR signal-processing and system-infrastructure stack
Shared types, parameters, AXI-Stream interface definitions
Resize, round, saturate, clip detect, gain, shift operations
View example: fxp_resize.svPhase accumulator, LUT and CORDIC-based DDS, complex NCO
sin/cos, atan2, vectoring, rotation, polar↔cartesian
FIR, CIC, halfband, polyphase, boxcar — decimate & interpolate
View example: fir_polyphase.svDigital Down Converter: mixer → CIC → FIR → baseband IQ
Digital Up Converter: baseband IQ → FIR → CIC → mixer
Power estimator, RSSI, AGC loop, gain apply, saturator
Costas loop, complex PLL, freq/phase error estimators
Gardner TED, Mueller-Müller, symbol timing, fractional delay
Preamble correlator, sync word detector, frame aligner
BPSK, QPSK, OQPSK, OOK, FSK, GFSK, GMSK, QAM16, QAM64
All demods + LLR/soft-decision output for FEC
Radix-2, streaming FFT/IFFT, windowing, spectrum analysis
Polyphase filter bank, FFT channelizer, channel select
CP insert/remove, FFT RX/TX, pilots, channel estimation
CRC, scrambler, conv/Viterbi, Reed-Solomon, LDPC, Polar
Framer, deframer, header parser, CRC, stream packetizer
FIFO, register slice, width converter, mux, demux
Async FIFO, pulse/level/bus sync, reset synchronizer
Single/dual/true-dual-port RAM, ROM, delay line, buffers
ADC/DAC capture, IQ formatter, JESD204, LVDS, SPI RF
Register bank, AXI-Lite/Wishbone slave, SPI/UART/I2C
ILA wrapper, stream monitor, overflow/underflow, IQ capture
| Aspect | Standard |
|---|---|
| Language | SystemVerilog IEEE 1800-2017 |
| Organization | One module per file, filename = module name |
| Parameters | kCamelCase prefix (e.g., kDataWidth) |
| Ports | snake_case; AXI-Stream slave = s_*, master = m_* |
| Reset | Active-low asynchronous (rst_n), synchronous release |
| Types | Imported from sdr_types_pkg; use logic not wire/reg |
Learn more about our SDR capabilities and how we can help with your FPGA design.
Get in Touch Orion Platform