How to get dsp.CICDecimator section word lengths?

3 次查看(过去 30 天)
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 个)

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 CenterFile Exchange 中查找有关 Language Fundamentals 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by