Author Topic: Generating Digital Test Patterns  (Read 2914 times)

0 Members and 1 Guest are viewing this topic.

Offline conducteurTopic starter

  • Regular Contributor
  • *
  • Posts: 121
  • Country: be
Generating Digital Test Patterns
« on: February 20, 2017, 08:43:33 pm »
I need/want to buy equipment to generate digital test patterns.
--> To generate digital signals where the logic level represents a '0' and '1' (TTL or 3.3V logic or other voltages) and where the signal can chance on a regular interval.
--> To generate digital signals where the duration of a pulse represents a '0' or a '1'.
--> Generating at least  8 bytes. More is better.
--> Up to 100kHz, More is better.
--> Being able to use different voltage ranges (ex TTL; 3.3V logic and even AC sqaure waves between plus and minus 15 volts per example).

- It's to test and debug microcontroller projects to decode many special serial protocols
-- Nice feature: the µC can generate a pulse on an IO Pin back to the generator when a correct pattern was detected. The generator knows wheter the generated pattern is correct, and counts how many times a (in)correct pattern was decoded (in)correctly?

Can i use an arbitrary waveform generator for that? Are there other (better) ways to do it?


« Last Edit: February 20, 2017, 10:45:13 pm by conducteur »
 

Offline billfernandez

  • Regular Contributor
  • *
  • Posts: 141
  • Country: us
Re: Generating Digital Test Patterns
« Reply #1 on: February 20, 2017, 09:58:18 pm »
Except for counting when a correct pattern is detected, some arbitrary waveform generators (e.g. the Siglent SDG2042X https://www.eevblog.com/forum/testgear/the-siglent-sdg2042x-thread/) could be used for this, at the cost of about $500.

On the other hand, both the test pattern generation and the counting can be done with something like an Arduino or a Rasberry Pi using I/O pins.  But at the cost of having to do some construction and progamming, and without the 15V ability.
 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9890
  • Country: us
Re: Generating Digital Test Patterns
« Reply #2 on: February 20, 2017, 11:48:59 pm »
Out to 1024 patterns of 16 bits, the Digilent Analog Discovery will generate any digital pattern you want at just about any frequency from 100 mHz to 100 MHz in the conventional 1,2,5 pattern.  The pattern can be externally triggered with various timing and repeat options.  I didn't spend any particular effort on generating an 8 word pattern and watching it on my scope.

It will only do 3.3V output so if you want to scale it to 5V, you will need a level shifter.  If you want +-15V you will need an op amp or comparator.

http://store.digilentinc.com/analog-discovery-2-100msps-usb-oscilloscope-logic-analyzer-and-variable-power-supply/

It probably doesn't meet all of your wish list.  You might just want to use a uC to generate the signals and read back the results.  I might consider a CPLD or FPGA for such an application but changing the pattern might be a PITA.

You can install the Waveforms software and play with the demo device.  I don't know how
 

Offline DaJMasta

  • Super Contributor
  • ***
  • Posts: 2297
  • Country: us
    • medpants.com
Re: Generating Digital Test Patterns
« Reply #3 on: February 21, 2017, 12:09:20 am »
I think the simplest method with this kind of low speed stuff is just going to be to buy a dev board for a micro or a cheap CPLD/FPGA with the interfaces you want to be able to test and enough firmware available to make opening those connections and sending data easy.  Then if you want wide ranges or AC transmission, you need a second supply, a transistor, and a cap for AC coupling, would be very simple to add on a breadboard and until you get into the few MHz range, having it on a breadboard shouldn't degrade the signal integrity significantly, especially at larger voltages.

There are certainly dedicated clock synthesizers or data pattern generators that can do this, but generally they'll be much higher bandwidth and much higher price to go along with it.  Probably great candidates for what you're trying to do, but many times more expensive than what will get the job done.
« Last Edit: February 21, 2017, 12:11:11 am by DaJMasta »
 

Offline Boson

  • Newbie
  • Posts: 8
  • Country: sk
Re: Generating Digital Test Patterns
« Reply #4 on: February 21, 2017, 11:19:06 am »
Digilent Analog Discovery

+1, have AD2. Silly as scope with clumsy BNC addon but 5+ general purpose swiss knife.
 

Offline woodchips

  • Frequent Contributor
  • **
  • Posts: 594
  • Country: gb
Re: Generating Digital Test Patterns
« Reply #5 on: February 21, 2017, 05:41:43 pm »
Look for either a HP 8016 or 8018.
 

Offline NorthGuy

  • Super Contributor
  • ***
  • Posts: 3146
  • Country: ca
Re: Generating Digital Test Patterns
« Reply #6 on: February 21, 2017, 05:53:41 pm »
If you do this for an MCU, then you probably already have a spare MCU (bread)board which can be programmed to generate arbitrary digital signal in a matter of minutes. It can read back your return signal and act upon it, and it'll do this part better than $2K ARBs.
 

Offline billfernandez

  • Regular Contributor
  • *
  • Posts: 141
  • Country: us
Re: Generating Digital Test Patterns
« Reply #7 on: February 21, 2017, 07:36:52 pm »
Just came upon this article about how to use Node-RED (drag and drop programming) with Raspberry Pi to control the I/O pins.  Looks like it might simplify life if you're inclined towards a DIY solution.


http://lifehacker.com/everything-you-need-to-get-started-controlling-a-raspbe-1792397686

https://www.raspberrypi.org/learning/getting-started-with-node-red/worksheet/
 

Online Berni

  • Super Contributor
  • ***
  • Posts: 4949
  • Country: si
Re: Generating Digital Test Patterns
« Reply #8 on: February 21, 2017, 07:44:38 pm »
I recently scored a Tektronix CSA 897T Pattern Generator on ebay for 40 USD.

It can generate 4KB long sequences of data at up to 700Mbit/s
 

Offline james_s

  • Super Contributor
  • ***
  • Posts: 21611
  • Country: us
Re: Generating Digital Test Patterns
« Reply #9 on: February 21, 2017, 08:44:33 pm »
I think I would use a CPLD or FPGA, but then I've been working with those lately and there's a saying "When all you have is a hammer, everything looks like a nail."  I think it would be trivial to do what you want with one though. Or you could set up a simple binary counter to drive the address pins of a parallel flash eeprom and load it with whatever pattern(s) you want. Add additional eeproms with the address lines in parallel to increase the number of bits in the pattern.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf