1 Potential Design Improvements for the Acorn Electron
2 ====================================================
3
4 The Acorn Electron was designed to be a variant of the BBC Microcomputer that
5 was intended to be simpler, easier and cheaper to produce whilst retaining a
6 degree of compatibility and offering many of the same features, principally
7 the wide range of graphics modes, BBC BASIC, and extensible hardware and
8 software capabilities. Upon its introduction in late 1981, the BBC Micro
9 competed favourably against its immediate contemporaries, such as the ZX81 and
10 VIC-20, as well as machines introduced slightly later, such as the ZX Spectrum
11 and Commodore 64. By producing a less expensive machine that retained certain
12 key features, the motivation was to bring BBC Micro technology to bear on the
13 lower end of the home computer market, albeit approximately two years after
14 its initial introduction.
15
16 Unfortunately, various features were omitted from the Acorn Electron that made
17 it less competitive than it could have been against a steadily improving range
18 of competitors: multi-channel sound support, MODE 7 teletext, support for
19 relatively smooth horizontal hardware scrolling (and other display control
20 features), and the double-speed bus with interleaved CPU and video access.
21 More RAM would also have been beneficial, although costly at the prices of the
22 day. Such deficiencies outweighed the significant benefits of substantial
23 software compatibility, and some of them effectively curtailed that
24 compatibility by making even reasonably well-written software titles
25 effectively unusable, particularly games relying on the BBC Micro's hardware
26 scrolling capabilities, including "official" Acornsoft titles.
27
28 In hindsight, numerous features could be suggested that would make the
29 Electron more competitive, but many of these features would incur a
30 substantial cost. For example, giving the Electron 64K of RAM would have
31 increased the price substantially. Introducing the double-speed bus and faster
32 memory may also have increased the price in a prohibitive fashion. Thus, it
33 becomes worthwhile to consider minimal alterations to the machine's
34 specification that offer the greatest benefits for the least additional cost.
35
36 Improving System Performance
37 ----------------------------
38
39 The ULA and the CPU share access to the RAM, meaning that when the ULA needs
40 to fill the display, the CPU will either take it in turns with the ULA to
41 access RAM or even relinquish access to the RAM for the entire duration of the
42 visible portion of a display line. However, even outside these periods of
43 contention, it appears that the CPU still only accesses the RAM at 1MHz, even
44 though the RAM can sustain 2MHz access (and indeed does when both the CPU and
45 ULA access it in turns). If the CPU were able to entirely take over the RAM
46 outside display periods (just as the ULA can do) and to access it on every
47 2MHz cycle, performance would be significantly improved: the CPU would be able
48 to do twice as much work in the largest-memory screen modes, for example.
49 Unfortunately, the RAM access mechanism, although supporting 2MHz operation,
50 does not do so in a way that is compatible with the CPU at 2MHz.
51
52 Although RAM is accessed by the CPU at 1MHz, ROM is accessed at 2MHz. Thus,
53 deploying software that runs from ROM can potentially provide significant
54 performance benefits. Since the unexpanded Electron provides no convenient
55 means of installing ROM-based software - the Plus 1 and other expansion units
56 offered ROM cartridge slots, and various expansions provided ROM sockets - the
57 improved Electron would ideally need to offer a ROM cartridge slot as part of
58 the unexpanded machine.
59
60 A side-benefit of adding this feature to the base machine would arguably be an
61 increased demand for cartridge-based software, potentially at a slightly
62 higher price and also offering additional hardware features if necessary, thus
63 making any cost incurred in the manufacture of the base unit more bearable.
64 And in school environments where unexpanded BBC Microcomputers were often used
65 with tapes, the use of ROM cartridges for instant and reliable loading of
66 software would have given the Electron a practical advantage: it would be a
67 cheaper machine that could later be expanded with disk drives (the other main
68 way of providing fast and reliable storage) while still offering a substantial
69 saving over the BBC Micro.
70
71 The Slogger/Elektuur turbo board modified the system to permit the CPU to
72 access the bottom 8K of RAM without interruption by the ULA. This feature,
73 already known at Acorn during the Electron's design period, permitted
74 substantial improvements to performance and could also be incorporated into an
75 improved Electron, although it presumably needs motherboard-level changes.
76 Such turbo boards may have employed an additional RAM chip to avoid
77 complicated changes to the memory access logic, since the ULA appears to
78 access four memory chips at once to provide each byte, and it is therefore not
79 possible to just "borrow" one of the chips in order to isolate 8K of RAM for
80 direct access by the CPU.
81
82 Being able to disable the ULA's access to RAM for a period of time while also
83 disabling the video signal, effectively achieving the same as blanking the
84 palette, would be a very simple but useful enhancement that would speed up
85 programs needing to render large amounts of non-real-time content to the
86 screen. This would also have been beneficial for display expansions connected
87 to the main expansion bus, along the lines of the Jafa MODE 7 adapter, where a
88 peripheral would maintain its own framebuffer by registering writes on the bus
89 to the display memory region.
90
91 Of course, the economic considerations related to the choice of RAM products
92 could be revisited, reviewing the assumption that the products chosen would
93 have significantly lowered the total production cost. This might indicate that
94 different choices would have been viable. For example, instead of employing
95 1-bit RAM chips in groups of four, perhaps two such groups might have been
96 employed, with the resulting memory architecture being simplified, the
97 performance requirements for the ULA being reduced (perhaps employing 8MHz
98 cycles instead of 16MHz to coordinate signalling, although retaining 16MHz
99 cycles for the MODE 0 pixel clock, potentially reducing power consumption and
100 increasing yield and reliability), and the corresponding component cost
101 increase proving to be less than projections made early in the design process,
102 particularly if slower (and smaller) RAM chips became usable.
103
104 In the document "One of the Most Popular 65,536-Bit (64K) Dynamic RAMs The TMS
105 4164", a note is made of 4164 RAM prices dropping from $25 to $5 per unit in
106 1981. Perhaps the initial pricing influenced the design process, anticipating
107 costs of $100 for 32K of RAM and the need for a reduced number of memory
108 chips. Had the subsequent pricing been noted or anticipated, a decision might
109 have been made to employ eight 64Kbit chips, which would have afforded
110 additional capabilities due to the doubling of RAM (such as shadow memory) for
111 less than half of the originally anticipated memory costs. (Naturally, eight
112 32Kbit memory chips, which might also have exhibited similar price reductions,
113 would potentially have offered the delivered 32K for an even smaller fraction
114 of the anticipated costs.)
115
116 Improving Display Capabilities
117 ------------------------------
118
119 Perhaps the simplest improvement to the display capabilities would be to
120 permit the RGB output levels to hold intermediate values between the current
121 high and low states, presumably enforced by various circuits. This would
122 permit the choice of colours beyond the primary and secondary colour selection
123 at a cost of some extra palette bits in the ULA and an adjustment to the board
124 circuitry and would only benefit UHF and colour composite video displays, but
125 the latter limitation might not be a significant issue for the majority of the
126 intended audience.
127
128 Supporting Local Area Networking
129 --------------------------------
130
131 The Electron was mostly aimed at the home market, but a cheaper computer would
132 have been very attractive for schools, especially those wanting to purchase a
133 number of machines for networking. Having an option available in the standard
134 Electron would have given such customers a cheap Econet terminal, albeit
135 without the MODE 7 capabilities of the BBC, whilst ignoring the requirement of
136 reliable, fast storage that standalone machines need to have in such
137 environments. With content available on demand over the network, the need for
138 low-memory screen mode usage - in order to retain as much content in memory as
139 possible - would also be diminished.
140
141 Simplifying the ULA
142 -------------------
143
144 An apparent motivation in the design of the Electron was to reduce the chip
145 count. However, this then requires that the ULA perform a range of different
146 roles. Some roles, such as handling cassette input and output, might have been
147 natural for the ULA given Acorn's previous designs, but others, such as
148 generating sound, arguably demand the integration of a lot of additional
149 functionality unless the capabilities are significantly reduced. Obviously, in
150 the Electron, the sound capabilities were reduced to a point where they were
151 considered a weakness of the machine.
152
153 The design of the Commodore Plus/4 also sought to increase integration -
154 combining the sound and video chips in that case - but this was arguably more
155 feasible given the fabrication technology available within Commodore.
156 Meanwhile, Acorn might have been better off retaining a separate sound chip
157 and designing the ULA to interface with it instead.
158
159 About this Document
160 -------------------
161
162 The most recent version of this document and accompanying distribution should
163 be available from the following location:
164
165 http://hgweb.boddie.org.uk/ULA
166
167 Copyright and licence information can be found in the docs directory of this
168 distribution - see docs/COPYING.txt for more information.