Skip to content

SlmaKh/TheBestISA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pipelined MIPS datapath simulator

  • Implemented with Java

Description

  • This simulator is a low-level cycle-accurate pipelined MIPS datapath simulator that simulates the datapath including all of its storage components (register file, memories, and pipeline registers) and all of its control signals.

Stages of the pipeline

  • IF : Instruction Fetch Stage
  • ID : Instruction Decode Stage
  • EX : Execution Stage
  • MEM : Memory Stage
  • WB : Write Back Stage

Implemented Instruction Set

  • Arithmetic Operations: add, sub, addi, mul
  • Logic Operations: or, andi, srl, sll
  • Data Transfer: lw, sw
  • Conditional Branch: beq, blt
  • Unconditional Jump : j
  • Comparison: slti

Implementation notes

  • The register file contains 32 general purpose registers of size 32-bit.
  • The chosen microarchitecture is the Von Neumann architecture having one memory for both data and instructions.
  • In order to protect and handle our memory safely we adopted the no-execute bit approach which is an array of bits (Booleans) to differentiate the data from the instructions to prevent data from being executed
  • The instruction and data memory combined have a size of 2048 words (2048 * 32 bits).
  • The Cache has a size of 512 words and use the direct mapping replacement policy using tag and index and valid bits.

Simulation

  • The Whole Programm is given as an input to the Simulator and it outputs all cycles info like : in clock cycle 2, what instruction is in each stage of the five stages in the pipelining, what are the operands, their values and the control signals values.

More Details

  • A Detailed Report for each component and detailed output

    Report

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages