MINTERM(10.6)                                       MINTERM(10.6)

     NAME
          minterm - minterm file format

     DESCRIPTION
          The minterm file format consists of at least one binary val-
          ued function definition.  A function definition begins .o
          name[@flag*] [name]...  followed by line(s) that have the
          form term:mask ...  Name is either a string or a number.
          The first name following .o is a symbol of the function
          (usually an output pin name or number of a ROM/PAL/FPGA
          integrated circuit).  Any other name's are symbols of input
          binary variables.  Term and mask are decimal numbers.

          There is a correspondence between the bits of the numbers in
          binary representation and the input symbols, the first input
          symbol is associated with the least significant bit.  The
          meaning of a bit with value 1 in mask is `do care', and the
          meaning of a bit with value 1 in term is `input must be 1'.
          Thus the term:mask is an implicant, and a set of them when
          or'ed together describes the input conditions for which the
          output symbol will have a value of 1.

          For example:
           .o 3 1 2
           3:3
           .o 4 1 2
           1:3 2:3 3:3
           .o 5 2 3
           1:3 2:3
           .o 11
           .o 9
           0:0
          Output 3 is the and function of inputs 1 and 2; output 4 is
          the or function of inputs 1 and 2 (quine(10.1) would change
          this to 1:1 2:2); output 5 is the exclusive-or function of
          inputs 2 and 3; output 11 is a constant 0 and output 9 is a
          constant 1.

          Flag information is essentially communication between lde
          and the technology mapper for a particular architecture, and
          is passed through unchanged by quine, cover, and hazard (see
          quine(10.1)). Among the flags are

          b    buried
          d    D flip-flop clock
          e    output enable
          g    clock enable
          i    inverted sense
          t    T flip-flop clock

     Page 1                       Plan 9            (printed 12/21/24)

     MINTERM(10.6)                                       MINTERM(10.6)

          Another example:
           .o x0@b
           0:0
           .o x1@b x0
           1:1
           .o x2@b x0 x1
           3:3
           .o x0@t ck
           1:1
           .o x1@t ck
           1:1
           .o x2@t ck
           1:1
           .o c2 x2
           1:1
           .o c2@e en
           1:1
          x[012] are bits of a buried three bit counter, each bit is
          toggled by ck only if all lower bits are 1.  c2 outputs x2,
          the output enable is controlled by ck.

     SEE ALSO
          lde(10.1), quine(10.1), cover(10.1), hazard(10.1),
          xpal(10.1), part(10.1), act(10.1)

     Page 2                       Plan 9            (printed 12/21/24)