FPGA-based rate-adaptive LDPC-coded modulation for the next generation of optical communication systems