¿Cómo se crean electrónicamente las puertas lógicas?

Así que tenemos compuertas AND, NOT, NAND, NOR, OR, pero ¿cómo se crean electrónicamente/eléctricamente?

Por ejemplo, ¿qué hace que NOT gate invierta el valor?

Fuera de transistores .
Aquí hay una publicación de blog que escribí que muestra cómo hacer físicamente los circuitos a partir de transistores y explica por qué funcionan. Lo encontré más fácil de entender después de hacer prácticamente eso en lugar de solo leer la teoría. Los circuitos se basan en diagramas de aquí .

Respuestas (5)

He convertido esto en un wiki de la comunidad para que podamos recopilar implementaciones interesantes de puertas lógicas a las que referirnos en el futuro.

Para empezar, debe comprender los transistores de una manera simple. Trataré con CMOS ya que el 99% de toda la lógica que ha existido alguna vez (en número) existe como CMOS.

Se utilizan dos tipos de transistores, PMOS y NMOS, aquí están sus símbolos:Figura 1

Los transistores son fuentes/sumideros de corriente controlados eléctricamente. El PMOS generará corriente (la línea punteada en el diagrama muestra el flujo de corriente cuando está encendido) desde una fuente de alimentación (conectada a la fuente) a través del drenaje y hacia otros circuitos cuando el voltaje de la puerta es MENOR que la fuente. El NMOS hundirá la corriente en el suelo a través del drenaje hacia la fuente (que en este caso debería considerar como un sumidero).

Tenga en cuenta que me he tomado algunas libertades al nombrar en aras de la claridad.

PMOS generalmente está conectado a un voltaje positivo y NMOS generalmente está conectado a voltajes negativos, generalmente a tierra.

Curiosamente, puede apilar los dispositivos para realizar varias funciones. Apilar dos PMOS da una fuente de corriente controlada por dos voltajes, apilar dos NMOS da un sumidero de corriente controlado por dos voltajes.

ingrese la descripción de la imagen aquí

Tenga en cuenta que tanto el voltaje en A (lo llamaremos A) como B AMBOS tienen que estar por debajo de +V para que fluya la corriente. También tenga en cuenta que tanto C como D deben ser más altos que Ground (ese divertido símbolo de triángulo sombreado) para que la corriente se hunda (¿hundida?). Podría decir "Tanto A como B tienen que estar bajos para que fluya la corriente" y "Tanto C como D tienen que estar altos para que fluya la corriente".

Al igual que puede "apilar" (en realidad poner en serie), puede conectar dispositivos en paralelo.ingrese la descripción de la imagen aquí

Podría decir que "ya sea A O B puede ser bajo para que fluya la corriente" para el PMOS y podría decir que "ya sea C O D puede ser alto para que fluya la corriente" para el circuito NMOS.

Notarás que ya estamos usando lenguaje lógico para describir funciones (Y, O), así que ahora podemos empezar a armar circuitos.

En primer lugar el inversor:

ingrese la descripción de la imagen aquí

Cuando Vin está conectado a tierra, el PMOS está encendido y puede generar corriente, pero el NMOS está apagado y no puede absorber corriente. Como resultado, el pin Vout intenta cargar cualquier capacitancia disponible y carga esa capacitancia hasta que alcanza el nivel V+.

Del mismo modo, cuando Vin es alto, el NMOS está encendido y puede absorber corriente, pero el PMOS ahora está apagado y no puede generar corriente. como resultado, el pin Vout intenta extraer la carga de cualquier capacitancia disponible y descarga esa capacitancia hasta que alcanza el nivel de tierra.

Un "alto" en la entrada da un "bajo" en la salida, un "bajo" en la entrada da un "alto" en la salida. ¡Se invierte!

Si observa el símbolo tanto para el PMOS como para el NMOS, verá que la puerta parece un condensador en el símbolo. Esto es deliberado ya que un transistor MOS ES un capacitor y es principalmente esta capacitancia la que se carga y descarga durante la operación. La corriente es el flujo de carga por tiempo y la capacitancia es el almacenamiento de carga por voltaje. Los transistores convierten el voltaje de la compuerta en corrientes controladas que luego cargan y descargan las capacitancias de la compuerta que convierten ese cambio de carga en un cambio de voltaje.

