The symbol for an inverter (logic gate) is usually the one shown below left. But I have sometimes seen the symbol shown below right. (See, for example, the last image in this answer.) What does this difference in symbols represent?
-
2\$\begingroup\$ A shame that markup characters are counted against a title's length the same way as visible characters. Otherwise, the title could show both symbols, e.g. as \$ {\raise{7px}{\rule{10px}{2px}}} {\!\huge{\vartriangleright}} {\!\!\raise{3px}{\large{\circ}}} {\raise{7px}{\rule{10px}{2px}}}\$ and \${\raise{7px}{\rule{10px}{2px}}} {\!\raise{3px}{\large{\circ}}} {\hspace{-5px}\huge{\vartriangleright}} {\!\!\raise{7px}{\rule{10px}{2px}}} \,.\$ (Or, ya know, drawn slightly better -- those look a tad distorted since I was trying to code-golf 'em down to being small enough.) \$\endgroup\$– NatCommented Aug 11, 2019 at 19:25
-
\$\begingroup\$ @Nat What's the collation of a NOT gate? How is it read out for a visually impaired user? It seems fortunate for the rest of us that markup characters are counted against the length, so that it does not turn into random graffiti just because it looks cool! \$\endgroup\$– pipeCommented Aug 12, 2019 at 2:25
-
2\$\begingroup\$ The latter one (circle located on the left side of the triangle) is called "Demorgan inverter" here: electronicshub.org/… \$\endgroup\$– MartinCommented Aug 16, 2020 at 12:59
-
\$\begingroup\$ @Martin, thanks for the link. \$\endgroup\$– JRNCommented Aug 16, 2020 at 13:17
-
\$\begingroup\$ You might want to check this answer as well: electronics.stackexchange.com/a/452460 \$\endgroup\$– MartinCommented Aug 16, 2020 at 14:38
4 Answers
Both symbols have the equation Q = not A. The difference in symbols is conceptual, it's to aid understanding.
The circle (often called a 'bubble') represents inversion.
The first symbol is a classical inverter. The output changes to the inverse of the input.
The second symbol is often seen as part of a larger function, where the output of this gate goes to enable or trigger some functionality, and the external line for that is active low. When one quickly scans the symbol, it's apparent which are the active low inputs, and which are active high.
For instance, in this 74138 3 to 8 line decoder, some of the 'address' or enable inputs are bubbled, and some are plain. It's then very easy to scan the connections to the address bus and see which need to be low and which high to enable.
It's also seen in the output decoder, where the output 'NAND' gates have all both inputs and outputs 'bubbled'/'notted', indicating active low logic. Although somebody flexing their muscles on boolean logic might be tempted to replace those output gates with positive logic NOR gates, they are conceptually better as NANDs where all inputs and outputs are active low, because the outputs become active when both inputs are active.
The concept of adding bubbles at odd places in the diagram can help in designing logic where you need to change a logical diagram into one that can be implemented with the available stuff in your junk box. I frequently throw down a bunch of gates to express my desired logic function. On any line, if I add a bubble at both start and finish of the line, the function remains unaltered. However I can then see what gates 'want to' become NORs or NANDs, and flip between one type of gate and the bubbled opposite.
-
\$\begingroup\$ Could you add more detail? Right now I'm not seeing how the difference in the placement of the bubble is an aid to understanding. \$\endgroup\$– JRNCommented Aug 11, 2019 at 10:39
-
1
In a logic signal context, there is no difference, both invert the signal so:
Q = NOT(A)
In some cases the person drawing the circuit might want to emphasize that the inverter has a "stronger" (buffered) output capable of driving more inputs than a standard inverter or gate can. Then we could use this symbol where the triangle represents a buffer:
to represent a buffer which also happens to invert the signal.
But from a functional point of view, it is still an inverter (the buffer just buffers the signal, it does not change it).
-
\$\begingroup\$ Thanks, I had not thought of this. \$\endgroup\$– JRNCommented Aug 11, 2019 at 10:43
-
\$\begingroup\$ Hmm, I'm not sure I've ever seen the placement of a circle used to indicate, drive strength per se. Do you have any links to where other people also suggest this is the case? I've certainly seen extra drive strength suggested by a supernumerary buffer in series, which to keep the logic correct may have a notted input. But the key there is the number of buffers. \$\endgroup\$– Neil_UKCommented Aug 11, 2019 at 11:00
-
\$\begingroup\$ @Neil_UK I'm not sure I've ever seen the placement of a circle used to indicate, drive strength per se I'm not talking about the placement of the circle, I'm talking about the buffer triangle being drawn connecting directly to the output which could indicate increased drive strength. As a consequence the circle moves to the input. Examples are in the linked answer up in the question. But personally I would draw a separate inverter and then a buffer. However, in case you'd want to keep a compact drawing this might not your preference. \$\endgroup\$ Commented Aug 11, 2019 at 11:33
-
\$\begingroup\$ To note it, I've seen this sort of logic driving a lot of schematics in chemical process engineering flowsheets. This is, there're often a lot of different symbols that could be used to mean the same thing in a literal sense (e.g., there're a lot of different ways to draw a symbol that refers to a heat-exchanger), but different symbols can carry connotations beyond their literal meaning. Experienced authors tend to draw flowsheets with proper connotations despite being unable to rely on readers' ability to interpret it. \$\endgroup\$– NatCommented Aug 11, 2019 at 20:45
It might help your understanding if you see how this can be used for multiple input gates.
For example: \$Q=A\cdot\overline{B}\$ (i.e. A and not B) can be drawn in these two equivalent ways:
This can help make the schematic more compact, since it actually removes the triangle instead of just moving pieces around. I've seen it most often in symbols for complex logic gates (especially the weird logic gates you can get from synthesis output that few people would ever use directly).
When appearing on the input, the bubble means that a 0 is the active or asserted input state, and the input is called an active-LOW input. When appearing on the output, the bubble means that a 0 is the active or asserted output state, and the output is called an activeLOW output. The absence of a bubble on the input or output means that a 1 is the active or asserted state, and in this case, the input or output is called active-HIGH.
Digital Fundamentals ELEVENTH EDITION Thomas L. Floyd