Esta es la presentación del proyecto de grado "Plataforma para la emulación y reconfiguración de arquitecturas RISC y CISC", denominada XISCKER (Reduced/Complex Instruction Set Computing Key Educational Resource). Desarrollado por Jose Pinilla y Alfredo Gualdrón, bajo la dirección del MSc. Alonso Retamoso
Contenido:
Justificación
Objetivos
Metodología
Futuro
3. OBJETIVO GENERAL
Diseñar un emulador de procesadores con
arquitecturas tipo RISC y CISC descritos en Verilog para
FPGA y un software en Visual Basic para supervisar el
estado del procesador que esté implementado.
4. OBJETIVOS ESPECÍFICOS
1. Diseñar e implementar un procesador de arquitectura
RISC en circuitos de lógica programable.
2. Diseñar e implementar un procesador de arquitectura
CISC en circuitos de lógica programable.
3. Programar una Interfaz Gráfica de Usuario (GUI) que
permita el seguimiento del procesador implementado y la
traducción de programas en lenguaje ensamblador a
código de máquina.
4. Elaborar una guía de usuario que facilite la comprensión y
manejo de la plataforma.
5. OBJETIVOS ESPECÍFICOS
1. Diseñar e implementar un procesador de arquitectura
RISC en circuitos de lógica programable.
2. Diseñar e implementar un procesador de arquitectura
CISC en circuitos de lógica programable.
3. Programar una Interfaz Gráfica de Usuario (GUI) que
permita el seguimiento del procesador implementado y la
traducción de programas en lenguaje ensamblador a
código de máquina.
4. Elaborar una guía de usuario que facilite la comprensión y
manejo de la plataforma.
7. METODOLOGÍA DE DISEÑO:
CARACTERÍSTICAS RISCKER
Característica RISCKER
# de Instrucciones 30
# de Registros 64
ALU 16 bits
Arquitectura de memoria Harvard
Tamaño de las instrucciones Fijo: 32-bits
Multiplicación y División Unidad de hardware dedicada
Operaciones “Shift” Lógica, Aritmética y Rotación tipo "Barril"
Modos de Direccionamiento Inmediato,Directo, Indirecto,Desplazado
Tamaño máximo de memoria 65536x32bits 65536x16bits
# de condiciones de salto 2
Temporizadores 2 de 16 bits
Interrupciones 2 por Temporizador y 2 Externas
Unidad de Control HCU
Arquitectura similar MIPS
8. METODOLOGÍA DE DISEÑO:
ESTRUCTURACIÓN ISA
TIPO R
0000 Rd Rs Rt Function [ALU operation & Shift amount]
TIPO I
Opcode Rd Rs Inmediato
TIPO J
Opcode Inmediato
Opcode Rd Rs Inmediato
Opcode Rd Inmediato
15. METODOLOGÍA DE DISEÑO:
SINTAXIS ASSEMBLER
[Etiqueta] : [Operación] [Operandos] ; [Comentario]
[Etiqueta]:[Operación] [Rd],[Rs],[Rt],#[Imm/Dir];[Comentario]
beq rg1, rg0, #16 ;Salto condicional, si rg1 es igual a
;rg0 a la dirección 16
lw rg3, r0, #0
;Cargar el registro rg3 con el dato Memoria[r0+0]
inc op ;Incrementar el puerto de salida (op)
16. OBJETIVOS ESPECÍFICOS
1. Diseñar e implementar un procesador de arquitectura
RISC en circuitos de lógica programable.
2. Diseñar e implementar un procesador de arquitectura
CISC en circuitos de lógica programable.
3. Programar una Interfaz Gráfica de Usuario (GUI) que
permita el seguimiento del procesador implementado y la
traducción de programas en lenguaje ensamblador a
código de máquina.
4. Elaborar una guía de usuario que facilite la comprensión y
manejo de la plataforma.
18. METODOLOGÍA DE DISEÑO:
CARACTERISTICAS CISCKER
Característica CISCKER
# de Instrucciones 244
# de Registros 4
ALU 16bits
Arquitectura de memoria Von Neumann
Tamaño de las instrucciones Variable: 8 a 24-bits
Multiplicación y División Iteraciones
Operaciones “Shift" Logica, Aritmetica y Rotación de 1 bit
Modos de Direccionamiento INH,REL,IMM,DIR,EXT,IX,IX+
Tamaño máximo de memoria 65536x16bits
# de condiciones de salto 14
Temporizadores 2 de 16 bits
Interrupciones 2 por Temporizador y 2 Externas
Unidad de Control MCU
Arquitectura similar HC08 y HC11 Freescale
27. METODOLOGÍA DE DISEÑO:
SINTAXIS ASSEMBLER
[Etiqueta]: [Operación] [Operando], [MD] ;[Comentarios]
ADDA #10, IX ; Sumar ACCA con Memoria[IX+10]
INCA ; Incrementar ACCA
28. OBJETIVOS ESPECÍFICOS
1. Diseñar e implementar un procesador de arquitectura
RISC en circuitos de lógica programable.
2. Diseñar e implementar un procesador de arquitectura
CISC en circuitos de lógica programable.
3. Programar una Interfaz Gráfica de Usuario (GUI) que
permita el seguimiento del procesador implementado y la
traducción de programas en lenguaje ensamblador a
código de máquina.
4. Elaborar una guía de usuario que facilite la comprensión y
manejo de la plataforma.
29. METODOLOGÍA DE DISEÑO:
REQUISITOS SOFTWARE
1. Editar archivos de texto con código ensamblador
2. Generar el archivo de inicialización de memoria
3. Permitir la depuración de errores de código
4. Visualizar el estado del procesador
5. Programar desde la interfaz
38. OBJETIVOS ESPECÍFICOS
1. Diseñar e implementar un procesador de arquitectura
RISC en circuitos de lógica programable.
2. Diseñar e implementar un procesador de arquitectura
CISC en circuitos de lógica programable.
3. Programar una Interfaz Gráfica de Usuario (GUI) que
permita el seguimiento del procesador implementado y la
traducción de programas en lenguaje ensamblador a
código de máquina.
4. Elaborar una guía de usuario que facilite la comprensión y
manejo de la plataforma.
39. METODOLOGÍA DE DISEÑO:
Documentación
Guía de Usuario XISCKER
Tabla de Contenido
1. Introducción
XISCKER 2. Arquitecturas XISCKER
3. Arquitectura de la Plataforma
Guía de Usuario
4. Programación en XISCKER ASM
5. Emulación en XISCKER ASM
6. Reconfiguración HW XISCKER
7. Bibliografía
1 2