Quantization (Design Options)

The FIR Quantization tab Design Options provides a powerful facility for designing fixed-point FIR filters.  When you specify quantization, ScopeFIR post-processes your design using one of several techniques to find a set of quantized (fixed-point) coefficients which closely approximates the original full-precision design.

To design fixed-point filters with ScopeFIR:

  1. Open the Design Options dialog via the Design Options button or the "FIR/Design Options" menu.
  2. Select the Quantization tab.
  3. Select the Quantize to button and enter the number of bits to quantize to, which can be from 1 to 63.
  4. Select a quantization algorithm (see below.)
  5. Hit the OK button to close the dialog.
  6. Hit the Design or Optimize button on the specification editor to design or optimize using quantization.
Quantization Algorithms

ScopeFIR allows you to choose from the following quantization algorithms:

  1. Round Multiple
  2. Round
  3. Symmetric Search
  4. Asymmetric Search

Round Multiple rounds the coefficients to nearby quantized values that are chosen using a proprietary algorithm.  The Round Multiple algorithm is fast and effective, so it is usually.  However, the other algorithms may work better in some cases.

Round simply rounds each coefficients to its nearest quantization level.  (This is the rounding algorithm that was used in ScopeFIR 4.1.1 and prior.)

Symmetric Search searches for the quantized coefficients which best meet the desired frequency response.  It chooses coefficients symmetrically in pairs around the center of the filter in order to maintain llinear phase.

Asymmetric Search is similar to Symmetric Search, except that it searches coefficients individually rather than in symmetric pairs.  As a result:

  • It sometimes can meet the desired specification with fewer taps--which is its main advantage.
  • It is slower than Symmetric Search by at least a factor of two.
  • It changes linear-phase filter into slightly non-linear phase.  However, the non-linearity of phase is so small as to be negligible in all but the most stringent designs.
Search Grid

For the Search algorithms, you can enter a minimum and maximum search grid.  This defines a range of search grid densities that are used in the search process.  The default values work well in almost all cases, but you can modify them to make a tradeoff-between search speed and search effectiveness, as follows:

  • You can decrease the minimum and/or maximum to speed the search process.  Decreasing the maximum will have the greatest effect.
  • You can increase the minimum and/or maximum to increase the effectiveness of the search process: the greater the search grid, the more effective the search generally is.  However, there is a point of "diminishing returns" at 64 or so, in which larger numbers don't really have much effect.
  • The search grid min/max don't have to be powers of two (as the defaults are), but ScopeFIR moves from the min to the max by factors of two, so it is best that the min/max ratio be a power of two.  (To make things simple, you might just want to stick with powers of two!)
Quantization Tips
  • Round Multiple, generally works well, and it is faster than the search algorithms, so it is ScopeFIR's default method.
  • Rounding is inherently a non-linear process, so no single rounding algorithm works best in all cases: if you are not getting a good result with one method, try the others. 
  • A filter with quantized coefficients generally requires more taps to meet a given specification than a full-precision filter.  Therefore, quantization is best used in conjunction with ScopeFIR's optimization capability.  That allows ScopeFIR to automatically increase the number of taps in the (quantized) filter in order to meet the specification.
  • Quantization tends to affect stopbands much more than passbands.
  • The stopband attenuation cannot exceed a limit for a given number of quantization bits, no matter how many taps you specify.  For example, with 16-bit quantization, stopbands are limited to about -75 dB.  This isn't a limitation of ScopeFIR, it's a theoretical limitation.  However, if you need deep stopbands, you can always cascade multiple filters to meet the requirements.  For example, you might cascade two 16-bit filters that each have 45 dB stopbands in order to achieve a total response with a 90 dB stopband.  (ScopeFIR's Convolve feature can show you the combined response of two filters.)
  • The response that ScopeFIR shows is an ideal response calculated from quantized coefficients.  Therefore, the response you measure in your fixed-point implementation probably will have stopbands that are not quite as deep as ScopeFIR shows.  As a result, you should include some margin in the specifications you enter into ScopeFIR when you design a filter.  For example, if you want a filter with a 60 dB stopband, you might want to specify 65 dB, to allow for a few dB of "implementation loss" in your fixed-point filter.

ScopeFIR 5 Help