Этот раздел содержит параметры в разделе Clock Settings HDL Code Generation> панель Global Settings диалогового окна Configuration Parameters. Используя эти параметры, можно задать имя сброса, использовать ли синхронный или асинхронный сброс, и утверждается ли сброс возбуждаемый высоким уровнем сигнала или возбуждаемый низким уровнем сигнала.
Задайте, использовать ли асинхронную или синхронную логику сброса при генерации HDL-кода для регистров. Рекомендуется, чтобы вы задали Reset type как Synchronous
, когда вы используете устройство Xilinx® и Asynchronous
, когда вы используете устройство Altera®.
Значение по умолчанию:
Asynchronous
Asynchronous
Используйте асинхронную логику сброса. Эта логика сброса выбирает сброс, независимый от сигнала часов.
Следующий блок процесса, сгенерированный блоком Unit Delay, иллюстрирует использование асинхронного сброса. Когда сигнал сброса утверждается, блок процесса выполняет сброс, не проверяя на событие часов.
Unit_Delay1_process : PROCESS (clk, reset) BEGIN IF reset = '1' THEN Unit_Delay1_out1 <= (OTHERS => '0'); ELSIF clk'event AND clk = '1' THEN IF clk_enable = '1' THEN Unit_Delay1_out1 <= signed(x_in); END IF; END IF; END PROCESS Unit_Delay1_process;
Synchronous
Используйте синхронную логику сброса. Эта логика сброса выбирает сброс относительно сигнала часов.
Следующий блок процесса, сгенерированный блоком Unit Delay, проверяет на событие часов, возрастающее ребро, прежде, чем выполнить сброс:
Unit_Delay1_process : PROCESS (clk) BEGIN IF rising_edge(clk) THEN IF reset = '1' THEN Unit_Delay1_out1 <= (OTHERS => '0'); ELSIF clk_enable = '1' THEN Unit_Delay1_out1 <= signed(x_in); END IF; END IF; END PROCESS Unit_Delay1_process;
Свойство:
ResetType |
Ввод: символьный вектор |
Значение:
'async' | 'sync'
|
Значение по умолчанию:
'async' |
Чтобы установить это свойство, используйте hdlset_param
или makehdl
. Чтобы просмотреть значение свойства, используйте hdlget_param
.
Например, можно задать sync
как ResetType
, когда вы генерируете HDL-код для подсистемы symmetric_fir
в модели sfir_fixed
с помощью любого из этих методов.
Передайте свойство в качестве аргумента к функции makehdl
.
makehdl('sfir_fixed/symmetric_fir', ... 'ResetType','async')
Когда вы используете hdlset_param
, можно установить параметр на модели и затем сгенерировать HDL-код с помощью makehdl
.
hdlset_param('sfir_fixed','ResetType','async') makehdl('sfir_fixed/symmetric_fir')
Задайте, является ли утверждаемый или активный уровень входного сигнала сброса возбуждаемым высоким уровнем сигнала или возбуждаемым низким уровнем сигнала.
Значение по умолчанию:
Active-high
Active-high
Укажите, что утверждаемый уровень входного сигнала сброса является возбуждаемым высоким уровнем сигнала. Например, следующий фрагмент кода проверяет, активен ли 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
низко прежде, чем заполнить регистр delay_pipeline
:
Delay_Pipeline_Process : PROCESS (clk, reset) BEGIN IF reset = '0' THEN delay_pipeline(0 TO 50) <= (OTHERS => (OTHERS => '0')); . . .
Если вы вводите логическое высокое значение к Reset input port, чтобы сбросить регистры в вашем проекте, установите Reset asserted level на Active-high
. если вы вводите логическую низкую стоимость к Reset input port, чтобы сбросить регистры в вашем проекте, установите Reset asserted level на Active-low
.
Свойство:
ResetAssertedLevel |
Ввод: символьный вектор |
Значение:
'active-high' | 'active-low'
|
Значение по умолчанию:
'active-high' |
Чтобы установить это свойство, используйте hdlset_param
или makehdl
. Чтобы просмотреть значение свойства, используйте hdlget_param
.
Например, можно задать это свойство при генерации HDL-кода для подсистемы symmetric_fir
в модели sfir_fixed
с помощью любого из этих методов.
Используйте hdlset_param
, чтобы установить параметр на модели. Затем сгенерируйте HDL-код с помощью makehdl
.
hdlset_param('sfir_fixed','ResetAssertedLevel','active-high') makehdl('sfir_fixed/symmetric_fir')
Передайте свойство в качестве аргумента к функции makehdl
.
makehdl('sfir_fixed/symmetric_fir','ResetAssertedLevel','active-high')
Введите имя для входного порта сброса в сгенерированном HDL-коде.
Значение по умолчанию:
reset
Введите вектор символов для имени входного порта сброса в сгенерированном HDL-коде.
Например, если вы заменяете значение по умолчанию с 'chip_reset'
для генерирующейся системы myfilter
, сгенерированное объявление сущности может выглядеть можно следующим образом:
ENTITY myfilter IS PORT( clk : IN std_logic; clk_enable : IN std_logic; chip_reset : IN std_logic; myfilter_in : IN std_logic_vector (15 DOWNTO 0); myfilter_out : OUT std_logic_vector (15 DOWNTO 0); ); END myfilter;
Если вы задаете VHDL® или зарезервированное слово Verilog®, генератор кода добавляет строку постфикса зарезервированного слова, чтобы сформировать допустимый идентификатор VHDL или Verilog. Например, если бы вы задаете зарезервированное слово signal
, получившейся строкой имени был бы signal_rsvd
.
Если вы задаете возбуждаемый высоким уровнем сигнала для Reset asserted level, входной сигнал сброса утверждается возбуждаемый высоким уровнем сигнала. Чтобы сбросить регистры в сущности, входное значение к Reset input port должно быть высоким. Если вы задаете возбуждаемый низким уровнем сигнала для Reset asserted level, входной сигнал сброса утверждается возбуждаемый низким уровнем сигнала. Чтобы сбросить регистры в сущности, входное значение к Reset input port должно быть низким.
Свойство:
ResetInputPort |
Ввод: символьный вектор |
Значение: допустимый идентификатор на выходном языке |
Значение по умолчанию:
'reset' |
Чтобы установить это свойство, используйте hdlset_param
или makehdl
. Чтобы просмотреть значение свойства, используйте hdlget_param
.
Например, можно задать sync
как ResetType
, когда вы генерируете HDL-код для подсистемы symmetric_fir
в модели sfir_fixed
с помощью любого из этих методов.
Передайте свойство в качестве аргумента к функции makehdl
.
makehdl('sfir_fixed/symmetric_fir', ... 'ResetInputPort','rstx')
Когда вы используете hdlset_param
, можно установить параметр на модели и затем сгенерировать HDL-код с помощью makehdl
.
hdlset_param('sfir_fixed','ResetInputPort','rstx') makehdl('sfir_fixed/symmetric_fir')