######### Programmable logic array

Library: Gates
Introduced: 3.2
Appearance: #########


The Programmable Logic Array (PLA) will present on its output the result of a combinatorial logic function. If one of the inputs is in error (E) or undefined (U), it will consider that all its inputs are at 1. This component resembles a ROM, and you need to enter the programming in a very similar way. Programming can be exported and imported from a file.
In the Input/Output library (extra), there's a PLA composant that better represents the internal workings of these components.

Once you've defined the number of input lines with the Bit width in attribute and the number of output lines with the Bit with out attribute, you can open this window by right-clicking on the PLA to open the context menu and selecting the menu | Modify PLA program |.


Click on the  Add Row  button to create the first line of your program. You can already add other lines, or add them as you go along. The  Remove  button deletes the line. You can see the button columns for programming inputs and the button columns for programming outputs. If you click on them, they will alternately display 0,1,x. 0 and 1 represent the logic level and x means unimportant.

For example, in the first line of the figure above, you'll see the combination 0.x.x for inputs and 0.0.0 for outputs. This means that if input 2 is set to 0, inputs 1 and 0 are irrelevant, and the value 0.0.0 will be delivered on the outputs.
The comment column allows you to add a text that will be visible on the PLA when the line combination is active.

The  Export  and  Import  buttons respectively allow you to export the program or import it from a file.
The  OK  button confirms that the program has been saved and closes the window.
The  Cancel  button cancels the program and closes the window.

Pins (assuming component faces east)

West edge:
The component input, Bit width matches Bit width in attribute.
East edge:
The component output, Bit width matches Bit width out attribute.


When the component is selected or being added, the arrow keys alter its Facing attribute.

The direction of the component, its output relative to input.
Bit width in
The bit width of the component's inputs.
Bit width out
The bit width of the component's output.
Opens the programming window.
The text within the label associated with the gate.
Label Font
The font with which to render the label.

Poke Tool Behavior


Text Tool Behavior


Back to Library Reference