Show a pipeline execution diagram for the program

Assignment Help Computer Engineering
Reference no: EM132103865

Problem #1

Given the following sequence of assembly language instructions:

I1: lw $3, 100($5)

I2: add $6, $3, $2

I3: sub $9, $3, $8

I4: lw $1, 2000($9)

I5: add $5, $4, $3

I6: addi $7, $1, #8

(a) Indicate all data dependencies (RAW, WAR, WAW) that exist between instructions by writing the instruction pairs among which the dependency exist.

(b) Now assume there is a data forwarding circuit in this pipelined processor and data is written in the first half-cycle and read in the second half-cycle, insert nop instructions to eliminate the data hazard in the above program. Show a pipeline execution diagram for the program, where all data forwards are marked with arrows. Moreover, on the data path circuit, identify the data value, inputs and outputs of the data forwarding unit in cycles when data is forwarded.

(c) Now assume there is a data forwarding circuit and hazard detection unit in this pipelined processor and data is written in the first half-cycle and read in the second half-cycle. Show a pipeline execution diagram for the program, where all stalls are marked with "**" and identify the inputs and outputs of the data hazard detection unit in cycles when stalls are inserted.

Problem #2

We assume that the following MIPS code is executed on a pipelined processor with a 5-stage pipeline (IF, ID, EX, MEM, WB), full data forwarding (including from MEM and WB stages to ID stage), hazard detection unit, and branch instruction is executed in ID stage.

Assume that the first half of the clock cycle write-back stage writes to register file and the second half of the clock cycle the decode stage performs a read of source registers. Show a pipeline execution diagram for the program, where all data forwards are marked with arrows and stalls are marked with "**".

I1: lw $4, 8($16)
I2: beq $5, $4, Target I3: add $2, $4, $5

Problem #3

Consider the following code segment executes on a 5-stage MIPS pipeline:

Loop:

lw $3, 0($zero)
lw $1, 0($3)
addi $1, $1, #1
sub $4, $3, $2
sw $1, 0($3)
bne $4, $zero, Loop

Show the pipeline execution diagram of this instruction sequence for the following two cases:

(a) A pipeline without any forwarding or data hazard detection hardware but assume a register read and write in the same cycle, i.e., register write occurs in the first half of the cycle and register read occurs on the second half of the cycle.

Also, assume the outcome of the branch and the branch target address is known and forwarded in the MEM stage. Insert NOPs for the correct execution of the code.

(b) A pipeline with data forwarding and hazard detection hardware. Again, assume the outcome of the branch and the branch target address is known and forwarded in the MEM stage.

Reference no: EM132103865

Questions Cloud

Discuss about privacy preserving data mining methods : "Privacy preserving data mining" is designed to ensure privacy of individuals while performing data mining.
Explain what security vulnerabilities you would look for : Assume you are asked to assess the security of an electronic medical record(EMR) system.
Scheduling algorithms for different types of queuing : First-In-First-Out (FIFO): The jobs arc processed in the arriving order. The job at the front of the queue is served until it has completed.
How can businesses use technology and relationships : How can businesses use technology and relationships to reduce their environmental impact?
Show a pipeline execution diagram for the program : Indicate all data dependencies (RAW, WAR, WAW) that exist between instructions by writing the instruction pairs among which the dependency exist.
Define a function wordsstats that takes one parameter : Define a function wordsWithLetter() that takes 2 parameters: 1. text, a string containing words and white spaces 2. letter, a string of length 1
What is the protein sequence encoded by the gene : Which region of the mRNA do you think can be translated into a protein (hint: Can you identify the start codon and stop codon from the mRNA sequence?)
How many cycles does this code take to complete : Show a pipeline execution diagram for the program by inserting nop instructions to eliminate the data hazard.
Print the keys as encountered in a preorder traversal : Consider a binary (min)heap. We have a method that prints the keys as encountered in a preorder traversal.

Reviews

Write a Review

Computer Engineering Questions & Answers

  Mathematics in computing

Binary search tree, and postorder and preorder traversal Determine the shortest path in Graph

  Ict governance

ICT is defined as the term of Information and communication technologies, it is diverse set of technical tools and resources used by the government agencies to communicate and produce, circulate, store, and manage all information.

  Implementation of memory management

Assignment covers the following eight topics and explore the implementation of memory management, processes and threads.

  Realize business and organizational data storage

Realize business and organizational data storage and fast access times are much more important than they have ever been. Compare and contrast magnetic tapes, magnetic disks, optical discs

  What is the protocol overhead

What are the advantages of using a compiled language over an interpreted one? Under what circumstances would you select to use an interpreted language?

  Implementation of memory management

Paper describes about memory management. How memory is used in executing programs and its critical support for applications.

  Define open and closed loop control systems

Define open and closed loop cotrol systems.Explain difference between time varying and time invariant control system wth suitable example.

  Prepare a proposal to deploy windows server

Prepare a proposal to deploy Windows Server onto an existing network based on the provided scenario.

  Security policy document project

Analyze security requirements and develop a security policy

  Write a procedure that produces independent stack objects

Write a procedure (make-stack) that produces independent stack objects, using a message-passing style, e.g.

  Define a suitable functional unit

Define a suitable functional unit for a comparative study between two different types of paint.

  Calculate yield to maturity and bond prices

Calculate yield to maturity (YTM) and bond prices

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd