BBC Micro 6809 2nd proc Graham Toal cctalk@classiccmp.org Mon Sep 1 18:10:00 2003 Previous message: barcode scanners, anyone? Next message: BBC Micro 6809 2nd proc Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] -------------------------------------------------------------------------------- I mentioned some time ago that I'd once built a second processor for the BBC micro using a 6809. I found it again recently and here's a photo... http://www.gtoal.com/tmp/CNXT0053.JPG You can see the Tube (furthest), CPU (next to it), boot rom (left of the CPU), 64K DRAM, and two custom chips; one is an 8-bit counter for dynamic ram refresh, and a PLA for address decoding. I forget what the other small TTL chip did; it may have been a couple of inverters to create a signal delay? I found this today which I think is the logic table for the dynamic refresh and address decode PLA: { Ras' = (Eclk + Qclk)' RomCS = A15.A14.A13.A12.A11.A10 TubeCS = A15.A14.A13.A12.A11.A10' Cas = Q.(RomCS' + TubeCS')' Count' = Q.(RomCS' + TubeCS') TW' = E' + R/NW TR' = E' + R/NW' } IN A10, A11, A12, A13, A14, A15, Eclk, Qclk, R/W' X X X X X X X X 1 0 0 1 0 0 0 0 X X X X X X X X 0 0 0 0 1 0 0 0 X X X X X X 0 X X 0 0 1 1 0 0 0 X X X X X X 0 X 0 0 0 0 0 0 0 0 X 1 1 1 1 1 X 1 X 1 0 0 0 0 0 0 X X X X X X 0 0 X 0 1 0 0 0 0 0 1 1 1 1 1 1 X X X 0 0 0 0 0 1 0 0 1 1 1 1 1 X X X 0 0 0 0 1 0 0 X X X X X 0 X 1 X 0 0 0 0 0 0 1 X X X X 0 X X 1 X 0 0 0 0 0 0 1 X X X 0 X X X 1 X 0 0 0 0 0 0 1 X X 0 X X X X 1 X 0 0 0 0 0 0 1 X 0 X X X X X 1 X 0 0 0 0 0 0 1 OUT Count', RAS', TW', TR', TubeCS, RomCS, CAS { Ras' use as is. Cas invert with 30ns <= delay <= 60ns RomCS invert TubeCS invert Count' feed directly into counter, counter clocks on falling edge TR' use as is TW' use as is } I also found an HP Plotfile which *may* be the layout of this chip that I'd love to see again - if anyone has a utility to convert HP plotter codes into something more readable that they could run this through in a few minutes (don't put a lot of effort into it, I can write my own utility if I need to) I'ld love to see what it looks like again...: http://www.gtoal.com/tmp/plotfile.txt The chip was laid out in my own layout language called the "Tiled Orthogonal Abutment Language" ;-) - it was basically a crude tiling system with no overlap, pretty much like the way the very first release of M$ Windows worked: http://www.gtoal.com/tmp/megaroute.toal The two empty sockets originally contained 2 32K static rams with battery-backup built-in, instead of the 64K SIL, eprom, and counter. Unfortunately you had to pre-load it with boot rom contents on another system then transfer the ram without the battery falling off :-) (glued on, kinda hacky!) I prototyped it with the static ram and then got it working with dynamic ram when the chips were returned from fab. The custom chips weren't strictly necessary; I was working in the VLSI CAD group and they needed some test chips when trialling a new production line, so all the programmers got the chance to design a chip if they wanted to. I took the chance to do these for the 6809 as I'ld always liked that CPU in preference to the 6502 in the BBC systems. I think if I had needed to I could have used off the shelf chips that would have done the same job. Anyway it was a nice small & cheap system to build in either incarnation; I was disappointed that Acorn didn't pick it up. (The primary reason being that Roger was a speed freak and that the 6809 was obviously not going to be pushed as far as the 6502 was being improved) I also wrote a compiler for it because I had no luck at all getting the only company I could find that wrote a C compiler (Introl) to reply to my letters (http://www.gtoal.com/athome/tmp/c.letter) asking about the possibility of bundling it with our processor, although they were quick enough to send brochures for sales of a single unit when they thought I was an end-user at first. My compiler is here if you're interested; it was no great shakes but it worked for me... http://www.gtoal.com/athome/edinburgh/skimp/skimp-6809/ - and as a result of the Edinburgh history project resurrecting Imp, I've been able to get it running again, with the intention of perhaps writing some Vectrex games with it... (You can see the output of the compiler in this article: http://groups.yahoo.com/group/compilers101/message/187 ) An early (unfinished) source of my boot rom (I lost the final one) is here: http://www.gtoal.com/athome/tmp/kernel.txt - I guess the final working binary is still in the eprom - it does still boot up! Graham -------------------------------------------------------------------------------- Previous message: barcode scanners, anyone? Next message: BBC Micro 6809 2nd proc Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]