Ahora, para las dos primeras puertas de entrada, la puerta NAND:

ingrese la descripción de la imagen aquí

La "pila" de NMOS solo absorberá la corriente bajo una condición, y eso es cuando AMBOS A y B están altos. Tenga en cuenta que para esa condición AMBOS PMOS están apagados (es decir, no generan corriente). Entonces, en esa condición, Vout hundirá la corriente y Vout será bajo.

En todas las demás condiciones, al menos uno de los PMOS generará corriente y la pila de NMOS no podrá absorber corriente. Luego, la salida se carga y Vout = alto.

A B Out
0 0 1
0 1 1
1 0 1
1 1 0

Esta tabla de verdad muestra que si No (A&B) AKA NAND. 0 = tierra, 1 = V+.

Para convertirse en una puerta AND, solo necesita invertir la salida.

ingrese la descripción de la imagen aquí

Y es la tabla de verdad:

A B Out
0 0 0
0 1 0
1 0 0
1 1 1

Y al lado la puerta NOR

ingrese la descripción de la imagen aquí

Espero que ahora puedas obtener la tabla de verdad por ti mismo.

C D Out
0 0 1
0 1 0
1 0 0
1 1 0

Hay una agradable simetría de NOR a NAND. la estructura es una simple inversión.

Ahora el quirófano

ingrese la descripción de la imagen aquí

y tabla de verdad

C D Out
0 0 0
0 1 1
1 0 1
1 1 1

Extender los diseños a entradas de orden superior es fácil, como lo muestra una NAND de 3 entradas.

ingrese la descripción de la imagen aquí

Al colocar NMOS y PMOS en combinaciones en serie/paralelo, puede implementar varias funciones lógicas a nivel de transistor. Esto se hace a menudo por eficiencia de área, eficiencia energética o incluso por velocidad. Estas funciones no necesitan ser funciones estrictamente AND, OR o Xor. Lo siguiente se conoce como puerta AND/OR:

ingrese la descripción de la imagen aquí

y tiene la siguiente tabla de verdad.

C A B Out
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 0
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1

Si cree que esta es la única forma de implementar estas funciones, le presentaré un dispositivo que se llama puerta de transmisión.

ingrese la descripción de la imagen aquí

Tanto las compuertas NMOS como las PMOS deben conducirse en oposición para que funcionen correctamente.

Aquí hay un circuito de muestra de lo que puede hacer con un NMOS adicional.

ingrese la descripción de la imagen aquí

Aquí /A = No(A) en lógica digital

A+B = A O B

A*B = A Y B

Entonces puede ver que solo usando 3 transistores puede implementar A O B. Sin embargo, tenga en cuenta que este circuito tiene efectos secundarios graves y generalmente no se usa. Pero no deja de ser ilustrativo.

aquí hay una colección completa de funciones lógicas basadas en TG:

ingrese la descripción de la imagen aquí

También existe Pass-Transistor-Logic o PTL. Un ejemplo de tal:PTL

