On Wed, Oct 19, 2016 at 7:46 PM, Paul Koning <paulkoning at comcast.net> wrote:
Actually, Unibus has very straightforward timing. It
certainly should be a breeze with an FPGA, but the original designs (nicely spelled out in
the back of the early Peripherals Handbooks, or later on in the Unibus Handbook) take just
a handful of MSI ICs.
Then there's the interminable wrestling with "what driver ICs to use".
I have an abundance of the real thing (DC013 and NS8641, because I
used to make a peripheral), but modern equivalents all fall short in
one way or another. You _can_ get away with a variety of
substitutions, but the question then becomes when those compromises
sum up to bite you.
Yes, a non-MSCP disk would be a good choice. I'd
suggest the Massbus series, they are just about as simple as anything and that's where
you find the largest capacities short of MSCP devices.
With widespread driver support (because who wants to write a wad of
drivers for different operating systems and different _versions_ of
operating systems - VMS4 vs VMS5 w/SMP anyone? Done that already!).
The worst thing about rolling your own controller is needing to write
all the drivers, thus the interest in something universal, like MSCP -
the interface to the bus, the register model, is all set and somewhat
clear. Implementation details are invisible to the bus or OS. OTOH,
rolling your own MSCP device is hardly a starter project.
... Apart from MSCP, avoid RL emulation also.
While RL emulation is complex, one advantage is that the OS support
for the RL is nearly ubiquitous.
How small is the smallest possible Unibus DMA card?
Quad, if I remember right, because of where the NPR/NPG wires live?
The RX211 (M8256) is a quad-height card that does DMA. There are
various quad-height tape controllers that should too, IIRC. Mostly,
DMA peripherals are hex height because they can be and there's plenty
of silicon to fill a hex card, but that's about real estate not about
reaching certain Unibus pins.
-ethan