The raised-cosine filter is a filter frequently used for pulse-shaping in digital modulation due to its ability to minimise intersymbol interference (ISI). Its name stems from the fact that the non-zero portion of the frequency spectrum of its simplest form () is a cosine function, 'raised' up to sit above the (horizontal) axis.
Mathematical description
The raised-cosine filter is an implementation of a low-pass Nyquist filter, i.e., one that has the property of vestigial symmetry. This means that its spectrum exhibits odd symmetry about , where is the symbol-period of the communications system.
The roll-off factor, , is a measure of the excess bandwidth of the filter, i.e. the bandwidth occupied beyond the Nyquist bandwidth of . If we denote the excess bandwidth as , then:
where is the symbol-rate.
The graph shows the amplitude response as is varied between 0 and 1, and the corresponding effect on the impulse response. As can be seen, the time-domain ripple level increases as decreases. This shows that the excess bandwidth of the filter can be reduced, but only at the expense of an elongated impulse response.
As approaches 0, the roll-off zone becomes infinitesimally narrow, hence:
When , the non-zero portion of the spectrum is a pure raised cosine, leading to the simplification:
or
Bandwidth
The bandwidth of a raised cosine filter is most commonly defined as the width of the non-zero portion of its spectrum, i.e.:
The auto-correlation result can be used to analyze various sampling offset results when analyzed with auto-correlation.
Application
When used to filter a symbol stream, a Nyquist filter has the property of eliminating ISI, as its impulse response is zero at all (where is an integer), except .
Therefore, if the transmitted waveform is correctly sampled at the receiver, the original symbol values can be recovered completely.
However, in many practical communications systems, a matched filter is used in the receiver, due to the effects of white noise. For zero ISI, it is the net response of the transmit and receive filters that must equal :