Disciplina Electrónica Digital Departamento Docente del Centro de Investigaciones en Microelectrónica (CIME) Universidad Tecnológica de la Habana (UTH) José Antonio Echeverría Asignatura: Electrónica Digital 1 Curso 2024 Tema 3: Bloques lógicos funcionales Bloques lógicos funcionales secuenciales sincrónicos ✓ Circuitos Secuenciales Sincrónicos ✓ Bloques funcionales secuenciales sincrónicos • Registros • Registros de desplazamiento • Contadores Bibliografía Libro de Texto: Wakerly, J.F., “Digital Design, Principles and Practices”. 2006. Cap 8. Libro Complementario: Pong, P.C., RTL hardware design using VHDL Coding for Efficiency, Portability, and Scalability. 2006, New Jersey: John Wiley & Sons, Inc.. Cap. 8. Disciplina Electrónica Digital Departamento Docente del Centro de Investigaciones en Microelectrónica (CIME) Universidad Tecnológica de la Habana (UTH) José Antonio Echeverría Asignatura: Electrónica Digital 1 Curso 2024 ✓ El objetivo de este material es estudiar los bloques funcionales secuenciales sincrónicos. Para ello es imprescindible analizar el modelo básico de los circuitos secuenciales sincrónicos. ✓ Los bloques funcionales secuenciales sincrónicos se analizarán teniendo en cuenta su tabla funcional y estructura interna. Se utilizarán en el diseño de circuitos secuenciales sincrónicos. Bloques lógicos funcionales secuenciales sincrónicos ✓ Los bloques lógicos funcionales secuenciales sincrónicos son circuitos secuenciales sincrónicos que tienen un comportamiento predefinido. ¿Qué es un circuito secuencial sincrónico? Circuitos Secuenciales Sincrónicos (definiciones de los libros de texto) ✓ Según L.T. (Wakerly) pág. 679 “… synchronous systems - that is, systems in which all flip-flops are clocked by the same common clock signal…” Disciplina Electrónica Digital CIME - UTH Circuitos Secuenciales Sincrónicos (CSS) ✓ Son circuitos secuenciales. Sus salidas dependen de los valores actuales de las entradas y de valores anteriores. ✓ Tienen biestables sincrónicos (flip-flop) como unidad básica de almacenamiento. ✓ Todos los flip-flops se conectan a la misma señal de reloj. ✓ Tienen entradas que se atienden sincrónicamente (con el frente activo de la señal de reloj). ✓ Tienen entradas que se atienden asincrónicamente (sin esperar el frente activo de la señal de reloj). ✓ Las salidas se clasifican como tipo Moore o tipo Mealy en dependencia de sus comportamientos, lo que está determinado por la estructura interna del CSS. Disciplina Electrónica Digital CIME - UTH Circuitos Secuenciales Sincrónicos (modelo básico) ✓ Consultar Libro complementario Pong (fig. 8.5). ✓ La estructura de un circuito secuencial sincrónico se puede modelar con tres bloques: Modelo básico de CSS • • • ES CLC del próximo estado Memoria de estados CLC de salida EP ✓ La memoria de estado es una colección de flip-flops tipo D con una señal de reloj común. EP: Estado presente ES: Estado siguiente ✓ En el tema 1 de la asignatura se estudió el análisis y diseño de CLC, así como los flip-flops. Ahora corresponde integrar estos contenidos para estudiar los circuitos secuenciales sincrónicos. Disciplina Electrónica Digital CIME - UTH Bloque lógicos funcionales secuenciales sincrónicos Los bloques lógicos funcionales secuenciales sincrónicos son circuitos secuenciales sincrónicos que tienen un comportamiento predefinido. Se conoce de antemano cual es su CLC del próximo estado. Estudiaremos los siguientes bloques funcionales secuenciales sincrónicos: • Registros • Registros de desplazamiento (RD) • Contadores Para modelar el comportamiento de estos circuitos utilizaremos: • Tablas funcionales • Diagramas de tiempo • Diagramas de estados (para los contadores) Disciplina Electrónica Digital CIME - UTH Registros Disciplina Electrónica Digital CIME - UTH Registros ¿Qué funciones realizan estos bloques? ✓ Los registros son circuitos muy importantes en la construcción de sistemas digitales. ✓ Frecuentemente se emplean para almacenar o registrar información binaria durante un cierto tiempo. ✓ Pueden utilizarse como circuitos de entradas y/o salidas en sistemas con microprocesadores. ✓ La capacidad de almacenamiento de un registro es el número total de bits de un dato digital que puede contener. Por ejemplo, para almacenar un byte de información se requiere de un registro de 8 bits. Disciplina Electrónica Digital CIME - UTH Registros Registro: Conjunto de dos o más flip-flops tipo D con señal de RELOJ común. Estructura interna Registro de n bit D0 Q0 … … ✓ Si se compara la estructura interna del registro con el modelo básico de los CSS, podemos representarla de forma abreviada según el siguiente esquema. Dn-1 Qn-1 Memoria de estados CLRa CLK Registro de n bits con entrada CLRa (clear asincrónico) para establecer condiciones asincrónicas. ✓ Los registros pueden tener entrada para Set asincrónico, así como entradas para el establecimiento de condiciones iniciales sincrónicas. En las diapositivas siguientes veremos algunos ejemplos. Disciplina Electrónica Digital CIME - UTH Salidas tipo Moore Representa los n flip-flops ✓ Observe que este registro es básicamente una memoria de estados. Las entradas Dn constituyen directamente el estado siguiente (ES) y las salidas Qn, el estado presente (EP). Registros Ejemplo 1: Se presenta el símbolo lógico y la tabla funcional de un registro de 3 bits. Tabla funcional Entradas Registro de 3 bits Salidas Función CLRa CLK Q2 Q1 Q0 0 X 0 0 0 1 0 last Q2 last Q1 last Q0 Almacena CLRa 1 1 last Q2 last Q1 last Q0 Almacena CLK 1 last Q2 last Q1 last Q0 Almacena 1 D2 D1 D0 D0 D1 D2 Q0 Q1 Q2 CLR asincrónico Carga paralelo El siguiente circuito utiliza este registro de 3 bits. Complete el diagrama de tiempo de las salidas para los estímulos dados. CLK Registro de 3 bits A0 A2 D0 D1 D2 Rst CLRa CLK CLK A1 Q0 Q1 Q2 Rst S0 S1 S2 4 A(2..0) 5 7 1 S2 S1 S0 1 Disciplina Electrónica Digital CIME - UTH 2 3 4 5 µs Registros Ejemplo 1: Se presenta el símbolo lógico y la tabla funcional de un registro de 3 bits. Tabla funcional Entradas Registro de 3 bits Salidas Función CLRa CLK Q2 Q1 Q0 0 X 0 0 0 1 0 last Q2 last Q1 last Q0 Almacena CLRa 1 1 last Q2 last Q1 last Q0 Almacena CLK 1 last Q2 last Q1 last Q0 Almacena 1 D2 D1 D0 D0 D1 D2 Q0 Q1 Q2 CLR asincrónico Carga paralelo El siguiente circuito utiliza este registro de 3 bits. Complete el diagrama de tiempo de las salidas para los estímulos dados. Registro de 3 bits A0 A1 A2 D0 D1 D2 Rst CLRa CLK CLK Q0 Q1 Q2 S0 Rst S1 A(2..0) 4 5 7 1 S2 S2 1 1 1 1 S1 0 1 0 0 S0 0 1 1 1 1 Disciplina Electrónica Digital Se resuelve de manera similar a como hacíamos con un flip-flop, pero ahora son tres. CLK CIME - UTH 2 3 4 5 Atención: Todas las salidas deben completarse a la vez, siguiendo el eje de tiempo. µs Registros Ejemplo 2: Se presenta un registro de 2 bits con entradas para establecer las funciones clear asincrónico (CLRa) y clear sincrónico (CLRs). Tabla funcional Registro de 2 bits D0 D1 Entradas de control Q0 Q1 CLRs CLRa CLK Salidas CLRa 0 1 CLK X 0 Función CLRs Q1 Q0 CLR asincrónico X 0 0 X last Q1 last Q0 Almacena 1 1 1 1 1 X X 0 1 last Q1 last Q0 Almacena last Q1 last Q0 Almacena CLR sincrónico 0 0 D1 D0 Carga paralelo ✓ Los multiplexores constituyen el CLC del próximo estado. La señales CLRs, D(1) y D(0) son las entradas de este bloque. El canal “S=0” de cada multiplexor está conectado a ‘0’ lógico. La entrada externa CLRs constituye la entrada de selección de cada multiplexor. ✓ El registro va al estado de RESET (Q1=Q0=0) con el frente activo de reloj cuando CLRs=0. ✓ Para comprender mejor la función CLR sincrónico, analicemos la estructura interna de este registro. Estructura interna ES(0) ✓ Los flip-flops constituyen el bloque memoria de estados. Las señales externas CLK, CLRa son entradas de este bloque. Las señales internas del circuito ES(1) y ES(0), que son las salidas del CLC del próximo estado (multiplexores), también son entradas de la memoria de estados. Tabla funcional del CLC del próximo estado CLRs ES(1) ES(0) 0 0 0 1 D1 D0 Disciplina Electrónica Digital CIME - UTH ES(1) ✓ Si la entrada CLRs=‘0’, las entradas D de cada flip-flop estarán en ‘0’. Ese valor pasará a las salidas Q cuando llegue el próximo frente positivo de CLK. Registros Ejemplo 2: Se presenta un registro de 2 bits con entradas para establecer las funciones clear asincrónico (CLRa) y clear sincrónico (CLRs). Tabla funcional Registro de 2 bits D0 D1 Entradas de control Q0 Q1 CLRs CLRa CLK Salidas CLRa 0 1 CLK X 0 Función CLRs Q1 Q0 CLR asincrónico X 0 0 X last Q1 last Q0 Almacena 1 1 1 1 1 X X 0 1 ✓ El registro va al estado de RESET (Q1=Q0=0) con el frente activo de reloj cuando CLRs=0. last Q1 last Q0 Almacena last Q1 last Q0 Almacena CLR sincrónico 0 0 D1 D0 Carga paralelo El siguiente circuito utiliza este registro de 2 bits. Se presenta el diagrama de tiempo de las salidas para los estímulos dados. Registro de 2 bits A0 D0 Q0 S0 A1 D1 Q1 S1 ClrS ClrA CLRs CLRa CLK CLK Disciplina Electrónica Digital CIME - UTH ✓ Cuando ClrS pasa a ‘0’, las salidas pasan al estado RESET cuando ocurra el frente positivo de CLK. Registros Ejemplo 3: A partir de la tabla funcional del registro de 4 bits utilizado en el circuito de la figura, complete el diagrama de tiempo esperado para los estímulos dados. Tabla funcional Registro de 4 bits Entradas Salidas CLK MR EN Q3 Q2 Q1 Q0 0 X X last Q3 last Q2 last Q1 last Q0 1 X X last Q3 last Q2 last Q1 last Q0 X 0 1 1 X X 0 1 last Q3 last Q2 last Q1 last Q0 0 0 0 0 last Q3 last Q2 last Q1 last Q0 D3 D2 D1 D0 Registro de 4 bits DA(0) D0 Q0 Y(0) DA(1) D1 Q1 Y(1) DA(2) D2 Q2 Y(2) DA(3) D3 Q3 Y(3) CLK Rst GO DA(3..0) 1001 1011 1010 1100 GO Rst CLK Disciplina Electrónica Digital EN /MR CLK CIME - UTH Y(3..0) 0111 0110 0101 1000 0111 Registros Ejemplo 3: A partir de la tabla funcional del registro de 4 bits utilizado en el circuito de la figura, dibuje el diagrama de tiempo esperado para los estímulos dados. Tabla funcional Registro de 4 bits Entradas Análisis de la tabla funcional: Salidas CLK MR EN Q3 Q2 Q1 Q0 0 X X last Q3 last Q2 last Q1 last Q0 1 X X last Q3 last Q2 last Q1 last Q0 X 0 1 1 X X 0 1 last Q3 last Q2 last Q1 last Q0 0 0 0 0 last Q3 last Q2 last Q1 last Q0 D3 D2 D1 D0 ✓ A partir de la tabla funcional se conoce que este registro no tiene entradas asincrónicas. ✓ El registro tiene la entrada MR activa en 0 que permite establecer el estado de RESET de forma sincrónica. ✓ El registro tiene la entrada EN activa en 1 que habilita la carga sincrónica. ✓ La entrada MR es prioritaria en relación con la entrada EN. Registro de 4 bits DA(0) D0 Q0 Y(0) DA(1) D1 Q1 Y(1) DA(2) D2 Q2 Y(2) DA(3) D3 Q3 Y(3) CLK Rst GO DA(3..0) 1001 1011 1010 1100 GO Rst CLK Disciplina Electrónica Digital EN /MR CLK CIME - UTH Y(3..0) 0111 0110 0101 1000 0111 Registros Ejemplo 3: A partir de la tabla funcional del registro de 4 bits utilizado en el circuito de la figura, dibuje el diagrama de tiempo esperado para los estímulos dados. Análisis para dibujar el diagrama de tiempo: Tabla funcional Registro de 4 bits Entradas Salidas CLK MR EN Q3 Q2 Q1 Q0 0 X X last Q3 last Q2 last Q1 last Q0 1 X X last Q3 last Q2 last Q1 last Q0 X 0 1 1 X X 0 1 last Q3 last Q2 last Q1 last Q0 0 0 0 0 last Q3 last Q2 last Q1 last Q0 D3 D2 D1 D0 Registro de 4 bits ✓ Antes del primer frente de CLK no se puede definir el estado de las salidas por lo que se utiliza el signo ?. ✓ En el primer frente de CLK (1000 ns) la señal RST=‘0’ por lo que las salidas irán al estado de RESET. ✓ En el segundo frente RST=‘1’ y GO=‘0’ por lo que el registro almacena el valor que tenia en sus salidas. ✓ En el segundo frente de CLK (1100 ns) la señal GO=‘0’, por lo tanto EN=0 y el registro almacena. ✓ En el frente de CLK que ocurre a los 1200 ns la señal GO=‘1’ por lo que el registro carga el valor que hay en sus entradas. ✓ El registro carga el dato de entrada en los frentes positivos del CLK donde la señal GO sea 1. ✓ Aproximadamente a los 1750 ns la señal Rst pasa a ‘0’, pero no es hasta que ocurra el frente positivo de CLK (1800 ns) que las salidas van a ‘0’. DA(0) D0 Q0 Y(0) DA(1) D1 Q1 Y(1) DA(2) D2 Q2 Y(2) CLK DA(3) D3 Q3 Y(3) Rst GO GO Rst CLK Disciplina Electrónica Digital EN DA[3..0] 1001 1011 1010 1100 0111 0110 0101 1000 0111 /MR CLK CIME - UTH Y[3..0] ? 0000 1010 0110 0000 Registros de Desplazamiento Registros de desplazamiento ¿Qué funciones realizan estos bloques? ✓ Los registros de desplazamientos (RD) se utilizan para convertir la forma (serie o paralela) en que se manipula o transfiere información digital. ✓ Una de las aplicaciones de estos bloques es la comunicación (intercambio de datos) entre un transmisor y un receptor. ✓ En una transferencia o comunicación en formato paralelo, se transmiten/reciben varios bits de datos a la vez. ✓ En el caso de una transferencia en formato serie, la información desde el transmisor hacia el receptor (o viceversa) de un bit detrás del otro. Disciplina Electrónica Digital CIME - UTH Registros de desplazamiento Registro de Desplazamiento: es un registro que desplaza su contenido a la izquierda o a la derecha un bit con el frente activo del reloj. Estructura interna (n=3) RD de n bit Sin Q0 … ✓ Si se compara la estructura interna del RD con el modelo básico de los CSS, podemos representarla de forma abreviada según el siguiente esquema. Qn-1 CLC próximo estado Memoria de estados CLRa CLK RD serie - paralelo. Tiene una entrada de datos serie (Sin) y n bits de salida. Los RD se pueden clasificar según sea el formato del dato de entrada y de salida: • RD serie - serie Salidas tipo Moore Representa los n flip-flops ✓ Observe que son flip-flops conectados en cascada. • RD serie - paralelo • RD paralelo - serie • RD paralelo – paralelo Consultar LT Epíg. 8.5.1 "Shift-Register Structure" ✓ El CLC del próximo estado genera el estado siguiente (ES) a partir del estado presente (EP) y de la entrada sincrónica Sin. ✓ En el CLC del próximo estado, ES(0)=Sin; ES(1)=EP(0); ES(2)=EP(1). En este caso desplaza un bit hacia la izquierda. • RD universal Disciplina Electrónica Digital CIME - UTH Registros de desplazamiento Ejemplo 4: Se presenta el símbolo lógico y la tabla funcional de un registro de desplazamiento serie - paralelo de 3 bits. Tabla funcional Entradas RD de 3 bit Sin Q0 Q1 Q2 CLRa CLK Salidas Función CLRa CLK Q2 Q1 Q0 0 X 0 0 0 1 0 last Q2 last Q1 last Q0 Almacena 1 1 last Q2 last Q1 last Q0 Almacena 1 last Q2 last Q1 last Q0 Almacena 1 last Q1 last Q0 Sin CLR asincrónico Desplaza de Q0 a Q2 El siguiente circuito utiliza este registro de desplazamiento de 3 bits. Complete el diagrama de tiempo de las salidas para los estímulos dados. RD de 3 bit Ds Rst CLK Sin Q0 Q1 Q2 P0 P1 P2 CLRa CLK CLK Rst Ds 1 0 1 1T 2T 3T P0 P1 P2 0 Disciplina Electrónica Digital CIME - UTH 4T μs Registros de desplazamiento Ejemplo 4: Se presenta el símbolo lógico y la tabla funcional de un registro de desplazamiento serie - paralelo de 3 bits. Tabla funcional Entradas RD de 3 bit Sin Q0 Q1 Q2 CLRa CLK Salidas Función CLRa CLK Q2 Q1 Q0 0 X 0 0 0 1 0 last Q2 last Q1 last Q0 Almacena 1 1 last Q2 last Q1 last Q0 Almacena 1 last Q2 last Q1 last Q0 Almacena 1 last Q1 last Q0 Sin CLR asincrónico Desplaza de Q0 a Q2 El siguiente circuito utiliza este registro de desplazamiento de 3 bits. Complete el diagrama de tiempo de las salidas para los estímulos dados. RD de 3 bit Ds Rst CLK Sin Q0 Q1 Q2 P0 P1 P2 CLRa CLK 0 1 Ds 0 1 P0 1 1 0 1 P1 1 P2 0 Disciplina Electrónica Digital CIME - UTH Se resuelve de manera similar a como hacíamos con un flip-flop, pero ahora son tres conectados en cascada. CLK Rst 1T 2T 3T 4T μs Atención: Todas las salidas deben completarse a la vez, siguiendo el eje de tiempo. Registros de desplazamiento Ejemplo 4: Se presenta el símbolo lógico y la tabla funcional de un registro de desplazamiento serie - paralelo de 3 bits. Tabla funcional Entradas RD de 3 bit Sin Q0 Q1 Q2 CLRa CLK Salidas Función CLRa CLK Q2 Q1 Q0 0 X 0 0 0 1 0 last Q2 last Q1 last Q0 Almacena 1 1 last Q2 last Q1 last Q0 Almacena 1 last Q2 last Q1 last Q0 Almacena 1 last Q1 last Q0 Sin CLR asincrónico Desplaza de Q0 a Q2 El siguiente circuito utiliza este registro de desplazamiento de 3 bits. Complete el diagrama de tiempo de las salidas para los estímulos dados. RD de 3 bit Ds Rst CLK Sin Q0 Q1 Q2 P0 P1 P2 CLRa CLK Por la entrada Ds se recibe el dato serie que se carga en P0 en los frentes activos de CLK. CLK Rst 0 1 Ds 0 1 P0 1 1 P1 1 P2 0 Disciplina Electrónica Digital CIME - UTH En cada frente se recibe y desplaza un bit. 1 0 1T 2T 3T 4T μs En el tercer frente activo de CLK se obtiene el dato (101) en formato paralelo. Registros de desplazamiento Ejemplo 5: A partir de la tabla funcional del registro de desplazamiento universal de 4 bits utilizado en el circuito de la figura, dibuje el diagrama de tiempo esperado para los estímulos dados. Tabla funcional RD universal de 4 bits Entradas Salidas PR CLK S1 S0 Q3 Q2 Q1 Q0 Función 0 X X X 1 1 1 1 Set asincrónico 1 0 X X q3 q2 q1 q0 Almacena 1 1 X X q3 q2 q1 q0 Almacena 1 X X q3 q2 q1 q0 Almacena 1 0 0 q3 q2 q1 q0 Almacena 1 0 1 q2 q1 q0 SL Desplaza Q0→Q3 1 1 0 SR q3 q2 q1 Desplaza Q3→Q0 1 1 1 D3 D2 D1 D0 Carga paralelo qn = last Qn Disciplina Electrónica Digital CIME - UTH Registros de desplazamiento Ejemplo 5: A partir de la tabla funcional del registro de desplazamiento universal de 4 bits utilizado en el circuito de la figura, dibuje el diagrama de tiempo esperado para los estímulos dados. Tabla funcional RD universal de 4 bits Entradas Análisis de la tabla funcional: Salidas PR CLK S1 S0 Q3 Q2 Q1 Q0 Función 0 X X X 1 1 1 1 Set asincrónico 1 0 X X q3 q2 q1 q0 Almacena 1 1 X X q3 q2 q1 q0 Almacena 1 X X q3 q2 q1 q0 Almacena 1 0 0 q3 q2 q1 q0 Almacena 1 0 1 q2 q1 q0 SL Desplaza Q0→Q3 1 1 0 SR q3 q2 q1 Desplaza Q3→Q0 1 1 1 D3 D2 D1 D0 Carga paralelo qn = last Qn Disciplina Electrónica Digital CIME - UTH ✓ A partir de la tabla funcional se conoce que este RD tiene la entrada asincrónica PR que es activa en 0. Si PR=0 todas las salidas del RD toman valor 1 asincrónicamente. ✓ El RD tiene 4 entradas de datos en paralelo (D[3..0]) y dos entradas de datos serie (SR y SL) que se atienden de forma sincrónica. ✓ El RD tiene dos entradas de control S1 y S0 que también se atienden de forma sincrónica. A partir de la combinación lógica presente en estas entradas se definen 4 funciones: almacenar, desplazar de Q0 a Q3, desplazar de Q3 a Q0 y cargar paralelo. Registros de desplazamiento Ejemplo 5: A partir de la tabla funcional del registro de desplazamiento universal de 4 bits utilizado en el circuito de la figura, dibuje el diagrama de tiempo esperado para los estímulos dados. Tabla funcional RD universal de 4 bits Entradas Salidas PR CLK S1 S0 Q3 Q2 Q1 Q0 Función Análisis para dibujar el diagrama de tiempo: ✓ Cada uno de los 4 bits de la palabra digital que se va a transmitir está conectado en el pin de la entrada de dato paralelo del RD que coincide con su número (Dn=DPn). ✓ La señal CTx0 controla la transmisión y se conecta a la entrada S0 del RD. Como S1 está conectada a ‘1’, el RD podrá realizar dos de sus funciones en dependencia del valor que tome la señal CTx0. ✓ Si CTx0 es 1, se realizará carga paralelo sincrónica, por lo que cada bit del dato DPn pasará a la respectiva salida Qn. 0 X X X 1 1 1 1 Set asincrónico 1 0 X X q3 q2 q1 q0 Almacena 1 1 X X q3 q2 q1 q0 Almacena 1 X X q3 q2 q1 q0 Almacena 1 0 0 q3 q2 q1 q0 Almacena 1 0 1 q2 q1 q0 SL Desplaza Q0→Q3 ✓ Si CTx0=0, el circuito desplazará sincrónicamente de Q3 a Q0. 1 1 0 SR q3 q2 q1 Desplaza Q3→Q0 ✓ 1 1 1 D3 D2 D1 D0 Carga paralelo Con esta configuración se transmite, por QTx, primero el bit menos significativo del dato (D0). Como SR=‘1’, cada vez que el bloque desplaza Q3=‘1’. qn = last Qn Disciplina Electrónica Digital CIME - UTH Registros de desplazamiento Ejemplo 5: A partir de la tabla funcional del registro de desplazamiento universal de 4 bits utilizado en el circuito de la figura, dibuje el diagrama de tiempo esperado para los estímulos dados. Tabla funcional RD universal de 4 bits Entradas Salidas PR CLK S1 S0 Q3 Q2 Q1 Q0 Análisis para dibujar el diagrama de tiempo: Función ✓ Cada uno de los 4 bits de la palabra digital que se va a transmitir está conectado en el pin de la entrada de dato paralelo del RD que coincide con su número (Dn=DPn). ✓ La señal CTx0 controla la transmisión y se conecta a la entrada S0 del RD. Como S1 está conectada a ‘1’, el RD podrá realizar dos de sus funciones en dependencia del valor que tome la señal CTx0. ✓ Si CTx0 es 1, se realizará carga paralelo sincrónica, por lo que cada bit del dato DPn pasará a la respectiva salida Qn. 0 X X X 1 1 1 1 Set asincrónico 1 0 X X q3 q2 q1 q0 Almacena 1 1 X X q3 q2 q1 q0 Almacena 1 X X q3 q2 q1 q0 Almacena 1 0 0 q3 q2 q1 q0 Almacena 1 0 1 q2 q1 q0 SL Desplaza Q0→Q3 ✓ Si CTx0=0, el circuito desplazará sincrónicamente de Q3 a Q0. 1 1 0 SR q3 q2 q1 Desplaza Q3→Q0 ✓ 1 1 1 D3 D2 D1 D0 Carga paralelo Con esta configuración se transmite, por QTx, primero el bit menos significativo del dato (D0). Como SR=‘1’, cada vez que el bloque desplaza Q3=‘1’. qn = last Qn Dato paralelo Dato serie Disciplina Electrónica Digital CIME - UTH Contadores Contadores ¿Qué funciones realizan estos bloques? ✓ Los contadores son circuitos secuenciales sincrónicos cuyas salidas transitan por una secuencia predefinida de estados. ✓ Se pueden utilizar para contar la ocurrencia de eventos. ✓ Otra aplicación es determinar el paso del tiempo (temporizadores). ✓ También permiten dividir la frecuencia de una señal digital periódica. Disciplina Electrónica Digital CIME - UTH Contadores Contador: circuito secuencial sincrónico cuyo diagrama de estados está formado por un único ciclo. Módulo o base del contador: es el número de estados del ciclo. Contador n bits ✓ A partir del modelo básico de los CSS, se puede representarla de forma abreviada la estructura interna del contador según el siguiente esquema: Q0 Ej.: Contador binario con 1 bit de conteo (n=1) y entrada de Clear asincrónico (CLRa). … Diagrama de estados Qn-1 CLC próximo estado Memoria de estados CLRa CLK Tiene Qn las salidas de conteo Según la secuencia que sigan las salidas de conteo, los contadores se pueden clasificar en: • Binario (0, 1…2n-1) • Decima o BCD (0, 1, 2….8, 9) • Contador de Anillo • Contador de Johnson Se basan en RD Disciplina Electrónica Digital CIME - UTH Salidas tipo Moore Representa los n flip-flops ✓ El CLC del próximo estado genera el estado siguiente (ES) a partir del estado presente (EP). ✓ En el CLC del próximo estado se incrementa en 1 el estado presente (EP), logrando una secuencia de estado binarios. Los valores posibles de Q (0 y 1) se han representado dentro de un círculo (estado). Del diagrama se interpreta que: ✓ CLRa es asincrónico y cuando se activa lleva la salida Q a 0 (estado inicial). ✓ Si CLRa no está activo, en cada frente activo de reloj el contador pasa a un nuevo estado y Q toma un nuevo valor siguiendo una secuencia. Esto se indica con la flecha que va de un círculo a otro. ✓ En este caso la secuencia es 0 -1 - 0 1… ✓ La base de este contador binario es 2. Contadores Ejemplo 6: Se presenta el símbolo lógico y la tabla funcional de un contador binario ascendente de 2 bits. Dibuje su diagrama de estados. Contador binario 2 bits QA QB Tabla funcional CLRa CLK QB QA 0 X 0 0 1 Cuenta CLRa CLK Disciplina Electrónica Digital CIME - UTH Contadores Ejemplo 6: Se presenta el símbolo lógico y la tabla funcional de un contador binario ascendente de 2 bits. Dibuje su diagrama de estados. Análisis de la tabla funcional: Contador binario 2 bits Tabla funcional QA QB CLRa CLK QB QA 0 X 0 0 1 Cuenta CLRa CLK ✓ A partir de la tabla funcional se conoce que este contador tiene la entrada asincrónica CLRa que es activa en ‘0’, para establecer el estado de RESET en sus dos salidas. ✓ Con cada frente activo de la señal del reloj (CLK) el contador cuenta. ✓ Del enunciado se conoce que es un contador binario ascendente por lo que la secuencia de conteo irá incrementándose siguiendo una secuencia binaria. Análisis del diagrama de estados: Diagrama de estados ✓ El contador binario de 2 bits tiene 4 estados (22) . S1 CLRa=0 S0 QB QA 01 QB QA 00 ✓ Cada estado se representa por un círculo (4 estados) y puede identificarse con un nombre (Ej. S0, S1, S2, S3). S2 QB QA 10 S3 QB QA 11 ✓ Los valores de las salidas QA y QB (tipo Moore) se representan dentro de cada círculo. ✓ La entrada CLRa se atiende asincrónicamente. Si CLRa=0 (activa) las salidas QB y QA van a ‘0’. ✓ Cuando CLRa no está activa, con cada frente activo de CLK el contador pasa a un nuevo estado y las salidas Q toman un nuevo valor. Esto se indica con la flecha que va de un círculo a otro. ✓ El contador binario ascendente sigue la secuencia 00, 01, 10, 11, 00, 01, …. Disciplina Electrónica Digital CIME - UTH Contadores Ejemplo 7: Se presenta el símbolo lógico y la tabla funcional de un contador binario ascendente de 2 bits. Dibuje su diagrama de estados. Contador binario 2 bits QA QB EN CLRa CLK RCO Disciplina Electrónica Digital Tabla funcional contador binario 2 bits CLRa CLK EN QB QA 0 X X 0 0 1 0 last QB last QA 1 1 Cuenta RCO = ‘1’ si QB = ‘1’ y QA = ‘1’ y EN = ‘1’ CIME - UTH Contadores Ejemplo 7: Se presenta el símbolo lógico y la tabla funcional de un contador binario ascendente de 2 bits. Dibuje su diagrama de estados. Contador binario 2 bits QA QB EN CLRa CLK RCO Tabla funcional contador binario 2 bits CLRa CLK EN QB QA 0 X X 0 0 1 0 last QB last QA 1 1 Cuenta RCO = ‘1’ si QB = ‘1’ y QA = ‘1’ y EN = ‘1’ Diagrama de estados Disciplina Electrónica Digital CIME - UTH Análisis de la tabla funcional: ✓ A partir de la tabla funcional se conoce que este contador tiene la entrada asincrónica CLRa que es activa en ‘0’. Cuando CLRa se activa se establece el estado de RESET en sus dos salidas. ✓ EN es una entrada activa en sincrónicamente. EN=1 habilita sincrónicamente. EN=0 almacena. ‘1’, el atendida conteo ✓ La salida RCO (fin de conteo) es tipo Mealy. En este caso RCO=1 si el contador está habilitado (EN=1) y se encuentra en el último estado (QB QA = “11”). Análisis del diagrama de tiempo: ✓ Las salidas de conteo QB y QA (tipo Moore) se identifican dentro de los círculos. ✓ La salida RCO (tipo Mealy) se representa sobre la flecha que indica la transición entre estados. Este convenio se debe a que el CLC que genera la salida Mealy no solo depende del estado presente, sino de las entradas. ✓ Cuando EN=1, en cada frente activo de CLK el contador transita cíclicamente de un estado a otro. Si EN=0 se mantiene en el mismo estado, esto se representa con una flecha que sale y entra en el mismo círculo. ✓ Si el contador está en el último estado (S3), sus salidas QB y QA están en “11”. En ese mismo estado, si la entrada EN=0, la salida RCO será 0. RCO será ‘1’ únicamente si estando en S3 el contador está habilitado (EN=1). Contadores Ejemplo 8 Se presenta el símbolo lógico y la tabla funcional de un contador binario ascendente de 2 bits. a) Dibuje el diagrama de tiempo del contador en corrida libre. b) Determine la frecuencia y ciclo útil de cada salida si fCLK= 1 MHz. c) A partir del diagrama de tiempo del contador en corrida libre determine la salida por la que se obtiene un pulso cada 4 microsegundos. Disciplina Electrónica Digital CIME - UTH Contador binario 2 bits QA QB EN CLRa CLK RCO Tabla funcional contador binario 2 bits CLRa CLK EN QB QA 0 X X 0 0 1 0 last QB last QA 1 1 Cuenta RCO = ‘1’ si QB = ‘1’ y QA = ‘1’ y EN = ‘1’ Contadores Ejemplo 8 Se presenta el símbolo lógico y la tabla funcional de un contador binario ascendente de 2 bits. a) Dibuje el diagrama de tiempo del contador en corrida libre. b) Determine la frecuencia y ciclo útil de cada salida si fCLK= 1 MHz. c) A partir del diagrama de tiempo del contador en corrida libre determine la salida por la que se obtiene un pulso cada 4 microsegundos. Contador binario 2 bits QA QB EN CLRa CLK RCO Tabla funcional contador binario 2 bits CLRa CLK EN QB QA 0 X X 0 0 1 0 last QB last QA 1 1 Cuenta RCO = ‘1’ si QB = ‘1’ y QA = ‘1’ y EN = ‘1’ a) El contador está en corrida libre cuando puede transitar “libremente” por cada estado. En este caso se logra cuando CLRa=1 y EN=1. Disciplina Electrónica Digital CIME - UTH Contadores Ejemplo 7 Se presenta el símbolo lógico y la tabla funcional de un contador binario ascendente de 2 bits. a) Dibuje el diagrama de tiempo del contador en corrida libre. b) Determine la frecuencia y ciclo útil de cada salida si fCLK= 1 MHz. c) A partir del diagrama de tiempo del contador en corrida libre determine la salida por la que se obtiene un pulso cada 4 microsegundos. Tabla funcional contador binario 2 bits Contador binario 2 bits QA CLRa CLK EN QB QA 0 X X 0 0 1 0 last QB last QA 1 1 QB EN CLRa CLK RCO Cuenta RCO = ‘1’ si QB = ‘1’ y QA = ‘1’ y EN = ‘1’ b) fCLK=1 MHz Disciplina Electrónica Digital CIME - UTH Sx Frecuencia Ciclo útil QA 500 kHz 0,5 QB 250 kHz 0,5 RCO 250 kHz 0,25 ✓ En corrida libre el contador binario puede utilizarse como divisor de frecuencia. ✓ fQA=fCLK/2 y ciclo útil del 50 %. ✓ fQB=fCLK/4 y ciclo útil del 50 %. ✓ fRCO=fCLK/base y ciclo útil del 25 %. Contadores Ejemplo 7 Se presenta el símbolo lógico y la tabla funcional de un contador binario ascendente de 2 bits. a) Dibuje el diagrama de tiempo del contador en corrida libre. b) Determine la frecuencia y ciclo útil de cada salida si fCLK= 1 MHz. c) A partir del diagrama de tiempo del contador en corrida libre determine la salida por la que se obtiene un pulso cada 4 microsegundos. Contador binario 2 bits QA QB EN CLRa CLK RCO Tabla funcional contador binario 2 bits CLRa CLK EN QB QA 0 X X 0 0 1 0 last QB last QA 1 1 Cuenta RCO = ‘1’ si QB = ‘1’ y QA = ‘1’ y EN = ‘1’ c) ✓ En corrida libre la salida RCO dará un pulso cada vez que el contador termine su secuencia de conteo. ✓ En este caso TCLK =1 µs, por lo que TRCO=4 µs como se señaliza en el diagrama de tiempo. ✓ El pulso por RCO dura 1 µs (microsegundo). ✓ En corrida libre los contadores pueden utilizarse como temporizador. ✓ Por RCO se obtiene un pulso de duración de 1 µs cada 4 µs . Disciplina Electrónica Digital CIME - UTH Contadores Ejemplo 9: A partir de la tabla funcional del contador binario de 4 bits utilizado en el circuito de la figura, dibuje el diagrama de tiempo esperado para los estímulos dados. Tabla funcional Contador Binario de 4 bits CLRa CLK LD EN Qn 0 X X X 0 1 0 X Dn 1 1 0 last Qn 1 1 1 Cuenta RCO = 1 si EN = 1 y todas las Qn=1 Disciplina Electrónica Digital CIME - UTH Cont. binario de 4 bits Contadores Ejemplo 9: A partir de la tabla funcional del contador binario de 4 bits utilizado en el circuito de la figura, dibuje el diagrama de tiempo esperado para los estímulos dados. Tabla funcional Contador Binario de 4 bits CLRa CLK LD EN Qn 0 X X X 0 1 0 X Dn 1 1 0 last Qn 1 1 1 Cuenta Cont. binario de 4 bits RCO = 1 si EN = 1 y todas las Qn=1 Análisis de la tabla funcional: ✓ A partir de la tabla funcional se conoce que este contador tiene la entrada CLRa activa en 0 que se atiende asincrónicamente. Si CLRa=0 todas las salidas del contador tomarán asincrónicamente valor 0, que es valor inicial de conteo. ✓ La entrada LD es activa en 0 y se atiende de forma sincrónica. Con cada frente positivo del CLK, si LD=0, sin importar el valor de la señal en la entrada EN, cada salida Qn cargará el valor que aparece en la respectiva entrada Dn. ✓ La entrada EN es activa en 1 y se atiende de forma sincrónica. En cada frente positivo del CLK si EN=1 las salidas Qn cambiarán de estado siguiendo una secuencia binaria creciente hasta el último estado que será “1111” (1510). Si EN=0 las salidas Qn almacenarán el valor que tenían. ✓ La salida RCO es activa en 1. Cuando las salidas Qn están en el último estado (“1111”) y EN=1, se activa la señal de salida RCO para indicar que se alcanzó el fin de conteo. ✓ Este contador tiene 16 estados (24), con una secuencia binaria de “0000” a “1111”. Disciplina Electrónica Digital CIME - UTH Contadores Ejemplo 9: A partir de la tabla funcional del contador binario de 4 bits utilizado en el circuito de la figura, dibuje el diagrama de tiempo esperado para los estímulos dados. Tabla funcional Contador Binario de 4 bits CLRa CLK LD EN Qn 0 X X X 0 1 0 X Dn 1 1 0 last Qn 1 1 1 Cuenta RCO = 1 si EN = 1 y todas las Qn=1 Cont. binario de 4 bits Análisis para dibujar el diagrama de tiempo: ✓ Antes del primer frente del CLK no se puede definir el estado de las salidas Qn y por tanto tampoco el valor de TC, por eso se señaliza con el signo de interrogación (?). ✓ En el primer frente de CLK (0.5 ms) la señal Ld=0 (activa) y las salidas Qn cargan el valor de la señal DPn (1101) correspondiente a sus respectivas entradas Dn. ✓ En los dos frentes de CLK siguientes (1.0 ms y 1.5_ms) el contador está habilitado para contar (Ld=1 y EN=1) y se incrementa el valor de las salidas. ✓ En el intervalo entre 1.5 ms y 2.0 ms, el contador está el su último estado (Q[3..0]=1111) pero EN=0 por lo que TC=0. ✓ En el frente de CLK que ocurre a los 2.0 ms la señal EN=0 por lo que las salidas Qn mantienen el valor de fin de conteo (1111). ✓ En el intervalo entre 2.0 ms y 2.5 ms, la señal EN sube a 1. TC responde al cambio de EN por ser una salida Mealy. ✓ En el frente de los 2.5 ms, EN=1 y se incrementan las salidas, se cierra el ciclo al pasar del último estado al primer estado 0000. A partir de los 30 ms se repiten los comportamientos analizados. Disciplina Electrónica Digital CIME - UTH Contadores Ejemplo 10: A partir de la tabla funcional del contador decimal utilizado en el circuito de la figura que representa un contador BCD de dos dígitos determine su base de conteo. a) Dibuje el diagrama de tiempo esperado para los estímulos dados. Tabla funcional Contador Decimal CLR 0 1 1 CLK X EN X 0 1 Qn 0 last Qn Cuenta RCO = 1 si Q[3..0] = 1001 y EN = 1 Disciplina Electrónica Digital CIME - UTH Contadores Tabla funcional Contador Decimal CLR 0 1 1 CLK X EN X 0 1 Qn 0 last Qn Cuenta RCO = 1 si Q[3..0] = 1001 y EN = 1 Análisis de la tabla funcional: Análisis de la circuito contador BCD de dos dígitos: ✓ A partir de la tabla funcional se conoce que este contador tiene la entrada CLR activa en 0 y atendida asincrónicamente. Si CLR=0 todas las salidas del contador serán 0. ✓ El circuito está compuesto por dos contadores decimales conectados en cascada, donde la salida RCO del Contador 1 (RCOu) está conectada a la entrada de habilitación de conteo (EN) del Contador 2. ✓ La entrada EN es activa en 1 y se atiende de forma sincrónica. En cada frente positivo del CLK, si EN=1 las salidas Qn cambiarán de estado siguiendo una secuencia binaria creciente hasta el último estado que será “1001” (910). Si EN=0 las salidas Qn almacenarán el valor que tenían. ✓ El Contador 1 incrementa su secuencia de conteo en cada frente positivo de CLK si EN=1. La señal RCOu=1 cuando llega al fin de conteo (1001), lo que le permite al Contador_2 contar una vez. ✓ La salida RCO es activa en 1. Cuando las salidas Qn están en el último estado (1001) y la entrada EN también es 1, se activa RCO para indicar que se alcanzó el fin de conteo. Cada vez que el Contador 1 haga su ciclo de 10 estados, el Contador 2 incrementará en uno su salida (contará una vez). ✓ ✓ Este contador decimal tiene 10 estados, con una secuencia binaria de “0000” a “1001”. El Contador 2 llegará a su último estado (1001) después de que el contador 1 genere 10 pulsos por la salida RCO. ✓ El módulo del contador BCD de dos dígitos (dos contadores decimales en cascada) es 10 × 10 = 100. ✓ Disciplina Electrónica Digital CIME - UTH Contadores Ejemplo 10 a) Dibuje el diagrama de tiempo esperado para los estímulos dados. Análisis para dibujar el diagrama de tiempo: Disciplina Electrónica Digital CIME - UTH ✓ En el diagrama de tiempo RST y EN están en 1 y se parte de los valor de las señales de las salidas Qu[3..0]=1000 (810) y Qd[3..0]= 1000 (810). ✓ En cada frente del reloj se incrementa las salidas Qu. ✓ En el frente de CLK marcado con 89TCLK las salidas Qu[3..0] llegan al último valor posible (1001) y la señal RCOu va a uno. ✓ En el frente 90TCLK las salidas Qu se reinician en cero, RCOu también va a cero y se incrementa el valor de las salidas Qd[3..0] a 1001, que es el último estado del contador 2. ✓ La salida RCOd se mantiene en cero porque la señal RCOu es cero. Contadores Ejemplo 10 a) Dibuje el diagrama de tiempo esperado para los estímulos dados. Análisis para dibujar el diagrama de tiempo: Disciplina Electrónica Digital CIME - UTH ✓ En el diagrama de tiempo RST y EN están en 1 y se parte de los valor de las señales de las salidas Qd[3..0]=9 y Qu[3..0]=7. ✓ Con cada frente del reloj se incrementa las salidas Qu. ✓ En el frente de CLK marcado con 99TCLK las salidas Qu[3..0] llegan al último valor posible (1001) y la señal RCOu va a 1 haciendo que RCOd también vaya a 1. ✓ En el frente 100TCLK las salidas Qu y Qd se reinician en cero y las señales RCOu y RCOd también van a cero. ✓ En el frente 101TCLK solo es incrementan las salidas Qu, repitiéndose el ciclo. Disciplina Electrónica Digital Departamento Docente del Centro de Investigaciones en Microelectrónica (CIME) Universidad Tecnológica de la Habana (UTH) José Antonio Echeverría Asignatura: Electrónica Digital 1 Curso 2024 Conclusiones 1. Los bloques secuenciales sincrónicos son CSS de comportamiento regular. 2. Estudiamos los bloques secuenciales sincrónicos registros, registros de desplazamiento y contadores. 3. El comportamiento de los bloque funcionales sincrónicos se puede modelar mediante tablas funcionales, diagramas de estados y diagramas de tiempo.