Monografias.com > Ingeniería
Descargar Imprimir Comentar Ver trabajos relacionados

Diseño RTL de procesadores aritméticos




Enviado por Pablo Turmero



    Monografias.com

    REQUISITOS DEL CURSO
    Para abordar temas de diseño jerárquico, descripción a nivel RTL y diseño de procesadores aritméticos en general, el estudiante debe tener conocimientos de los siguientes temas:
    Análisis y síntesis de sistemas combinacionales; lógica cableada, Lógica modular y descripción en VHDL de sistemas combinacionales.
    Análisis y síntesis de sistemas secuenciales; Máquinas de estado de Mealy y Moore, Diseño de alto nivel y descripción en VHDL de sistemas secuenciales.
    Conocimiento básico de arquitectura de computadores; Funcionamiento de una ALU, sistemas que realizan operaciones, Registros, Contadores, Memorias RAM y ROM, descripción en VHDL de sistemas complejos.
    Manejo adecuado de las herramientas EDA. Para el caso específico, conocimiento, destreza y manejo del software ISE FOUNDATION de XILINX.

    Monografias.com

    ESTRUCTURA GENERAL DE UN SISTEMA DE TRANSFERENCIA DE REGISTROS

    Monografias.com

    OPERACIONES DE TRANSFERENCIA
    Identificación de Registros en operaciones de transferencia:
    (Gp:) : El contenido de R1 se transfiere a R2
    (Gp:) OPERACIÓN DESCRIPCIÓN

    Monografias.com

    Operación condicional:

    Notación de transferencia entre registros:

    OPERACIONES DE TRANSFERENCIA

    Monografias.com

    Símbolos usados en el lenguaje de transferencia de Registros:
    OPERACIONES DE TRANSFERENCIA

    Monografias.com

    Ejemplo de Micro-operaciones Aritméticas:
    OPERACIONES DE TRANSFERENCIA

    Monografias.com

    Implementación de las operaciones de transferencia:
    OPERACIONES DE TRANSFERENCIA

    Monografias.com

    Micro-operaciones Lógicas:
    Ejemplo de operaciones de desplazamiento:
    OPERACIONES DE TRANSFERENCIA

    Monografias.com

    Ejemplo: Implementación de la operación condicional múltiple.
    TRANSFERENCIA UTILIZANDO MULTIPLEXORES

    Monografias.com

    Circuito detallado de la implementación de:
    TRANSFERENCIA UTILIZANDO MULTIPLEXORES

    Monografias.com

    Multiplexores dedicados
    Un solo Bus
    TRANSFERENCIA UTILIZANDO MULTIPLEXORES

    Monografias.com

    Ejemplo de Transferencia de Registros utilizando una configuración de un solo BUS.
    TRANSFERENCIA UTILIZANDO MULTIPLEXORES

    Monografias.com

    BUS Multiplexado
    BUS Tri estado con Registros bidireccionales
    TIPOS DE BUSES

    Monografias.com

    Funcionamiento de un Registro Bidireccional:
    TIPOS DE BUSES

    Monografias.com

    Conexión de una Memoria al Bus de Datos y al Bus de Direcciones:
    TIPOS DE BUSES – ESTRUCTURA CON MEMORIA

    Monografias.com

    Conjunto e Registros
    (RTL)
    Unidad Funcional
    (Operaciones)
    UNIDAD DE DATOS

    Monografias.com

    Unidad Aritmético-Lógica (ALU)
    UNIDAD FUNCIONAL (ALU)

    Monografias.com

    ESTRUCTURA COMPLETA DE UNA ALU
    UNIDAD LÓGICA
    UNIDAD ARITMÉTICA

    Monografias.com

    Tabla de Funciones
    Tabla de Verdad
    Mapa de Karnaugh
    CICLO DE MICRO-OPERACIONES DE UNA ALU

    Monografias.com

    UNIDAD ARITMÉTICA DE CUATRO BITs
    Se basa en un diseño totalmente combinacional, los bloques FA, se refieren a sumadores completos de un bit

    Monografias.com

    TABLA FUNCIONAL
    CIRCUITO LÓGICO
    UNIDAD LÓGICA
    El Multiplexor selecciona la función lógica deseada. Pueden existir más de cuatro funciones lógicas, lo que requiere un MUX de mayor capacidad.

    Monografias.com

    UNA ETAPA DE LA ALU

    Monografias.com

    TABLA FUNCIONAL DE LA ALU

    Monografias.com

    DESPLAZADORES (SHIFTERS)

    Monografias.com

    Circuito Lógico
    Tabla Funcional
    DESPLAZADOR ROTATORIO

    Monografias.com

    DIAGRAMA GENERAL DE UNA UNIDAD DE DATOS
    La unidad de datos presentada en la figura, tiene una arquitectura tipo Hardvard (Bus de datos y direcciones separados). El arreglo de registros permite cargar, almacenar y operar fácilmente los datos que se desean procesar.

    Monografias.com

    TABLA PARA LA UNIDAD FUNCIONAL

    Monografias.com

    DETALLE DE LA UNIDAD FUNCIONAL

    Monografias.com

    ESTRUCTURA DE UN PROCESADOR CON ARQUITECTURA TIPO HARDVARD

    Monografias.com

    DIAGRAMA DE BLOQUES DE UN PROCESADOR CON ARQUITECTURA TIPO HARDVARD

    Monografias.com

    Bit Counter
    Shift-and-Add Multiplier
    EJEMPLOS

    Monografias.com

    B = 0;
    while A?0 do
    if a0 = 1 then
    B = B + 1;
    end if;
    Right-shift A;
    end while ;
    BIT COUNTER
    Pseudo-código para el Bit Counter
    Sistema que permite contar el número de ‘1s’ presentes en el Registro A, guardando el resultado en el Registro B
    Se utiliza un lenguaje estándar de programación para describir el algoritmo que se va a utilizar. Luego se describe como diseño ASM

    Monografias.com

    CARTA ASM PARA EL BIT COUNTER
    Carta ASM para el diseño del DATAPATH del contador de bits ‘1’, describe las micro-operaciones presentes en el diseño.

    Monografias.com

    DIAGRAMA DE TIEMPOS DEL BIT COUNTER

    Monografias.com

    DISEÑO DEL DATAPATH PARA EL BIT COUNTER

    Monografias.com

    CARTA ASM PARA EL CONTROL DEL BIT COUNTER
    Carta ASM para el diseño de la lógica de control del contador de bits ‘1’. Obsérvese que las señales utilizadas son las señales de STATUS.
    Z = ‘1’ when A[n] = ‘0’
    a0 ? Bit menos significativo de A
    s ? Señal de inicio START
    Done ? Indica que el proceso terminó
    LB ? Load B, Borra el contador B
    LA ? Load A, Carga el registro A
    EB ? Incrementa el contador B
    EA ? Desplaza A hacia la derecha

    Monografias.com

    CÓDIGO VHDL PARA DESCRIBIR EL BIT COUNTER (1)
    — Descripción en Código VHDL del contador de ‘1s’
    — Declaración de Librerías, cláusula USE

    LIBRARY ieee ;
    USE ieee.std_logic_1164.all ;
    LIBRARY work ;
    USE work.components.shiftrne ;

    — Declaración de la entidad

    ENTITY bitcount IS
    PORT(Clock, Resetn : IN STD_LOGIC ;
    LA, s : IN STD_LOGIC ;
    Data : IN STD_LOGIC_VECTOR(7 DOWNTO 0) ;
    B : BUFFER INTEGER RANGE 0 to 8 ;
    Done : OUT STD_LOGIC ) ;
    END bitcount ;

    Monografias.com

    CÓDIGO VHDL PARA DESCRIBIR EL BIT COUNTER (2)
    ARCHITECTURE Behavior OF bitcount IS
    TYPE State_type IS ( S1, S2, S3 ) ;
    SIGNAL y : State_type ;
    SIGNAL A : STD_LOGIC_VECTOR(7 DOWNTO 0) ;
    SIGNAL z, EA, LB, EB, low : STD_LOGIC ;
    BEGIN
    FSM_transitions: PROCESS ( Resetn, Clock )
    BEGIN
    IF Resetn = '0' THEN
    y

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter