Можно следовать этим инструкциям, как рекомендуется моделирование методов, таких как проверка, что тот блок выходные параметры отключен и как можно прокомментировать блоки для генерации HDL-кода.
Каждая инструкция имеет уровень серьезности, который указывает на уровень требований соответствия. Чтобы узнать больше, смотрите Уровни серьезности Руководств по моделированию HDL.
ID инструкции
1.1.9
Серьезность
Обязательный
Описание
Если вы генерируете HDL-код для Подсистемы, которая имеет несвязанные выходные порты, HDL Coder™ генерирует ошибку. Для выходных блоков, которые не соединяются с нисходящей логикой, соедините их с блоком Terminator.
Эта модель иллюстрирует Подсистему DUT0
, которая имеет несвязанный выходной порт Out2
.
open_system('hdlcoder_terminateout')
Если вы генерируете HDL-код для этой Подсистемы, HDL Coder™ генерирует эту ошибку:
error in validation model generation: Failed to find source for outport 2 on 'DUT0' Please create a fully connected subsystem when generating the cosimulation model
.
close_system('hdlcoder_terminateout')
Можно использовать функцию addterms
, чтобы добавить блоки Терминатора в неподключенные порты в модели.
load_system('hdlcoder_terminateout') addterms('hdlcoder_terminateout') open_system('hdlcoder_terminateout')
ID инструкции
1.1.10
Серьезность
Обязательный
Описание
HDL Coder™ не поддерживает генерацию кода для блока или блоков, которые вы комментируете через.
Эта модель иллюстрирует две Подсистемы DUT_CommentOut
и Dut_CommentThrough
.
open_system('hdlcoder_comment_through_out')
Подсистема Dut_CommentThrough
содержит Подсистему, которая прокомментирована через. HDL Coder™ генерирует ошибку для этой Подсистемы при генерации кода. Кроме того, генератор кода не поддерживает комментарий через для входа DUT в испытательном стенде.
open_system('hdlcoder_comment_through_out/DUT_CommentThrough/Generated')
Генератор кода поддерживает блоки, которые комментируются, когда выходные сигналы не использованы. Сгенерированный код присваивает постоянное значение 0
к сигналу при выводе. Подсистема Dut_CommentOut
содержит две подсистемы, которые комментируются.
open_system('hdlcoder_comment_through_out/DUT_CommentOut')
Когда вы генерируете код для Dut_CommentOut
, HDL Coder игнорирует эти подсистемы. Подсистема Generated
имеет блоки, которые комментируются, и выводит нулевое значение.
Вы видите этот код VHDL, сгенерированный для этой Подсистемы, которая указывает на постоянное нулевое значение, присвоенное Out1
.
LIBRARY IEEE; USE IEEE.std_logic_1164.ALL; USE IEEE.numeric_std.ALL; ENTITY Generated IS PORT( Out1 : OUT std_logic_vector(15 DOWNTO 0) -- sfix16_En6 ); END Generated; ARCHITECTURE rtl OF Generated IS -- Signals SIGNAL TmpGroundAtData_Type_DuplicateInport1_out1 : signed(15 DOWNTO 0); -- sfix16_En6 BEGIN -- Unsupported Block TmpGroundAtData_Type_DuplicateInport1_out1 <= to_signed(16#0000#, 16); Out1 <= std_logic_vector(TmpGroundAtData_Type_DuplicateInport1_out1); END rtl;