The calibration constants are simply stored with all the other data in the
toggle quoted message
Show quoted text
8K NVRAM chip, there's no hardware write protection against MPU malfunction. The rest of the RAM is used for the MPUs stack, global variables and general working memory. So if the MPU "crashes" or otherwise misbehaves for any reason, the calibration constants could be corrupted. You were having intermittent kernel test failures, which presumably means there's something wrong with the digital logic, at least occasionally. This could lead to the MPU crashing and corrupting the calibration constants. I've looked at what the kernel tests do on the 2465 (which is a simpler scope), and they're quite carefully written. As a case in point, they only use the MPU register state until the RAM tests have been completed. If the kernel tests are failing for you, then IMHO you need to see what they're trying to tell you and fix that first. Looking at table 6-6 on page 6-13 in the service manual, the kernel test failure should be telling you one of three things: 1. The RAM is bad. 2. ROM U2160 is bad. 3. ROM U2260 is bad This should be indicated by the CH1/2/3/4 LEDs off, and one or neither of the +/- LEDs lit - assuming the scope has no options. If any of the CH1/2/3/4 LEDs are lit, that's pointing to an option problem. From the service manual, it appears that there are two levels of checking the calibration constants, and perhaps the persistent state of the scope at large (FP settings can be saved): 1. Each constant has a parity bit. 2. There's a checksum across all constants. It's possible that the firmware fixes the whole-region checksum on any write to the checksummed constants, which would explain why the code changes. The other problems I know of that could reasonably lead to RAM corruption are power supply problems, and the shutdown sequence. When the power is going away the power supply signals the MPU with an NMI. From the looks of it (I didn't investigate this deeply) the NMI service routine flushes any pending writes to the persistent portion of the RAM and then effectively halts the MPU waiting for the power to die. If the MPU doesn't get that NMI, it could fail to rewrite the checksum, or just write away randomly as the power fades. On Sat, Jun 4, 2022 at 10:32 AM NigelP <nigel-pritchard@...> wrote:
So to re-visit this issue I have been looking for the test failure mode. |