# About

**Krishna Sankar Madhavan Pillai**

Krishna Sankar M is a Signal Processing Engineer based out of Bangalore, India. His typical activities on a working day involve identifying and modeling digital signal processing algorithms for wireless receivers.

**dspLog**

The blog started some in February 2007 on the free Blogger platform and was hosted at http://dsplog.blogspot.com with the following objective:

Explain and discuss the basic text book concepts in digital signal processing and digital communication using simple Octave scripts.

Seeing consistent increase in traffic over the 6-7 months from inception, it was decided to move to an independent platform hosted at www.dsplog.com.

**Target audience**

(a) Students taking courses in digital signal processing/digital communication and requiring help to understand some of the concepts.

(b) Practicing engineers who are fresh to the domain of digital signal processing and requiring help.

(c) Ofcourse, the experienced engineers can share tips and tricks associated with the digital signal processing trade.

**Probable contents**

(a) Understanding basic concepts pertaining to FIR/IIR filtering

(b) Sample rate conversion

(c) Bit and Symbol error probabilities for typical digital communicatio

(d) Orthogonal Frequency Division Multiplexing

(e) more…

**Contact via Email**

For any queries, clarification, please contact the author at

**Subscribe for the feed via Email**

Please click ` here`

.

**Subscribe for the feed via RSS**

Please click here

D id you like this article? Make sure that you do not miss a new article
by subscribing to RSS feed OR subscribing to e-mail newsletter.
* Note: Subscribing via e-mail entitles you to download the free e-Book on BER of BPSK/QPSK/16QAM/16PSK in AWGN.*

{ 46 comments… read them below or add one }

Hi

I’ve been following your blog for quite some time and liked a lot. I’ve also started blogging recently about analog design. Please checkout my blog.

http://analogquantized.wordpress.com/

Thanks,

3Sigma

@3Sigma: Thanks. Had a look at your blog – great ! All the very best!

If you are in Bangalore, lets meet up when are not ‘iwannastay_anonymous’

hi krishna,

can u plzzz get me VHDL codes for viterbi decoding both using traceback and register exchange method.thanks

@seema: sorry, do not have vhdl codes

fine,thnks for reply

…………..pls help me…..

my project on femtocell power control……..

i have theoretical knowledge but i don’t know how to simulate in MATLAB. so please help me giving sample code for power conterol in cellular communication

@prasad: Power control should be relatively easy to simulate. How’s the transmitter getting a sense of it’s transmitted power – feedback from the power amplifier and/or feedback from the receiver system?

Hi Krishna ,

Website is very useful.

I can learn a lot.

viKi

Sir,

I am working on spectrum sensing on TV band.

I need to help on how to model a digital TV signal for null and alternate hypothesis.

Pls help me with this.

@Winston: Are you using power estimate > threshold for the hypothesis?

Hello, In this website I have learn much knowledge. Now I am studying LDPC channnel coding.

Do you have some source code about block fading channel? I can not know it exactly?

@Rui: LDPC code-decoding is one of the TODO’s. However, you can find some posts on Hamming decoder and Viterbi decoder at

http://www.dsplog.com/category/coding/

thanks

Hi Krishna Sankar,

I am doing research in MIMO and Transmition Antenna Selection (TAS), may you give me some links or examples matlab codes on this topic?

i am a beginer in using matlab.

@Hung: I cannot point to specific codes, but you can checkout http://www.dsplog.com/category/mimo

Mr.Krishna I’m working in co-operative spectrum sensing for cognitive radios.. Currently in energy detection based on neyman-pearson criterion and likelihood ratio test.. Is there any blogs for hypothesis testing(DETECTION THEORY ) pls provide me if u have any materials or links

@Thiyagi: You can checkout Ms Charan Langton’s articles at

http://www.complextoreal.com/tutorial.htm

http://www.complextoreal.com/chapters/modulation2.pdf

Sir…

is there a reason between the choosing a MIMO 2×2 with the 64-QAM constellation?

are they connected each other?

i mean, why don’t we choose 2×3 or 2×4 which have a higher throughtput?

the square configuration (MIMO 2×2) and the square constellation of 64-QAM, are they correlated each other?

thank you for your answer

@Dewa: The MIMO configuration (2×2, 3×3 etc) and the constellation (64-QAM, QPSK, 16QAM etc) are independent design choices. For eg, if you see 11n/11ac standard, can see the MIMO configurations with upto 8 antennas, with constellations from BPSK all the way to 256QAM.

sir we are implementing 2×2 MIMO system..using almouti scheme and also mrc at receiver side…actually we have to transmit text file wirelessly through zigbee module and receiver should add both the signal…i dnt knw how the SNR will increase and also the original signal should get back…

@snehaa diwan: Couple of points:

a) Using two transmit antennas and two receive antennas, you can potentially double the data rate

