CORE Generator & IP Modules - 
Glossary of Terms


Bandwidth
Coefficient
Correlation
Data Width
DCT
Decimation
FIR
FFT
Frequency Domain
iFFT
IIR
Interpolation
Nyquist
Parallel Arithmetic
PDA
Phase Response
Precision
Sampling
SDA
Serial Arithmetic
Time Domain

Bandwidth

The highest frequency component of an analog waveform that a system would have to be capable of processing without distorting the signal. See Sampling and Time Domain.

Coefficient

A coefficient is simply a factor which is used in a multiplication operation. The most common usage of this term is with respect to multiplication performed by filters. You will hear of constant coefficients for a filter whose characteristics never change, or adaptive coefficients for filters whose characteristics change over time. Coefficients are calculated for the desired frequency response of the filter using "magic".

Correlation

This is the process of scanning data for a certain pattern. In video applications the goal could be to isolate a specific pattern, or to just look for a boundary. The types of correlation being performed can be multi-dimensional, hence the use of 1-D, 2-D or 3-D correlators.

Data Width

When data is input to a digital system it is represented as a binary number of a certain bit width. Generally, more bits means better accuracy in the digital representation. Two other terms are used in conjunction with the data width: precision and dynamic range. For a given data width, the range of the highest value that can be represented down to the lowest value that can be represented is called the dynamic range (usually quoted in dB) with a certain resolution, called the precision.

The reason that this matters is because multiplication of numbers can cause word growth. As an example, we know that multiplying two 8-bit numbers can result in data which is up to 16 bits wide if the multiplicands are greater than 1. If the numbers being multiplied are scaled so that they are less than 1, then the result will also always be less than 1, and can be represented using 8-bits.

DCT

Discrete Cosine Transform. A common form of mathematical algorithm used in compression of audio and video data. Examples of standards that use DCT are:

  • Dolby AC2 & AC3 - 1-D DCT (and 1-D Discrete Sine Transform)
  • JPEG (still images) - 2-D DCT spatial compression
  • MPEG1 & MPEG2 - 2-D DCT plus motion compensation.

Decimation

Decimation is the opposite of interpolation. Sometimes the effective sampling rate of a signal must be increased or decreased. This may be required when data has to be transferred from one type of system to another. The process of increasing the sampling rate is called interpolation, while the process of decreasing the sampling rate is called decimation. The most important consideration is that the process of interpolation or decimation not destroy the signal's integrity, i.e., the signal still be a reasonably accurate representation of its analog equivalent after the process of interpolation or decimation.

Note: Decimation also has a specialized meaning with respect to FFTs.

FIR

Finite Impulse Response. The impulse response of a system is the name given to what happens at the system's output when you input a single pulse. In the case of an FIR filter, the output eventually settles down (i.e., is finite, as opposed to infinite--see IIR). FIR filters can also be referred to as moving average filters. Other terms that you are likely to hear when people talk about these are:

  • Order - The complexity of the filter's frequency response.
  • Taps - The number of time delayed inputs and coefficients in the filter's mathematical definition.
  • Symmetrical - If the coefficients of the filter's mathematical definition are symmetrical about the center then the filter is said to be symmetrical. A symmetrical filter's transfer function would look something like:

C0.X0 + C1.X1 + C2.X2 + C3.X3 + C4.X4 + C3.X5 + C2.X6 + C1.X7 +C0.X8


In the case of a non-symmetrical filter the transfer function would be:

C0.X0 + C1.X1 + C2.X2 + C3.X3 + C4.X4 + C5.X5 + C6.X6 + C7.X7 +C8.X8


Note that in each of the above examples the filter, would be 3rd Order and have 9-taps.
  • Adaptive - A filter is made up of many multiplications of time delayed inputs by coefficients. If the coefficients are changed at any time, the filter is said to be adaptive. The implications of this for the design of the filter is that the multipliers usually become more complicated than the case where the coefficients are constant.


These terms also apply to IIR filters.

FFT

