Vaxstation 400/90 power supply

Maciej W. Rozycki macro at linux-mips.org
Thu Mar 26 06:13:06 CDT 2020


On Wed, 25 Mar 2020, Matt Burke via cctalk wrote:

> > no, no confusion, and thanks for the detailed analysis. Now I have to
> > find my dremel (I just moved) and check the Dallas NVRAM ;-)
> >
> > Cheers & thanks again!
> 
> You can buy replacements for the Dallas DS1287A under a new part number
> - DS12887A.

 They are not exact replacements though as they have an additional address 
line on AD6 which is used to access extra 64 bytes of internal static RAM. 
For correct operation with the DS12887A rather than the DS1287A in the 
4000/90 the line would have to be driven with logical 0 in the address 
phase of the bus cycle.  I don't know if this is guaranteed by the EDAL 
glue logic used to drive the DS1287A (TOY in DEC-speak) chip in the 
4000/90.

 My notes indicate that the 0x25400000:0x254000fc 32-bit longword CPU bus 
address range is decoded to the TOY chip in the 4000/90, and the TOY data 
byte is transferred on bits 9:2 of the longword accessed.

 Furthermore the CEAC seems to be selected with 0b001001 in bits 31:26 of 
the CPU bus address, that is spanning the 0x24000000:0x27ffffff address 
range.  Bits 25:22 are then decoded by the CEAC to individual EDAL bus 
chip selects (some devices seem to handle multiple chip selects or, more 
likely, CEAC does incomplete decoding depending on the address subrange).

 This leaves bits 21:8 of the address undefined for the TOY chip, and it 
is unknown if they are actually driven, hardwired or left floating.  It 
will depend on the glue logic involved, though given that the DS1287A has 
a multiplexed AD7:AD0 bus, and in the 4000/90 TOY addresses are presented 
on bus bits 7:2 and data is presented on bus bits 9:2 chances are bits 9:8
and consequently AD7:AD6 are also driven in the address phase.

 There's still question of software accessing the TOY using canonical 
addresses only, i.e. ones in the 0x25400000:0x254000fc range rather than 
say 0x25400100:0x254001fc, which likely cause AD6 to be driven with 
logical 1 rather than 0.  Of course software could make use of that extra 
static RAM if accessed deliberately.  As I use all my DEC equipment for OS 
development however I consider it reference hardware and therefore I only 
accept exact replacements if the original part cannot be used anymore.

 Since no new DS1287A (or DS1287, for DECstation 5000 systems) chips are 
available I resorted to reworking old chips to have the original embedded 
coin cell replaced with a socket for a discrete coin cell mounted such as 
to match the original clearance of the chip almost exactly.  This is 
important for DECstation 5000 systems, which have the TOY chip mounted in 
the TURBOchannel slot area with as little as ~0.1" of clearance left with 
respect to option cards.

 I actually bought extra chips from a seller on eBay, just to have spares 
in case something goes wrong in the rework, knowing that they have been 
forged by replacing the original marking with one giving a more recent 
date code, one well past the last manufacture date of genuine chips, to 
pretend they are not as extremely old as they really are.  That is quite 
safe for the rework however, because the way the cell has been embedded 
makes the marking on the original top of the case of the embedded DS1285 
chip clearly readable once the cell has been completely removed.

 In the end one of the batches I got was good, made with the DS1285 chip, 
while the other one had the DS12B885 chip instead, so I had to discard it.  
Now I got yet another batch, but I didn't get to disassembling any of the 
parts yet.

 NB the DS12B885 doesn't exist in any datasheet I could track, however 
there used to be a DS12B887 chip which had a RESET# wiring modification 
that I think couldn't have been made by just adding a quartz crystal and a 
coin cell to the DS12885, so perhaps a dedicated DS12B885 core was made to 
satisfy that application only and never sold in a discrete form.

 FWIW,

  Maciej


More information about the cctech mailing list