12.07.2015 Views

Generador-corrector de problemas de la Unidad de Control

Generador-corrector de problemas de la Unidad de Control

Generador-corrector de problemas de la Unidad de Control

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

442Recursos docentesse quedaba corta, principalmente por <strong>la</strong>interacción con el usuario, en <strong>la</strong> que el estudianteera un receptor pasivo <strong>de</strong>l comportamiento <strong>de</strong> uni8088 simplificado.Se observó, también, que los alumnos tenían<strong>problemas</strong> a <strong>la</strong> hora <strong>de</strong> <strong>de</strong>sarrol<strong>la</strong>r loscronogramas <strong>de</strong> ejecución <strong>de</strong> <strong>la</strong>s instrucciones quese les proponían, y a<strong>de</strong>más, el número <strong>de</strong>ejercicios corregidos les resultaban escasos.Es por ello, por lo que se <strong>de</strong>sarrolló <strong>la</strong>aplicación Previuc, en <strong>la</strong> que el alumno podríaparametrizar el computador elemental, entrevarias opciones, y ejercitarse en el cálculo <strong>de</strong> loscronogramas <strong>de</strong> ejecución para diferentesinstrucciones con distintos modos <strong>de</strong>direccionamiento; sabiendo, que <strong>la</strong> aplicación leindicaría los errores que pudiera cometer.resolver los distintos ejercicios <strong>de</strong> manerainteractiva, indicándole <strong>la</strong> aplicación si hacometido algún error o si es correcto.5.1. El asistente para <strong>la</strong> creación <strong>de</strong> máquinasLa aplicación cuenta con un asistente para <strong>la</strong>creación <strong>de</strong> diferentes computadores elementalescon el que el usuario pue<strong>de</strong> <strong>de</strong>cidir que elementosquiere y cuales no en el diseño final <strong>de</strong> suarquitectura.La aplicación comienza con dicho asistente,tal y como se muestra en <strong>la</strong> figura 1.4. Descripción <strong>de</strong> <strong>la</strong>s asignaturasLa asignatura <strong>de</strong> Arquitectura <strong>de</strong> Computadores,<strong>de</strong> <strong>la</strong> titu<strong>la</strong>ción <strong>de</strong> I. T. Informática <strong>de</strong> Gestión y<strong>de</strong> <strong>la</strong> <strong>de</strong> Arquitectura <strong>de</strong> Computadores I <strong>de</strong> I. T.Informática <strong>de</strong> Ssstemas <strong>de</strong> <strong>la</strong> Universidad <strong>de</strong>Alcalá, se recogen en el B.O.E. <strong>de</strong>l 24 <strong>de</strong> mayo<strong>de</strong> 1995 [6].A partir <strong>de</strong>l <strong>de</strong>scriptor <strong>de</strong> <strong>la</strong> asignatura, eltema <strong>de</strong> <strong>la</strong> unidad <strong>de</strong> control ocupa 8 horas <strong>de</strong>c<strong>la</strong>se, y en él se ven los siguientes conceptos:1. Operaciones elementales.2. Estructura <strong>de</strong> un computador elemental.3. Señales <strong>de</strong> control.4. Temporización <strong>de</strong> <strong>la</strong>s señales <strong>de</strong> control.5. Ejecución <strong>de</strong> instrucciones.6. Diseño <strong>de</strong> <strong>la</strong> unidad <strong>de</strong> control.7. <strong>Unidad</strong> <strong>de</strong> control cableada.8. <strong>Unidad</strong> <strong>de</strong> control microprogramada.9. Microprogramación y nanoprogramación.Figura 1.Asistente para <strong>la</strong> creación <strong>de</strong>lcomputador.Cuando se <strong>de</strong>sea crear una máquina nuevasobre <strong>la</strong> que ejecutar instrucciones, se nospresentan diferentes opciones, recogidas en <strong>la</strong>sfiguras siguientes, <strong>de</strong>s<strong>de</strong> <strong>la</strong> elección <strong>de</strong> si el bus esmultiplexado para datos y direcciones, o se cuentacon un bus diferente para estos (figura 2)La aplicación Previuc abarca los puntos 1 a 5.5. PreviucLa aplicación Previuc presenta <strong>de</strong> manera visual <strong>la</strong>ejecución <strong>de</strong> instrucciones elegidas por el alumno,en un computador elemental, también diseñadopor el alumno. A<strong>de</strong>más, permite al estudiante


