Thanks everybody for the suggestions.
Here is what I’m currently going with and why…
First and foremost I wanted a Z80 circuit that is proven and works with almost every vintage s100 board out there. I used the core circuit on our Z80 board (
http://s100computers.com/My System Pages/Z80 Board/Z80 CPU Board.htm ). It’s based on the old Intersystems II CPU board. I have not come across a vintage S100 board it does not work with. It goes to 10MHz in my own system of mainly S100Computers boards. Even works with DRAM boards. I had to remove the >64K windowing circuit for board space (see below). The Z80 to S100 bus signal conversions take up quite a few 74LSxx chips. Granted that could be reduced with a GAL or two but newcomers will probably not have experience programming GAL’s initially.
Second, I brought in the circuit from the Propeller Console IO board (
http://s100computers.com/My System Pages/Console IO Board/Console IO Board.htm ). Because of space I removed the HEX display and a few jumpers. This provides direct support for PS2 keyboard and VGA video. Besides the internal ribbon cable connectors to the back of a box, I also added IBM-PC P2 and VGA sockets at the top of the board for direct connections. Again my thinking was KISS. It’s a well proven board totally debugged and is completely programmable (currently has VT100 capability as well). I wanted to retain the flexible status port and bit configuration jumpers section so when sections are disabled to use an external board (see below) the monitor need not be. Granted there is a simpler solution such as the PIC32. I may have to go to that for space reasons but with the Propeller circuit 99% of the work is done it’s just a splice. Also later, the user can get and use the Propeller Console IO easier when they build a larger system. The interrupt circuit is still there BTW.
There was an outcry for a serial port. These unfortunately take up board real estate badly. I opted to add the (again well proven) USB port chip that we used on our Serial I/O board (
http://s100computers.com/My System Pages/Serial IO Board/Serial IO Board.htm ). This 18 pin “chip” takes up little circuit room and actually is easier to interface to a PC than a serial port. USB the serial cables are also very common.
Added a few LED’s that’s about it.
The board has 128K of RAM (there are no common 64Kx8 static RAM DIP chips) that can be jumpered into two separate 64K sections. It has a 27C64 (or equivalent) ROM, keyboard buzzer, 8 interrupt jumpers, a Power on clear and a ROM power on jump to any 1K boundary circuit. I used two, a 5V and 3.3V Pololu regulators. There are a lot of chips on this board. A TO-3 regulator capable of > 1.5 Amps takes up too much space. Those Pololu units are really nice and take little real estate.
There is a socket to program the Propeller EEROM but the user will have to buy the “Propeller Programming Plug”. A serial interface circuit is too board space expensive. They would also need to buy a PROM/EEPROM programmer (e.g. Wellon VP-290). After that they should have a board that would light up an empty S100 bus card cage. Clearly the next thing to do would be to build a FDC board or IDE/CF Card board and then go from there…
The circuits are configured so the onboard RAM, ROM, Console I/O and serial sections can be inactivated in stages as discrete more functional boards are added. While the board will act as a master/slave S100 board it’s not really intended to function is a complex multiprocessor configuration. For example for debugging you cannot “see” beyond 64K of RAM in the bus.
A few of you wanted more options including a CF card etc. Unless we went with a 4 layer board (more expensive, hard to debug), there is unfortunately not enough room. GAL’s (or a CPLD) would help but I wanted to simplify the board for first time users. The current 74LSxx board is amenable to simple logic probe debugging in all the circuits.
Now the bad news. This board is very dense. The initial via count is ~1200 vias! (More in fact than my current 80486 CPU prototype boards). It’s taxing Freerouter to find a solution. I playing around with chip layouts. May need some volunteers to shuffle things around an try for a solution. The multiple jumper options really soak up vias.
Anyway stay tuned.
John