Author Topic: Older logic analyzer question.  (Read 5917 times)

0 Members and 1 Guest are viewing this topic.

Offline Dan Moos

  • Frequent Contributor
  • **
  • Posts: 302
  • Country: us
Older logic analyzer question.
« on: May 10, 2017, 02:02:10 am »
I just picked up an HP 1631D logic analyzer on eBay. I don't have it yet, but it was 60 bucks (plus shipping), was advertised as working, and coming from a working environment. It's in many ways inferior to the cheap, 8 channel, Chinese knock-off Saleae clone I have, but it has way more channels, and it tickles my old gear soft spot. Current project is a 6502 single board computer build, and testing it with era appropriate great seems perfect.

In skimming the manual PDF, I see it differentiates between "timing" and "state" channels. Best I can tell is that the state channels require an exterior clock source, whereas the timing channels are asynchronous.

What are the limitations, advantages, purposes, ect, of the two types of channels?

It will come with two "pods" for timing channels, and , 3 for state channels. In the pics, it appears each pod has 8 channels, so any way you cut it, I have a lot more channels than the fake Saleae.
 

Offline helius

  • Super Contributor
  • ***
  • Posts: 3059
  • Country: us
Re: Older logic analyzer question.
« Reply #1 on: May 10, 2017, 02:31:27 am »
Timing and State are the two basic LA acquisition modes. They were developed for the parallel bus paradigm, where devices latch data onto an 8-, or 16-, or 32-bit wide bus in response to a clock signal. This was commonly done by bus transceiver chips like the 74LS245 and others. The memory bus directly connected to a microprocessor would be another example.

The names Timing and State should be entirely self-explanatory, since checking the timing, propagation, or delay of signals is a basic engineering problem. Similarly, designing and testing state machines is another basic topic in electronics and computer science.

