Control Hazards

Duration: 4 min

This video lesson is available to enrolled students.

Return to /learn/CDAC-C-CAT-COMPLETE-PREPARATION/section-c-computer-architecture/pipelining/structural-control-hazards/asset-control-hazards after enrolling

Inside: a video lesson and guided study material.

Module outline

  1. Section A | English: Vocabulary, Comprehension / Reading Comprehension / Unseen Passages (Critical Reasoning) (Paragraph Questions), Preposition, Sentence Correction (Error Correction), Sentence Completion (Fill in the blanks), Articles, Sentence Re-arrangements (Para Jumbles) (Narrative Sequencing), Verbal Analogy (Word Based Analogy)
  2. Section A | Quant Aptitude: Ratio and Proportion (Ratios), Mixture and Alligation, Permutation and Combination, Number System, HCF LCM, Sequence and Series (Series), Speed Time and Distance, Arithmetic, Algebra, Powers and Exponents (Surds and Indices), Average, Age Problems, Percentage, Profit and Loss, Partnership, Time and Work, Simple Interest and Compound Interest, Mensuration and Geometry, Probability, Pipe and Cistern
  3. Section A | Reasoning: Series (Number and Letter Series) (Numerical Relations and Reasoning), Coding Decoding, Data Sufficiency, Calendar, Clock, Blood Relations, Directions (Direction Test), Seating Arrangements, Ranking, Order and Sequence, Puzzle Solving (Puzzles)
  4. Section B | C Programming: C Programming by Yash Sir, Coding Questions by Yash Sir
  5. Section B | Data Structures: Algorithm Analysis, Greedy Algorithms, Time Complexity Analysis, Sorting Algorithms, Introduction to DS, Array, Stack, Queue, Linked List, Tree, Graphs
  6. Section B | OOP (C++): Object Oriented Programming (OOPS), Programming in C++
  7. Section B | OS: Introduction to OS, Process Management, CPU Scheduling, Process Synchronization, Threads & Process Creation, Deadlock, Memory Management, Virtual Memory, Disc Scheduling, File Management, Windows OS
  8. Section B | Networking: Introduction to CN, Data Communication, DLL: Access Control, DLL: Flow Control, DLL: Error Control, DLL: Framing, Data Link Layer - Ethernet, Net Layer: IPv4 & Proto, Net Layer: IP Addressing, Net Layer:Routing Protocol, Transport Layer Services, TL: Congestion & UDP, Application Layer, Hardware basics
  9. Section B | AI & Big Data Basics: AI & ML by Arun Sir, Big Data Systems
  10. Section C | Digital Electronics: Digital Systems & Boolean Basics, Logic Gates & Hardware, Boolean Expression, Boolean Minimization, Combinational Circuit, Sequential Circuits, Number System, Number Representation, Analog-Digital Conversion
  11. Section A, C | Comp. Fundamentals, COA: Basics of COA, Floating Point Rep, Cache Memory Organization, Input Output Organisation, Pipelining, Instr Formats & Modes, Control Unit Design, Register Transfer and Microoperations, Multiprocessors, Programming the Basic Computer
  12. MOCK TEST:
AI summary & chapters

AI Summary

An AI-generated summary of this video lecture.

The lecture focuses on Control Hazards in pipelined processors, specifically addressing the inefficiencies caused by branch instructions. The instructor explains that when a branch instruction is encountered, the processor may have already fetched and partially executed subsequent instructions that turn out to be incorrect. This leads to a 'hazard' where these instructions must be discarded. The session transitions into a quantitative analysis, teaching students how to calculate the Cycles Per Instruction (CPI) penalty based on the frequency of branch instructions and the number of stalls they incur.

Chapters

  1. 0:00 – 2:00 00:00-02:00

    The instructor begins by defining the problem of Control Hazards. He presents a scenario where instruction I1 is a branch, and the next instruction to execute is I10. However, the processor has already partially executed I1, I2, I3, which is the core problem. A flowchart is displayed, categorizing 'Branch Instruction' into 'Conditional' and 'Unconditional'. The 'Conditional' branch further splits into 'Condition true (Jump)' and 'Condition false (No Jump)'. The instructor writes a vertical sequence I1, I2, I3, I4, I5 to represent the instruction stream, emphasizing that the decision to jump is not immediate.

  2. 2:00 – 4:30 02:00-04:30

    The instructor visualizes the hazard using a pipeline timing diagram with stages IF, ID, EX, and WB. He marks I1 as the branch instruction and shows red crosses over I2 and I3 in the IF and ID stages, indicating they are flushed. He then introduces a calculation problem: 'Consider a system where 20% instruction are branch instruction... Find the CPI'. He calculates the CPI for three cases. Case 1: 1 Stall results in 0.8 x 1 + 0.2 x 2 = 1.2. Case 2: 2 Stalls results in 0.8 x 1 + 0.2 x 3 = 1.4. Case 3: 3 Stalls results in 0.8 x 1 + 0.2 x 4 = 1.6. This demonstrates how stall cycles directly increase the average CPI.

The lecture effectively bridges the gap between theoretical pipeline hazards and practical performance metrics. By first illustrating the structural problem of branch instructions wasting cycles through a flowchart and timing diagram, the instructor sets the stage for the mathematical solution. The calculation of CPI serves as a practical application, showing how a 20% branch frequency with varying stall penalties (1, 2, or 3 cycles) degrades performance from a base CPI of 1.0 to 1.2, 1.4, and 1.6 respectively. This progression helps students understand the tangible cost of control dependencies in processor design.

Loading lesson…