Registros En Vhdl
ESCUELA SUPERIOR DE CÓMPUTO
PRÁCTICA 1:
Registros de Desplazamiento:
* Serie - Serie
* Serie - Paralelo
* Paralelo - Serie
*Paralelo - Paralelo
*Bidireccional
Por:
Cristóbal Jiménez John Alexis:
Grupo:
2CM8
Profesor:
Mujica Ascencio Cesar
Asignatura:
Diseño de Sistemas Digitales
1. INTRODUCCIÓN
1.1 Registro1
Es un circuito digital que acepta datos binarios de una fuente de entrada y luego los desplaza, un bit a la vez, a través de una cadena de flip-flops.
Figura 1: Corrimiento de bits
Este sistema secuencial es muy utilizado en los sistemas digitales. Un ejemplo de esto se ve en las calculadoras comunes, donde al escribir una cifra de varios números, se nota que …ver más…
saux (3) | saux (2) | saux (1) | saux (0) | 1 | 0 | 1 | 1 |
Q = 1
Por otra parte, al estar el desplazamiento en 1, empiezan a salir los datos uno a uno según la señal de reloj.
2.2.3 Registro Serie - Serie
En este registro encontramos lo siguiente:
Vector auxiliar para el registro. Señal saux
ARCHITECTURE reg OF serieserie IS SIGNAL saux: std_logic_vector(3 downto 0);
Inicia proceso BEGIN
Como todos, hay un reset para limpiar registro PROCESS(CLK, E1, saux, CLR) BEGIN ------ IF (CLR = '1') THEN ---------------
Inicia condición del reloj saux <= "0000";
E1 se concatena en el vector saux, como se ve solo va de 3 a 1, ya que el saux(0) será la salida Q. ELSIF (CLK 'event and CLK='1') THEN --- saux <= E1 & saux(3 downto 1); -------
La salida Q será el último dato de la concatenación. END IF; Q <= saux(0); --- END PROCESS;
END reg;
Con una arquitectura dibujada a continuación, que apreciará más la concatenación:
Registro