If you use Timing acquisition to probe such a bus, the analyzer is armed and waiting until its trigger condition is satisfied (the trigger condition can be complex and depend on several events). Then when the condition is true, it begins sampling all of its inputs into memory at a programmed rate, asynchronous to the DUT. This means that with a fast enough acquisition, you can record signal integrity problems such as runt pulses or glitches. Analyzing the data content itself is not feasible in Timing mode (was that two ADDQ #4 instructions, or just one?)

Using State acquisition, the analyzer waits armed until its trigger condition is true, and then records a sample each time the external clock transitions (the clock can be offset by a delay from the time the sample is taken). This is how you snoop the traffic over a bus and decode each word. It also can find defective components, by sampling the inputs and outputs (of an inverter, mux, or shift register) and comparing them. An additional clock qualifier can also be used (for circuits like flip-flops that use both clock and enable signals). State acquisition is not suited to pinpoint signal integrity problems.

More powerful techniques use both State and Timing machines with shared triggers or use one to trigger the other.
 
The following users thanked this post: janoc, egonotto, 1Ghz

Offline ChuckDarwin

  • Contributor
  • Posts: 39
  • Country: mh
Re: Older logic analyzer question.
« Reply #2 on: May 10, 2017, 04:55:32 pm »
I'll add the when you power up the 1631D you get a menu to individually choose if pods 0 and 1 are in TIMING or join pods 2,3,4 in STATE, and/or use only state or no state at all.  If it is a 31D, you also have a 2 channel 50MHz scope.  The three state pods have a clock lead (J,K or L) to get the clock from an external source.

The unit generates some heat and has a loud fan.  Intake in the back and blows out the right side--keep it to your left in the winter.  You can put a quieter fan in with some caution.

If you want user & service manuals or a getting started sheet, PM.
 

Offline james_s

  • Super Contributor
  • ***
  • Posts: 12378
  • Country: us
Re: Older logic analyzer question.
« Reply #3 on: May 10, 2017, 04:59:15 pm »
Grab the HP logic analyzer training manual, it will explain how to use timing and state modes. When I got my HP analyzer I used a cheap little FPGA dev board to roughly emulate the original training hardware. It's little more than a counter with an oscillator.
 

Offline TK

  • Super Contributor
  • ***
  • Posts: 1573
  • Country: us
  • I am a Systems Analyst who plays with Electronics
Re: Older logic analyzer question.
« Reply #4 on: May 10, 2017, 05:43:37 pm »
If you are working with 6502, there is an inverse assembler that works on old HP logic analyzers, in state mode.
 

Offline james_s

  • Super Contributor
  • ***
  • Posts: 12378
  • Country: us
Re: Older logic analyzer question.
« Reply #5 on: May 10, 2017, 06:04:52 pm »
If you are working with 6502, there is an inverse assembler that works on old HP logic analyzers, in state mode.

I wouldn't mind finding that, I work on 6502 based arcade game boards now and then.
 

Offline helius

  • Super Contributor
  • ***
  • Posts: 3059
  • Country: us
Re: Older logic analyzer question.
« Reply #6 on: May 10, 2017, 06:05:12 pm »
Another difference between Timing and State modes on some analyzers is support for sample compression in Timing mode. The idea here is that you want a fast enough timebase to catch transients, but still have a long enough capture window in case the transient is infrequent. So instead of recording each bit sampled, the analyzer records the delta-t to the last transition for each channel. This would not be done in State mode, as the transitions on each channel aren't what matter; what matters is the validity of all of the channels together relative to the qualified clock. Another Timing feature is called "glitch capture": it records transitions in each channel only if the delta-t is less than a specified threshold; so only if the required hold time wasn't satisfied.
« Last Edit: May 10, 2017, 06:07:40 pm by helius »
 

Offline gslick

  • Frequent Contributor
  • **
  • Posts: 353
  • Country: us
Re: Older logic analyzer question.
« Reply #7 on: May 11, 2017, 09:02:44 pm »
If you are working with 6502, there is an inverse assembler that works on old HP logic analyzers, in state mode.

I wouldn't mind finding that, I work on 6502 based arcade game boards now and then.

One issue with using inverse assembler software on the 1630/1631 series is that you need either an HP-IL tape drive or an HPIB disk drive, depending on what version of firmware you have, to load the software. Look at the asking & selling prices of 82161A HP-IL cassette drives on eBay, more than you paid for the 1631D. If you have the HP-IL mass storage firmware you can replace the ERPOMs with an HPIB storage version, although HPIB drives are usually not cheap either.

I have a 1630D that came with the HP-IL mass storage firmware. I don't have an 82161A HP-IL cassette drive so I replace the firmware with the HPIB mass storage version. I have 8085A inverse assembler software on 3.5-inch floppy that I was able to load on the 1630D using an HPIB floppy drive.

If you don't have any logic analyzer and can pick up a 1630/1631 series cheap locally without paying for shipping it's a lot better than not having anything if you need one, but once you have to pay shipping for one and start moving near the $100 mark or more total you are around the point where you can sometimes pick up a lot more modern and capable 16700 series logic analyzer system.
 

Offline james_s

  • Super Contributor
  • ***
  • Posts: 12378
  • Country: us
Re: Older logic analyzer question.
« Reply #8 on: May 11, 2017, 09:43:55 pm »
Mine is a 1660C which I got locally for $25, it was cheap enough that it just seemed like it would be cool to play with. Of course I'd spent 10 times that by the time I had a full set of pods and grabbers but I figure I can always keep those to use with a newer analyzer if the need arises. It has already paid for itself as I used it to repair a piece of vintage gear for someone.

It would be great to have a list of symbols for the 6502, Z80 and other chips of the era. My unit has a floppy drive built in, as well as a hard drive and HP-IB. I'm a novice when it comes to using these things but I've managed to figure out enough for it to be useful.
 

Offline TK

  • Super Contributor
  • ***
  • Posts: 1573
  • Country: us
  • I am a Systems Analyst who plays with Electronics
Re: Older logic analyzer question.
« Reply #9 on: May 11, 2017, 10:12:44 pm »
Mine is a 1660C which I got locally for $25, it was cheap enough that it just seemed like it would be cool to play with. Of course I'd spent 10 times that by the time I had a full set of pods and grabbers but I figure I can always keep those to use with a newer analyzer if the need arises. It has already paid for itself as I used it to repair a piece of vintage gear for someone.

It would be great to have a list of symbols for the 6502, Z80 and other chips of the era. My unit has a floppy drive built in, as well as a hard drive and HP-IB. I'm a novice when it comes to using these things but I've managed to figure out enough for it to be useful.
I have a 16702B, 16500C, 16500B and the latest acquisition was the 1670G with pattern generator and 2Mb option.  I like the 1670G because it has color LCD monitor (VS CRT on the 16500) and starts faster than the 16702B.  I used 6502 inverse assembler and it works nice.  I have the Z80 inverse assembler, but could not get a clean listing as the Z80 timing is more complex and involves several STAT lines.  I am looking for the HP 10300B interface or at least the schematics to check how the 4-bit STAT signals are generated from the Z80 control signals.
 

Offline Andy Watson

  • Super Contributor
  • ***
  • Posts: 1754
Re: Older logic analyzer question.
« Reply #10 on: May 11, 2017, 10:24:19 pm »
This is an interesting site for HP163x logic analysers:
http://www.rudiswiki.de/wiki9/HP1631Info
Somewhere on the web there is a project to emulate the external storage via the HP1360's GPIB interface. This allows you to load-up the inverse assemblers etc.. I thought the project was on the above site - but I can't find it now.
 

Offline gslick

  • Frequent Contributor
  • **
  • Posts: 353
  • Country: us
Re: Older logic analyzer question.
« Reply #11 on: May 11, 2017, 11:08:52 pm »
Somewhere on the web there is a project to emulate the external storage via the HP1360's GPIB interface. This allows you to load-up the inverse assemblers etc.. I thought the project was on the above site - but I can't find it now.

I have used HPDrive to emulate HP-IB storage devices. It requires a PC running Windows with a GPIB interface that the software supports. It tried it with a 1630D and got it to work for loading configuration and inverse assembler files.

http://www.hp9845.net/9845/projects/hpdrive/
 
The following users thanked this post: bitseeker

Offline gslick

  • Frequent Contributor
  • **
  • Posts: 353
  • Country: us
Re: Older logic analyzer question.
« Reply #12 on: May 11, 2017, 11:24:06 pm »
Mine is a 1660C which I got locally for $25, it was cheap enough that it just seemed like it would be cool to play with. Of course I'd spent 10 times that by the time I had a full set of pods and grabbers but I figure I can always keep those to use with a newer analyzer if the need arises. It has already paid for itself as I used it to repair a piece of vintage gear for someone.

It would be great to have a list of symbols for the 6502, Z80 and other chips of the era. My unit has a floppy drive built in, as well as a hard drive and HP-IB. I'm a novice when it comes to using these things but I've managed to figure out enough for it to be useful.

I also have a 1660C. It is a couple of steps up from the 1630 series (with the 1650 series in between) with a lot of improvements in usability. Built in hard drive and floppy drive for saving configuration, inverse assembler, and data files, PS/2 keyboard and mouse ports, Ethernet interface for remote control and copying files to/from the system, ability to print the screen and data to disk files, deeper sample depth (although 4K can still be somewhat limiting). If you got one for $25 that's a decent deal, but as you say if it didn't come with pod cables and breakout leads you can end up paying a lot more for those.

I have the following set of CPU preprocessor modules which mate with a 10269C interface. Some of these would also work with a 1630 series with a 10269A/B interface. The 10269 interfaces are easy to find, the preprocessor modules are not.
10300B (64683A) Z80
10304B (64655A) 8085
10305B (64653A) 8086/8088
10307B (64672B) 6800/6802
10308B (64671A) 6809/6809E
10311B (64670A) 68000/68010
10312B (64657A) 80286
10314B (64659A) 80386
10342B RS-232C/V.24, RS-499, HP-IB bus preprocessor interface.
 

Offline TK

  • Super Contributor
  • ***
  • Posts: 1573
  • Country: us
  • I am a Systems Analyst who plays with Electronics
Re: Older logic analyzer question.
« Reply #13 on: May 11, 2017, 11:27:16 pm »
I have the following set of CPU preprocessor modules which mate with a 10269C interface. Some of these would also work with a 1630 series with a 10269A/B interface. The 10269 interfaces are easy to find, the preprocessor modules are not.
10300B (64683A) Z80
10304B (64655A) 8085
10305B (64653A) 8086/8088
10307B (64672B) 6800/6802
10308B (64671A) 6809/6809E
10311B (64670A) 68000/68010
10312B (64657A) 80286
10314B (64659A) 80386
10342B RS-232C/V.24, RS-499, HP-IB bus preprocessor interface.
Do you have the schematics for 10300B Z80 preprocessor?  I am interested in knowing how to translate the control signals from Z80 to the 4-bit STAT bus that the Z80 inverse assembler needs.
 

Offline Andy Watson

  • Super Contributor
  • ***
  • Posts: 1754
Re: Older logic analyzer question.
« Reply #14 on: May 11, 2017, 11:35:39 pm »
I have used HPDrive to emulate HP-IB storage devices. It requires a PC running Windows with a GPIB interface that the software supports. It tried it with a 1630D and got it to work for loading configuration and inverse assembler files.
http://www.hp9845.net/9845/projects/hpdrive/
Interesting link - I wasn't aware of that project.

This is the nearest thing I can find to what I had in mind
http://dalton.ax/hpdisk/
I am sure there was a more polished version somewhere - perhaps my memory is going!
 

Offline gslick

  • Frequent Contributor
  • **
  • Posts: 353
  • Country: us
Re: Older logic analyzer question.
« Reply #15 on: May 12, 2017, 02:34:39 am »
Do you have the schematics for 10300B Z80 preprocessor?  I am interested in knowing how to translate the control signals from Z80 to the 4-bit STAT bus that the Z80 inverse assembler needs.

The 10300B STAT signals in least significant order are:
/WR - CPU pin 22
/IORQ - CPU pin 20
/RFSH - CPU pin 28
/M1 - CPU pin 27

/WR is fed three times through a 74LS240 inverting buffer/driver for a STAT signal.
/IORQ is fed once through a 74LS240 inverting buffer/driver for clock signal, and twice for a STAT signal.
/RFSH is fed once through a 74LS241 non-inverting buffer/driver for a clock and STAT signal.
/M1 is fed once through a 74LS241 non-inverting buffer/driver for a STAT signal.

Maybe the multiple passes for /WR and /IORQ are to delay those signals by a few ns.

That is from the Model 64683A Interface Module Z80 Service Information manual part number 64683-90903. I only have a photocopy of the manual. I'll see if I can get it scanned when I have time.
« Last Edit: May 12, 2017, 09:27:44 pm by gslick »
 
The following users thanked this post: MarkL

Offline TK

  • Super Contributor
  • ***
  • Posts: 1573
  • Country: us
  • I am a Systems Analyst who plays with Electronics
Re: Older logic analyzer question.
« Reply #16 on: May 12, 2017, 12:24:15 pm »
Do you have the schematics for 10300B Z80 preprocessor?  I am interested in knowing how to translate the control signals from Z80 to the 4-bit STAT bus that the Z80 inverse assembler needs.

The 10300B STAT signals in least significant order are:
/WR - CPU pin 22
/IORQ - CPU pin 20
/RFSH - CPU pin 28
/M1 - CPU pin 27

/WR is fed three times through a 74LS240 inverting buffer/driver for a STAT signal.
/IORQ is fed once through a 74LS240 inverting buffer/driver for clock single, and twice for a STAT signal.
/RFSH is once through a 74LS241 non-inverting buffer/driver for a clock and STAT signal.
/M1 is fed once through a 74LS241 non-inverting buffer/driver for a STAT signal.

Maybe the multiple passes for /WR and /IORQ are to delay those signals by a few ns.

That is from the Model 64683A Interface Module Z80 Service Information manual part number 64683-90903. I only have a photocopy of the manual. I'll see if I can get it scanned when I have time.
Thank you gslick.  This is the information I needed!!!
 

Offline TK

  • Super Contributor
  • ***
  • Posts: 1573
  • Country: us
  • I am a Systems Analyst who plays with Electronics
Re: Older logic analyzer question.
« Reply #17 on: May 12, 2017, 12:28:10 pm »
Do you have the schematics for 10300B Z80 preprocessor?  I am interested in knowing how to translate the control signals from Z80 to the 4-bit STAT bus that the Z80 inverse assembler needs.

The 10300B STAT signals in least significant order are:
/WR - CPU pin 22
/IORQ - CPU pin 20
/RFSH - CPU pin 28
/M1 - CPU pin 27

/WR is fed three times through a 74LS240 inverting buffer/driver for a STAT signal.
/IORQ is fed once through a 74LS240 inverting buffer/driver for clock single, and twice for a STAT signal.
/RFSH is once through a 74LS241 non-inverting buffer/driver for a clock and STAT signal.
/M1 is fed once through a 74LS241 non-inverting buffer/driver for a STAT signal.

Maybe the multiple passes for /WR and /IORQ are to delay those signals by a few ns.

That is from the Model 64683A Interface Module Z80 Service Information manual part number 64683-90903. I only have a photocopy of the manual. I'll see if I can get it scanned when I have time.
I was using: /M1 /REFR /IORQ //WR (/WR inverted) and feeding the clock signal directly from the Z80, but noticed that Z80 inverse assembler was asking for 2 clock signals and did not know how to generate them.  Will try the new interface.
 

Offline gslick

  • Frequent Contributor
  • **
  • Posts: 353
  • Country: us
Re: Older logic analyzer question.
« Reply #18 on: May 12, 2017, 09:36:17 pm »
I was using: /M1 /REFR /IORQ //WR (/WR inverted) and feeding the clock signal directly from the Z80, but noticed that Z80 inverse assembler was asking for 2 clock signals and did not know how to generate them.  Will try the new interface.

The 64683A / 10300B clock signals are:
/MREQ - CPU pin 19 - fed once through a 74LS240 inverting buffer/driver for clock J
/IORQ - CPU pin 20 - fed once through a 74LS240 inverting buffer/driver for clock K
/RFSH - CPU pin 28 - fed once through a 74LS241 non-inverting buffer/driver for clock L

The default 10300B state configuration is to clock on (falling edge of J OR falling edge of K).

To filter out refresh cycles the state configuration could be changed to clock on ((falling edge of J OR falling edge of K) AND L high)
 
The following users thanked this post: TK

Offline TK

  • Super Contributor
  • ***
  • Posts: 1573
  • Country: us
  • I am a Systems Analyst who plays with Electronics
Re: Older logic analyzer question.
« Reply #19 on: May 12, 2017, 10:14:44 pm »
I was using: /M1 /REFR /IORQ //WR (/WR inverted) and feeding the clock signal directly from the Z80, but noticed that Z80 inverse assembler was asking for 2 clock signals and did not know how to generate them.  Will try the new interface.

The 64683A / 10300B clock signals are:
/MREQ - CPU pin 19 - fed once through a 74LS240 inverting buffer/driver for clock J
/IORQ - CPU pin 20 - fed once through a 74LS240 inverting buffer/driver for clock K
/RFSH - CPU pin 28 - fed once through a 74LS241 non-inverting buffer/driver for clock L

The default 10300B state configuration is to clock on (falling edge of J OR falling edge of K).

To filter out refresh cycles the state configuration could be changed to clock on ((falling edge of J OR falling edge of K) AND L high)
Impressive... Thanks!
 

Offline AndersG

  • Contributor
  • Posts: 16
  • Country: fi
Re: Older logic analyzer question.
« Reply #20 on: May 25, 2017, 06:48:19 am »
Quote
I am sure there was a more polished version somewhere

Can you elaborate?
 

Offline Andy Watson

  • Super Contributor
  • ***
  • Posts: 1754
Re: Older logic analyzer question.
« Reply #21 on: May 25, 2017, 07:47:47 am »
Quote
I am sure there was a more polished version somewhere

Can you elaborate?
I think I may have been confusing this with your GPIB to USB convertor.
Great work on both accounts.
 

Offline cyberbarter

  • Newbie
  • Posts: 2
  • Country: us
Re: Older logic analyzer question.
« Reply #22 on: June 20, 2019, 04:18:15 am »
Hi TK

I have a HP1670G and would like to get my hands on a floppy that has the 6502 & Z80 inverse assemblers. Instructions on loading the Inverse Assembler would be helpful as well. Can you help with that request?

Much thanks
Cyberbarter
« Last Edit: June 20, 2019, 04:19:52 am by cyberbarter »
 

Offline AndersG

  • Contributor
  • Posts: 16
  • Country: fi
Re: Older logic analyzer question.
« Reply #23 on: June 20, 2019, 05:16:27 am »
It has a floppy, right? Does it take both LIF-format and MSDOS disks? Does it have a serial or GPIB port? If so then you could possibly use the utility I wrote for my HP1631D to upload the files. http://www.dalton.ax/gpib/hp1631d.zip

See: http://www.dalton.ax/hp1631D
 
The following users thanked this post: cyberbarter

Offline TK

  • Super Contributor
  • ***
  • Posts: 1573
  • Country: us
  • I am a Systems Analyst who plays with Electronics
Re: Older logic analyzer question.
« Reply #24 on: June 20, 2019, 12:52:16 pm »
1670G has ethernet port so you should be able to download the IA files and transfer them using ftp.

Check this thread: https://www.eevblog.com/forum/testgear/hp-logic-analyzer-inverse-assemblers/msg1533053/#msg1533053
 
The following users thanked this post: cyberbarter


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf