Skip to content

Latest commit

 

History

History
85 lines (71 loc) · 14.4 KB

index.md

File metadata and controls

85 lines (71 loc) · 14.4 KB

MIPT-MIPS / MIPT-V is a pre-silicon simulator of MIPS and RISC-V CPUs It is able to measure performance of program running on CPU, thus taking best features of RTL and common functional simulation.

This project is a part of MIPT ILab activity at Moscow Institute of Physics and Technology (MIPT). The project is being developed by a group of students under the guidance of Intel employees. Additionally, it is a supporting project to MIPT lectures on Computer Architecture and Software Development courses.

Lectures and seminars are delivered each Friday 18:30, room 108 of RT building.

Computer Architecture

YouTube playlist: MIPT-MIPS 2018/2019

Date Event name
13 Sep Promotion event
• Slides: russian version
19 Sep Layers of Computer Science, ISA and uArch
• Slides: L1
03 Oct CMOS and Combinational Circuits
• Slides: L2 - CMOS, L3 - Combinational Circuits, YouTube
• Homework: Install Logisim and look inside ALU and CMOS examples.
17 Oct Sequential Circuits
• Slides: L4, YouTube
• Homework: Study implementation of SR-latch, T-latch counter and Mem array with Logisim. Refresh scheme of ALU and look inside Flip-flop ALU.
31 Oct Single-cycle implementation of MIPS/RISC-V CPU
• Slides: L5, YouTube
• Homework: Read wiki's MIPS section. Recap single-cycle data path (foils 20-26). Get familiar with single-cycle model: simulator & wiki. Study RISC-V opened issues.
14 Nov Pipeline
• Slides: L6, YouTube
• Homework: Walk through documentation on performance simulator and ports concepts. Read original paper on ASIM Perf Model Framework.
28 Nov Branch prediction
• Slides: L7, YouTube
12 Dec Advanced pipelining
• Slides: L8, YouTube
19 Dec First Test
08 Feb Superscalar CPU and multicore systems
• Slides: L9, no video was recorded.
15/22
Feb
Caches, pts I and II
• Slides: L10-11, YouTube L10, YouTube L11
15 Mar Out-of-order execution
• Slides: L12, YouTube
22 Mar Out-of-order execution: load-store architecture
• Slides: L13, YouTube
29 Mar Virtual Memory
• Slides: L14, YouTube
05 Apr Multiprocessor Systems
• Slides: L15, YouTube
12 Apr Simultaneous Multithreading
• Slides: L16, no video was recorded.
19 Apr
26 Apr Final Test

Instructions to use downloaded material can be found on wiki page. You may find lectures of previous year in our archive.

Software Development

Date Event name
13 Sep Promotion event
• Slides: russian version
26 Sep Version control system
Slides, YouTube
• Homework: read our our cheat sheet and contribute to members.md
• Further reading: Pro Git (Rus, Eng), Git Flight Rules (Rus, Eng)
10 Oct Build, Makefiles, and CMake
Slides, YouTube
• Homework: use Make or CMake to build your project, build MIPT-MIPS.
24 Oct Continuous Integration
Slides, YouTube
• Homework: install Travis CI for your project to run your Make or CMake builds.
07 Nov Code form
Slides, YouTube
21 Nov Unit testing
Slides, YouTube
05 Dec Test-driven development
Slides, YouTube

In addition, repository contains a lot of useful Wiki manuals about Git, MIPS, C++, Make utilites and so on.

Students Contribution Score

MIPT Name Score Comments
611 Denis Los 19 #98, #99, #77, #221, #225, #221, #70, #31, #20
718 Andrey Agrachev 4 + 9 #563, #465, ¼#626, #830, #248, #879, #821
714 Yauheni Sharamed 6 + 7 #599, #724, #649, #910, #925
618 Alexander Misevich 13 #37, #216, #201, #246, #124, #18, #283, #277
512 George Korepanov 12 #28, #48, #49, #26, #60, #45, #73
711 Vyacheslav Kompan 10 + 1 #354, #662, #122, ½#290
712 Egor Bova + 10 ½#530, #235, #461
711 Yan Logovskiy 4 + 5 #91, #92, ⅓#383, #506, ¼#613
616 Kirill Nedostoev 9 #147, #87, #93, #215, #214
717 Vsevolod Pukhov 4 + 2 #589, ½#530, #602
616 Alexander Timofeev 5 #69, #132, #215, #214
616 Konstantin Soshin 5 #165
616 Andrew Sultan 4 #282, #132
518 Alexander Seppar 4 fc526cb8, #25, #52
614 Alexey Steksov 3 #152, T#3
717 Ivan Startsev 2 #525
717 Arsen Davtyan 2 #660, #643
612 Danil Yarovoy 2 T#4
516 Ivan Korostelev 1 #32

List of Upcoming contributions

About us

The project is mentored by Igor Smirnov, Kirill Korolev, and Oleg Ladin under Pavel Kryukov's supervising. For more information, check this wiki page and MIPT ILab site

Additional repositories: