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");
}
[...]
The
wire_spice_model()
expectsspice["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: