Stack-up and routing optimization by understanding micro-scale PCB effects