# VCS编译加速:三步编译和分块编译 验证问题:有不同穿层信号时,模块的partition库能否reuse? 结论:**当穿层信号变化时,受影响的模块不能reuse**。 ## 快速开始 ### 第一次编译 ```bash make all GENLIB=1 ``` ### 第二次编译 ```bash make all GENLIB=0 ``` ## 运行结果 ``` Top Level Modules: testbench TimeScale is 1 ns / 1 ps Note-[PC_SHARED] Reusing shared partition Reusing partition '_vcs_pc_package_' from shared library './partitionlib'. Note-[PC_SHARED] Reusing shared partition Reusing partition 'uvm_pkg' from shared library './partitionlib'. Note-[PC_SHARED] Reusing shared partition Reusing partition 'counter_a' from shared library './partitionlib'. Warning-[PC_NOT_SHARED] Cannot reuse shared partition Cannot reuse partition 'counter_b' from shared library './partitionlib' There are additional signals that are now targets of hierarchical references. Note-[PC_GEN_PARTITION] Generating partition Generating new partition 'counter_b' at './partitionlib_test2/counter_b_ipFRWc'. Warning-[PC_NOT_SHARED] Cannot reuse shared partition Cannot reuse partition 'counter_c' from shared library './partitionlib' There are additional signals that are now targets of hierarchical references. Note-[PC_GEN_PARTITION] Generating partition Generating new partition 'counter_c' at './partitionlib_test2/counter_c_chn5zb'. Note-[PC_SHARED] Reusing shared partition Reusing partition 'top' from shared library './partitionlib'. Warning-[PC_NOT_SHARED] Cannot reuse shared partition Cannot reuse partition 'TB.testbench' from shared library './partitionlib' Modified Design Units : TB.testbench : "./rtl/testbench.sv", 20 Type of targets of hierarchical references in this partition have changed. Note-[PC_RECOMPILE] Recompiling partition Recompiling partition 'TB.testbench' because of following changes. Modified Design Units : TB.testbench : "./rtl/testbench.sv", 20 ``` 检查log可以发现,穿层信号变化涉及到的模块`counter_b、counter_c`都无法reuse。