Импорт с * на самом деле является лучшей практикой.
Импорт с * делает все содержимое пакета видимым, но не выполняет фактический импорт, пока не будет использован. Импорт функции по имени немедленно импортирует функцию, независимо от того, используется она или нет (это плохая практика).
Пользователям OVM или UVM предписано никогда не определять какие-либо пользовательские классы или макросы, используя префикс «ovm_», поскольку в будущих версиях OVM могут добавляться дополнительные ovm_classes или `ovm_macros, поэтому импорт пакетов OVM с помощью * безопасен.
Если вы должны были импортировать два пакета с * и если оба пакета имели одно и то же имя функции, то если ваш код не использует эту функцию, проблем нет. Если вашему коду действительно требуется эта функция, добавьте к ней префикс pkg2 :: function_name, что опять же является наилучшей практикой.
С уважением - Клифф Каммингс - Verilog & SystemVerilog Guru