Modify existing structures inside the decode stage

Assignment Help Computer Engineering
Reference no: EM131441336

Computer Architecture and Organization Homework

Clustered Pipeline Architecture?:

One of the benefits of a clustered pipeline architecture is that we have smaller register files in each cluster. Smaller register files translates into faster access to registers. Additionally, splitting the physical register file into multiple smaller pieces allows for more registers to be accessed in parallel for minimal power and area overhead. For architectures with high degree of parallelism (8 way superscalar as an example), many registers will be accessed at the same time, thus it is important to reduce RF (Register File) access time. One unwanted side effect is the extra communication overhead between clusters due to possible intercluster dependencies.

2471_Figure.png

For more information about this architecture and its benefits and drawbacks you can read: https://www.hpl.hp.com/techreports/98/HPL-98-204.pdf

Review (Dispatch Bound VS Issue Bound):?

Dispatch Bound?: In a dispatch-bound architecture, issue queue entries contain fields to store instruction input values. When an instruction is decoded, its source registers are read from the register file when ready, and when the instruction moves to the issue queue (IQ), the values are also sent with the instruction. If the source registers are not ready, dependency information (source register numbers) will be forwarded to the issue queue and later captured into the IQ data fields once the producing instructions complete.

Question 1:

MOVC R1 #5

MOVC R2 #10

MOVC R3 #15

MOVC R4 #91

MOVC R5 #20

ADD R1 R1 #100

ADD R6 R1 R2

MULT R7 R6 R2

LOAD R8 R5 #500

DIV R9 R8 R4

STORE R7 #100 #200

STORE R9 #200 #300

Assumption?: You have an instruction "CLUSTER #NO" instruction that directs all subsequent instructions to the cluster specified by the instruction operand. For example, the following instruction sequence will send the ADD to cluster 1 and MULT to cluster 2.

Cluster #1

ADD R1 R1 R1

Cluster #2

MULT R2 R2 R3

Please reorganize the provided instruction sequence utilizing the cluster command to minimize intercluster communication.

Question 2:

Please justify your answer to question 1.

Question 3:

For the purpose of this question, you are allowed to add new data structures or modify existing structures inside the decode stage. Also assume that each cluster has limited capacity in terms of the number of instructions its IQ can hold at a time. Propose any necessary changes so that dependent instructions, as much as possible, are executed in the same cluster. Briefly describe logic changes to the decode stage.

Note: ?Assume FRAT belongs to the decode stage.

Question 4:

While it is true that executing all dependent instructions on one cluster will reduce intercluster dependency, this may limit parallelism and utilization of all clusters. Please suggest a smarter mechanism that would achieve an acceptable tradeoff, reducing intercluster dependencies and maintaining good level of parallelism.

Question 5:

Describe one scenario where dispatch-bound would more efficient than issue-bound for this architecture.

Question 6:

This question is similar to variation 2 for the architecture described in slide Lecture Slides 3, slide number 104. However, in this new proposed variation, each Rob entry holds a copy of the instruction result.

Given the following:

1. N_R: Number of physical registers

2. N_S: Number of IQ entities

3. W_Matrix -- Its entries are ready for you to use by the decode stage

4. RAT -- RAT entries will always point to physical register. It will never point to architectural register.

5. Each RoB Entry contains:

a. Destination Physical Register Number (P_Dest)

b. Destination Architectural Register Number (A_Dest)

c. A memory to hold the result of the instruction once ready (INST_VALUE)

6. Free_List: A list of free physical registers

7. There is no Renamed[] vector.

At the decode stage, upon allocating a new register and performing renaming, there is a chance of freeing a physical register. Assuming the destination register number is P_Dest, write a pseudocode that would free a physical register when necessary.

Question 7:

During instruction execution, there are other parts of the CPU that can determine when a physical register might be freed. Briefly describe where else we can put freeing logic and explain why.

Reference no: EM131441336

Questions Cloud

Describe the entire event in terms of variation : Working with a family member, roommate, or friend, use shaping to get them to do these two behaviours. The listed behaviours are the "target behaviours,"...you have to decide which approximation of the behaviour you are going to start reinforcing,..
Explain the importance of training in legal requirements : You, as an outside consultant, have been asked to explain the importance of training in three areas. Incorporate employee and organization motivation and information on offering training in these areas.
Effective leadership approach from biblical perspective : Describe an effective leadership approach from a biblical perspective. and include an assessment of your leadership strengths and how you can use this information to increase your success as a leader. Use the Strength Finder 2.0 source—use the code t..
Name the so-called tools of control in the chinese society : Name the so-called tools of control in the chinese society. Does economic liberalization lead to democracy? How does china blend elements of capitalism and communism to create a strong, government controlled economy?
Modify existing structures inside the decode stage : CS 520: Computer Architecture and Organization Homework. For the purpose of this question, you are allowed to add new data structures or modify existing structures inside the decode stage. Also assume that each cluster has limited capacity in terms..
Develop a network representation of the given problem : MGMT 430- What is the schedule and what is the total billing? Develop a network representation of the problem. You may reference the Network Diagram Template.
Healthcare facilities as other businesses-face labor issues : Healthcare facilities, as most other businesses, face labor issues. Resolving these issues is a key step to reducing potential litigation. What are the advantages of arbitration? What are the disadvantages of arbitration? How does arbitration differ ..
Application of management functions to a case study : You are employed by a 240-bed urban medical center. You directly supervise 30 staff Physical Therapists in the Rehabilitation Department in which you are the Department Head (DH).
Compare and contrast the two varma models : Consider the realized volatilities of the Alcoa stock from January 2, 2003, to May 7, 2004, for 340 observations. The realized volatilities are the sum of squares of intraday m-minute log returns.

Reviews

len1441336

3/27/2017 1:20:21 AM

Subject: Computer Engineering. This is the final version of the assignment. All further clarifications will appear as announcements on blackboard. A turnitin assignment will be created on my courses for this assignment. Please *do not* submit scanned copies of handwritten assignments. All assignments must be submitted as word or pdf files or any format accepted by turnitin. Also please abide by the number of lines suggested by each question. Describe one scenario where dispatch-bound would more efficient than issue-bound for this architecture.

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