En la lógica binaria los dos niveles son lógico alto y lógico bajo, que generalmente corresponden a los números binarios 1 y 0 respectivamente. Las señales con uno de estos dos niveles pueden utilizarse en el álgebra booleana para el diseño o análisis de circuitos digitales.
Estado activoEditar
El uso del nivel de tensión más alto o más bajo para representar cualquiera de los estados lógicos es arbitrario. Las dos opciones son activo-alto y activo-bajo. Los estados activo-alto y activo-bajo pueden mezclarse a voluntad: por ejemplo, un circuito integrado de memoria de sólo lectura puede tener una señal de selección de chip que es activa-baja, pero los bits de datos y dirección son convencionalmente activos-alto. En ocasiones, un diseño lógico se simplifica invirtiendo la elección del nivel activo (ver las leyes de De Morgan).
Nivel lógico | Señal activa-alta | Señal activa-señal baja |
---|---|---|
Alto lógico | 1 | 0 |
Bajo lógico | 0 | 1 |
El nombre de una señal activa-baja se escribe históricamente con una barra encima para distinguirla de una señal activa-alta. Por ejemplo, el nombre Q, leído «barra Q» o «Q no», representa una señal activa-baja. Las convenciones comúnmente utilizadas son:
- una barra encima (Q)
- una barra inicial (/Q)
- un prefijo o sufijo de n minúscula (nQ o Q_n)
- un # final (Q#), o
- un sufijo «_B» o «_L» (Q_B o Q_L).
Muchas señales de control en electrónica son señales activas-bajas (normalmente líneas de reset, líneas de selección de chip, etc.). Las familias lógicas como la TTL pueden hundir más corriente de la que pueden originar, por lo que aumentan el fanout y la inmunidad al ruido. También permite la lógica O cableada si las puertas lógicas son de colector abierto/drenaje abierto con una resistencia de pull-up. Ejemplos de esto son el bus I²C y la red de área de controladores (CAN), y el bus local PCI.
Algunas señales tienen un significado en ambos estados y la notación puede indicarlo. Por ejemplo, es habitual que una línea de lectura/escritura se designe R/W, indicando que la señal es alta en caso de lectura y baja en caso de escritura.
Niveles de tensión lógicaEditar
Los dos estados lógicos suelen representarse mediante dos tensiones diferentes, pero en algunas señalizaciones lógicas, como la interfaz digital de bucle de corriente y la lógica en modo corriente, se utilizan dos corrientes diferentes. Se especifican umbrales altos y bajos para cada familia lógica. Cuando está por debajo del umbral bajo, la señal es «baja». Cuando está por encima del umbral alto, la señal es «alta». Los niveles intermedios no están definidos, lo que da lugar a un comportamiento del circuito muy específico para la implementación.
Es habitual permitir cierta tolerancia en los niveles de tensión utilizados; por ejemplo, de 0 a 2 voltios podría representar el 0 lógico, y de 3 a 5 voltios el 1 lógico. Una tensión de 2 a 3 voltios no sería válida y sólo se produciría en una condición de fallo o durante una transición de nivel lógico. Sin embargo, pocos circuitos lógicos pueden detectar tal condición, y la mayoría de los dispositivos interpretarán la señal simplemente como alta o baja de una manera indefinida o específica del dispositivo. Algunos dispositivos lógicos incorporan entradas de disparo Schmitt, cuyo comportamiento está mucho mejor definido en la región del umbral y tienen una mayor resistencia a las pequeñas variaciones de la tensión de entrada. El problema del diseñador de circuitos es evitar circunstancias que produzcan niveles intermedios, para que el circuito se comporte de forma predecible.
Tecnología | Tensión L | H tensión | Notas | CMOS | 0 V a 1/3 VDD | 2/3 VDD a VDD | VDD = tensión de alimentación | TTL | 0 V a 0.8 V | 2 V a VCC | VCC = 5 V ±10% |
---|
Casi todos los circuitos digitales utilizan un nivel lógico consistente para todas las señales internas. Ese nivel, sin embargo, varía de un sistema a otro. La interconexión de dos familias lógicas requiere a menudo técnicas especiales, como resistencias de pull-up adicionales o circuitos de interfaz construidos a propósito, conocidos como desplazadores de nivel. Un desplazador de nivel conecta un circuito digital que utiliza un nivel lógico con otro circuito digital que utiliza otro nivel lógico. A menudo se utilizan dos cambiadores de nivel, uno en cada sistema: Un conductor de línea convierte de niveles lógicos internos a niveles de línea de interfaz estándar; un receptor de línea convierte de niveles de interfaz a niveles de tensión internos.
Por ejemplo, los niveles TTL son diferentes a los de CMOS. Generalmente, una salida TTL no se eleva lo suficiente como para ser reconocida de forma fiable como un 1 lógico por una entrada CMOS, especialmente si sólo está conectada a una entrada CMOS de alta impedancia que no genera una corriente significativa. Este problema se resolvió con la invención de la familia de dispositivos 74HCT, que utiliza tecnología CMOS pero niveles lógicos de entrada TTL. Estos dispositivos sólo funcionan con una fuente de alimentación de 5 V.