A Multi-physics approach to the co-design of 3D multi-core processors