On 11/24/15 5:04 PM, shadoooo wrote:
Hello,
I have some unibus machines that always need some way to interface to
modern disks.
I always dream to make an universal board that could act as disk and/or
tape interface to a modern medium (scsi or cf/sd card), but also ram,
network, I/O, whatever...

I did this. It was a while back, and well, lots of things have happened since then (to me), but it can certainly be done.

http://www.heeltoe.com/index.php?n=Retro.Udisk

I made a unibus board with a smallish xilinx CPLD and an atmel SAM-7 arm cpu. It has a CF disk and IDE disk interface as well as USB. The CPLD does "just enough" to babysit the unibus and everything else is done with the ARM cpu in C code.

It can emulate anything, ram, MSCP, RL02, what ever in theory. I only made software drivers for the RL02 and RK11. Both work and will boot RSTS, UNIX, RT-11... You can write boot loader code into ram and then run it. It has full unibus access as a master or slave. I included the extra two bits so it can work with a KS-10.

(anyone want to loan me a KS-10 :-)  I'll make it work!)

My design is really simple but does require "proper" unibus driver chips. I'll skip over that argument since they can be found and do exist, just not in large qualities. Please - don't devolve into a unibus driver debate. Do that elsewhere or in private. It's been rehashed here way too many times.

I made two boards and years went by. I did finally go back and get it all working. Turns out booting RSTS was the hardest thing. RT-11 was simple but RSTS does some really odd things with interrupts and code. Unix is also really easy as it's very tolerant.

I should (and will) publish it all. Most of it's on the web but not all. I'll fix that. I've only tried it on a 11/34 and an 11/44, but it should work on any unibus machine. It's compliant with the protocol.

If I had to do it again I'd use a real FPGA and run all the protocol (including DMA) in the FPGA. But I was in a minimalist mood when I did the first version. I don't think this requires anything as powerful as a beaglebone, but that could certainly work. Given how unibus works, I personally think a state machine in an FPGA is the best bet. The 11/44 is pretty strict about bus timeouts. The 11/34 is more gracious. I always liked that machine :-)

What I have works and can be reproduced. I'm happy to any or all of it with anyone who asks.

-brad



Reply via email to