Propeller Platform Logic Analyzer Module
jazzed
Posts: 11,803
Hi. I'm looking for feedback on one of the projects I'm doing for the Propeller Platform to be sold at GadgetGangster.
If you've never used a logic analyzer for debugging, you don't know what you're missing.
Using a Logic Analyzer is like having millions of LEDs for debugging, but more practical
You can see signal changes over time and monitor codes output to pins from PASM for example.
Your feedback on hardware enhancements is welcomed as the board will not go to FAB for a week.
100MHz Logic Analyzer module feature set:
If you've never used a logic analyzer for debugging, you don't know what you're missing.
Using a Logic Analyzer is like having millions of LEDs for debugging, but more practical
You can see signal changes over time and monitor codes output to pins from PASM for example.
Your feedback on hardware enhancements is welcomed as the board will not go to FAB for a week.
100MHz Logic Analyzer module feature set:
- Compatible with Propalyzer or ViewPort
- Compatible with any PC/Linux Program running serial data collection software
- Designed for 100MHz operation
- Allows monitoring up to 30 pins on the Propeller Platform or externally
- Requires a PropPlug for operation(1)
- Use without needing an extra power brick on Propeller Platform
- Can function as a battery powered (3 NiMh) stand-alone Propeller board
- Allows stacking boards for multi-Propeller experiments(2)
- Allows data collection with > 3.3VDC signals via series resistors
- The PropPlug adds cost for using 1 board, but is cheaper/easier using multiple boards.
- A 1M Ohm pull-down is used and BOE can be pulled up for special reset control.
Comments
Where does X1 connect to? Is that for external power?
Are you secretly trying to pushed a stacked multi-propeller computer without actually attracting suspicion? I think I'm on to you! ;^)
Doug
Just call it multi-purpose
I've used a Propeller for debugging projects for a couple of years now and find it very valuable. I found that having to use another brick with a stacked Propeller platform board very annoying, so I decided we needed a board that could just use the already regulated voltages. That with the ease of connecting to a powerful development platform made me think this is a reasonable idea.
@Nick, yes X1 is a power connector for hooking up a 3AA NiMh battery pack.
I assume you are familiar with the Open Workbench Logic Sniffer, which is just under US$45. It samples up to 32 channels (16 buffered up to 5 V), at up to 200 MHz, and has a sample depth of 24K 8-channel samples (fewer for more channels -- limited RAM on the board). I have just started using it for some signal timing tests on one project.
@DingBatty, the sample depth at 100MHz I use today is about 500 x 32 bits. I know this can be higher (20KB+) by using a 5 COG solution as outlined by Kuroneko etal, but I've been too lazy to bother.
This product is designed for Propeller enthusiasts using the Propeller Platform footprint.
@schill, I've taken up your exellent suggestion to make sure that the card edge pins can be disconnected from Propeller and the series resistor protected connectors. I don't have room for 2 pin headers, but simple cuts/jumps can be made to achieve your goal.
Here is the latest layout. It says A1, but there may be some changes before FAB.
@hinv, I'm definitely not looking to replace any of the Propeller Platform boards. They have very hefty and useful voltage regulators - with lots of warm and fuzzy LEDs. No, I don't have room for LEDs on each pin so don't ask
The great thing about this is it eliminates the need/expense for an expensive (if you want it to last and be reliable) interface harness. Its like a BSLA for Propeller Platform.
I note you only have 500 samples. I did about ~1700 samples using 4 cogs which you will need to do to get 100MHz sampling. It would not be too difficult to use all 8 cogs and get ~3000 32bit samples. The one thing I wanted to do was to perform sampling continuously so that I could effectively sample part way before the trigger. Haven't quite worked out how to keep the cogs rolling. However, at 25MHz it is doable. In fact, at 25MHz it is most likely possible to use hub as well.
@Cluso - I think the idea is to keep it through hole, but having an option for a small SOT23 Vreg would be nice. What about just having pads for one on the bottom of the board and pads for a few SMT bypass caps? That way advanced users could add one on themselves.
I'm also considering a more risky separate version that adds the USB connector as a serial port (update would not be using Propeller Tool). This option would eliminate the need for PropPlug for normal use, but would require PropPlug for programming. I've done it before successfully with BradC's USB peripheral code. The trick is to use prop-plug for initial programming and USB for communications and updates thereafter. This board is similar to what Nick mentions except that the SMD parts are on top.
I'm planning an order of 9 pin header SMD grabber cables. Up to 4 of these cables could be used per board as required.
@Cluso99, On the topic of samples, I use a version of your data-logger with your copyright below. Like I mentioned before, I believe I can arrange for a capture directly to hub which would greatly simplify the code and may allow "save to trigger" using a FIFO. The HUB buffer space would obviously be split by the number of cogs doing data collection.
Updated: this one has LEDs for serial port activity.
Jeff T.
Steve: The attachment for the USB is not shoing up on your post (just an "x")
Unsoundcode: I am pressing (or doing) a mini-USB-AB and expect we will not require any FTDI chip shortly. So we will have that avantage soon. I emailed Steve some more info. My circuit is here http://forums.parallax.com/showthread.php?t=126479&highlight=modblade+cluso99
BTW, I put the SOT223 regulator over the 0.1 header so that they can not be used at the same time. I don't know yet, but I may change that - in retrospect, It's probably better just to have a 3 pin jumper. There are LEDs on the board to detect USB activity; there is some risk of interference with the USB signals, but I think it will be fine.
@Unsoundcode, I understand the desire to use USB. I think it is valuable for users in many conditions. It should be pretty easy for example to offer a stand-alone version of this board in a nice case with some dimension changes.
The USB version I posted will allow for USB and PropPlug though not simultaneously. I've used BradC's USB serial driver with Propeller several times and am happy with it. The USB driver will run in the Propeller - a Propeller Tool compatible bootloader would be ideal.
Weening ourselves from FTDI chips and drivers is a valuable and achievable goal.
The protocol I use with Propalyzer is simple. I expect to add commands as necessary to support commands like "save until trigger" some day so the protocol is subject to change. Of course there is nothing to stop you from defining your own protocol and capture code except not having a PropPlug for the time being.
I am pleased you have used Brads USB code. The FTDI chip at ~$4 is a bit steep when the prop is ~$8. I just have not had any software time in the last 6 months :-(
A suggestion. Bill & I are using pluggable xtals using pins from Future Electronics. They need a larger hole though. If you have plenty of bypassing it will most likely run happily at 108MHz using 13.5MHz xtals. In fact it seems like the DIP Prop can actually run faster than the QFP. Sapieha has been running at 120MHz on TriBlade.
PS. Thanks for the recognition in the code
Now as I have much more DIP Props I tested more extensively ADN --
It is only some of them that can run with 15MHz PLL8x
BUT all run with 14.318180MHz PLL8x
That's good ... I have no interest in a USB version. The Prop Plug is not an issue, I sell an FTDI based board called "the BUB" for $14 that was designed as an Arduino programmer, it can (by a jumper) be set for 3 or 5 volts and with the addition of a $2 adapter board (to rearrange pinouts) it is an exact substitute for a Prop Plug. Further, if you have either an RS232 port or a USB-RS232 adapter, I have my "P1" serial adapter which I sell for $5 ($4 when bought with anything else) That could be used also, if you would add a fifth pin next to RX with 3.3 volts on it, as Nick did in some of his stuff and several others have proposed for use with the SerPLug.
Added 3.3V to the PropPlug connector on the through-hole board. Let me know if there is anything else you would like. I'll probably FAB 20 boards.
Brian and I have been discussing more of what he wants his board to do
and the design has changed accordingly. His board will be different from
the USB board in several ways. The design should be ready to turn tomorrow.
The USB board has had one change. I expect to start FAB on these two
board designs and one or two others at the same time.
Merry Christmas.
--Steve