For articles relating the equalization with a 2x2MIMO case, please look at

http://www.dsplog.com/tag/mimo/

b) To increase the reliability, one can chose to keep the data rate and have more antennas at the receiver

- Maximal Ratio Combining (1tx and 2 receive antennas)

http://www.dsplog.com/2008/09/28/maximal-ratio-combining/

- Alamouti coding (2tx and 1 receive antenna)

http://www.dsplog.com/2008/10/16/alamouti-stbc/

- Alamouti coding (2tx and 2 receive antenna)

http://www.dsplog.com/2009/03/15/alamouti-stbc-2-receive-antenna/

Hope this helps

hi Krishna

Good to see you solving problems of technocrates

i want some suggestion from you on my project.

i am doing MSK modulation using DDS centered at 60 mhz. please suggest me some demodulation scheme at receiving End.

@vikas: please take a look at http://www.dsplog.com/tag/msk

If we increase the number of subcarriers on OFDM, but keep the bandwidth the same, why do you think the BER increases with higher carriers

@Mat: If the number of subcarriers are more, then the chances of the frequency offset, phase noise affecting the orthogonality between the subcarriers gets higher.

Why have you stopped posting man ??

@abhsihek: am getting lazy?

Hello Mr krishna

Currently im doing research on ofdm with qpsk and 64-qam modulation technique. I also need to generate a simulation of it.

But im a little bit confuse now…what is the equation for the BER of QPSK and 64-QAM?

it will be helpful if you can guide me on how to generate the MATLAB codes.

Thanks in advance

@mij: Please refer to the post http://www.dsplog.com/2008/07/08/compare-bpsk-qpsk-4pam-16qam-16psk-64qam-32psk/

hello sir,

can u provide matlab code for to undersample the pulsed UWB signal?……plz help me sir…….

@uma: Sorry, I have not tried model UWB systems

sir,

we are trying to implemnt UWB subsampling receiver for 3.1to 10.6 ghz input signal(gaussian pulse).can u help us with matlab code for subsampling receiver..

please sir .kindly help us..

@jennifer: Sorry, I have not tried modeling UWB. For downsampling, its as simple as take one out of two samples (for downsample by 2)

hi dude,

i am stuck with coding in matlab of simulation environment for mobile communication system (mose) for power control in mobile radio system.

please help me

@hitesh: What is the problem which you are facing?

Just found this website. What a wonderful gold-mine! Krishna, very nicely done!

–Pascal

Hi Krishna,

Yesterday I sent a mail to your address and also posted a question on forum asking about plotting eye diagram. On one of the thread I found this and had few doubts.

When you say you are plotting 2 bits I see that high and low of that bit are at center of plot. So is it plotted as half of previous bit-current bit-half of next bit

?

Dudes, I salute you for this. One wonderful blog.

Do u have MATLAB code for transfering data between two computers using parallel port?

@smruthi: Sorry, I do not have. However, you might want to check the following links:

(a) MATLAB TCP/IP – code example by Steven Kolak

http://www.mathworks.com/matlabcentral/fileexchange/11802

(b) TCP/IP Communication for Real-Time and Embedded Systems By Sam Mirsky

http://www.mathworks.com/company/newsletters/digest/2008/july/tcpip.html

(c) Instrument Control Toolbox 2.9

http://www.mathworks.com/products/instrument/

Mr. Kri Index to Various dashnan, I want to know , While assigning Subcarrier

Index to each data, You have used -26 to +26 neglecting 0. may know how this process is done. WHY Such change in subcarrier index is followed

@Selvi: 0th subcarrier is not used by controlling the assignment of symbols to subcarriers. In general, modulating the DC subcarrier is not preferred as the DC impairments in RF etc will corrupt the information.

Hello,

While I was putting the code, I downloaded from

http://www.dsplog.com/db-install/wp-content/uploads/2009/08/script_ber_bpsk_convolutional_code_viterbi_decode.c

in the codeblocks or in Visual Studio, it gives me error.

In codeblocks, it gives error at line number 42 and 138

error: undefined reference to `_exp10′|

Could you please tell me how to resolve this.

@Ajay: I also had the same problem when I tried to compile with gcc. I worked around it by using -lm option when compiling.

Maybe, the following URI might provide you more info:

http://ubuntuforums.org/archive/index.php/t-1071822.html

Good luck.

I have been asked to write a 1/4 soft input viterbi decoder in VHDL or Verilog (I use VHDL as I’m more familiar with it). I have a decent knowledge of Convolutional Codes and Viterbi Decoding and I have access to a 1/2 Viterbi decoder (which I didn’t create). My question is..is a 1/4 decoder much more complicated to design or is there anyway I can use the existing 1/2 decoder?

@Bob: Well, its not complex. However, you need to re-construct the trellis based on the current state-next state, input-output transition matrix for rate 1/4 code.