CONTENTSINDEXPREVNEXT

II.5.1 Assembler

"Line  1: type of GAL expected"
   The first line of your source file must define for what type of GAL
   this source file is. So the first line must contain one of the
   following keywords: GAL16V8, GAL20V8, GAL16V8A, GAL20V8A


"unexpected end of file"
   Normaly this error occurs when there is no DESCRIPTION keyword
   at the end of your Boolean equations.


"pin name expected after '/'"
   A '/' must be followed by a pin name. If there is a '/' but no pin name
   this error will occur.


"max. length of pin name is 8 characters"
   Pin names are not allowed to be longer than 8 characters.


"illegal character in pin declaration"
   In a pin name is a character which is not allowed to use. Possible
   characters are: a..z, A..Z, 0..9, /


"illegal VCC/GND assignment"
   VCC and GND are keywords. It's not allowed to use these words for
   other pins. Use it only for the pins VCC and GND.


"pn declaration: expected VCC at VCC pin"
   The pin VCC must have the name VCC.


"pin declaration: expected GND at GND pin"
   The pin GND must have the name GND.


"pin name defined twice"
   In the pin declaration a pin name is used multiple.


"illegal use of '/'"
   Negations ('/') must be followed by a pin name. 


"unknown pin name"
   Within a Boolean equation is a undefined pin name.


"NC (Not Connected) is not allowed in logic equations"
   NC is a keyword for unused pins. So don't use this in your
   Boolean equations.


"unknown suffix found"
   A '.' must be followed by a T, E, R, CLK, ARST or APRST. This defines


"'=' expected"
   A '=' is expected but not found (what else should I say).


"this pin can't be used as output"
   You have tried to define a pin as output which can't be used as output.


"same pin is defined multible as output"
   It's easier to show an example:
     X = ...
     X = ...
   This brings up this error message.


"before using .E, the output must be defined"
   You have defined a Boolean equation for tristate enable but there
   was no Boolean equation for the trisate output.
   The order must be:
     name.T = ...
     name.E = ...

   Possibly you have done:
     name.E = ...
     name.T = ...
   this is wrong!


"GAL22V10: AR and SP is not allowed as pinname"
   When using a GAL22V10 AR and SP are keywords for the asynchronous reset
   and synchronous preset. So AR and SP is not allowed to be used as pin
   names.


".E, .CLK, .ARST and .APRST is not allowed to be negated"
   The definitions for tristate control,... can't be negated.


"mode 2: pins 12, 19 can't be used as input"
   The GAL would be in mode 2. In this mode you can't define the pins
   12 and 19 as input pins. These pins do not have a feedback too. This
   means that the following equation is not allowed.

     a := pin 19
     b := pin 4
     y := pin 17

     a = b              a is output, b is input
     y = a * b          y is output
                        a is used as input, this is not allowed in mode 2
                        because there is on feedback

"mode 2: pins 15, 22 can't be used as input"
   The GAL would be in mode 2. In this mode you can't define the pins
   15 and 22 as input pins. These pins do not have a feedback too. This
   means that the following eqauation is not allowed.

     a := pin 22
     b := pin 4
     y := pin 17

     a = b              a is output, b is input
     y = a * b          y is output
                        a is used as input, this is not allowed in mode 2


"tristate control is defined twice"
   Example:    name.E = A * B
               name.E = C
   this is not allowed!


"GAL16V8/20V8: tri. control for reg. output is not allowed"
   When using a GAL16V8/20V8 it is not possible to define a tristate
   control for registered outputs.


"tristate control without previous '.T'"
   There is a tristate control for a combinational output.
   wrong:       name   = ...
                name.E = ...

   right:       name.T = ...
                name.E = ...


"use GND, VCC instead of /VCC, /GND"
   I think there is nothing to explain.


"mode 3: pins 1,11 are reservated for 'Clock' and '/OE'"
   Using register outputs causes mode 3 for the GAL. In this mode the
   pins 1 and 11 of a GAL16V8 can't be used by your own. These pins are
   reserved for Clock and /OE.


"mode 3: pins 1,13 are reservated for 'Clock' and '/OE'"
   Using register outputs causes mode 3 for the GAL. In this mode the
   pins 1 and 13 of a GAL20V8 can't be used by your own. These pins are
   reserved for Clock and /OE.


"use of VCC and GND is not allowed in equations"
   Expressions like  "X = A * VCC" are not allowed (and not necassary).


"tristate control: only one product term allowed (no OR)"
   In Boolean equations for tristate controls only one product
   term can be used. This means no ORs in your name.E=... equation.


"too many product terms"
   In this definition are too many product terms.


"use of AR and SP is not allowed in equations"
   AR and SP are keywords which can't be used in output definitions.


"negation of AR and SP is not allowed"
   AR and SP definitions can't be negated.


"no equations found"
   Sorry, but there are no Boolean equations in your source file. So GALer
   does not know what to do with your source file.


".CLK is not allowed when this type of GAL is used"
   A clock definition is only allowed when a GAL20RA10 is used.


".ARST is not allowed when this type of GAL is used"
   A .ARST definition is only allowed when a GAL20RA10 is used.
   

.APRST is not allowed when this type of GAL is used
   A .ARPST definition is only allowed when a GAL20RA10 is used.


"GAL20RA10: pin 1 can't be used in equations"
   Pin 1 of the GAL20RA10 is reserved for the preloading /PL.


"GAL20RA10: pin 13 can't be used in equations"
   Pin 13 of the GAL20RA10 is reserved for the output enable /OE.


"AR, SP: no suffix allowed"
   It's not allowed to add a suffix to AR, SP definitions.


"AR or SP is defined twice"
   A AR or SP definition is defined twice.


"missing clock definition (.CLK) of registered output"
   When using a GAL20RA10 all registered outputs must get a clock
   definition.


"before using .CLK, the output must be defined"
   At first you have to define the registered output by using .R before
   you can define the clock for this output.


"before using .ARST, the output must be defined"
   At first you have to define the registered output by using .R before
   you can define the asynchronous reset.


"before using .APRST the output must be defined"
   At first you have to define the registered output by using .R before
   you can define the asynchronous preset.


"several .CLK definitions for the same output found"
   You have defined more than one clock definition for the same output.


"several .ARST definitions for the same output found"
   You have defined more than one asynchronous reset definition for the
   same output.


"several .APRST definitions for the same output found"
   You have defined more than one asynchronous preset definition for the
   same output.


"use of .CLK, .ARST, .APRST only allowed for registered outputs"
   Well, use of .CLK, .ARST and .APRST is only allowed for registered
   outputs :-)


CONTENTSINDEXPREVNEXT