Microprocesador para el cálculo de la transformada rápida de Fourier ( CEMISID-FFT) - Andrade P. Liliana L. - Díaz M. Omar A. - Erazo P. Amilcar J. - Fuguet T. Cesar A. - Gamboa Q. Samantha M. - Márquez V. Pedro A. - Pérez A. Jesús A. - Sánchez M. Typson A. - Miguel R. Peña T.
INTRODUCCIÓN Paralelismo CEMISID-FFT Envío simultáneo de instruccionesSegmentación
Sistemas de procesamiento según Flynn SISD CEMISID-FFT Flujo único de instrucciones y de datos
Sistemas de procesamiento según Flynn MISD CEMISID-FFT Flujo múltiple de instrucciones y flujo único de datos
Sistemas de procesamiento según Flynn MIMD CEMISID-FFT Flujo múltiple de instrucciones y de datos
Sistemas de procesamiento según Flynn SIMD CEMISID-FFT Flujo único de instrucciones y flujo múltiple de datos
PROCESADOR VECTORIAL Definición Características - Cálculos independientes - Las instrucciones indican gran cantidad de trabajo - Los accesos a memoria son con patrones fijos - Se eliminan las acciones de control sobre el encauce - ¿Desventaja? CEMISID-FFT
PROCESADOR VECTORIAL Arquitectura CEMISID-FFT Arquitectura memoria - memoria
PROCESADOR VECTORIAL CEMISID-FFT Arquitectura registro - registro
PROCESADOR VECTORIAL Aplicaciones - Procesamiento multimedia - Procesamiento de señales digitales - Tratamiento de algoritmos evolutivos - Redes de comunicaciones - Criptografía - Ingeniería CEMISID-FFT
HERRAMIENTA ALLIANCE “Diseño en VLSI mediante VHDL” Especificación de comportamiento Síntesis CEMISID-FFT Bloques funcionales interconectados
HERRAMIENTA ALLIANCE “Diseño en VLSI mediante VHDL” Colocación y enrutamiento CEMISID-FFT
FABRICACIÓN DEL CHIP CEMISID-FFT
ARQUITECTURA DEL PROCESADOR CEMISID-FFT
ARQUITECTURA DEL PROCESADOR CEMISID-FFT Encauce
ARQUITECTURA DEL PROCESADOR CEMISID-FFT Repertorio y Formato de Instrucciones (ISA) - Instrucciones con registros vectoriales
ARQUITECTURA DEL PROCESADOR CEMISID-FFT Repertorio y Formato de Instrucciones (ISA) - Instrucciones con constantes
ARQUITECTURA DEL PROCESADOR CEMISID-FFT Repertorio y Formato de Instrucciones (ISA) - Instrucciones de carga y almacenamiento en memoria
ARQUITECTURA DEL PROCESADOR CEMISID-FFT Repertorio y Formato de Instrucciones (ISA) - Instrucción FFT
ARQUITECTURA DEL PROCESADOR CEMISID-FFT Transformada Discreta de Fourier - Definición: Que en representación matricial corresponde con:
ARQUITECTURA DEL PROCESADOR CEMISID-FFT Y por simplificaciones matemáticas puede plantearse:
ARQUITECTURA DEL PROCESADOR CEMISID-FFT Aplicaciones de la DFT - Procesamiento digital de señales - Resolución de ecuaciones diferenciales parciales - Multiplicación polinomial - Multiplicación de enteros grandes - Compresión de datos - Análisis espectral
DESCRIPCIÓN DE COMPONENTES CEMISID-FFT
DESCRIPCIÓN DE LA UNIDAD ARITMÉTICA - LÓGICA Definición Tipos de datos manejadosA=0001 Encauce CEMISID-FFT
Encauce CEMISID-FFT ADD ADD ADD
Operaciones - Lógicas: andv, orv, xorv, notv - Aritméticas: addsv, addv, subsv, subv, mulsv - De carga y almacenamiento: load, store CEMISID-FFT
Vista tope y puertos CEMISID-FFT Z_o C_o OVF_o N_o ALU_o C_i ALU_OP_i A_i B_i CLK MEM_ADDR_i MEM_RW_i A L U
Arquitectura interna CEMISID-FFT Unidad lógica Sumador/ Restador Sumador/ Restador Multiplicador Memoria de Datos mux2to1 mux4to1 Lógica de banderas A_i B_i ALU_OP_i ALU_o C_i MEM_ADDR_i MEM_RW_i Z_o C_o OVF_o N_o CLK (1) (3 to 2)
UNIDAD LÓGICA Definición Puertos y vista tope CEMISID-FFT LU A_i B_i CLKALU_OP_i LU_o
Organización interna CEMISID-FFT
Componente mLU CEMISID-FFT
SUMADOR - RESTADOR Vista tope y puertos CEMISID-FFT
Organización interna CEMISID-FFT
MULTIPLICADOR CEMISID-FFT Vista tope y puertos Multiplicador encauzado Multiplicador encauzado X Y CLK Z
Organización interna CEMISID-FFT
MEMORIA DE DATOS Puntos a exponer CEMISID-FFT
DESCRIPCIÓN DEL ARCHIVO DE REGISTROS VECTORIALES Vista tope y puertos CEMISID-FFT
Operación de lectura CEMISID-FFT
Operación de escritura CEMISID-FFT
DESCRIPCIÓN DE LA MEMORIA DE INSTRUCCIONES Puntos a exponer CEMISID-FFT
DESCRIPCIÓN DE LA UNIDAD DE DEPENDENCIA Diseño de la entidad CEMISID-FFT CURR_INST_i HAZARD_o hazards_unit NEXT_INST_i Próxima instrucción Instrucción actual Indicación de dependencia
DESCRIPCIÓN DE LA UNIDAD DE DEPENDENCIA Formato de instrucciones CEMISID-FFT Operacion Registro Destino Registro Fuente A Registro Fuente B Operacion Registro Destino Registro Fuente A Constante FFT Registro Fuente y Destino (Reales) Registro Fuente y Destino (Imag) LOAD Registro Destino Dirección en memoria STORE Registro Fuente Dirección en memoria Inst. con Reg. Vectoriales Inst. con Constantes FFT Inst. Con Memoria
DESCRIPCIÓN DE LA UNIDAD DE DEPENDENCIA Dependencia: Dependencia de primer nivel Procesador encauzado Necesidad de esperar para que los datos sean congruentes CEMISID-FFT ADDR1R2R3 ADDR4R1R5 I1: I2:
DESCRIPCIÓN DE LA UNIDAD DE DEPENDENCIA Tipos de comparaciones entre direcciones de registros CEMISID-FFT RVCteFFTLS RV1213 Cte1213 FFT4546 L1213 S NEXT_INST_i CURR_INST_i
DESCRIPCIÓN DE LA UNIDAD DE DEPENDENCIA Tipos de comparaciones entre registros CEMISID-FFT RVCteFFTLS RV1213 Cte1213 FFT4546 L1213 S NEXT_INST_i CURR_INST_i Operacion Registro Destino Registro Fuente A Registro Fuente B Operacion Registro Destino Registro Fuente A Registro Fuente B RV:
DESCRIPCIÓN DE LA UNIDAD DE DEPENDENCIA Tipos de comparaciones entre registros CEMISID-FFT RVCteFFTLS RV1213 Cte1213 FFT4546 L1213 S NEXT_INST_i CURR_INST_i Operacion Registro Destino Registro Fuente A Registro Fuente B Operacion Registro Destino Registro Fuente A Constante RV: Cte:
DESCRIPCIÓN DE LA UNIDAD DE DEPENDENCIA Tipos de comparaciones entre registros CEMISID-FFT RVCteFFTLS RV1213 Cte1213 FFT4546 L1213 S NEXT_INST_i CURR_INST_i Operacion Registro Destino Registro Fuente A Registro Fuente B STORE Registro Fuente Dirección en memoria RV: S:
DESCRIPCIÓN DE LA UNIDAD DE DEPENDENCIA Tipos de comparaciones entre registros CEMISID-FFT RVCteFFTLS RV1213 Cte1213 FFT4546 L1213 S NEXT_INST_i CURR_INST_i Operacion Registro Destino A Registro Destino B Operacion Registro Destino Registro Fuente A Registro Fuente B FFT: S:
DESCRIPCIÓN DE LA UNIDAD DE DEPENDENCIA Tipos de comparaciones entre registros CEMISID-FFT RVCteFFTLS RV1213 Cte1213 FFT4546 L1213 S NEXT_INST_i CURR_INST_i FFT Registro Destino A Registro Destino B Operacion Registro Destino Registro Fuente A Constante FFT: S:
DESCRIPCIÓN DE LA UNIDAD DE DEPENDENCIA Tipos de comparaciones entre registros CEMISID-FFT RVCteFFTLS RV1213 Cte1213 FFT4546 L1213 S NEXT_INST_i CURR_INST_i FFT Registro Destino A Registro Destino B STORE Registro Fuente Direccide memoria FFT: S:
DESCRIPCIÓN DE LA UNIDAD DE DEPENDENCIA Tipos de comparaciones entre registros CEMISID-FFT RVCteFFTLS RV1213 Cte1213 FFT4546 L1213 S NEXT_INST_i CURR_INST_i Cuando la siguiente instrucción es LOAD no hay dependencia ya que no se utiliza registros como operandos Cuando la instrucción actual es STORE no importa que operación venga luego ya que el valor del registro fuente ya está en memoria
DESCRIPCIÓN DE LA UNIDAD DE DEPENDENCIA Diseño CEMISID-FFT OperacionRegistro OperacionRegistro NEXT_INST_i CURR_INST_i
DESCRIPCIÓN DE LA UNIDAD DE DEPENDENCIA Diseño de comportamiento CEMISID-FFT Equal [4-5][4-5] Equal [4-5][6-7] Equal [4-5][8-9] Unidad de selección de dependencia Hazard Unidad Comparadora Equal [6-7][4-5] Equal [6-7] [6-7] Equal [6-7] [8-9] Equal [8-9][4-5] Equal [8-9] [6-7] Equal [8-9] [8-9] NEXT_INST_i CURR_INST_i
DESCRIPCIÓN DE LA UNIDAD DE DEPENDENCIA Diseño de comportamiento Unidad comparadora CEMISID-FFT Equal [4-5] [4-5] Equal [4-5] [6-7] Equal [4-5][8-9] Curr_Inst Next_Inst Comparador 2 bits Comparador 2 bits Comparador 2 bits
DESCRIPCIÓN DE LA UNIDAD DE DEPENDENCIA Diseño de comportamiento Unidad de selección de dependencia CEMISID-FFT Curr_Operation Next_Operation Equal [4-5][4-5] Equal [4-5][6-7] Equal [4-5][8-9] Unidad de selección de dependencia Hazard Equal [6-7][4-5] Equal [6-7] [6-7] Equal [6-7] [8-9] Equal [8-9][4-5] Equal [8-9] [6-7] Equal [8-9] [8-9]
DESCRIPCIÓN DE LOS REGISTROS DE ENCAUCE Puntos a exponer CEMISID-FFT
DESCRIPCIÓN DE LA UNIDAD DE CONTROL Vista tope y puertos CEMISID-FFT
Organización interna
CEMISID-FFT FFT FSM Hazard FSM
CEMISID-FFT Organización interna
SIMULACIÓN DE COMPORTAMIENTO Puntos a exponer CEMISID-FFT
EMULACIÓN EN FPGA Puntos a exponer CEMISID-FFT
CONCLUSIONES Puntos a exponer CEMISID-FFT
Ahora el CEMISID - FFT está listo para fabricarse tal como cualquier otro procesador comercial CEMISID-FFT from-sand-to-silicon-the-making-of-a-chip