Для портов HDL фильтра по умолчанию используются следующие имена:
| Порт HDL | Имя порта по умолчанию |
|---|---|
| Входной порт | filter_in |
| Выходной порт | filter_out |
| Тактовый порт | clk |
| Порт включения тактового синхросигнала | clk_enable |
| Сброс порта | reset |
| Порт дробной задержки (только фильтры Farrow) | filter_fd |
Например, объявление VHDL по умолчанию для объекта filt выглядит следующим образом.
ENTITY filt IS
PORT( clk : IN std_logic;
clk_enable : IN std_logic;
reset : IN std_logic;
filter_in : IN std_logic_vector (15 DOWNTO 0); -- sfix16_En15
filter_out : OUT std_logic_vector (15 DOWNTO 0); -- sfix16_En15
);
END filt;Чтобы изменить имена портов,
Выберите вкладку Глобальные настройки (Global Settings) в диалоговом окне Создать ЛПВП (Generate HDL).
Выберите вкладку Порты на панели Дополнительные настройки. На следующем рисунке показаны поля имени порта для входного порта, выходного порта, входного порта тактового генератора, входного порта сброса и выходного порта включения тактового генератора.

Введите новые векторы символов в поля имени порта.
Альтернатива командной строки: generatehdl функция со свойствами InputPort, OutputPort, ClockInputPort, ClockEnableInputPort, и ResetInputPort для изменения имен портов фильтра в сгенерированном коде HDL.
По умолчанию порты входных и выходных данных фильтра имеют тип данных std_logic_vector в VHDL и тип wire в Verilog. При создании кода VHDL можно также указать signed/unsignedи для портов выходных данных, Same as input data type. Кодер применяет тип SIGNED или UNSIGNED на основе типа данных, указанного в конструкции фильтра.
Изменение параметров типа данных VHDL для портов ввода и вывода данных
Выберите вкладку Глобальные настройки (Global Settings) в диалоговом окне Создать ЛПВП (Generate HDL).
Выберите вкладку Порты на панели Дополнительные настройки.
Выберите тип данных в меню Тип входных данных или Тип выходных данных, указанных на следующем рисунке.
По умолчанию тип выходных данных совпадает с типом входных данных.
Тип портов Verilog: wire, и не может быть изменено.

Примечание
Настройка типа входных данных не применяется к вводу с двойной точностью, который создается как тип REAL для VHDL и wire[63:0] для Verilog.
Альтернатива командной строки: generatehdl функция со свойствами InputType и OutputType для изменения типа данных VHDL для портов ввода и вывода.
По умолчанию сгенерированный код HDL для регистров использует асинхронную логику сброса. Выберите асинхронную или синхронную логику сброса в зависимости от типа проектируемого устройства (например, FPGA или ASIC) и предпочтений.
Следующий фрагмент кода иллюстрирует использование асинхронных сбросов. Блок процесса не проверяет наличие активного синхросигнала перед выполнением сброса.
delay_pipeline_process : PROCESS (clk, reset)
BEGIN
IF reset = '1' THEN
delay_pipeline (0 To 50) <= (OTHERS => (OTHERS => '0'));
ELSIF clk'event AND clk = '1' THEN
IF clk_enable = '1' THEN
delay_pipeline(0) <= signed(filter_in);
delay_pipeline(1 TO 50) <= delay_pipeline(0 TO 49);
END IF;
END IF;
END PROCESS delay_pipeline_process;
Чтобы изменить тип сброса на синхронный, выберите Synchronous в меню Тип сброса (Reset type) на панели Глобальные настройки (Global settings) диалогового окна Генерировать ЛПВП (Generate HDL).

Ниже приведен код для синхронного сброса. Этот блок процесса перед выполнением сброса проверяет событие синхронизации, передний фронт.
delay_pipeline_process : PROCESS (clk, reset)
BEGIN
IF rising_edge(clk) THEN
IF reset = '1' THEN
delay_pipeline (0 To 50) <= (OTHERS => (OTHERS => '0'));
ELSIF clk_enable = '1' THEN
delay_pipeline(0) <= signed(filter_in);
delay_pipeline(1 TO 50) <= delay_pipeline(0 TO 49);
END IF;
END IF;
END PROCESS delay_pipeline_process;Альтернатива командной строки: generatehdl функция со свойством ResetType для установки стиля сброса для регистров в сгенерированном коде HDL.
Установленный уровень для входного сигнала сброса определяет, должен ли этот сигнал приводиться в активное высокое значение (1) или активное низкое значение (0) для регистров, подлежащих сбросу в конструкции фильтра. По умолчанию кодер устанавливает установленный уровень как активный высокий. Например, следующий фрагмент кода проверяет, reset активен до заполнения delay_pipeline зарегистрироваться:
Delay_Pipeline_Process : PROCESS (clk, reset)
BEGIN
IF reset = '1' THEN
delay_pipeline(0 TO 50) <= (OTHERS => (OTHERS => '0'));
.
.
.
Чтобы изменить параметр на активный низкий, выберите Active-low в меню Reset asserted level на панели Global settings диалогового окна Generate HDL.

С этим изменением, IF оператор в предыдущем сгенерированном коде изменяет
IF reset = '0' THEN
Примечание
Параметр Reset asserted level также определяет уровень сброса для входных сигналов сброса испытательного стенда.
Альтернатива командной строки: generatehdl функция со свойством ResetAssertedLevel установка заданного уровня для входного сигнала сброса.
Для некоторых приложений FPGA желательно избегать генерации сбросов. Опция Удалить сброс из (Remove reset from) на панели Глобальные настройки (Global settings) диалогового окна Создать ЛПВП (Generate HDL) позволяет подавить генерацию сбросов из регистров смены.
Для подавления формирования сбросов из регистров смены выберите Shift register в раскрывающемся меню Remove reset на панели Global settings диалогового окна Generate HDL.

Если не требуется подавлять генерацию сбросов из регистров смены, оставьте значение Remove reset from set равным значению по умолчанию, которое равно None.
Альтернатива командной строки: generatehdl функция со свойством RemoveResetFrom подавление формирования сбросов из регистров сдвига.