ArsTechnica is running a history of the Amiga, and in part 3, “The first prototype” they describe a really interesting “simulation” solution for the custom chips in the first Amiga. This is in 1982-83, and there are no VHDL or Verilog simulators, nor any other EDA tools as we know them today. Even if they were, the Amiga company would not have been able to afford them. So in order to test their design, the Amiga engineers built chip replicas using breadboards and discrete logic chips. All in all, 7200 chips and a very large numbers of wires. Quite fascinating stuff, and they did manage to interface the main 68000 CPU to the breadboards and get a fully functional if a bit slow simulation of a complete Amiga computer with all its unique custom chips.
Today, this feels like almost fanatical in its level of difficulty and effort and time. But when you think of it, many hardware and software engineers are struggling in the same way, trying to accomplish things for which they do not really have any efficient tools. Sometimes because there are no really good tools (as for example for finding parallelism in a serial software code), more often because they do not know of the good tools. Or most commonly, because they cannot get the budget to buy the good tools.
The hardware folks do seem to have mostly good tools these days, and the budget and knowledge to buy them. If nothing else, I guess this is because of the much greater cost of hardware and chip design respins. But software engineers seldom get to buy a 10kUSD or 100kUSD tool, even when it would save its own cost within a year.
Jack Ganssle had a good rant about this earlier this year at embedded.com:
“Why are you pounding that nail with a brick?”
“Hammers cost too much.”
For a startup with zero budget, this is understandable. But not in going concerns with armies of engineers and money in the bank. If there are tools that would help, do get them in the hands of your software people. The fewer Amiga breadboard prototypes people have to deal with, the better.
But I must admit doing a prototype that way sure must have given them a very very thorough understanding of their design. There is always some gain with the pain.