Gigabit ethernet auto-negotiation can't detect the cable type. But as a result of low quality the finally negotiated speed may be 100mbit, even when all components are capable of 1gb.
1gb over cat5(e) is working when all 8 wires are used by the plugs and all of them have contact in the sockets. If one of the wires aren't connected from PC to switch it may recognize only 100mbit.
1gb needs all 8 wires, 100mb needs only 4 wires.
Failing 1gb Negotiation
For speed negotiation both sides send bit patterns. If you have a really poor quality of cables or plugs, then already this negotiation may fail, even when all 8 wires are connected. This may be caused by e.g. magnetic induction due to any kind of alternating current in the near and faulty shielding.
Also electrical potential differences may cause this, when one or both sides are ungrounded and there persists a high electrical potential difference.
But mostly effects like this are caused through faulty contacts or the port speed in manageable switches is manually set to 100mbit.