exponenta event banner

maximizestopband

Максимизируйте затухание в полосе задерживания фильтра фиксированной точки

Синтаксис

Hq = maximizestopband(Hd,Wordlength)
Hq = maximizestopband(Hd,Wordlength,'Ntrials',N)

Описание

Hq = maximizestopband(Hd,Wordlength) квантует одноступенчатый или многоступенчатый КИХ-фильтр Hd и возвращается, фиксированная точка фильтруют Hq с wordlength wordlength это максимизирует затухание в полосе задерживания. Hd должен быть сгенерирован с помощью fdesign и design. Для многоступенчатых фильтров, wordlength может или быть скаляр или вектор. Если wordlength скаляр, тот же wordlength используется во всех этапах. Если wordlength вектор, каждый этап использует соответствующий элемент в векторе. Длина вектора должна равняться количеству этапов. maximizestopband использует стохастическую формирующую шум процедуру по умолчанию, чтобы минимизировать wordlength. Чтобы получить повторяемые результаты на последовательных вызовах функции, инициализируйте универсальный генератор случайных чисел rand

Hq = maximizestopband(Hd,Wordlength,'Ntrials',N) задает количество испытаний Монте-Карло, чтобы использовать в максимизации. Hq фильтр фиксированной точки с самым большим затуханием в полосе задерживания среди испытаний. Количество Монте-Карло испытывает N значения по умолчанию к 1.

Необходимо было установить программное обеспечение Fixed-Point Designer™, чтобы использовать эту функцию.

Примеры

свернуть все

Максимизируйте затухание в полосе задерживания для 16-битного фильтра фиксированной точки.

Hf = fdesign.lowpass('Fp,Fst,Ap,Ast',0.4,0.45,0.5,60);
Hd = design(Hf,'equiripple');

Используйте 16 битов, чтобы представлять коэффициенты.

WL = 16; 
Hq = maximizestopband(Hd,WL);

Сравните затухание в полосе задерживания

md = measure(Hd)
md = 
Sample Rate      : N/A (normalized frequency)
Passband Edge    : 0.4                       
3-dB Point       : 0.41178                   
6-dB Point       : 0.41845                   
Stopband Edge    : 0.45                      
Passband Ripple  : 0.49369 dB                
Stopband Atten.  : 60.0697 dB                
Transition Width : 0.05                      
 
mq = measure(Hq)
mq = 
Sample Rate      : N/A (normalized frequency)
Passband Edge    : 0.4                       
3-dB Point       : 0.41178                   
6-dB Point       : 0.41845                   
Stopband Edge    : 0.45                      
Passband Ripple  : 0.49773 dB                
Stopband Atten.  : 59.9728 dB                
Transition Width : 0.05                      
 
hfvt=fvtool(Hd,Hq,'ShowReference','off');
legend(hfvt,'Floating-point Filter','Fixed-point Filter');

Введенный в R2011a