A Peripheral I/O bus for the Prop? - Does anyone see the need?
Painless
Posts: 69
There has been a lot of activity in the forums lately on software and hardware that add (amongst other things) to the Prop:
- Extended memory
- Operating system based services
- Mass storage
- Better HID (Color LCD's, extended VGA modes)
- Multiple props for task offloading
I was wondering if anyone had given any thought to developing a standardized peripheral I/O bus for the propeller? I've been drawing up some rough schematics and principles for an 8 bit I/O bus system that would allow the connection of up to 8 expansion cards, each with it's own processor, using only 9 pins of the prop.
This bus would feature:
- 8 bit parallel data transfer (unsure of speed until the protocol is finalized).
- Regulated 3.3v and/or 5v feed for each card.
- Bus manager in 1 cog on the host propeller.
- Messaging system between application cogs and bus manager utilizing hub ram.
- Dedicated micro-processor on each card (surface mount prop?) for bus communication and task offloading.
Each peripheral card would use a 15 pin connector for communication with the bus, the pin-out would be something like:
1 through 8 - 8 bit data bus
9 - Attention pin
10 through 12 - 3 bit card address encoded via binary in hardware
13 - 3.3v
14 - Ground
15 - 5v
As I mentioned, this is all pretty much 95% in my head at the moment with some rough schematics and notes. I would like to get an idea of how much interest their would be in such a bus before I devote much more time to it. Is this something in which their would be great interest or a waste of valuable time?
I would intend the bus design to be a fully open source and free offering.
Russ.
- Extended memory
- Operating system based services
- Mass storage
- Better HID (Color LCD's, extended VGA modes)
- Multiple props for task offloading
I was wondering if anyone had given any thought to developing a standardized peripheral I/O bus for the propeller? I've been drawing up some rough schematics and principles for an 8 bit I/O bus system that would allow the connection of up to 8 expansion cards, each with it's own processor, using only 9 pins of the prop.
This bus would feature:
- 8 bit parallel data transfer (unsure of speed until the protocol is finalized).
- Regulated 3.3v and/or 5v feed for each card.
- Bus manager in 1 cog on the host propeller.
- Messaging system between application cogs and bus manager utilizing hub ram.
- Dedicated micro-processor on each card (surface mount prop?) for bus communication and task offloading.
Each peripheral card would use a 15 pin connector for communication with the bus, the pin-out would be something like:
1 through 8 - 8 bit data bus
9 - Attention pin
10 through 12 - 3 bit card address encoded via binary in hardware
13 - 3.3v
14 - Ground
15 - 5v
As I mentioned, this is all pretty much 95% in my head at the moment with some rough schematics and notes. I would like to get an idea of how much interest their would be in such a bus before I devote much more time to it. Is this something in which their would be great interest or a waste of valuable time?
I would intend the bus design to be a fully open source and free offering.
Russ.
Comments
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
www.mikronauts.com - my site 6.250MHz custom Crystals for running Propellers at 100MHz
Las - Large model assembler for the Propeller Largos - a feature full nano operating system for the Propeller
Morpheus & Mem+ Advanced dual Propeller SBC with XMM and 256 Color VGA
Please use mikronauts _at_ gmail _dot_ com to contact me off-forum, my PM is almost totally full
If the bus is general enough then much of what you might want to connect to the propeller can be connected via the bus, so it may not matter so much that the bus uses maybe 15 pins instead of just 9.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--Steve
Propalyzer: Propeller PC Logic Analyzer
http://forums.parallax.com/showthread.php?p=788230
PARALLEL BUS:
I don't believe a standard is possible because
SERIAL·BUS:
This is my preferred option because
Just my opinion.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBladeProp, RamBlade, TwinBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: Micros eg Altair, and Terminals eg VT100 (Index) ZiCog (Z80), MoCog (6809)
· Search the Propeller forums (via Google)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
Whether a parallel standard is necessary is debatable. One thing is certain though: If someone comes up with a proven good working solution and draft specification, others *can* follow if they need a parallel bus solution. Not everyone has the chops necessary to create a good solution.
It's better to stand on a rock than climb a sand dune.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--Steve
Propalyzer: Propeller PC Logic Analyzer
http://forums.parallax.com/showthread.php?p=788230
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
www.mikronauts.com - my site 6.250MHz custom Crystals for running Propellers at 100MHz
Las - Large model assembler for the Propeller Largos - a feature full nano operating system for the Propeller
Morpheus & Mem+ Advanced dual Propeller SBC with XMM and 256 Color VGA
Please use mikronauts _at_ gmail _dot_ com to contact me off-forum, my PM is almost totally full
If you want to set a "standard", design and sell a family of boards that people will want to buy — and imitate. Effective standard-setting works from the bottom up, not from the top down.
-Phil
The main reason for starting this thread was that I wanted to work on this as my next project after my current one has finished. My current project involves using a propeller as a 'piggy back' device between a vehicle ECU and it's sensors, effectively allowing some control over air / fuel mixture and ignition timing while also providing pertinent information to the user. This project has currently been brought to a screaming halt due to my vehicle's ECU breaking and needing replacement, hence robbing me of my test platform., in light of this I thought I would do some basic research into the peripheral bus idea.
Thanks again,
Russ.