1. Lenguajes de descripción de hardware. VHDL
|
|
- Carlos Cordero Godoy
- hace 6 años
- Vistas:
Transcripción
1 1. Lenguajes de descripción de hardware. VHDL 1.1. Lenguajes de descripción de hardware 1.2. VHDL Presentación del lenguaje VHDL Objetos, tipos de datos y operadores Sentencias secuenciales Sentencias concurrentes Sentencias estructurales Unidades básicas de diseño Descripción de máquinas de estado Test bench
2 LENGUAJES DE DESCRIPCIÓN DE HARDWARE HDL: Hardware Description Language Surgen de la necesidad de una herramienta que permita al diseñador afrontar el modelado y simulación de sistemas electrónicos complejos: Descomposición en bloques (arquitectura) Sincronización (Concurrencia y retardo) Comunicación entre bloques (buses) Reutilización de código Estos lenguajes permiten definir los circuitos tanto de forma funcional (cómo funcionan) como estructural (cómo están realizados).
3 LENGUAJES DE DESCRIPCIÓN DE HARDWARE Proceso de diseño de un ASIC con HDL. Es un proceso iterativo de arriba abajo, de niveles de mayor complejidad a menor, para cada nivel: Esquema de bloques general (descripción estructural) Descripción funcional de cada bloque. Simulación del modelo anterior: permite comparar diversas arquitecturas. Descripción estructural de cada uno de los bloques del modelo anterior Simulación. (...) Así se seguiría hasta que toda la estructura del circuito estuviera definida en base a puertas elementales o macrocélulas (RAM, ROM...)
4 LENGUAJES DE DESCRIPCIÓN DE HARDWARE NIVEL CIRCUITO NIVEL BLOQUE NIVEL COMPONENTE NIVEL SUBCOMPONENTE NIVEL CELDA NIVEL ELEMENTAL
5 LENGUAJES DE DESCRIPCIÓN DE HARDWARE El resultado final del diseño sería una serie de bloques con descripciones estructurales a distintos niveles de complejidad y unos cuantos bloques elementales cuya descripción es funcional y a partir de los cuales se construye toda la estructura de bloques del circuito. Por ejemplo, un sumador escalable: SUMADOR n BITS FULL ADDER HALF ADDER Descripción estructural OR AND XOR Descripción funcional
6 LENGUAJES DE DESCRIPCIÓN DE HARDWARE Una vez modelado el circuito es necesario hacer un test de funcionamiento, así se completa el trabajo de diseño con el HDL. Este es el test bench (banco de pruebas), que responde al siguiente diagrama: Generador de estímulos Diseño en prueba (DUT: design under test) Estructura de nivel superior (Test Bench)
7 LENGUAJES DE DESCRIPCIÓN DE HARDWARE Test Bench: Generador de estímulos DUT OK Errores Resultados correctos
8 LENGUAJES DE DESCRIPCIÓN DE HARDWARE Existen muchos lenguajes de descripción de hardware (Verilog HDL, Zeus HDL, VHDL). Nosotros estudiaremos el VHDL, (VHSIC Hardware Description Language, VHSIC: Very High Speed Integrated Circuit). El VHDL es el estándar del IEEE. Surge en 1981 a partir de un proyecto promovido por el departamento de defensa de los EEUU. Se publica en 1985 y en 1987 es homologado por el IEEE (Institute of Electronic and Electrical Engineers).
9 LENGUAJES DE DESCRIPCIÓN DE HARDWARE Las herramientas actuales permiten no sólo modelar, compilar y simular los diseños, sino también sintentizarlos, es decir, crear la información necesaria para implementar los diseños en un circuito integrado, o programar FPGA s. Implementación de un sumador de 8 bits en una FPGA.
10 LENGUAJES DE DESCRIPCIÓN DE HARDWARE Diseño de un bloque de la FPGA para un sumador de 8 bits
11 LENGUAJES DE DESCRIPCIÓN DE HARDWARE Los pasos a dar para crear un nuevo diseño son: Especificación Descripción de bloques Modelado VHDL Independiente del Hardware Simulación y test Simulación y test para Hw a implementar Generación de información para fabricación Dependiente del Hardware Fabricación
12 LENGUAJES DE DESCRIPCIÓN DE HARDWARE Diferencia entre los dos tipos de test: En el primer test se simulará teniendo en cuenta las características físicas que hayamos modelado (retardos, con la sentencia AFTER) En el segundo test no se tendrán en cuenta esas características descritas, sino que se incluirán aquellas que genere el hardware en el que vamos a implementar el circuito (dependiendo de la tecnología utilizada).
13 1. Lenguajes de descripción de hardware. VHDL 1.1. Lenguajes de descripción de hardware 1.2. VHDL Presentación del lenguaje VHDL Objetos, tipos de datos y operadores Sentencias secuenciales Sentencias concurrentes Sentencias estructurales Unidades básicas de diseño Descripción de máquinas de estado Test bench
14 Modelo de estructura: componentes y jerarquía Descripción de un dispositivo en VHDL: La entidad o entity: interfaz del dispositivo con el exterior La arquitectura o architecture: descripción de la funcionalidad que realiza el dispositivo. Cualquier elemento modelado en VHDL puede ser usado como un componente (component) de otro diseño. a b AND entity FUNC is port(a,b,d: in bit; s: out bit); end FUNC; d OR s architecture A_FUNC of FUNC is begin s<= d OR (a AND b) AFTER 4 ns; end A_FUNC;
15 Modelos de concurrencia: procesos, señales y eventos El hardware por definición es concurrente: formado por un mar de puertas lógicas, funcionando en paralelo. Elemento básico para modelar el paralelismo: proceso (process). Describe comportamientos y el código interno se ejecuta de forma secuencial. Todos los procesos de una descripción se ejecutan de forma paralela. El elemento necesario para comunicar dos procesos es la señal (signal): Objeto que puede ir variando su valor a lo largo de la simulación. Tiene asociado una o varias colas de eventos (drivers) que define su comportamiento a lo largo del tiempo. Cada proceso tiene un conjunto de señales a las que es sensible.
16 Modelos de concurrencia: procesos, señales y eventos architecture ACIR... AND2: process (a,b) begin c<=a and b after2 ns; end process AND2; OR2: process (c,d) begin e<=c or d after 1.5 ns; end process OR2;... end ACIR; e c d b a 2 ns 1.5 ns 1.5 ns a<=1 d<=0 c<=1 e<=0 e<=1 1. Se para la simulación 2. Se calcula el resultado de los procesos (AND2) 3. Se programan las colas de eventos de las señales 4. El valor de c será 1 dentro de 2ns 1. Se para la simulación 2. Se calcula el resultado de los procesos (OR2) 3. Se programan las colas de eventos de las señales 4. El valor de e será 0 dentro de 1.5ns 1. Se para la simulación 2. Se calcula el resultado de los procesos (OR2) 3. Se programan las colas de eventos de las señales 4. El valor de e será 1 dentro de 1.5ns En estos eventos se pararía la simulación, pero al no haber procesos sensibles a esas señales, no pasaría nada más. En ese instante de la simulación la señal d tiene dos eventos futuros programados.
17 Modelos de tiempo: ciclo de simulación La simulación de un modelo en VHDL es una simulación dirigida por eventos. El simulador mantiene unas listas de eventos (cambios en las señales internas del modelo y también de las entradas y salidas) que se han producido a lo largo de la simulación. El ciclo de simulación tiene dos etapas: Primera etapa: las señales actualizan su valor. Esta etapa finaliza cuando todas las señales que debían obtener un nuevo valor en el tiempo actual se simulación han sido actualizadas. Segunda etapa: los procesos que se activan (porque ha cambiado alguna de las señales a la que son sensibles) se ejecutan hasta que se suspenden. Cuando todos los procesos se hayan suspendido, el tiempo de simulación avanza hasta el siguiente instante de tiempo en el que haya un evento programado.
18 Modelos de tiempo: ciclo de simulación Importante: siempre hay un cierto retardo entre el momento en que un proceso coloca un nuevo valor en la cola de eventos de una señal y el momento en el que esta señal toma el valor programado en la cola de eventos. Variable: actualiza su contenido en cuanto se ejecuta una asignación sobre ella. Señal: se actualiza sólo cuando todos los procesos se hayan ejecutado y estén suspendidos.
19 1. Lenguajes de descripción de hardware. VHDL 1.1. Lenguajes de descripción de hardware 1.2. VHDL Presentación del lenguaje VHDL Objetos, tipos de datos y operadores Sentencias secuenciales Sentencias concurrentes Sentencias estructurales Unidades básicas de diseño Descripción de máquinas de estado Test bench
20 OBJETOS, TIPOS DE DATOS Y OPERADORES Objetos del VHDL Constantes constant identificador {,...}: tipo [:=expresión]; Variables variable identificador {,...}: tipo [:=expresión]; Señales signal identificador {,...}: tipo [:=expresión]; Ficheros Tipos de datos file identificador {,...}: tipo_fichero [is dirección "nombre"]; Determina el conjunto de valores que puede asumir y las operaciones que se podrán realizar. Declaración de tipos de datos: type identificador is definición_tipo
21 OBJETOS, TIPOS DE DATOS Y OPERADORES Tipos de datos std_logic Definido en el paquete std_logic_1164 de la biblioteca IEEE library IEEE; use IEEE.std_logic_1164.all; Su definición: type std_logic is ('U', - No inicializado 'X', - Forzando desconocido '0', - Forzando cero '1', - Forzando uno 'Z', - Alta impedancia 'W', - Desconocido débil 'L', - Cero débil 'H', - Uno débil '-'); - Redundante
22 OBJETOS, TIPOS DE DATOS Y OPERADORES Operadores VHDL tiene predefinidos los operadores aritméticos, relacionales, lógicos y de concatenación de cualquier lenguaje de programación común (+,-,*, or, and,...) más los operadores de desplazamiento para vectores unidimensionales.
23 1. Lenguajes de descripción de hardware. VHDL 1.1. Lenguajes de descripción de hardware 1.2. VHDL Presentación del lenguaje VHDL Objetos, tipos de datos y operadores Sentencias secuenciales Sentencias concurrentes Sentencias estructurales Unidades básicas de diseño Descripción de máquinas de estado Test bench
24 SENTENCIAS SECUENCIALES Aquellas que nos permiten describir o modelar la funcionalidad de un componente. Pueden encontrarse en los procesos o en los cuerpos de los subprogramas. Pueden ser: Sentencias de asignación (a señal y a variable) Sentencias condicionales (if, case) Sentencias iterativas (loop, exit, next) Otras sentencias (wait, assert, null) Llamadas a subprogramas
25 SENTENCIAS SECUENCIALES Sentencias secuenciales: Pueden ser: Sentencias de asignación (a señal y a variable) Sentencias condicionales (if, case) Sentencias iterativas (loop, exit, next) Otras sentencias (wait, assert, null) Llamadas a subprogramas
26 Sentencias secuenciales de asignación Asignación a señal Sintaxis nombre_señal<= valor {after expresion_tiempo} Al ejecutarse una de estas sentencias, no se está modificando el contenido de la señal, sino que se está modificando el contenido de su cola de eventos: se está proyectando un posible cambio del valor futuro de la señal, que algunas veces puede no llegar a producirse. process (a,b) begin a<=b; b<=a; end process; Se intercambia el valor de las dos señales, ya que cuando se ejecuta la segunda sentencia, el valor de a aún no refleja la asignación a<=b.
27 Sentencias secuenciales de asignación Asignación a variable: Reemplaza el valor actual de la variable con el valor especificado por una expresión. Sintaxis nombre_variable := expresion; La variable toma el nuevo valor en el momento de ejecutarse la sentencia, de forma que las sentencias que se ejecuten a continuación ya pueden ver ese nuevo valor. a:=b; b:=a; No se intercambian las dos variables. Tmp := a; a:=b; b:=tmp; Ahora si.
28 Sentencias condicionales e iterativas La sentencia if Sintaxis if condicion then sentencias_secuenciales {elsif condicion then sentencias_secuenciales} [else sentencias_secuenciales] end if; La sentencia case Sintaxis case expresion is when valor => sentencias_secuenciales; {when others=> sentencias_secuenciales;} end case; La sentencia loop Sintaxis [while condicion_boolena for control_repeticion] loop sentencias secuenciales end loop;
29 1. Lenguajes de descripción de hardware. VHDL 1.1. Lenguajes de descripción de hardware 1.2. VHDL Presentación del lenguaje VHDL Objetos, tipos de datos y operadores Sentencias secuenciales Sentencias concurrentes Sentencias estructurales Unidades básicas de diseño Descripción de máquinas de estado Test bench
30 SENTENCIAS CONCURRENTES Las sentencias concurrentes se ejecutan en paralelo. Las encontraremos en arquitecturas de los modelos y no estarán contenidas en ningún proceso. Sentencia process. Asignación a señal concurrente. Llamada concurrentes a subprogramas.
31 SENTENCIAS CONCURRENTES La sentencia process Es una sentencia concurrente que define su comportamiento a través de sentencias secuenciales. Sintaxis [etiqueta]: process (nombre_señal {,...}) declaraciones begin sentencias_secuenciales; end process [etiqueta]; Asignación a señal concurrente Sintaxis nombre_señal <= forma_onda; Se comporta de la misma forma que la asignación secuencial. Su principal diferencia radica en que se encuentra en las arquitecturas, en lugar de encontrarse en procesos o subprogramas. Es sensible a las señales que se encuentren a la derecha de la asignación.
32 SENTENCIAS CONCURRENTES Asignación a señal concurrente Ejemplo Asignación concurrente a<=b; Asignación secuencial equivalente process (b) begin a<=b; end process;
33 1. Lenguajes de descripción de hardware. VHDL 1.1. Lenguajes de descripción de hardware 1.2. VHDL Presentación del lenguaje VHDL Objetos, tipos de datos y operadores Sentencias secuenciales Sentencias concurrentes Sentencias estructurales Unidades básicas de diseño Descripción de máquinas de estado Test bench
34 SENTENCIAS ESTRUCTURALES Es el conjunto de sentencias dedicadas a la descripción de estructura del hardware. Son sentencias concurrentes, ya que se ejecutan en paralelo con cualquier otra sentencia concurrente de la descripción. Componentes Para poder usar un componente VHDL se debe: Declarar el componente Hacer referencia o copia del componente
35 Componentes Declaración del componente: component nombre_componente [generic (lista_generic);] [port (lista_puertos);] end component [nombre_componente]; La declaración del componente debe coincidir con la declaración de la entidad de dicho diseño: debe tener los mismos puertos, definidos del mismo tipo y dirección. Referencia o copia del componente: Es una sentencia recurrente que se ejecuta en paralelo con las demás sentencias concurrentes de la arquitectura. Cada copia o referencia a un componente se ejecutará cada vez que se produzca un evento en alguna de las señales conectadas a sus puertos de entrada o de entrada/salida. etiqueta_referencia: nombre_componente [generic map (lista_asociación);] [port map(lista_asociación);]
36 Matrices de componentes Declaración Generate : Es una sentencia recurrente que se ejecuta en paralelo con las demás sentencias concurrentes de la arquitectura. Se usa para describir estructuras repetitivas de componentes: matrices de componentes: architecture SUM16_ARCH of SUM16 is component FA port( A,B,CIN: in std_logic; S,COUT: out std_logic); end component; signal CARRY : std_logic_vector (16 downto 0); begin SUMA : for I in 0 to 15 generate CELL : FA port map (A16(I), B16(I), CARRY(I), S16(I), CARRY(I+1)); end generate SUMA; CARRY(0) <= '0'; OVF <= CARRY(16); end SUM16_ARCH;
37 1. Lenguajes de descripción de hardware. VHDL 1.1. Lenguajes de descripción de hardware 1.2. VHDL Presentación del lenguaje VHDL Objetos, tipos de datos y operadores Sentencias secuenciales Sentencias concurrentes Sentencias estructurales Unidades básicas de diseño Descripción de máquinas de estado Test bench
38 UNIDADES BÁSICAS DE DISEÑO Cinco tipos de unidades de diseño: La declaración de entidad (entity) La arquitectura de una entidad (architecture) La configuración (configuration) La declaración de un paquete (package declaration) El cuerpo del paquete (package body)
39 Entidad Declaración de entidad Define la interfaz del dispositivo con su entorno. Sintaxis: entity identificador is [genéricos] [puertos] [declaraciones] [begin sentencias] end [entity][identificador]; Ejemplo entity mux21 is port ( a : in std_logic; b : in std_logic; crtl : in std_logic z : out std_logic); a b c z
40 Arquitectura Define la funcionalidad de la entidad que representa. Describe un conjunto de operaciones sobre las entradas de la entidad que determinan el valor de las salidas en cada momento. Sintaxis architecture identificador of identificador_entidad is [declaraciones] begin [sentencias concurrentes] end [architecture][identificador];
41 Arquitectura: estilo algorítmico Define la funcionalidad del dispositivo mediante un algoritmo ejecutado secuencialmente. No se hace nunguna referencia a la estructura que se seguirá para implementar el algoritmo en hardware.
42 Arquitectura: estilo flujo de datos Refleja la funcionalidad de un dispositivo mediante un conjunto de ecuaciones ejecutadas concurrentemente, que determinan el flujo que van a seguir los datos entre módulos encargados de implementar las operaciones. Existe una correspondencia directa entre el código y su implementacion hardware.
43 Arquitectura: estilo estructural Consiste en definir la arquitectura como un conjunto de componentes interconectados mediante señales. No incluye ningún tipo de funcionalidad.
44 1. Lenguajes de descripción de hardware. VHDL 1.1. Lenguajes de descripción de hardware 1.2. VHDL Presentación del lenguaje VHDL Objetos, tipos de datos y operadores Sentencias secuenciales Sentencias concurrentes Sentencias estructurales Unidades básicas de diseño Descripción de máquinas de estado Test bench
45 DESCRIPCIÓN DE MÁQUINAS DE ESTADO Máquina de Moore: Et CIRC. COMB. ENTRADA BIESTABLES CIRC. COMB. SALIDA St Máquina de Mealy: Et CIRC. COMB. ENTRADA SALIDA BIESTABLES St Normalmente más compacta
46 DESCRIPCIÓN DE MÁQUINAS DE ESTADO Estilo explícito 1. La máquina de estado se describe utilizando: Un proceso combinacional para describir la función del próximo estado y las asignaciones de salida. Un proceso secuencial para describir las asignaciones sobre el registro de estados en la transición activa de la señal de reloj. entity FSM is port (reloj, reset: in std_logic; x1,... xn : in std_logic; z1,... zm : out std_logic); end FSM;
47 DESCRIPCIÓN DE MÁQUINAS DE ESTADO Estilo explícito e1 architecture e1 of FSM is type estados is (s0,... sp); signal estado: estados; signal nxt_estado: estados; begin process (estado, x1,... xn) begin case s0 => -- acciones del estado so: --asignación de est. próximo --asignaciones de salida case sp =>... end case; end process; process (reset, reloj) begin if (reset='0') then estado <=s0; elsif (relok'event and reloj ='1') then estado<=nxt_estado; end if; end process; end e1;
48 DESCRIPCIÓN DE MÁQUINAS DE ESTADO Ejemplo entity FSM is port( CLK, RESET, X Z end FSM; architecture E1 of FSM is : in std_logic; : out std_logic); type ESTADOS is (S0, S1, S2, S3); signal ESTADO, NXT_ESTADO: ESTADOS := S0; begin process (RESET, CLK) begin if RESET = '0' then ESTADO <= S0; elsif (CLK'event and CLK='1') then ESTADO <= NXT_ESTADO; end if; end process; process (ESTADO, X) begin case ESTADO is when S0 => Z <= '0'; if X='0' then NXT_ESTADO <= S1; else NXT_ESTADO <= S2; end if; when S1 => Z <= X; NXT_ESTADO <= S0; when S2 => Z <= '0'; if X='0' then NXT_ESTADO <= S1; else NXT_ESTADO <= S3; end if; when S3 => z <= '1'; if X='1' then NXT_ESTADO <= S1; end if; end case; end process; end E1;
49 DESCRIPCIÓN DE MÁQUINAS DE ESTADO Estilo explícito 2 Se describe la máquina de estados utilizando un único proceso secuencial con una sentencia de espera de reloj. Todas las acciones tienen lugar en sincronía con la señal de reloj, por lo que sólo es posible describir máquinas de Moore. architecture e2 of FSM is type estados is (s0,... sp); signal estado: estados; begin process begin wait until reloj = '1'; if (reset='0') then estado:= s0; else case estado is when s0=> -- acciones del estado s transición de estado y -- asignaciones de salida when sp =>... end case; end if; end process; end e2;
50 DESCRIPCIÓN DE MÁQUINAS DE ESTADO Estilo explícito e2 entity FSM is port( CLK, RESET, X Z std_logic); end FSM; architecture E2 offsm is : in std_logic; : out type ESTADOS is (S0, S1, S2, S3); signal ESTADO: ESTADOS := S0; begin process begin wait until CLK ='1'; if RESET ='0' then ESTADO <= S0; else case ESTADO is when S0 => Z <= '0'; if X='0' then ESTADO <= S1; else ESTADO <= S2; end if; when S1 => Z <= X; ESTADO <= S0; when S2 => Z <= '0'; if X='0' then ESTADO <= S1; else ESTADO <= S3; end if; when S3 => z <= '1'; if X='1' then ESTADO <= S1; end if; end case; end if; end process; end E2;
51 DESCRIPCIÓN DE MÁQUINAS DE ESTADO Estilo explícito 3 Se describe utilizando un único proceso secuencial con las señales de reloj, reset, registros de estado y entradas en la lista de sensibilidad. architecture e3 of Fsm is type estados is (s0,... sp); signal estado: estados := s0; begin process (reset, estado, x1,... xn) begin... --lógica combinatorial if (reset ='0') then estado <= s0 else case estado is when s0=> -- acciones del estado s0; -- transición de estado -- asignaciones a registro de entrada when sp=>... end case; end if;... end process; end e3;
52 DESCRIPCIÓN DE MÁQUINAS DE ESTADO Ejemplo entity FSM is port( CLK, RESET, X Z end FSM; architecture E3 offsm is type ESTADOS is (S0, S1, S2, S3); signal ESTADO: ESTADOS := S0; begin process (RESET, ESTADO, CLK) begin case ESTADO is when S1 => Z<= X; when S3 => Z<= '1'; when others => Z<='0'; end case; : in std_logic; : out std_logic); ifreset = '0' then ESTADO <= S0; elsif CLK'event and CLK = '1' then case ESTADO is when S0 => ifx='0' then ESTADO <= S1; else ESTADO <= S2; end if; when S1 => ESTADO <= s0; when S2 => ifx='0' then ESTADO <= S1; else ESTADO <= S3; end if; when S3 => ifx='1' then ESTADO <= S1; end if; end case; end if; end process; end E3;
53 DESCRIPCIÓN DE MÁQUINAS DE ESTADO Estilo implícito Se describe la máquina de estados utilizando un proceso con varias sentencias de espera de la señal de reloj. Recibe el nombre de estilo descriptivo implícito debido a que además de los P estados explícitos en la declaración del tipo "estados" de la señal de estado, la descripción incluye los N estados introducidos por las sentencias de espera. El número de estados total de la máquina es N*P. Sólo es posible describir máquinas de Moore. architecture implicita of FSM is type estados is (s0,... sp); signal estado: estados :=s0; begin process begin wait until reloj ='1';... wait until reloj='1';... end process; end implicita;
54 DESCRIPCIÓN DE MÁQUINAS DE ESTADO Ejemplo entity FSM is port( CLK, RESET, X Z end FSM; architecture E4 offsm is -- implicita begin process begin -- S0 wait until CLK ='1'; z <= '0'; if X='1' then wait until CLK = '1'; -- S2 Z<='0'; if X='1' then wait until CLK ='1'; : in std_logic; : out std_logic); -- S3 Z<='1'; while X = '0' loop wait until CLK = '1'; Z <= '1'; end loop; end if; end if; -- S1 wait until CLK = '1'; Z <= X; end process; end E4;
55 DESCRIPCIÓN DE MÁQUINAS DE ESTADO Para el ejemplo anterior, el diagrama de estados sería: X=0 S0 Z= 0 X=0 S3 Z= 1 X=1 X=1 S1 Z=X X=1 X=0 S2 Z= 0
56 OTROS TEMAS IMPORTANTES Simulación de retardo de transporte e inercial (AFTER, TRANSPORT): Inercial: library IEEE; USE IEEE.std_logic_1164.ALL; ENTITY buf IS PORT ( a : IN std_logic; b : OUT std_logic); END buf; ARCHITECTURE buf OF buf IS BEGIN b <= a AFTER 20 ns; END buf; Transporte: library IEEE; USE IEEE.std_logic_1164.ALL; ENTITY delay_line IS PORT ( a : IN std_logic; b : OUT std_logic); END buf; ARCHITECTURE delay_line OF delay_line IS BEGIN b <= TRANSPORT a AFTER 20 ns; END buf;
57 OTROS TEMAS IMPORTANTES Sentencia de espera (WAIT), tres usos: WAIT FOR: una determinada cantidad de tiempo... WAIT FOR 10 ns;... WAIT ON: cambios en la señal... WAIT ON a, b;... WAIT UNTIL: una expresión sea verdadera... WAIT UNTIL clk= 1 and clk event;...
58 OTROS TEMAS IMPORTANTES TextIO: Input/Output de texto:... PROCESS VARIABLE linea : line; FILE fichout : TEXT IS OUT xxx.txt"; BEGIN... WRITE(linea, A = ); WRITE(linea, A); - - Salida por pantalla WRITELINE(OUTPUT, linea); - - Salida por fichero WRITELINE(fichout, linea);... END PROCESS;... PROCESS FILE fichin : TEXT IS IN yyy.txt"; VARIABLE linea : line; BEGIN... READLINE(fichin, linea); READ(linea, A);... END PROCESS;...
59 1. Lenguajes de descripción de hardware. VHDL 1.1. Lenguajes de descripción de hardware 1.2. VHDL Presentación del lenguaje VHDL Objetos, tipos de datos y operadores Sentencias secuenciales Sentencias concurrentes Sentencias estructurales Unidades básicas de diseño Descripción de máquinas de estado Test bench
60 TEST BENCH Un test bench se usa para verificar la funcionalidad del diseño. El test bench esta en el nivel más alto de la jerarquía del diseño. El test bench crea una instancia (una copia) del DUT, lo estimula y comprueba los resultados. La única característica que diferencia el test bench de un diseño de un circuito es que no tiene entradas y salidas, que genera internamente y secuencialmente una serie de señales con las que estimula la instancia del circuito que está en prueba.
61 TEST BENCH library ieee ; use ieee.std_logic_1164. all; use std.textio.all; use ieee.std_logic_textio.all; -- El test bench es una caja negra sin entradas ni salidas que funciona de forma autonoma ENTITY FA_TB is END FA_TB ; ARCHITECTURE FA_TB_arch of FA_TB IS -- Declaración de señales, variables, componentes, funciones, procedimientos que se usaran COMPONENT FA IS port( A: IN std_logic; B: IN std_logic; CIN: IN std_logic; S: OUT std_logic; COUT: OUT std_logic ); END COMPONENT ; CONSTANT period : time := 50 ns ; SIGNAL A_IN, B_IN, CIN_IN, COUT_OUT, S_OUT, CLOCK : std_logic := '0' ; SIGNAL done : BOOLEAN := FALSE ; SHARED VARIABLE Cycle : NATURAL := 0 ; PROCEDURE PrintStatus IS VARIABLE lout : line ; BEGIN WRITE(lout, Cycle); WRITE(lout, " "); WRITE(lout, CLOCK); WRITE(lout, " A = ") ; WRITE(lout, A_IN) ; WRITE(lout, " B = ") ; WRITE(lout, B_IN) ; WRITE(lout, " CIN = ") ; WRITE(lout, CIN_IN) ; WRITE(lout, " COUT = ") ; WRITE(lout, COUT_OUT) ; WRITE(lout, " S = ") ; WRITE(lout, S_OUT) ; --Por defecto, la salida estandar es la pantalla WRITELINE(OUTPUT, lout) ; END PrintStatus ; BEGIN -- En todo momento (Concurrente) se asignan las señales a las entradas/salidas del DFF U1: FA PORT MAP( A => A_IN, B => B_IN, CIN => CIN_IN, S => S_OUT, COUT => COUT_OUT) ; ClkProcess: PROCESS(done, CLOCK) -- Proceso (Concurrente) que va marcando el reloj con un periodo fijado por period BEGIN IF (NOT done) THEN IF (CLOCK = '1') THEN Cycle := Cycle + 1 ; END IF ; CLOCK <= NOT CLOCK after period / 2 ; END IF ; END PROCESS ; TestBench: PROCESS -- Proceso Concurrente que fija los valores de entrada para el test BEGIN wait until (CLOCK = '0') ; A_IN <= '0'; B_IN <= '1'; CIN_IN <= '0'; wait for period * 1 ; CIN_IN <= '1'; wait for period * 1 ; done <= TRUE ; WAIT ; END PROCESS ; Monitor: PROCESS FILE fichout : TEXT IS OUT "FA.txt"; VARIABLE fout : line; BEGIN if done = TRUE then wait; else WAIT FOR 5 ns; PrintStatus ; end if; END PROCESS ; END FA_TB_arch ;
62 VHDL PARA SINTESIS Proceso: descripción disminuyendo el nivel de abstracción hasta llegar a descripciones puramente estructurales Cualquier descripción VHDL es sintetizable: - No tiene por qué ser la síntesis óptima. - La complejidad del circuito dependerá de cómo se haga la descripción. Mapeado tecnológico. Descripción de los componentes de una determinada librería que representa una determinada tecnología con la que se realizará el circuito físico.
63 VHDL PARA SINTESIS Restricciones de la descripción: cómo la herramienta de síntesis interpreta las instrucciones VHDL? Siempre que se pueda hay que facilitar el trabajo al sintetizador. Los fabricantes dan ciertas recomendaciones para las descripciones: -Evitar cláusulas temporales -Los sintetizadores ignoran/prohiben los retardos en la asignación -No se puede asignar dos valores a una misma señal en la misma sentencia -Identificar cada puerta con claridad -Evitar sentencias de espera WAIT. Aunque no esta prohibido pero algunos sintetizadores tienen dificultades. Es mejor utilizar listas de sensibilidad
64 VHDL PARA SINTESIS Restricciones de la descripción: -Señales de reloj. -Sólo se permite una señal de reloj por proceso -Se debe especificarse claramente el flanco de reloj (clk= 1 and clk event) -Esta condición sólo puede ponerse una vez en el proceso -No se puede poner else en el if en el que se usó la condición -Utilizar CASE mejor que IF anidados. Las herramientas los sintetizan mejor. -Utilizar el estilo indicado para las máquinas de estado. -En sentencias condicionales para descripción combinacional, es obligatorio poner todos los casos de la condición (else, when others..)
DISEÑO DE CIRCUITOS SECUENCIALES
Sistemas Electrónicos y Automáticos PRÁCTICA 3 DISEÑO DE CIRCUITOS SECUENCIALES 1. OBJETIVO DE LA PRÁCTICA. El objetivo de la presente práctica consiste en modelar el comportamiento de un sistema secuencial
Más detallesVHDL. Carlos Andrés Luna Vázquez. Lección 5. Sentencias concurrentes
VHDL Carlos Andrés Luna Vázquez Lección 5 Sentencias concurrentes Índice Introducción Niveles de abstracción del modelado con HDL Estilos descriptivos del modelado con HDL Ventajas y limitaciones de los
Más detallesSISTEMAS DIGITALES VHDL
SD SISTEMAS DIGITALES VHDL Fredy Hernán Riascos Campiño Practica 1a: Implementación de un incrementador: Se he de implementar un modulo incrementador (INC), Este modulo no es mas que un sumador y un registro
Más detallesPRÁCTICA: LENGUAJE VHDL
PRÁCTICA: LENGUAJE Introducción Los lenguajes permiten manejar mejor grandes tamaños Los lenguajes son más flexibles que las tablas Los lenguajes son légibles por las máquinas más fácilmente que los gráficos
Más detallesPARTE I. TÉCNICAS DE DISEÑO ELECTRÓNICO MEDIANTE LENGUAJES DE DESCRIPCIÓN HARDWARE
PARTE I. TÉCNICAS DE DISEÑO ELECTRÓNICO MEDIANTE LENGUAJES DE DESCRIPCIÓN HARDWARE TEMA 3. Modelos de sistemas con VHDL Curso 05/06 1 TEMA 3. Modelos de sistemas digitales 3.1 Sistemas combinacionales
Más detallesSesión 1: Introducción al lenguaje VHDL. S1 1 Laboratorio de Estructura de Computadores Curso 04 / 05
Sesión 1: Introducción al lenguaje VHDL S1 1 AREAS DE APLICACION DE VHDL Síntesis i1 suma Documentación Diagnosis de Fallos i1 i2 - Circuito semisumador Componentes: puerta AND puerta OR puerta XOR......
Más detalles4. SUMADORES EN BINARIO PURO (I)
TEMA 3: SISTEMAS ARITMÉTICOS Introducción y objetivos (3). Representación y codificación de la información (4-7) 2. Sistemas numéricos posicionales. Binario, hexadecimal, octal, y BCD. (8-33) 3. Números
Más detallesVHDL. Lenguaje de descripción hardware Estructura Básica de diseño
VHDL. Lenguaje de descripción hardware Estructura Básica de diseño 2007 A.G.O. All Rights Reserved Estructura de un diseño en VHDL LIBRARY declaraciones VHDL estructura básica ENTITY caja negra ARCHITECTURE
Más detallesUNIVERSIDAD CARLOS III DE MADRID. Ejercicios de VHDL. Circuitos Integrados y Microelectrónica. Luis Entrena. Celia López.
UNIVERSIDAD CARLOS III DE MADRID Ejercicios de VHDL Circuitos Integrados y Microelectrónica Luis Entrena Celia López Mario García Enrique San Millán Marta Portela Almudena Lindoso Problema 1 Se pretende
Más detallesSINTAXIS BÁSICA DEL VHDL SIMPLIFICADO
SINTAXIS BÁSICA DEL VHDL SIMPLIFICADO ENTIDAD: ARQUITECTURA: ENTITY IS PORT : : END ; = IN / OUT / IN OUT ARCHITECTURE
Más detallesRecursos y Metodologías. Función. Programas
Recursos y Metodologías Sistema Digital Estructura { + Función Descripción Datos R. Cómputo R. Almacenamiento R. Conexionado { Comandos Implementación Full-custom Semi-custom Gate Arrays Programas Lenguaje
Más detallesTema 3 - Modelado con HDL a nivel RTL
- Modelado con HDL a nivel RTL Eduardo Rodríguez Martínez Departamento de Electrónica División de Ciencias Básicas e Ingeniería Universidad Autónoma Metropolitana Unidad Azcapotzalco Email: erm@correo.azc.uam.mx
Más detallesABSTRACCIONES DE UN SISTEMA DIGITAL
ABSTRACCIONES DE UN SISTEMA DIGITAL T O P D O W N FUNCIONAL ARQUITECTURAL FÍSICO Algoritmos y funciones que indican la relación E/S Componentes funcionales interconectados que definen la arquitectura Materialización
Más detallesVHDL: Código Secuencial. Arquitectura del Computador 2017
VHDL: Código Secuencial Arquitectura del Computador 2017 PROCESSES, FUNCTIONS y PROCEDURES Solo se ejecuta secuencialmente el código que se encuentra dentro de PROCESSES, FUNCTIONS o PROCEDURES. Cualquiera
Más detallesCapítulo 2: LENGUAJES DE DESCRIPCIÓN DE HARDWARE: VHDL
Capítulo 2: LENGUAJES DE DESCRIPCIÓN DE HARDWARE: VHDL Generalidades Ventajas e inconvenientes de los HDL s Características generales del VHDL Modelo del Hw Introducción al lenguaje VHDL Lenguajes de descripción
Más detallesJulio. [ Programación en VHDL ] Guía rápida. [ h t t p : / / w w w. o p e n b o x e r m b. c o m / a s i g n a t u r a s / d s d.
Julio 09 [ Programación en VHDL ] Guía rápida [ h t t p : / / w w w. o p e n b o x e r. 2 6 0 m b. c o m / a s i g n a t u r a s / d s d. h t m l ] Programación en VHDL Guia rapida [ INDICE ] I. Programación
Más detallesSimulación avanzada con TestBench en HDL. Ing. Andrés Miguel Airabella. Ing. Facundo Aguilera.
Simulación avanzada con Ing. Andrés Miguel Airabella. Ing. Facundo Aguilera. Desc. del Problema Descripción HDL Synthesis Place and Route / Fit 2 - Generalidades - Generación de Estímulos Agenda - Asignaciones
Más detallesMAQUINA DE ESTADO FINITO (FSM) Autómata finito
MAQUINA DE ESTADO FINITO (FSM) Autómata finito Modelo de Mealy E Lógica del próximo estado Q t+1 M E M O R I A Q t Lógica de salida S Ck Q t+1 = f (E, Q t ) S = g (E, Q t ) Modelo de Moore E Lógica del
Más detallesMAQUINA DE ESTADO FINITO (FSM) Autómata finito
MAQUINA DE ESTADO FINITO (FSM) Autómata finito Modelo de Mealy E Lógica del próximo estado Q t+1 M E M O R I A Q t Lógica de salida S Ck Q t+1 = f (E, Q t ) S = g (E, Q t ) Modelo de Moore E Lógica del
Más detallesTema 2 Descripción de VHDL (2/2)
TECNOLOGÍA DE COMPUTADORES Tema 2 Descripción de VHDL (2/2) Agustín Álvarez Marquina Tipos de sentencias en VHDL Sentencias concurrentes PROCESS Asignación de señal BLOCK Llamadas a procedimientos Llamadas
Más detallesIntroducción al VHDL
Introducción al VHDL Curso de Diseño de Circuitos y Sistemas Electrónicos - Grupo 43 Giancarlo Sportelli Biomedical Image Technologies - Departamento de Ingeniería Electrónica E.T.S.I. de Telecomunicación
Más detallesÍndice. VHDL Lección 2.9 Máquinas de Estados Finitos (FSM) 1
Índice Introducción Niveles de abstracción del modelado con HDL Estilos descriptivos del modelado con HDL Ventajas y limitaciones de los HDLs El lenguaje VHDL Objetos, tipos de datos y operadores Unidades
Más detallesLABORATORIO DE CIRCUITOS DIGITALES (2005-II) SEGUNDA CLASE DE VHDL
LABORATORIO DE CIRCUITOS DIGITALES (25-II) SEGUNDA CLASE DE VHDL TIPOS y MODOS DE DATOS DESCRIPCIÓN CONCURRENTE Sentencias de asignación: with select, when - else DESCRIPCIÓN COMPORTAMENTAL Procesos asíncronos
Más detallesPracticas tuteladas VHDL (curso 04-05)
Practicas tuteladas VHDL (curso 4-5) Tecnología de computadores. Prácticas de VHDL (Curso 3/4) PRÁCTICA-2: ATRIBUTOS DE SEÑALES ELEMENTOS DE MEMORIA Y REGISTROS OBJETIVOS: Utilizar el paquete de datos
Más detallesLENGUAJE VHDL. Ing. Wilmer Naranjo 1
LENGUAJE VHDL Ing. Wilmer Naranjo 1 DESCRIPCIÓN EN VHDL Al inicio de los 80 s diversos grupos de investigadores empiezan a crear y desarrollar los llamados "lenguajes de descripción de hardware" cada uno
Más detallesIntroducción al VHDL. VHDL orientado a la síntesis de circuitos en Dispositivo Lógicos Programables
Introducción al VHDL VHDL orientado a la síntesis de circuitos en Dispositivo Lógicos Programables Introducción Lenguaje de descripción de dispositivos Hardware. Diferencias con lenguajes de programación:
Más detallesTema 4 - Bloques combinacionales
- Bloques combinacionales Eduardo Rodríguez Martínez Departamento de Electrónica División de Ciencias Básicas e Ingeniería Universidad Autónoma Metropolitana Unidad Azcapotzalco Email: erm@correo.azc.uam.mx
Más detallesINFORMÁTICA INDUSTRIAL. 3º INGENIERÍA TÉCNICA ELECTRÓNICA TRABAJO TUTORADO DE VHDL. Primer Cuatrimestre Curso 2005/2006.
INFORMÁTICA INDUSTRIAL. 3º INGENIERÍA TÉCNICA ELECTRÓNICA TRABAJO TUTORADO DE VHDL. Primer Cuatrimestre Curso 2005/2006. OBJETIVOS: Con este proyecto se pretende que el alumno practique y afiance los conocimientos
Más detallesVHDL. Carlos Andrés Luna Vázquez. Lección 10 Problemas
Carlos Andrés Luna Vázquez Lección 10 Problemas 1 Índice Introducción Niveles de abstracción del modelado con HDL Estilos descriptivos del modelado con HDL Ventajas y limitaciones de los HDLs El lenguaje
Más detallesSesión 3: Modelo temporal: VHDL concurrente. S3 1 Laboratorio de Estructura de Computadores Curso 04 / 05
Sesión 3: Modelo temporal: VHDL concurrente S3 1 Dominios secuencial y concurrente en VHDL ENTITY dispositivo IS PORT(pe1,...:IN tipoe; ps1,...:out tipos; pes1,...:inout tipoes END dispositivo ARCHITECTURE
Más detallesSistemas Electrónicos Digitales. PRACTICA nº 8
PRACTICA nº 8 Diseño de subsistemas aritméticos. Síntesis sobre dispositivos FPGA. Síntesis estructural a partir de la descripción VHDL a nivel RTL de la estructura. Síntesis a partir de la descripción
Más detalles+ Máquinas de Estado Finitas
+ Máquinas de Estado Finitas Las máquinas de estado pueden ser: SÍNCRONAS: Necesitan de la intervención de un pulso de reloj. Si la entrada participa también en la salida se denomina Máquina de estado
Más detallesPráctica I Modelado y simulación de una máquina expendedora de refrescos
Práctica I Modelado y simulación de una máquina expendedora de refrescos Departamento de Ingeniería Electrónica de Sistemas Informáticos y Automática 2 1.1. Objetivos. En esta práctica vamos a modelar
Más detallesSesión 4: Sentencias concurrentes y paquetes. S4 1 Laboratorio de Estructura de Computadores Curso 04 / 05
Sesión 4: Sentencias concurrentes y paquetes S4 1 Sentencias Concurrentes La principal sentencia concurrente de VHDL es el proceso (process), que define los límites de un dominio secuencial. Las restantes
Más detallesElectrónica Digital Departamento de Electrónica VHDL. Bioingeniería Facultad de Ingeniería - UNER
Electrónica Digital Departamento de Electrónica VHDL Bioingeniería Facultad de Ingeniería - UNER VHDL VHSIC Hardware Design Language VHSIC Very High Speed Integrated Circuits Verilog Handel C Celóxica
Más detallesLenguaje de descripción de Hardware VHSIC
Lenguaje de descripción de Hardware VHSIC VHDL Laboratorio de diseño digital Ingeniería Electrónica 4/17/2007 1 Contenido Estilos de diseño Lenguaje VHDL: Evolución y características Objetos VHDL Modelo
Más detallesSistemas Digitales - Examen temas 1, 2 y 3 - (6 de Abril 2016)
Sistemas Digitales - Examen temas, 2 y 3 - (6 de Abril 206) EXAMEN RESUELTO Problema-. Modelo-A (Calificación 0 puntos) Se quiere diseñar un circuito digital, tal que, dado un número en código octal de
Más detallesVHDL Y FPGA LENGUAJE VHDL
VHDL Y FPGA LENGUAJE VHDL VHDL es un lenguaje de alto nivel que describe todas las características de circuitos electrónicos digitales de variada complejidad. El significado de las siglas VHDL es V de
Más detallesDiseño Lógico I Facultad de Ciencias Exactas y Tecnología UNT. LENGUAJES DE DESCRIPCIÓN DE HARDWARE
LENGUAJES DE DESCRIPCIÓN DE HARDWARE METODOS PARA DESCRIBIR CIRCUITOS LÓGICOS Descripción verbal Tablas de verdad Diagrama esquemático Expresiones del álgebra booleana Diagrama de tiempos Lenguajes de
Más detallesPlanificaciones Sistemas Digitales. Docente responsable: ALVAREZ NICOLAS. 1 de 5
Planificaciones 8641 - Sistemas Digitales Docente responsable: ALVAREZ NICOLAS 1 de 5 OBJETIVOS El objetivo de la materia es aprender a diseñar arquitecturas digitales utilizando como herramienta los lenguajes
Más detallesTema 2. Funciones Lógicas. Algebra de Conmutación. Minimización de funciones Lógicas. Introducción al VHDL.
Tema 2. Funciones Lógicas Algebra de Conmutación. Minimización de funciones Lógicas. Introducción al VHDL. Introducción al VHDL Definición de las estructuras básicas. Entidades: genéricos y puertos. Tipos
Más detallesIntroducción a VHDL. Por: Carlos A. Fajardo UIS - Sistemas Digitales
Introducción a VHDL Por: Carlos A. Fajardo cafajar@uis.edu.co Lenguajes de Descripción de Hardware Netlist: conjunto de instrucciones que indican el interconexionado entre los componentes de un diseño
Más detallesSÍNTESIS DE CIRCUITOS DIGITALES CON VHDL.
SÍNTESIS DE CIRCUITOS DIGITALES CON VHDL. 1 Proceso automático, realizado por una herramienta software, para la generación de una representación con puertas lógicas de una descripción VHDL. Las herramientas
Más detallesObjetos de VHDL.! Un objeto en VHDL es un elemento que contiene. un valor de tipo específico de dato
Objetos de VHDL! Un objeto en VHDL es un elemento que contiene un valor de tipo específico de dato Objetos que se pueden manipular en VHDL y sus tipos -3 clases principales de objetos: SEÑALES: similares
Más detallesSistemas Electrónicos Digitales. PRACTICA nº 3
PRACTICA nº 3 Diseño top-down estructural y síntesis de un procesador dedicado elemental para resolver el cálculo del máximo común divisor (MCD) de dos números sin signo Objetivos: Análisis, diseño y síntesis
Más detallesPráctica 6. Diseño Lógico Digital mediante VHDL
Práctica 6. Diseño Lógico Digital mediante VHDL 6.1. Objetivos Aprender a diseñar circuitos lógicos digitales mediante el uso de lenguajes de descripción de hardware como VHDL. 6.2. Introducción al VHDL
Más detallesTEMA IV: SÍNTESIS HARDWARE
TEMA IV: SÍNTES HARDWARE Especificaciones Formato intermedio Partición HW/SW LA SÍNTES HARDWARE ES LA TAREA DE PASAR DE UN DOMINIO DE ABSTRACCIÓN A OTRO COMPORTAMIENTO -> ESTRUCTURA Código Implementación
Más detallesPractica 9 Estilos de codificar a estados FCE
Practica 9 Estilos de codificar a estados FCE2015-04-07 Parte 1. Diagramas de estado con VHDL Parte2. Cartas ASM con VHDL Introducción En el diseño de sistemas digitales, una parte importante es poder
Más detallesObjetos de VHDL. Un objeto en VHDL es un elemento que contiene un valor de tipo específico de dato
Objetos de VHDL Un objeto en VHDL es un elemento que contiene un valor de tipo específico de dato Objetos que se pueden manipular en VHDL y sus tipos -3 clases principales de objetos: SEÑALES: similares
Más detalles4.5. Procedimiento de síntesis
4.5. Procedimiento de síntesis En este apartado se resumen los pasos a seguir para completar la implementación de un sistema digital en un dispositivo programable: descripción del sistema mediante uno
Más detallesTitulación: Ingeniería Informática Asignatura: Fundamentos de Computadores. Bloque 3: Sistemas secuenciales Tema 9: Módulos secuenciales básicos
Titulación: Ingeniería Informática Asignatura: Fundamentos de Computadores Bloque 3: Sistemas secuenciales Tema 9: Módulos secuenciales básicos Pablo Huerta Pellitero Luis Rincón Córcoles ÍNDICE Bibliografía
Más detallesPráctica I.- Introducción a los Sistemas Secuenciales
Práctica I.- Introducción a los Sistemas Secuenciales 1.1.- Objetivos. El objetivo de esta práctica consiste en consolidar las diferencias entre sistemas combinacionales y secuenciales 1.2.- Problema.
Más detalles5.1. Introducción a los sistemas digitales
5.. Introducción a los sistemas digitales 5... Sistemas digitales [ Wakerly.2 pág. 3] 5..2. Puertas y señales lógicas [ Wakerly.3 pág. 6] 5..3. Representación de la lógica digital [ Wakerly. pág. 9] 5..4.
Más detallesTema 2. Funciones Lógicas. Algebra de Conmutación. Representación de circuitos digitales. Minimización de funciones lógicas.
Tema 2. Funciones Lógicas Algebra de Conmutación. Representación de circuitos digitales. Minimización de funciones lógicas. Representación de Circuitos Digitales Representación esquemática. Representación
Más detallesGUÍA PRÁCTICA DEL SOFTWARE ACTIVE-HDL.
24/9/2013 ÁREA DE TECNOLOGÍA ELECTRÓNICA UBU GUÍA PRÁCTICA DEL SOFTWARE ACTIVE-HDL. Manual de Inicio Miguel Ángel Lozano Pérez Contenido 1.1 GUÍA DE SOFTWARE... 3 1.1.1 Primer paso: crear un diseño nuevo...
Más detallesTutorial de ModelSim PE Student Edition
Tutorial de ModelSim PE Student Edition Instalación Ir a http://portal.model.com/modelsim/downloads/license_agreement_form_gen.asp Rellenar los datos y selecionar Request Download Seleccionar el enlace
Más detallesLenguaje descripción de hardware: VHDL
Lenguaje descripción de hardware: VHDL Generalidades A partir del desarrollo de circuitos Integrados Digitales programables con una gran cantidad de componentes lógicos y la necesidad de sistema digitales
Más detallesINGENIERÍA DE COMPUTADORES III. Solución al examen de Septiembre 2013
Solución al examen de Septiembre 2013 PREGUNTA 1 (2 puntos) Tomando como base el siguiente código VHDL, dibuje el cronograma de evolución de las señales clk, x, a, b, c e y entre los instantes 0 y 1000
Más detallesTutorial 2: Pasar de diagrama ASM a un circuito
Tutorial 2: Pasar de diagrama ASM a un circuito Introducción En este segundo tutorial veremos cómo transformar nuestros diagramas ASM en circuitos que puedan ser implementados utilizando la placa DEO.
Más detallesPractica No. 5 Diseño de un Multiplicador
Practica No. 5 Diseño de un Multiplicador Objetivo: Diseñar un módulo de multiplicación utilizando diferentes métodos, entender las ventajas y desventajas de cada uno de ellos. Aprender a usar procesos
Más detalles2. Sumadores. Diagrama. Donde a y b son los bits a sumar, S el. resultado de la suma y C el acarreo generado. b EB. Circuito. Tabla de verdad.
2. Sumadores Los sumadores son cirtuitos muy utilizados en muchos tipos de sistemas digitales en los que se procesan datos numéricos. Para comprender su diseño y funcionamiento se parte del diseño de un
Más detallesSistemas Electrónicos Digitales Curso de adaptación al Grado
Práctica Práctica 2 Sistemas Electrónicos Digitales Curso de adaptación al Grado Sistemas combinacionales con VHDL Universidad de Alicante Ángel Grediaga 2 Índice INTRODUCCIÓN... 3 2 CIRCUITOS COMBINACIONALES...
Más detallesVI. Especificación del Comportamiento
VI. Especificación del Comportamiento 1 Introducción El objetivo de un sistema electrónico es transformar datos de entradas en resultados como salidas, esta clase de actividad es conocida como Comportamiento
Más detallesOperadores y atributos en VHDL [1]
Operadores y atributos en VHDL [1] Sistemas Digitales Avanzados Universidad Técnica Particular de Loja Prof: Diego Barragán Guerrero Oct. 2014 - Feb. 2015 Sistemas Digitales Avanzados (UTPL) IET Oct. 2014
Más detallesIntroducción a VHDL. Por: Carlos A. Fajardo
Introducción a VHDL Por: Carlos A. Fajardo cafajar@uis.edu.co Actualizado 11/11/2015 Lenguajes de Descripción de Hardware Netlist: conjunto de instrucciones que indican el interconexionado entre los componentes
Más detallesAsignatura: Tecnología de Computadores. Bloque 1: Introducción Tema 3: Introducción a los lenguajes de descripción de hardware
Titulación: ió Grado en Ingeniería de Computadores Asignatura: Tecnología de Computadores Bloque 1: Introducción Tema 3: Introducción a los lenguajes de descripción de hardware Pablo Huerta Pellitero e
Más detallesLaboratorio de Arquitectura de Computadoras
Laboratorio de Arquitectura de Computadoras Estándar IEEE 1164 de VHDL Oscar Alvarado Nava oan@azc.uam.mx Departamento de Electrónica División de Ciencias Básicas e Ingeniería Universidad Autónoma Metropolitana,
Más detallesSumadores. Tipos de sumadores: Half-adder. Full-Adder. Carry-Look-Ahead. Carry-select.
Sumadores En electrónica un sumador es un circuito lógico que calcula la operación suma. En los computadores modernos se encuentra en lo que se denomina Unidad aritmético lógica (ALU). Generalmente realizan
Más detallesDiseño electrónico digital integrado: Back to basics. Sep-2011 F.Barbero Escuela Politécnica Superior - Universidad Autónoma de Madrid
Diseño electrónico digital integrado: Back to basics Sep-2011 F.Barbero Escuela Politécnica Superior - Universidad Autónoma de Madrid Flip-flop D con Reset Asíncrono Captura un dato con el flanco de reloj
Más detallesTutorial de VHDL: Contadores y Simulación
Tutorial de VHDL: Contadores y Simulación Importante: -Verifique la instalación del Webpack 6.0 y el Modelsim XE 6.0 SE. Ambos programas se pueden bajar desde www.xilinx.com. -Verifique también la licencia
Más detallesPractica No. 8 Introducción a las Máquinas de Estados. 1. En la figura 1 se muestra el comportamiento de un robot que evade obstáculos.
Practica No. 8 Introducción a las Máquinas de Estados Objetivo: Familiarizar al alumno en el conocimiento de los algoritmos de las máquinas de estados. Desarrollo: Para cada uno de los siguientes apartados,
Más detallesLABORATORIO DE CIRCUITOS DIGITALES (2005-II) QUINTA CLASE DE VHDL
LABORATORIO DE CIRCUITOS DIGITALES (2005-II) QUINTA CLASE DE VHDL MÁQUINAS DE ESTADO FINITAS (FSMs) Máquinas de Moore Máquinas de Mealy MÁQUINAS DE ESTADOS FINITAS (FSMs) Tipos: Máquina de Moore: Las salidas
Más detallesVHDL. Lenguaje de descripción hardware Introducción e historia
VHDL. Lenguaje de descripción hardware Introducción e historia 2007 A.G.O. All Rights Reserved s descriptivos y niveles de abstracción s descriptivos: Comportamiento Se realiza la función sin información
Más detallesSimulación y Síntesis con VHDL
Simulación y Síntesis con VHDL Diseño de Computadores: Síntesis Lógica Apuntes de Prácticas sobre Diseño y Simulación con VHDL empleando el entorno de XILINX: ISE Manuel J. Bellido Octubre 2012 1 Contenidos
Más detallesII. Unidades de Diseño en VHDL
II. Unidades de Diseño en VHDL 1 Representaciones en VHDL Cualquier sistema debe poder comunicarse con su ambiente... INTERFAZ CUERPO I / 0 Sistema 2 Un sistema sin interfaz es INÚTIL. La Interfaz INTERFAZ
Más detallesDESCRIPCIÓN DE CIRCUITOS DIGITALES
DESCRIPCIÓN DE CIRCUITOS DIGITALES Circuitos combinacionales Circuitos secuenciales Organización del diseño. Diseño genérico Operaciones iterativas Autores: Luis Entrena, Celia López, Mario García, Enrique
Más detallesPractica No. 1 Circuitos Secuenciales
Practica No. 1 Circuitos Secuenciales Objetivo: Conocer la estructura y características de la tarjeta de dispositivos lógicos programables TerasIC proporcionada a los alumnos, el software de operación
Más detallesIntroducción a PL/SQL
Introducción a PL/SQL Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla noviembre 2011 Objetivos de este tema Conocer PL/SQL. PL/SQL
Más detallesDESCRIPCIÓN DE CIRCUITOS DIGITALES
DESCRIPCIÓN DE CIRCUITOS DIGITALES Circuitos combinacionales Circuitos secuenciales Organización del diseño. Diseño genérico Operaciones iterativas Autores: Celia López, Luis Entrena, Mario García, Enrique
Más detallesPráctica 7. Diseño en VHDL de un modulador PPM
Práctica 7. Diseño en VHDL de un modulador PPM 7.1. Objetivos Diseñar un sistema de modulación por posición de pulso (PPM) mediante VHDL e implementarlo en una FPGA. Aprender a utilizar las diferentes
Más detallesTipos de datos en VHDL
Tipos de datos en VHDL Sistemas Digitales Avanzados Universidad Técnica Particular de Loja Prof: Diego Barragán Guerrero Oct. 2014 - Feb. 2015 Sistemas Digitales Avanzados (UTPL) IET Oct. 2014 - Feb. 2015
Más detallesDISEÑO DE PROCESADORES DEDICADOS. Práctica 6 LCD de Propósito General
DISEÑO DE PROCESADORES DEDICADOS Instituto Politécnico Nacional Práctica 6 LCD de Propósito General Campo 1: Datos Personales. Centro de Innovación y Desarrollo Tecnológico en Cómputo CIDETEC Mayo 2015
Más detallesIntroducción a los lenguajes de descripción de hardware
Introducción a los lenguajes de descripción de hardware Noviembre 2009 Jorge Juan Chico Departamento de Tecnología Electrónica Universidad de Sevilla Usted es libre de copiar, distribuir
Más detallesSumador completo de un bit - Versión VHDL Sintético
Sumador completo de un bit Versión VHDL Sintético Federico Paredes 1, Daniel Durán 1 1 Becarios de investigación Importante: Verifique la instalación del Webpack 7.1 y el Modelsim XE 7.1 SE.Ambos programas
Más detallesTema 2 Descripción de VHDL (1/2)
TECNOLOGÍA DE COMPUTADORES Tema 2 Descripción de VHDL (1/2) Agustín Álvarez Marquina Elementos básicos de VHDL Elementos básicos Palabras reservadas. Identificadores. Tipos de objetos y datos. Literales.
Más detallesSesión 5: Unidades de Diseño VHDL
Sesión 5: Unidades de Diseño VHDL S5 1 S5 2 Unidades de Diseño Las unidades de diseño son las construcciones VHDL que se pueden analizar y compilar de forma independiente. Se guardan en una biblioteca
Más detallesTema 7. Análisis de Circuitos Secuenciales
Tema 7. Análisis de Circuitos Secuenciales Máquinas de estado finito (FSM). Análisis de circuitos secuenciales síncronos. Introducción al diseño secuenciales síncronos. de circuitos Contadores. Registros
Más detallesBENEMÉRITA UNIVERSIDAD AUTÓNOMA DE PUEBLA FACULTAD DE CIENCIAS DE LA ELECTRÓNICA
NOMBRE DE LA ASIGNATURA: BENEMÉRITA UNIVERSIDAD AUTÓNOMA DE PUEBLA FACULTAD DE CIENCIAS DE LA ELECTRÓNICA PROGRAMA DE ESTUDIOS DE LA MAESTRÍA EN INGENIERÍA ELECTRÓNICA CON OPCIÓN EN INSTRUMENTACIÓN DIGITAL
Más detalles2. Escoja la ubicación y el nombre del proyecto. Seleccione la casilla Create project subdirectory.
FACULTAD DE INGENIERÍA ELECTRÓNICA. GRUPO SEDA SEDA.ESCUELAING.EDU.CO PROFESOR: JAVIER SOTO PHD. TUTORIAL CREACIÓN, SIMULACIÓN E IMPLEMENTACIÓN DE UN PROYECTO (VHDL) EN VIVADO 2016.3 DESCRIPCIÓN Este tutorial
Más detallesVHDL y el método de diseño basado en descripción y síntesis. RESUMEN.
VHDL y el método de diseño basado en descripción y síntesis. AUTOR : Pablo Mazzara. Grupo de Microelectrónica del IIE. Facultad de Ingeniería. Montevideo. Uruguay. e-mail mazzara@iie.edu.uy RESUMEN. Una
Más detallesDiseño de Sistemas Embebidos en FPGA Curso de Posgrado Facultad de Ciencias Exactas y Tecnología UNT.
Tema 1 Parte 1: Clasificación de circuitos digitales Parte 2: Lenguajes de descripción de Hardware Parte 1. Introducción Circuitos Integrados: Microelectrónica Área de la electrónica aplicada Estudio de
Más detallesArquitectura de Computadoras Practica No. 1 Circuitos Secuenciales
Arquitectura de Computadoras Practica No. 1 Circuitos Secuenciales Objetivo: Conocer la estructura y características de la tarjeta de los dispositivos lógicos programables que se dispone en el laboratorio,
Más detallesArquitectura de Computadores. Práctica 1: Diseño Hardware de Procesadores. Práctica 1/1
Arquitectura de Computadores Práctica 1: Diseño Hardware de Procesadores Práctica 1/1 Práctica 1 Ejercicio 1: Modelado VHDL de la etapa IF en el procesador DLX32 Ejercicio 2: Ampliación Y Especialización
Más detallesEjemplo básico de descripción VHDL
Ejemplo básico de descripción VHDL Describir en VHDL un circuito que multiplexe dos líneas (a y b) de un bit, a una sola línea (salida) también de un bit; la señal selec sirve para indicar que a la salida
Más detallesSíntesis arquitectónica y de alto nivel
Síntesis arquitectónica y de alto nivel Módulo 1. Concepto y fases de la Síntesis de Alto Nivel 1 Diseño de circuitos: la complejidad Tratamiento de problemas de complejidad creciente Rápido desarrollo
Más detallesINGENIERÍA DE COMPUTADORES 3. Solución al Trabajo Práctico - Junio de 2013
Solución al Trabajo Práctico - Junio de 2013 EJERCICIO 1 En la Figura 1.1 se muestra el símbolo lógico de un circuito digital cuya función es encender una luz de aviso de un coche. Este circuito enciende
Más detallesIntroducción n al diseño lógico con VHDL
Seminario de extensión de la cátedra de Introducción a los Sistemas Lógicos y Digitales Introducción n al diseño lógico con VHDL Sergio Noriega 13 de Noviembre del 2008 VHDL : Very High Speed Integrated
Más detallesIntroducción a los lenguajes de descripción hardware de alto nivel. M. Margarita Pérez Castellanos
SISTEMAS DIGITALES TEMA 2: Introducción a los lenguajes de descripción hardware de alto nivel 1 ÍNDICE 1. Introducción al lenguaje de descripción hardware VHDL.(3-10) 2. Señales y su caracterización.(11-16)
Más detalles3 - DISEÑO RTL. Existen dos tipos de descripciones a nivel de comportamiento en Verilog:
3 - DISEÑO RTL Un diseño a nivel funcional o de comportamiento (behavioral description) permite describir circuitos digitales atendiendo únicamente a las relaciones existentes entre las entradas y salidas
Más detallesFPGAs. Susana Borromeo Área de Tecnología Electrónica. Diseño de Sistemas Electrónicos. 2014/2015. Metodología de Diseño. Características generales
FPGAs Susana Borromeo Área de Tecnología Electrónica Esquema Conceptos generales Dispositivos Lógicos Programables FPGAs Metodología de Diseño VHDL Características generales VHDL Comportamental y Estructural
Más detalles