140 likes | 329 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
E N D
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