What does "database" do in Quartus?
The database is the internal representation of the project that is used by the compiler.
The quartus_map program reads input files and stores their contents in the database.
After all inputs are read, those components that were actually used are copied into a separate area inside the database that represents the entire project. On this representation, optimizations are performed, like propagation of constant signals and removal of unused outputs.
The quartus_fit program then takes this representation and finds a mapping to the actual hardware. This mapping is then written back into the database.
The quartus_asm program pulls the mapping data from the database and generates the programming files.
Because the format of the database is internal, it can be optimized quite well, which saves a bit of time during compilation.
The incremental_db is an additional database that contains information about file modification dates and where certain logic came from. This is used by the &quot;Quick Recompilation&quot; function to skip processing steps whose input hasn't changed.