PDP-11 addressing question and a model round-up

Vintage Computer Festival vcf at siconic.com
Mon Feb 14 11:21:08 CST 2005


On Mon, 14 Feb 2005, Paul Koning wrote:

> >>>>> "Vintage" == Vintage Computer Festival <vcf at siconic.com> writes:
>
>  Vintage> I didn't want to spend time researching this since it's not
>  Vintage> that important and I figure I can get a quick answer here.
>
>  Vintage> With the MXV21 controller I have, I needed to poke words
>  Vintage> into its registers to format a disk.  The manual instructed
>  Vintage> to poke the words in the 177xxx range.  But when I tried
>  Vintage> this nothing happened.  I scratched my head and then
>  Vintage> remembered from a previous helpful message someone talked
>  Vintage> about how the addresses also map to higher memory sometimes.
>  Vintage> So I tried poking the words in the equivalent 377xxx range
>  Vintage> and it worked.  What's going on here?
>
> It's very strange that 377xxx would help, though certainly 777xxx
> should.

Oops, that's what I meant.  In fact, I originally remembered it as being
777xxx but then that didn't seem right to me when I wrote that.

> Addresses that appear on memory and I/O buses are either 18 or 22
> bits.  Originally they were 18 bits.  Also, at first (11/20, 10, 05)
> the relationship between program and physical address was fixed: for
> program addresses 176000 and up, you'd get physical 776000 and up.
> All addresses below 176000 would come across unchanged.

So your programs access 176xxx ranges but they are physically mapped to
776xxx by the processor?

> Life gets more complicated in 22-bit unibus machines, because there
> you have 22 bit physical (memory) addresses, yet 18 bit addresses on
> the I/O bus (the Unibus).  So those 18 bit addresses are virtual, they
> are mapped to physical addresses via the Unibus map.  Q-bus systems
> avoid this hassle by using full 22 bit physical addresses on the I/O
> bus.  (And Unibus systems do that partway -- Massbus adapters hook
> right into the memory so they handle 22 bit addresses directly, not
> via the Unibus map.)

So then basically, the difference is the 11/23 I was using before had
18-bit addressable memory, and the 11/23+ I'm using now has 22-bit.

Got it.

-- 

Sellam Ismail                                        Vintage Computer Festival
------------------------------------------------------------------------------
International Man of Intrigue and Danger                http://www.vintage.org

[ Old computing resources for business || Buy/Sell/Trade Vintage Computers   ]
[ and academia at www.VintageTech.com  || at http://marketplace.vintage.org  ]




More information about the cctalk mailing list