14-Registros y Contadores

12
Sistemas Digitales ©Mario Medina C. 1 Registros y Contadores Mario Medina C. [email protected] Registros z Grupos de flip-flops con reloj común z Almacenamiento de datos z Desplazamiento de datos z Construcción de contadores simples z Como cada FF almacena 1 bit de información, se requieren n FFs para almacenar n datos al mismo tiempo Registro de 4 bits usando flip- flops D z Señal CLR fija flip-flops a 0 asincrónicamente z Señal activa baja z Señal Load se combina con reloj Clk para cargar datos de inicialización Registro de 4 bits con flip- flops D z No es conveniente combinar señal de reloj con otras señales z Desfase entre registro y otros circuitos z Agregar al FF entrada de habilitación CE z Si señal Load es 0, reloj está deshabilitado Registros y buses z Registro de 4 bits se representa usando notación de bus z Entrada D tiene 4 bits de ancho z Salida Q tiene 4 bits de ancho z Señal ClrN activa baja z Señal Load activa alta Registros con habilitación de salidas z Registros pueden tener salidas de 3 estados z Facilita conexiones eliminando MUXes z Requiere entrada para habilitar salidas z Si En es 0, los buffers están activados

Transcript of 14-Registros y Contadores

Sistemas Digitales

©Mario Medina C. 1

Registros y Contadores

Mario Medina [email protected]

RegistrosGrupos de flip-flops con reloj común

Almacenamiento de datosDesplazamiento de datosConstrucción de contadores simples

Como cada FF almacena 1 bit de información, se requieren n FFs para almacenar n datos al mismo tiempo

Registro de 4 bits usando flip-flops D

Señal CLR fija flip-flops a 0 asincrónicamenteSeñal activa baja

Señal Load se combina con reloj Clk paracargar datos de inicialización

Registro de 4 bits con flip-flops D

No es conveniente combinar señal de relojcon otras señales

Desfase entre registro y otros circuitosAgregar al FF entrada de habilitación CE

Si señal Load es 0, reloj está deshabilitado

Registros y buses

Registro de 4 bits se representa usandonotación de bus

Entrada D tiene 4 bits de anchoSalida Q tiene 4 bits de anchoSeñal ClrN activa bajaSeñal Load activa alta

Registros con habilitación de salidas

Registros pueden tener salidas de 3 estadosFacilita conexiones eliminando MUXesRequiere entrada para habilitar salidas

Si En es 0, los buffers están activados

Sistemas Digitales

©Mario Medina C. 2

Conectando registros con salidas de 3 estados Bus de 3 estados

Decodificador selecciona el registro queescribe en el bus

Registro acumulador

Usado en unidades aritmético-lógicas de losprocesadores

Acumula resultadosX + Acum →Acum

Almacena resultados intermedios de operaciones más complejas

Sumador paralelo con registroacumulador

Registro de n flip-flops DTodos ellos usan el mismo reloj

N sumadores completos de 1 bit

Celda sumadora con multiplexor

Flip-flop DSumador completo (FA)Multiplexor con señal Ld permite definir valor inicial para el flip-flopSeñal Ad activa flip-flop para almacenarresultado de la suma

Registros de desplazamiento

Registro que almacena datos binarios y puede desplazarlos a la izquierda o a la derecha

Desplazamiento lógicoDesplazamiento aritméticoDesplazamiento cíclico

Sistemas Digitales

©Mario Medina C. 3

Tipos de desplazamiento Registro de desplazamiento

Contenido del registro se desplaza a la derecha con cada ciclo de reloj

Registro recibe un nuevo bit cada ciclo en la entrada Serial In (SI) y pierde un bit cada ciclopor la salida Serial Out (SI)

Registro de desplazamientoSea un registro de desplazamiento de 4 bits

Registro tiene valor inicial0101Entrada es secuencia 1101Secuencia de estados del registro es 0101, 1010, 1101, 0110, 1011

Registro de desplazamientocon entradas y salidas seriales

Los datos iniciales del registro debencargarse por la entrada Serial In

Demora 8 ciclos en preparar el registroDatos sólo pueden leerse de salida Serial Out

Diagrama de tiempo registrode desplazamiento serial

Flip-flops activados por canto de subidaEntradas se reflejan en la salida en 8 ciclos

Registro de desplazamientocon entradas y salidas paralelas

Implementado con flip-flops D y MUXesSi Sh es 1, desplaza a la derechaSi L es 1, carga entradas D0-D3 en el flip-flopSi ShL es 00, no hay cambios

