We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 59980

Vivado Synthesis - When moving from 2013.4 to 2014.1 the meesage is received "Vivado no longer uses 'work' as the default library. Your files have been moved to a new default library 'xil_defaultlib'"


In previous versions all VHDL RTL files were placed into a library called "work".  

The problem with this is that work in VHDL LRM has a separate meaning and using "work" as a library is not correct.  

"work" in the VHDL LRM actually means current library, so when a VHDL file has the statement

library work;
use work.all;

It means to use everything in the current library (the library that the file in question is compiled into). 

By placing everything into a library called "work" there was the potential for simulation mismatches when the simulator would use components and functions from the current working library, but which could also exist in a library called "work".

By switching to a different library, Vivado will now avoid those situations.

It is still legal to use "work" as a library but not recommended.  

If work is used with library and use statements, Vivado will now look into the current library for what it needs, but in order to keep backwards compatibility, it will also look for physical libraries called "work" if it does not find what it needs in the current library.


In most cases there should be no issues with the switch.

However in cases where this is not desirable, the library can be set back to work by selecting "Project Settings -> Default Library".
AR# 59980
Date 04/16/2014
Status Active
Type Known Issues
  • Vivado Design Suite - 2014.1
Page Bookmarked