ALF_REVISION "2.0" // File "when_clause_example.1.alf" generated Wed Dec 3 2003 15:19:14 by ALF writer version 2003.3.devel (c) NEC Electronics 2000, 2001, 2002, 2003 LIBRARY when_clause_example { INFORMATION { VERSION = "synlib2alf = 2003.3.1 (11 Nov 2003), source = when_clause_example.lib" ; } CAPACITANCE { UNIT = 1.000000e-12 ; } AREA { UNIT = 1.000000e-12 ; } CELL NOWHEN1 { AREA = 55 ; POWER = 4000 ; PIN A { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN B { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN Y { DIRECTION = output ; LIMIT { CAPACITANCE { MAX = 1.1 ; } } } VECTOR ( 01 A -> 01 Y ) { DELAY = 1.11 ; SLEWRATE = 1.51 ; } VECTOR ( 10 A -> 10 Y ) { DELAY = 1.22 ; SLEWRATE = 1.52 ; } VECTOR ( 01 A -> 10 Y ) { DELAY = 2.12 ; SLEWRATE = 2.52 ; } VECTOR ( 10 A -> 01 Y ) { DELAY = 2.21 ; SLEWRATE = 2.51 ; } VECTOR ( 10 B -> 10 Y ) { DELAY = 3.22 ; SLEWRATE = 3.52 ; } VECTOR ( 01 B -> 01 Y ) { DELAY = 3.11 ; SLEWRATE = 3.51 ; } VECTOR ( 10 B -> 01 Y ) { DELAY = 4.21 ; SLEWRATE = 4.51 ; } VECTOR ( 01 B -> 10 Y ) { DELAY = 4.12 ; SLEWRATE = 4.52 ; } } // end CELL NOWHEN1 CELL NOWHEN2 { AREA = 55 ; POWER = 4000 ; PIN A { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN B { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN Y { DIRECTION = output ; LIMIT { CAPACITANCE { MAX = 1.1 ; } } } VECTOR ( 01 A -> 01 Y ) { DELAY = 1.11 ; SLEWRATE = 1.51 ; } VECTOR ( 10 A -> 10 Y ) { DELAY = 1.22 ; SLEWRATE = 1.52 ; } VECTOR ( 01 A -> 10 Y ) { DELAY = 3.12 ; SLEWRATE = 3.52 ; } VECTOR ( 10 A -> 01 Y ) { DELAY = 3.21 ; SLEWRATE = 3.51 ; } VECTOR ( 10 B -> 10 Y ) { DELAY = 5.22 ; SLEWRATE = 5.52 ; } VECTOR ( 01 B -> 01 Y ) { DELAY = 5.11 ; SLEWRATE = 5.51 ; } VECTOR ( 10 B -> 01 Y ) { DELAY = 7.21 ; SLEWRATE = 7.51 ; } VECTOR ( 01 B -> 10 Y ) { DELAY = 7.12 ; SLEWRATE = 7.52 ; } } // end CELL NOWHEN2 CELL WHEN1 { AREA = 55 ; POWER = 4000 ; PIN A { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN B { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN CA1 { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN CA2 { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN CB1 { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN CB2 { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN Y { DIRECTION = output ; LIMIT { CAPACITANCE { MAX = 1.1 ; } } } VECTOR ( (01 A -> 01 Y) && (!CA1 && !CA2) ) { DELAY = 1.11 ; SLEWRATE = 1.51 ; } VECTOR ( (10 B -> 10 Y) && (!CB1 && !CB2) ) { DELAY = 5.22 ; SLEWRATE = 5.52 ; } VECTOR ( (10 B -> 01 Y) && (!CB1 && CB2) ) { DELAY = 6.21 ; SLEWRATE = 6.51 ; } VECTOR ( (01 B -> 10 Y) && (CB1 && !CB2) ) { DELAY = 7.12 ; SLEWRATE = 7.52 ; } VECTOR ( (01 B -> 01 Y) && (CB1 && CB2) ) { DELAY = 8.11 ; SLEWRATE = 8.51 ; } } // end CELL WHEN1 CELL WHEN2 { AREA = 55 ; POWER = 4000 ; PIN A { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN B { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN CA1 { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN CA2 { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN CB1 { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN CB2 { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN Y { DIRECTION = output ; LIMIT { CAPACITANCE { MAX = 1.1 ; } } } VECTOR ( (01 A -> 01 Y) && (!CA1 && !CA2) ) { DELAY = 1.11 ; SLEWRATE = 1.51 ; } VECTOR ( (01 B -> 01 Y) && (!CB1 && !CB2) ) { DELAY = 3.11 ; SLEWRATE = 3.51 ; } VECTOR ( (01 B -> 10 Y) && (!CB1 && CB2) ) { DELAY = 5.12 ; SLEWRATE = 5.52 ; } VECTOR ( (10 B -> 01 Y) && (CB1 && !CB2) ) { DELAY = 7.21 ; SLEWRATE = 7.51 ; } VECTOR ( (10 B -> 10 Y) && (CB1 && CB2) ) { DELAY = 9.22 ; SLEWRATE = 9.52 ; } } // end CELL WHEN2 CELL WHEN3 { AREA = 56.5488 ; POWER = 4000 ; PIN A { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN B { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN CA1 { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN CA2 { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN CA3 { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN CB1 { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN CB2 { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN CB3 { DIRECTION = input ; CAPACITANCE = 0.01 ; } PIN Y { DIRECTION = output ; LIMIT { CAPACITANCE { MAX = 1.1 ; } } } VECTOR ( (01 A -> 01 Y) && (CA1 && CA2) ) { DELAY = 1.11 ; SLEWRATE = 1.51 ; } VECTOR ( 01 A -> 01 Y ) { DELAY = 2.11 ; SLEWRATE = 2.51 ; } VECTOR ( (01 B -> 01 Y) && (!CB1 && !CB2 && !CB3) ) { DELAY = 3.11 ; SLEWRATE = 3.51 ; } VECTOR ( (01 B -> 01 Y) && (!CB1 && !CB2 && CB3) ) { DELAY = 5.11 ; SLEWRATE = 5.51 ; } VECTOR ( (01 B -> 10 Y) && (!CB1 && CB2 && !CB3) ) { DELAY = 6.12 ; SLEWRATE = 6.52 ; } VECTOR ( 01 B -> 10 Y ) { DELAY = 7.12 ; SLEWRATE = 7.52 ; } VECTOR ( 10 B -> 01 Y ) { DELAY = 9.21 ; SLEWRATE = 9.51 ; } VECTOR ( (10 B -> 01 Y) && (CB1 && !CB2 && !CB3) ) { DELAY = 10.21 ; SLEWRATE = 10.51 ; } VECTOR ( (10 B -> 10 Y) && (CB1 && !CB2 && CB3) ) { DELAY = 12.22 ; SLEWRATE = 12.52 ; } VECTOR ( 10 B -> 10 Y ) { DELAY = 13.22 ; SLEWRATE = 13.52 ; } } // end CELL WHEN3 } // end LIBRARY when_clause_example