exponenta event banner

Создание кода HDL для фильтрации системных объектов

Можно создать код HDL для поддерживаемого фильтра System object™ с помощью приложения Filter Builder, диалогового окна «Создать HDL» или путем вызова generatehdl функция. Можно также изучить архитектуры фильтров и создать стимул тестового стенда для объекта системы фильтров с помощью hdlfilterserialinfo, hdlfilterdainfo, и generatetbstimulus функции. В любом случае необходимо указать тип данных с фиксированной точкой для объекта System. Средство формирования кода ЛПВП квантует входной сигнал в этот тип данных.

Использование построителя фильтров

Откройте приложение «Построитель фильтров», вызвав filterBuilder , затем задайте следующие опции.

  • На вкладке Главная выберите Использовать системный объект для реализации фильтра.

  • На вкладке «Типы данных» задайте для параметра «Арифметика» значение Fixed point и выберите внутренние типы данных с фиксированной точкой.

  • На вкладке Создание кода (Code Generation) щелкните Создать HDL (Generate HDL), чтобы задать параметры создания кода HDL и создать код.

Диалоговое окно «Создание ЛПВП»

Откройте диалоговое окно Generate HDL, вызвав fdhdltool функция. При вызове функции с объектом System укажите тип входных данных как 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));
При открытии диалогового окна можно задать параметры генерации кода HDL и создать код для объекта System.

В командной строке

При вызове generatehdl с объектом System, укажите тип входных данных как 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');

См. также

| | |

Связанные темы