Complex Conditions

At times it will be necessary to specify the value of several fields in order to detect a certain condition. There are two ways to specify complex conditions. First, the condition on a "word" statement may contain the logical operators "&" (AND) and "|" (OR). AND has precedence over OR, but parentheses may be used to override the precedence. The second method is to use a "condition" statement to define a condition, and then use the name of the condition on the "word" statement. The following is an example.

cnd_abc: condition a=1&b=2&c=0
cnd_abc: word 0x1->flda

Once the condition "cnd_abc" is defined, it can be used by many different "word" statements. Defined conditions such as "cnd_abc" and simple conditions such as "a=1" may be combined in a single logical expression both on a "word" statement and on a "condition" statement. The order of the "condition" statements and the "word" statements does not matter, but "condition" statements may not reference one another circularly.

When a complex condition using the OR connective appears on a "word" statement, the condition is reduced to sum-of-products form and one wordline is generated for each product term. This must be done because the AND plane is incapable of executing the OR function. This procedure pushes the "OR" connective processing into the OR plane. Thus a single "word" statement may generate many wordlines.