360 likes | 507 Views
Características deseables en un Procesador Pedagógico para la enseñanza básica de Arquitectura de Computadores. Fermín Sánchez Carracedo Universitat Politècnica de Catalunya. Índice. Marco General Características de una máquina pedagógica Ejemplos de máquinas: Máquina Sencilla DLX
E N D
Características deseables en un Procesador Pedagógico para la enseñanza básica deArquitectura de Computadores Fermín Sánchez Carracedo Universitat Politècnica de Catalunya
Índice • Marco General • Características de una máquina pedagógica • Ejemplos de máquinas: • Máquina Sencilla • DLX • Máquina Rudimentaria • Comparación • Lenguaje ensamblador y simulador • Conclusiones
Marco General • Aprendizaje en primera asignatura sobre AC en Ingeniería Informática • Objetivo: que el alumno entienda • Arquitectura von Newman • Misión de cada componente
Arquitectura von NeumannMemoria • = Banco de registros grande • Contiene instrucciones y datos • Jerarquía: cursos posteriores
Arquitectura von Neumann Entrada/Salida • Cursos posteriores • Se requieren conocimientos básicos de programación • Concepto de concurrencia difícil • Se puede estudiar un modelo sencillo totalmente secuencial
Arquitectura von Neumann Unidad Central de Proceso • UP y UC sencillas y bien diferenciadas • UC: 1 estado = 1 fase ejecución • UP: Componentes básicos para entender la ejecución secuencial de instrucciones
Arquitectura von Neumann Buses • Tipos de buses: datos, @ y control • Sincronización: cursos posteriores
Índice • Marco General • Características de una máquina pedagógica • Ejemplos de máquinas: • Máquina Sencilla • DLX • Máquina Rudimentaria • comparación • Lenguaje ensamblador y simulador • Conclusiones
Características: ISA • Arquitectura ortogonal y sencilla • RISC de carga-almacenamiento • Instrucciones: pocas y básicas • Tres tipos de instrucciones • Aritmético-lógicas R-R: +, -, >>, AND/OR • Transferencia Memoria-Banco Registros • Salto
Características: Memoria • Memoria única de instrucciones y datos • Tamaño instrucción = tamaño dato => No precisa alineamiento • Direccionamiento a nivel de palabra • Modos: Registro, Inmediato, Relativo, Absoluto (saltos) • Saltos con/sin flags
Características: UP • Banco de registros “pequeño”: 16x16 • PC direcciona toda la memoria • IR: 16-32 bits • ALU sencilla: ops básicas (+, -,AND,>>) • Registro de estado con pocos bits: Z, N, V, C
Índice • Marco General • Características de una máquina pedagógica • Ejemplos de máquinas: • Máquina Sencilla • DLX • Máquina Rudimentaria • Comparación • Lenguaje ensamblador y simulador • Conclusiones
Máquina Sencilla • Arquitectura Memoria-Memoria • Memoria: 128 x 16 bits • Direccionable a nivel de palabra • Instrucciones: 16 bits • Datos: Números naturales de 16 bits • 1 bit de estado: Z • 4 Instrucciones: ADD, MOV, CMP, BEQ
Máquina Sencilla • Ventajas • Extremadamente simple • Unidad de control muy sencilla • Inconvenientes • No hay Banco de registros • Sólo 1 espacio de direcciones • Sólo 1 modo de direccionamiento • Ampliarla requiere rediseñarla por completo
Índice • Marco General • Características de una máquina pedagógica • Ejemplos de máquinas: • Máquina Sencilla • DLX • Máquina Rudimentaria • Comparación • Lenguaje ensamblador y simulador • Conclusiones
DLX: Estructura • Instrucciones de 32 bits • Operandos de 8, 16 y 32 bits • Memoria: • De instrucciones y de datos • 232 x 8 bits cada una • Direccionable a nivel de byte • Requiere alineamiento
DLX: UP • 2 Bancos de registros: • Enteros 32 x 32 bits • FP 16 x 64 bits (32 x 32 bits) • Registro de estado: 1 bit (reales) • PC de 32 bits • IR de 32 bits
DLX: Instrucciones • Inmediato de 16 bits (constantes de 32) • Instrucciones enteras: • +,-,*,/, • AND,OR,XOR, • >>,<< (aritméticos y lógicos) • Instrucciones FP: • +,-,*,/ • CMP: activa bit registro de estado
DLX: Saltos • Saltos: • Incondicionales • Condicionales • Llamada a subrutina • Salto FP: Evalua bit registro estado • Salto entero: Evalua registro BR=0 • Modo relativo al PC (desp. 16 bits)
DLX • Ventajas • Muy bien documentado • Se pueden explicar conceptos avanzados en cursos posteriores usándolo completo • Inconvenientes • Demasiado complejo, pero… • Se puede usar una versión simplificada
DLX: Simplificación • Sólo instrucciones enteras • 1 banco de registros • Desaparece el hardware de reales • Saltos • homogéneos (sin registro de estado) • Subrutinas NO • Operandos 32 bits =>No requiere alineación • Inclusión de registros para relacionar estados de la UC con fases de ejecución
Índice • Marco General • Características de una máquina pedagógica • Ejemplos de máquinas: • Máquina Sencilla • DLX • Máquina Rudimentaria • Comparación • Lenguaje ensamblador y simulador • Conclusiones
MR • Memoria: • 256 x 16 bits • Direccionable a nivel de palabra • Instrucciones: 16 bits • Datos: enteros Ca2 de 16 bits
MR: UP y UC • Banco de Registros: 8 x 16 bits • PC: 8 bits • IR: 16 bits • Registro de estado: N, Z, (V) • UC: • Sencilla:1 estado = 1fase de ejecución • Existe versión optimizada (más compleja)
MR: Instrucciones • Cargas y almacenamientos • Modo relativo con desplazamiento de 8 bits • Saltos • Condicionales e incondicionales • Modo absoluto (8 bits) • Aritmético-Lógicas: • +, -, AND, >> lógico • Inmediato de 5 bits (+, -)
MR • Ventajas • Cumple con los requisitos deseados • Inconvenientes • UP diseñada ad-hoc (visión irreal) • No es posible segmentarla para estudiar conceptos avanzados
Índice • Marco General • Características de una máquina pedagógica • Ejemplos de máquinas: • Máquina Sencilla • DLX • Máquina Rudimentaria • Comparación • Lenguaje ensamblador y simulador • Conclusiones
Índice • Marco General • Características de una máquina pedagógica • Ejemplos de máquinas: • Máquina Sencilla • DLX • Máquina Rudimentaria • comparación • Lenguaje ensamblador y simulador • Conclusiones
Lenguaje ensamblador • Objetivos: • Visión más cercana al usuario del LM • Traducción alto nivel => bajo nivel • de estructuras de datos • de sentencias estructuradas (if, while…) • Características deseables: • Sencillez • Direcciones simbólicas (etiquetas) • Directivas básicas (asignación y reserva de M.)
Simulador • ¿Por qué? • Permite que el alumno experimente y aprenda • Algunas Características: • Incorporar un ensamblador/depurador • Visualización de lo que sucede en cada momento • Visualizar y alterar UP, UC y memoria • Ejecución con diferente granularidad • Diagramas de tiempo • Presentación: SiMR
Índice • Marco General • Características de una máquina pedagógica • Ejemplos de máquinas: • Máquina Sencilla • DLX • Máquina Rudimentaria • Comparación • Lenguaje ensamblador y simulador • Conclusiones
Conclusiones • Características básicas de: • Procesador • Ensamblador • Simulador • ¿Procesador recomendado? • DLX simplificado • Cumple con los requisitos exigidos • Puede usarse en cursos posteriores