SBC Blaufuchs-II
Posted: Fri Mar 21, 2014 2:54 pm
Programmer by trade, so beware I don't really know what I'm talking about when
it comes to hardware.
The idea of making a Mini-ITX form factor SBC has been lurking in the back
of my head for a long time. Many variations have been considered, including
6502, 680x0 and ARM based ones. But after making a simple 6502 2MHz backplane
based computer (all through hole components), I decided to see what could be
done with the 65c816 CPU.
One of the reasons for choosing this particular CPU is that it is available,
even in modern packaging. I decided to take a "modern" approach, meaning SMD,
4 layer PCB.
After reading a lot of posts in the 6502.org forum I came up with the following
choice of components.
The CPU is of course the 65c816, the address and data
busses are made available via two 74ABT541, a 74ABT573 and a 74ABT245.
Instead of using (E)EPROM I decided to go with same flash this time, speed and
the potential for changing the contents in circuit made me choose the SST39SF040.
To make this a real computer a Real Time Clock is needed, DS1511 seems like a
nice fit.
Memory is provided by no less than 8 x 512K SRAM modules, fast small and
available in SOJ packages.
For storage a CF Card in True IDE mode has been chosen, mainly because it
is easy to connect to the system.
A real computer must have at least one RS232 interface, the SCC2692 was chosen for
it's ability to provide two of these interfaces in a nice package. It is
accompanied with two MAX3232 level shifters.
A printer/parallel port is also needed, a W65S22 provides just enough I/O to
more or less full fill the requirements to a printer port.
Additional I/O like PS/2 is provided by another W65S22.
A clock circuit is realized with a 14 DIL Oscillator, fed through a 74AC74. It
is my understanding that the 74AC74 will provide a compatible clock signal.
Finally all of this is glued together with an Altera MAX 7000 CPLD 5ns. These are
readily available 5V and comes with a free development environment. I have only
used old GALs with WinCUPL until now, but I hope the transition to this new
monster "GAL" will be educational but not to bumpy...
The observing reader will notice that real computers have some sort of VGA (or
better) output. Well that is what the expansion slot is for, since I don't know
how this will be solved yet (I have a couple of ideas...). Maybe the VGA will
be onboard in the next version.
Puzzles (for me at least):
I've seen some schematics with 74S1051/3 connected to the address and data
busses. I haven't really found a good explanation anywhere but I'm guessing it
is supposed prevent ringing/spikes?
Are all the relevant pull-up and series resistors in place, especially
connections to and from the CPLD?
Any input is greatly appreciated.
/norby
it comes to hardware.
The idea of making a Mini-ITX form factor SBC has been lurking in the back
of my head for a long time. Many variations have been considered, including
6502, 680x0 and ARM based ones. But after making a simple 6502 2MHz backplane
based computer (all through hole components), I decided to see what could be
done with the 65c816 CPU.
One of the reasons for choosing this particular CPU is that it is available,
even in modern packaging. I decided to take a "modern" approach, meaning SMD,
4 layer PCB.
After reading a lot of posts in the 6502.org forum I came up with the following
choice of components.
The CPU is of course the 65c816, the address and data
busses are made available via two 74ABT541, a 74ABT573 and a 74ABT245.
Instead of using (E)EPROM I decided to go with same flash this time, speed and
the potential for changing the contents in circuit made me choose the SST39SF040.
To make this a real computer a Real Time Clock is needed, DS1511 seems like a
nice fit.
Memory is provided by no less than 8 x 512K SRAM modules, fast small and
available in SOJ packages.
For storage a CF Card in True IDE mode has been chosen, mainly because it
is easy to connect to the system.
A real computer must have at least one RS232 interface, the SCC2692 was chosen for
it's ability to provide two of these interfaces in a nice package. It is
accompanied with two MAX3232 level shifters.
A printer/parallel port is also needed, a W65S22 provides just enough I/O to
more or less full fill the requirements to a printer port.
Additional I/O like PS/2 is provided by another W65S22.
A clock circuit is realized with a 14 DIL Oscillator, fed through a 74AC74. It
is my understanding that the 74AC74 will provide a compatible clock signal.
Finally all of this is glued together with an Altera MAX 7000 CPLD 5ns. These are
readily available 5V and comes with a free development environment. I have only
used old GALs with WinCUPL until now, but I hope the transition to this new
monster "GAL" will be educational but not to bumpy...
The observing reader will notice that real computers have some sort of VGA (or
better) output. Well that is what the expansion slot is for, since I don't know
how this will be solved yet (I have a couple of ideas...). Maybe the VGA will
be onboard in the next version.
Puzzles (for me at least):
I've seen some schematics with 74S1051/3 connected to the address and data
busses. I haven't really found a good explanation anywhere but I'm guessing it
is supposed prevent ringing/spikes?
Are all the relevant pull-up and series resistors in place, especially
connections to and from the CPLD?
Any input is greatly appreciated.
/norby