If you need simple arbitration, there is always this:
https://www.retrotronics.org/arbiter/
-Alan
On 2017-11-17 20:11, Jim Brain via cctalk wrote:
I'm currently working on a single board computer
system, designing
from scratch partially as an education experience, and also as
something that might be of interest to others.
I've laid out the first version of the SBC, and I realize it would
cost nothing to add an edge connector on the PCB, allowing expansion
options.? As well, assuming the design has any merit, I can see
creating one of these SBcs for each family (8080/Z80, 65XX, 68XX, and
maybe even 16 bit options like TMS9900, 68K, etc.)
However, as the design is not *for* any purpose, and I've never
designed a bus that could be shared among multiple CPUs, I am
wondering what bus layout would satisfy the following criteria:
* At least enough to support a traditional 8 bit CPU (A0-15,D0-7,
RESET, READ/WRITE,CLOCK,INTERRUPTS) with potentially a few more
address bits (A16-23)
* Minimal number of bus signals to support multi-processors and
peripheral cards, but not so few that usefulness is severely
crippled
* Easy to implement (minimize need for logic that serves to solely
handle the bus)
* (If 16 bit data bus is part of the design): Easy for 8 and 16 bit
CPUs and peripherals to share the bus (Maybe this means 16 bit units
need to be constrained to 8 bit, not sure)
* Works out to a size that I can buy edge connectors cheaply (62 pin
.100" connectors are looking like my cheap option at present)
I looked at home computer busses (Atari, Apple, Commodore, Tandy, TI)
for a bit of inspiration, but they all seem overly simplistic (not
horrible, but hate to just punt on the idea).? I also looked at the
ISA bus and the S-100 bus, but they are a bit overwhelming to me (I
can grok all the signals, but ensuring they are all responsive seems
like it will drive more logic be on the PCB jsut to handle the bus,
and I am trying to keep costs very minimal).
Thus,
Is there a bus (or a fraction of a bus standard) that I should
consider to accommodate the above?? Anyone else interested in this
idea and in a collaborative mood?
Jim