Está en la página 1de 51

CONTADORES, REGISTROS,

MEMORIAS Y PLD’s

Sistemas Digitales 1
Los contadores son circuitos secuenciales capaces de
recorrer una secuencia previamente especificada de
estados. Reciben un tren de impulsos y responden con
una sucesión de estados correspondientes al equivalente
en binario del numero de impulsos recibidos desde que se
inicia el ciclo.

Tipos de contadores:
1. Asíncronos: Los flip flops no cambian de estado al
mismo tiempo, puesto que no comparten el mismo
pulso de reloj.
2. Síncronos: Todos los flip flops reciben el mismo pulso
de reloj, y por tanto cambian en el mismo instante.

Sistemas Digitales 2
Contadores Asíncronos: Compuestos por flip flops JK,
con J = K = 1 (configuración T) de modo que el reloj
entra al primer F/F, y el reloj del resto de F/F se toma
de las salidas Q del F/F anterior u otro.

Inconvenientes:
1. La frecuencia máxima de trabajo depende de la suma
de los retardos que introducen los biestables que lo
componen.
2. Los estados estables no se alcanzan siempre al mismo
tiempo.

Sistemas Digitales 3
Sistemas Digitales 4
Sistemas Digitales 5
Contador asíncrono ascendente BCD

Sistemas Digitales 6
Contadores Síncronos
En los contadores síncronos a diferencia de los
contadores de propagación o asincrónicos, la señal de
reloj se aplica simultáneamente a todos los flip-flops.
Estos contadores por lo general tienen mas circuitería
que los contadores de propagación y están conformados
por flip-flops J-K.

Sistemas Digitales 7
Contador Ascendente BCD síncrono

Sistemas Digitales 8
Registros: Son grupos de flip flops con dos funciones
básicas: el almacenamiento y el movimiento de datos.

Tipos:

Sistemas Digitales 9
Sistemas Digitales 10
Registro entrada serie-salida serie:

Sistemas Digitales 11
Registro entrada serie-salida paralelo:

Sistemas Digitales 12
Registro entrada paralelo- salida serie:

Sistemas Digitales 13
Registro entrada paralelo- salida paralelo:

Sistemas Digitales 14
Registro de desplazamiento bidireccional:

Sistemas Digitales 15
Sistemas Digitales 16
Usos principales de los Registros:

• Operaciones aritméticas.
• Operaciones lógicas.
• Conversión serie-paralelo.
• Generador de secuencias.
• Línea de retardo.
• Reconocedor de secuencias.
• Generador de códigos de chequeo.
• Generador de secuencias binarias seudoaleatorias
(PRBS).

Sistemas Digitales 17
Contador de anillo

Sistemas Digitales 18
Contador conmutado en cola o de Johnson

Sistemas Digitales 19
Memorias: Aspectos generales:
Las unidades de memoria son módulos conformados por
un conjunto de cerrojos o condensadores agrupados de
tal forma que almacenan varias palabras binarias de n
bits. Cada una de ellas tiene la capacidad de almacenar
un bit de información (1 o 0), y se conocen con el
nombre de celdas de memoria. Las celdas o bits de
memoria se ubican mediante la fila y la columna en la
que se encuentra.

Sistemas Digitales 20
Las palabras binarias se identifican con una dirección.
El parámetro básico de una memoria es su capacidad, la
cual corresponde al total de unidades que puede
almacenar.
El tiempo de acceso es otro parámetro importante en las
memorias. Este corresponde al tiempo que tarda la
memoria en acceder a la información almacenada en una
dirección.

Sistemas Digitales 21
Sistemas Digitales 22
Operaciones básicas de una Memoria
La función básica de las memorias es almacenar
información. Sin embargo las memorias tienen la función
específica de escribir y leer los datos en su interior.
En los computadores modernos las memorias actúan
directamente con la CPU a través de canales de
comunicación llamados buses.

