VLSIDA / OpenRAM

An open-source static random access memory (SRAM) compiler.
http://www.openram.org
BSD 3-Clause "New" or "Revised" License
780 stars 198 forks source link

Fix wire capacitance unit in sky130, gf180 #223

Open ubfx opened 5 months ago

ubfx commented 5 months ago

The wire_spice_model() expects spice["wire_unit_c"] in Farads per micrometer squared (F/um²). This is given correctly in the FreePDK45 tech but incorrectly in other technologies. This leads to a huge overestimation of wire capacitance in those technologies, leading to incorrect power values.

Before this patch, the liberty files would give values like this for the rise/fall power:

    pin(clk1){
        clock             : true;
        direction  : input; 
        capacitance : 0.006889999999999999;  
        internal_power(){
            when : "!csb1"; 
            rise_power(scalar){
                values("5.075574e+10");
            }
[...]