[net.unix-wizards] DMC/DMR hardware advice

jbn@wdl1.UUCP (02/08/85)

      In a previous posting, I alluded to problems with DEC's DMC/DMR devices;
there have been enough queries for details that I am posting them here.
      There are some serious problems with DEC's DMC/DMR devices, and these
should be better known.  Few still use these units, but they do exist.  The
basic problem is that the code in the microengine is not too bright; it is
fairly easy to hang up these devices and the driver must be clever about
figuring out that they have hung up and resetting them.  In the megabit DMC,
this problem is acute; messages longer than 100 bytes or so will hang the
device when used in a VAX UNIBUS cage.  (The manual says that messages up to 
64K bytes will work, although later revisions of the DMC manual hedge on this 
a little).  The megabit DMC also tends to hang up more, because to get the 1MB 
rate, some tests for error conditions were left out of the inner loops.  In 
particular, loss of link continuity can hang the device with a half-completed 
DMA operation in progress.) The 0.5 megabit DMR is claimed to be better than 
the 1 megabit DMC; the derating to 0.5 megabit may help.  We have never tried
a high-speed DMR, so I can't say.
     There is a hardware fix to the megabit DMC that is reported to solve
some of these problems; it was developed at Purdue years ago and involves
board modifications that DEC does not support.  It may work, but why bother?
     Some implementations, including 4.2BSD, run the device in "diagnostic
mode".  This turns off all the error control and flow control, which is one
way of curing the hangup problem.  But you lose link supervision; you don't
get error reports on the link, which is essential if you have long-haul lines.
     The DEC diagnostics leave much to be desired.  The last three times
we had DEC install a DMR in a VAX, the unit did not work after installation.
In one case, a ribbon cable connector was installed backwards and the 
diagnostics missed this.  When having a DMR installed, insist that the
diagnostics be run using large messages and tested out to the turnaround
connector at the end of the cable.  Watch it pass the diagnostics.  Then
remove the turnaround connector and make sure the diagnostics then fail.
They don't if the diagnostics are being run in internal loopback mode.
     The DMC, incidentally, has weak line drivers; the 25 foot RS-232 cable
limitation is quite real.  Some DMCs will not drive 50' of RS-232 cable,
but will drive 25 feet.
     In conclusion, the megabit unit is a total loss, but the RS-232 form
can be useful if the driver is paranoid enough.  We have four long-haul
DMC/DMR links in operation, and have moderately good results, but hardware
trouble is not uncommon.  
     For local communications, an Ethernet is much to be preferred; for
long haul, I have no recommendations at this time.

					John Nagle