Sistemas Digitales 23
Las operaciones básicas de una memoria consisten en
leer y almacenar información mediante el uso del bus de
datos y direcciones. Estas operaciones ocurren en un
orden lógico, el cual se indica a continuación:
• Apuntar a la dirección de memoria que se desea leer o
escribir mediante el uso del bus de direcciones
• Selección del tipo de operación: Lectura o escritura.
• Cargar los datos a almacenar (en el caso de una
operación de escritura)
• Retener los datos de la memoria (en el caso de una
operación de lectura)
• Habilitar o deshabilitar la memoria para una nueva
operación.

Sistemas Digitales 24
Operación de escritura:
 Se coloca en el bus de direcciones la posición de
memoria donde se quiere escribir.
 Se coloca el dato en el bus de datos.
 Se coloca la orden de escritura en el bus de control.

Sistemas Digitales 25
Operación de lectura:
 Se coloca en el bus de direcciones la posición de
memoria que se quiere leer.
 Se aplica la orden de lectura a través del bus de
control.
 En el bus de datos se dispone de la información
almacenada.

Sistemas Digitales 26
Sistemas Digitales 27
Sistemas Digitales 28
Translation Lookaside Buffer (TLB): Es una memoria
caché administrada por la CPU, que contiene partes de
la tabla de paginación, es decir, relaciones entre
direcciones virtuales y reales. Posee un número fijo de
entradas y se utiliza para obtener la traducción rápida
de direcciones.
Caché de 1er nivel (L1): Esta caché está integrada en el
núcleo del procesador, trabajando a la misma velocidad
que este.
Caché de 2do nivel (L2): Integrada también en el
procesador, aunque no directamente en el núcleo de este,
tiene las mismas ventajas que la caché L1, aunque es algo
más lenta que esta. La caché L2 suele ser mayor que la
caché L1, pudiendo llegar a superar los 2MB.

Sistemas Digitales 29
Clasificación de las memorias RAM:

1. DRAM (RAM dinámica):


Elemento de almacenamiento es un capacitor.
Necesita refresco.
Consume potencia (corrientes de fuga).
No muy rápida (tiempos de acceso ~ 50-100ns).
Muy densa → muy barata.
Muchos tipos (EDO, SDRAM, DDR, RDRAM).

2. SRAM (RAM estática):


Elemento de almacenamiento es un flip flop.
No necesita refresco.
Muy rápidas (tiempos de acceso ~ 10ns).
Poco densa → muy cara.

Sistemas Digitales 30
Sistemas Digitales 31
Sistemas Digitales 32
Sistemas Digitales 33
Sistemas Digitales 34
Sistemas Digitales 35
Sistemas Digitales 36
Sistemas Digitales 37
Sistemas Digitales 38
Técnicas de Expansión de Memorias:

1. Expansión de datos.
2. Expansión de direcciones.
3. Mapeo de memoria. El mapeo y decodificación es el
índice de localidades que indican en que rangos de
dirección se encuentra cada dispositivo externo del
procesador y las funciones que contiene. Esto se logra
mediante la combinación de las líneas de control,
selección y dirección, para generar una única señal de
habilitación para el dispositivo deseado.

Sistemas Digitales 39
Características de los PLD’s:

1. Circuito integrado digital, donde la función Booleana


puede ser determinada por el usuario.
2. Los PLD’s pueden reemplazar circuitos integrados de
propósito especifico en el diseño de circuitos
digitales.
3. Un solo PLD es funcionalmente equivalente a
dispositivos que tienen desde 5 hasta 10 000 puertas
lógicas.
4. Básicamente en los PLD’s se pueden implantar
funciones Booleanas usando SOP o POS, mediante una
estructura AND-OR.
5. Contienen una arquitectura general predefinida y se
puede reprogramar por el usuario.

Sistemas Digitales 40
6. Algunos PLD’s contienen flip flops y latches para ser
usados como elementos de almacenamiento para
entradas y salidas.
7. Los pines pueden ser usados como entradas, salidas o
I/O con habilitación de tres estados.

Ventajas de los PLD’s:

1. Reducen la cantidad de circuitos integrados.


