Git Product home page Git Product logo

721-sim-renamer's Introduction

Project Description

This is a class project for ECE 721: Advanced Microarchitecture, taught at NC State's ECE Department by Dr. Eric Rotenberg.

The code developed here is implemented as a "fill-in-the-blanks" module - the function definitions and expectations are provided initially.

How to Run

Unfortunately, it is not possible to build and run this code without the rest of the executable. That said, you can use the Makefile to build the executable with make clean; make build command.

Implementation Brief

The code here implements a renamer stage in a classical out-of-order superscalar pipeline simulator, called 721sim. This is developed by Dr. Eric Rotenberg.

The renamer stage uses a variable sized Active List, Free List, an Architectural Map Table(AMT) and the Rename Map Table(RMT). The exception recovery and branch misprediction recovery is achieved by using a checkpoint bit vector, and Shadow Map Table, which takes a snapshop of the architectural registers(RMT) at every branch instruction.

ISA and Tools

We use the SPEC2006 Benchmark to test our simulator implementation. This simulator models the RISC-V ISA.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.