A waveform optimization program for an optical data signal operating in an optical receiving device for discriminating and recovering a data signal, for performing a waveform optimization method comprising:
- using a dispersion equalizer, equalizing dispersion in said data signal;
- converting said data signal from an optical signal into an electrical signal and amplifying said electrical signal to a pre-determined amplitude;
- using a clock and data recovery circuit, discriminating said data signal at a decision point controlled to achieve an optimum position;
- and
- controlling a dispersion characteristic of said dispersion equalizer such that an error count in the data signal recovered by said clock and data recovery circuit is minimized, by controlling an eye pattern of the data signal that has been amplified to a pre-determined amplitude,
- wherein said controlling said eye pattern comprises obtaining an eye opening in said eye pattern by controlling a spacing between decision points to be accommodated in said eye opening.