Jump to content
    

Мне надо увеличить CIC фильтр до 512 и соответственно меняю в трех каскадах значения (CIC фильтр, Compensation FIR filter, FIR lowpass).

 

Вопрос по разрядности (fixed point) CIC фильтра:

Я задал:

R1 = 512; % Decimation factor

Nsecs1 = 6; % Number of sections

IWL1 = 16; % Input word length

 

Оставил по умолчанию:

D1 = 1; % Differential delay

IFL1 = 18; % Input fraction length

OWL1 = 20; % Output word length

 

Разрядность коеффициентов 16 бит.

 

Как посчитать другие разрядности для каждого каскада фильтра?

 

Без fixed point моделирование нормальное - просто хочу получить файлы для ПЛИС с оптимальной разрядностью из-за этого нужен fixed point.

 

Share this post


Link to post
Share on other sites

Hogenauer, E. B., "An Economical Class of Digital Filters for Decimation and Interpolation," IEEE Transactions on Acoustics, Speech, and Signal Processing, ASSP-29(2): pp. 155-162, 1981

 

Здесь ее точно выкладывали

 

или в командной строке Matlab

>> doc mfilt.cicdecim

 

ну и не вполне понятно, как в ваших исходных данных может быть такое:

 

IWL1 = 16; % Input word length - я задал FR>> это полная разрядность входного слова

IFL1 = 18; % Input fraction length FR>> это разряднойсть дробной части. она не может быть больше разрядности слова

Share this post


Link to post
Share on other sites

Hogenauer, E. B., "An Economical Class of Digital Filters for Decimation and Interpolation," IEEE Transactions on Acoustics, Speech, and Signal Processing, ASSP-29(2): pp. 155-162, 1981

 

Здесь ее точно выкладывали

 

или в командной строке Matlab

>> doc mfilt.cicdecim

 

ну и не вполне понятно, как в ваших исходных данных может быть такое:

 

IWL1 = 16; % Input word length - я задал FR>> это полная разрядность входного слова

IFL1 = 18; % Input fraction length FR>> это разряднойсть дробной части. она не может быть больше разрядности слова

за статью и пояснение спасибо - читаю...

Share this post


Link to post
Share on other sites

помогите разобраться пожалуйста

 

как сделать хотя бы FullPrecision - без ограничений?

Share this post


Link to post
Share on other sites

>>fdatool

 

слева вкладки Create a multirate filter и Quantization

вот в них играете до понимания

 

full precision:

mfilt.cicdecim(R,D,Nsecs,IWL);

 

Дальше вы уже самостоятельно. Информации по этим фильтрам более чем достаточно.

Share this post


Link to post
Share on other sites

ну и не вполне понятно, как в ваших исходных данных может быть такое:

 

IWL1 = 16; % Input word length - я задал FR>> это полная разрядность входного слова

IFL1 = 18; % Input fraction length FR>> это разряднойсть дробной части. она не может быть больше разрядности слова

Вообще, Матлаб позволяет задавать длину дробной части больше общей длины слова, при этом изменяя входной диапазон числа.

То есть разрядность (16,15) соответствует диапазону (1, - 1];

(16,16) - диапазону (0.5, -0.5]

и т.д.

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...