Computer Organization and Architecture: Chapter 3: Processor Design

Processor Design: Two Marks Important Questions and Answers

Computer Organization and Architecture

Computer Organization and Architecture: Chapter 3: Processor Design: Anna University Part A Two Marks Important Questions and Answers

Computer Organization and Architecture

Chapter 3: Processor Design

 

Two Marks Questions with Answers

 

1. What do you mean by asserted and deasserted?

Answer: Asserted word is used to indicate a signal that is logically high and assert word specifies that a signal should be driven logically high, and deassert or deasserted is used to represent logically low.

2. What is clocking methodology?

Answer: It is the approach used to determine when data is valid and stable relative to the clock.

3. Define control signal and data signal.

Answer: A signal used for multiplexor selection or for directing the operation of a functional unit is called control signal. On the other hand, the signal which contains information that is operated on by a functional unit is called data signal.

4. Define datapath.

Answer: Datapath is an unit used to operate on or hold data within a processor. Its elements include the instruction and data memories, the register file, the ALU and adders.

5. Define register file.

Answer: All general purpose registers are combined into a single block called the register file.

6. Draw the datapath segment for arithmetic‒logic instructions.


7. Draw the datapth segment for computation of branch target address.


8. What do you mean by delayed branch?

Answer: In the MIPS instruction set, branches are delayed, meaning that the instruction immediately following the branch is always executed, independent of whether the branch condition is true or false. When the condition is false, the execution looks like a normal branch. When the condition is true, a delayed branch first executes the instruction immediately following the branch in sequential instruction order before jumping to the specified branch target address.

9. State the adrantages of using multiple levels of decoding.

Answer: It reduces the size of the main control unit.

Use of several smaller control units may also potentially increase the speed of the control unit.

10. Draw the format of R‒type and branch instructions.

0000   ‒    AND

0001   ‒   OR

0010   ‒   Add

0110   ‒   Subtract

0111    ‒   Set on less than

1100    ‒  NOR

11. Draw the format of load or store instruction.


12. Draw the format of jump instruction.


13. State resons for not using single cycle implementation.

1. It is inefficient. Because the longest possible path in the processor determines the clock cycle. Remember that the clock cycle must have the same length for every instruction in single‒cycle design.

2. The overall performance of a single‒cycle implementation is likely to be poor, since the clock cycle is too long.

3. The penalty for using the single‒cycle design with a fixed clock cycle is significant. Single‒cycle designs for floating‒point unit or an instruction set with more complex instructions do not work well at all.

4. It do not improve the worst‒case cycle time. Thus it violates the great idea of making the common case fast.

14. What is control store?

Answer: The microroutines for all instructions in the instruction set of a computer are stored in a special memory called the control store.

15. State the advantages of hardwired control unit.

Answer:

• Hardwired control unit is fast because control signals are generated by combinational circuits.

• The delay in generation of control signals depends upon the number of gates.

• It has greater chip area efficiency since its uses less area on‒chip.

16. State the disadvantages of hardwired control unit.

Answer:

• More the control signals required by CPU; more complex will be the design of control unit.

• Modifications in control signal are very difficult. That means it requires rearranging of wires in the hardware circuit.

• It is difficult to correct mistake in original design or adding new feature in existing design of control unit.

17. What is microprogramming?

Answer: Microprogramming is a method of control unit design in which the control signal selection and sequencing information is stored in a ROM or RAM called a control memory CM.

18. What is control memory?

Answer: A memory that is part of a control unit is referred to as a control memory. It stores the sequences of micro‒operations to be performed to execute microinstructions.

19. Give full form of CAR.

Answer: CAR stands for Control Address Register.

20. What is microprogram sequencing?

Answer: Determining the address of the next microinstruction to be executed using microprogram sequencer is called microprogram sequencing.

21. What is address sequencing?

Answer: Each computer instruction has its own microprogram routine in control memory to generate the micro‒operations that execute the instruction. To execute a particular computer instruction, accessing a corresponding microinstruction routine, sequencing the microinstructions within the routine and if necessary branching from one routine to another is known as address sequencing.

