On Mon, Jan 19, 2004 at 03:39:21PM -0800, jim wrote:
I'd like to see you think also about making a pdp8
to ide or pdp8 to
other bus too, while you are looking at it. not to design it, but to
see if you can adapt the back side of your ide design to suite both,
since i would guess you would feed some sort of programmable
asic with the unibus / pdp8 bus stuff, and then drive the ide bus and
maybe a buffer on the other side.
The bus requirements for Qbus and Unibus are not that far apart. OMNIBUS
or posi/negi-bus stuff for PDP-8 are another matter entirely. Quite
different.
if you partition the parts of the
design right, your ide bus could run many older mini's, but I would
take one or more for both unibus (for pdp 11/15) and for my 8's (L and E)
A PDP-8 IDE interface would be a good idea, but it would probably be better
to be an entirely distinct project from a Qbus and/or Unibus interface.
The SBC-6120 _has_ an IDE interface, but its design is entirely unsuitable
for a TTL or transistorized -8. It has an 82C55 chip as a peripheral to
the 6120 CPU chip, but it depends on a feature of the 61xx-series CPUs to
switch to "console-mode ROM" and take those simple IOTs and emulate them
with a wad of ROM code. I would be quite surprised if you could fit
enough code in two pages to build a device driver that hammered on the 82C55
directly.
There was a SCSI interface for the OMNIBUS. I was supposed to get one from
Charlie Lasner *years* ago to help him merge two divergent firmware streams,
but it never happened. It had a 6809 onboard that parsed a control block
that the OS/8 driver built. It talked to the SCSI drive, got the requested
disk blocks and DMAed the results into the -8's memory. It was a non-
trivial microcomputer sitting on the OMNIBUS. If I were to build one of
_those_ from scratch, I'd probably switch to the 68000, but that's because
I have analyzers and debugging tools for it (Northwest Instruments and Fluke),
not because it _needs_ that much horsepower to talk to a disk. A simple 6502
SBC could probably do the work, but it'd be easier, I think, to drive a 12-bit
data-break interface with a 16-bit-bus uP than an 8-bit-bus uP.
The "problem" boils down to a simple fact: IDE drives want to see a 16-bit
datapath, and on a Qbus or Unibus, you _have_ that. It can be as simple as
mapping IDE registers to Qbus/Unibus I/O space. For a 12-bit machine, it's
a lot of work to map 12 bits to 16 bits. The easy way with an old PDP-8
is to use an I/O co-processor. With the 6100/6120, you can emulate that
functionality with a 16-bit VLSI I/O chip and a lot of ROM code.
It wouldn't be particularly quick, but I always thought that if I were to
whip up a 68000-based OMNIBUS card, I'd also allow it to respond to a variety
of IOTs to emulate whatever peripheral I wanted, especially extra SLUs
or an LP8E. The circuit wouldn't be any harder - it would all be firmware.
-ethan
--
Ethan Dicks, A-130-S Current South Pole Weather at 20-Jan-2004 07:00 Z
South Pole Station
PSC 468 Box 400 Temp -15.1 F (-26.2 C) Windchill -44.4 F (-42.5 C)
APO AP 96598 Wind 10.1 kts Grid 003 Barometer 688.4 mb (10309. ft)
Ethan.Dicks(a)amanda.spole.gov
http://penguincentral.com/penguincentral.html