I just had a coil fail. The symptom was that I was driving down the road and then the engine just quit. For the fisrt few tries to restart, it would almost but not quite catch. The more I tried, the worse it got, until there was nothing at all. Of course, my first thought was that it was the CPS. I checked spark, and it was there, although very, very weak. To verify that the CPS was working, I simply unplugged it. The weak spark went away, and came back when I plugged it back in. That verified operation of the CPS, since the PCM will not even try to fire the coil if there is no signal from the CPS. In my case, I had a shorted coil which produced weak spark. When I searched for my problem, everything I found said either bad CPS or bad ASD relay. Neither of those were my problem.
All the CPS does is detect a magnetic pulse from a magnet on the flywheel/flexplate. The CPU uses that signal to send the timing signal to the coil. The CPS will either work or not work.