Chapter

Section

The change to the carry cell function improves the speed of the synthesised netlists. Again we synthesise across the whole range of BOOG and LOON opt levels and compare to the previous results using the two synthesis flows. The library is the corrected one copied to our private directory.

The first synthesis flow is:

1 $ ALLIANCE_VBE=$ALLIANCE_MOS/vbe
2 $ MBK_TARGET_LIB=$ALLIANCE_VBE/sclib100_0    
3 $ boog -l loon_0000_300_4 multi8 multi8_o
4 $ loon -l loon_0000_300_2 multi8_o multi8_1
5 $ loon -l loon_1500_300_0 multi8_1 multi8

The critical path delays are shown below for the original Alliance sclib (see output load page).

Critical Path Delay (ps)
Opt level BOOG
LOON 0 1 2 4
0  30612   30040   30432   31366 
1  29834   28629   29277   30773 
2  corrupt  24834   25190   22789 
4  25550   25414   25120   23037 

Using the corrected library and netlists synthesised with the new carry cell, the critical path delays are now:

Critical Path Delay (ps)
Opt level BOOG
LOON 0 1 2 4
0  30600   30038   30038   22397 
1  29823   28622   28622   22041 
2  25491   24651   24651   20014 
4  25949   24701   24701   20303 

The difference in the critical paths is shown below. Most synthesis combinations show an improvement. The delay of the fastest critical path improves from 22789 to 20272.

Critical Path Delay Differences (ps)
Opt level BOOG
LOON 0 1 2 4
0 −12  −2  −394  −8969 
1 −11  −7  −655  −8732 
2   −183  −539  −2775 
4    +399    −713    −419   −2734 

The second synthesis flow is:

1 $ ALLIANCE_VBE=$ALLIANCE_MOS/vbe
2 $ MBK_TARGET_LIB=$ALLIANCE_VBE/sclib100_0    
3 $ boog -l loon_0000_300_4 multi8 multi8_o
4 $ loon -l loon_1500_300_2 multi8_o multi8  

The original Alliance sclib critical path delays are shown below.

Critical Path Delay (ps)
Opt level BOOG
LOON 0 1 2 4
0  30612   30040   30430   31366 
1  29834   28629   29277   30773 
2  corrupt  24912   25042   30174 
4  26982   25385   25403   30174 

Using the corrected library and synthesised netlists containing the carry cell, the critical path delays are shown below.

Critical Path Delay (ps)
Opt level BOOG
LOON 0 1 2 4
0  30600   30038   30038   22397 
1  29832   28622   28622   22055 
2  25922   24650   24650   20320 
4  25413   24701   24701   20332 

The difference in the critical paths is shown below. All synthesis combinations show an improvement. The delay of the fastest critical path improves from 24912 to 20320.

The BOOG netlist with opt level 4 is much faster and LOON synthesis with opt levels 2 and 4 is inserting buffers which produce the fastest netlists.

Critical Path Delay Differences (ps)
Opt level BOOG
LOON 0 1 2 4
0 −12  −2  −392  −8969 
1 −2  −7  −655  −8718 
2   −262  −392  −9854 
4  −1569    −684    −702   −9842 

The effect of the changed carry cell logic function is particularly noticeable for BOOG synthesis with opt level 4. This gives the fastest netlists which are now 10%+ faster using the first synthesis flow, and even more with the second flow.

As before, the BOOG syntyhesis is done with only the ndrvp_y large inverter in the library so that we can make a meaningful comparison with the original Alliance sclib results.