Как отследить неинициализированный сигнал в Chisel?

У нас сложная конструкция, и мы иногда забываем инициализировать сигнал. Зубило присваивает случайное значение. Но это затрудняет обратную трассировку от точки, в которой обнаружена ошибка, до источника. Есть предупреждения о неинициализированных сигналах, но это бесполезно по той причине, что есть много сигналов, которые мы намеренно оставляем неинициализированными, потому что они не распространяются. Только в очень немногих случаях, например, для "действительных" сигналов, неинициализированный сигнал распространяется и вызывает проблемы. Идеальным было бы то, что делает verilog, для которого установлено значение «x», что позволяет легко проследить его в обратном направлении. Есть ли относительно безболезненный способ найти такие случаи с неинициализированными сигналами, вызывающими проблемы?


person seanhalle    schedule 08.01.2017    source источник


Ответы (1)


В Chisel 3 мы в настоящее время находимся в процессе добавления безопасности для неподключенных сигналов: https://github.com/ucb-bar/chisel3/issues/413. Я не уверен, каков будет результат, но наша цель - предотвратить именно те проблемы, которые здесь упомянуты.

person Jack Koenig    schedule 09.01.2017
comment
Жду обновления. Спасибо, что сообщили мне, что над этим работают. - person seanhalle; 25.01.2017