Range of quantizer to avoid clipping of transmitted signal

2 ビュー (過去 30 日間)
rihab
rihab 2015 年 9 月 29 日
コメント済み: rihab 2015 年 9 月 29 日
I have a signal ,say
s = sqrt(0.5) * (randn(1,10000) + 1i * randn(1,10000))
After quantizing it to say 512 levels, I observe that there is clipping of the original signal. I would like to know if there is a method in matlab to calculate the range of quantizer for a signal with complex normal distribution (signal s defined above) in a way that the original signal is not clipped.
Thank you in advance!

回答 (1 件)

Walter Roberson
Walter Roberson 2015 年 9 月 29 日
No, there is not. As I explained before, Normal Distribution has an infinite tail in both directions. If you quantize it to any finite number of bins of finite width then you cannot cover the entire range, so the signal will be clipped. To avoid the clipping you would either need to use an infinite number of quantization levels or else an infinite width for each level.
  6 件のコメント
Walter Roberson
Walter Roberson 2015 年 9 月 29 日
Bin width needs to be a fraction of the range not of the minimum value. Max minus min. And remember to take the complex portion into account.
rihab
rihab 2015 年 9 月 29 日
Does the following make sense:
rIn = min(max(real(s),minValue),maxValue);
rIn = round(rIn/q)*q; %q is defined as q = (maxValue-minValue)/2^enob
rQuad = min(max(imag(s),minValue),maxValue);
rQuad = round(rQuad/q)*q;
rQuant = rIn + 1i*rQuad

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by