Data Hazards and Forwarding Solutions

Computer Architecture


  • Pam Smallwood Regis University


In this activity, students will learn how to identify data hazards between MIPS assembly instructions, and will discover how forwarding can be used to handle these data hazards. This activity was designed for use in a Computer Architecture course that incorporates the MIPS datapath. However, it could be used for any course that introduces pipelining, with slight modifications.  

After completing this activity, students should be able to:

  • Identify data hazards between MIPS instructions being executed in a pipeline.
  • Identify the pipeline register that holds the correct, modified value of a register
  • Identify the instruction and stage where the correct, modified value of a register will be forwarded to

This activity was developed with NSF support through IUSE-1626765. You may request access to this activity via the following link: IntroCS-POGIL Activity Writing Program

Level:               Undergraduate
Setting:            Classroom
Activity Type:  Learning Cycle
Discipline:        Computer Science
Courses:           Computer Architecture
Keywords:       data hazards, MIPS pipeline data hazards, data hazard detection, data hazard detection rules, forwarding unit

Author Biography

Pam Smallwood, Regis University

Asst Professor
Computer Science dept
Regis University




How to Cite

Smallwood, P. (2023). Data Hazards and Forwarding Solutions: Computer Architecture. POGIL Activity Clearinghouse, 3(4). Retrieved from



CS-POGIL Activity Writing Program