Efficient and Secure Hardware Architectures and Software/Hardware Co-designs for Post-Quantum Cryptography