Pulse code formats for fiber optical data communication. Basic principles and applications