Single Board Computer

Discussion in 'Computing and Networks' started by Sparky49, Dec 15, 2012.

  1. Sparky49

    Thread Starter Active Member

    Jul 16, 2011
    834
    417
    Hi everyone.

    I've got a big interest in computers, and would like to try to build my own.

    I've done alot of searching for a single board computer project which is really well documented (clear schematics, boot files, possible pcb file, etc) and which isn't too complicated.

    However, I can't really find any. :(

    Can any of you guys suggest a couple of projects?

    Many thanks,

    Sparky
     
  2. thatoneguy

    AAC Fanatic!

    Feb 19, 2009
    6,357
    718
    Probably not exactly what you are looking for, but a Raspberry Pi may fit what you are looking for.

    It is very expandable.

    Building your own board would be extremely expensive, it would need to be several layers and high speed digital design domain will be in effect.

    You could build an 8 bit computer from logic ICs, that has been documented. Lots of wire wrap, as expanding/modifying an etched PC Board is a bit of a pain. ($>1,000, hundreds of hours)

    Perhaps you could order a medium size FPGA development board and build a "soft core" 32 bit CPU, RAM, and I/O in it? It isn't soldering together ICs and designing boards, but you can create about any architecture (ARM Cortex is common) with an FPGA. (~$500-$3000 for complete dev kit and software, hundred hours if new CPU deisgned and tested, a few hours for a soft-core module found on net and loaded) Clock up to 1.5Ghz

    A lower end FPGA would allow you to create a 8 or 16 bit processor, perpipherals, and some have sockets for DDR RAM expansion for building prototypes of ASICs.($250, same time spent as 32 bit, fewer integrated peripheral "blocks") Clock around 300Mhz

    --ETA: Altera High capability
    Microsemi ProASIC3 mid range
    Xilinx Spartan 6 mid-range
     
    Last edited: Dec 15, 2012
    absf and Sparky49 like this.
  3. spinnaker

    AAC Fanatic!

    Oct 29, 2009
    4,866
    988
    When my interest in electronics was renewed a couple of years ago, I had plans on building a 6502 single board computer as I have a number of 6502s and supporting chips lying around.

    I got so interested in Pics I gave up the single board idea. There are just too many projects to build with these mcus.
     
  4. THE_RB

    AAC Fanatic!

    Feb 11, 2008
    5,435
    1,305
    The Maximite?
    http://geoffg.net/maximite.html

    It's a bit "old school" as it is a computer with built in BASIC interpreter, so you can write your own software on it like we did back in the 80's.
     
    absf likes this.
  5. WBahn

    Moderator

    Mar 31, 2012
    17,715
    4,788
    I bought a book many years ago that was intended as a more-or-less self-contained college lab course and you built an 8088-based computer including support for most of the peripherals that they had such as monitor, keyboard, mouse, joystick, floppy drive, etc. The thing could be built either wire wrap or on homespun (or proto fabbed) 2-layer boards. I would actually still like to dust that thing off and build it, though I don't know if I can find the chips that it calls for. But seeing if I can do it (or something based on it) as an FPGA-focussed project would be fun.

    About the same time that I bought the book one of the local electronics surplus houses was selling 8088 micros for 15 cents. I wish I had bought a couple dollars' worth.
     
    absf likes this.
  6. Austin Clark

    Member

    Dec 28, 2011
    409
    44
    Check out this book: http://www.nand2tetris.org/course.php

    I used it as a reference/learning tool and built a CPU in Logisim
    http://ozark.hendrix.edu/~burch/logisim/

    I'm planning on using 4000 series ICs to implement it in Hardware. It seems rather doable. I'm still working on my final designs. The book was/is very straightforward, and guides you through EVERYTHING you need to make a full computer, from NAND to Tetris, from gates to assembler, to high-level language, to OS and on... It's amazing.

    If you decide to go this route, let me know, we can exchange work/ideas :)
     
    absf and thatoneguy like this.
  7. davebee

    Well-Known Member

    Oct 22, 2008
    539
    46
    A lot of people have done this with the Z80 microprocessor. It is powerful enough to operate a working system, but is simple enough for a relative beginner to work with.

    Just Google homebuilt Z80 and you'll find a lot of information.
     
  8. WBahn

    Moderator

    Mar 31, 2012
    17,715
    4,788
    Think carefully before you implement it in hardware at the gate level. Count how many packages you are going to need. For instance, a 2:1 Mux would use all 4 gates in a quad NAND gate. So if you also used 7474 dual DFF, then you would need a total of 24 packages just to make a single 16-bit register. Even if you are commited enough to do all that wiring (and, if you are, you will be ready to be committed long before you are done with the whole thing!), it will get quite expensive very quickly.

    As for NAND2Tetris, I am working my way through that right now. So far I have invested about four hours in it and am on Project 4. I'm teaching a class next semester that is centered around this project, though it is fleshed out quite a bit with other stuff. I very much like the idea of this type of course. I don't know how sold I am on their architecture as they do some things in pretty odd ways that I think obscure some very useful and valuable lessons about logic and efficient ways of dong things. But the way that they do things also highlights some other lessons pretty nicely. Definitely haven't seen anything that's a show stopper for me yet.
     
  9. MrChips

    Moderator

    Oct 2, 2009
    12,414
    3,353
  10. Ian Rogers

    Member

    Dec 12, 2012
    158
    29
    Its derived from the "duinomite"... Maximite is the progression.

    BTW its a colour computer now...
     
  11. Brownout

    Well-Known Member

    Jan 10, 2012
    2,375
    998
    I agree, and you probably won't have anything very servicable in the end. If I may offer an alternative, you can use a programmable device, xilinx, altera, actel, etc. and 'build' your computer in the programmable fabric. More than a few uP's got started that way. You can get an inexpensive kit and use free downloaded tools from the device vendors. Use high level HDL or low level structural coding at your pleasure. You can even use schematic entry tools for your design. You can make a pretty sophisticated computer system that runs fast 100-200 Mhz, and learn everything you want about computers in the process. If you want, you can use a really high level system builder, such as SOPC builder (Altera) or Studio Platform (Xilinx) to very quickly build a system with all the usual periphreals, usb, ethernet, etc, and use the integrated software tools to program it. The sky's the limit. You can build as simple gate-level or full up system as you deisre.
     
  12. Sparky49

    Thread Starter Active Member

    Jul 16, 2011
    834
    417
    Thanks for all the info guys!
     
  13. Austin Clark

    Member

    Dec 28, 2011
    409
    44
    I completely agree! I wasn't planning on implementing everything on the gate level. 4000 series ICs aren't that limited :)
    I'll have to look more closely at what I'll have available in that series before I get started of course. If it does become too much, I might have to maybe try FPGAs or something.
    I'm planning on using an SRAM IC (probably Non-4000 series) for the program memory.
    My biggest problem is I/O. The book highlights a memory-mapped interface, but I'm not sure if that's going to work well for me.

    I'm only familiar with the architecture in NAND/Tetris, so I can't really compare it to anything, though I have looked into quite a few modifications already :)

    Sparky, what exactly do you mean by "I've got a big interest in computers, and would like to try to build my own"? How far/deep were you wanting to go with this potential project? There are many levels to begin and to end at ;)
     
  14. WBahn

    Moderator

    Mar 31, 2012
    17,715
    4,788
    I did a Verilog build up of a simplified MIPS CPU on an FPGA. I specifically modeled only the INV, NAND, NOR, and DFF blocks and build everything else up from that. It took a fairly intense weekend, but I was teaching myself a hell of a lot of other stuff about writing Verilog testbenches that do not rely on a particular vendor's tools.

    I never got to the next step, which was to start implementing the physical interfaces. But my plan was to do all of that as memory-mapped I/O. Thus, the only thing I used was a UART interface that I had done for another project that let me read/write registers via HyperTerminal. That's one of the beautiful things about an FPGA, you can build up all of those different "chips" and put them in the same chunk of hardware.
     
  15. absf

    Senior Member

    Dec 29, 2010
    1,490
    371
    Or read the book by Steve Ciarcia "Build your own Z80 computer".

    Allen
     
  16. thatoneguy

    AAC Fanatic!

    Feb 19, 2009
    6,357
    718
    The biggest "beautiful thing" is massive parallelism, IMO. Multiplication can be happening at the same time as a serial out, which is happening at the same time as a read/write to DDR RAM.

    That is the limitation of microcontrollers, which are "general purpose ASICs" in a way. Being able to control dozens of stepper motors at insane stepping speeds without a hiccup is something an FPGA can do that no uC can.

    Unfortunately, (Fortunately?) FPGAs only come in very high density pin packages, FBGA etc with several hundred of I/O pins. Takes them out of the realm of the hobbyist etching a double sided board. GAL (programmable logic) have gates you can configure, but not logic cells(Lookup Tables) and RAM.

    Still, the older generations (2004-2008) can still provide great power for a $40 board if you have the $100 JTAG programmer.
     
  17. THE_RB

    AAC Fanatic!

    Feb 11, 2008
    5,435
    1,305
    I built an 8080/Z80 computer by soldering chips into veroboard in about 1982, and later a 6800/6802 version.

    But it's really a bit lame, by the time you get (say) a Z80, a RAM chip, an EEPROM chip, and a peripheral interface parallel chip etc, and all those wires hooked up and working you have almost exactly got the same thing as a PIC.

    In those days it was fun doing all that work to get that point where it finally "is a computer" and could be programmed to do something.

    These days we just buy a single chip and START at that point!
     
    absf, KnRele and thatoneguy like this.
  18. Brownout

    Well-Known Member

    Jan 10, 2012
    2,375
    998
    We used to do the same thing with soldierless breadboards. Since the resulting computer isn't very useful, no need to make it permanent.
     
  19. absf

    Senior Member

    Dec 29, 2010
    1,490
    371
    Back in the '80s, I was playing with Ohio Scientific Inc C1P sbc. 3 years later I bought a used Apple II+. I was too busy learning 6502 language and reading Nibble, MICRO, PEEK65 newsletters. Designing interfaces to plug in the Apple II slots.

    In the '90s & 2000s, I started playing with 8085/6803/Z80 cause I can get them free from obsolete equipments. I also bought 68HC11 SBC boards from NMI Inc and 8051 boards from a Canadian company called L S Electronics system Design.

    I started playing with PIC only 3 or 4 years ago and I am learning C end of last year. I just ordered my Raspberry Pi 512MB yesterday cause Element 14 is giving offer to its customers.

    I am not sure why someone wants to do a SBC nowadays. But to me I dont mind to design another 6502/65816 SBC just for the fun of it. But if I want to do a design for practical use I'll either use PIC/AVR/89S51.

    Allen
     
    Last edited: Dec 19, 2012
  20. WBahn

    Moderator

    Mar 31, 2012
    17,715
    4,788
    I don't think anyone is suggesting that building up a simple and primitive SBC from near-fundamental blocks is for any practical purpose, but rather just for educational purposes to really understand the workings from the ground up -- and for the fun and for some rather perverted bragging rights. :D
     
    absf and Sparky49 like this.
Loading...