ilang  1.1.4
ILAng: A Modeling and Verification Platform for SoCs
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Macros
Public Types | Public Member Functions | Static Public Member Functions | List of all members
ilang::RefinementMap Class Reference

Refinement mapping defines how to map micro-architectural states to architectural states for comparison. More...

#include <v_eq_check_refinement.h>

Public Types

typedef std::shared_ptr
< RefinementMap
RefPtr
 Pointer type for passing around the refinement mapping.
 

Public Member Functions

 RefinementMap ()
 Default constructor.
 
 ~RefinementMap ()
 Default destructor.
 
InstrLvlAbsPtr coi () const
 Return the target (top-ILA containing the COI).
 
InstrLvlAbsPtr ila () const
 Return the target (top-ILA).
 
ExprPtr appl () const
 Return the apply function.
 
ExprPtr flush () const
 Return the constraint for flushing (stall).
 
ExprPtr cmpl () const
 Return the constraint for completion indicator.
 
const int & step_appl () const
 Return the number of steps required for flushing apply path.
 
const int & step_orig () const
 Return the number of steps required for flushing original path.
 
const int & step () const
 Return the number of steps required for flushing. XXX.
 
size_t inv_num () const
 Return the number of invariant.
 
ExprPtr inv (const size_t &i) const
 Access the i-th invariant.
 
void set_tgt (const InstrLvlAbsPtr &tgt)
 Define the target ILA (source for coi).
 
void set_tgt (const InstrPtr &tgt)
 Define the target instruction (source for coi).
 
void set_appl (const ExprPtr &appl)
 Define the apply function.
 
void set_flush (const ExprPtr &flush)
 Define the flushing function.
 
void set_cmpl (const ExprPtr &cmpl)
 Define the completion scenario (e.g. dummy end).
 
void set_step (const int &step)
 Specify the number of steps required for flushing. XXX.
 
void set_step_appl (const int &step)
 Specify the number of steps required for flushing apply path.
 
void set_step_orig (const int &step)
 Specify the number of steps required for flushing original path.
 
void add_inv (const ExprPtr &inv)
 Add an invariant.
 

Static Public Member Functions

static RefPtr New ()
 Create a new refinement mapping. Used for hiding implementation specific type details.
 

Detailed Description

Refinement mapping defines how to map micro-architectural states to architectural states for comparison.


The documentation for this class was generated from the following file: