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