XIII Jornadas <strong>de</strong> Enseñanza Universitaria <strong>de</strong> <strong>la</strong> Informática 443Figura 2.Elección <strong>de</strong>l tipo <strong>de</strong> bus.Posteriormente se permite al usuario <strong>la</strong>elección <strong>de</strong> si el banco <strong>de</strong> registros contará con unpuerto <strong>de</strong> entrada y uno <strong>de</strong> salida o con uno <strong>de</strong>entrada y dos <strong>de</strong> salida (figura 3)Figura 4.Elección <strong>de</strong> <strong>la</strong> unidad <strong>de</strong>direccionamiento.Finalmente, se presentan una serie <strong>de</strong>opciones adicionales para ver si los buses secomunican, o a qué entrada <strong>de</strong> <strong>la</strong> ALU se pue<strong>de</strong>conectar el contador <strong>de</strong> programa (figura 5)Figura 3.Elección <strong>de</strong>l banco <strong>de</strong> registros.El siguiente paso es <strong>de</strong>cidir si <strong>la</strong> unidad <strong>de</strong>direccionamiento contará con <strong>la</strong> posibilidad <strong>de</strong>autoincremento o se <strong>de</strong>berá pasar por <strong>la</strong> ALU paraactualizar el valor <strong>de</strong>l contador <strong>de</strong> programa.Dicha elección se muestra en <strong>la</strong> figura 4.Figura 5.Opciones adicionales.Si en los 4 pasos anteriores, el usuario hacreado una maquina incoherente, <strong>la</strong> aplicacióngenerará el computador sin errores queimposibiliten <strong>la</strong> ejecución <strong>de</strong> instrucciones.


444Recursos docentesUn ejemplo <strong>de</strong>l computador elementalgenerado con <strong>la</strong>s opciones anteriores se muestraen <strong>la</strong> figura siguienteLa manera <strong>de</strong> indicar <strong>la</strong> solución <strong>de</strong>l ejercicio es irintroduciendo <strong>la</strong>s señales y los valores <strong>de</strong> éstas encada uno <strong>de</strong> los periodos <strong>de</strong> ejecución <strong>de</strong> <strong>la</strong>instrucción (figuras 9 y 10)Figura 6.Computador elemental generado.Una vez generada <strong>la</strong> máquina elemental, elprograma pregunta al usuario por <strong>la</strong> instrucciónque <strong>de</strong>sea ejecutar (figura 7)Figura 9.Introducción <strong>de</strong> los periodos.Figura 7.Solicitud <strong>de</strong> <strong>la</strong> instrucción a ejecutar.Con <strong>la</strong> máquina ya terminada y con <strong>la</strong>instrucción y el modo <strong>de</strong> direccionamientoelegidos por el usuario, ya permitiría al usuarioresolver el cronograma <strong>de</strong> ejecución (figura 8)Figura 10. Introducción <strong>de</strong> <strong>la</strong>s señales <strong>de</strong> cadaperiodo <strong>de</strong> ejecución.La <strong>de</strong>scripción <strong>de</strong> lo que hace cada periodo semuestra en <strong>la</strong> ventana inferior, <strong>la</strong> <strong>de</strong>l historial, taly como muestra <strong>la</strong> figura 11.Figura 11. Historial <strong>de</strong> <strong>la</strong> ejecución <strong>de</strong> <strong>la</strong>instrucción.Figura 8.Resolución <strong>de</strong>l cronograma.


