Publication | Legaltech News
Nervous System: 32-Bit Computers Dancing Backwards in High Heels
David Kalat
Fantastic technological leaps forward may be possible, but they leave behind a frustrated base of users invested in abandoned tech. One such example in the 1970s was the rise of 32-bit memory structures, which threatened to render the existing suites of 16-bit-based software code obsolete.
One challenge posed by the steady advancement of computer hardware and software design is how to maintain reasonable continuity with the existing state of technology. Fantastic leaps forward may be possible, but they leave behind a frustrated base of users invested in abandoned tech.
An example of this crossroad occurred in the 1970s with the rise of 32-bit memory structures, which threatened to render the existing suites of 16-bit-based software code obsolete. That is, unless there was a way to design a system that could switch back and forth between 16- and 32-bit structures. The engineers at Data General had such a solution, a way to elegantly switch modes. The only problem was that they were forbidden from using it.
This dilemma arose within a specialized subset of the computer market popular in the 1970s. The “minicomputers” of the era compressed the enormous costs and physical demands of the state of computing into much smaller packages. Doing so entailed certain design compromises.
For example, back then the length of a computer “word” was 16 bits—that is, two 8-bit bytes paired in sequence. To manage such a word in any operation meant loading both parts into the active memory. In turn, the active memory was divided up into addressable units called registers or addresses. The usual way of doing things (and how it is typically handled today as well) was to assign a register address to each of the available 8-bit bytes on the RAM memory chip. This approach is called byte-addressable memory. In this approach, a 16-bit word would occupy two addresses.
To facilitate greater power with smaller hardware, though, minicomputers just assigned addresses to each 16-bit word. The same amount of memory could now accommodate twice as many discrete words at a time. It was a trick that fit more addresses into the available space, but meant that individual bytes within a word could only be accessed indirectly. The computer would have to go first to the word address, then scan within it. In a 16-bit word environment, the trade-off was minor and offered advantages to the hardware manufacturers.
But as 32-bit architecture evolved, this gimmick posed a problem. An architecture built for word-addressing on 16-bit words would be at a loss with 32-bit words. Engineers could rewrite the system for 32-bit words, but the resulting computer would be unable to use anything built for the 16-bit word environment. Switching to 32-bit computing would result in a better and faster new computer, but users would have to replace their software and reenter their data.
Unless, that is, you could make the system switch between the two worlds. If the same hardware could operate as both a 32- and 16-bit computer at various times, on demand, then the newer, faster computer could also be backward compatible with any software already deployed.
The digital gear shift that allowed the operating system to switch between 16- and 32-bit words was called a “mode bit.”
Data General had a team of engineers in North Carolina tasked with building the new mode-bit-enabled 32-bit minicomputer. Internally, the project was called “Fountainhead.” Work began in 1975, with the intent to have models available for sale by 1978. But work on Fountainhead bogged down; as late as 1981, with no viable product yet completed, the team leaders were projecting still years into the future for a sale date. By then, of course, the customer base had moved on.
Thankfully for Data General’s prospects, that customer base did not have to move very far. While the North Carolina team struggled to get its 32-bit architecture to function, a team of rogue engineers in Massachusetts developed a new generation of 32-bit computers based on the popular line of Eclipse minicomputers.
They did so largely in secret. When the team had set out to upgrade the Eclipse to the new standard, company management forbade them from using the mode bit. That feature was reserved for Fountainhead. The team was firmly denied every time it requested permission to even approach a mode-bit-style design.
A famous saying notes that Ginger Rogers did everything Fred Astaire did, but “backwards and in high heels.” If the Eclipse team was going to get a 32-bit computer to market, it would have to find a way to achieve backward compatibility, while dancing backwards in high heels.
The Eclipse team plowed ahead with an ingenious solution. Their design simply padded 16-bit words with zeroes to fill the register when needed. The Eclipse MV/8000, affectionately known by the codename “Eagle,” debuted in 1980 with full backward compatibility to the 16-bit predecessor Eclipse line.
The popularity of the Eclipse MV/8000 helped Data General survive the turbulence of the early 1980s. In time, minicomputers were supplanted by even smaller “personal” computers, and Data General would be subsumed into EMC Corporation in the late 1990s. Many of the brilliant engineers who created the machine left the company soon after the Eagle launched in 1980. Tracy Kidder set out the story of the scrappy skunkworks project that saved Data General in his Pulitzer-prize winning nonfiction novel, The Soul of a New Machine, published by Little, Brown and Company in 1981.
The views and opinions expressed in this article are those of the author and do not necessarily reflect the opinions, position, or policy of Berkeley Research Group, LLC or its other employees and affiliates.