📚

Understanding Behavioral Modeling Concepts

Dec 16, 2024

Behavioral Modeling Lecture Notes

Introduction

  • Lecturer: Megha Mahla
  • Department: Electronics and Communication
  • Focus: Definitions and terminology in Behavioral Modeling (Unit Module 3)

Behavioral Modeling Overview

  • High level of abstraction modeling
  • Uses procedural assignment statements
  • Execution of statements is sequential
  • Manipulates and simulates variables of each data type

Key Terminology

  • Ascent: A keyword used in behavioral modeling
  • Always: A keyword to begin procedural blocks
  • Assignment Statements: Left side (variables), Right side (expression)
  • Procedural Constructs: Constructs like 'always' that control simulation

Procedural Constructs

  • Always Procedural Block: Executes statements repeatedly within the loop
  • Assign/De-assign: Keywords for adding or omitting values to/from data types
  • Force/Release: Similar to assign/de-assign for manipulating code values

Types of Assignment Statements

  • Continuous Assignment: Implicit and explicit
  • Procedural Assignment: Used for updating register and memory data types
    • Blocking Assignments: Evaluated sequentially; use '='
    • Non-blocking Assignments: Evaluated concurrently; use '<='

Delays and Control

  • Fixed Delays: No change on procedural assignments
  • Wait Keyword: Used for evaluating expressions to be true or false

Looping Statements

  • For Loop: Most widely used for replicating hardware logic
    • Structure: Initialization, Condition, Update
    • Example: for (i = 0; i < 10; i++) { ... }
  • Conditional Statements:
    • If Statement: Makes decisions based on condition
    • While Loop: Executes until condition is no longer true

Weight Construct

  • Makes simulator wait for specific expressions to be true
  • Types:
    • Wait Until: Synthesizable, waits until condition is true
    • Wait On: Holds system until defined signal change
    • Wait For: Non-synthesizable, holds system for a defined time

Construct Keywords

  • Always: Used in timing control and procedural assignments
  • Fork/Join: Parallel execution of procedural assignments

Summary

  • Behavioral modeling involves high-level constructs and loops for effective simulation and synthesis.
  • Different assignment types and constructs provide flexibility and control.
  • Understanding constructs like blocking, non-blocking, and looping is essential for modeling.

Exam Tips

  • Emphasize examples, especially for constructs like 'wait'
  • Highlight differences and uses of each type of loop and assignment

Conclusion

  • Ensure understanding of definitions and terminology in Behavioral Modeling Module 3.
  • For more updates, like, share, and subscribe.