- DSP log - http://www.dsplog.com -

Raised cosine filter for transmit pulse shaping

Posted By Krishna Sankar On April 22, 2008 @ 5:25 am In Filter | 44 Comments

In the previous post on transmit filtering using Nyquist pulse [1], we had briefly learned that the information symbol with a symbol period can be transmitted without inter symbol interference (ISI) by using Nyquist pulse,


The resultant waveform is ideally bandlimited to frequencies from Hz to Hz.

However, in typical transmission schemes, we do not hear of pulse shaping using sinc() filters. Rather, pulse shaping using raised cosine filter is frequently used. In this post, objective is to understand the motivation behind using raised cosine filtering for pulse shaping.

Though the sinc filter achieves bandlimited transmission within Hz with out inter symbol interference, the sinc filter has the following issues:

1. The tail of the sinc filter decays slowly. Note that practical implementations cannot use a filter which extends from to . To ensure that only filter taps having small values are only ignored, need to use a filter of large length.

2. Small errors in timing synchronization at the receiver will result in significant intersymbol interference. Reason: The error in timing synchronization means that the sampling tme at the receiver is not aligned. This implies that filter tap values at time etc are non-zero. Hence reults in significant inter symbol interference.

Given so, there was a motivation to find filters which satisfies the Nyquist criterion, but has a faster decay of the filter tail. A commonly used pulse shaping filter satisfying the Nyquist criterion while having a faster decay is called the raised cosine filters having the following equation,

(Refer. Equation 5.8 in [DIG-COMM-BARRY-LEE-MESSERSCHMITT] [2]).

is the excess bandwidth parameter and takes values from 0 to 1.

With =0, the raised cosine filter reduces to the classical Nyquist filter with zero excess bandwidth outside .

With =1 it is called 100% excess bandwidth and does not occupy frequencies outside .


(a) for and

(b) for

(Thanks to the article in RFDesign.com, The care and feeding of digital, pulse-shaping filter [3], Ken Gentile)

The frequency response of the raised cosine filter is,


Simulation model

Using the attached Matlab/Octave script, one can plot the time domain and frequency domain representations of the raised cosine filters for different values of .

Click here to download:

Matlab/Octave code for ploting the time and frequency response of raised cosine filter [4]


25th May 2008

Modified the code to handle the divison by zero error.

19th May 2008

It has been brought to my attention that the code is unable to plot accurately in Matlab environment. The difference is because my version of Octave seems to handle the division by numbers close to zero cleanly, where as Matlab insists on returning Inf. I will fix the code and release an update. sorry for the inconvenience.

Figure: Time domain response of raised cosine pulse shaping filters

Figure: Frequency domain response of raised cosine pulse shaping filters


[PROS] From the time domain samples, can observe that filter tail of the raised cosine filter with greater than 0 dies down faster. This implies that practical implementations can ignore taps which are close to zero with negligible loss in performance.

[PROS] As the filter taps values at and above are close to zero, timing mis-alignmnet at the receiver does not contribute to significant inter symbol interference.

[CONS] As can be seen from the frequency response, with greater than 0, the fitler response is bandlimited only till . We need a wider bandwidth to transmit the waveform when compared to classical Nyquist bandwidth.

Given that the raised cosine filtering simplifies the practical implementation (by making the receiver more robust to timing synchronization errors), the increase in transmission bandwidth may be a small price to pay.


From the frequency domain response, one may observe that the shape of the roll-off looks like a cosine waveform having a DC value. Henec the term raised cosine filters. :)


[DIG-COMM-BARRY-LEE-MESSERSCHMITT] [2] Digital Communication: Third Edition, by John R. Barry, Edward A. Lee, David G. Messerschmitt [2]

Hope this helps.


Article printed from DSP log: http://www.dsplog.com

URL to article: http://www.dsplog.com/2008/04/22/raised-cosine-filter-for-transmit-pulse-shaping/

URLs in this post:

[1] transmit filtering using Nyquist pulse: http://www.dsplog.com/2008/04/14/transmit-pulse-shape-nyquist-sinc-rectangular/

[2] [DIG-COMM-BARRY-LEE-MESSERSCHMITT]: http://www.amazon.com/gp/redirect.html?ie=UTF8&location=http%3A%2F%2Fwww.amazon.com%2FDigital-Communication-John-R-Barry%2Fdp%2F0792375483&tag=dl04-20&linkCode=ur2&camp=1789&creative=9325

[3] The care and feeding of digital, pulse-shaping filter: http://rfdesign.com/mag/radio_care_feeding_digital/

[4] Matlab/Octave code for ploting the time and frequency response of raised cosine filter: http://www.dsplog.com/db-install/wp-content/uploads/2008/05/raised_cosine_filter.m

[5] click here to SUBSCRIBE : http://www.feedburner.com/fb/a/emailverifySubmit?feedId=1348583&loc=en_US

Copyright © 2007-2012 dspLog.com. All rights reserved. This article may not be reused in any fashion without written permission from http://www.dspLog.com.