How to get dsp.CICDecimator section word lengths?

1 回表示 (過去 30 日間)
Jonathan Drolet
Jonathan Drolet 2016 年 10 月 17 日
回答済み: Edson Silva 2020 年 7 月 24 日
mfilt.cicdecim is now deprecated in favor of dsp.CICDecimator. However, I can't find how to get dsp.CICDecimator to give me the word length of every sections of the CIC. For example:
hd = mfilt.cicdecim(20, 1, 2, 16, 16, 15);
wordLengths = hd.SectionWordLengths; % [24 20 19 18]
fracLengths = hd.SectionFracLengths; % [14 10 9 8]
outputFracLength = hd.OutputFracLength; % 6
How would I get the same results using dsp.CICDecimator? I can do
hd = dsp.CICDecimator(20, 1, 2, 'OutputWordLength', 16);
but I can't figure out how to get minimum word/frac length for each section. I can't even seem to be able to give the input word/frac length!
  1 件のコメント
Meng Zhao
Meng Zhao 2017 年 8 月 16 日
I have run into this problem, too. Any answers?

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

回答 (1 件)

Edson Silva
Edson Silva 2020 年 7 月 24 日
The following code will do the job:
CIC1 = dsp.CICDecimator(8,1,3);
CIC1.SectionWordLengths=[32 32 32 32];
CIC1.FixedPointDataType='Specify word lengths'
letting the last line without the comma will show you the following:
CIC1 =
dsp.CICDecimator with properties:
DecimationFactor: 8
DifferentialDelay: 1
NumSections: 3
FixedPointDataType: 'Specify word lengths'
SectionWordLengths: [32 32 32 32]
OutputWordLength: 32

カテゴリ

Help Center および File ExchangeMultirate Signal Processing についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by