Используя Vivado 2015.1, я пытаюсь использовать иерархическое имя для доступа к объекту в модуле верхнего уровня моего дизайна. Симуляция работает нормально, но я получаю следующую ошибку синтеза:
[Synth 8-660] unable to resolve 'top' ["child.sv":3]
module top()
logic foo;
endmodule
module child()
always(bar) begin
logic top.foo <= bar;
end
endmodule
Любые идеи?
foo
несколько драйверов. По мере того, как дизайн становится более сложным, такое кодирование в конечном итоге становится непригодным для сопровождения. Невозможно узнать, что устанавливает значение foo. - person Morgan   schedule 25.06.2015