XIII Jornadas <strong>de</strong> Enseñanza Universitaria <strong>de</strong> <strong>la</strong> Informática 445El estudiante pue<strong>de</strong> pedir ver <strong>la</strong> soluciónentera, o <strong>la</strong> solución <strong>de</strong> un <strong>de</strong>terminado periodo ycomprobar si lo ha resuelto, o no, correctamente.Los errores se muestran en rojo y <strong>la</strong> solución <strong>de</strong>alumno en ver<strong>de</strong>. En <strong>la</strong> figura 12, los errores sehan remarcado con un círculo.<strong>de</strong>berá elegir <strong>la</strong> opción <strong>de</strong> “Recuperar instrucciónincompleta” (figura 14)Figura 13. Solución <strong>de</strong>l programa Previuc.Al recuperar una instrucción incompleta, elprograma le mostrará <strong>la</strong>s instrucciones que ha<strong>de</strong>jado a medias en otras sesiones. Entre el<strong>la</strong>s elestudiante podrá elegir con cual continuar,simplemente, marcándo<strong>la</strong> <strong>de</strong> <strong>la</strong> lista.Figura 12. Errores en <strong>la</strong> solución <strong>de</strong>l alumno.El alumno pue<strong>de</strong> solicitar en cualquiermomento <strong>la</strong> solución <strong>de</strong> un periodo o <strong>la</strong> solucióncompleta y <strong>la</strong> aplicación se <strong>la</strong> daría. Elcronograma <strong>de</strong> <strong>la</strong> solución <strong>de</strong> <strong>la</strong> instrucción <strong>de</strong>lejemplo: ADD BL, Vector [SI[ se muestra en <strong>la</strong>figura 13.La aplicación también permite <strong>de</strong>jar <strong>la</strong>resolución <strong>de</strong>l ejercicio para más a<strong>de</strong><strong>la</strong>nte, con loque el alumno tiene que guardar el estado actual<strong>de</strong>l mismo. De hecho, guardaría <strong>la</strong> arquitecturagenerada y <strong>la</strong>s fases que ha resuelto hasta elmomento. De esa manera, al iniciar <strong>la</strong> aplicaciónnuevamente, en <strong>la</strong> pantal<strong>la</strong> <strong>de</strong>l asistente, el usuarioFigura 14. Recuperación <strong>de</strong> instruccionesincompletas.


446Recursos docentesFinalmente, para el modo tutorial, <strong>la</strong> opción<strong>de</strong> <strong>la</strong> aplicación es <strong>de</strong>s<strong>de</strong> el asistente escoger“Recuperar instrucción completada” (figura 15)direccionamiento (entre los disponibles) para queel profesor evalúe si está empleando el recursodocente <strong>de</strong> manera correcta o no.Finalmente, y una vez comprobado que elestudiante no tiene <strong>problemas</strong> con <strong>la</strong> aplicación, sele pue<strong>de</strong> <strong>de</strong>jar sólo resolviendo tantos ejercicioscomo él <strong>de</strong>see <strong>de</strong> manera totalmente autónonoma.7. ConclusionesSe ha <strong>de</strong>sarrol<strong>la</strong>do una aplicación que permite alestudiante suplir <strong>la</strong> falta <strong>de</strong> ejercicios resueltos <strong>de</strong>ltema <strong>de</strong> <strong>la</strong> <strong>Unidad</strong> <strong>de</strong> <strong>Control</strong>. Por lo que se esperaque en el próximo cuatrimestre <strong>la</strong> puedan emplearen sus estudios.No obstante, los autores consi<strong>de</strong>ramos que enun futuro se podría <strong>de</strong>sarrol<strong>la</strong>r <strong>la</strong> mismaaplicación, pero para <strong>la</strong> Web, <strong>de</strong> manera que seaaccesible a todos los estudiantes, incluso, <strong>de</strong>s<strong>de</strong>sus domicilios y puestos <strong>de</strong> trabajo.Figura 15. Recuperación <strong>de</strong> instruccionescompletadas.Una vez que se recupera una instruccióncompletada, se pue<strong>de</strong>n ver los periodos <strong>de</strong> los queconstó su ejecución, <strong>la</strong>s señales generadas, sucronograma y <strong>la</strong> explicación <strong>de</strong>l mismo en <strong>la</strong>ventana <strong>de</strong>l historial.6. Sugerencias docentesEs aconsejable que al estudiante se le entregue elprograma Previuc junto con una guíametodológica para su aplicación.En dicha guía se le <strong>de</strong>be indicar cómo seconstruye uno <strong>de</strong> los posibles computadoreselementales y <strong>la</strong>s opciones que va a tenerdisponibles.También se le <strong>de</strong>be solicitar <strong>la</strong> ejecución yentrega impresa <strong>de</strong> los cronogramas <strong>de</strong> dos o tresinstrucciones con diferentes modos <strong>de</strong>Referencias[1] Britton, Robert L. MIPS AssemblyLanguaje Programming. Prentice Hall, 2004.[2] Boehm, Erich. DLX Distribution Homepage.http://www.wuwien.ac.at/usr/h93/h9301726/dlx.html, 1996.[3] Simuproc. http://simuproc.softonic.com/[4] Concheiro, Raquel ; Loureiro, Marta;Amor, Margarita y González, Patricia.Simu<strong>la</strong>3MS: simu<strong>la</strong>dor pedagógico <strong>de</strong> unprocesador. JENUI’05[5] De Diego Martínez, Rubén. MSX88: UnaHerramienta para <strong>la</strong> Enseñanza <strong>de</strong> <strong>la</strong>Estructura y Funcionamiento <strong>de</strong> losOr<strong>de</strong>nadores. URSI’94[6] B.O.E. <strong>de</strong>l 24 <strong>de</strong> mayo <strong>de</strong> 1995.[7] Patterson, D. A., Patterson J. L. Estructuray diseño <strong>de</strong> computadores. Reverté 2000

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!