VLSI physical design automation :theory and practice