Можно сгенерировать 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