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, potentially reducing power
99 consumption and increasing yield and reliability), and the corresponding
100 component cost increase proving to be less than projections made early in the
101 design process, particularly if slower RAM chips became usable.
102
103 Improving Display Capabilities
104 ------------------------------
105
106 Perhaps the simplest improvement to the display capabilities would be to
107 permit the RGB output levels to hold intermediate values between the current
108 high and low states, presumably enforced by various circuits. This would
109 permit the choice of colours beyond the primary and secondary colour selection
110 at a cost of some extra palette bits in the ULA and an adjustment to the board
111 circuitry and would only benefit UHF and colour composite video displays, but
112 the latter limitation might not be a significant issue for the majority of the
113 intended audience.
114
115 Supporting Local Area Networking
116 --------------------------------
117
118 The Electron was mostly aimed at the home market, but a cheaper computer would
119 have been very attractive for schools, especially those wanting to purchase a
120 number of machines for networking. Having an option available in the standard
121 Electron would have given such customers a cheap Econet terminal, albeit
122 without the MODE 7 capabilities of the BBC, whilst ignoring the requirement of
123 reliable, fast storage that standalone machines need to have in such
124 environments. With content available on demand over the network, the need for
125 low-memory screen mode usage - in order to retain as much content in memory as
126 possible - would also be diminished.
127
128 Simplifying the ULA
129 -------------------
130
131 An apparent motivation in the design of the Electron was to reduce the chip
132 count. However, this then requires that the ULA perform a range of different
133 roles. Some roles, such as handling cassette input and output, might have been
134 natural for the ULA given Acorn's previous designs, but others, such as
135 generating sound, arguably demand the integration of a lot of additional
136 functionality unless the capabilities are significantly reduced. Obviously, in
137 the Electron, the sound capabilities were reduced to a point where they were
138 considered a weakness of the machine.
139
140 The design of the Commodore Plus/4 also sought to increase integration -
141 combining the sound and video chips in that case - but this was arguably more
142 feasible given the fabrication technology available within Commodore.
143 Meanwhile, Acorn might have been better off retaining a separate sound chip
144 and designing the ULA to interface with it instead.
145
146 About this Document
147 -------------------
148
149 The most recent version of this document and accompanying distribution should
150 be available from the following location:
151
152 http://hgweb.boddie.org.uk/ULA
153
154 Copyright and licence information can be found in the docs directory of this
155 distribution - see docs/COPYING.txt for more information.