As Blue Bowtie suggests, check for wiring issues on the wire on terminal B. Also check for issues on the adjacent wire, Terminal C. Both these wires go from IC module, across top of engine, and are in the wiring bundle that goes from front of engine to the 30 pin bulkhead connector mounted next to strut tower. This wiring harness has over the years caused me no end of grief with wires breaking internally, so when you check for continuity, don't be shy in flexing the wiring bundle to check it. The manual also states to make sure the spark plug wires are not routed close to the wiring bundle, as stray voltages could be induced.
When the engine initially starts starts, it is the ICM that controls spark, not the PCM. GM says this allows the engine to start in one sixth the time versus letting the PCM figure out where the engine is in the timing cycle and starting it. At 400 RPM the engine is considered started, a signal is sent back and forth on these 2 circuits, and control of spark is transferred to PCM. An open or short in either of these 2 circuits will prevent that from happening, a code 43 will be set, and the ignition remains in a fixed mode at 10 BTC. In this mode the manual goes on to say that if you could get the injectors to work in some fashion, in theory, the engine will run without the PCM even being connected, but with very noticeable performance issues.
Thoroughly check the wiring bundle, it has caused me a lot of issues in the past. Also all wiring associated with cam and crank sensors, spark plugs etc. If that checks out, then in all likelihood, your ICM needs to be changed