N8VEM PropIO
lynchaj
Posts: 87
Hi!· This might be interesting if you are interested in Propeller related vintage/classic/home brew computing.
For a little background, the N8VEM home brew computer project is·free/open source hardware & software, all amateur, non-commercial, volunteer run, etc.· Currently the main board a Z80 SBC that plugs into an ECB backplane.· There are several peripheral boards to do various vintage/classic/home brew type things like Disk IO, video, prototyping, etc in the style of a late 1970's early 1980's microcomputer.·
Since every system is unique to its builder there is a wide variety of configurations and applications.· More boards are in work and many builders have contributed excellent their works to the project which I deeply appreciate.· There are several people who are active on both Propeller and N8VEM so they can respond if they choose.
Recently we designed a PropIO board for the N8VEM home brew computing project.· There are two Propellers in the design.· Both communicate with the SBC over the ECB bus.··The first provides basic IO like VGA text display, PS/2 keyboard, and microSD interface.· The second is general purpose with IO pins unallocated and·sent to a header next to a small PTH prototyping area.· The PropIO is designed to support a "mezzanine" prototyping board for larger designs.· It would look kind of like a PCB sandwich with nylon standoffs between the boards and a joining bus between them with VCC, 3.3v, GND, and Propeller IO pins.· Personally I would describe the PropIO board as an experimental Propeller prototyping board intended for "old school" microcomputers.
My original goal was to build my own PropIO board up and test it before offering it to the N8VEM builders but unfortunately I am swamped with other real life tasks and also work on some pressing N8VEM related work (S-100 boards).· As a result it is going to be a while before I get to this project.·· Rather than let these PCBs sit in a box gathering dust, if you would like to build and test a PropIO you can either build your own PCB based on the information (all free and publicly posted) or get a PCB from me.
Mods: if this post is too "spammy" or otherwise inappropriate please delete or move.
Thanks and have a nice day!
Andrew Lynch, 73 de N8VEM
For a little background, the N8VEM home brew computer project is·free/open source hardware & software, all amateur, non-commercial, volunteer run, etc.· Currently the main board a Z80 SBC that plugs into an ECB backplane.· There are several peripheral boards to do various vintage/classic/home brew type things like Disk IO, video, prototyping, etc in the style of a late 1970's early 1980's microcomputer.·
Since every system is unique to its builder there is a wide variety of configurations and applications.· More boards are in work and many builders have contributed excellent their works to the project which I deeply appreciate.· There are several people who are active on both Propeller and N8VEM so they can respond if they choose.
Recently we designed a PropIO board for the N8VEM home brew computing project.· There are two Propellers in the design.· Both communicate with the SBC over the ECB bus.··The first provides basic IO like VGA text display, PS/2 keyboard, and microSD interface.· The second is general purpose with IO pins unallocated and·sent to a header next to a small PTH prototyping area.· The PropIO is designed to support a "mezzanine" prototyping board for larger designs.· It would look kind of like a PCB sandwich with nylon standoffs between the boards and a joining bus between them with VCC, 3.3v, GND, and Propeller IO pins.· Personally I would describe the PropIO board as an experimental Propeller prototyping board intended for "old school" microcomputers.
My original goal was to build my own PropIO board up and test it before offering it to the N8VEM builders but unfortunately I am swamped with other real life tasks and also work on some pressing N8VEM related work (S-100 boards).· As a result it is going to be a while before I get to this project.·· Rather than let these PCBs sit in a box gathering dust, if you would like to build and test a PropIO you can either build your own PCB based on the information (all free and publicly posted) or get a PCB from me.
Mods: if this post is too "spammy" or otherwise inappropriate please delete or move.
Thanks and have a nice day!
Andrew Lynch, 73 de N8VEM
Comments
While I was aware of N8VEM, I did not know of your new board. Why don't you post some links for us forum users?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
www.mikronauts.com E-mail: mikronauts _at_ gmail _dot_ com 5.0" VGA LCD in stock!
Morpheus dual Prop SBC w/ 512KB kit $119.95, Mem+2MB memory/IO kit $89.95, both kits $189.95 SerPlug $9.95
Propteus and Proteus for Propeller prototyping 6.250MHz custom Crystals run Propellers at 100MHz
Las - Large model assembler Largos - upcoming nano operating system
Spammy nothing! How about some pictures. Sounds cool!
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
New to the Propeller?
Visit the: The Propeller Pages @ Warranty Void.
http://groups.google.com/group/n8vem
http://n8vem-sbc.pbworks.com/
There is a folder on the wiki called DWM-PropIO with information. There are also some messages on the mailing list. The schematics and PCB layout are available and should be in the wiki folder along with some photos. If not, I'll check tonight and update as needed. The schematics and PCB layout are in KiCAD and those files are available.
I recommend anyone who may be interested to check out the wiki and mailing list to get as much information as you need before getting a PCB. Feel free to ask me any questions and/or post on the mailing list. With some luck we'll see the first builder reports in the next few days which should be interesting.
Thanks and have a nice day!
Andrew Lynch
Please note the PropIO is designed as an ECB bus peripheral so it is not a stand alone general purpose Propeller board.· I think it could·be adapted to other microcomputers and/or bus architectures -- especially the Intel/Zilog variety.· There has been some discussion on regarding adapting the PropIO to the S-100 bus·using some of the existing S-100 designs we are working on as a template.· At least in theory it could be adapted to really any 8 bit bus like ISA, STD, STE,·or whatever assuming someone wanted to do the work.
My plan is to let the PropIO settle out on the N8VEM ECB bus for a while and see how it develops.· If it proves sound and lives up to its promise the next step would be an S-100 bus board.· However, before starting such a design some of the existing S-100 board designs have got to complete.· If you are interested in the S-100 topic·you can follow along on the N8VEM mailing list or the S100Computers.com website.
Thanks and have a nice day!
Andrew Lynch
I see that you've been working with both the S-100 backplane and the ECB backplane.
I've been working with a propeller connected to a home-made version of my own backplane design, and it's been a great help with designing periferal device driver cards, so much so that I think it would be worth it to move to a more professionally designed bus.
From your experience, would you recommend the S-100 or the ECB, or maybe even some other bus for a propeller backplane?
Could you say a little about the advantages and disadvantages that you've run across while working with them? Like cost, and size and spacing of cards, and availability of connectors, and how much support the different connectors give a card that has a large cable hanging off it, and whether one or the other has more community support, things like that?
Thanks.
I have a couple of old 8085 processors looking for a home. Any chance of driving PropIO from those via the ECB back plane?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
Personally, I recommend using the ECB bus as much superior to the S-100 and/or ISA bus.· There are many reasons but the Kontron ECB bus is *much* easier to work with.· Electrically it uses standard voltage rails (5V, GND, etc) and the signals are basically just buffered Z80 bus through transceivers (74LS245).·
IMO,·ECB is very easy to design for and easy to use.· I think Kontron clearly well understood embedded device controls and how to make inexpensive reliable PCBs.· The ECB boards are normally 160x100mm dual sided which is cheap and reliable Eurocard standards.· You can get about 25 IC packages on a double sided ~25 square inch PCB.
The main strength of ECB though is·it uses DIN 41612 connectors.· Those connectors are pure genius IMO as they are extremely well designed, keyed, and make solid reliable connections.· Also they are dirt cheap so you can make your own backplane with Radio Shack quality phenolic perfboard ($5) using $3 female DIN 41612 WW connectors.· Use wire wrap and/or point to point soldering for construction and you are good to go.· Also you can use those same Radio Shack perfboards and another $3 male right angle DIN 41612 to make your prototyping boards.· No special pre-made prototyping or backplane boards necessary.· No funky hard to find connectors either.· I use scrap AT/ATX power supplies to feed VCC and GND into the system although you can also use 9VDC wall wart supplies with 7805 regulators, etc.
Many busses like STD, S-100, ISA, etc use card edge connectors and you cannot easily build the backplanes nor prototyping boards from scratch.· You have to use manufactured PCBs for even the simplest projects which really drives up cost.· After much research and prototyping I picked the ECB for the N8VEM project because it was just so easy and quick to build up the components without spending a lot of money.
The ECB (Z80) bus is very simple to use.· Basically it is 16 address lines, 8 data lines, /RD, /WR, /IORQ, /MERQ, /INT, /RESET, /NMI, /HALT, /BUSAK, /BUSRQ, CLK, VCC, and GND.· If you can connect it to a Z80 then you can use ECB.· In Europe there are many legacy ECB designs for all sorts of CPU.· Normally it is Z80 since that plugs right in but there are 8088, 6809, 8085, 68K, and many others.· Although ECB is not common in the USA it is quite popular even today in Europe.· There are many home brew computer designs in Europe using ECB and many magazine articles (C'T Projekt, etc) published using ECB boards.
There are ECB card cages, backplanes, and card extenders available commercially.· The cards are normally spaced less than an inch apart although I spaced the N8VEM bus at 1" between centers to allow wire wrap PCBs and bulky connectors without cards bumping into each other.· S-100 spacing is 3/4" between centers and is too close together.· With prototype boards you end up skipping connectors and wasting a lot of the bus to allow room for clearance and heat dissipation.
S-100 is a 10"x5" PCB and looks huge but in reality much of it is wasted due to on board voltage regulators, clearance on sides of PCB, the edge connector, tabs and card puller holes, etc.· In terms of usable space it probably holds roughly 40 IC packages on a double sided PCB which is only a ~50% improvement over ECB but since it is a 50 square inch PCB the costs are about double per unit.· In my opinion, S-100 just is not as well thought out as ECB and I would not recommend it for home brew hobbyist unless you already had a sizable investment in S-100 chassis, power supply, backplane, prototyping boards, etc.· ISA has even less going for it as the prototyping boards are hard to find and expensive.· It has less usable space than S-100 although ISA is easier to put into a case.· Generic ISA backplanes are available but expensive.
Obviously I am huge fan of the ECB and it is a clear winner for making home brew computers in my opinion.· Cheap, easy, reliable, how can you beat that?· :-)
Since the Propeller is a 3.3V device it won't be able to drive the 5V ECB directly.· However if its signals are buffered or sent through bus transceiver like on PropIO interfacing the Propeller to ECB is trivially easy.· The other builder and I made our ECB Propeller prototypes and they work great.· I do not think it would be very difficult to make a Propeller based ECB controller to directly drive other ECB peripherals on the ECB backplane.· I haven't found need to do that yet although I am aware of builders interested in Propeller based SBCs that could easily be extended to ECB bus controllers.
I hope this helps!· Thanks and have a nice day!
Andrew Lynch
·
What's nice about 8085 is that you can easily create a very low chip count microcomputer using the Intel peripherals on an ECB board and just export those signals you need for the bus.· I am pretty sure there are already ECB 8085 designs existing although what would be neat would be a 8085/Propeller board.· Use the 8085 with SRAM for general purpose CPU and Propeller for everything else.··The Propeller could probably preload the SRAM with the bootstrap and handle all the IO resulting in a very powerful 8085 solution with minimal part count.
I don't see any technical restrictions.· I hope this helps!· Thanks and have a nice day!
Andrew Lynch
Dave
I believe the 8085 has a READY line with similar functionality to the Z80 /WAIT line.· When 8085 READY is pulled high the CPU will extend its access cycle.· However, I don't think the 8085 is fully static like the Z80 (AFAIK) so it probably has time limits on how long it can extend the cycle.· I doubt it would be an issue with 8085 using the PropIO since the time delays are typically short.·
The PropIO probably could have done something similar with a clock synchronous design (CPU clock and flip flop) but the asynchronous access using /WAIT is more reliable and uses fewer bus pins·IMO.· I am not a fan of clock synchronous CPU peripherals even though Zilog seems to really like them.· It made development of the Zilog Peripherals and VDU boards which use clock synchronous designs rather painful but I eventually conceded and support them.
At least in theory, a complete N8VEM home brew computer system (CPU, RAM/ROM, video, keyboard, & storage) could be made using an SBC and a PropIO assuming a direct connection between their ECB connectors.· Just use a pair of female DIN 41612 type C IDE connectors (A & C rows) and a short 64 pin ribbon cable.· Alternatively just hardwire the ECB pin pads directly together.
Thanks and have a nice day!
Andrew Lynch
My own PropIO is mostly built and am awaiting some remaining parts.· Hopefully they will arrive soon so I can complete it and participate in further testing.
Kudos to Yoda for all his hard work on the PropIO project!· Thanks and have a nice day!
Andrew Lynch
Then I got tempted by all this emulation business reasoning that coding it was easier than soldering it [noparse]:)[/noparse]
Looks like, thanks to your efforts, I might one day pick up the idea again.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
Hey-Ho
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Style and grace : Nil point
My PropIO board is built although I still need to make a cable and then I can start testing it.· I've been busy with other projects (S-100 keyboard and S-100 SRAM boards mostly) and haven't had a chance to catch up.· This last Sunday I finally got S-100 keyboard built, tested, and installed in the Vector Graphic clone S-100 system.· The good news is that it works great connected to the FlashWriter II board.· Now that it is basically done except for some minor clean up issues I can go back to concentrating on my PropIO board.
Thanks and have a nice day!
Andrew Lynch
·
The PropIO supports both the PropPlug and the serial programming interface. Both plug right into the board and you select jumpers for which Propeller to program and/or how you would like to program it. I prefer the serial programming interface but other builders like the PropPlug.
If you would like to see some pictures look in the N8VEM wiki. The most recent ones are my system in work. I am very happy with how this project has turned out and am hopeful there will be more N8VEM with Propeller projects. I think an Ethernet and/or USB might be a good starting point. I am also considering a simple media board with TV and audio for the PropIO mezzanine.
Thanks and have a nice day!
Andrew Lynch
PS, Heater, I am finally testing the 6809 IO mezzanine board for the 6809 host processor. It is working well. One of the N8VEM builders has CUBIX running on his N8VEM 6809 system. How are things with MoCog? We should do a N8VEM 6809 Propeller project. I think it would be possible to modify PropIO to fit on the 6809 external expansion bus. That would be cool! So many ideas, so little time!
Sadly MoCog development has been stalled for a long while. The 6809 is a complicated beast and the emulation code just gets bigger and bigger. In the Z80 emulation we had the luxury of using PASM overlays for emulating most of the non-8080 core instructions. That was OK as CP/M programs pretty much only uses 8080 ops. So it did not matter that using overlays for the rest is very slow. In the 6809 all ops and addressing modes are used a lot so having overlays to get the code into the COG brings it to a crawl.
MoCog was stalled whilst I figured out how to distribute the emulation code around 2 COGs to get some speed back. Then I got diverted by some other projects....so little time!
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
http://n8vem-sbc.pbworks.com
go to the DWM-PropIO folder.· The folder list is on the right hand side in a little window.
This URL might work for the folder
http://n8vem-sbc.pbworks.com/browse/%23view%3DViewFolder%26param%3DDWM-PropIO
Sort the files in the DWM-PropIO folder by date and the most recent files are the photos I took yesterday.
Thanks and have a nice day!
Andrwe Lynch
How about take the PropIO and adapt its design to fit the 6809 IO mezzanine board's expansion bus and then use it to add PS/2 keyboard, VGA, and microSD to add another PCB layer on top?· Then we'd have both the real 6809 CPU and all the Propellery goodness in one neat package.· Dave wrote PASM code to interface to the Z80 CPU bus and I think it could be either reused with glue logic or adapted with new PASM code to work with the 6809 CPU bus.
It may be easier than attempting to stuff in all the 6809 modes into the Propeller RAM.· The 6809 was probably the height of 8 bit CISC design and is arguably the best 8 bit CPU ever made.· I think it may be even better than my beloved Z80 but it certainly is more complicated.· It has many 16 bit instructions and blurs the distinction of what constitutes an 8 bit CPU IMO.· I mean, an 8088 is considered a 16 bit CPU and is internally 16 bits but externally 8 bits.· Similar with the 6809 architecture but it is still considered an 8 bit CPU.
Something to think about anyway.· I was also thinking about a MC6845/NEC765 board for the N8VEM 6809 computer but after using the PropIO for a while I am reconsidering going with VGA, PS/2 keyboard, and microSD instead.
Thanks and have a nice day!
Andrew Lynch
·
http://groups.google.com/group/n8vem/msg/a33de504e4240435
I love Propeller!· What a great product!· Thanks and have a nice day!
Andrew Lynch
PS, I am looking for·hobbyists interested in using the PropIO with vintage computers.· Z80 based machines are the logical starting point but I believe this concept of the shim socket could be extended to other CPUs as well such as 65xx/68xx.· The software to access PropIO is relatively simple and building the prototype shim socket is certainly doable.· Non-Z80 CPUs would require some simple conversion logic to match the ECB bus.
Post Edited (lynchaj) : 3/10/2010 12:59:46 PM GMT