A flexible NoC-based LDPC code decoder implementation and bandwidth reduction methods