Opal Kelly Expert #3: Design an FPGA-based logic analyzer in a day!
![]() |
0.0 (0) |
Good grief! Where does the time go? It seems like only a couple of days ago that I was announcing the launch of the Experts Design Challenge organized by the folks at Opal Kelly, but in fact several weeks have gone by and here we are with expert #3...
Just in case you are new to all this, the purpose of this Design Challenge is to use one of Opal Kelly's cunning little FPGA-USB modules to create an FPGA-based logic analyzer in a single working day.
"In just one day?" you cry, "It's not possible!"
"Ha!" I reply, "It jolly well is!"
Hmm, this has just started me thinking. You remember the books we read when we were kids... the ones where everything was very dramatic along the lines of:
"What's that?" said Wendy, frantically.
"It's an elephant," replied John, excitedly.
As I recall, there's a word for this sort of thing ... where you augment the "xxx said" part with a descriptor like "frantically" or "excitedly". There used to be all sorts of funny spoofs based on this style. Do you remember what this is called? (If so please email me at This e-mail address is being protected from spambots. You need JavaScript enabled to view it and share this nugget of knowledge.) But, as usual, you've led me astray and we've wandered off into the weeds...
The first expert to rise to the challenge was Rainer Malzbender (Click Here to see my blog on Rainer's solution). Next we saw a very spirited offering from Kevin Smith – a man equipped with a kangaroo AND an active DOD secret security clearance (Click Here to see my blog on Kevin's masterpiece). And now my cup runneth over, because we have a rather cunning solution from Expert #3 – Klaus Zietlow.

Here's Klaus holding the Opal Kelly module used to implement his FPGA-based logic analyzer.
Klaus is pretty much a "one-stop shop" for any form of electronics design, including analog, digital, and mixed-signal. He has worked on everything from high-speed, high-precision analog to FPGA-based embedded multiprocessor designs to ultra low-power radios.
Klaus has a fully-equipped lab and – more importantly – he knows how to use it (grin). I mean we're talking well-equipped here ... Klaus has everything from a 7-digit voltage calibrator, to a 4 GHz DSO curve tracer, to a real-time spectrum analyzer. He's also got a reflow oven, a thermal imaging camera, an inspection microscope, and a time interval analyzer. He also maintains a metalworking shop with mill, drill, lathe, CNC router, and a welder (just in case).
As we all know, of course, it's not the size of your CNC router, it's what you can do with it ... but once again I digress...
I was just chatting with Klaus, who is a very interesting fellow. We were talking about the sort of designs we all used to do way back in the mists of time. Klaus mentioned that, once upon a time, long, long ago, he actually constructed a physical logic analyzer. This was implemented as a mixture of off-the-shelf "Jelly Bean" 74FCT-series devices, Lattice 5 nS GALs (which he says "used to cost an arm and a leg"), Hitachi 4K x 4-bit SRAM chips, and a bunch of other stuff. The final product – which occupied a 19-inch rack stuffed with Eurocards – took six months from start to finish!
Can you imagine if I could travel back in time, arrange to meet the young Klaus, and tell him that one day he would be able to use a single customizable chip called an FPGA to create a logic analyzer in a day? I bet he would have laughed his socks off (while frantically pressing the button under his desk to call security, which is what most folks do when I enter the room).
"Are you insane?" asked Klaus, quizzically.
Sorry, I can't help myself. Once you start this sort of thing it's hard to stop again. So where were we? Oh yes, Klaus and his logic analyzer. A few years ago Klaus was working on a project that required the combination of an FPGA with a USB interface. So he performed a Google search, ran across Opal Kelly's FPGA-USB modules, and thought to himself "Why bother reinventing the wheel?" Since that time, Klaus has used these modules in a wide variety of projects.
Klaus says that his specialties are circuit design and debugging, system analysis and optimization, VHDL, Verilog, DSP, C, C++, and LabVIEW. He also notes that he's interested in working on challenging projects in the embedded systems field where his interdisciplinary skills can be used to the fullest.
One of the things I've really enjoyed about this challenge is the fact that the three experts all tackled it from very different directions. In this case, Klaus decided to use National Instruments' LabVIEW as the base for the graphical display of his logic analyzer results.

Click Here to see a larger, more detailed version of this image.
I tell you, I am constantly amazed by the quantity and quality of "stuff" that an expert like Klaus can generate in a single working day. (Admittedly it was a long day – Klaus says that he spent 1 hour on high-level scribbling, 4.5 hours coding the Verilog, 1 hour playing with the PLL, and 5.5 hours working on the GUI.)
Having said this, Klaus did ask me to point out that this Design Challenge project was not created to the same professional standards he would use when working on a production project. He says that the code has bugs and it's not been refined enough – also that this is "exhibition quality" rather than "production quality"...
...speaking of which, as with all of the entries to this design challenge, Klaus's design files (LabVIEW VIs and HDL source code etc.) are available from the Opal Kelly website at www.opalkelly.com/experts/logic.
Well, I don’t know about you, but I've really enjoyed this design challenge. I love the idea of something that you can create in just one day. I was chatting with the folks at Opal Kelly and they say that they are keen to do another one ... they're just pondering as to what the topic should be. I was thinking that some sort of image processing application might be interesting ... taking the input from a digital video camera, processing it in some way using the Opal Kelly module, and then displaying the modified result in real-time on the PC. What do you think?
User reviews
To write a review please register or login.





