[comp.arch] PDP-11 bus contention

ejp@ausmelb.oz (Esmond Pitt) (09/14/88)

Many years ago at a job interview, after I had claimed to know something
about the PDP-11, I was asked the following question:

	"What special measures are taken in the PDP-11 software _and
	hardware_ to minimize bus contention?"

At the time, I didn't have the presence of mind to ask the interviewer
exactly what he was looking for, and in the intervening 10 years I have
neither learned the answer, nor met anyone who knew the answer, nor
indeed anyone who didn't think it a damn silly question to ask a
systems programmer, as against the guy who designed the hardware.
However that may be, I am prompted to ask this august forum what the
answer to this question would be.


-- 
Esmond Pitt, Austec International Ltd
...!uunet.UU.NET!munnari!ausmelb!ejp,ejp@ausmelb.oz

firth@sei.cmu.edu (Robert Firth) (09/15/88)

In article <760@ausmelb.oz> ejp@ausmelb.oz (Esmond Pitt) writes:
>Many years ago at a job interview, after I had claimed to know something
>about the PDP-11, I was asked the following question:
>
>	"What special measures are taken in the PDP-11 software _and
>	hardware_ to minimize bus contention?"
>
>At the time, I didn't have the presence of mind to ask the interviewer
>exactly what he was looking for, and in the intervening 10 years I have
>neither learned the answer, nor met anyone who knew the answer, nor
>indeed anyone who didn't think it a damn silly question to ask a
>systems programmer, as against the guy who designed the hardware.
>However that may be, I am prompted to ask this august forum what the
>answer to this question would be.

Well, I don't think that was a silly question; indeed, it seems to me
an unusually probing question for an interview.

The PDP-11 Unibus has features and problems that one is unlikely to
encounter elsewhere, and they affect many parts of the system,
including the physival layout, the bus connections, the device
drivers and handlers, and (especially) the design and interfacing
of any application-dependent devices.

I would certainly expect anyone who claimed "familiarity" with the
PDP-11 to know at least what is in Chapter 2 of the Processor Handbook -
the stuff about priority levels, priority chaining, master/slave
operation, bus grant requests &c.  In addition, if I were hiring
someone to build a system around a PDP-11, including maybe hooking
up AtoD converters, programming them, or whatever, then I would
expect that person to be thoroughly familiar with the relevant parts
of the Peripherals Handbook (Chs 5-7) also.

One of the exercises I used to set students was writing a driver/handler
package for the DJ-11 multiplexor.  This is surely a systems programming
problem, but it definitely requires a reasonable awareness of how the
processor, bus and peripherals interact.  Such awareness, in my view,
would be a prerequisite for a systems programmer on that machine.

yba@arrow.bellcore.com (Mark Levine) (09/16/88)

In article <760@ausmelb.oz> ejp@ausmelb.oz (Esmond Pitt) writes:
>Many years ago at a job interview, after I had claimed to know something
>about the PDP-11, I was asked the following question:
>
>	"What special measures are taken in the PDP-11 software _and
>	hardware_ to minimize bus contention?"
>
I suspect you could have just described how the bus worked, mentioned
how an interrupt or a trap was handled in software and what support
there was in the hardware, muttered about hardware priorities, and made
the interviewer happy.  Without a definition for "special measure" this
is a nonsense question.

As I recall, the PDP-11 interrupt strategy and the UNIBUS architecture
were new and wonderful about 15 years ago.  Perhaps that is all the
interviewer was looking for: someone who understood why you needed an
bus grant card in an empty slot.  There were not too many small computers
with vectored interrupts around, nor hardware stack support, and I am not
all that sure that hardware interrupt priorities abounded.  If there is
something "special" in the bus arbitration, I don't know what it really
is.  Was edge-triggered TTL new back then?  DMA throttles?  DMA?