Можно сгенерировать HDL-код для поддерживаемой Системы фильтра object™ при помощи приложения Filter Builder, диалогового окна Generate HDL, или путем вызывания функции generatehdl
. Можно также исследовать архитектуру фильтра и сгенерировать стимул испытательного стенда для Системного объекта фильтра при помощи hdlfilterserialinfo
, hdlfilterdainfo
и функций generatetbstimulus
. В любом случаи необходимо задать тип данных с фиксированной точкой для Системного объекта. Инструмент генерации HDL-кода квантует входной сигнал к этому типу данных.
Откройте приложение Filter Builder путем вызывания функции filterBuilder
, затем установите следующие опции.
На вкладке Main выберите Use a System object to implement filter.
На вкладке Data Types, набор Arithmetic к Fixed point
и выбору внутренние типы данных с фиксированной точкой.
На вкладке Code Generation нажмите Generate HDL, чтобы установить опции генерации HDL-кода и сгенерировать код.
Откройте диалоговое окно Generate HDL путем вызывания функции fdhdltool
. При вызывании функции с Системным объектом задайте тип входных данных как объект numerictype
. Создайте этот объект путем вызова numerictype(s,w,f)
, где s
1 для со знаком и 0 для без знака, w
является размером слова в битах, и f
является количеством дробных битов. В следующем примере вызов numerictype(1,8,7)
задает 8-битный номер со знаком с 7 дробными битами.
filt = dsp.BiquadFilter; fdhdltool(filt,numerictype(1,8,7));
При вызывании функции generatehdl
с Системным объектом задайте тип входных данных в качестве аргумента пары Name,Value
с помощью свойства InputDataType
. Задайте значение свойства как объект numerictype
. Например:
filt = dsp.BiquadFilter; generatehdl(filt,'Name','HDLButter', ... 'InputDataType',numerictype(1,8,7));
generatehdl
можно установить дополнительные свойства генерации HDL-кода с помощью аргументов пары Name,Value
. Например:coeffs = fir1(22,0.45); firfilt = dsp.FIRFilter('Numerator',coeffs, ... 'Structure','Direct form antisymmetric'); generatehdl(firfilt,'InputDataType',numerictype(1,16,15), ... 'SerialPartition',[7 4],'CoefficientMemory','DualPortRAMs', ... 'CoefficientSource','ProcessorInterface');
fdhdltool
| filterBuilder
| generatehdl
| numerictype