Sophie Wilson is a highly talented British Computer Scientist, under-recognised outside the ARM and Acorn community. She is responsible for some ingenious innovations in her field in the past twenty years, including the immensely successful ARM processor's instruction set, the operating system for the BBC Micro, and the technically unsurpassed BBC BASIC language and interpreter.
Feeding Cows and Making Acorns
As a young Mathematics and Computer Science student at Cambridge University, Sophie Wilson (born Roger Wilson) designed an embedded system for a Harrogate company in the summer of 1977. She based it on one of her previous home-brew designs, using a 6502 processor, a number pad, 7-segment LEDs, and a non-volatile EEPROM. The system was to be used by farmers to regulate cow feed, and as such had to be robust and free of bugs. The "most hair-raising thing", she recalls, was the implementation of the cow feeder's program: "I didn't own a PROM blower, so I had to write the whole thing by hand and send it off to a company, who hand entered it into a machine and sent me back the PROM. That worked first time."
The following summer, the cow-feeder project begat the hardware for one of the first British home-build microcomputers, the Acorn System 1. This was "very much Sophie's baby", recalls Steve Furber, another member of the Acorn microcomputer team. "The origins of the System 1 were in the Science of Cambridge MK14. I built the first prototype MK14 by hand", Furber continues, "and Sophie looked at it and said 'I could do better than that!', and went away and did so."
Acorn's first computer was very successful: sales in the region of 10,000 at £200 each led to Systems 2, 3, 4, and 5, and eventually the pre-built Acorn Atom. The home-market-aimed Atom led to a similar new project, codenamed Proton; while Wilson was again instrumental in its creation, this time around it was Steve Furber's project. The Proton was still in the design phase when Acorn were approached by the BBC, who wanted a third party to build them a home computer to their specification as part of their computer literacy project.
Birth of BBC BASIC
The BBC's design requirements were matched and exceeded by the Proton project, but Acorn had no working hardware to show at the time. Acorn's engineers worked non-stop for a week to have something to show their client, and at 7am on the morning of the presentation managed to get the Proton to power on and display text in their high-resolution mode. The BBC were impressed, and Acorn won the commission.
One of the principle requirements of the BBC specification was for an easy to learn, yet structured and powerful programming language, which must be able to make full use of the hardware available. Although she was still highly involved as a hardware engineer, and a key contributor to the operating system, this would be Wilson's most important task in the project. She chose to create a dialect of the popular (if much derided) BASIC language, which would be interpreted instead of compiled, and also function as the interactive user interface to the computer.
BBC BASIC, as it came to be known, is widely acknowledged as the best BASIC implementation there has been. It facilitates structured programming, has excellent hardware interfacing instructions, allowing easy access to the graphics hardware in particular, and has an excellent inline 6502 assembler, which was widely used in BBC Micro software. However, by far the most important aspect of the BBC BASIC language was its astounding efficiency.
Wilson's interpreter used innovative synergistic caching technology, meaning that functions and procedures were only compiled once per runtime, and the resulting machine code was called thereafter. This, among other features conceived by Wilson, allowed BBC BASIC to compete with compiled and semi-compiled languages in terms of speed, and completely blew other interpreters out of the water.
The Acorn RISC Machine
The BBC Micro family of computers were a great success for Acorn, selling over one million units from initial predictions of 12,000. In 1983, their goal was to produce an entirely new generation of machines, based on a modern and future proof architecture. The decision adopted by the design team was that their only realistic option was to design their own processor from scratch: the ARM.
Acorn's two key design engineers on this project were again Steve Furber and Sophie Wilson. Furber concentrated on the hardware architecture, while Wilson designed and refined the instruction set. Acorn's CEO at the time, Hermann Hauser, recalls that "while IBM spent months simulating their instruction sets on large mainframes, Sophie did it all in her brain."
After several years' development, the Acorn Archimedes was the first fruit of the ARM project. Wilson was again involved heavily in the operating system, porting BBC BASIC to the new architecture, and optimising it further still. Similarly to the BBC Micro, much of the most successful RISC OS software was written in BBC BASIC and ARM assembler, an excellent compromise between rapid development and high performance.
BASIC was not Wilson's only well-known contribution to RISC OS software: she diversified into image processing with the image processing application, ChangeFSI. The FSI suffix stands for Floyd-Steinberg Integer, because the initial entire purpose form the program was to implement a high-speed version of the Floyd-Steinberg dithering algorithm using only integer operations.
This led to another project from Wilson, Acorn Replay, which amazed both Acorn users and RISC OS licensees by allowing full-speed playback of AVI and MPEG video, on hardware as slow as a 25MHz ARM3 processor with no floating-point hardware. Replay was implemented in several modules to be extensible, allowing for additional third-party playback formats to be added at a later date.
After years of losing money selling expensive computers to an ever-shrinking market, Acorn eventually caved in in 1998 and closed its workstation division. At the same time, it renamed itself to Element 14 (silicon, get it?) and focussed on set-top box software and custom hardware design. In November 2000, Element 14 were acquired by Broadcom's DSL division, where Sophie Wilson currently holds the title of Chief Architect.
Sophie's home page is at http://www.sophie.org.uk/, which contains pages on her drama group, various snapshots, and a page on her quite severe problems with lower back pain. She can still occasionally be spotted posting to USENET groups comp.dsp and comp.sys.acorn.programmer, among others.
"An Interview with the Designer", Mike Cowlishaw, 2002
Electronics Weekly, 29 April 1998