AND-OR-invert (AOI) logic and AOI gates are two-level compound (or complex) logic functions constructed from the combination of one or more AND gates followed by a NOR gate (equivalent to an OR gate through an Inverter gate, which is the "OI" part of "AOI"). Construction of AOI cells is particularly efficient using CMOS technology, where the total number of transistor gates can be compared to the same construction using NAND logic or NOR logic. The complement of AOI logic is OR-AND-invert (OAI) logic, where the OR gates precede a NAND gate.[1]
Most logic optimization result in a sum-of-products or product-of-sums logic expression.[2]
AOI is used for sum-of-products, the variables are ANDed to form minterms which are ORed together then inverted, such as:
AOI gates perform one or more AND operations followed by an OR operation then an inversion.
The 2-1 AOI gate can be represented by the following boolean equation and truth table:
Q=\overline{(A\wedgeB)\veeC}.
Real world examples of an 2-2 AOI gate are found in the CD4085B, SN74LS51, SN5450 logic ICs (see further below).
The 2-2 AOI gate can be represented by the following boolean equation and truth table:
Q=\overline{(A\wedgeB)\vee(C\wedgeD)}.
Real world examples of an 3-3 AOI gate is found in the SN74LS51 logic IC (see further below).
The 3-3 AOI gate can be represented by the following boolean equation and truth table:
Q=\overline{(A\wedgeB\wedgeC)\vee(D\wedgeE\wedgeF)}.
Its logic table would have 64 entries, but is not shown.
Real world examples of an 4-4 AOI gate is found in the CD4048B logic IC (see further below).
The 4-4 AOI gate can be represented by the following boolean equation and truth table:
Q=\overline{(A\wedgeB\wedgeC\wedgeD)\vee(E\wedgeF\wedgeG\wedgeH)}.
Its logic table would have 256 entries, but is not shown.
It is possible to create multi-level compound gates, which combine the logic of AND-OR-Invert gates with OR-AND-invert gates.[3] An example is shown below. The parts implementing the same logic have been put in boxes with the same color.
AND-OR-invert (AOI) and OAI gates can be readily implemented in CMOS circuitry. AOI gates are particularly advantaged in that the total number of transistors (or gates) is less than if the AND, NOT, and OR functions were implemented separately. This results in increased speed, reduced power, smaller area, and potentially lower fabrication cost. For example, a 2-1 AOI gate can be constructed with 6 transistors in CMOS, compared to 10 transistors using a 2-input NAND gate (4 transistors), an inverter (2 transistors), and a 2-input NOR gate (4 transistors).
In NMOS logic, the lower half of the CMOS circuit is used in combination with a load device or pull-up transistor (typically a depletion load or a dynamic load).
AOI gates are similarly efficient in transistor–transistor logic (TTL).
CMOS 4000-series logic family:
TTL 7400-series logic family: (in past decades, a number of AOI parts were available in the 7400 family, but currently most are obsolete (no longer manufactured))