10-23-2014 06:31 PM
Hi everyone, I'm using Spartan-6 GTP transmission 32bit data with 8B/10B, and using Optical fiber Outside FPGA, it's right when I download my code to the chip, but after I Pull out the Optical fiber and plug in Immediately with electricity(I call it Hot Plug), all data wrong Non-regularity, what can I do for this? Can I change the setting of aligement or 8B/10B or LOS state machine? Does the GTP have this function? I'm Very worried for this and I'm puzzled by this several months.
10-23-2014 11:25 PM
It depends on the protocol you are using and if it has Hot Plug capability.
You can write a FSM to detect the cable pull it it is not included already and reset the core once it is detected to make the connection work normally.
10-24-2014 10:19 PM
Hi yenigal, thanks for your reply. I have used a FSM to detected if there is a comma "BC", and if no received "BC" in 32 consecutive 32bit-data("BC" is in bit7~bit0, every 32 32bit-data have one "BC"), I reset the GTP, but it always not detect "BC" and always in reset state, it just like this picture:
so I want to know:
How to detect if the cable is plug or unplug?
How to reset the GTP?
Which signal should I reset?
Does the "BC" is comma?
When I use 40bit data, it is not "BC" but "27C", but the K28.5 is also "27C", so I don't know if the comma "27C" is the K28.5 "27C"?
Should I change the setting of other ports or attributes to solve this question?
Or which protocol can support hot plug?
If you know this, please tell me, I will Very grateful to you in my heart.
10-25-2014 11:07 AM
Now the problem is data shifting,such as I send 0x2221201F, 0x26252423, 0x2A292827, if I don't pull out the optical, the 3 data I received all right, but after I pull out the optical and plug it immediately, I receive 0x0x21201F1E, 0x25242322, 0x29282726, it meanings that the high 8bit in data 0x26252423 shift to the low 8bit in data 0x2A292827, who can tell me why? What should I do to slove it?
Now the time is 02:07 AM in china, I will wait for the reply from everyone.