At the end of Chapter 3, starting when Wozniak was in high school (class of 1968)
“I got manuals for minicomputers from Varian, Hewlett-Packard, Digital Equipment, Data General, and many more companies. Whenever I had a free weekend, I’d take catalogs of logic components, chips, from which computers are made, and a particular existing computer description from its handbook, and I’d design my own version of it [on paper]. Many times I’d redesign the same computer a second or third time, using newer and better components. I developed a private little game of trying to design these minicomputers with the minimum number of chips.”
After a while,
“I was now designing computers with half the number of chips the actual company had in their own design, but only on paper.”
Can’t tell what he means – his designs had half the chips because he was using better chips, or was he using the same chips twice as efficiently?
I agree, it isn’t clear. My take, based solely in the excerpts you quoted, is both: that he designed (or perhaps only identified) efficiency improvements first AND updated components as they became available. But someone who can do one can do both.
From other sources, it seems he used the same tech but made it more efficient. For example, could he redesign it to make memory usage more efficient so you need fewer RAM/ROM chips. Or could you have one timer chip instead of two. Or we can accomplish what this chip does by breaking it up into these other three chips. Things like that.
Mapping Boolean logic functions to the minimum number of discrete logic chips (for example 7400 series) was not a trivial exercise. A minimum NAND realization would be fairly straightforward using Karnaugh maps, but minimizing to a larger number of available logic functions which was growing every year is not nearly as straightforward. 7400 series logic used to include a lot of combinatorial chips line AND-OR-INVERTS of various sizes. Remember this was decades before logic systhesis tools.
Optimizing for fewer chips would not necessarily mean optimizing for highest performance both in speed and cost. The latest and greatest chip might very well cost more than the equivalent function implemented with two or three separate chips. If the logic isn’t on the critical timing path you would use the cheaper implementation even if it is slower.
A manufacturer will need to freeze the design for manufacturing. You can’t be constantly redesigning your board just because some newer chips come out - you design the newer chips into the next generation. Woz could change his paper design as often as he wanted. A manufacturer needs to run a given design long enough to recoup the development costs.
IMO mostly this. In that era progress from chip generation to generation was fast and large. Such that as any given board was first being delivered to customers it was already made at least partly of obsolete components.
Woz was a very bright, skilled guy. But I wouldn’t read mad genius skillz into his being able to iterate untested unbuilt designs more quickly than made sense for a factory seeking a profit.
On the other hand, “development costs” for the big manufacturers meant paying a whole big team of engineers to figure out how to arrange the chips. Woz, by himself, was coming up with designs. In other words, if those companies had Wozniak working for them, those development costs could have been lower.