3 ms·
If your systems are designed for greater modularity, then it would be easier to replace board X version 2, in a vehicle that was manufactured when version 2 was
by logfromblammo 9y ago
If your systems are designed for greater modularity, then it would be easier to replace board X version 2, in a vehicle that was manufactured when version 2 was the production-ready part, with a board X hardware version 8, with firmware 8.0-2.2 installed to emulate the part that was shipped with the vehicle.
The important thing is that identical inputs yield identical outputs. The rest of the vehicle doesn't care what's in the black box.
Then you wouldn't have to warehouse old, obsolete parts. You just have to warehouse old, obsolete embedded-software developers. That's probably cheaper if you have enough volume.
Also, if your company is still programming in assembly instead of a higher-level language, such as C, which has been available for 45 years now, I can safely say you are all hoist on your own petard. If you really want reliability, there's always Ada. You can't expect the 80196 to stick around forever.
- bluGill 9y agoThe point is we need to design hardware version 8, that is not free. Our volumes are not very high: designing revision 7 in the actually lifespan now that we need version 8 means that the cost/per part of version 7 was a few thousand dollars for a board that costs ~$5 to manufacture. If we had known what part would be next version 7 wouldn't have used that part. The vehicle does not care what is in the black box, but that is only true once input/outputs are actually identical. It is .01 volts different has killed us in random failures. It is 1ms faster, is that better or now - in some cases that 1ms slower was depended on and we didn't know it anymore. We don't program anything new in assembly. However for a lot of old embedded controllers if it works don't break it. There are no known bugs with the old code. Suddenly the CPU isn't available and we have to create a new one. Marketing can't come up with any new feature that a new CPU would enable so it is strictly and engineering exercise.
- logfromblammo 9y ago> However for a lot of old embedded controllers if it works don't break it. If you don't maintain it, you are allowing it to break through neglect. That's like saying if the old oil works in an engine, you shouldn't bother changing it. It works great, right up until it doesn't, and then you have a bigger problem. Software development is an incurable disease. Once you start, you can't ever stop.