7 Apr 2005 brouhaha   » (Journeyer)

Nonpareil , la2vcd (new)

As mentioned in my last entry, I've been capturing microcode execution traces from an HP-97 using an HP 16500B logic analyzer, in order to reverse-engineer the additional instructions used in the Topcat series and similar HP calculators, to add those to Nonpareil. The logic analyzer provides the captured data as a set of text files, one per signal, with one data sample as binary (represented as ASCII text) per line.

That format isn't directly useful for much, so I've had to write a few translation programs. One of them that might be useful to other people is la2vcd, which will take the HP (or Agilent) logic analyzer traces, and convert them into a VCD (Value Change Dump) which is supported by most waveform-viewing software, including GTKWave.

Unfortunately extracting the data from the analyzer is a very slow process, even over Ethernet. At most I've seen a little over 10 KBytes per second. Apparently it is doing on-the-fly format conversion from its internal binary representation into the test form. The poor little 68000 in the analyzer is just too wimpy. A 2 megasample capture of five signals using a 16555A module took nearly two hours to FTP out of the analyzer. In the future I'll just tell the analyzer that all five (or more) inputs are part of a single vector, which will at least reduce the overhead somewhat.

Even with this long delay to get data out of the analyzer, it is still much better using GTKWave to inspect the results than trying to do it with the analyzer's built in display and knob. The poor thing takes over five seconds for each display update when you turn the knob one detent (which is like clicking a scroll arrow; it only scrolls a small amount of new material onto the display).

Maybe someday I'll be able to afford a used 16500C, which is 68020 based and might be less sluggish. But at least the actual acquisition capabilities of the 16500B/16555A are quite good.

I expect that the latest Agilent logic analyzers probably can directly export in VCD format, but I haven't researched it since I can't afford to buy one. If they don't, they certainly should!

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!