Sistemas Digitales

©Mario Medina C. 4

Diagrama de tiempoRegistro de desplazamientocon entradas y salidas paralelas

Q1Q2Q3SIX1

D0D1D2D310

Q0Q1Q2Q300

Q+0Q+

1Q+2Q+

3LSh

Próx. EstadoEntradas

Registro 74HC164entrada serie y salida paralela

Registro 74HC164entrada serie y salida paralela

Registro 74HC165entrada paralela y salida serie

Registro 74HC165entrada paralela y salida serie

Entrada SH/LD’en nivel bajo activa puertas NAND para carga paralelaEntrada CLK INH deshabilita relojEntrada SER usada para entrada de datos

Sistemas Digitales

©Mario Medina C. 5

Registro 74HC195Entrada y salida paralelas

Registro 74HC195Entrada y salida paralelas

Contadores

Contadores síncronosOperación sincronizada de los flip-flops Señal de reloj comúnTipo más común de contador

Contadores de propagaciónCambio de estado de un flip-flop dispara al siguiente flip-flop del contadorNo serán cubiertos en este curso

Contador de Johnson

Registro de desplazamiento con salidacomplementada conectada a la entrada

Comportamiento descrito por diagrama de estados

Tabla de excitaciones flip-flops

X0X11X0XJK

X001100XSR

0110T

1010D

Q+ = 1Q+ = 0Q+ = 1Q+ = 0Entrada

Q = 1Q = 0

Contador binario de 8 estadoscon flip-flops T

Tabla muestra estado actual y entradanecesaria para flip-flop T

Sistemas Digitales

©Mario Medina C. 6

Contador binario de 8 estadoscon flip-flops T

Mapas de Karnaugh para TB y TC (TA es 1)

Contador binario de 8 estadoscon flip-flops TTA = 1, TB = A, TC = AB

Contador binario de 8 estadoscon flip-flops D

Rediseñar el contadorbinario usando flip-flops D

Entrada a flip-flops D esigual al estado deseadoDA = A’DB = A⊕BDC = C⊕BA

Contador binario de 8 estadoscon flip-flops D

Rediseñar el contador binario usando flip-flops D

Contador binario de 8 estadoscon flip-flops D Contador Gray de 3 bits

Diagrama de estados para un contador en código Gray de 3 bitsDiseñar el contador con flip-flops J-K

Sistemas Digitales

©Mario Medina C. 7

Tabla de transiciones y del flip-flop J-K

100101

000100

101111

111110

110010

010011

011001

001000

Estado siguienteEstado actual

1

1

0

0

Q

1

0

1

0

Q+

1X

0X

X1

X0

KJ

Mapas de excitación

Circuito a implementarEjemplo: contador de 5 estados con flip-flops T

Diagrama de estados Tabla de estados

C B A C+ B+ A+

0 0 0 1 0 0 0 0 1 - - - 0 1 0 0 1 1 0 1 1 0 0 0 1 0 0 1 1 1 1 0 1 - - - 1 1 0 - - - 1 1 1 0 1 0

Ejemplo: contador de 5 estados con flip-flops T

Ejemplo: contador de 5 estados con flip-flops T

Sistemas Digitales

©Mario Medina C. 8

Estados no definidosContador tiene sólo 5 estados

Qué pasa con los otros estados?

Estados superfluos deben transitar a algún otro estado, pero a cuál?

Proceso de diseño especificatransicionesSi estado inicial es CBA = 001, se puede determinar que estadosiguiente es CBA=111

Evolución de los estados no definidos

Procedimiento de diseñocontadores con flip-flops T

Construir mapa y/o tabla de estadosDibujar mapas de transiciónConstruir mapas para entrada T de cada F/F usando ecuación del flip-flop TEncontrar las ecuaciones de las entradas TImplementar el circuito

Ejemplo: mismo contador de 5 estados, pero con flip-flops D

Flip-flops D: mapa de entrada D es idénticoal mapa del estado siguienteEcuaciones de excitación de los flip-flops DDC = B’DB = C + BA’DA = A’(C + B)Tarea: identificar las transiciones no definidas en

el diagrama de estados

Ejemplo: mismo contador de 5 estados, pero con flip-flops D

Ejemplo: mismo contador de 5 estados, pero con flip-flops S-R

Necesario determinar ecuacionespara entradas S y R

De acuerdo a tabla del flip-flop S-R

Sistemas Digitales

©Mario Medina C. 9

Ejemplo: mismo contador de 5 estados, pero con flip-flops S-R