22. What is microinstruction?

Answer: Each word in the control memory is a microinstruction which specifies the control signals to be activated to perform one or more micro‒operations.

23. What is microcode ?

Answer: The translation of symbolic microprogram to binary produces a binary microprogram called microcode.

24. What is microprogram ?

Answer: A sequence of one or more micro‒operations designed to perform specific operation, such as addition, multiplication is called a microprogram.

25. What is Instruction‒Level Parallelism (ILP) ?

Answer: Instruction‒Level Parallelism (ILP) is a technique that allows multiple independent instructions from a single program to be executed simultaneously to improve processor performance. It increases instruction throughput by overlapping or parallelizing instruction execution.

26. What is the main goal of ILP ?

Answer: The main goal of ILP is to improve the speed and efficiency of program execution by identifying and executing independent instructions in parallel rather than sequentially.

27. State any two benefits of ILP.

Answer:

1. Increases instruction throughput ‒ more instructions are completed per unit time.

2. Reduces overall program execution time by overlapping instruction execution.

28. What are the challenges in implementing ILP ?

Answer:

• Instruction dependencies : Some instructions depend on results of previous ones. Resource

• limitations : Limited number of functional units to execute instructions.

• Control complexity : Managing dependencies and execution order increases hardware complexity.

29. List and briefly explain two techniques used to achieve ILP.

Answer:

1. Pipelining: Divides instruction execution into stages so multiple instructions can be processed simultaneously in different stages.

2. Out‒of‒order execution : Allows instructions to execute as soon as their operands are ready, regardless of original program order.

30. What is the difference between pipelining and superscalar execution?

Answer:

• Pipelining overlaps stages of multiple instructions within a single pipeline.

Superscalar execution uses multiple pipelines or execution units to execute multiple instructions in the same clock cycle.

31. What is data forwarding in ILP ?

Answer: Data forwarding (also called bypassing) is a technique that allows the result of one instruction to be used directly by the next instruction without waiting for it to be written back to a register, reducing execution delays.

32. What is pipeline register?

Answer: The control data register holds the present microinstruction while the next address is computed and read from memory. This data register is sometimes called a pipeline register. It allows the execution of micro‒operations specified by the control word and the generation of the next microinstruction simultaneously.

33. Define pipelining.

Answer: Pipelining is a technique of decomposing a sequential process into sub operations with each sub process being executed in a special dedicated segment that operates concurrently with all other segments.

34. Mention the various types of pipelining.

Answer: Types of pipelining are : Instruction pipelining and arithmetic pipelining.

35. What is instruction pipelining?

Answer: Performing fetch, decode and execute cycles for several instructions simultaneously to reduce overall processing time is referred to as instruction pipelining.

36. List the four stages in the instruction pipelining.

OR

Mention the various phases in executing an instruction.

Answer: The four stages in the instruction pipelining are:

S1 ‒Fetch (F) : Read instruction from the memory.

S2 ‒ Decode (D) : Décode the opcode and fetch source operand (s) if necessary.

S3 ‒Execute (E) : Perform the operation specified by the instruction.

S4 ‒Store (S) : Store the result in the destination.

37. What is the ideal speed‒up expected in a pipelined architecture with 'n' stages ? Justify your answer. (Refer example 3.9.2)

38. What is meant by hazard in pipelining?

Answer: Any reason that causes the pipeline to stall is called a hazard.

39. List the different types of hazards.

Answer: The different types of instruction hazards are:

1. Structural hazards.

2. Data or data dependent hazards.

3. Instruction or control hazards.

40. What is structural hazard ?

Answer: The hazard that exist because of conflicts due to insufficient resources when even with all possible combination, it may not be possible to overlap the operation is called structural hazard. 41. What is instruction or control hazard?

Answer: The hazard due to pipelining branch and other instructions that change the contents of program counter is called instruction or control hazard.

42. What is pipeline scheduling ?