Fast Fourier Transform. This is an accelerated algorithm for performing a Discrete Fourier Transform (DFT). An FFT is used to calculate a waveform's frequency spectrum (see time domain and frequency domain). It is often easier to analyze a waveform in the frequency domain than it is in the time domain (e.g., radar reflections, speech, data compression). Also referred to as DFT (Discrete Fourier Transform).

In an n-point FFT, the number of "points" is used to refer to the amount of input data (the data set) on which you are going to perform the FFT calculation. The more points, the bigger the calculation.

Note: Xilinx devices can do 1024-point FFTs.

The radix of an FFT is another term you may come across. A radix 2 FFT supports data set sizes that are powers of 2. A radix 4 FFT supports data set sizes that are powers of 4. Radix 4 FFTs are less flexible, but require less multiplication to be performed and are therefore faster.

The term decimation is also used in a specific context with respect to FFTs. The process of performing the FFT function scrambles the data that is generated. If the time domain input is regularly ordered, the frequency domain output is scrambled (decimation in frequency). If the time domain input is scrambled appropriately, the frequency domain output is properly ordered (decimation in time).

The term re-ordering is used to refer to the unscrambling of data.

Frequency Domain

See Time Domain

iFFT

inverse Fast Fourier Transform. This is a mathematical function which generates the time domain representation (a waveform) from a frequency spectrum (see Time Domain, Frequency Domain and FFT).

IIR

Infinite Impulse Response. The impulse response of a system is the name given to what happens at the system's output when you input a single pulse. In the case of an IIR filter the output never settles down (i.e., it varies infinitely - as opposed to being finite, see FIR). This is because these filters include feedback from the output. While these filters have more capabilities than FIR filters they are prone to instability and their design requires more care. Certain types of IIR filters are also referred to by special names such as a BiQuad filter, which is a second order IIR filter.

Interpolation

See Decimation

Nyquist

See Sampling

Parallel Arithmetic

See PDA

PDA

Parallel Distributed Arithmetic. This is a way of implementing multiplication using a fully parallel process. While costly in terms of silicon area, it yields the fastest results.

Phase Response

You hear a lot of talk about the frequency response of a system (i.e., how it mashes the frequencies that are input to it). There is another aspect of the system's effect on the input signal which is important in certain applications, namely the phase response. The phase response of a system is how the system mashes the phase of a signal that passes through it.

Precision

The term precision can be used in relation to multiplication. When two numbers are multiplied together the result is typically a larger number than either of the multiplicands. For example, multiplying two 8-bit quantities can result in a number which is as large as 16-bits. In some cases, the full data width is required (i.e., all 16-bits, in the above example). This is called maximum precision. If only the most significant 8-bits would be required, the term 8-bit precision would be used.

Sampling

The process of generating a digital equivalent for an analog waveform involves measuring the analog voltage at various instants in time and concatenating these as a series of digital numbers. This process is referred to as sampling and the rate at which the measurements are made is called the sample rate. There is a rule that says in order to avoid loss of quality of a signal the sampling rate must be greater than or equal to twice the highest frequency contained in the analog signal. For example, female human speech typical contains frequencies of up to 16KHz maximum (i.e., a 16KHz bandwidth) and so the minimum sampling rate that could be used without signal degradation would be 32KHz. This is also referred to as the Nyquist frequency.

SDA

Serial Distributed Arithmetic. This is a way of implementing multiplication using a serial process. The advantage of this technique is that the logic required for such an implementation is very small. The corresponding disadvantage is that to perform one multiplication requires several clock cycles, and so the data throughput rate is low.

Serial Arithmetic

See SDA

Time Domain

When looking at a signal we tend to naturally think of the signal as varying in time. The easiest signal to think of is a sine wave, which most of us have seen on an oscilloscope before. A sine wave has a single frequency and a known amplitude.

There is nothing wrong with thinking about a signal in this way, but sometimes if the signal is particularly complex, there may be a better way of looking at it. One way to consider looking at the signal is from a frequency point of view.

When doing signal analysis, the mathematics is often easier if you work with the frequency representation of a signal. As a result, a complex waveform is often expressed in terms of its frequency components when it is manipulated (see FFT). This is referred to as working in the Frequency Domain.