9

The power of a computer is often effectively determined by the size the RAM can be expanded to. In many cases, this was even more important than CPU speed: Memory-limited workloads

In the early days, before SIMMs and DIMMs, this must presumably have been limited by the number of RAM chips that would fit on the motherboard. There were exceptions, e.g. the Atari 8-bits and Vic-20 would take RAM on cartridges; the IBM PC would take it on expansion cards. But not every computer could do that.

I am surprised, then, that one quantity I have never seen mentioned as a limiting factor is motherboard size. Looking at photos of e.g. the IBM PC motherboard, it looks pretty crammed. The BBC Micro and Vic-20 look like they could have been bigger. The ZX Spectrum would have needed a bigger case; how much would that have added to cost?

What was the largest practical motherboard size in the seventies or early eighties?

  • 1
    It's not like it was impossible to put more than one circuit board in a computer. – user253751 Aug 26 '18 at 8:56
  • 1
    After NUMA is introduced, the amount of memory slots per mother board increased all of a sudden. Now you can easily have 8 DIMMs per CPU and 4 CPU per board, and 32 memory chips per DIMM. And that is a lot of memory. – user3528438 Aug 27 '18 at 1:55
  • 1
    By 'early computer' you appear to mean early 1980s, which by my calendar is 'middle period'. Can you clarify your scope? Are we talking about 'personal computers'? Otherwise, of course, if you want more memory you can just add another 6' tall cabinet :-) – another-dave Jun 9 at 12:47
  • In the early days, RAM was on magnetic drums or perhaps used mercury delay lines. – JeremyP Jun 9 at 18:45
17

Even for single board computers (SBCs), capacitive loading of the DRAMs chips or SIMMs and timing delays thru any needed (re)buffering could limit DRAM capacity before board size (without extra chips or ASICs for distributed memory control and fan-in, as is done for the scale-out of big IBM Power 9 mainframe systems. Projects with memory limited workloads often purchase “big iron”.)

Also, large motherboards in pizza box form factor systems were common for (expensive) minicomputer workstations around the 1980’s. But for high volume consumer systems, there were significant manufacturing cost savings in using the smallest possible PCB that would hold just the required components for the base model(s).

  • Ah! so how many DRAM chips could you have on the board before that becomes an issue? And what sort of cost was there per square foot of PCB? Was the cost linear in area, or exponential like for chips, or something else? – rwallace Aug 25 '18 at 0:07
  • 1
    Sort of along these lines I used a computer that had an expansion box, separate from the main workstation, full of RAM cards. It was about the size of a mid-tower case and had a total of 4M RAM. There was pretty big cost to having the RAM located in another case connected by a cable like this, an extra two wait states on memory accesses. – Ross Ridge Aug 25 '18 at 0:23
  • 1
    Every row of DRAM cuts into timing margin, either slowing memory access times or requiring a faster grade of chips (including the processor). A budget is usually done before a system is designed and part selection and PCB layout. Simply making a bigger PCB with more sockets is not a cost free degree of freedom. Every penny counts when potentially manufacturing a few million units. – hotpaw2 Aug 25 '18 at 0:59
  • I worked at Unisys for a short period of time and saw some quite large motherboards in systems we had in there for repair. Multi-processor and tremendously impressive memory banks. They were around, just on the high-end machines that home users were pretty unlikely to ever see. – Brian Knoblauch Jun 11 at 13:37
14

To start with, a computer, especially back then, didn't necessary have a motherboard. Think S100 or Multibus. The SOL as motherboard based computer was an exception among S100 systems – and even it needed a separate memory board to be more than a limited terminal.

In fact, looking even a little bit further back, we'll see that not only motherboard based systems where virtually unknown, but memory was never confined to such. After all, how to put a core stack on there?

Single board computers where a development that only started in the mid 1970s when microprocessors became available. And even then, bus systems with CPU boards and separate memory boards where the norm.

Altair's S100, Intel's Multibus I, SWTPC's SS50, OSI's model 300/500 bus, Motorola's EXORciser, Digital Group's bus system and so on. Even first single board computers which could work as stand alone systems like SDK80 or MEK6800D1 did feature their company's system bus.

When independent and consumer focused machines became available the usually only had a minimal RAM capacity on board and featured either some expansion bus or a special memory connector for machine specific memory expansions.

The Apple II was eventually the first machine that left that path by offering full memory expansion on the mainboard. "Full" means here up to what the CPU could handle by default. At that time 16 Kibit RAMs where available and 48 KiB was just 24 chips (the rest was occupied by ROM and I/O anyway). Not much compared to what the 'remaining' components occupied. Like with the IBM PC, the decision for the RAM size possible was more driven by the assumed market, than any size limitations.

The size of RAM considered useful and/or needed depends a lot on the target market and application. A desktop machine didn't need much more than 64 KiB until the mid 1980s. A mini in contrast did – but then again, it wasn't motherboard based. Take this nice Olivetti M20 board of 1982. Clearly an upperclass (Z8000) workstation. The motherboard featured 'only' 128 KiB RAM (2 rows of 64 KIB). It wasn't really due to the board size (adding a few more rows of symmetric RAM would have been easy), but the assumption that 128 KiB is enough for most use cases. For expansion up to 512 KiB the memory bus could be used (black connectors).

