> remez
A digital filter designer for your browser. Type a specification, watch the response redraw as you go, then export the coefficients, C, or synthesizable RTL.
Design as you type
You enter a specification on the left and remez designs the filter and plots the result on the right, redrawing on every keystroke. Two families are on offer: FIR by the Parks–McClellan (Remez) exchange — linear phase, unconditionally stable, as many taps as it takes — and IIR by the bilinear transform of a classical analogue prototype — far fewer coefficients for the same selectivity. When you like what you see, you export it.
What it does
Parks–McClellan
All four linear-phase types, multiband, weighting and inverse-f weighting, with a live equiripple response.
Classical prototypes
Butterworth, Chebyshev I & II and elliptic, as lowpass, highpass, bandpass or bandstop.
See the result
Magnitude, weighted error and impulse response, plus the filter drawn as a biquad cascade or tapped delay line.
Quantize it
Taps and biquad sections in fixed point, with the binary point placed automatically and the noise floor measured.
C & coefficients
A self-contained C library and program, or the coefficients alone as CSV or a C header.
SystemVerilog & VHDL
Chain, adder tree or one reused multiplier, folded or not, each with a self-checking testbench.
Five-minute version
- Launch the web app and leave Mode on FIR.
- In Filter, set the sample rate so the band edges read in Hz.
- In Bands and constraints, set the passband and stopband edges.
- Watch the top plot. If the stopband is not deep enough, raise Taps.
- Choose an export: coefficients as a
.csvor C header, a compilable.c, or RTL.
Exports
Everything the design produces, ready to drop into your project:
remez also runs as a desktop app on Windows, macOS and Linux, and from a terminal it
takes a .remz design file and answers --help
and --version without opening a window.
Download for Desktop
Prefer a native app? Grab the latest build for your platform. These links always point at the most recent release.
All releases are listed on the GitHub Releases page.