Device-Circuit Co-Design of Emerging Memory Technologies to Enable Robust and Energy-Efficient In-Memory Computing for Deep Neural Networks