segmented memory models

Tony Duell ard at p850ug1.demon.co.uk
Mon Aug 4 17:25:42 CDT 2008


> And, in case you're worried that hardware had to be adjusted depending 
> on what address bus used, it didn't.  The CPU asserts a I/O page line 
> on the bus whenever there's an access to the I/O page of address space, 
> So, the device only needs to check 12 address lines (memory accesses 
> are 16 bites wide) and the I/O page line, regardless of how wide the 
> address bus on the CPU is.

Actually, that's only yhe case on the Q-bus, which could have either 18 
or 22 address lines (was there ever a version that only drove 16 address 
lines?)

On the Unibus, there are always 18 address lines, and devices check all 18
of them. On machines without an MMU, or with the MMU turned off, the top 2
address lines (A16 and A17) are asserted if all of A13...A15 are 1's. 
AFAIK, that was the case from the very first PDP11, which is the whole 
point of this discussion, the machine was designed with the future in 
mind  Unibus machines with 22 bit addressing have a special memory bus 
(not UNibus) with 22 address lines, and a second, simple, MMU, called the 
Unibus Map, between the 18 Unibus address lines and the 22 memory address 
lines for DMA. 

-tony


More information about the cctalk mailing list