What hardware and software for unit testing/SPLD device verification?

Not sure exactly what kind of widgets I need for this task, so any advice would be appreciated.

I'd like to be able to run unit tests on GreenPAK-type SPLDs using some kind of unit testing framework, where I could write the validation suite on a PC using some high level or scripting language, and have the interface automatically apply test signals and probe the device response.

Right now I'm just using the advanced development platform:

formatting link

And connecting this to an AVR/Arduino uP using a breakout cable and using the Arduino implementation of the Aunit unit testing suite to write the tests, manipulating pins and then the unit test software reads back output pin states, this mostly works OK but it's not very elegant.

These devices can have both analog and digital outputs but assume I need only digital unit testing for now.

Would some kind of logic analyzer be the right tool to accomplish this task? Obviously I need multiple channels but I don't need 50-100 like I'm debugging a TTL mainframe or something. Open to older hardware but I don't really want to use GP-IB so USB or at least Ethernet would be ideal for real-time measurements. What software could then be used on the PC side to code the tests?

Reply to
bitrex
Loading thread data ...

Thanks for your thorough reply! There are a lot of good points and I have to think some of it over more, but for the moment I think I mainly need the ability to verify state machine behavior, the designs aren't mission-critical enough that I need to drill down to the (unlikely) hung-gate level in the way you mentioned.

So apply input signals with some "hold time"- the GreenPAK state machines are asynchronous but YKWIM - and verify appropriate transitions and ending state.

As you mentioned the ADP/programmer has some integrated hardware for routing and applying test signals (limited to 5kHz, but for some state machine testing that's not entirely useless), and while the user interface for the development board is very intuitive for setting up simple signal routings and monitoring outputs with LEDs, etc. it's not very conducive for running more elaborate unit tests. I'm not sure there's any way to control the dev board strictly from software.

Reply to
bitrex

Yeah, setting up simple checkouts using the ADP/emulator and the onboard stimulus generators is straightforward enough.

More thorough tests on are a PITA, the environment is a GUI like LTSPice but AFAIK there's no provision to use any kind of list of directives or scripting language to create and sequence a variety of tests.

Reply to
bitrex

I realized that for parts that have I2C (which isn't all parts, but most of the ones I use do) that you can use that to read or write to just about anywhere in the device's configuration matrix and the states of all relevant inputs and output registers are going to be in there somewhere.

So for testing asynchronous state machine logic it might work to just use I2C for writing the input state registers and then reading back the output registers that go to the pins, it's probably OK to assume the pins work correctly on a working device :)

So an PC -> I2C interface of some type that integrate with e.g. Python or C++ on PC platform might be OK for some of this. I feel like I might have an FTDI dongle in my bins somewhere..

Reply to
bitrex

Incidentally while these devices are OTP they have both an NVM layer and a RAM layer, after it's powered up the NVM layer is loaded into RAM but after that the RAM layer can be re-written via I2C to accomplish various tasks like e.g. change comparator thresholds or set counters, etc...in theory rewrite the whole device to have some other function but I haven't explored that possibility fully.

Reply to
bitrex

Incidentally Dialog used to offer programmed devices in quantities of hundreds turn-key, I read that now that it's a Renesas product line there are 5k minimums with lead times of 14 weeks for factory-programmed devices...thanks guys

Reply to
bitrex

It really sounds like you are describing JTAG boundary scan

Reply to
Jasen Betts

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.