enter image description here

But not every computer could do that [take memory on expansion cards].

The number of machines totally without a way for memory expansion was rather limited and usually within the extreme low cost segment – then again, even the ZX80 could do so. The only one that limited way beyond what's possible that comes to mind is the Atari ST series and the early Macs. Here again it was a use case decision – and a very specific market. No argument for a general case.

Bottom line: You haven't heard about, as it wasn't an issue – except in terms of money to pay for memory expansions.


On a side note, even before 1980 did mainframes feature backplane boards with sizes of 60 x 100 cm (make that 2x3 foot) – more than big enough for any mainboard an evil genius could have dreamed of in the late 70s. As a desktop computer its case may just have been less handy :))

So PCB technology wasn't stopping anyone from making huge mainboards filling 64 KiB with 2102-price in contrast would have (not to mention the needed PS :))

8

There were some large motherboards. However, a LOT of computers relied on daughterboards to carry the load.

In the case of S-100 machines (from the original Altair on up) the CPU was simply one of the daughterboards and the motherboard was just for signal distribution, and RAM took one or more daughterboards.

In the case of the Apple ][ and the IBM PC, almost anything - disk controllers, video cards (always in the case of the IBM PC, for more advanced than the standard in the case of the Apple ][), RAM expansion, etc. could go on daughterboards.

So the motherboard size was actually not that much of a limitation. The exceptions were machines like the C64, TRS-80, etc. that had (typically) just an expansion bus without an actual card cage.

It was a long time before I saw machines in the IBM compatible world that had video, network, HDD & FDD controllers all on the motherboard the way they are typically designed today.

  • 1
    Related - a problem with a board means just that board can be replaced. That would make compartmentalisation preferable for simple cost reasons. – Criggie Aug 26 '18 at 10:06
3

In the early days, before SIMMs and DIMMs, this must presumably have been limited by the number of RAM chips that would fit on the motherboard.

No. While some early microcomputers such as the KIM-1 were single-board computers, these were usually designed for experimentation or training. More commonly early microcomputers, like the minicomputers that preceeded them, consisted of a backplane into which one could plug multiple boards, including memory expansion. For example, the Altair 8800, generally considered to be "the spark that ignited the microcomputer revolution," also introduced the S-100 bus that went on to become a standard for many microcomputers (using several different CPUs) for many years.

By 1977 there was a wide variety of memory boards available and designs that allowed quite massive (for the time) amounts of memory. For example, by October 1977 IMSAI was running advertisements for "the Megabyte Micro", with sixteen 64 Kbyte memory boards in an S-100 bus:

The Megabyte Micro

It's unlikely very many of these full megabyte systsems were sold, as the memory boards alone cost more than $40,000 and there would have been very little microcomputer software at the time that could take advantage of that much memory. But it was possible, if you needed it.

As the subsequent "home computer" age bloomed, it became more common for computers to be sold as less-expandable but easier to set up complete units. But there were still plenty of business systems based on the S-100 bus, often custom-built by systems integrators.

Significantly larger motherboards in single-board computers did appear in the early to mid 80s, and part of the reason was to allow a reasonable amount of memory on the single board. One example is this Sun 2/50 workstation:

Sun 2/50

The case below the monitor usually contained a single board, a significant portion (at the upper right) of which was devoted to memory:

Sun 2/50 mainboard

But it was quite normal to use the same and/or similar boards in a multi-board "deskside" chassis if one needed more memory, disk or other features. This is a (poor) photograph of a Sun 3 deskside system, using similar boards to the one above, seen from the rear with a board sticking out:

Sun 3/160 rear

1

Until bank-switching techniques arrived, the real limiting factor for system RAM was the maximum address space that the CPU could address. In the 8-bit era, this was usually 64 kB, although some more restrictive CPUs (like the 6507 used in the Atari 2600) had fewer address lines (the 6507 could only address 8kB of memory).

ROM and I/O chips would consume some of this space, so typically, that left 48 kB of practical RAM space for a simple 8-bit computer. Even with bank switching, a typical 8-bit CPU can only address 64 kB of RAM, although in this configuration it won't have access to I/O or any ROM chips. (The Commodore 64 is a great example of a machine with such a configuration; the RAM under the I/O or ROM can only be read when the overlying I/O or ROM is switched out. RAM under ROM can be written to always, but RAM under I/O needs the I/O switched out first.)

The Commodore VIC-20 needed expansion cartridges for RAM primarily because the motherboard uses low-density RAM chips that take a lot of space. Modern RAM expanders for the VIC use few chips, because higher-density RAM is not expensive now, of course.

So certainly, practical considerations could limit how much RAM is put on a motherboard, but until you got to systems based on CPUs like the 8088, which could take 1 MB of RAM, the CPU addressing limitations are probably much more limiting than the physical space requirements to take the maximum addressable RAM.

  • 1
    There's a reasonable argument that "bank-switching techniques" were there from the beginning. You need to use address decoding to enable/disable different devices in order to do I/O on CPUs that have only memory-mapped I/O such as the 6800, and even for CPUs with I/O instructions, you're using the same technique decoding the IORQ line, which you can think of as another address line. – Curt J. Sampson Jun 11 at 1:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.