static ISSP-based connection checker (m8cutils-21test0)

A catchall for PSoC Mixed-Signal Array (microcontroller) discussions not captured by the other forums.

Moderator: ericb

static ISSP-based connection checker (m8cutils-21test0)

Postby werner on Sun Dec 10, 2006 4:47 am

I've just written a little static connection checker that uses ISSP to check the
connections seen by a PSoC. It uses m8cutil's libprog. Here is an interim
release of m8cutils with the connection checker:
http://www.almesberger.net/misc/cy8c2/m8cutils-21test0.tar.gz

The connection checker is in the directory connchk/. To use it, you need
- a Linux system to run the connection checker on,
- a circuit with a PSoC that talks ISSP and uses reset mode,
- a programmer supported by libprog, e.g., the ridiculously cheap and easy to build
wadsp.

Next, you need to define what the environment of your chip looks like. For example,
a bare chip with two ports without anything connected to them could be defined as:

Code: Select all
#define ANY Z, 0R, 1R, 0, 1
P0, P1 allow ANY external Z


Then run connchk -d wadsp the_file_from_above
and it'll detect and report any shorted pins and other inconsistencies.

It can of course do more. See connchk/example/README for a few simple examples.
You could do a similar kind of testing already with m8csim, but connchk simplifies this
task by generating all the (possibly hundreds if not thousands) test cases
automatically from the environment description.

This is still very experimental, but I'd be curious about any feedback you may have.

- Werner
werner
The Big Cheese
The Big Cheese
 
Posts: 246
Joined: Fri Jan 20, 2006 10:20 am
Location: Buenos Aires, Argentina

Re: static ISSP-based connection checker (m8cutils-21test0)

Postby werner on Tue Dec 12, 2006 8:00 am

I made a few improvements to the connection checker:

http://www.almesberger.net/misc/cy8c2/m8cutils-21test1.tar.gz

First of all, my marketing department suggests that "boundary scan" sounds more
professional, to it's now called "m8cbscan", not "connchk". This also helps against
that little voice whispering "name clash risk".

Then, I've added more detailed models for various components and also fixed the
false positives of the diode example. The new models are in models.m8cbscan. I
haven't quite decided yet whether I want to include them by default or not. They're
certainly handy if you need them, but then, who puts wires, resistors, or diodes
between the pins of a microcontroller in a real circuit, without connecting anything
else to these pins ?

bscan/ident contains a script that uses all this to play a little component guessing
game. As you can see in bscan/ident/README, it's quite good at it.

- Werner
werner
The Big Cheese
The Big Cheese
 
Posts: 246
Joined: Fri Jan 20, 2006 10:20 am
Location: Buenos Aires, Argentina

Re: static ISSP-based connection checker (m8cutils-21test0)

Postby werner on Sun Dec 17, 2006 7:10 am

The last test version before the next release:

http://www.almesberger.net/misc/cy8c2/m8cutils-21test2.tar.gz

m8cbscan has gotten a bit more correct: the drive mode selection now uses the
logic described in the glitches thread, and it only tests configuration if all pins
could be configured, thus reducing false negatives.

Then, I've added a "gentle" test, where m8cbscan tries only high-impedance or
resistive settings, which can help to avoid situations where we have a "strong"
short.

The configuration syntax has also gotten a bit better: "allowed" and "external"
clauses can now be omitted, in which case the set of values compatible to the
other clause is used. Lists can now contain elements which are lists in
parentheses, which makes makes it easier to write macros. I've used this to
reduce the number of choices in models.m8cbscan, yielding faster tests.

Finally, the tests in ident/ are now more streamlined and test a board that has
all the scenarios, without requiring manual reconfiguration, greatly simplifying
regression testing.

- Werner
werner
The Big Cheese
The Big Cheese
 
Posts: 246
Joined: Fri Jan 20, 2006 10:20 am
Location: Buenos Aires, Argentina


Return to PSoC1 General

Who is online

Users browsing this forum: Bing [Bot] and 2 guests