High throughput Two-Stage Soft/Hard Codecs for Optical Communications