Информация о Системном объекте фильтра
info(
возвращает очень простую информацию о Системе фильтра object™, sysobj
)sysobj
. Подробные сведения зависят от типа фильтра и структуры.
Получите формат short и информацию о длинном формате о фильтре.
d = fdesign.lowpass;
f = design(d,'SystemObject',true);
info(f)
ans = 6x35 char array
'Discrete-Time FIR Filter (real) '
'------------------------------- '
'Filter Structure : Direct-Form FIR'
'Filter Length : 43 '
'Stable : Yes '
'Linear Phase : Yes (Type 1) '
info(f,'long')
ans = 45x45 char array
'Discrete-Time FIR Filter (real) '
'------------------------------- '
'Filter Structure : Direct-Form FIR '
'Filter Length : 43 '
'Stable : Yes '
'Linear Phase : Yes (Type 1) '
' '
'Design Method Information '
'Design Algorithm : equiripple '
' '
'Design Options '
'Density Factor : 16 '
'Maximum Phase : false '
'Minimum Order : any '
'Minimum Phase : false '
'Stopband Decay : 0 '
'Stopband Shape : flat '
'SystemObject : true '
'Uniform Grid : true '
' '
'Design Specifications '
'Sample Rate : N/A (normalized frequency) '
'Response : Lowpass '
'Specification : Fp,Fst,Ap,Ast '
'Passband Ripple : 1 dB '
'Passband Edge : 0.45 '
'Stopband Edge : 0.55 '
'Stopband Atten. : 60 dB '
' '
'Measurements '
'Sample Rate : N/A (normalized frequency)'
'Passband Edge : 0.45 '
'3-dB Point : 0.46957 '
'6-dB Point : 0.48314 '
'Stopband Edge : 0.55 '
'Passband Ripple : 0.89042 dB '
'Stopband Atten. : 60.945 dB '
'Transition Width : 0.1 '
' '
'Implementation Cost '
'Number of Multipliers : 43 '
'Number of Adders : 42 '
'Number of States : 42 '
'Multiplications per Input Sample : 43 '
'Additions per Input Sample : 42 '
Примечание: Если вы используете R2016a или более ранний релиз, заменяете каждый вызов объекта с эквивалентным синтаксисом шага. Например, obj(x)
становится step(obj,x)
.
Создайте dsp.CICDecimator
Система object™ с DecimationFactor
установите на 4. Десятикратно уменьшите сигнал от 44,1 кГц до 11,025 кГц.
cicdec = dsp.CICDecimator(4);
cicdec.FixedPointDataType = 'Minimum section word lengths';
cicdec.OutputWordLength = 16;
Создайте фиксированную точку синусоидальный входной сигнал 1 024 выборок с частотой дискретизации 44.1e3 Гц.
Fs = 44.1e3;
n = (0:1023)'; % 0.0232 sec signal
x = fi(sin(2*pi*1e3/Fs*n),true,16,15);
Создайте dsp.SignalSource
объект.
src = dsp.SignalSource(x,64);
Десятикратно уменьшите выход с 16 выборками на систему координат.
y = zeros(16,16); for ii = 1:16 y(ii,:) = cicdec(src()); end
Постройте первую систему координат исходных и подкошенных сигналов. Выходная задержка является 2 выборками.
gainCIC = ... (cicdec.DecimationFactor*cicdec.DifferentialDelay)^cicdec.NumSections; stem(n(1:56)/Fs,double(x(4:59))) hold on; stem(n(1:14)/(Fs/cicdec.DecimationFactor),double(y(1,3:end))/gainCIC,'r','filled') xlabel('Time (sec)') ylabel('Signal Amplitude') legend('Original signal','Decimated signal','Location','north') hold off;
Используя info
метод в 'long'
формат, получите размеры слова и дробные длины разделов фильтра фиксированной точки и фильтра выход.
info(cicdec,'long')
ans = 'Discrete-Time FIR Multirate Filter (real) ----------------------------------------- Filter Structure : Cascaded Integrator-Comb Decimator Decimation Factor : 4 Differential Delay : 1 Number of Sections : 2 Stable : Yes Linear Phase : Yes (Type 1) Implementation Cost Number of Multipliers : 0 Number of Adders : 4 Number of States : 4 Multiplications per Input Sample : 0 Additions per Input Sample : 2.5 Fixed-Point Info Section word lengths : 20 19 19 18 Section fraction lengths : 15 14 14 13 Output word length : 16 Output fraction length : 11 '
Примечание: Если вы используете R2016a или более ранний релиз, заменяете каждый вызов объекта с эквивалентным синтаксисом шага. Например, obj(x)
становится step(obj,x)
.
Создайте dsp.CICInterpolator
Система object™ с InterpolationFactor
установите на 2. Интерполируйте сигнал фактором 2 от 22,05 кГц до 44,1 кГц.
cicint = dsp.CICInterpolator(2);
Создайте фиксированную точку синусоидальный входной сигнал 512 выборок с частотой дискретизации 22,05 кГц.
Fs = 22.05e3;
n = (0:511)'; % 0.0113 sec signal
x = fi(sin(2*pi*1e3/Fs*n),true,16,15);
Создайте dsp.SignalSource
Системный объект.
src = dsp.SignalSource(x,32);
Интерполируйте выход с 64 выборками на систему координат.
y = zeros(16,64); for ii = 1:16 y(ii,:) = cicint(src()); end
Постройте первую систему координат исходных и интерполированных сигналов. Выходная задержка является 2 выборками.
gainCIC = ... (cicint.InterpolationFactor*cicint.DifferentialDelay)... ^cicint.NumSections/cicint.InterpolationFactor; stem(n(1:31)/Fs, double(x(1:31)),'r','filled') hold on; stem(n(1:61)/(Fs*cicint.InterpolationFactor), ... double(y(1,4:end))/gainCIC,'b') xlabel('Time (sec)') ylabel('Signal Amplitude') legend('Original signal','Interpolated signal',... 'location','north') hold off;
Используя info
метод в 'long'
формат, получите размеры слова и дробные длины разделов фильтра фиксированной точки и фильтра выход.
info(cicint,'long')
ans = 'Discrete-Time FIR Multirate Filter (real) ----------------------------------------- Filter Structure : Cascaded Integrator-Comb Interpolator Interpolation Factor : 2 Differential Delay : 1 Number of Sections : 2 Stable : Yes Linear Phase : Yes (Type 1) Implementation Cost Number of Multipliers : 0 Number of Adders : 4 Number of States : 4 Multiplications per Input Sample : 0 Additions per Input Sample : 6 Fixed-Point Info Section word lengths : 17 17 17 17 Section fraction lengths : 15 15 15 15 Output word length : 17 Output fraction length : 15 '
sysobj
— Введите фильтрОдин из следующих типов Системных объектов фильтра:
infoType
— Объем информации, чтобы отобразиться'short'
(значение по умолчанию) | 'long'
Сумма информации о фильтре, которая будет отображена. Когда это свойство установлено в:
'short'
– Функция отображает ту же информацию как info(sysobj)
, который является основной информацией о фильтре.
'long'
– Функция возвращает следующую информацию о фильтре:
Технические требования, такие как структура фильтра и порядок фильтра
Информация о методе разработки и опциях
Измерения производительности для ответа фильтра, такие как сокращение полосы пропускания или затухание в полосе задерживания, включенное в measure
метод
Стоимость реализования фильтра в терминах операций, требуемых применять фильтр к данным, включенным в cost
метод
Когда фильтр использует вычисления с фиксированной точкой, функция возвращает дополнительную информацию о фильтре, включая арифметическую установку и детали о внутренностях фильтра.
Типы данных: char |
string
s
— храните информацию фильтраОтфильтруйте информацию, возвращенную как символьный массив.
Когда infoType
'short'
, функция отображает основную информацию о фильтре. Когда infoType
'long'
, функция отображает следующую информацию:
Технические требования, такие как структура фильтра и порядок фильтра
Информация о методе разработки и опциях
Измерения производительности для ответа фильтра, такие как сокращение полосы пропускания или затухание в полосе задерживания, включенное в measure
метод
Стоимость реализования фильтра в терминах операций, требуемых применять фильтр к данным, включенным в cost
метод
Когда фильтр использует вычисления с фиксированной точкой, функция возвращает дополнительную информацию о фильтре, включая арифметическую установку и детали о внутренностях фильтра.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.