AnsweredAssumed Answered

8751A Calibration Storage/Retrieval Numerical Precision

Question asked by calvinf15 on Jun 8, 2008
Latest reply on Jun 9, 2008 by Dr_joel
Hi Folks,

I wonder if anyone has any understanding of the following issue:

I've read over the relevant threads on this group concerning how to store and retrieve calibration coefficients across the HPIB.  Of course, the driving reason to do so would be to create a program to allow selection from a database of pre-measured calibration configurations.

I have studied the various data formats by which the 8751A passes data.   I expected that the double-precision (big-endian) floating point format (FORM3) would yield the highest accuracy.

However, after I saved a calibration, cycled power on the 8751A, and reloaded the cal data (using OUTPCALCxx? and INPUCALCxx) I was surprised to see that the effective directivity was degraded from a nominal 60-70 dB to as poor as 30-40 dB.  I attributed this degradation to a limited numerical precision issue.

I noted several things:

1.  The machine obviously maintains high internal numerical precision as evidenced by its ability to calculate and maintain high accuracy calibration coefficients in memory supporting at least 70dB of effective directivity match.

2.  If I do not cycle power, I do not suffer the above degradation.  For example. let's say I conduct a cal, store the result across the HPIB to disc, and then conduct another (bogus open-open-open) cal to supplant the coefficients in memory.  If I then reload the coefficients from disc, I do not suffer any notable directivity degradation.  Once I switch off power and recall the coefficients, I see the limited effective directivity.  Conducting an Instrument Preset also maintains the high effective directivity.  I have to switch power off to see the limited performance of the cal.

3.  Upon inspection of the mantissa digits of the big-endian doubles collected from the 8751A, I noted that the last 7 nibbles (3.5 bytes) are all zeros, thus holding no useful high precision cal coefficient data.

4.  I noted that storing cal data to the floppy disc gives the exact same results as I experienced saving data via HPIB.

5.  I've experimented with all other available formats (Form 2, 3, 4, 5) to get the same results (single precision is just a tad worse, as one might expect).  I noticed that the ASCII form 4 only spits out data to 6 decimal places (rather than the 24 char string documented in the programming manual).  I also noticed that the unit does not support FORM1 (as did the 8753 series).  However, asking for FORM1 data yields ASCII data (FORM4) rather than raw binary as in the 8753 case.

So, I wonder if there might be some undocumented command that I can give the 8751A to spit out full resolution (double-precision) data.  I noted that this limited precision applies to raw data as well as cal coef data, which will present a problem as I write 4-port calibration software.

I can't think of a reason why paragraph 2 above is happening.  I would expect that if I take another cal, those low order bytes would be over-written and then reloading the data from disc would show degraded accuracy as well (but that is not the case).

The unit has firmware version 5.0, 1993.  I assume that this was the latest firmware for this unit?

Thanks for any info from experienced/users producers of this unit.