Skip to content

About Us

Pavel I. Kryukov edited this page Feb 7, 2018 · 55 revisions

This project is a part of ILab activity at Moscow Institute of Physics and Technology (MIPT) led by Intel employees.

The aim of the project is to teach the students the computer architecture through development of a microprocessor implementing the MIPS instruction set in both functional and performance simulators.

Brief project history

  • 2012: Alexander and Pavel replaced MDSP project with new project "uArchSim". More common MIPS became target ISA instead of complicated MDSP, focus was moved from simulation to computer architecture theory.
  • 2013: Project got new pun name "MIPT-MIPS". Mentors attempted to use FPGA for modeling, but the idea was postponed due to external circumstances.
  • 2014: Alexander and Pavel continued MIPT-MIPS project, adding new lectures material and assignments.
  • 2015: Project moves from GoogleCode SVN to GitHub. Since Alexander started his Digital Design course, the new mentors team consists of Pavel Kryukov and Igor Smirnov.
  • 2016: Project takes a half-year hiatus and starts on February 2017 with brand new assignments.
  • 2017: TBD

Brief simulator changelist

For the full simulator changelist, please check our releases page

  • 2013: Elf parser, functional model
  • 2015: MIPS disassembler, functional model
  • 2016: Performance model, standalone cache simulator
  • 2017: Branch prediction
  • 2018: Simulation speed improvements, new instructions and traces

Roadmap

The nearest objective is to create performance model of classical 5-stage MIPS CPU using most of the features described by Hennessy and Patterson:

  • Data and Instruction caches
  • Data bypassing and non-unified pipelines
  • Interrupts and system calls

Then, possible main directions are:

  • Forking project to create model of out-of-order superscalar MIPS, like R10000.
  • Align model with MIPSfpga.
  • Verilog model of 5-stage MIPS CPU aligned with performance model.
  • Multicore/Multithread modeling support with cache coherence models.
  • Encapsulation of ISA and switch to multi-ISA simulation: MIPS, RISC-V, and ARM.
  • Integration with existing simulation environments.

Current mentors

Pavel Kryukov Igor Smirnov
lectures code review assistance

Legal information

MIPT-MIPS source code is distributed under the terms of MIT License.

The lectures have been created by Alexandr Titov, Pavel Kryukov and Igor Smirnov. The content is distributed under the terms of the CC BY-SA 3.0 License.

Intel and the Intel Logo are registered trademarks in the U.S. and/or other countries.

MIPS is a registered trademark of MIPS Technologies.

Other names and brands may be claimed as the property of others.

Contact info

Pavel Kryukov: [email protected]
Igor Smirnov: [email protected]

Clone this wiki locally