Question: The system bus of the IBM PC had 8 data lines and 20 address lines, in a logical correspondence to the 8088 CPU.

The AT added a second inline edge connector to expand this to 16 data lines and 24 address lines, again in a logical correspondence to the new 286 CPU. And certainly the wider data bus made the system run faster.

But I'm wondering were the extra address lines really used? Of course there was the infamous problem with the 1-megabyte address space limit being baked into the API by the time the AT came on the scene, but it seems to me there is another issue.

Most of the address space in an 8088 machine would naturally enough tend to be used for RAM. An IBM PC could take up to 64K on the motherboard, but you could stuff it with memory cards to bring it up to 256K, run Lotus 1-2-3 and turn your spreadsheets into graphs that made you look good in presentations, and that was the combination that made the IBM PC decisively superior to the Apple II in terms of what you could do with it, never mind the IBM nameplate.

But the SIMM was invented in 1982, two years before the AT came out. So in the 286 era, you didn't need to put memory cards on the system bus anymore. It was still used for lots of other things, of course. But none of them consumed address space wholesale the way RAM did.

So: did anything ever actually use the extra address space of the 16-bit ISA bus?

Answer: 
Yes, there were 16-bit ISA cards which used the extra address lines; for example IBM’s various [memory expansion options](http://www.minuszerodegrees.net/5170/cards/5170_cards.htm), most of which could be configured to provide extended memory beyond 1MiB. You can see the address lines referenced in the corresponding schematics, *e.g.* for [the 512KiB/2MiB expansion board](http://www.minuszerodegrees.net/oa/OA%20-%20IBM%20PC%20AT%20512KB_2MB%20Memory%20Expansion%20Option.pdf).

(The PC AT didn’t have SIMM sockets on the motherboard; only the larger memory expansion options used SIMMs.)
> 
> So in the 286 era, you didn't need to put memory cards on the system bus anymore. 
> 
> 
> 

There were a number of driving factors that decoupled memory expansion from the ISA expansion bus, but early 286 machines did allow for it. The CPU bus, at CPU speed, was directly exposed on the slot edge connector, so memory on a card was the same as memory on the motherboard.

With respect to how that memory was used, keep in mind that the (by far) dominant OS on these machines was real-mode DOS, with its 20-bit address space. While there were ways to use more of the address space through protected mode, the 286 itself had its issues switching from protected mode to real, so there was a strong incentive to keep things accessible with 20-bits. (Hence EMS's paging, etc.) So I'd be surprised if, in the early days, there was much beyond memory boards for OS/2 and Xenix that used the extra address bits.

The rest of the story relates to the fact that it also became advantageous to run ISA slots for compatibility reasons at 8MHz. Running them faster could and would cause problems for some expansion boards. So, as PC's accelerated past 8MHz and ISA became more of a standard, the industry rather quickly decoupled CPU speed from bus speed. By the time the 486 rolled around, it wasn't uncommon for a CPU to have something like a 32-bit/33MHz connection to main storage and 16-bit/8MHz to I/O. (And maybe some kind of memory slot for adding extra memory.) Okay for CPU bound workloads, but not much else, and particularly video. 1024x768x8bpp is 768K, and that's a lot of data to stream over an ISA slot. Hence the initial push for VLB, and later AGP.

What started making higher address bits more useful was the more widespread emergence of 24 and 32-bit addressing in software. Windows 3.0 and Windows 95 did most of the the heavy lifting in the PC world in that regard.