Чтобы открыть начальное диалоговое окно Generate HDL от Filter Designer, сделайте следующее:
Введите команду filterDesigner
в командной строке MATLAB®. Filter Designer отображает свое начальное диалоговое окно.
Если проект фильтра квантуется, пропуск к шагу 3. В противном случае квантуйте фильтр путем нажатия кнопки Set Quantization Parameters. Меню Filter arithmetic появляется в нижней половине диалогового окна.
Поддерживаемые структуры фильтра позволяют и фиксированную точку и (двойную) реализацию с плавающей точкой.
При желании настройте установку опции Filter arithmetic. Filter Designer отображает первую из трех панелей с вкладками его диалогового окна.
Выберите Targets> Generate HDL. Filter Designer отображает диалоговое окно Generate HDL.
Если кодер не поддерживает структуру текущего фильтра в Filter Designer, сообщение об ошибке появляется.
Если вы не знакомы с пользовательским интерфейсом Filter Builder, см. документацию DSP System Toolbox™.
Чтобы открыть начальное диалоговое окно Generate HDL от Filter Builder, сделайте следующее:
В подсказке команды MATLAB введите команду filterBuilder
, которая соответствует ответу фильтра или объекту фильтра, который вы хотите разработать.
Следующие данные показывают настройки по умолчанию основной панели диалогового окна Filter Builder Lowpass Design.
Установите параметры проекта фильтра как требуется.
Опционально, выберите флажок Use a System object to implement filter.
Кликните по вкладке Data Types. Установите Arithmetic на Fixed point
и выберите типы данных для внутренних вычислений.
Кликните по вкладке Code Generation.
В панели Code Generation нажмите кнопку Generate HDL. Эта кнопка открывает диалоговое окно Generate HDL, передающее в текущем объекте фильтра от Filter Builder.
Установите желаемую генерацию кода и опции испытательного стенда и сгенерируйте код в диалоговом окне Generate HDL.
fdhdltool
Можно использовать команду fdhdltool
, чтобы открыть диалоговое окно Generate HDL непосредственно из командной строки MATLAB. Синтаксис:
fdhdltool(Hd)
где Hd
является типом объекта фильтра, который поддерживается для генерации HDL-кода. Если фильтром является Система object™, необходимо задать тип входных данных.
fdhdltool(FIRLowpass,numerictype(1,16,15))
Функция fdhdltool
особенно полезна, когда необходимо использовать пользовательский интерфейс Filter Design HDL Coder™, чтобы сгенерировать HDL-код для структур фильтра, которые не поддержаны Filter Designer или Filter Builder. Например, следующие команды создают Фэрроу дробный объект фильтра задержки farrowfilt
, который передается в функции fdhdltool
:
farrowfilt = dsp.VariableFractionalDelay('InterpolationMethod','Farrow'); inputDataType = numerictype(1,18,17); fdDataType = numerictype(1,8,7); fdhdltool(farrowfilt,inputDataType,fdDataType);
fdhdltool
работает с копией объекта фильтра, а не исходным объектом в рабочем пространстве MATLAB. Изменения, внесенные в исходный объект фильтра после вызова fdhdltool
, не применяются к копии и не обновляют диалоговое окно Generate HDL.
Именем скопированного объекта фильтра по умолчанию является dobj_copy
. Это отражается в поле Name фильтра. Аналогично, именем файла испытательного стенда является dobj_tb_copy
. Это отражается в поле File name на панели Test Bench. Обновите эти значения по умолчанию к пользовательским именам при необходимости.