How to get dsp.CICDecimator section word lengths?

2 views (last 30 days)
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!

Answers (1)

Edson Silva
Edson Silva on 24 Jul 2020
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

Categories

Find more on Language Fundamentals in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!