fdesign.ciccomp

Объект спецификации фильтров компенсатора 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(...,spec) создает объект спецификаций Компенсатора CIC и устанавливает его 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

Как правило, когда они разрабатывают фильтры, разработчики хотят плоские полосы пропускания и области перехода, которые являются максимально узкими. 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-фильтра и компенсатора для того фильтра.

Примеры

свернуть все

Спроектированный, чтобы компенсировать спад, свойственный от CIC-фильтров, компенсаторы CIC могут улучшать производительность вашего проекта CIC. Этот пример проектирует компенсатор d с пятью разделами и дифференциальной задержкой, равной одной. График, отображенный после кода, показывает увеличивающееся усиление в полосе пропускания, которая является характеристической для компенсаторов CIC, чтобы преодолеть свисание в полосе пропускания CIC-фильтра. Идеально, расположение каскадом компенсатора CIC с CIC-фильтром приводит к фильтру lowpass с плоским ответом полосы пропускания и узкой областью перехода.

h = fdesign.ciccomp;
set(h, 'NumberOfSections', 5, 'DifferentialDelay', 1);
cicComp = design(h,'equiripple','SystemObject',true);
fvtool(cicComp)

Этот компенсатор работал бы на decimator или интерполятор, который имел дифференциальную задержку 1 и 5 разделов.

Смотрите также

|

Введенный в R2011a