My 2000 Deville runs great most of the time, but on occasion while cruising, the engine will misfire as if the key were switched off and back on. Some times the check engine light will come on and stay on for the rest of the day. Does anyone know what could be causing this?