Sistemas Electrónicos Digitales. PRACTICA nº 8
|
|
- Natividad Carrizo Álvarez
- hace 6 años
- Vistas:
Transcripción
1 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 RTL del algoritmo Objetivos: Descripción y síntesis de subsistemas aritméticos mediante VHDL. Diseño combinacional. Código VHDL a nivel RT para generación estructural. Realización sobre FPGA. Subsistemas aritméticos secuenciales. Código VHDL a nivel RT para síntesis del algoritmo de cómputo e implementación mediante un procesador dedicado FPGA. Herramientas CAD:Quartus II. Instrumentación: --. Material fungible o de laboratorio: --. Parte 1:Diseño y síntesis de un multiplicador combinacional para dos números sin signo utilizando una descripción VHDL. Uso de la sentencia VHDL generate y síntesis sobre un dispositivo FPGA utilizando su lógica interna estándar. 1 de 6
2 Figura 1 El esquema de la figura 1 muestra una posible estructura para un multiplicador para dos números sin signo de M bits. La estructura utiliza únicamente full-adders y puertas AND. Se pretende realizar una descripción VHDL a nivel RT que represente la estructura circuital de figura 1. Para ello se empleará la sentencia generate que simplifica la descripción de las interconexiones entre los elementos del circuito, al tiempo que permite generalizar el diseño para diferentes tamaños de los números a multiplicar. Una posible descripción del multiplicador se muestra en la figura 2. library ieee; use ieee.std_logic_1164.all; entity Generate_multipl is generic (M: integer:= 8); port ( a, b : in std_logic_vector(m-1 downto 0); p : out std_logic_vector(2*m-1 downto 0) ); end Generate_multipl; architecture simple of Generate_multipl is type matrix_adders is array (0 to 2*M-2) of std_logic_vector(m downto 0); signal a_por_b : matrix_adders; signal s : matrix_adders; signal c : matrix_adders; signal c2 : std_logic_vector(2*m-1 downto M); gen_ands1: for k in 0 to M-1 generate g1: for i in 0 to k generate a_por_b(k)(i) <= B(i) and A(k-i); gen_ands2: for k in M to 2*M-2 generate g2: for i in k-(m-1) to 2*M-2-(M-1) generate 2*M-2-(M-1) = M-1 a_por_b(k)(i) <= B(i) and A(k-i); p(0) <= a_por_b(0)(0); gen_adders: for k in 1 to 2*M-2 generate g3: process(a_por_b(k)) if (k < M) then s(k)(0) <= a_por_b(k)(0); c(k)(1) <= '0'; for i in 1 to k loop c(k+1)(i+1) <= (a_por_b(k)(i) and s(k)(i-1)) or (a_por_b(k)(i) and c(k)(i)) or (c(k)(i) and s(k)(i-1)); s(k)(i) <= a_por_b(k)(i) xor s(k)(i-1) xor c(k)(i); p(k) <= s(k)(i); end loop; s(k)(k-(m-1)) <= a_por_b(k)(k-(m-1)); c2(m) <= '0'; for i in (k-(m-1))+1 to 2*M-2-(M-1) + 1 loop - 2*M-2-(M-1) + 1 = M-1 +1 if (i < 2*M-2-(M-1)+1) then - 2*M-2-(M-1)+1 = M c(k+1)(i+1) <= (a_por_b(k)(i) and s(k)(i-1)) or (a_por_b(k)(i) and c(k)(i)) or (c(k)(i) and s(k)(i-1)); s(k)(i) <= a_por_b(k)(i) xor s(k)(i-1) xor c(k)(i); c2(k+1) <= (c2(k) and s(k)(i-1)) or (c2(k) and c(k)(i)) or (c(k)(i) and s(k)(i-1)); 2 de 6
3 s(k)(i) <= s(k)(i-1) xor c(k)(i) xor c2(k); p(k) <= s(k)(i); end loop; p(2*m-1) <= c2(2*m-1); end process; end simple; Figura 2 a) Utilizando Quartus II, sintetizar el multiplicador a partir de la descripción VHDL de la figura 2. Seleccionar el dispositivo FPGA Cyclone II EP2C35F672C6. Compilar el diseño. Comprobar que el multiplicador en este caso se ha sintetizado utilizando exclusivamente la circuitería de propósito general (ALUT s). Para la compilación y síntesis, seleccionar el chip FPGA Cyclone II EP2C35F672C6: Assignments -> Settings: Settings Generador_multipl: Category -> Device: Family Cyclone II: Target Device Specific Device selected in Available devices list. Show in Available devices list Fastest. Available devices: EP2C35F672C6. b)simular el multiplicador sintetizado. Construir un fichero de formas de onda, Generador_multipl.vwf. Comprobar que el multiplicador opera correctamente. c) Generar automáticamente un testbench, Generador_multipl.vht, para el multiplicador sintetizado a partir de las señales de prueba aplicadas mediante el fichero de formas de onda. Analizar el fichero Generador_multipl.vht. Para generar el testbench: Con la ventana de formas de onda activa: File -> Export: Seleccionar un nombre para el fichero. Export. Parte 2:Diseño de un multiplicador secuencial (basado en recodificación). Síntesis sobre un dispositivo FPGA de un Multiplicador de Booth Modificado para números con signo (en complemento a 2), utilizando una descripción VHDL a nivel RT del algoritmo. Se pretende implementar sobre un dispositivo FPGA un multiplicador de Booth modificado. En lugar de utilizar una descripción de tipo estructural basada en la descripción de una Unidad de Control y una Ruta de Datos y sus interconexiones, se pretende emplear una descripción de tipo RT del Algoritmo de Booth Modificado. El procedimiento requiere una serie de pasos cuyo número depende del número de bits de los números a multiplicar. Para la implementación se pretende describir mediante VHDL un paso del algoritmo, cuya ejecución se realizará en un ciclo de reloj. La ejecución del paso se repetirá tantas veces (tantos ciclos de reloj) como sea necesario hasta finalizar el proceso de cómputo. En la figura 3 se muestra una posible descripción VHDL de un módulo para la implementación del multiplicador. La descripción de la entidad principal utiliza (a modo de ejemplo) el package de la figura 4, que contiene algunas sencillas functions. 3 de 6
4 El módulo dispone de una señal new_mult que indica que se ha de iniciar una nueva multiplicación con los números que se encuentren en ese momento en las entradas. Hasta que no se indique el comienzo de una nueva multiplicación, cualquier cambio en las entradas será ignorado. Una vez que el resultado obtenido sea el definitivo, si han transcurrido los ciclos necesarios, este permanecerá en las salidas hasta la siguiente activación de la señal new_mult. Dispone de una salida, result_valid que toma nivel alto una vez que se ha alcanzado el resultado final, volviendo a nivel bajo cuando se vuelve a activar la señal new_mult. a) Utilizando Quartus II, sintetizar el multiplicador a partir de la descripción VHDL de las figuras 2 y 3. Seleccionar el dispositivo FPGA Cyclone II EP2C35F672C6. Compilar el diseño. Simular el multiplicador sintetizado. Utilizar el fichero de formas de onda Alg_Booth_Mod.vwf. Comprobar que el multiplicador opera correctamente. Se debe de tener en cuenta que el número de ciclos de reloj requeridos para obtener el producto depende de tamaño del multiplicador. En la descripción de la figura 3 se considera el mismo tamaño para el multiplicando y el multiplicador. library ieee; use ieee.std_logic_1164.all; use ieee.numeric_std.all; use work.paquete_alg_booth_mod.all; entity Alg_Booth_Mod is generic (m : integer := 7); port ( clk : in std_logic; new_mult : in std_logic; multiplicando : in std_logic_vector(m-1 downto 0); multiplicador : in std_logic_vector(m-1 downto 0); resultado : out std_logic_vector(2*m-1 downto 0); el número máximo de operaciones es (2*((m+1)/2)+1)/2 result_valid : out std_logic ); end Alg_Booth_Mod; architecture algor of Alg_Booth_Mod is signal result_prev : signed(2*m-1 downto 0); signal paso : integer range 0 to (2*((m+1)/2)+1)/2; process (new_mult,clk) variable mult1 : signed(2*((m+1)/2)-1 downto 0); Multiplicando extendido 1 bit a la izda. (si es necesario) variable c2mult1 : signed(2*((m+1)/2)-1 downto 0); C2 del multiplicando extendido 1 bit a la izda. (si es necesario) variable mult2 : signed(2*((m+1)/2)+1 1 downto 0); Multiplicador ext. 1 bit a la izda. (si necesario) y 1 bit a la dcha. variable code : unsigned(2 downto 0); Código de operación variable ext_2m : integer := 2*m-(2*((m+1)/2)); para extensión a 2*m (tamaño del producto) variable m1 : signed(2*m-1 downto 0); Multiplicando extendido al tamaño del producto variable cm1 : signed(2*m-1 downto 0); C2 del Multiplicando extendido al tamaño del producto variable max_pasos : integer := (2*((m+1)/2)+1)/2; Máximo número de operaciones variable ant_mas : signed(2*m-1 downto 0); if (clk'event and clk = '1') then if (new_mult = '1') then result_valid <= '0'; mult1(m-1 downto 0) := signed(multiplicando(m-1 downto 0)); mult1(2*((m+1)/2)-1) := multiplicando(m-1); m1 := signed_a_signed_ext(mult1,ext_2m); c2mult1(2*((m+1)/2)-1 downto 0) := twos_complement(mult1); cm1 := signed_a_signed_ext(c2mult1,ext_2m); mult2(m-1 downto 0) := signed(multiplicador(m-1 downto 0)); 4 de 6
5 mult2(2*((m+1)/2)-1) := multiplicador(m-1); mult2(2*((m+1)/2)) := multiplicador(m-1); Extensión de 1 bit de signo a la izda. (en su caso) mult2 := mult2 sll 1; Añadido un '0' a la dcha. result_prev <= (others => '0'); resultado <= (others => '0'); paso <= 0; if (paso < max_pasos) then if (paso = max_pasos-1) then result_valid <= '1'; code(2 downto 0) := recodifica(unsigned(mult2(2 downto 0))); mult2 := mult2 srl 2; case code is when "000" => ant_mas := result_prev; 00 when "001" => ant_mas := result_prev + (m1 sll 2*paso); 01 when "010" => ant_mas := result_prev + ((m1 sll 1) sll 2*paso); 02 when "011" => ant_mas := result_prev + ((cm1 sll 1) sll 2*paso); -02 when others => ant_mas := result_prev + (cm1 sll 2*paso); -01 end case; result_prev <= ant_mas; paso <= paso+1; end process; end algor; Figura 3 b)repetir el apartado anterior modificando el tamaño del multiplicado y del multiplicador de impar (por ej. m=9) al subsiguiente par (por ej. m=10). Comprobar que el número de ciclos requerido para obtener el producto es el esperado. Obtener la máxima frecuencia de operación. library ieee; use ieee.std_logic_1164.all; use ieee.numeric_std.all; package paquete_alg_booth_mod is function signed_a_signed_ext (aux: signed; ext: integer) return signed; function twos_complement (aux: signed) return signed; function recodifica (aux: unsigned) return unsigned; end paquete_alg_booth_mod; package body paquete_alg_booth_mod is function signed_a_signed_ext (aux: signed; ext: integer) return signed is variable sig_sig : signed (aux'length+ext-1 downto 0); sig_sig(aux'length+ext-1 downto aux'length) := (others => aux(aux'length-1)); sig_sig(aux'length-1 downto 0) := aux; return sig_sig; end signed_a_signed_ext; function twos_complement (aux: signed) return signed is variable comp : signed (aux'length+1 1 downto 0); variable compl : std_logic := '0'; for j in 0 to aux'length-1 loop if (compl = '0') then 5 de 6
6 comp(j) := aux(j); if (aux(j) = '1') then compl := '1'; comp(j) := not(aux(j)); end loop; return comp(aux'length-1 downto 0); end twos_complement; function recodifica (aux: unsigned) return unsigned is variable recode : unsigned (2 downto 0); if (aux = "000") then recode(2 downto 0) := "000"; 00 elsif (aux = "001") then recode(2 downto 0) := "001"; 01 elsif (aux = "010") then recode(2 downto 0) := "001"; 01 elsif (aux = "011") then recode(2 downto 0) := "010"; 02 elsif (aux = "100") then recode(2 downto 0) := "011"; -02 elsif (aux = "101") then recode(2 downto 0) := "100"; -01 elsif (aux = "110") then recode(2 downto 0) := "100"; -01 recode(2 downto 0) := "000"; 00 return recode(2 downto 0); end recodifica; end paquete_alg_booth_mod; Figura 4 Parte 3:Síntesis sobre un dispositivo FPGA de un Multiplicador secuencial para números con signo, que emplee el procedimiento de cómputo del algoritmo de Booth Modificado, pero que utilice un solo ciclo para la operación de multiplicación completa. a) Muéstrese una descripción VHDL a nivel RT del algoritmo con las características citadas. Multiplicando y multiplicador deben de tener el mismo número de bits. Utilizando Quartus II, sintetizar el bloque diseñado. Para la compilación y síntesis, selecciónese el chip FPGA Cyclone II EP2C35F672C6. b)simular el multiplicador sintetizado mediante Quartus II. Utilícese el fichero de formas de onda Alg_Booth_Mod_un_ciclo.vwf. Verificar que el multiplicador opera correctamente y que únicamente utiliza un ciclo de reloj para el cómputo. Obtener la máxima frecuencia de operación. 6 de 6
Sistemas Electrónicos Digitales. PRACTICA nº 7
PRACTICA nº 7 Diseño de Memorias RAM y ROM. Síntesis e implementación sobre dispositivos FPGA. Síntesis empleando FFs y síntesis utilizando bits de RAM dedicados Objetivos: Descripción y síntesis de memorias
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 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 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 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 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 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 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 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 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 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 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 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 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 detallesManual de referencia de la tarjeta BASYS 2
Universidad Politécnica de Madrid ETSI de Telecomunicación Departamento de Ingeniería Electrónica Circuitos Electrónicos (Plan 2010) Curso 2012-2013 Manual de referencia de la tarjeta BASYS 2 Álvaro de
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 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 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 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 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 detallesTutorial I Diseño de una máquina de refrescos utilizando el WebPack de XILINX TM
Tutorial I Diseño de una máquina de refrescos utilizando el WebPack de XILINX TM Departamento de Ingeniería Electrónica de Sistemas Informáticos y Automática 2 1.1. Introducción Al ejecutar el software
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 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 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 detallesCAPITULO 5 GENERADOR DIGITAL DE TREN DE PULSOS PROGRAMABLE
CAPÍTULO B. GENERADOR DIGITAL DE TREN DE PULSOS PROGRAMABLE CAPITULO 5 GENERADOR DIGITAL DE TREN DE PULSOS PROGRAMABLE CONTENIDO 5.1 Introducción. 5.2 Diseño de un generador digital de tren de pulsos programable
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 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 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 detalles5. Decodificadores. Salida _1= A A A A = m = M ... Electrónica Digital. Tema
5. Decodificadores La función de un decodificador es la siguiente: ante una combinación concreta binaria de entrada (correspondiente a una combinación de algún código binario), activar una salida correspondiente
Más detallesUniversidad Autónoma de Querétaro Facultad de Ingeniería
Universidad Autónoma de Querétaro Facultad de Ingeniería Manual de Prácticas Sistemas Digitales con Lógica Reconfigurable (SDLRI) Que como parte de los requisitos para obtener el grado de Ingeniero en
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 detallesHardware Libre: Clasificación y desarrollo de hardware reconfigurable en entornos GNU/Linux
Hardware Libre: Clasificación y desarrollo de hardware reconfigurable en entornos GNU/Linux Iván González, Juan González, Francisco Gómez-Arribas Escuela Politécnica Superior Universidad Autónoma de Madrid
Más detallesMemorias ROM: FPGA-VHDL Cómo???
Memorias ROM: FPGA-VHDL Cómo??? Nota Técnica 03 Cristian Sisterna Introducción Básicamente hay dos formas de que una memoria ROM sea implementada en un FPGA a partir del código VHDL: - Deduciendo la memoria
Más detallesGenerador de Secuencia Binaria Pseudo Aleatoria
Generador de Secuencia Binaria Pseudo Aleatoria Nota Técnica 12 Cristian Sisterna Introducción La generación de una secuencia pseudo aleatoria de números binarios es muy útil en ciertas ambientes de test
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 detalles1. Módulo de desarrollo Spartan 3 STARTER KIT con un FPGA xc3s200 ft256 2. Software de diseño XILINX ISE versión 10.1
Universidad Simón Bolívar Departamento de Electrónica y Circuitos EC1723, Circuitos Digitales Trimestre Septiembre-Diciembre 2008 Realización: Semana 8. Miércoles 5 de Noviembre Laboratorio Práctica 4:
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 detallesLABORATORIO DE ARQUITECTURA DE COMPUTADORES. I. T. I. SISTEMAS / GESTIÓN GUÍA DEL ALUMNO
LABORATORIO DE ARQUITECTURA DE COMPUTADORES. I. T. I. SISTEMAS / GESTIÓN GUÍA DEL ALUMNO Práctica 2: La Unidad Aritmético - Lógica Objetivos Comprender cómo se realiza un sumador con propagación de acarreo
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 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 detallesPráctica III Introducción a la descripción VHDL del procesador DLX
Departamento de Ingeniería Electrónica de Sistemas Informáticos y Automática 3 Práctica III Introducción a la descripción VHDL del procesador DLX 3.1. Implementación del procesador DLX La configuración
Más detallesDecodificadores/Demultiplexores. Grupo 9 Javier de Gregorio Menezo Laro de la Fuente Lastra Raúl Fernández Díaz
Decodificadores/Demultiplexores Grupo 9 Javier de Gregorio Menezo Laro de la Fuente Lastra Raúl Fernández Díaz Decodificadores Un decodificador (DEC) es un circuito combinacional que convierte un código
Más detallesDECODIFICADORES. Para cualquier código dado en las entradas solo se activa una de las N posibles salidas. 2 N
DECODIFICADORES Tienen como función detectar la presencia de una determinada combinación de bits en sus entradas y señalar la presencia de este código mediante un cierto nivel de salida. Un decodificador
Más detallesSistemas Electrónicos Digitales
Práctica 1 Práctica 1 Sistemas Electrónicos Digitales Introducción al diseño electrónico digital con VHDL Universidad de Alicante Ángel Grediaga. Francisco J.Brotons 2 Índice 1 INTRODUCCIÓN... 3 2 OBJETIVO...
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 detallesCODIFICADORES CON PRIORIDAD. Grupo 2
CODIFICADORES CON PRIORIDAD Grupo 2 Descripción Los codificadores son circuitos combinacionales generalmente de 2 N entradas y N salidas, donde las salidas son el código binario correspondiente al valor
Más detallesDISEÑO DE SISTEMAS ELECTRÓNICOS DIGITALES AVANZADOS
Práctica 2 DISEÑO DE SISTEMAS ELECTRÓNICOS DIGITALES AVANZADOS Controlador de teclado Universidad de Alicante Curso 2013/14 Práctica 2 Práctica 2 Control del teclado 1. Introducción Esta práctica plantea
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 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 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 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 detallesUNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS FACULTAD DE INGENIERIA ELECTRONICA ESCUELA DE ELECTRONICA
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS FACULTAD DE INGENIERIA ELECTRONICA ESCUELA DE ELECTRONICA LABORATORIO Nª2: Descripciòn VHDL utilizando el Estilo Algoritmico 1.-Implemente y simule el circuito
Más detallesBloques Aritméticos - Multiplicadores
Bloques Aritméticos - Multiplicadores La multiplicación es una operación cara (en términos de recursos) y lenta Este hecho ha motivado la integración de unidades completas de multiplicación en los DSPs
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 detallesDEPARTAMENTO DE ELECTRÓNICA I.T.Telecomunicación Sistemas Electrónicos
DEPARTAMENTO DE ELECTRÓNICA I.T.Telecomunicación Sistemas Electrónicos ASIGNATURA Microelectrónica FECHA Junio - 2009 APELLIDOS,NOMBRE SOLUCION Nº Lista 1 2 3 4 5 6 7 T Cuestión 1 (10 ptos) Nota: las respuestas
Más detallesCircuitos Electrónicos Digitales E.T.S.I. Telecomunicación Universidad Politécnica de Madrid. Descripciones funcionales y estructurales
Circuitos Electrónicos Digitales E.T.S.I. Telecomunicación Universidad Politécnica de Madrid Descripciones funcionales y estructurales Descripciones funcionales y estructurales. Introducción al lenguaje
Más detallesImplementación de Filtros Digitales Tipo FIR en FPGA
Implementación de Filtros Digitales Tipo FIR en FPGA Jesús Antonio Álvarez Cedillo, Klauss Michael Lindig Bos, Gustavo Martínez Romero Resumen En este artículo se hace la descripción del diseño de un filtro
Más detallesFPGA: Herramientas de diseño
FPGA: Herramientas de diseño Proceso diseño Design and implement a simple unit permitting to speed up encryption with RC5-similar cipher with fixed key set on 8031 microcontroller. Unlike in the experiment
Más detallesElectrónica Digital. Actividad Dirigida. Implementación de un Cronómetro Digital
Electrónica Digital Actividad Dirigida Implementación de un Cronómetro Digital Trabajo a realizar La actividad consiste en la implementación de un cronómetro digital con capacidad de cuenta de minutos
Más detalles^6+1 2^5+1 2^2+1 2^1+1 2^ ^6+1 2^0-65.
ELECTRÓNICA DIGITAL 23-I-2014 PREGUNTAS TEÓRICO PRÁCTICAS: 1. Determinar el valor decimal de los números expresados en Complemento a 2. (0.25 puntos). 10011001 10011000 01100111 1 2^6+1 2^5+1 2^2+1 2^1+1
Más detallesINTRODUCCIÓN AL SOFTWARE ISE (Integrated Software Environment) DE XILINX
INTRODUCCIÓN AL SOFTWARE ISE (Integrated Software Environment) DE XILINX Índice GUÍA DE INICIO AL SOFTWARE ISE DE XILINX... 1 1. Introducción... 1 2. Inicio del software ISE (Integrated Software Environment)
Más detallesDISEÑO DE PROCESADORES DEDICADOS. Práctica. No. 8 Circuitos de Barrido y Escaneo: Teclado Matricial de Propósito General y Matriz de LEDs
DISEÑO DE PROCESADORES DEDICADOS Práctica. No. 8 Circuitos de Barrido y Escaneo: Teclado Matricial de Propósito General y Matriz de LEDs DR. JUAN CARLOS HERRERA LOZADA jlozada@ipn.mx Instituto Politécnico
Más detallesFundamentos de Computadores. Tema 5. Circuitos Aritméticos
Fundamentos de Computadores Tema 5 Circuitos Aritméticos OBJETIVOS Conceptuales: Suma y resta binaria Implementaciones hardware/software Circuito sumador y semi-sumador básico Sumadores/restadores de n
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 detallesPROBLEMA VHDL. 7 dig1. dig2. Entradas : Señales a[3..0] y b [3..0] en código GRAY Salida : Señales Dig1[6..0] y Dig2[6..0] para los visualizadores
LAB. Nº: 4 HORARIO: H-441 FECHA: 2/10/2005 Se tienen 2 números en Código GRAY de 4 bits. Se requiere diseñar un circuito que obtenga la suma de estos 2 números y que muestre el resultado en formato BCD
Más detallesDiseño VHDL de módulos combinacionales básicos
GRUPO DE DISEÑO HARDWARE SOFTWARE DIET ESCET URJC W H S W Informe técnico: 001_01 Fecha: 03-03-2006 Proyecto: Subproyecto: Herramientas software: Componentes hardware: Docencia VHDL Veribest Ad-hoc IT_001_01
Más detallesCONTADORES. Definición. Diseño y analisis de un contador binario hacia arriba de 3 bits con flip-flops JK. Otros contadores típicos.
CONTADORES Definición Diseño y analisis de un contador binario hacia arriba de 3 bits con flip-flops JK. Otros contadores típicos Descripción VHDL Ejercicios Definición Un contador es un circuito digital
Más detallesDiseño de una calculadora
DEPARTAMENTO DE TECNOLOGÍA ELECTRÓNICA ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA INFORMÁTICA Diseño de una calculadora Sistemas Digitales Avanzados 1. Introducción y objetivos El propósito general de esta
Más detallesDiseño de Sistemas Digitales a través de Diseños Esquemáticos y VHDL Norma Frida Roffe Samaniego. Hoja de respuestas
Actividad integradora - Capítulo 1 Hoja de respuestas Pregunta 1: Codifique en VHDL un circuito encoder de 8 a 3. Utilice solamente funciones booleanas. El encoder debe operar de la siguiente manera: Se
Más detallesPractica No. 6 Diseño de un Procesador CISC de 8 Bits
Practica No. 6 Diseño de un Procesador CISC de 8 Bits Objetivo: Diseñar un microprocesador CISC de 8 bits, específicamente un clón del microprocesador 6811 de Motorola. Desarrollo: Para cada uno de los
Más detallesINTRODUCCIÓN AL LENGUAJE VHDL
INTRODUCCIÓN AL LENGUAJE VHDL LDD 2007-08 1 Introducción. ÍNDICE. 1. Conceptos básicos del lenguaje y Aplicaciones. 2. Tipos de datos y Señales. 3. Sentencias concurrentes y secuenciales. 4. Registros
Más detallesLenguaje VHDL. Código para representar sistemas digitales en VHDL JJVS-09
Lenguaje VHDL Código para representar sistemas digitales en VHDL 1 Las secciones fundamentales que forman el código en VHDL son: librería (LIBRARY), entidad (ENTITY) y arquitectura (ARCHITECTURE). LIBRARY:
Más detallesHOJA DE PROBLEMAS 6: MÓDULOS COMBINACIONALES BÁSICOS
f Universidad Rey Juan Carlos Grado en Ingeniería Informática Fundamentos de Computadores HOJA DE PROBLEMAS 6: MÓDULOS COMBINACIONALES BÁSICOS. Dado el módulo combinacional de la figura se pide dibujar
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 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 detalles5Ejemplos de Aplicaciones del VHDL.
5Ejemplos de Aplicaciones del VHDL. 5.1 INTRODUCCION En los capítulos anteriores se describió el proceso de diseño para sistemas digitales y las herramientas disponibles (tanto software como hardware)
Más detallesSistemas Digitales I Taller No 2: Diseño de Circuitos combinacionales usando VHDL
UNIVERSIDAD INDUSTRIAL DE SANTANDER Escuela de Ingenierías Eléctrica, Electrónica y Telecomunicaciones Sistemas Digitales I Taller No 2: Diseño de Circuitos combinacionales usando VHDL Profesor: Carlos
Más detallesINSTRUCTIVO PARA EL USO DEL PROGRAMA QUARTUS2 V7.2 DE ALTERA
UNIVERSIDAD AUTONOMA METROPOLITANA UNIDAD AZCAPOTZALCO DIVISIÓN DE CIENCIAS BÁSICAS E INGENIERÍA DEPARTAMENTO DE ELECRÓNICA INSTRUCTIVO PARA EL USO DEL PROGRAMA QUARTUS2 V7.2 DE ALTERA DR. ISAAC SCHNADOWER
Más detallesCONTADORES CONTADORES ASINCRONOS ASCENDENTE
CONTADOES CONTADOES ASINCONOS ASCENDENTE S 2 J ck 2 K Vdd Vdd Vdd S J ck K S J ck K Las entradas asincronas S y estan desactivadas -- CI : 2 3 4 5 6 7 8 9 2 2 CONTADO ASINCONO DESCENDENTE S 2 J ck 2 K
Más detallesMULTIPLICADOR NXN DE ALTO THROUGHPUT PARA FPGAS
MULTIPLICADOR NXN DE ALTO THROUGHPUT PARA FPGAS Mario Vera-Lizcano, Jaime Velasco-Medina Grupo de Bio-Nanoelectrónica, EIEE, Universidad del Valle A.A. 2536, Cali, Colombia mario, jvelasco@univalle.edu.co
Más detallesLab 6. Cuádruple registro de 16 bits y 3 puertos E/S
Lab 6 Cuádruple registro de 16 bits y 3 puertos E/S Objetivo: Codificar en VHDL y verificar el funcionamiento de un registro de cuatro palabras y de las operaciones de lectura y escritura sobre el mismo.
Más detallesCi A B S Co 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1
SEMI-SUMDOR SUMNDOS SUM CRREO B S C 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 SUM BINRI B S = B S =. B SUMDOR TOTL Ejemplo de suma B Ci Ci 1 1 0 0 1 i 1 1 1 0 1 Bi 1 0 0 1 Si 1 0 0 1 1 0 Co 1 1 0 0 1 Σ S Co Ci B
Más detallesPráctica nº 4. Herramienta de diseño digital Quartus II.
Grado en Ingeniería de Tecnologías de Telecomunicación. Escuela Técnica Superior de Ingeniería Industrial y de Telecomunicación. Electrónica Digital I. Práctica nº 4. Herramienta de diseño digital Quartus
Más detallesIntroducción a la simulación con ModelSim.
Introducción a la simulación con ModelSim. Este es un resumen de la funcionalidad básica del simulador ModelSim. Model Sim permite muchas cosas más. Puede encontrar más información en Help->PDF Documentation->Tutorial
Más detalles2384-27. ICTP Latin-American Advanced Course on FPGADesign for Scientific Instrumentation. 19 November - 7 December, 2012
2384-27 ICTP Latin-American Advanced Course on FPGADesign for Scientific Instrumentation 19 November - 7 December, 2012 Sequential Logic Described in VHDL - A Design Example ARTECHE DIAZ Raul Center of
Más detallesLABORATORIO DE ARQUITECTURA DE COMPUTADORES. I. T. I. SISTEMAS / GESTIÓN GUÍA DEL ALUMNO
LABORATORIO DE ARQUITECTURA DE COMPUTADORES. I. T. I. SISTEMAS / GESTIÓN GUÍA DEL ALUMNO Práctica 3: Memorias Objetivos Comprender qué es y cómo funciona un banco de registros Comprender cómo se realiza
Más detalles23 LENGUAJE DE DESCRIPCIÓN CIRCUITAL: V H D L
23 LENGUAJE DE DESCRIPCIÓN CIRCUITAL: V H D L 23.1. VHDL como lenguaje para describir, simular, validar y diseñar 23.2. VHDL básico para diseñar circuitos combinacionales 23.3. Descripción de circuitos
Más detalles9. Dibujar el diagrama de tiempos de las siguientes asignaciones de señales.
Sistemas Digitales (66.17) Práctica 2 - VHDL 1. Crear un paquete de utilidades al cual se le vayan agregando todas las funciones, procedimientos y declaración de tipos, constantes, etc., que se creen en
Más detallesImplementación de una ALU de 8 bits en lenguaje VHDL
Implementación de una ALU de 8 bits en lenguaje VHDL AUTORS: Jordi Pons Albalat. DIRECTORS: Enric Cantó Navarro. DATA: Febrer / 2002. 1. Introducción... 4 2. El lenguaje VHDL... 5 2.1 VHDL describe estructura
Más detallesELECTRÓNICA DIGITAL (P2000)
ELECTRÓNICA IGITAL (P2000) ACTIVIA: EJERCICIOS E ISEÑO SÍNCRONO epartamento de Sistemas Electrónicos y de Control Curso 2010/2011 Introducción y objetivos Los ejercicios que debe realizar pretenden entrenarle
Más detallesIntroducción al lenguaje VHDL
Introducción al lenguaje VHDL Very High Speed Integrated Circuit Hardware Description Language (VHSIC HDL) Fernando Nuño García Área de Tecnología Electrónica Universidad de Oviedo 1 ÍNDICE 1.- Elementos
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 detallesUNIVERSIDAD CATÓLICA DE SANTIAGO DE GUAYAQUIL
UNIVERSIDAD CATÓLICA DE SANTIAGO DE GUAYAQUIL TESIS DE GRADO PREVIO A LA OBTENCIÓN DEL TÍTULO DE INGENIERO(A) EN TELECOMUNICACIONES CON MENCIÓN EN GESTIÓN EMPRESARIAL TEMA: Diseño e implementación de prácticas
Más detallesELEMENTOS Y TIPOS DE DATOS
1 ELEMENTOS Y TIPOS DE DATOS ELEMENTOS Y TIPOS DE DATOS Elementos Tipos de datos Librerías Std_logic y Std_logic_vector 2 ELEMENTOS Y TIPOS DE DATOS ELEMENTOS Elementos del VHDL: Comentarios Palabras reservadas.
Más detallesSubsistemas aritméticos y lógicos. Tema 8
Subsistemas aritméticos y lógicos Tema 8 Qué sabrás al final del capítulo? Diseño de Sumadores Binarios Semisumadores Sumador completo Sumador con acarreo serie Sumador con acarreo anticipado Sumador /
Más detallesRegistros de desplazamiento
Registros de desplazamiento Definición de registro de desplazamiento básico Tipos de registro de desplazamiento Configuraciones específicas Aplicaciones más típicas VHDL Ejercicio propuestos Definición
Más detallesV. Elementos de la Arquitectura
V. Elementos de la Arquitectura 1 Tipos de Datos Todos los sistemas digitales manejan la información como bits o vectores de bits. Sin embargo no es posible ni conveniente usar sólo estos tipos para todos
Más detallesProyecto de Diseño 2
Altera University Program 1 Proyecto de Diseño 2 Números y Visualizadores El objetivo de esta práctica es diseñar circuitos combinacionales que realicen conversiones numéricas de binario a decimal y adición
Más detallesVHDL. Lenguaje de descripción hardware Tipos de datos
VHDL. Lenguaje de descripción hardware Tipos de datos 2007 A.G.O. All Rights Reserved Tipos de objetos y datos VHDL predefine un conjunto relativamente limitado de tipos de datos, pero dispone de gran
Más detalles