Поскольку вы не указали достаточный код, чтобы кто-либо мог воспроизвести вашу проблему, и при этом вы не раскрыли никаких подробностей, касающихся вашей проблемы, все, что мы можем сделать, - это угадать.
Я предполагаю, что nc1_cp_checkpoint
объявлено как reg
внутри вашего cca3_cpu
экземпляра. Вы не можете присвоить значение reg
, используя непрерывное назначение. Попробуйте использовать процедурное назначение (внутри блока initial
или always
), например:
initial begin
cca.cpu0.cca3_cpu.nc1_cp_checkpoint = checkpoint;
end
Если это не решит вашу проблему:
- Показать больше актуально код
- Разработка "не работает". Покажите ваше сообщение об ошибке, если есть.
Обновление: другая потенциальная проблема возникает, если nc1_cp_checkpoint
- это непрерывно управляемый wire
внутри вашего cca3_cpu
экземпляра. В этом случае ваш второй assign
может вызвать конфликт, что сделает значение неизвестным (x
). Вы можете избежать этой проблемы, используя force
и release
.