Hi guys,
I'm using liberate to characterize standard cells which have a proprietary Transistor model, written in verilogA. Therefore I use spectre for simulation. First of all I wanna mention, that there is less guidance for how to set up another simulator than Aspice. Fortuneatly spectre gives also "*.mt0-Files" with the measurement results liberate expects. Unfortuneatly most of the liberate variables don't effect the temporary netlists in the expected way. So there is a lot of try and error.
Finally I gave up a wrote patches for the netlists with awk and sed.
So it runs fine and every step seems to get a "PASS" in the map.lst File. (I use customized arcs for speed and certainty). E.g.:
Jun 26 12:05:25 Thread 0: Cell=NOR2X1 (20%) Pin=QN Related=IN1 combinational rise_transition ...
Jun 26 12:13:27 Thread 0: Cell=NOR2X1 (40%) Pin=QN Related=IN2 combinational rise_transition ...
Jun 26 12:20:52 Thread 0: Cell=NOR2X1 (60%) Pin=QN Related=IN1 combinational fall_transition ...
Jun 26 12:28:46 Thread 0: Cell=NOR2X1 (80%) Pin=QN Related=IN2 combinational fall_transition ...
Jun 26 12:35:56 Thread 0: Cell=NOR2X1 (85%) Pin=IN1 Related= rising_edge rise_power ...
Jun 26 12:39:12 Thread 0: Cell=NOR2X1 (90%) Pin=IN1 Related= falling_edge fall_power ...
Jun 26 12:42:38 Thread 0: Cell=NOR2X1 (95%) Pin=IN2 Related= rising_edge rise_power ...
Jun 26 12:45:43 Thread 0: Cell=NOR2X1 (100%) Pin=IN2 Related= falling_edge fall_power ...
Jun 26 12:48:59 Thread 0: Cell=NOR2X1 (100%) Pin= Related= combinational leakage_power ...
Jun 26 12:49:08 Thread 0: Cell=NOR2X1 (100%) Pin= Related= combinational leakage_power ...
Jun 26 12:49:21 Thread 0: Cell=NOR2X1 (100%) Pin= Related= combinational leakage_power ...
Jun 26 12:49:31 Thread 0: Cell=NOR2X1 (100%) Pin= Related= combinational leakage_power ...
..But then
Performance statistics for NOR2X1: Spectre cpu time = 2521.2 seconds, total cpu time = 2521.2 seconds, wall clock time = 2668.0 seconds.
Error: cell NOR2X1 pin=QN related_pin=IN1 number of power results = 0, but 16 expected
Error: cell NOR2X1 pin=QN related_pin=IN2 number of power results = 0, but 16 expected
Error: cell NOR2X1 pin=QN related_pin=IN1 number of power results = 0, but 16 expected
Error: cell NOR2X1 pin=QN related_pin=IN2 number of power results = 0, but 16 expected
Error: cell NOR2X1 pin=IN1 related_pin= number of power results = 0, but 4 expected
However the "*.mt0-Files" give results for Leakage etc:
....altosleakage0 altosleakage1 temper alter#
2.959903e-09 3.905627e-09 27 1
I already scaled the values up but i looks like they will be ignored anyway. No idea why liberate don't get it. Until now I tried:
set_operating_condition -temp 27 -voltage 0.9
set VDD_voltage 0.9
set GND_voltage 0
set_vdd -type primary VDD1 ${VDD_voltage}
set_gnd -type primary GND1 ${GND_voltage}
set_var leakage_add_input_pin 1
set_var leakage_mode 1
set_var leakage_accuracy_mode 1
#set_var leakage_precision "%g"
set_var leakage_sim_duration "2e-12"
Nothing seems to help here. Please, Has anybody an idea?
Regards Eberhard