mirror of
https://github.com/The-OpenROAD-Project/OpenLane.git
synced 2026-05-29 00:23:55 +08:00
Fix missing values in final metrics generated (#2131)
~ Fixed generation for the following metrics: ~ Power values ~ `critical_path_report` ~ some wns and tns values ~ klayout drc - Remove CVC Metrics
This commit is contained in:
4
.gitignore
vendored
4
.gitignore
vendored
@@ -45,4 +45,6 @@ pdks/
|
||||
/install
|
||||
|
||||
# Venv
|
||||
/venv
|
||||
/venv
|
||||
|
||||
sandbox
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
design,design_name,config,flow_status,total_runtime,routed_runtime,DIEAREA_mm^2,CellPer_mm^2,OpenDP_Util,Final_Util,Peak_Memory_Usage_MB,synth_cell_count,tritonRoute_violations,Short_violations,MetSpc_violations,OffGrid_violations,MinHole_violations,Other_violations,Magic_violations,pin_antenna_violations,net_antenna_violations,lvs_total_errors,cvc_total_errors,klayout_violations,wire_length,vias,wns,pl_wns,optimized_wns,fastroute_wns,spef_wns,tns,pl_tns,optimized_tns,fastroute_tns,spef_tns,HPWL,routing_layer1_pct,routing_layer2_pct,routing_layer3_pct,routing_layer4_pct,routing_layer5_pct,routing_layer6_pct,wires_count,wire_bits,public_wires_count,public_wire_bits,memories_count,memory_bits,processes_count,cells_pre_abc,AND,DFF,NAND,NOR,OR,XOR,XNOR,MUX,inputs,outputs,level,DecapCells,WelltapCells,DiodeCells,FillCells,NonPhysCells,TotalCells,CoreArea_um^2,power_slowest_internal_uW,power_slowest_switching_uW,power_slowest_leakage_uW,power_typical_internal_uW,power_typical_switching_uW,power_typical_leakage_uW,power_fastest_internal_uW,power_fastest_switching_uW,power_fastest_leakage_uW,critical_path_ns,CLOCK_PERIOD,FP_ASPECT_RATIO,FP_CORE_UTIL,FP_PDN_HPITCH,FP_PDN_VPITCH,GRT_ADJUSTMENT,GRT_REPAIR_ANTENNAS,PL_TARGET_DENSITY,RUN_HEURISTIC_DIODE_INSERTION,STD_CELL_LIBRARY,MAX_FANOUT_CONSTRAINT,SYNTH_STRATEGY
|
||||
./designs/ci/APU,APU,run_config,flow completed,0h4m26s0ms,0h3m1s0ms,0.0983350472999999,34484.144698225005,36.06,36.0,792.03,3253,0,0,0,0,0,0,0,3,3,0,-1,-1,140372,25964,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,106197908.0,0.0,42.45,43.9,6.23,12.61,0.0,2847,3426,183,703,0,0,0,3120,89,40,102,150,274,250,56,1024,432,424,23,5671,1221,33,2252,3391,12568,88101.99680000001,-1,-1,-1,-1,-1,-1,-1,-1,-1,4.76,17.0,1,35,153.18,153.6,0.3,1,0.4,0,sky130_fd_sc_hd,6,AREA 0
|
||||
./designs/ci/PPU,PPU,run_config,flow completed,0h13m54s0ms,0h6m31s0ms,0.733195271625,18162.9649226804,20.49,25.0,2077.11,12649,0,0,0,0,0,0,0,72,65,0,-1,-1,914385,99369,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,640716798.0,0.0,36.57,38.6,7.09,12.5,0.17,5308,8922,576,4178,0,0,0,7674,52,8,53,75,466,113,21,3014,2918,2927,21,43486,10075,708,14399,13317,81985,703299.52,-1,-1,-1,-1,-1,-1,-1,-1,-1,9.05,18.0,1,20,153.18,153.6,0.3,1,0.25,0,sky130_fd_sc_hd,8,AREA 0
|
||||
./designs/ci/aes,aes,run_config,flow completed,0h31m18s0ms,0h16m12s0ms,1.5614589344249998,13835.778529747611,15.32,19.0,3995.48,20122,0,0,0,0,0,0,0,75,70,0,-1,-1,1906160,185725,-26.68,-45.4,-1,0.0,0.0,-77174.7,-129120.43,-1,0.0,0.0,1421600626.0,0.0,34.34,35.77,9.34,16.27,0.15,21918,39764,1376,19222,0,0,0,24130,219,143,88,346,8958,2179,691,1414,3037,3024,24,98615,21612,1617,28611,21604,172059,1519006.8479999998,-1,-1,-1,-1,-1,-1,-1,-1,-1,2.91,25.0,1,15,153.18,153.6,0.3,1,0.25,0,sky130_fd_sc_hd,8,AREA 0
|
||||
./designs/ci/aes_core,aes_core,run_config,flow completed,0h38m54s0ms,0h17m41s0ms,0.8670581510250001,24200.22229788714,25.56,36.0,3197.34,19301,0,0,0,0,0,0,0,10,10,0,-1,-1,1995431,218062,-20.25,-33.48,-1,0.0,0.0,-47470.02,-78096.02,-1,0.0,0.0,1553775824.0,0.0,54.68,59.5,32.22,50.36,2.92,21779,38579,1339,18139,0,0,0,23475,303,11,176,343,8963,2035,834,1198,2865,2604,25,50614,11830,22472,31654,20983,137553,835761.5616,-1,-1,-1,-1,-1,-1,-1,-1,-1,2.9899999999999998,22.0,1,25,153.18,153.6,0.3,1,0.3,1,sky130_fd_sc_hd,6,AREA 0
|
||||
./designs/ci/aes_user_project_wrapper,aes_user_project_wrapper,run_config,flow completed,0h9m31s0ms,0h0m56s0ms,10.2784,0.09729140722291407,-1,6.44782,514.45,1,0,0,0,0,0,0,0,0,0,0,-1,-1,13328,214,0.0,-1,-1,-1,-1,0.0,-1,-1,-1,-1,-1,0.0,0.02,0.01,0.08,0.0,-1,19,637,19,637,0,0,0,1,0,0,0,0,0,0,0,0,-1,-1,-1,0,0,0,0,1,1,10173980.1536,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,25,1,50,81.6,81.6,0.3,0,10,0.6,0,sky130_fd_sc_hd,AREA 0
|
||||
./designs/ci/blabla,blabla,run_config,flow completed,0h37m16s0ms,0h9m39s0ms,1.44,9359.027777777776,8.74,14.0,2878.57,11696,0,0,0,0,0,0,0,118,111,0,-1,-1,2328661,115651,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,2126108228.0,0.0,46.54,44.08,12.63,29.41,0.0,10117,21673,226,11782,0,0,0,12090,654,5,575,813,507,2076,906,1434,2004,1100,50,92567,20010,5285,28187,13477,159526,1399932.6464000002,-1,-1,-1,-1,-1,-1,-1,-1,-1,8.7,65.0,1,11,153.18,153.6,0.3,1,0.16,0,sky130_fd_sc_hd,10,AREA 0
|
||||
./designs/ci/caravel_upw,user_project_wrapper,run_config,flow completed,0h6m23s0ms,0h1m58s0ms,-1.0,-1.0,-1.0,11.0,755.36,2,0,0,0,0,0,0,0,0,0,0,-1,-1,1803198,5162,0.0,-1.0,-1,0.0,0.0,0.0,-1.0,-1,0.0,0.0,-1.0,0.0,3.56,7.04,0.84,2.89,-1.0,19,637,19,637,0,0,0,2,0,0,0,0,0,0,0,0,-1,-1,-1,0,0,0,0,2,2,10173980.1536,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1.0,10.0,1,50,180.0,180.0,0.3,1,0.55,0,sky130_fd_sc_hd,10,AREA 0
|
||||
./designs/ci/gcd,gcd,run_config,flow completed,0h1m34s0ms,0h1m4s0ms,0.0784251948,4743.373617989407,5.25,7.0,562.96,313,0,0,0,0,0,0,0,0,0,0,-1,-1,19936,2738,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,17027897.0,0.0,7.09,7.52,1.69,3.98,0.0,347,1106,140,899,0,0,0,293,6,3,2,6,41,25,6,32,70,52,11,4823,970,14,1092,372,7271,67039.29599999999,-1,-1,-1,-1,-1,-1,-1,-1,-1,3.48,10.0,1,50,27.2,27.14,0.3,1,0.55,0,sky130_fd_sc_hd,10,DELAY 4
|
||||
./designs/ci/inverter,inverter,run_config,flow completed,0h0m23s0ms,0h0m12s0ms,0.00197064,1522.3480696626475,-1.0,3.0,479.06,1,0,0,0,0,0,0,0,0,0,0,-1,-1,77,14,0.0,-1.0,-1,0.0,0.0,0.0,-1.0,-1,0.0,0.0,-1.0,0.0,1.0,1.83,0.0,0.0,0.0,2,2,2,2,0,0,0,1,0,0,0,0,0,0,0,0,1,1,1,77,7,0,23,3,110,829.5456,-1,-1,-1,-1,-1,-1,-1,-1,-1,0.3500000000000001,10.0,1,50,25.0,25.0,0.3,1,0.75,0,sky130_fd_sc_hd,10,AREA 0
|
||||
./designs/ci/manual_macro_placement_test,manual_macro_placement_test,run_config,flow completed,0h0m46s0ms,0h0m17s0ms,0.1007267267999999,724.7331698263823,-1.0,37.0,512.96,2,0,0,0,0,0,0,0,0,0,0,-1,-1,20029,500,0.0,-1.0,-1,0.0,0.0,0.0,-1.0,-1,0.0,0.0,-1.0,0.0,6.4,7.26,2.58,7.14,0.1,10,72,10,72,0,0,0,2,0,0,0,0,0,0,0,0,-1,-1,-1,3641,713,4,689,73,5120,90011.32800000001,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1.0,100.0,1,35,153.18,30.0,0.3,1,0.35,0,sky130_fd_sc_hd,10,AREA 0
|
||||
./designs/ci/picorv32a,picorv32,run_config,flow completed,0h12m9s0ms,0h7m18s0ms,0.3030545513,32970.96168705519,35.9,40.0,1365.14,9470,0,0,0,0,0,0,0,32,24,0,-1,-1,665045,82637,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,520806623.0,0.0,52.74,59.12,25.99,46.05,6.23,6209,8782,179,2304,0,0,0,8024,399,91,208,212,1016,370,100,2711,1630,1656,22,16482,4059,671,7929,9992,39133,284718.06720000005,-1,-1,-1,-1,-1,-1,-1,-1,-1,1.5499999999999998,24.0,1,35,153.18,153.6,0.3,1,0.4,0,sky130_fd_sc_hd,6,AREA 0
|
||||
./designs/ci/s44,lut_s44,run_config,flow completed,0h1m10s0ms,0h0m50s0ms,0.043010922,3510.7361799870278,4.15,7.0,531.9,121,0,0,0,0,0,0,0,0,0,0,-1,-1,8322,1048,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,7096590.0,0.0,5.64,7.12,0.11,0.0,0.0,49,140,20,111,0,0,0,62,0,0,0,0,0,0,0,30,48,33,6,2648,504,8,603,151,3914,36347.35999999999,-1,-1,-1,-1,-1,-1,-1,-1,-1,2.039999999999999,30.0,1,4,153.18,153.6,0.3,1,0.5,0,sky130_fd_sc_hd,10,AREA 0
|
||||
./designs/ci/salsa20,salsa20,run_config,flow completed,0h30m6s0ms,0h16m6s0ms,1.2177938729000002,20405.752199116683,20.45,25.0,3386.25,22965,0,0,0,0,0,0,0,171,157,0,-1,-1,2147090,196715,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,1822593739.0,0.0,45.76,45.64,21.0,34.13,5.38,12472,21091,252,8871,0,0,0,17446,488,5,592,642,1679,2296,741,1288,3720,3710,51,74068,16842,2694,26166,24850,144620,1179677.6544,-1,-1,-1,-1,-1,-1,-1,-1,-1,4.57,38.0,1,20,153.18,153.6,0.3,1,0.25,0,sky130_fd_sc_hd,6,AREA 0
|
||||
spm,spm,run_config,flow completed,0h1m10s0ms,0h0m52s0ms,0.0114652544999999,30090.91512098576,47.85,45.0,521.98,301,0,0,0,0,0,0,0,0,0,0,-1,-1,10140,2035,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,8701631.0,0.0,21.21,38.83,1.2,4.41,0.0,354,415,196,257,0,0,0,253,32,64,31,31,1,63,31,0,97,128,4,539,105,0,227,345,1216,8134.051200000001,-1,-1,-1,-1,-1,-1,-1,-1,-1,0.5899999999999999,10.0,1,45,22.44,22.655,0.3,1,0.5,0,sky130_fd_sc_hd,10,AREA 0
|
||||
./designs/ci/tt05_i2c_bert,tt_um_dlmiles_tt05_i2c_bert,run_config,flow completed,0h2m1s0ms,0h1m38s0ms,0.0187755072,56563.052528349275,58.15,72.5264,563.35,976,0,0,0,0,0,0,0,0,0,0,-1,-1,27417,7556,0.0,-1,-1,-1,-1,0.0,-1,-1,-1,-1,20810646.0,0.0,52.59,39.65,14.91,5.06,-1,1497,1999,250,727,0,0,0,1445,45,10,49,60,354,57,13,128,156,123,16,802,246,3,449,1062,2562,17274.0672,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,15,1,50,26.520,40.710,0.3,1,10,0.6,0,sky130_fd_sc_hd,AREA 0
|
||||
./designs/ci/usb,usb,run_config,flow completed,0h1m54s0ms,0h1m22s0ms,0.0327793473,31239.182117576816,41.81,41.0,574.89,929,0,0,0,0,0,0,0,1,1,0,-1,-1,29931,7401,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,20708179.0,0.0,30.4,30.25,0.89,0.63,0.0,830,1083,140,374,0,0,0,927,27,24,33,34,200,47,8,79,214,193,8,1629,372,3,771,1024,3799,26875.776,-1,-1,-1,-1,-1,-1,-1,-1,-1,2.16,15.0,1,40,40.8,41.165,0.3,1,0.45,0,sky130_fd_sc_hd,6,DELAY 0
|
||||
./designs/ci/usb_cdc_core,usb_cdc_core,run_config,flow completed,0h2m33s0ms,0h1m40s0ms,0.0754478433,27250.613272334587,31.22,32.0,644.57,1953,0,0,0,0,0,0,0,2,2,0,-1,-1,67456,14023,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,51889425.0,0.0,29.21,29.69,1.5,1.46,0.0,2046,2771,265,943,0,0,0,2150,100,47,109,89,681,130,41,60,325,605,14,4182,912,15,1617,2056,8782,65980.78080000001,-1,-1,-1,-1,-1,-1,-1,-1,-1,0.91,15.6,1,30,153.18,153.6,0.3,1,0.32,0,sky130_fd_sc_hd,6,AREA 0
|
||||
./designs/ci/wbqspiflash,wbqspiflash,run_config,flow completed,0h4m42s0ms,0h3m26s0ms,0.0673063305,41749.4161266153,41.39,53.0,724.34,2671,0,0,0,0,0,0,0,0,0,0,-1,-1,141899,25584,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,105133202.0,0.0,54.18,62.0,18.33,28.05,0.0,2873,3297,70,485,0,0,0,3100,55,1,142,148,796,79,6,744,340,288,18,3605,819,1255,2411,2810,10900,58796.3904,-1,-1,-1,-1,-1,-1,-1,-1,-1,3.63,20.0,1,40,153.18,153.6,0.3,1,0.45,1,sky130_fd_sc_hd,4,DELAY 0
|
||||
./designs/ci/xtea,xtea,run_config,flow completed,0h4m26s0ms,0h2m31s0ms,0.061274554425,45141.08712753809,46.96,46.0,674.95,2490,0,0,0,0,0,0,0,3,3,0,-1,-1,114238,19667,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,92447830.0,0.0,50.66,54.84,14.0,25.1,0.0,2187,2686,18,405,0,0,0,2452,16,5,54,226,390,436,121,160,373,358,30,3375,731,37,1699,2766,8608,52760.6016,-1,-1,-1,-1,-1,-1,-1,-1,-1,1.04,26.03,1,45,153.18,153.6,0.3,1,0.5,0,sky130_fd_sc_hd,6,AREA 0
|
||||
./designs/ci/y_huff,y_huff,run_config,flow completed,0h21m28s0ms,0h10m11s0ms,0.49,27240.81632653061,28.22,31.0,1854.35,12229,0,0,0,0,0,0,0,15,15,0,-1,-1,922399,107296,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,790843468.0,0.0,45.42,49.31,23.72,40.38,0.0,7387,15309,1038,8787,0,0,0,8840,236,0,145,386,1308,575,87,1864,3057,2351,12,29134,6651,516,11768,13348,61417,466388.5536,-1,-1,-1,-1,-1,-1,-1,-1,-1,2.55,11.35,1,40,153.18,153.6,0.3,1,0.45,0,sky130_fd_sc_hd,6,AREA 0
|
||||
./designs/ci/zipdiv,zipdiv,run_config,flow completed,0h2m35s0ms,0h1m57s0ms,0.0368352704,37654.128364970544,41.82,40.0,601.88,1254,0,0,0,0,0,0,0,0,0,0,-1,-1,55369,11102,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,43513884.0,0.0,41.69,45.86,11.63,10.95,0.0,936,1137,22,215,0,0,0,1059,46,0,3,43,165,146,14,158,207,142,16,1970,429,8,965,1387,4759,30509.2608,-1,-1,-1,-1,-1,-1,-1,-1,-1,2.4400000000000004,20.0,1,40,153.18,153.6,0.3,1,0.45,0,sky130_fd_sc_hd,6,DELAY 2
|
||||
design,design_name,config,flow_status,total_runtime,routed_runtime,DIEAREA_mm^2,CellPer_mm^2,OpenDP_Util,Final_Util,Peak_Memory_Usage_MB,synth_cell_count,tritonRoute_violations,Short_violations,MetSpc_violations,OffGrid_violations,MinHole_violations,Other_violations,Magic_violations,pin_antenna_violations,net_antenna_violations,lvs_total_errors,klayout_violations,wire_length,vias,wns,pl_wns,optimized_wns,fastroute_wns,spef_wns,tns,pl_tns,optimized_tns,fastroute_tns,spef_tns,HPWL,routing_layer1_pct,routing_layer2_pct,routing_layer3_pct,routing_layer4_pct,routing_layer5_pct,routing_layer6_pct,wires_count,wire_bits,public_wires_count,public_wire_bits,memories_count,memory_bits,processes_count,cells_pre_abc,AND,DFF,NAND,NOR,OR,XOR,XNOR,MUX,inputs,outputs,level,DecapCells,WelltapCells,DiodeCells,FillCells,NonPhysCells,TotalCells,CoreArea_um^2,power_slowest_internal_uW,power_slowest_switching_uW,power_slowest_leakage_uW,power_typical_internal_uW,power_typical_switching_uW,power_typical_leakage_uW,power_fastest_internal_uW,power_fastest_switching_uW,power_fastest_leakage_uW,critical_path_ns,CLOCK_PERIOD,FP_ASPECT_RATIO,FP_CORE_UTIL,FP_PDN_HPITCH,FP_PDN_VPITCH,GRT_ADJUSTMENT,GRT_REPAIR_ANTENNAS,PL_TARGET_DENSITY,RUN_HEURISTIC_DIODE_INSERTION,STD_CELL_LIBRARY,MAX_FANOUT_CONSTRAINT,SYNTH_STRATEGY
|
||||
./designs/ci/APU,APU,run_config,flow completed,0h4m26s0ms,0h3m1s0ms,0.0983350472999999,34484.144698225005,36.06,36.0,792.03,3253,0,0,0,0,0,0,0,3,3,0,-1,140372,25964,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,106197908.0,0.0,42.45,43.9,6.23,12.61,0.0,2847,3426,183,703,0,0,0,3120,89,40,102,150,274,250,56,1024,432,424,23,5671,1221,33,2252,3391,12568,88101.99680000001,-1,-1,-1,-1,-1,-1,-1,-1,-1,4.76,17.0,1,35,153.18,153.6,0.3,1,0.4,0.0,sky130_fd_sc_hd,6,AREA 0
|
||||
./designs/ci/PPU,PPU,run_config,flow completed,0h13m54s0ms,0h6m31s0ms,0.733195271625,18162.9649226804,20.49,25.0,2077.11,12649,0,0,0,0,0,0,0,72,65,0,-1,914385,99369,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,640716798.0,0.0,36.57,38.6,7.09,12.5,0.17,5308,8922,576,4178,0,0,0,7674,52,8,53,75,466,113,21,3014,2918,2927,21,43486,10075,708,14399,13317,81985,703299.52,-1,-1,-1,-1,-1,-1,-1,-1,-1,9.05,18.0,1,20,153.18,153.6,0.3,1,0.25,0.0,sky130_fd_sc_hd,8,AREA 0
|
||||
./designs/ci/aes,aes,run_config,flow completed,0h31m18s0ms,0h16m12s0ms,1.5614589344249998,13835.778529747611,15.32,19.0,3995.48,20122,0,0,0,0,0,0,0,75,70,0,-1,1906160,185725,-26.68,-45.4,-1,0.0,0.0,-77174.7,-129120.43,-1,0.0,0.0,1421600626.0,0.0,34.34,35.77,9.34,16.27,0.15,21918,39764,1376,19222,0,0,0,24130,219,143,88,346,8958,2179,691,1414,3037,3024,24,98615,21612,1617,28611,21604,172059,1519006.8479999998,-1,-1,-1,-1,-1,-1,-1,-1,-1,2.91,25.0,1,15,153.18,153.6,0.3,1,0.25,0.0,sky130_fd_sc_hd,8,AREA 0
|
||||
./designs/ci/aes_core,aes_core,run_config,flow completed,0h38m54s0ms,0h17m41s0ms,0.8670581510250001,24200.22229788714,25.56,36.0,3197.34,19301,0,0,0,0,0,0,0,10,10,0,-1,1995431,218062,-20.25,-33.48,-1,0.0,0.0,-47470.02,-78096.02,-1,0.0,0.0,1553775824.0,0.0,54.68,59.5,32.22,50.36,2.92,21779,38579,1339,18139,0,0,0,23475,303,11,176,343,8963,2035,834,1198,2865,2604,25,50614,11830,22472,31654,20983,137553,835761.5616,-1,-1,-1,-1,-1,-1,-1,-1,-1,2.99,22.0,1,25,153.18,153.6,0.3,1,0.3,1.0,sky130_fd_sc_hd,6,AREA 0
|
||||
./designs/ci/aes_user_project_wrapper,aes_user_project_wrapper,run_config,flow completed,0h9m31s0ms,0h0m56s0ms,10.2784,0.097291407222914,-1.0,6.44782,514.45,1,0,0,0,0,0,0,0,0,0,0,-1,13328,214,0.0,-1.0,-1,-1.0,-1.0,0.0,-1.0,-1,-1.0,-1.0,-1.0,0.0,0.02,0.01,0.08,0.0,-1.0,19,637,19,637,0,0,0,1,0,0,0,0,0,0,0,0,-1,-1,-1,0,0,0,0,1,1,10173980.1536,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1.0,25.0,1,50,81.6,81.6,0.3,0,10.0,0.6,0,sky130_fd_sc_hd,AREA 0
|
||||
./designs/ci/blabla,blabla,run_config,flow completed,0h37m16s0ms,0h9m39s0ms,1.44,9359.027777777776,8.74,14.0,2878.57,11696,0,0,0,0,0,0,0,118,111,0,-1,2328661,115651,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,2126108228.0,0.0,46.54,44.08,12.63,29.41,0.0,10117,21673,226,11782,0,0,0,12090,654,5,575,813,507,2076,906,1434,2004,1100,50,92567,20010,5285,28187,13477,159526,1399932.6464000002,-1,-1,-1,-1,-1,-1,-1,-1,-1,8.7,65.0,1,11,153.18,153.6,0.3,1,0.16,0.0,sky130_fd_sc_hd,10,AREA 0
|
||||
./designs/ci/caravel_upw,user_project_wrapper,run_config,flow completed,0h6m23s0ms,0h1m58s0ms,-1.0,-1.0,-1.0,11.0,755.36,2,0,0,0,0,0,0,0,0,0,0,-1,1803198,5162,0.0,-1.0,-1,0.0,0.0,0.0,-1.0,-1,0.0,0.0,-1.0,0.0,3.56,7.04,0.84,2.89,-1.0,19,637,19,637,0,0,0,2,0,0,0,0,0,0,0,0,-1,-1,-1,0,0,0,0,2,2,10173980.1536,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1.0,10.0,1,50,180.0,180.0,0.3,1,0.55,0.0,sky130_fd_sc_hd,10,AREA 0
|
||||
./designs/ci/gcd,gcd,run_config,flow completed,0h1m34s0ms,0h1m4s0ms,0.0784251948,4743.373617989407,5.25,7.0,562.96,313,0,0,0,0,0,0,0,0,0,0,-1,19936,2738,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,17027897.0,0.0,7.09,7.52,1.69,3.98,0.0,347,1106,140,899,0,0,0,293,6,3,2,6,41,25,6,32,70,52,11,4823,970,14,1092,372,7271,67039.29599999999,-1,-1,-1,-1,-1,-1,-1,-1,-1,3.48,10.0,1,50,27.2,27.14,0.3,1,0.55,0.0,sky130_fd_sc_hd,10,DELAY 4
|
||||
./designs/ci/inverter,inverter,run_config,flow completed,0h0m23s0ms,0h0m12s0ms,0.00197064,1522.3480696626475,-1.0,3.0,479.06,1,0,0,0,0,0,0,0,0,0,0,-1,77,14,0.0,-1.0,-1,0.0,0.0,0.0,-1.0,-1,0.0,0.0,-1.0,0.0,1.0,1.83,0.0,0.0,0.0,2,2,2,2,0,0,0,1,0,0,0,0,0,0,0,0,1,1,1,77,7,0,23,3,110,829.5456,-1,-1,-1,-1,-1,-1,-1,-1,-1,0.3500000000000001,10.0,1,50,25.0,25.0,0.3,1,0.75,0.0,sky130_fd_sc_hd,10,AREA 0
|
||||
./designs/ci/manual_macro_placement_test,manual_macro_placement_test,run_config,flow completed,0h0m46s0ms,0h0m17s0ms,0.1007267267999999,724.7331698263823,-1.0,37.0,512.96,2,0,0,0,0,0,0,0,0,0,0,-1,20029,500,0.0,-1.0,-1,0.0,0.0,0.0,-1.0,-1,0.0,0.0,-1.0,0.0,6.4,7.26,2.58,7.14,0.1,10,72,10,72,0,0,0,2,0,0,0,0,0,0,0,0,-1,-1,-1,3641,713,4,689,73,5120,90011.32800000001,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1.0,100.0,1,35,153.18,30.0,0.3,1,0.35,0.0,sky130_fd_sc_hd,10,AREA 0
|
||||
./designs/ci/picorv32a,picorv32,run_config,flow completed,0h12m9s0ms,0h7m18s0ms,0.3030545513,32970.96168705519,35.9,40.0,1365.14,9470,0,0,0,0,0,0,0,32,24,0,-1,665045,82637,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,520806623.0,0.0,52.74,59.12,25.99,46.05,6.23,6209,8782,179,2304,0,0,0,8024,399,91,208,212,1016,370,100,2711,1630,1656,22,16482,4059,671,7929,9992,39133,284718.06720000005,-1,-1,-1,-1,-1,-1,-1,-1,-1,1.5499999999999998,24.0,1,35,153.18,153.6,0.3,1,0.4,0.0,sky130_fd_sc_hd,6,AREA 0
|
||||
./designs/ci/s44,lut_s44,run_config,flow completed,0h1m10s0ms,0h0m50s0ms,0.043010922,3510.736179987028,4.15,7.0,531.9,121,0,0,0,0,0,0,0,0,0,0,-1,8322,1048,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,7096590.0,0.0,5.64,7.12,0.11,0.0,0.0,49,140,20,111,0,0,0,62,0,0,0,0,0,0,0,30,48,33,6,2648,504,8,603,151,3914,36347.35999999999,-1,-1,-1,-1,-1,-1,-1,-1,-1,2.039999999999999,30.0,1,4,153.18,153.6,0.3,1,0.5,0.0,sky130_fd_sc_hd,10,AREA 0
|
||||
./designs/ci/salsa20,salsa20,run_config,flow completed,0h30m6s0ms,0h16m6s0ms,1.2177938729000002,20405.752199116683,20.45,25.0,3386.25,22965,0,0,0,0,0,0,0,171,157,0,-1,2147090,196715,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,1822593739.0,0.0,45.76,45.64,21.0,34.13,5.38,12472,21091,252,8871,0,0,0,17446,488,5,592,642,1679,2296,741,1288,3720,3710,51,74068,16842,2694,26166,24850,144620,1179677.6544,-1,-1,-1,-1,-1,-1,-1,-1,-1,4.57,38.0,1,20,153.18,153.6,0.3,1,0.25,0.0,sky130_fd_sc_hd,6,AREA 0
|
||||
spm,spm,run_config,flow completed,0h1m10s0ms,0h0m52s0ms,0.0114652544999999,30090.91512098576,47.85,45.0,521.98,301,0,0,0,0,0,0,0,0,0,0,-1,10140,2035,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,8701631.0,0.0,21.21,38.83,1.2,4.41,0.0,354,415,196,257,0,0,0,253,32,64,31,31,1,63,31,0,97,128,4,539,105,0,227,345,1216,8134.051200000001,-1,-1,-1,-1,-1,-1,-1,-1,-1,0.5899999999999999,10.0,1,45,22.44,22.655,0.3,1,0.5,0.0,sky130_fd_sc_hd,10,AREA 0
|
||||
./designs/ci/tt05_i2c_bert,tt_um_dlmiles_tt05_i2c_bert,run_config,flow completed,0h2m1s0ms,0h1m38s0ms,0.0187755072,56563.05252834928,58.15,72.5264,563.35,976,0,0,0,0,0,0,0,0,0,0,-1,27417,7556,0.0,-1.0,-1,-1.0,-1.0,0.0,-1.0,-1,-1.0,-1.0,20810646.0,0.0,52.59,39.65,14.91,5.06,-1.0,1497,1999,250,727,0,0,0,1445,45,10,49,60,354,57,13,128,156,123,16,802,246,3,449,1062,2562,17274.0672,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1.0,15.0,1,50,26.52,40.71,0.3,1,10.0,0.6,0,sky130_fd_sc_hd,AREA 0
|
||||
./designs/ci/usb,usb,run_config,flow completed,0h1m54s0ms,0h1m22s0ms,0.0327793473,31239.182117576816,41.81,41.0,574.89,929,0,0,0,0,0,0,0,1,1,0,-1,29931,7401,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,20708179.0,0.0,30.4,30.25,0.89,0.63,0.0,830,1083,140,374,0,0,0,927,27,24,33,34,200,47,8,79,214,193,8,1629,372,3,771,1024,3799,26875.776,-1,-1,-1,-1,-1,-1,-1,-1,-1,2.16,15.0,1,40,40.8,41.165,0.3,1,0.45,0.0,sky130_fd_sc_hd,6,DELAY 0
|
||||
./designs/ci/usb_cdc_core,usb_cdc_core,run_config,flow completed,0h2m33s0ms,0h1m40s0ms,0.0754478433,27250.613272334587,31.22,32.0,644.57,1953,0,0,0,0,0,0,0,2,2,0,-1,67456,14023,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,51889425.0,0.0,29.21,29.69,1.5,1.46,0.0,2046,2771,265,943,0,0,0,2150,100,47,109,89,681,130,41,60,325,605,14,4182,912,15,1617,2056,8782,65980.78080000001,-1,-1,-1,-1,-1,-1,-1,-1,-1,0.91,15.6,1,30,153.18,153.6,0.3,1,0.32,0.0,sky130_fd_sc_hd,6,AREA 0
|
||||
./designs/ci/wbqspiflash,wbqspiflash,run_config,flow completed,0h4m42s0ms,0h3m26s0ms,0.0673063305,41749.4161266153,41.39,53.0,724.34,2671,0,0,0,0,0,0,0,0,0,0,-1,141899,25584,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,105133202.0,0.0,54.18,62.0,18.33,28.05,0.0,2873,3297,70,485,0,0,0,3100,55,1,142,148,796,79,6,744,340,288,18,3605,819,1255,2411,2810,10900,58796.3904,-1,-1,-1,-1,-1,-1,-1,-1,-1,3.63,20.0,1,40,153.18,153.6,0.3,1,0.45,1.0,sky130_fd_sc_hd,4,DELAY 0
|
||||
./designs/ci/xtea,xtea,run_config,flow completed,0h4m26s0ms,0h2m31s0ms,0.061274554425,45141.08712753809,46.96,46.0,674.95,2490,0,0,0,0,0,0,0,3,3,0,-1,114238,19667,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,92447830.0,0.0,50.66,54.84,14.0,25.1,0.0,2187,2686,18,405,0,0,0,2452,16,5,54,226,390,436,121,160,373,358,30,3375,731,37,1699,2766,8608,52760.6016,-1,-1,-1,-1,-1,-1,-1,-1,-1,1.04,26.03,1,45,153.18,153.6,0.3,1,0.5,0.0,sky130_fd_sc_hd,6,AREA 0
|
||||
./designs/ci/y_huff,y_huff,run_config,flow completed,0h21m28s0ms,0h10m11s0ms,0.49,27240.81632653061,28.22,31.0,1854.35,12229,0,0,0,0,0,0,0,15,15,0,-1,922399,107296,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,790843468.0,0.0,45.42,49.31,23.72,40.38,0.0,7387,15309,1038,8787,0,0,0,8840,236,0,145,386,1308,575,87,1864,3057,2351,12,29134,6651,516,11768,13348,61417,466388.5536,-1,-1,-1,-1,-1,-1,-1,-1,-1,2.55,11.35,1,40,153.18,153.6,0.3,1,0.45,0.0,sky130_fd_sc_hd,6,AREA 0
|
||||
./designs/ci/zipdiv,zipdiv,run_config,flow completed,0h2m35s0ms,0h1m57s0ms,0.0368352704,37654.128364970544,41.82,40.0,601.88,1254,0,0,0,0,0,0,0,0,0,0,-1,55369,11102,0.0,0.0,-1,0.0,0.0,0.0,0.0,-1,0.0,0.0,43513884.0,0.0,41.69,45.86,11.63,10.95,0.0,936,1137,22,215,0,0,0,1059,46,0,3,43,165,146,14,158,207,142,16,1970,429,8,965,1387,4759,30509.2608,-1,-1,-1,-1,-1,-1,-1,-1,-1,2.4400000000000004,20.0,1,40,153.18,153.6,0.3,1,0.45,0.0,sky130_fd_sc_hd,6,DELAY 2
|
||||
|
||||
|
@@ -17,6 +17,7 @@ import sys
|
||||
import json
|
||||
import yaml
|
||||
import fnmatch
|
||||
import glob
|
||||
from collections import defaultdict
|
||||
from typing import Iterable, Optional, Dict
|
||||
|
||||
@@ -40,6 +41,7 @@ class Artifact(object):
|
||||
step: str,
|
||||
filename: str,
|
||||
find_by_partial_match: bool = False,
|
||||
wildcard: bool = False,
|
||||
):
|
||||
self.run_path = run_path
|
||||
self.kind = kind
|
||||
@@ -48,6 +50,17 @@ class Artifact(object):
|
||||
self.pathname = os.path.join(self.run_path, self.kind, self.step)
|
||||
self.filename = filename
|
||||
|
||||
if wildcard:
|
||||
matches = glob.glob(self.pathname)
|
||||
if len(matches) > 1:
|
||||
print(
|
||||
f"Too many matches for {self.pathname}",
|
||||
file=sys.stderr,
|
||||
)
|
||||
exit(1)
|
||||
else:
|
||||
self.pathname = matches[0]
|
||||
|
||||
self.index, self.path = get_name(
|
||||
self.pathname, self.filename, find_by_partial_match
|
||||
)
|
||||
@@ -149,7 +162,6 @@ class Report(object):
|
||||
"pin_antenna_violations",
|
||||
"net_antenna_violations",
|
||||
"lvs_total_errors",
|
||||
"cvc_total_errors",
|
||||
"klayout_violations",
|
||||
"wire_length",
|
||||
"vias",
|
||||
@@ -239,7 +251,6 @@ class Report(object):
|
||||
("rsz_design", Artifact(rp, "logs", "routing", "rsz_design_sta.log")),
|
||||
("rsz_timing", Artifact(rp, "logs", "routing", "rsz_timing_sta.log")),
|
||||
("grt", Artifact(rp, "logs", "routing", "grt_sta.log")),
|
||||
("rcx", Artifact(rp, "logs", "signoff", "rcx_sta.log")),
|
||||
(
|
||||
"sta-rcx_nom/multi_corner",
|
||||
Artifact(rp, "logs", "signoff", "rcx_mcsta.nom.log"),
|
||||
@@ -343,7 +354,13 @@ class Report(object):
|
||||
|
||||
# Power after parasitics-extraction, multi-corner STA
|
||||
power_multi_corner_sta = defaultdict(lambda: defaultdict(lambda: -1))
|
||||
power_report = Artifact(rp, "reports", "signoff", "rcx_sta.power.rpt")
|
||||
power_report = Artifact(
|
||||
rp,
|
||||
"reports",
|
||||
"signoff/*sta-rcx_nom",
|
||||
"multi_corner_sta.power.rpt",
|
||||
wildcard=True,
|
||||
)
|
||||
power_report_content = power_report.get_content()
|
||||
if power_report_content is not None:
|
||||
current_corner = None
|
||||
@@ -379,10 +396,16 @@ class Report(object):
|
||||
power_multi_corner_sta["fastest"]["switching"],
|
||||
power_multi_corner_sta["fastest"]["leakage"],
|
||||
]
|
||||
|
||||
# Critical path
|
||||
critical_path_ns = -1
|
||||
critical_path_report = Artifact(rp, "reports", "signoff", "rcx_sta.max.rpt")
|
||||
critical_path_report = Artifact(
|
||||
rp,
|
||||
"reports",
|
||||
"signoff/*sta-rcx_nom",
|
||||
"multi_corner_sta.max.rpt",
|
||||
True,
|
||||
wildcard=True,
|
||||
)
|
||||
critical_path_report_content = critical_path_report.get_content()
|
||||
if critical_path_report_content is not None:
|
||||
start = 0
|
||||
@@ -495,7 +518,7 @@ class Report(object):
|
||||
magic_violations = (magic_violations_raw + 3) // 4
|
||||
|
||||
# KLayout DRC Violations
|
||||
klayout_drc = Artifact(rp, "reports", "signoff", "magic.lydrc", True)
|
||||
klayout_drc = Artifact(rp, "reports", "signoff", "drc.klayout.xml", True)
|
||||
klayout_drc_content = klayout_drc.get_content()
|
||||
|
||||
klayout_violations = -1
|
||||
@@ -533,10 +556,14 @@ class Report(object):
|
||||
|
||||
# STA Report Extractions
|
||||
def sta_report_extraction(
|
||||
sta_report_filename: str, filter: str, kind="reports", step="synthesis"
|
||||
sta_report_filename: str,
|
||||
filter: str,
|
||||
kind="reports",
|
||||
step="synthesis",
|
||||
wildcard=False,
|
||||
):
|
||||
value = -1
|
||||
report = Artifact(rp, kind, step, sta_report_filename)
|
||||
report = Artifact(rp, kind, step, sta_report_filename, wildcard=wildcard)
|
||||
report_content = report.get_content()
|
||||
if report_content is not None:
|
||||
match = re.search(rf"{filter}\s+(-?[\d\.]+)", report_content)
|
||||
@@ -551,20 +578,34 @@ class Report(object):
|
||||
return value
|
||||
|
||||
wns = sta_report_extraction("syn_sta.summary.rpt", "wns", step="synthesis")
|
||||
spef_wns = sta_report_extraction("rcx_sta.summary.rpt", "wns", step="signoff")
|
||||
opt_wns = sta_report_extraction("rt_rsz_sta.summary.rpt", "wns", step="routing")
|
||||
pl_wns = sta_report_extraction(
|
||||
"global.log", "wns", kind="logs", step="placement"
|
||||
spef_wns = sta_report_extraction(
|
||||
"multi_corner_sta.summary.rpt",
|
||||
"wns",
|
||||
step="signoff/*sta-rcx_nom",
|
||||
wildcard=True,
|
||||
)
|
||||
opt_wns = sta_report_extraction("grt_sta.summary.rpt", "wns", step="routing")
|
||||
pl_wns = sta_report_extraction(
|
||||
"gpl_sta.log", "wns", kind="logs", step="placement"
|
||||
)
|
||||
fr_wns = sta_report_extraction(
|
||||
"grt_sta.log", "wns", kind="logs", step="routing"
|
||||
)
|
||||
fr_wns = sta_report_extraction("global.log", "wns", kind="logs", step="routing")
|
||||
|
||||
tns = sta_report_extraction("syn_sta.summary.rpt", "tns", step="synthesis")
|
||||
spef_tns = sta_report_extraction("rcx_sta.summary.rpt", "tns", step="signoff")
|
||||
opt_tns = sta_report_extraction("rt_rsz_sta.summary.rpt", "tns", step="routing")
|
||||
pl_tns = sta_report_extraction(
|
||||
"global.log", "tns", kind="logs", step="placement"
|
||||
spef_tns = sta_report_extraction(
|
||||
"multi_corner_sta.summary.rpt",
|
||||
"tns",
|
||||
step="signoff/*-sta-rcx_nom",
|
||||
wildcard=True,
|
||||
)
|
||||
opt_tns = sta_report_extraction("grt_sta.summary.rpt", "tns", step="routing")
|
||||
pl_tns = sta_report_extraction(
|
||||
"gpl_sta.log", "tns", kind="logs", step="placement"
|
||||
)
|
||||
fr_tns = sta_report_extraction(
|
||||
"grt_sta.log", "tns", kind="logs", step="routing"
|
||||
)
|
||||
fr_tns = sta_report_extraction("global.log", "tns", kind="logs", step="routing")
|
||||
|
||||
# Yosys Metrics
|
||||
yosys_metrics = [
|
||||
@@ -708,16 +749,6 @@ class Report(object):
|
||||
if match is not None:
|
||||
lvs_total_errors = int(match[1])
|
||||
|
||||
# CVC Total Errors
|
||||
cvc_log = Artifact(rp, "logs", "signoff", "erc_screen.log")
|
||||
cvc_log_content = cvc_log.get_content()
|
||||
|
||||
cvc_total_errors = -1
|
||||
if cvc_log_content is not None:
|
||||
match = re.search(r"CVC:\s*Total:\s*(\d+)", cvc_log_content)
|
||||
if match is not None:
|
||||
cvc_total_errors = int(match[1])
|
||||
|
||||
return [
|
||||
flow_status,
|
||||
total_runtime,
|
||||
@@ -738,7 +769,6 @@ class Report(object):
|
||||
pin_antenna_violations,
|
||||
net_antenna_violations,
|
||||
lvs_total_errors,
|
||||
cvc_total_errors,
|
||||
klayout_violations,
|
||||
wire_length,
|
||||
vias,
|
||||
|
||||
Reference in New Issue
Block a user