Объект спецификации фильтров компенсатора CIC
d= fdesign.ciccomp
d= fdesign.ciccomp(d,nsections,rcic)
d= fdesign.ciccomp(...,spec
)
h = fdesign.ciccomp(...,spec,specvalue1,specvalue2,...)
d= fdesign.ciccomp
создает объект d
технических требований компенсатора CIC, применяя значения по умолчанию для свойств Fpass, Fstop, Apass и Astop. В этом синтаксисе фильтр имеет два раздела, и дифференциальная задержка равняется 1.
Используя fdesign.ciccomp
с design
метод создает Систему object™, если 'SystemObject'
флаг установлен в true
.
d= fdesign.ciccomp(d,nsections,rcic)
создает объект технических требований компенсатора CIC с набором задержки дифференциала фильтра к d
, количество разделов в наборе фильтра к nsections
, и уровень CIC изменяет факторный набор в rcic
. Значения по умолчанию этих параметров: дифференциальная задержка равняется 1, количество разделов, равных 2, и фактор изменения уровня CIC, равный 1.
Если фактор изменения уровня CIC равен 1, ответ полосы пропускания фильтра является инверсией sinc, который является приближением к истинному обратному ответу полосы пропускания CIC-фильтра.
Если вы задаете фактор изменения уровня CIC, не равный 1, ответ полосы пропускания фильтра является инверсией Дирихле sinc, который совпадает точно с истинным обратным ответом полосы пропускания CIC-фильтра.
d= fdesign.ciccomp(...,
создает объект технических требований Компенсатора CIC и устанавливает его spec
)Specification
свойство к spec
. Записи в spec
представляйте различные функции ответа фильтра, такие как порядок фильтра, которые управляют созданием фильтра. Действительные доступы для spec
показаны в списке ниже. Записи не являются чувствительными к регистру.
'fp,fst,ap,ast'
(spec
по умолчанию)
'n,fc,ap,ast'
'n,fp,ap,ast'
'n,fp,fst'
'n,fst,ap,ast'
Технические требования фильтра определяются следующим образом:
ap
— сумма пульсации, позволенной в полосе передачи в децибелах (модули по умолчанию). Также названный Apass.
ast
— затухание в полосе задерживания в децибелах (модули по умолчанию). Также названный Astop.
fc
— частота среза для точки точки 6 дБ ниже значения полосы пропускания. Заданный в нормированных единицах частоты.
fp
— частота в конце полосы передачи. Заданный в нормированных единицах частоты. Также названный Fpass.
fst
— частота в начале полосы задерживания. Заданный в нормированных единицах частоты. Также названный Fstop.
n
— порядок фильтра.
В графической форме выглядят так технические требования фильтра:
Области между значениями спецификации как fp
и fst
области перехода, где ответ фильтра явным образом не задан.
Методы создания фильтра, которые применяются к изменению объекта технических требований компенсатора CIC в зависимости от Specification
. Используйте designmethods
определить, какой метод разработки применяется к объекту и его спецификации.
h = fdesign.ciccomp(...,spec,specvalue1,specvalue2,...)
создает объект и устанавливает технические требования в порядке, они заданы в spec
введите, когда вы создадите объект.
Как правило, когда они разрабатывают фильтры, разработчики хотят плоские полосы пропускания и области перехода, которые являются максимально узкими. CIC-фильтры представляют (sinx/x) профиль в полосе пропускания и относительно широких переходах.
Чтобы компенсировать это уменьшаются в полосе пропускания, и пытаться уменьшить ширину области перехода, можно использовать фильтр компенсатора CIC, который демонстрирует (x/sinx) профиль в полосе пропускания. fdesign.ciccomp в частности адаптируется в соответствии с разработкой компенсаторов CIC.
Можно спроектировать компенсатор для CIC-фильтра с помощью дифференциальной задержки, d, количества разделов, numberofsections, и применимой частоты полосы пропускания, Fpass.
Путем взятия количества разделов, полосы пропускания и дифференциальной задержки от CIC-фильтра и использования их в определении компенсатора CIC, получившийся фильтр компенсатора эффективно корректирует для свисания полосы пропускания CIC-фильтра и сужает область перехода.
Как демонстрация этой концепции, этот пример создает CIC decimator и его компенсатор.
fs = 96e3; % Input sampling frequency. fpass = 4e3; % Frequency band of interest. m = 6; % Decimation factor. hcic = design(fdesign.decimator(m,'cic',1,fpass,60,fs),'SystemObject',true); hd = design(fdesign.ciccomp(hcic.DifferentialDelay, ... hcic.NumSections,fpass,4.5e3,.1,60,fs/m),'SystemObject',true); fvtool(hcic,hd,... cascade(hcic,hd),'ShowReference','off','Fs',[96e3 96e3/m 96e3]) legend('CIC Decimator','CIC Compensator','Resulting Cascade Filter');
Вот график CIC-фильтра и компенсатора для того фильтра.