rando@skipper.dfrf.nasa.gov (Randy Brumbaugh) (01/17/90)
Recently we have run across a problem with transputers in distributed systems. I am hoping somebody has an elegant solution that they will share. The problem concerns the hazards of booting from link in a distributed system. If a transputer system is running along, chatting on several links and is reset, either by a watchdog or power glitch, what happens? If it is set to boot from link, the first data to arrive will be interpreted as bootstrap. The data received may or may not be a valid program load (probably not), but the results are certainly unpredictable. I can think of several solutions, none of them very good: 1- Don't boot from link. The idea of a small primary bootstrap in PROM seems like a good one, unless board space is tight. Only a few bytes are needed, but the PROM must be 32 bits wide, so at least a 40 pin package would be needed. (And I don't know of any 32 by few byte PROMs). 1a- I have heard of PROMs with serial outputs. If one of these could be used, it might help. The design that comes to mind is a serial PROM to a shift register to a C0011 to a link, which is messy and probably take as much space as 32 bit PROM design. It also would tie up one link. 2- Dedicate a transputer as master, which monitors other transputers, via a heartbeat or discrete. The link from the master to the "slaves" would only be used for booting. This also ties up a link and limits topology choice. 3- "We all go down together" - any processor reset resets every processor, and the prcedure is the same as initial system start. This seems easy, but stupid - any processor unit that is having problems can disable the whole system. None of these seems very good. I would like to hear from anybody with a better scheme, or who has tried these and has any advice. Randy Brumbaugh rando@skipper.dfrf.nasa.gov (805) 258-2177