Tool to Support Computer Architecture Teaching and Learning
140 likes | 334 Views
Bruno Nova Preparação da Dissertação Supervisor: António Araújo MIEIC – FEUP. Tool to Support Computer Architecture Teaching and Learning. Agenda. Context The problem Some existing tools Proposed solution Technology to be used Work plan. Context. Computer architecture
Tool to Support Computer Architecture Teaching and Learning
E N D
Presentation Transcript
Bruno Nova Preparação da Dissertação Supervisor: António Araújo MIEIC – FEUP Tool to Support Computer Architecture Teaching and Learning
Agenda • Context • The problem • Some existing tools • Proposed solution • Technology to be used • Work plan Preparação da Dissertação - MIEIC - FEUP
Context • Computer architecture • Subject of courses like: • Informatics Engineering • Electrical Engineering • Students learn topics like: • Data representation and circuits • Composition of a CPU • Programming in assembly • Processor performance • MIPS usually used Preparação da Dissertação - MIEIC - FEUP
The problem • Students have difficulties understanding: • CPU datapath and control • Processor pipelining • General operation • Advantages • Hazards • Performance calculation • … Preparação da Dissertação - MIEIC - FEUP
The problem • Why do students have these difficulties? • Absence of tools that: • Are geared towards education • Show the CPU state in each execution step • Represent the datapath graphically • Simulate both unicycle and pipeline versions • Are simple to use and understand • Some tools exist, but none covers all these aspects Preparação da Dissertação - MIEIC - FEUP
Some existing tools • MARS • No pipeline • No visual datapath Source: [1] Preparação da Dissertação - MIEIC - FEUP
Some existing tools • ProcSim • Few instructions • No pipeline • Sequential animation Source: [2] Preparação da Dissertação - MIEIC - FEUP
Some existing tools • MIPS-Datapath • Few instructions • Bad state visualization • Lim. hazards detection Source: [3] Preparação da Dissertação - MIEIC - FEUP
Some existing tools • WebMIPS • Static datapath • Click for inputs/outputs Source: [4] Preparação da Dissertação - MIEIC - FEUP
Proposed solution • Create a simulator of a MIPS CPU that: • Integrates various features: • Simulate unicycle and pipelined versions • Show detailed information step-by-step • Displaying the datapath graphically • Execute programs or single instructions • Identify the critical path and performance • Allow configuration of the datapath • By parameterizing blocks • Reuses or interacts with existing tools • Is intuitive and simple to use Preparação da Dissertação - MIEIC - FEUP
Technology to be used • MIPS architecture • Developed in Java • Cross-platform language • Simplified version for Android tablets • Which use Java too • Nothing like this exists • Reuse work already done Preparação da Dissertação - MIEIC - FEUP
Work plan • Requirements specification (1 week) • Interface specification (1 week) • Non-functional prototype • Implementation (13 weeks) • Internal CPU representation (3 weeks) • Editor and simulation (4 weeks) • Unicycle • Pipeline • Datapath configuration (2 weeks) • Android version (4 weeks) • Documentation and report (2 weeks) Preparação da Dissertação - MIEIC - FEUP
References [1] Dr. Kenneth Vollmar and Dr. Pete Sanderson. MARS: An Education-Oriented MIPS Assembly Language Simulator. March 2006. Accessed on January 7, 2013. http://www.cs.missouristate.edu/~vollmar/MARS/fp288-vollmar.pdf. [2] James Garton. ProcessorSim – A Visual MIPS R2000 Processor Simulator, 2005. Accessed on January 7, 2013. http://jamesgart.com/procsim. [3] Andrew Gascoyne-Cecil. MIPS-Datapath. Accessed on January 7, 2013. http://mi.eng.cam.ac.uk/~ahg/MIPS-Datapath. [4] Irina Branovic, Roberto Giorgi, and EnricoMartinelli. WebMIPS: A New Web-Based MIPS Simulation Environment for Computer Architecture Education. Workshop on Computer Architecture Education, 31st International Symposium on Computer Architecture, 2004. Accessed on January 8, 2013. http://www4.ncsu.edu/~efg/wcae/2004/submissions/giorgi.pdf. Preparação da Dissertação - MIEIC - FEUP
Questions? Preparação da Dissertação - MIEIC - FEUP