The attached report details a problem that has been seen on both the SECM48 and SECM70 with a VR crank encoder sensor, but may occur on other ECUs too.
The problem is that the signal has a second bump on its way from low to high voltage. This second bump can cause the signal to cross zero twice for a single tooth resulting in an erratic speed reading.
The fix is to add a 10kohm resistor between the VR+ and VR- signal wires. This cleans up the signal and fixes the problem.