Tabla de excitación de los flip-flops A, B y C

C B A C+ B+ A+ SC RC SB RB SA RA0 0 0 1 0 0 1 0 0 X 0 X 0 0 1 – – – X X X X X X 0 1 0 0 1 1 0 X X 0 1 0 0 1 1 0 0 0 0 X 0 1 0 1 1 0 0 1 1 1 X 0 1 0 1 0 1 0 1 – – – X X X X X X 1 1 0 – – – X X X X X X 1 1 1 0 1 0 0 1 X 0 0 1

Ejemplo: mismo contador de 5 estados, pero con flip-flops S-R

Ejemplo: mismo contador de 5 estados, pero con flip-flops S-R

Ejemplo: mismo contador de 5 estados, pero con flip-flops S-R

Analizar comportamiento para estados no definidos

Si CBA = 001SC, RC = B’, A = 1, 1 (Estado inestable flip-flop S-R)SB, RB = C, C’A = 1, 0SA, RA = A’(C + B), A = 0, 1

Cómo evitar problemas?Revisar diseño realizado en detalle Definir a priori comportamiento para CBA=001Usar otros flip-flops

Ejemplo: mismo contador de 5 estados, pero con flip-flops J-K

Necesario determinar ecuacionespara entradas J y K

De acuerdo a tabla del flip-flop S-R

Ejemplo: mismo contador de 5 estados, pero con flip-flops J-K

Tabla de excitación de los flip-flops A, B y C

Sistemas Digitales

©Mario Medina C. 10

Ejemplo: mismo contador de 5 estados, pero con flip-flops J-K

Ejemplo: mismo contador de 5 estados, pero con flip-flops J-K

Contador binario irregularDiagrama de estados para un contador binario irregularDiseñar el contador con flip-flops J-KTiene 4 estados pero lo haremos con 3 flip-flops

Tabla de transiciones

Estados no válidos (0, 3, 4 y 6) pueden ser estados indiferentes en el diseño

001111

111101

101010

010001

Estado siguienteEstado actual

1

1

0

0

Q

1

0

1

0

Q+

1X

0X

X1

X0

KJ

Mapas de excitación Circuito a implementarAnálisis del circuito muestra que un estado no válido siempre transita a un estado válido

0→3 →4 →76 →1

Sistemas Digitales

©Mario Medina C. 11

Contador ascendente/descendente

Diagrama de estados para un contador ascendente/descendenteControlado por señal UP/DOWN’

Tabla de transiciones

101

111

110

010

011

001

000

100

Estado siguienteUP/DOWN’=0

100101

000100

101111

111110

110010

010011

011001

001000

Estado siguienteUP/DOWN’=1

Estado actual

Mapas de excitación Circuito a implementar

Contador bidireccional de 8 estados con flip-flops D

Entrada Up/Down controladirección de la cuenta

U = 1, contador ascendenteD = 1, contador descendenteU = D = 0, cuenta no cambiaU = D = 1, no puede ocurrir

Ecuaciones de F/Fs DDA = A⊕ (U + D)DB = B⊕ (UA + DA’)DC = C⊕ (UBA + DB’A’)

CBA C+B+A+ U D

000 001 111001 010 000010 011 001011 100 010100 101 011101 110 100110 111 101111 000 110

Contador bidireccional de 8 estados con flip-flops D

Diagrama de estadosResume posibles estados de los flip-flops

Estados aparecen en losnodosArcos entre nodosrepresentan transicionesentre estadosRótulos de los arcos indicanentrada asociada a transición

Sistemas Digitales

©Mario Medina C. 12

Contador bidireccional de 8 estados con flip-flops D

Contador bidireccional de 8 estados recargable

Contador incluye señales de controlLd (Load) carga la entrada en el contadorCt (Count) activa contadorClrN (Clear) limpia contador (activa baja)

Si Ld = Ct = 0, contador mantiene estadoSi Ld = 1, se cargan los datos con transición 0→1Si Ct = 1, contador avanza con transición 0→1Si Ld = Ct = 1, recarga prevalece sobre la cuenta

Contador bidireccional de 8 estados recargable

Ecuaciones del estado siguienteDA = (Ld’·A + Ld·DAin)⊕Ld’·CtDB = (Ld’·B + Ld·DAin)⊕Ld’·Ct·ADC = (Ld’·C + Ld·DAin)⊕Ld’·Ct·A·B

Contador bidireccional de 8 estados recargable

Implementación con AND, XOR, MUXes