AR# 2122: VERILOG-XL: Error! Instance specific item not found in `uselib path. Directory : <path_to_library>
VERILOG-XL: Error! Instance specific item not found in `uselib path. Directory : <path_to_library>
Keywords: Verilog-XL, Verilog
Verilog-XL may issue the following error when reading in a Verilog simulation netlist:
Error! Instance specific item not found in `uselib path. Directory : <path_to_library) Error! Module or primitive (XXXX) not defined [Verilog-MOPND]
This error usually means that your uselib statements have been specified incorrectly. Either:
1. The libraries you have specified do not exist (check that you have specified the paths correctly)
2. The specified component does not exist in that library
3. There are multiple `uselib statements, and the `uselib statement that referenced the required library may have been overridden by a subsequent one (the last `uselib read in by the simulator always overrrides all earlier ones).
A common situation which requires multiple `uselib is a design done in Cadence Concept that includes LogiBLOX modules. In this case, `uselib directives are required for both the Verilog Unified Libraries for the Concept library components (usually located in $XILINX/cadence/data/verilogxxxx), as well the Xilinx Verilog SIMPRIM libraries ($XILINX/verilog/data) for the LogiBLOX modules.
The problem can be resolved in this case by processing the design up to NGDBUILD, then running NGD2VER on the .NGD file with the -tf and -ul options and using the resulting .tv file as the testbench template solves the problem.
Check the Verilog file for UNIX compatibility. A Verilog file imported from a DOS environment will designate a new line by a line-feed and a carriage return. In a UNIX evironment, a new line is designated by only a line feed. For example, this file was imported from a DOS environment: