segmented memory models

Jim Brain brain at jbrain.com
Mon Aug 4 19:09:12 CDT 2008


Tony Duell wrote:
> No, not as a single chip (AFAIK). But that doesn't stop somebody building 
> one if they want to.
>
> And AFAIK there is no MMU for the PDP11/20 (the first PDP11 
> implementation). And yet it got the extension of 16 bit program addresses 
> to 18 bit bus address 'correct' ((a) what all other 11's do and (b) what 
> was sensible to do given the fact that I/O devices sit at the top of the 
> address space)/
>   
I'll stand my ground.  The fact that one could build an MMU for the 8086 
is different from requiring one in the design of a PC that used the 
8086.  In fatc, who's to say the 8086 designer expected the computer 
developers to use an MMU?  It's not like they could force them to do so.

> No, I don;t think putting the reset at the top of memory was inherrently 
> silly. It's just that it doesn't seem to have served any real purpose. 
> The problems on the 8080 systems caused by having reset jump to location 
> 0 were really due to the fact that reset jumped to a fixed location, not 
> where that location was. So moving it somewhere else neither helped nor 
> hindered anyone.
>   
I think I made a convincing case in one of my previous posts.  I can see 
clearly that 8080 board designers would have carped quite a bit about 
having to map ROM into $000 for boot and wanted that to go away in the 
next iteration of the board.  Or, perhaps Intel just noticed where 
everyone was going, with RAM at 0, and wanted to help make it easier to 
design in the 8086 (I think this was at a time where Intel's dominance 
of the CPU market was not even on the RADAR, so I suspect they did what 
they could to ensure an easy design in.  To play that car further, by 
the time the 80286 came out (and to use your argument that Intel knew 
the 80286 was a sure thing), they probably didn;t care about it as 
much.  People would use the 80286 because it was the next in the 
lineage, and the x86 was a force to be reckoned with.  So, for the poor 
designer who no doubt raised the issue you describe, I can easily see 
them beaten down by the marketing and management types, saying, don't 
waste silicon on it, we *own* this market!

> And that's where I disagree. The addreess FFFF:0000 can _also_ be 
> interpretted as '16 bytes below the physical top of memory. Given that 
> the reset routine is likely to be in ROM, and given that contiguous RAM 
> is generally a good thing, IMHO it would have been better if the physical 
> address outputted by an 80286 for the first instruction after reset was 
> FFFFF0 (not 0FFFF0). One way to do this would have been similar to the 
> PDP11 I/O address trick (which is why I brought that up), namely that in 
> real mode, the 'extra' 4 address lines of the 80286 (over the ones of the 
> 8086) are all set to the same state and that state is the logical AND of 
> the top so-many-bits of the current segment register. 
>   
I really think compatibility concerns trumped the implementation of this 
idea. 

And, even if they truly should have implement the idea you describe, I 
just don't think it qualifies as "brain dead" that they did not.




More information about the cctalk mailing list