Los tres elementos lógicos básicos AND, OR y NOT se pueden combinar para formar circuitos lógicos más complejos, que realicen muchas operaciónes útiles y que se empleen en la construcción de sistemas digitales complejos. Algunas funciones lógicas mas comunes son: Comparación, aritmética, conversión de códigos, codificación, decodificación, selección de datos, almacenamiento y recuento.
1. NOT
La operación NOT cambia de un nivel lógico al nivel lógico opuesto, cuando la entrada está a nivel
ALTO (1), la salida se pone a nivel BAJO (0). Cuando la entrada está a nivel BAJO, la salida se pone
a nivel ALTO. La opeación NOT se implementa mediante un circuito lógico conocido como inversor.
AND
La oepración AND genera un nivel ALTO, sólo cuando todas las entradas están a nivel ALTO, cuando
una entrada esta a nivel ALTO y la otra entrada esta a nivel ALTO, lasalida se pone a nivel ALTO.
Cuando cualquiera de las entradas o todas ellas están a nivel BAJO, la salida se pone a nivel BAJO. La
operación AND se implementa madiante un circuito lógico conocido como puerta AND.
OR
La operación OR genera un nivel ALTO cuando una o más entradas están a nivel ALTO, cuando una
de las entradas está a nivel ALTO o ambas entradas están a nivel ALTO, la salida es un nivel ALTO.
Cuando ambas entradas están a nivel BAJO, la salida será un nivel BAJO. La operación OR se
implementa mediante un circuito logico denominado puerta OR.
INTRODUCCIÓN A LAS FUNCIONES LÓGICAS BÁSICAS
Los tres elementos lógicos básicos AND, OR y NOT se pueden combinar para formar circuitos
lógicos más complejos, que realicen muchas operaciónes útiles y que se empleen en la constracción
de sistemas digitales complejos. Algunas funciones lógicas mas comunes son: Comparación,
aritmética, conversión de códigos, codificación, decodificación, selección de datos, almacenamiento
y recuento.
La función de comparación
La comparación de magnitudes se realiza mediante un circuito lógico denominado comparador, su
propósito es comparar dos cantidades e indicar si son iguales o no.
Funciones aritméticas
SUMA. La adición se realiza mediante un circuito lógico llamado sumador, su función es sumar dos
numeros binarios.
RESTA. La sustracción se realiza también mediante un circuito lógico; Un restador requiere de tres
entradas: los dos números que se van a restar y una entrada de acarreo negativo (borrow). Las dos
salidas corresponden a la diferencia y a la salida de acarreo negativo.
MULTIPLICACIÓN. La multiplicación se lleva a cabo con un circuito lógico llamado multiplicador,
dado que los números siempre se multiplican de dos en dos, serán necesarias dos entradas. La salida del
multiplicador es el producto, puesto que la multiplicación es simplemente una serie de sumas con
desplazamiento de las posiciones de los productos parciales, se puede realizar utilizando un sumador
junto con otros circuitos.
DIVISIÓN. La división puede realizarse mediante una serie de sustracciónes, comparaciones y
desplazamientos, por lo que tambien puede efectuarse usando un sumador junto con otros circuitos. El
divisor precisa dos entradas y las salidas generadas corresponden al cociente y al resto.
Función de conversión de código
Un código es un conjunto de bits ordenados de acuerdo a un modelo único y se emplea para representar
información específica.
2. Función de codificación
La función de codificación se realiza mediante un circuito lógico denominado codificador. Un
codificador convierte la información, como por ejemplo el numero decimal o un carácter alfabético, en
algún tipo de código; por ejemplo, un cierto tipo de codificador convierte los dígitos decimales, de 0 a
9, a un código binario. Un nivel ALTO en la entrada correspondiente a un determinado dígito decimal
genera el código binario apropiado en las lineas de salida.
Función de selección de datos
Existen dos tipos de circuitos dedicados a la selección de datos: el multiplexor y el demultiplexor. El
multiplexor es un circuito lógico que pasa los datos digitales procedentes de varias líneas de entrada a
una única línea de salida según una secuencia de tiempos específica. Funcionalmente, un multiplexor
puede representarse mediante una operación de conmutación electrónica que conecta secuencialmente
cada una de las líneas de entrada a la línea de salida. El demultiplexor es un circuito que pasa los datos
digitales procedentes de una línea de entrada a varias líneas de salida según una determinada secuencia
de tiempo, en esencia el demultiplexor es un multiplexor invertido. La multiplexación y la
demultiplexación se utilizan cuando los datos procedentes de distintas fuentes tienen que transmitirse a
través de una línea hasta una localización distante y deben redistribuirse a varios destinos.
Función de almacenamiento
El almacenamiento es una función necesaria en la mayoría de los sistemas digitales y su proposósito
es el de conservar los datos binarios durante un período de tiempo. Algunos dispositivos de
almacenamiento se utilizan para almacenamiento a corto plazo (temporal) y otros para almacenamiento
a largo plazo (permanete). Un dispositivo de almacenamiento puede “memorizar” un bit o un grupo de
bits y conservar la información tanto tiempo como sea necesario. Los tipos más comunes de
despositivos de almacenamiento son los flip-flops, los registros, las memorias semiconductoras, los
discos magnéticos, las cintas magnéticas y los discos ópticos (CD).
Flip-flops. Un flip-flop es un circuito lógico biestable (dos estados estables) que sólo puede almacenar
un bit cada vez, bien un 1 o un 0. La salida de un flip-flop indica qué bit está almacenado. Una salida a
nivel ALTO indica que se ha almacenado un 1 y una salida a nivel BAJO indica que se ha almacenado
un 0. Los flip-flops se implementan con puertas lógicas.
Registros. Un registro se forma combinando varios flip-flops de maneras que se puedan almacenar
grupos de bits. Por ejemplo, un registro de 8 bits se construye a partir de ocho flip-flops. Los registros
se emplean para desplazarlos de una posición a otra dentro del registro o fuera del mismo a otro
circuito; por tanto, estos dispositivos se conocen como registros de deslplazamiento.
Los dos tipos de registros de desplazamiento son: serie y paralelo, los bits se almacenan en un registro
de desplazamiento serie uno a uno, una buena analogía serían los pasajeros que entran en un autobús
formando una única fila ante la puerta y salen del mismo modo. En un registro paralelo los bits se
almacenan simultáneamente a partir de líneas paralelo. En este caso, una buena analogía serían los
pasajeros que se montan en una montaña rusa, subiendo en los coches paralelo.
Memorias semiconductoras. Las memorias semiconductoras son dispositivos típicamente utilizados
para almacenar grandes cantidades de bits. En un tipo de memoria, denominado memoria de sólo
lectura o ROM (Read Only Memory), los datos se almacenan en forma permanente o semipermanente y
no se pueden cambiar instantáneamente. En las memorias de acceso aleatorio o RAM (Random Access
Memory), los datos binarios se almacenan temporalmente y pueden cambiarse fácilmente.
Memorias magnéticas. Las memorias de disco magnético se usan para el almacenamiento masivo de
3. datos binarios. Ejemplo de estos dispoistivos serían los disquetes utilizados en las computadoras y los
disco duros internos que las mismas. Los discos magneto-ópticos utilizan haces láser para almacenar y
recuperar los datos. Las cintas magnéticas todavía se emplean en aplicaciones de memorias y para la
realización de copias de seguridad de datos procedentes de otros dispositivos de almacenamiento.
Función de recuento
La función de recuento es importante en los sistemas digitales. Hay varios tipos de contadores
digitales, pero su objetivo básico es el de contar sucesos representados por cambios de nivel o por
impulsos. Para realizar su función, el contador debe “recordar” el número actual, con el fin de poder
pasar correctamente al siguiente número de la secuencia, por lo tanto, la capacidad de almacenamiento
es una característica importante de todos los contadores y, generalmente, se emplean los flip-flops para
su implementación.
Circuitos integrados de función fija
Todos los elementos y funciones lógicos que hemos tratado están disponibles como circuitos integrados
(CI). Los sistemas digitales han incorporado circuitos integrados a lo largo de los años debido a su
reducido tamaño, su alta fiabilidad, su bajo coste y su bajo consumo de potencia.
Un circuito integrado (CI) monolítico es un circuito electrónico construido enteramente sobre un
pequeño chip de silicio. Todos los componentes que conforman el circuito: transistores, diodos,
resistencias y condensadores, son parte integrante de un único chip. La lógica para funciones fijas y
lógicas programables son las dos principales categorías en las que se enmarcan los CI digitales. En la
lógica fija, las funciones lógicas son definidas por el fabricante y no es posible modificarlas.
Encapsulado de CI
Los encapsulados de los CI se clasifican según la forma en que se montan sobre las tarjetas de circuito
impreso (PCB, Printed Circuit Board) y pueden ser de inserción o de montaje superficial. Los
encapsulados de inserción disponen de pines (patas) que se introducen en los taladros de la tarjeta de
circuito impreso y se sueldan a las pistas de la cara opuesta. El encapsulado de inserción más típico es
el encapsulado DIP (Dual Inline Package). Otra técnica de encapsulado de CI es la tecnología de
montaje superficial (SMT, Surface-Mount Technology). El montaje superficial representa una
alternativa, que permite ahorrar espacio, al montaje de inserción. En la tecnología SMT, los taladros de
las tarjetas de circuito impreso no son necesarios. Los pines de los encapsulados de montaje superficial
se sueldan directamente a las pistas de una de las caras de la tarjeta, dejando la otra cara libre para
añadir otros circuitos.
Los tres tipos de encapsulado SMT más comunes son: el SOIC (Small-Outline IC), el PLCC (Plastic
Leaded Chip Carrier) y el LCCC (Leadless Ceramic Chip Carrier). Estos tipos de encapsulados están
disponibles en diferentes tamaños dependiendo del número de pines (cuanto más complejos son los
circuitos, más pines son necesarios). Otras variedades de los encapsulados SMT son: el SSOP (Shrink
Small-Outline Package), el TSSOP (Thin Shrink Small-Outline Package) y el TVSOP (Thin Very
Small-Outline Package).
Numeración de los pines
Todos los encapsulados de CI utilizan un formato estándar para enumerar los pines (terminales). En la
parte superior del encapsulado, se indica el pin1 mediante identificador que puede ser un pequeño
punto, una muesca o un borde biseleado. Además, con la muesca orientada hacia arriba, el pin1 siempre
es el pin situado más a la izquierda, como se indica. Comenzando por el pin1, el número de pin
aumenta a medida que se desciende y se continúa por el lado opuesto en sentido ascendente. El número
mayor de pin es siempre el situado a la derecha de la muesca o el que está enfrete del punto.
4. Los encapsulados PLCC y LCCC tienen terminales en sus cuatro costados. El pin1 se indica mediante
un punto u otra marca y se sitúa en el centro de uno cualquiera de los lados del chip. La numeración de
los terminales asciende en sentido contrario a las agujas del reloj mirando la parte superior del
encapsulado. El pin de mayor numeración está siempre a la derecha del pin1.
Clasificación de los CI de función fija según su complejidad
Los circuitos integrados digitales de función fija se clasifican según se complejidad. A continuación se
enumeran de menor a mayor complejidad. La clasificación por complejidad establecidad aquí para SSI,
MSI, LSI, VLSI y ULSI está generalmente aceptada, aunque las definiciones pueden varias.
• Integración a pequeña escala (SSI, Small-Scale Integration). Describe los CI de función fija
que contienen hasta diez puertas equivalentes en un mismo chip, e incluyen puertas básicas y
flip-flops.
• Integración a media escala (MSI, Medium-Scale Integration). Describe los CI que contienen
entre 10 y 100 puertas equivalentes en un mismo chip. Incluyen funciónes lógicas como:
codificadores, decodidicadores, contadores, registros, multiplexores, circuitos aritméticos,
memorias pequeñas y otras.
• Integración a gran escala (LSI, Large-Scale Integration). Es una categoría de los CI que
incluyen entre 100 y 10,000 puertas equivalentes por chip, incluyendo memorias.
• Integración de muy gran escala (VLSI, Very Large-Scale Integration). Describe los CI con un
número de puertas equivalentes desde 10,000 hasta 100,000 por chip.
• Integración a ultra escala (ULSI, Ultra Large-Scale Integration). Describe memorias de gran
capacidad, grandes microprocesadores y computadoras en un solo chip. Esta categoría designa
los CI que contienen más de 100,000 puertas equivalentes por chip.
Tecnologías de circuitos integrados
Los tipos de transistores con los que se implementan los circuitos integrados pueden ser: transistores
bipolares o MOSFET (Metal-Oxide Semiconductor Field-Effect Transistor, transistor de efecto de
campo por unión metal-óxido-semiconductor). Una tecnología de circuitos que utiliza MOSFET es la
tecnología CMOS (Complementary MOS, MOS complementario). Un tipo de tecnología de CI de
función fija que utiliza los transistores bipolares es la TTL (Transistor-Transistor Logic, lógica
transistor-transistor). BiCMOS utiliza una combinación de las tecnologías CMOS y TTL.
Todas las puertas y otras funciones se pueden emplementar con cualquier tipo de tecnología de
circuitos. Generalmente, los circuitos SSI y MSI están disponibles en CMOS y en TTL. LSI, VLSI y
ULSI suelen implementarse con tecnología CMOS o NMOS, porque requieren una menor superficie
de chip y consumen menos potencia.
Precauciones para la manipulación de dispositivos CMOS. Debido a su estructura, los dispositivos
CMOS son muy sensibles a las cargas estáticas y pueden resultar dañados por las descargas
electrostáticas si no se manipulan correctamente. Al trabajar con dispositivos CMOS deberán tomarse
las siguientes precauciones:
• Los dispositivos CMOS deben ser suministrados en espuma conductiva.
• Todos los instrumentos y bancos metálicos utilizados en las pruebas deberán conectarse a una
toma de tierra.
• Las herramientas de trabajo deben conectarse a tierras a través de un cable y resistencias en
serie de alto valor.
• No debe retirarse un dispositivo CMOS (o cualquier dispositivo) de un circuito mientras que la
alimentación continua esté conectada.
5. • No deben conectarse tensiones de señal o corriente a un dispositivo CMOS cuando la
alimentación continua esté apagada.
Introducción a la lógica programable
La lógica programable requiere tanto de hardware como de software. Los dispositivos lógicos
programables pueden programarse para que el fabricante o el usuario puedan llevar a cabo funciones
lógicas especificas. Una ventaja de la lógica programable frente a la lógica fija es que los dispositivos
utilizan menos espacio de la tarjeta de circuito impreso para una cantidad equivalente de lógica, otra
ventaja es que, con la lógica programable, los diseños se pueden modificar fácilmente sin tener que
recablear o reemplazar componentes. Además, generalmente un diseño lógico se puede implementar
más rápidamente y con menos coste utilizando circuitos programables en lugar de los CI de función
fija.
Tipos de dispositivos lógicos programables
Existen muchos tipos de dispositivos lógicos programables, desde pequeños dispositivos que pueden
reemplazar a algunos de los dispositivos de función fija hasta complejos dispositivos de alta desidad
que pueden reemplazar a miles de despositivos de función fija. Las dos principales categorías de los
dispositivos lógicos programables de usuario son: los PLD (Programmable Logic Device, dispositivo
lógico programable) y las EPGA (Field Programmable Gate Array, matrices de puertas programable
por campo). Los PLD pueden ser SPLD (Simple PLD, PLD simple) o CPLD (Complex PLD, PLD
complejo).
• SPLD (Simple Programmable Logic Device). El SPLD se corresponde con el dispositivo lógico
programable (PLD) original y todavía está disponible para aplicaciones de pequeña escala. Un
SLPD puede reemplazar a diez CI de función fija y sus interconexiones, dependiendo del tipo
de funciones y del SPLD específico. La mayoria de los SPLD pertenecen a una de dos posibles
categorías: PAL y GAL. Una PAL (Programmable Array Logic, matriz lógica programable) es
un dispositivo que se puede programar una vez. Consta de una matriz programable de puerta
AND y una matriz fija de puertas OR.
Una GAL (Generic Array Logic, matriz lógica genérica), es un dispositivo que es básicamente
una PAL que puede reprogramarse muchas veces. Consta de una matriz reprogramable de
puerta AND y una matriz fija de puerta OR con salidas programables.
• CPLD (Complex Programmable Logic Device). A medida que la tecnología progresaba y que la
cantidad de circuitería que se podía meter en un chip (desidad del chip) aumentaba, los
fabricantes fueron capaces de incluir más de un SPLD en un mismo chip, lo que dio lugar al
nacimiento del CPLD. En esencia, un CPLD es un dispositivo que contiene varios SPLD y que
se puede reemplazar a muchos CI de función fija. Dependiendo del CPLD específico, puede
contener desde dos hasta sesenta y cuatro bloques LAB (Logic Array Block, bloque de matriz
lógica). Cada matriz lógica es aproximadamente equivalente a un SPLD. PIA (Programmable
Interconnection Array, matriz de interconexión programable).
6. • No deben conectarse tensiones de señal o corriente a un dispositivo CMOS cuando la
alimentación continua esté apagada.
Introducción a la lógica programable
La lógica programable requiere tanto de hardware como de software. Los dispositivos lógicos
programables pueden programarse para que el fabricante o el usuario puedan llevar a cabo funciones
lógicas especificas. Una ventaja de la lógica programable frente a la lógica fija es que los dispositivos
utilizan menos espacio de la tarjeta de circuito impreso para una cantidad equivalente de lógica, otra
ventaja es que, con la lógica programable, los diseños se pueden modificar fácilmente sin tener que
recablear o reemplazar componentes. Además, generalmente un diseño lógico se puede implementar
más rápidamente y con menos coste utilizando circuitos programables en lugar de los CI de función
fija.
Tipos de dispositivos lógicos programables
Existen muchos tipos de dispositivos lógicos programables, desde pequeños dispositivos que pueden
reemplazar a algunos de los dispositivos de función fija hasta complejos dispositivos de alta desidad
que pueden reemplazar a miles de despositivos de función fija. Las dos principales categorías de los
dispositivos lógicos programables de usuario son: los PLD (Programmable Logic Device, dispositivo
lógico programable) y las EPGA (Field Programmable Gate Array, matrices de puertas programable
por campo). Los PLD pueden ser SPLD (Simple PLD, PLD simple) o CPLD (Complex PLD, PLD
complejo).
• SPLD (Simple Programmable Logic Device). El SPLD se corresponde con el dispositivo lógico
programable (PLD) original y todavía está disponible para aplicaciones de pequeña escala. Un
SLPD puede reemplazar a diez CI de función fija y sus interconexiones, dependiendo del tipo
de funciones y del SPLD específico. La mayoria de los SPLD pertenecen a una de dos posibles
categorías: PAL y GAL. Una PAL (Programmable Array Logic, matriz lógica programable) es
un dispositivo que se puede programar una vez. Consta de una matriz programable de puerta
AND y una matriz fija de puertas OR.
Una GAL (Generic Array Logic, matriz lógica genérica), es un dispositivo que es básicamente
una PAL que puede reprogramarse muchas veces. Consta de una matriz reprogramable de
puerta AND y una matriz fija de puerta OR con salidas programables.
• CPLD (Complex Programmable Logic Device). A medida que la tecnología progresaba y que la
cantidad de circuitería que se podía meter en un chip (desidad del chip) aumentaba, los
fabricantes fueron capaces de incluir más de un SPLD en un mismo chip, lo que dio lugar al
nacimiento del CPLD. En esencia, un CPLD es un dispositivo que contiene varios SPLD y que
se puede reemplazar a muchos CI de función fija. Dependiendo del CPLD específico, puede
contener desde dos hasta sesenta y cuatro bloques LAB (Logic Array Block, bloque de matriz
lógica). Cada matriz lógica es aproximadamente equivalente a un SPLD. PIA (Programmable
Interconnection Array, matriz de interconexión programable).