2. Reducen el espacio en las tarjetas electrónicas.
3. Menor consumo de potencia.
4. Tiempo de diseño corto.
5. Se pueden realizar cambios del programa
(mantenimiento).
6. Arquitectura compacta.

Sistemas Digitales 41
PLD’s no reprogramables

En este tipo de PLD's es posible programar el arreglo de


compuertas sólo una vez, de tal manera que no es posible
hacer modificaciones posteriores al estado de los
fusibles, operando con la lógica definida por las
conexiones internas programadas. Estos dispositivos son
conocidos por la sigla PAL (Programmable Array Logic).
En la figura se muestran diversos PLD’s. El PAL 16R6 es
un dispositivo que tiene 20 pines, los cuales se
distribuyen de la siguiente forma:
• 8 entradas principales (pines 2 a 9).
• 8 salidas (pines 12 a 19).
• 1 entrada de reloj (pin 1).
• 1 entrada de habilitación (pin 11).
• 2 entradas de alimentación (pines 10 y 20).
Sistemas Digitales 42
Sistemas Digitales 43
PLD’s reprogramables

Estos PLDs utilizan tecnología EEPROM (Electrical


Erasable Programmable ROM) y se conocen con el nombre
de GALs (Generic Array Logic). Estos dispositivos a
diferencia de los anteriores permiten modificar la
disposición interna de las conexiones de las compuertas
después de haber sido programados.
Por ejemplo el GAL 16V8 tiene 20 pines distribuidos de la
siguiente forma:
• 8 entradas dedicadas (pines 2 a 9).
• 8 salidas de registro programables (pines 12 a 19).
• 1 entrada de reloj (pin 1).
• 1 entrada de habilitación (pin 11).
• 2 entradas de alimentación (pines 10 y 20).

Sistemas Digitales 44
Las salidas se pueden programar como salida secuencial o
como salida combinacional dependiendo del estado de los
fusibles de selección ubicados en la macro celda lógica de
cada salida. La macro celda corresponde al conjunto de
elementos agrupados en cada salida, incluyendo la
compuerta OR).
Estas celdas son conocidas como OLMCs de la sigla en
inglés Output Logic MacroCell y en la figura se observa
la estructura interna de una de estas celdas en sus dos
configuraciones disponibles (salida secuencial y salida
combinacional).

Sistemas Digitales 45
Macro celdas para el GAL 16V8

Sistemas Digitales 46
PAL 16R8

Sistemas Digitales 47
Una salida de la PAL 16R8

Sistemas Digitales 48
CPLD y FPGA:

1. CPLD (Complex programmable logic device), es una


arreglo de bloques de PLDs y una red de
interconexiones programables. Algunas CPLDs
comerciales tiene algunos cientos de bloques de PLDs.

2. FPGA (Field programmable gate array), son usados


para circuitos mayores, en vez de usar PALs, las FPGAs
usan como bloque básico de construcción, un generador
lógico de propósito general (lookup table), con
multiplexores y flip flops.

Sistemas Digitales 49
Sistemas Digitales 50
En la actualidad la mayoría de los diseños digitales ya no usan circuitos SSI
y MSI, sino que usan lógica programable, eligiéndose una CPLD si el diseño
no es muy complejo o una FPGA en caso contrario. No obstante, cuando la
aplicación no necesita trabajar con señales de alta velocidad, puede ser más
interesante utilizar un microcontrolador para implementar una función
lógica. Las ventajas de esta metodología de diseño son muchas:
 Flexibilidad: al ser los elementos reconfigurables, cualquier cambio en el
diseño no necesita cambiar el circuito físico, sino simplemente
reconfigurar los dispositivos programables.
 Menor espacio: al poder integrar millones de puertas en un solo chip el
espacio ocupado en la placa del circuito impreso es mucho menor.
 Mayor velocidad: al estar todos los componentes situados en el mismo
chip, las señales pueden viajar más rápido entre ellos.
 Menor costo: al reducirse el tamaño de la placa del circuito impreso, esta
será más económica. Además, un solo chip es más económico que los chips
SSI y MSI que sustituye y consume menos energía.

Sistemas Digitales 51

También podría gustarte