Перейти к содержанию
    

генерация ошибки из кода Verilog на этапе синтеза или симуляции при условии

Здравствуйте, коллеги. Посоветуйте, пожалуйста, как в коде Verilog сенерировать ошибку, чтобы она вылезла на этапе синтеза, а также анализа файлов перед симуляцией при определённом условии. Хочу сделать защиту от дурака, сравнить определённые параметры и сделать так, чтобы при таком условии синтез или анализ файлов перед симуляцией не завершились бы успешно. Можно с каким-либо показом нужного сообщения в консоль. Использую Xilinx. ISE, XST для синтеза. Cadence SimVision для симуляции.

Заранее спасибо.

 

Для симуляции реализовал вот так:

// foolish protection :)
initial begin
    if(f_ceillog2(P_N) > FIXED_LAT) begin
        $display("Error! Fixed latency less than hardware achievable!");
        $finish();        
    end
end

Остаётся вопрос на этапе синтеза.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Посмотрите в Language Templates. В Verilog->Synthesis Constructions->System Tasks & Functions. Пример называется $display and $finish (info).

 

Функция $finish останавливает синтез. В примере она вызывается без скобок.

initial begin

$display ("\n\nError: The parameter bus_with in module display_and_finish is set to %d.\n\tThis parameter can not exceed 64.\n", bus_width);

$finish;

end

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, всё проверено. Подтверждаю: $display печатает в консоль ISE (нужно только там найти, сообщений то много), а $finsh позволяет вызывать ошибку синтеза. Код как в моём первом посте.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...