ILAng
  • Introduction
  • Getting Started
    • Installing ILAng
    • ILAng with CMake
    • ILAng with Python
    • ILAng in Docker
  • Modeling
    • ILA Model
    • Architectural States
      • Expressions
      • Uninterpreted function
    • Instructions
    • Hierarchical ILA
    • Conclusion
  • Synthesis
    • Writing Templates
    • Interfacing Simulators
    • Synthesis Results
    • Conclusion
  • Verification
    • Refinement Relation
    • Verification Target
    • Examples
    • Notes
  • Development
    • Release Notes
Powered by GitBook
On this page
  • Defining child ILAs
  • Architectural states
  • Accessing child ILAs

Was this helpful?

  1. Modeling

Hierarchical ILA

Defining child ILAs

Defining a child ILA is basically defining a normal ILA model, except that the object should be created from the parent ILA to inherit and link the state variables from its parent.

auto child = parent.NewChild("child_name");

Architectural states

The input and state variables from the parent ILA can be accessed by the child ILA in a similar way.

auto in_addr = child.input("InAddr");
auto buffer = child.state("Buffer");

Accessing child ILAs

The child ILAs can be accessed by their name.

auto child = m.child("child_name");

It can also be enumerated.

for (auto i = 0; i < m.child_num(); i++) {
    auto ith_child = m.child(i);
}
PreviousInstructionsNextConclusion

Last updated 6 years ago

Was this helpful?