I'm trying to figure out how to simulate eye diagrams for communications systems using Python. I'm not sure I have the theory down completely, though. From what I could figure out using some old LabWindows C code, the process is something like this:
- Take an input pattern and convert it into a discrete signal with the same time step between points as the system's step data
- Perform an FFT on the input pattern and convert the system's step data to an S-parameter
- Multiply the transformed pattern and the S-parameter pointwise (equivalent to convolution in the time domain)
- Take the inverse FFT of product.
This is essentially all the old code seems to be doing, but unfortunately at the key steps there are calls to LabWindows functions that have poor online documentation, and I don't have access to the development libraries myself.
Any help or knowledge of eye diagram theory would be a tremendous help.