vlsitechnology.org /cell_choice /ex0b_syn.html /make_lax.html


#!/bin/bash

netlist=$1
pin=$2
prop=$3
ramp=$4
pincap=$5
lax=$6
prio=$7
load=$8
cpar=$9

  cap=$(egrep '^N:x |^N:y ' $netlist.xsc | \
    cut -f 2,4 -d ':' | cut -f 1,2 -d ' ' | \
    sed 's/^\([^ ][^ ]*\)\([ ][ ]*\)\([^ ][^ ]*\):/\1(\3)\ /' | \
    grep "$pin" | cut -f 2 -d ' ')
#echo $cap
  let "bufdelay=10*(prop*1000+ramp*(cap-cpar))"
  let "deltacap=cap-pincap-cpar"
  if [ "$deltacap" -eq 0 ]
  then
    res=0
  else
    let "res=(bufdelay/deltacap+5)/10"
  fi
cat < ${lax}.lax
##xxx_lax.lax
#M{xxx_prio}
#I{
xxx_pin:xxx_res;
}
#C{
r(15):xxx_load;
r(14):xxx_load;
r(13):xxx_load;
r(12):xxx_load;
r(11):xxx_load;
r(10):xxx_load;
r(9):xxx_load;
r(8):xxx_load;
r(7):xxx_load;
r(6):xxx_load;
r(5):xxx_load;
r(4):xxx_load;
r(3):xxx_load;
r(2):xxx_load;
r(1):xxx_load;
r(0):xxx_load;
}
EOF