Lo escribí yo mismo porque EE.SE está destinado a ser autónomo y los enlaces generalmente están mal vistos. Además, lo convertí en un wiki de la comunidad para que en el futuro se puedan recopilar ideas geniales aquí.
Súper respuesta!!!
Vale la pena señalar que muchas situaciones requieren una función NAND para unir las salidas de algunas puertas OR, o NOR para unir las salidas de algunas puertas NAND. Una expresión como (A or B) nand (C or D)puede implementarse en un solo nivel de lógica usando ocho transistores, mucho más eficientemente que usar dos puertas "o" completas y NAND'ing el resultado.
¿Cuáles son los 'efectos secundarios graves' de la implementación de TG OR?
@apalopohapa: El mayor efecto secundario es que los circuitos lógicos TG a veces pueden retroceder sus entradas, al menos momentáneamente. Creo que "/A" en la parte superior de "TG" o implementación debería ser "/B". Suponga que ese es el caso, y que tanto A como B comienzan con un valor bajo. Inicialmente, A y B estarán conectados a la salida y, por lo tanto, entre sí . Si se produce un flanco ascendente en A antes de un flanco descendente en /A, entonces la corriente de A podrá fluir de regreso a B. Dichos flujos inversos, incluso si son breves, pueden causar comportamientos de circuito no deseados.
@supercat Gracias por la respuesta. Sin embargo, el circuito no se ve bien, ni siquiera con /B en la puerta NMOS: cuando A = 1, el TG inferior está apagado, por lo que la única forma de obtener un 1 en la salida es a través de NMOS. Pero el NMOS solo puede hacer mucho para dejar pasar 1s. Entonces parece que debería ser un PMOS con /A en su puerta. Independientemente, reconozco los problemas de retroceso (gracias por la explicación).
@apalopohapa: Hmm... tal vez uno podría reemplazar el NFET superior con un PFET controlado por /A, aunque en ese caso la fuente del PFET también podría conectarse a VDD en lugar de a A.
Por cierto, diseñé una puerta XOR basada en BJT para controlar las luces del remolque de mi padre alrededor de 1977 (luz izquierda = freno xor intermitente izquierdo; luz derecha = freno xor intermitente derecho); era conceptualmente una iluminación como la puerta de transmisión XOR que, por cierto, funciona mejor en NMOS que en CMOS.
@apalopohapa arregló la puerta NOR porque tenía la polaridad incorrecta para la entrada /A. /A tiene razón. La celda puede presentar una carga pesada, mientras que una celda normal solo parecerá capacitiva. Sin embargo, las compuertas lógicas normales también tienen corriente de disparo (conflicto de unidad NMOS y PMOS), por lo que esto no es inusual. Sin embargo, lo que es cierto es que no puede conectar en cascada estos dispositivos (a menos que pueda asegurarse de que la unidad de baja impedancia se transmita) y pueden ser potencialmente más lentos ya que hay una longitud de canal adicional que se transmite.
@placeholder Gracias. Solo para aclarar, estábamos hablando de la puerta OR que usa un TG más un transistor. Parece que el NMOS debería ser un PMOS para dejar pasar el voltaje completo de A = 1.
"La lógica de transistor de paso (PTL) es una mejor manera de implementar circuitos diseñados para aplicaciones de baja potencia. La lógica de transistor de paso de baja potencia y sus procedimientos de análisis de diseño se informaron en [12, 13]. Su ventaja es que un paso- La red de transistores (ya sea pMOS o nMOS) es suficiente para implementar la función lógica, lo que da como resultado una menor cantidad de transistores y una carga de entrada más pequeña. Además, se eliminan las rutas directas a tierra, que pueden conducir a la disipación de energía de cortocircuito. " hindawi.com/journals/vlsi/2012/173079

La puerta NOT en particular en CMOS consta de dispositivos PMOS y NMOS complementarios que están configurados para invertir la salida.

El mejor consejo que puedo darte es que consultes el libro Circuitos integrados digitales . Tiene todo lo que desea saber sobre cómo diseñar lógica a nivel de transistor.

Usando RTL (Lógica de Resistencia-Transistor).

Además, algunas puertas se fabrican combinando puertas. Por ejemplo, un XOR es un (OR) AND (NO AND). Además, una NAND es solo una Y invertida.

Un inversor y un NOR: http://en.wikipedia.org/wiki/Resistor%E2%80%93transistor_logic
Un OR es un NOR invertido.
Un AND es un NOR con entradas invertidas.
Una NAND es una Y invertida.
Un XOR es un OR unido a una NAND.
Un NXOR es un XOR invertido, o un AND OR con un NOR.

Un seguidor de emisor caerá 0.7V como un diodo. Las puertas and y or deben ir seguidas de dos inversores para amplificar el voltaje.

Probablemente lo entenderá mejor si tiene una representación visual de lo que sucede en las puertas lógicas. Uno de los mejores lugares para esto es este excelente simulador interactivo falstad . Está basado en Java y se ejecuta desde su navegador.