TGViewer
Записки CPU designer'a Записки CPU designer'a @cpu_design · 3.56K subscribers
Post #416 1.89K
--x-initial-edge в Verilator: зачем он нужен

В Verilator есть флаг --x-initial-edge. Он решает давнюю проблему разницы в поведении между Verilator и big3 симуляторами (VCS, Questa, Xcelium).

В чём суть проблемы?
В стандарте IEEE 1800 SystemVerilog (см. Table 6-7 default values) в момент времени T = 0 4-state переменные имеют значение 'X'. Согласно стандарту system verilog переход из 'X' в '0' расценивается как negedge, а из 'X' в '1' - как posedge (см. Table 9-2).
В Verilator по умолчанию начальное значение сигналов для такой edge-детекции считается равным 0. Из-за этого установка сигнала в 0 в момент T=0 выглядит как 0 -> 0 и не генерирует negedge.

Почему это критично?
Это казалось бы незначительное отличие особенно заметно при отладке схем с Clock Gate контроллерами. Если clock подмодуля во время reset загейчен (clock отсутсвует), асинхронный reset может быть единственным событием, которое переводит внутреннее состояние блока в reset state.
Но код на скриншоте в Verilator не срабатывал, поскольку Verilator по умолчанию не моделировал начальный переход X -> 0 как negedge.

Без использования этого флага момент можно было обкостылить. Например, чтобы заставить пример на скриншоте работать корректно, можно было искусственно сформировать дополнительный переход сигнала сброса:

1) 0 (T0) -> 1 -> 0 // создаём настоящий negedge
2) 0 -> 1 // снимаем reset

Теперь такие костыли городить не нужно, подробности:

https://veripool.org/guide/latest/exe_verilator.html#cmdoption-x-initial-edge
  • ✍ 9
  • 👍 7
  • 🔥 1
More from @cpu_design
  1. Sep 27, 2026RTL/Verif/PhysDesign-инженеры, теперь наша пора радоваться (либо трястись, что нас всех ск…
  2. Sep 14, 2026How OpenAI Used Its Own LLMs to Design Its Jalapeño Chip https://spectrum.ieee.org/llms-fo…
  3. Sep 14, 2026Люблю технологии ASUS driver - https://github.com/torvalds/linux/blob/master/drivers/hid/h…
  4. Sep 13, 2026Вышел новый формат от Истового Инженера - «Разгоны», где инженеры разных специальностей об…
  5. Sep 12, 2026Jane Street запустили новый ASIC Challenge - на этот раз предлагают спроектировать настоящ…
  6. Sep 11, 2026AI EDAs: Is It Real? В последнее время на канале мы всё чаще обсуждаем, как AI меняет инду…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →