[net.micro.16k] DSI-32 BOARD - REVIEW

jk@utastro.UUCP (John Krist) (11/26/85)

   * I suggest you print this out for easier reading *

     I received the Definicon DSI-32 32032 coprocessor board for the PC
   five days ago, and I am ready to give my initial impressions of the
   board.  It took 4 weeks to get it.

     I have posted this article in both net.micro.pc and net.micro.16k
   because I know many in .pc do not read or know of .16k and might be
   interested.

     Here is what I have:
           Advanced board with 10 MHz 32032 and 32081 math processor
           1 Mbyte of memory
           C, Pascal, and Fortran compilers
           Assembler and linker
           Librarian
           Debugger/monitor 
           Public domain Forth and XLISP languages
           
      What follows assumes that you have read the August and September
   1985 issues of BYTE magazine which include articles on the DSI-32.

   The Board:
      The board appears to be well made and layed out.  There are now
   red, green , and yellow LED status lights on the board. There is
   also a heat radiator on the 32032 which is about 1/4 an inch high, so
   you have to be sure it does not touch another board.

      The board is now available with 2 Mbytes for an additional $495 or
   so.  The extra memory is soldered / piggybacked onto the 1Mbyte array.
   If you are not afraid of soldering your own memory, you can get the
   extra Mbyte for about $120 from certain sources.  Instructions for
   doing the soldering and the needed pin bending are included.

   * The System Software and Manuals
      A one inch thick manual covering the installation of the board,
   the assembler, linker, loader, and monitor is included.  This is a no
   thrills manual and is not meant for those who do not know the basic
   technical principles behind computer hardware and software. A small
   chapter also discusses the object file format.
      The section on the assembler covers only the assembler elements,
   procedures, pseudo-operations, etc.  If you want to use it, you will
   need the National Semiconductor 32032 instruction set manual, which
   you can get through Definicon for $ 25.
      The full assembler comes only with a compiler or ordered
   separately.

      The manual also describes the ability of PC-DSI multiprocessing
   under Digital Research's Concurrent Dos.  You can be running a
   program at full speed independantly on the DSI while doing something
   like editing on the IBM.  A driver for this is available.

   * I have not used the Forth or XLISP programs yet *

   * The Compilers *
     The C, Pascal, and Fortran 77 compilers are full UNIX compatible
   compilers.  They were, in fact, simply ported from the UNIX
   environment. The DSI's MS-DOS interface emulates all UNIX calls.
     I ran the C compiler with an #include <stdio.h> call and it gave
   me an error message saying that it could not find /usr/include/stdio.h.
   I found out that the path to any include files must be given as an
   argument on the loader command line.  I suppose you could use the
   MS-DOS PATH facility, though.
     All compilers can call functions and subroutines written in another
   language just a UNIX allows.  Interfacing the compilers with
   assembly routines is described in the system manual.

      The manuals for each of the compilers describe only the libraries
   and using the compilers.  I have written to see if the compiler
   writers, Green Hills, has full reference manuals.

      In addition to the C library, the following #include files are
   included: STDIO.H, PORTAB.H, ERRNO.H, MTH.H, SETJMP.H, CTYPE.H.

      The Pascal library seems full, but I have not used it enough to
   comment.

      The Fortran is full '77.  Along with the library manual are two short
   documents from UC-Berkeley and Bell Labs describing the standard UNIX
   Fortran and the I/O library.

   * Note:  The Fortran library is now from AT&T.  This means that you
   have to pay an extra $ 175 and sign and return a license before you
   get the Fortran.

      The compilers produce inline assembly source code, so the final
   executable file can be large.  For instance, the executable file
   for a Fortran Sieve benchmark for 80,000 primes is about 350K bytes.

      The compilers are pretty fast and most of the time taken is for
   reading in the compilers.  I would say it takes about 10-20 seconds to
   compile a 100 line program, with little more required for larger programs,
   since the DSI is compiling them REAL FAST.  The assembly code seems
   highly optimized.  Assembly takes even less time.  The linker takes
   about a total of 30-40 sec to link the 100 line program.

   Some benchmark times: ( see the BYTE article for more benchmarks )

  August 1984 BYTE magazine UNIX benchmarks ( from the system manual )
  Benchmark 1  - piping ( not done )
  Benchmark 2  - overhead involved in simple operating system call
  Benchmark 3  - C compilers overhead in making empty function call
  Benchmark 4  - Sieve benchmark, in a slightly different form
  Benchmark 5a - time taken to write 128k sequential file
  Benchmark 5b - time taken to randomly read back that file
  Benchmark 6  - test shells ( not done )
  Benchmark 7  - time to perform empty loop

                      Times in seconds
               DSI-32   VAX 11/780   VAX 11/750
  Bench #2      3.88       4.8          7.0
  Bench #3      0.55       1.0          1.7
  Bench #4      1.93       1.7          2.4
  Bench #5a     5.60       2.0          3.0
  Bench #5b    12.00       8.0          8.0
  Bench #7      2.36       2.6          5.1
  These were run on a Compaq Deskpro under MS-DOS 2.1 with a 20 Mbyte
  CMI hard disk.

  My own couple of benchmarks:
  1.  Writing 1600 real numbers, continuous,free format, to hard disk
      in Fortran.
  2.  Reading in file from #1 in Fortran.
  3.  FLOAT benchmark from Nov. 1985 BYTE article on Macintosh C compilers.

             times and file sizes ( in seconds and bytes )
  test       source    compile    assemble    link     execution
  no.         size      (size)     (size)    (size)      time
  1 (write)   172       19.5s      13.0s      29.0s      7.96s
                        (985)      (2193)     (44032)
  2 (read)    195       19.6s      13.4s      27.6s      4.61s
                        (988)      (8323)     (41472)
  3 (float)   425       17.2s      12.7s      16.2s      1.55s
                        (677)      (2164)     (4096)
  Macintosh execution time = 268.22 to 334.32
           file size      = 7256 to 32256

  All above times and sizes were on an IBM-PC with 20Mbyte hard disk (avg.
  access time of about 100-110 milliseconds.)

  * PROBLEMS *
    All is not perfect in 32 bit land.  I must say that the system manual
  is a bit too dry and seems to leave some things out.  I would like to see
  the following included:
         - Information on the optional memory management unit; why might
           I want one?  What is it?
         - More examples on calling the system interface routines in
           assembler; only one example is given

    The graphics demo did not work on my Paradise Modular graphics card.
  The demo was suppose to draw rectangles on the mono screen by drawing
  one rectangle, clearing the screen, and drawing another, etc. It did
  this. ( Pretty neat. It looks as if there are 20 rectangles on the screen
  at once.)  But then it is supposed to go into 320x200 mode and draw circles
  and then into 640x200. It did not in either case; it simply printed
  alphanumeric junk.
    The demo was suppose to demonstrate the graphics interface routines
  available from Definicon at an additional charge.  It is suppose to draw
  many screens in the DSI memory and dump them into IBM memory, creating
  fast graphics.

    Also, I have been having problems trying to contact the Thousand Oaks
  board as mentioned in BYTE.  The system seems very unreliable.

    I do not know if UNIX will be out for the board very soon.  The people
  there think that the DOS interface is just fine are are a little bit
  against UNIX on the board, as far as I can tell.  The DOS interface
  agrees with me, though.

  Final opinion: I LOVE IT! SPEED, FULL FLEDGED COMPILERS! 32 BITS! This
        is the future, and those who want real computers with real
        compilers without going broke will want this.


  *** NOTE: THE PRICES GIVEN IN BYTE WERE INTRODUCTORY AND ONLY FOR THOSE
      WHO MENTION BYTE MAGAZINE WHEN THEY ORDER.  THIS SPECIAL OFFER MAY
      HAVE EXPIRED ! CALL THEM AND SEE !

   If anyone out there has anything else that you would like to know
   about it, or they would like to have your favorite benchmark run on
   the board, mail it to me.

   Anything else I might say about the board after this will be posted
   in net.micro.16k.

                                      John Krist
                                      University of Texas at Austin
                                      Astronomy Dept.
                                      (jk@utastro.uucp)