Kite - Detailed Router


Notes

Summary

Various Things to Remember

Pending Modifications

Modifications History

Changes in the general architecture

Changes in KiteEngine class design

Changes in DataNegociate class design

Changes in TrackElement class design

Changes in TrackSegment class design

Changes in AutoSegment class design

Changes in AutoContact class design

Bug Solving Memento

LUT lookup change: When breaking a TrackSegment, the break may not occurs in the associated canonical AutoSegment. In that case the dogleg[O] will not match the one that is looked up for the broken (canonical) segment. Thus it was not a bug but a misunderstanding...

Overlap of perpandiculars after a dogleg creation: The axis of the new parallel was not set to the axis of it's parent. This was due to the uses of AutoSegment::setAxis() in AutoHorizontal::_makeDogleg() which silently do nothing on non-canonical AutoSegment, and at this point, the re-canonisation did not yet take place. Now Uses AutoSegment::_setAxis() the atomic variant wich works inconditionnaly.

Evaluation with Cadence NanoRoute

To perform a comparison with NanoRoute the procedure is as follow:

To see the resulting layout, do not forget to switch the view mode.



Generated by doxygen 1.8.14 on Mon Feb 3 2020 Return to top of page
Kite - Detailed Router Copyright © 2008-2016 UPMC. All rights reserved