SYNOPSIS
loadrt logic [count=N|names=name1[,name2…]] personality=0xXXXX[,0xXXXX…]
- count
-
The number of logical gates.
- names
-
The named logical gates to create.
- personality
-
Comma separated list of hexadecimal number. Each number defines the behaviour of the individual logic gate. The list must have the same number of personalities as the N count.
DESCRIPTION
General ‘logic function’ component. Can perform ‘and’, ‘or’, ‘nand’, ‘nor’ and ‘xor’ of up to 16 inputs.
Determine the proper value for ‘personality’ by adding the inputs and outputs then convert to hex:
-
The number of input pins, usually from 2 to 16
-
256 (0x100) if the ‘and’ output is desired
-
512 (0x200) if the ‘or’ output is desired
-
1024 (0x400) if the ‘xor’ (exclusive or) output is desired
-
2048 (0x800) if the ‘nand’ output is desired
-
4096 (0x1000) if the ‘nor’ output is desired
Outputs can be combined, for example 2 + 256 + 1024 = 1282 converted to hex would be 0x502 and would have two inputs and have both ‘xor’ and ‘and’ outputs.
FUNCTIONS
- logic.N
-
Read the inputs and toggle the output bit.
PINS
- logic.N.in-MM bit in (MM=00..personality & 0xff)
-
- logic.N.and bit out [if personality & 0x100]
-
- logic.N.or bit out [if personality & 0x200]
-
- logic.N.xor bit out [if personality & 0x400]
-
- logic.N.nand bit out [if personality & 0x800]
-
- logic.N.nor bit out [if personality & 0x1000]
-
EXAMPLES
This is an OR circuit connected to three different signals, two inputs named sig-in-0 and sig-in-1, and one output named sig-out. First the circuit is defined, then its function is connected to the servo real time thread, last, its pins are connected to the wanted signals.
This is a named AND circuit with two inputs and one output.
SEE ALSO
and2(9), lut5(9), not(9), or2(9), xor2(9)
AUTHOR
Jeff Epler
LICENSE
GPL