Answer: Rather than allowing the pipeline to stall, the compiler can rearrange instructions to avoid data hazard. It is called pipeline scheduling.

43. What is delayed load and delayed slot ?

Answer: A load which requires that the following instruction do not use its result is said to be delayed load and the pipeline slot after load instruction is called delayed slot.

44. How addressing modes affect the instruction pipelining?

 Answer: Degradation of performance is an instruction pipeline may be due to address dependency where operand address cannot be calculated without available information needed by addressing mode for e.g. an instructions with register indirect mode cannot proceed to fetch the operand if the previous instructions is loading the address into the register. Hence operand access is delayed degrading the performance of pipeline.

45. How compiler is used in pipelining?

Answer: A compiler translates a high level language program into a sequence of machine instructions. The number of cycles required to execute program is dependent not only on the choice of instruction, but also on the order in which they appear in the program. The compiler may rearrange program instruction to achieve better performance of course, such changes must not affect of the result of the computation.

46. What is loop buffer?

Answer: A loop buffer is a small very high speed memory. It is used to store recently prefetched instructions in sequence. If conditional branch is valid, the hardware first checks whether the branch target is within the loop buffer. If so, the next instructions are fetched from the buffer, instead of memory avoiding memory access.

47. Draw the structure of two stage instruction pipe line.

Answer: Fig. 3.14.1 shows the structure of two stage instruction pipe line.


48. What would be the effect, if we increase the number of pipelining stages?

Answer: As the number of pipeline stages increases, the probability of the pipeline being stalled also increases because more instructions are being executed concurrently. Thus, dependancies between instructions that are far apart may still cause the pipeline to stall.

As the number of pipeline stages increase, the branch penalties may become more significant. 49. What are the advantages of pipelining?

Answer:

1. The instruction cycle time of the processor is reduced increasing, instruction throughput.

2. Increase in pipeline stages increase number of instructions that can be processed at once which reduces delay between completed instructions.

50. What is meant by pipeline bubble / pipeline stall ?

Answer: Pipeline bubble or pipeline stall is a delay in execution of an instruction in an instruction pipeline in order to resolve a hazard.

51. What is datapath element ?

Answer: Datapath element is unit used to operate on or hold data within a processor. In the MIPS implementation, the datapath elements include the instruction and data memories, the register file, the ALU and adders.

52. Name the control signals required to perform arithmatic operation.

Answer: Control signals RegDst, RegWrite and ALUop1 are required to perform arithmetic operation.

53. What is data hazard in pipelining? What are the solutions?

Answer: When either the source or the destination operands of an instruction are not available at the time expected in the pipeline and as a result pipeline is stalled, we say such a situation is a data hazard.

1. The easiest way to handle data hazards is to stall the pipeline.

2. The second simple hardware technique which can handle data hazard is called forwarding or register by passing.

54. What are the classification of data hazards ?

Answer: The data hazard can be classified as,

1. RAW (Read After Write) hazard.

2. WAW (Write After Write) hazard.

3. WAR (Write After Read) hazard.

55. What is the use of condition code register?

Answer: The conditional branch instruction checks the condition code flags to decide the flow of program execution.

56. What do you mean by out‒of order execution ?

Answer: The dispatch unit dispatches the instructions in the order in which they appear in the program. But their execution may be completed in the different order because of data dependency among the instructions. Such situation is called out‒of order execution.

57. What is instruction throughput ?

Answer: The instruction throughput is the number of instructions executed per second. For sequential execution, it is given by,

Ps = R/S.

where R is a clock rate measured in clocks per second and S is the average number of steps needed to execute one machine instruction.

58. Why is branch prediction algorithm needed?

Answer: Branch prediction algorithm is needed to reduce the branch penalty.

59. List commonly used branch prediction techniques.

Answer: The commonly used branch prediction techniques are:

• Predict never taken

• Predict always taken

• Predict by opcode

• Taken / not taken switch

• Branch History Table.

60. Name the two types of branch prediction strategies.

Answer: The two types of branch prediction strategies are:

• Static branch strategy.

