CS501 Advance Computer Architecture GDB Solution Spring 2013

In xyz organization a system was installed based on pipelining processors. Later that system faced structural hazards, now you have two methods to avoid hazards, one is add “stalls” and other one is “adding new hardware” in that system. Which method will you prefer and why? Justify your answer with appropriate reason.

Stalls will be usedbecause its cost effective adding of hardware become costly. The pipelined approachsystems have the advantage of being simple to implement and to write a compiler for, but as we will see have several large holes in performance. Analyzing these holes will help emphasize the gains made by pipelining. The first of our simple hardwares, which we will call hardware “A,” performs all operations in a single clock cycle, and has its clock slow enough that the longest instruction will fit in a single cycle. This is an extremely naïve implementation that is suitable for, say, an undergraduate hardware class, but is not used in modern architecture. As an example of how this architecture performs, take the following machine code, which corresponds to a high-level expression such as integer x*y+z, with x, y, and z each occupying its own register: