Electronics > Repair
The repair from He!! - HP 4275A LCR meter
precaud:
"Sometimes you eat the bear and sometimes the bear eats you". This one has definitely been a bear, and so far, it is eating me.
It may take a few posts to set the table on this one, so pls be patient.
Several years ago I got two 4275A's at auction. No way to test before buying. My luck, they both had issues. This one booted but my notes say it had issues on the A2 board. The other one didn't boot. So I stole the cpu card from this one, which made the other one a working machine, which I sold shortly thereafter, and set this one aside for a rainy day. A few years pass... I "find" this one sitting in a storage room, and I sure would like to get it working. A good 10MHz LCR meter would be a nice thing to have.
An internet search revealed several posts describing the frequent occurrence of "mask ROM rot" in this and its 4274A sibling. The symptoms described were the same as mine. One poster said the second ROM (U3) was where the boot code resided so try replacing it first. An image of supposedly good ROMs is posted in the files section of the Yahoo Agilent group. A message to the person that posted them went unanswered.
Another piece of interesting info gleaned from other posts is that the 4275A shares many components with the 4274A. The cpu board (A9) and memory boards (A8) are supposedly identical. Even the ROM code. Examining the service manuals seems to support that; the part number for the 4275A ROMs begins with "04274A-". I have an early non-working 4274A here, so I can check that out.
Unplugged the GPIB card and its U10 ROM to simplify the setup, powered up this 4275A, and the display is dead. Nada. I then swapped the 4274A cpu card in, and voila, it boots, passes ROM and RAM POST tests (the five P's it displays) and looks like it is trying to make measurements but returns every time with error 4 (with or without a test fixture installed).
So I unsoldered the U3 mask ROM, installed a socket, burned a 2764A EPROM from the image file, and compared it to the mask ROM. No difference. That nixes the idea that U3 has the boot code.
From the factory, the firmware on some boards came on mask ROMs, and others on EPROMS. There are jumpers on the cpu board to set it up for one or the other (not a mix; has to be all one or the other). So there is no good way to replace just one ROM with an EPROM. So I unsoldered the rest of the ROMs and installed sockets taken from surplus pcbs. The desoldering gun got a good workout. Burned the full set of EPROMs from the image file and compared them to the old ROMs. There was one byte different on U1. U3, U5, U7 were the same. U10 had hundreds of different bytes. Supposedly that is for the GPIB option. But it is not installed right now so that is not stopping it from booting. Could one "bad" byte on U1 be locking up the machine? The only way to know is install the EPROMS and change the jumpers for them.
Did so, but no difference. Still dead.
I swapped the MC6800 cpu from the 75A board into the 74A board and it worked fine. So we know the cpu is good.
The service manual has a troubleshooting section on interpreting the five P's displayed at power up, and which ROM (or RAM) is bad if it halts there. It says if no P is displayed, then U10 is bad. So I plugged in the U10 EPROM and the GPIB card and restarted. Nada. No difference.
It is now maddeningly clear that both the manual and anecdotal info on this machine are riddled with inaccuracies.
Here is a photo of the machine with the 4274A cpu board in it. Looks normal, eh? Second installment follows.
precaud:
OK, the manual is giving wrong info about POST so I started looking at signals on the cpu card. Clocks and supply voltages were good, everything else hung either high or low; no activity. The manual troubleshooting procedures assume you have an HP 5004A Signature Analyzer, which I do not have. Knowing the cpu is good, I started replacing chips which *should* have output to the test points. This is one of those moments when hoarding 74LS chips for all these years came in very handy. And sure enough signals started to appear. Activity on the address bus after replacing those buffers. Then the data bus transceivers (though their falling edge looked messy). This went on for the better part of two days by which time I had replaced all but four chips on the board. Some kind of cascade failure had occurred on this thing. By now a couple dots showed in the displays at powerup, but still no boot.
At this point I stopped to study the digital systems memory map, cpu opcodes, and ROM files, looking for more clues. When the 6800 wakes up, it reads a 16 bit pointer from the very top of the 64kB memory space (locations FFFE and FFFF), which has to contain the address of the Reset routine. Low and behold, that address is F815, which is in ROM 1 (U1) address space, and not U3. So let's look at what the machine does on boot. I did a quick "hand disassembly" of the boot area of ROM 1.
--- Code: -----------------------------
HP 4275A boot code
Boot Address (from Reset vector @ FFFE) : F815 (on ROM 1)
F815: JMP F876
:
: some more JMP's and code...
:
Reset: ; startup routine (on powerup or when reset line pulled low)
F876: LDS 03FF ; Set stack pointer 1/4 way into SRAM addr space
LDA A 0FFF ; get the last bye of SRAM into accumulator A
CMP A FF ; if all bits high, SRAM is defective or not installed,
BEQ F3 ; branch if == (-115 bytes relative) to abort
LDA B FC ; otherwise continue
STA B 800B ; initialize something on A7 board ( peripheral control = 8xxx address space)
LDA B F4
STA B 8009 ; and another
CLR 016C ; zero a byte in SRAM
CLR 016D ; another
CLR 016E ; "
CLR 016F ; "
CLR 0181 ; "
; ... it does this a few more times ...
Loop: CLR 0189 ; last one
LDA A 01B7 ; load byte at 01B7 into A (startup set it to zero...)
F8C0: NOP ; Why NOP? It works around a bug in pre- Nov '77 6800's before setting or clearing interrupts.
EOR A B6 ; Exclusive OR A with 10110110
SEI ; set interrupt mask (disable interrupts)
STX 81FE ; store index register to something on A7 board (peripheral control)
BEQ 26 ; branch if == zero +38 bytes rel.
CMP A FD ; a bunch of compares follows
BEQ 40 ; branch if == +64 bytes rel.
CMP A FC
BEQ 50 ; branch if == +80 bytes rel.
CMP A FB
BEQ 15 ; branch if == +23 bytes rel.
CMP A FA
BEQ 0A ; branch if == +10 bytes rel.
CMP A F9
BEQ 09 ; branch if == +9 bytes rel.
CMP A F8
BEQ 08 ; branch if == +8 bytes rel.
BRA A7 ; otherwise an unconditional jump -39 bytes (to Loop)
.
.
.
------------------------
--- End code ---
And we see here a bunch of housekeeping code that makes sense for what should happen at bootup.
It first sets the stack pointer into the static RAM address space.
Then it reads the last byte of the SRAM to see if the chip is absent, or defective, and aborts if so.
And there is our first clue. The first thing tested is the SRAM. If no "P" appears, it means the SRAM is bad, not U10 like the manual says. And that makes logical sense; if it has no ram to work with, it can't continue.
You have to wonder, did they print that by mistake, or is it intentionally misleading? Why? Because U10 is an OPTION ROM !! Many 74A and 75A's don't have it.
Anyway, I need to check the SRAM chips.
The pic below shows the cpu card with most of the IC's that were replaced. Third installment follows.
precaud:
So I need to test the SRAM chips. Since the 4274A board passes POST, it's SRAM chips must be good. I removed the 2114s from both boards, installed sockets, and swapped 2114's one at a time onto the 4274A board. One of them was bad. Pulled some 2114's from a Keithley 192 carcass I had laying around, tested them, they were both good, so cleaned and installed them into the 75A board. And now it boots with more activity. A Letter appears in the 2nd display, and a P in the third. See pic below, showing the cpu on extender boards. First evidence that it is really trying to boot.
So it is starting the POST but not completing it. Some signals at the test points now more closely resemble those of the 74A board, though one is missing. Press a front panel key, and the INT line goes low (as it should). So the hardware part of the interrupt system is working. After a reset, I see a few hits on the U1 Rom select line, which suggests it is executing at least some of the startup code there, as it should. But it never completes the POST.
And this is where I'm stuck. Something is hanging the cpu after it begins the POST routine.
I have a logic analyzer (HP 1631D) but have never used it. And the manual doesn't give timing diagrams for the digital boards.
I welcome any and all input, suggestions, observations, theories, commiserations, comments. The way I see it, after replacing all the chips, the thing should at least boot. Unless one or more of the chips I installed was bad...
Tomorokoshi:
Comments:
1. I don't have any equipment of that series, but I do have equipment from both before and after it.
2. With multiple chip failures check the power supply. Is it going over-voltage when turned on? Turned off?
3. A lot of HP LCR equipment seems to come out of HP Yokogawa in Japan. It's possible that the manuals were originally composed in Japanese and then translated. This may account for some of the errors, although overall I've found HP Yokogawa manuals to be very good.
4. HP LCR equipment also seems to usually have that one unobtainium part that's plated with impossibilimite. Although, in this case it seems to be related to general logic.
5. For manuals are you using the rough scans from Keysight? Artek has scans, although I didn't need to get that set.
6. Did you check the "Manual Changes" section of 04275-90012? More changes than most others I've seen.
precaud:
--- Quote from: Tomorokoshi on April 04, 2018, 04:49:13 pm ---Comments:
1. I don't have any equipment of that series, but I do have equipment from both before and after it.
--- End quote ---
Thanks for your input!
--- Quote ---2. With multiple chip failures check the power supply. Is it going over-voltage when turned on? Turned off?
--- End quote ---
Good idea, I'll check it. Though it has to be said, the failures to this board happened when it was installed in a different 4275A...
--- Quote ---3. A lot of HP LCR equipment seems to come out of HP Yokogawa in Japan. It's possible that the manuals were originally composed in Japanese and then translated. This may account for some of the errors, although overall I've found HP Yokogawa manuals to be very good.
--- End quote ---
Very good point.
--- Quote ---5. For manuals are you using the rough scans from Keysight? Artek has scans, although I didn't need to get that set.
--- End quote ---
I have original manuals (for 4275A and 4274A), and a downloaded PDF of each too.
--- Quote ---6. Did you check the "Manual Changes" section of 04275-90012? More changes than most others I've seen.
--- End quote ---
Absolutely. And most of the changes are on the A9 board, most of them related to the battery-backed RAM option. The way to avoid any problems related to that is to simply remove the battery. A dead battery can cause power-up errors. The rest of the basic circuitry was remarkably stable from the start. This particular unit is from the final serial prefix, though the A9 board is from an earlier unit.
Navigation
[0] Message Index
[#] Next page
Go to full version