• Dynamic branch strategy.

61. What is branch target / prediction buffer?

Answer: The buffer in which the recent branch information is stored is called branch target buffer.

62. What is branch folding?

Answer: The instruction fetch unit has executed the branch instruction concurrently with the execution of other instructions. This technique is referred to as branch folding.

63. What is delayed branching?

Answer: A technique called delayed branching can minimize the penalty incurred as a result of conditional branch instructions. The idea is simple. The instructions in the delay slots are always fetched. Therefore, we would like to arrange for them to be fully executed whether or not the branch is taken. The objective is to be able to place useful instructions in these slots. If no useful instructions can be placed in the delay slots, these slots must be filled with NOP instructions.

64. What is meant by speculative execution?

Answer: Speculative execution means that instructions are executed before the processor is certain that they are in the correct execution sequence. Hence, care must be taken that no processor registers or memory locations are updated until it is confirmed that these instructions should indeed be executed. If the branch decision indicates otherwise, the instructions and all their associated data in the execution units must be purged, and the correct instructions fetched and executed.

65. What is called static and dynamic branch prediction ?

OR

Differentiate between the static and dynamic techniques.

Answer: The branch prediction decision is always the same every time a given instruction is executed. Any approach that has this characteristic is called static branch prediction. Another approach in which the prediction decision may change depending on execution history is called dynamic branch predictionsion.

66. What is the role of cache in pipelining?

Answer: Each pipeline stage is expected to complete in one clock cycle. The clock period should be long enough to let the slowest pipeline stage to complete. Faster stages have to wait for the slowest one to complete. Since main memory is very slow compared to the execution, if each instruction needs to be fetched from main memory, pipeline is almost useless. The cache memory reduces the memory access time and makes pipelining useful.

67. What is imprecise and precise exception?

Answer: Situation in which one or more of the succeeding instructions have been executed to completion is called imprecise exception. Situation in which all subsequent instructions that may have been partially executed are discarded. This is called a precise exception.

68. What is exception ?

Exceptions are internally generated unscheduled events that disrupt program execution and they are used to detect overflow. On the other hand, interrupt comes from outside of the processor.

Arithmetic overflow, invoking the operating system from user program and using an undefined instruction are internally generated events and hence called exceptions.

69. What is meant by exception ? Give one example of MIPS exception.

Exceptions are internally generated unscheduled events that disrupt program execution and they are used to detect overflow. On the other hand, interrupt comes from outside of the processor.

Arithmetic overflow, invoking the operating system from user program and using an undefined instruction are internally generated events and hence called exceptions.

Hardware malfunctions may be either externally generated event or internally generated event and called either interrupt or exception.

 

Computer Organization and Architecture: Chapter 3: Processor Design : Tag: Computer : Computer Organization and Architecture - Processor Design: Two Marks Important Questions and Answers


Computer Organization and Architecture: Chapter 3: Processor Design



Under Subject


Computer Organization and Architecture

CW25201 3rd Semester IT department. | 2025 Regulation | 3rd Semester 2025 Regulation



Related Subjects


Discrete Mathematics

MA25C14 3rd Semester CSE,IT,CY,AIDS departments. | 2025 Regulation | 3rd Semester 2025 Regulation


Data Structures

CS25C08 3rd Semester CSE,IT,CY,AIDS departments. | 2025 Regulation | 3rd Semester 2025 Regulation


Computer Organization and Architecture

CW25201 3rd Semester IT department. | 2025 Regulation | 3rd Semester 2025 Regulation


Object Oriented Programming

CS25C07 3rd Semester IT department. | 2025 Regulation | 3rd Semester 2025 Regulation


Web Technologies

IT25301 3rd Semester IT department. | 2025 Regulation | 3rd Semester 2025 Regulation


English Communication Skills Laboratory I

EN25C03 3rd Semester all department. | 2025 Regulation | 3rd Semester 2025 Regulation


Skill Development Course I

3rd Semester all department. | 2025 Regulation | 3rd Semester 2025 Regulation