From WikiChip
Difference between revisions of "logic gate"

(Created page with "{{confuse|ideal logic gate}} A '''logic gate''' is a simple device that gives a discrete output of either 0 or 1 based on the input condition. Logic gates implement Boolean...")
 
Line 1: Line 1:
 
{{confuse|ideal logic gate}}
 
{{confuse|ideal logic gate}}
A '''logic gate''' is a simple device that gives a discrete output of either 0 or 1 based on the input condition. Logic gates implement [[Boolean function]]s and are the fundamental building blocks of all digital systems. Logic gates can be implemented using discrete components such as [[resistor]]s, [[diode]]s, and [[transistor]]s.
+
A '''logic gate''' is a simple device that gives a discrete output of either 0 or 1 based on the input condition. Logic gates implement [[Boolean function]]s and are the fundamental building blocks of all digital systems. Logic gates can be implemented using discrete components such as [[resistor]]s, [[diode]]s, and [[transistor]]s.  
 +
 
 +
Sometimes a combination of logic gates may be more efficiently implemented as a single device. Those devices are known as [[compound logic gate]].
 +
 
 +
==Symbology==
 +
There are many different symbols that can be used to represent basic logic gates. Some areas of the world may be required to follow a specific standard. The four main standards that attempt to provide a uniform method of describing complex logic functions are:
 +
* [[ANSI/IEEE Std 91-1984]] (MIL/ANSI)
 +
* [[IEC 60617-12]] / [[BS 3939]] (British)
 +
* [[DIN 40700]] (German)
 +
* [[NEMA ICS 19-2002]]
 +
Note that the [[inversion bubble]] is used across most of those standards. In this article, the ANSI symbols are used.
 +
 
 +
==Gates==
 +
===Buffer===
 +
{| class="wikitable" style="float: right;"
 +
|-
 +
! A !! Q
 +
|-
 +
| 0 || 0
 +
|-
 +
| 0 || 0
 +
|}
 +
{{main|buffer gate|l1=Buffer}}
 +
[[File:buffer gate (ansi).svg|100px]] A '''Buffer''' is a gate that outputs the very same input it is given. Its primarily used to regenerate the input into either a strong LOW or a strong HIGH. In some cases this gate might be used to simply show that the output from some component is not degraded.
 +
 
 +
This gate implements the following Boolean function: <math>Q = A</math>
 +
===Tri-state Buffer===
 +
{| class="wikitable" style="float: right;"
 +
|-
 +
! EN !! A !! Q
 +
|-
 +
| 0 || [[don't care|X]] || [[high impedance|Z]]
 +
|-
 +
| 1 || A || A
 +
|}
 +
{{main|tri-state buffer gate|l1=Tri-state Buffer}}
 +
[[File:tri-state buffer gate (ansi).svg|100px]] A '''Tri-state Buffer''' is a gate that outputs the very same input it is given only when the control signal allows it. When the control signal is off, the output is at [[high impedance]]. This gate forms the basis for [[buses]], by controlling which devices is allow to generate output to a shared [[bus]].
 +
===NOT Gate===
 +
{| class="wikitable" style="float: right;"
 +
|-
 +
! A !! Q
 +
|-
 +
| 0 || 1
 +
|-
 +
| 1 || 0
 +
|}
 +
{{main|NOT gate}}
 +
[[File:not gate (ansi).svg|100px]] The '''NOT gate''' or an '''inverter''' produces an output that's the opposite to its input - if the input is HIGH, the output is LOW, and conversely when the input is LOW, the output is HIGH.
 +
 
 +
This gate implements the following Boolean function: <math>Q = \bar{A} = \neg A</math>
 +
===AND Gate===
 +
{| class="wikitable" style="float: right;"
 +
|-
 +
! A !! B !! Q
 +
|-
 +
| 0 || 0 || 0
 +
|-
 +
| 0 || 1 || 0
 +
|-
 +
| 1 || 0 || 0
 +
|-
 +
| 1 || 1 || 1
 +
|}
 +
{{main|AND gate}}
 +
[[File:and gate (ansi).svg|100px]] An '''AND gate''' outputs a HIGH only when both inputs are HIGH, otherwise it outputs a LOW. The Boolean AND operation is equivalent to the Boolean multiplication operation.
 +
 
 +
The AND gate implements the following boolean function: <math>Q = AB = A \and B = A \& B = A \cdot B</math>
 +
===OR Gate===
 +
{{main|OR gate}}
 +
===XOR Gate===
 +
{{main|XOR gate}}
 +
===NAND Gate===
 +
{{main|NAND gate}}
 +
===NOR Gate===
 +
{{main|NOR gate}}
 +
===XNOR Gate===
 +
{{main|XNOR gate}}
  
  
 
{{stub}}
 
{{stub}}
 
[[Category:logic gates]]
 
[[Category:logic gates]]

Revision as of 16:02, 19 November 2015

Not to be confused with ideal logic gate.

A logic gate is a simple device that gives a discrete output of either 0 or 1 based on the input condition. Logic gates implement Boolean functions and are the fundamental building blocks of all digital systems. Logic gates can be implemented using discrete components such as resistors, diodes, and transistors.

Sometimes a combination of logic gates may be more efficiently implemented as a single device. Those devices are known as compound logic gate.

Symbology

There are many different symbols that can be used to represent basic logic gates. Some areas of the world may be required to follow a specific standard. The four main standards that attempt to provide a uniform method of describing complex logic functions are:

Note that the inversion bubble is used across most of those standards. In this article, the ANSI symbols are used.

Gates

Buffer

A Q
0 0
0 0
Main article: Buffer

buffer gate (ansi).svg A Buffer is a gate that outputs the very same input it is given. Its primarily used to regenerate the input into either a strong LOW or a strong HIGH. In some cases this gate might be used to simply show that the output from some component is not degraded.

This gate implements the following Boolean function: Equation upper Q equals upper A

Tri-state Buffer

EN A Q
0 X Z
1 A A
Main article: Tri-state Buffer

tri-state buffer gate (ansi).svg A Tri-state Buffer is a gate that outputs the very same input it is given only when the control signal allows it. When the control signal is off, the output is at high impedance. This gate forms the basis for buses, by controlling which devices is allow to generate output to a shared bus.

NOT Gate

A Q
0 1
1 0
Main article: NOT gate

not gate (ansi).svg The NOT gate or an inverter produces an output that's the opposite to its input - if the input is HIGH, the output is LOW, and conversely when the input is LOW, the output is HIGH.

This gate implements the following Boolean function: Equation upper Q equals upper A overbar equals normal not-sign upper A

AND Gate

A B Q
0 0 0
0 1 0
1 0 0
1 1 1
Main article: AND gate

and gate (ansi).svg An AND gate outputs a HIGH only when both inputs are HIGH, otherwise it outputs a LOW. The Boolean AND operation is equivalent to the Boolean multiplication operation.

The AND gate implements the following boolean function: Equation upper Q equals upper A upper B equals upper A logical-and upper B equals upper A ampersand upper B equals upper A dot upper B

OR Gate

Main article: OR gate

XOR Gate

Main article: XOR gate

NAND Gate

Main article: NAND gate

NOR Gate

Main article: NOR gate

XNOR Gate

Main article: XNOR gate


Text document with shapes.svg This article is still a stub and needs your attention. You can help improve this article by editing this page and adding the missing information.