


























Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Asignatura: Tecnología de Computadores, Profesor: Ignacio Ignacio, Carrera: Ingeniería de Computadores, Universidad: URJC
Tipo: Apuntes
1 / 34
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!



























Titulación: Ingeniería de Computadores Asignatura: Tecnología de Computadores Curso 2010- 2011 Bloque 3: Sistemas secuenciales Tema 8: Elementos de memoria
Bibliografía Introducción Biestables asíncronos Biestables síncronos por nivel Flip-flops Síntesis de máquinas de estados con flip-flops Descripción de máquinas de estados en VHDL
Los elementos de memoria básicos se llaman biestables, por que pueden estar en dos posibles estados: con la salida a ‘0’ o a ‘1’. Según las entradas de datos de que disponen podemos establecer varios tipos de biestables: S-R: entradas de puesta a 1 (S, set ) y puesta a 0 (R, reset ) J-K: entradas de puesta a 1 (J, set ) y puesta a 0 (K, reset ) D: entrada de datos (D) T: entrada de inversión o basculamiento ( toggle ) Los biestables pueden ser asíncronos o síncronos: Asíncronos: cuando cambia cualquiera de las entradas puede cambiar la salida. Síncronos: la salida puede cambiar sólo cuando la señal de sincronismo lo permite.
Además, dentro de los biestables síncronos se puede diferenciar entre: Síncronos por nivel: la salida puede cambiar cuando la señal de sincronismo está en un determinado nivel (alto o bajo). Síncronos por flanco: la salida puede cambiar cuando la señal de sincronismo pasa de un nivel a otro: Cuando pasa de nivel bajo a alto => síncrono por flanco de subida. Cuando pasa de nivel alto a bajo => síncrono por flanco de bajada. Los más utilizados son los biestables síncronos por nivel , y reciben el nombre de flip-flops. Normalmente los biestables síncronos cuentan con entradas asíncronas que se utilizan para forzar un valor determinado en los mismos al margen del reloj (prevalecen sobre él). Puesta a 0 asíncrona ( clear , reset ) Puesta a 1 asíncrona ( preset , set )
Latch SR Nand asíncrono: El latch SR Nand opera con señales activas bajas
Latch SR Nor síncrono por nivel (gated latch): añadiendo unas puertas AND y una señal de sincronismo C, se puede convertir el Latch SR Nor asíncrono en uno síncrono por nivel.
Comportamiento indeseado de los biestables disparados por nivel: Desplazamiento de un valor alto X=1 por 3 latches. Comportamiento deseado: 100, 010, 001(/2) 1 2 3 1 1 1 0 0 0 0 0 0 1 2 3 Solución: Flip-flop master-slave o disparados por flanco 1 2 3 Comportamiento obtenido: 111, 000, 000 Se debe a que los latches son transparentes y cuando C=H los cambios en D se propagan
Flip-flop D master-slave: utilizando dos biestables síncronos por nivel se puede construir un biestable síncrono por flanco. Con Clk=0 el primer D captura y el segundo D no cambia Con Clk=1 al revés 1 2 Este modo de operación implica que se captura D en el flanco de subida del reloj Clk
1 2 3 1 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 1
Desplazamiento correcto
Flip-flop D disparado por flanco de subida del reloj: Consiste en añadir al latch convencional dos latches que aseguren que en S y en R nunca se da la condición prohibida.
Flip-flop D disparado por flanco de subida del reloj con Clear y Preset: 0 0 0 1 1 0 1 1 CLR PRS No permitido Clear (Q=0) Preset (Q=1) ON El Flip-flop D base + 2 entradas adicionales CLR y PRS en las NAND del latch de salida
Modelo VHDL del flip flop JK 20 library ieee; use ieee.std_logic_1164. all ; entity flipflopJK is port (clk, rst, J, K: in std_logic; Q: out std_logic); end flipflopJK; architecture funcional of flipflopJK is signal JK: std_logic_vector(1 downto 0); signal Q_aux: std_logic; begin JK <= J&K; process (clk, rst) begin if rst = '1' then Q_aux <= '0'; elsif rising_edge (clk) then case JK is when "00" => Q_aux <= Q_aux; when "01" => Q_aux <= '0'; when "10" => Q_aux <= '1'; when others => Q_aux <= not Q_aux; end case ; end if ; end process ; Q <= Q_aux; end funcional;