ilang
1.1.4
ILAng: A Modeling and Verification Platform for SoCs
|
#include <ilang/ila/instr_lvl_abs.h>
Go to the source code of this file.
Namespaces | |
ilang | |
Functions | |
void | ilang::absknob::InsertVar (const ExprPtr &e, ExprSet &vars) |
Add all dependent vars of the expr to the set. | |
ExprSet | ilang::absknob::GetVar (const ExprPtr &e) |
Get the set of all dependent vars of the expr. | |
void | ilang::absknob::InsertStt (const InstrCnstPtr instrs, ExprSet &stts) |
Add all state vars of the host (excluding child) to the set. | |
void | ilang::absknob::InsertSttTree (const InstrCnstPtr instrs, ExprSet &stts) |
Add all state vars of the host (including child) to the set. | |
void | ilang::absknob::InsertVar (const InstrLvlAbsCnstPtr &m, ExprSet &vars) |
Add all vars of the ILA (excluding child) to the set. | |
void | ilang::absknob::InsertStt (const InstrLvlAbsCnstPtr &m, ExprSet &stts) |
Add all state vars of the ILA (excluding child) to the set. | |
void | ilang::absknob::InsertInp (const InstrLvlAbsCnstPtr &m, ExprSet &inps) |
Add all input vars of the ILA (excluding child) to the set. | |
void | ilang::absknob::InsertVarTree (const InstrLvlAbsCnstPtr &top, ExprSet &vars) |
Add all vars of the ILA (including child) to the set. | |
void | ilang::absknob::InsertSttTree (const InstrLvlAbsCnstPtr &top, ExprSet &stts) |
Add all state vars of the ILA (including child) to the set. | |
void | ilang::absknob::InsertInpTree (const InstrLvlAbsCnstPtr &top, ExprSet &inps) |
Add all input vars of the ILA (including child) to the set. | |
ExprSet | ilang::absknob::GetVar (const InstrLvlAbsCnstPtr &m) |
Get the set of all vars of the ILA (excluding child). | |
ExprSet | ilang::absknob::GetStt (const InstrLvlAbsCnstPtr &m) |
Get the set of all state vars of the ILA (excluding child). | |
ExprSet | ilang::absknob::GetInp (const InstrLvlAbsCnstPtr &m) |
Get the set of all input vars of the ILA (excluding child). | |
ExprSet | ilang::absknob::GetVarTree (const InstrLvlAbsCnstPtr &top) |
Get the set of all vars of the ILA (including child). | |
ExprSet | ilang::absknob::GetSttTree (const InstrLvlAbsCnstPtr &top) |
Get the set of all state vars of the ILA (including child). | |
ExprSet | ilang::absknob::GetInpTree (const InstrLvlAbsCnstPtr &top) |
Get the set of all input vars of the ILA (including child). | |
void | ilang::absknob::InsertInstr (const InstrLvlAbsCnstPtr &m, InstrVec &instrs) |
Add all instructions of the ILA (excluding child) to the set. | |
void | ilang::absknob::InsertInstrTree (const InstrLvlAbsCnstPtr &top, InstrVec &instrs) |
Add all instructions of the ILA (including child) to the set. | |
InstrVec | ilang::absknob::GetInstr (const InstrLvlAbsCnstPtr &m) |
Get the set of instructions of the ILA (excluding child). | |
InstrVec | ilang::absknob::GetInstrTree (const InstrLvlAbsCnstPtr &top) |
Get the set of instructions of the ILA (including child). | |
ExprPtr | ilang::absknob::Rewrite (const ExprPtr &e, const ExprMap &rule) |
Rewrite an expression by replacing based on the rule. More... | |
void | ilang::absknob::RewriteInstr (const InstrCnstPtr instr_src, const InstrPtr &instr_dst, const ExprMap &expr_map) |
Rewrite an instruction by replacing based on the rule. | |
void | ilang::absknob::FlattenIla (const InstrLvlAbsPtr &ila_ptr_) |
Flatten the given ILA, the initial conditions will be added to the top the child instructions will also be added to the top, but their (hierarchical) valid conditions will be added to their decode condition Some usage hint: this function is intended to generate an ILA for Verilog generator or other verification model generator. You can first use ExtrDeptModl to extract the dependent model and use this to flatten the that model and send to the generator. | |
InstrLvlAbsPtr | ilang::absknob::ExtrDeptModl (const InstrPtr &instr, const std::string &name) |
Return a new ILA that contains the dependant instructions and child-ILAs of an instruction (defined by sub-programs). | |
InstrLvlAbsPtr | ilang::absknob::CopyIlaTree (const InstrLvlAbsCnstPtr &src, const std::string &dst_name) |
Copy and ILA (including child). | |
void | ilang::absknob::DuplInp (const InstrLvlAbsCnstPtr &src, const InstrLvlAbsPtr &dst, ExprMap &expr_map) |
Duplicate input vars from src to dst while updating the mapping. | |
void | ilang::absknob::DuplStt (const InstrLvlAbsCnstPtr &src, const InstrLvlAbsPtr &dst, ExprMap &expr_map) |
Duplicate state vars from src to dst while updating the mapping. | |
ExprPtr | ilang::absknob::DuplFetch (const InstrLvlAbsCnstPtr &src, const InstrLvlAbsPtr &dst, const ExprMap &expr_map) |
Duplicate fetch from src to dst if defined (rewritten w.r.t. mapping). | |
ExprPtr | ilang::absknob::DuplValid (const InstrLvlAbsCnstPtr &src, const InstrLvlAbsPtr &dst, const ExprMap &expr_map) |
Duplicate valid from src to dst if defined (rewritten w.r.t. mapping). | |
void | ilang::absknob::DuplInit (const InstrLvlAbsCnstPtr &src, const InstrLvlAbsPtr &dst, const ExprMap &expr_map) |
Duplicate initial conditions from src to dst (rewritten w.r.t. mapping). | |
InstrPtr | ilang::absknob::DuplInstr (const InstrCnstPtr instr_src, const InstrLvlAbsPtr &dst, const ExprMap &expr_map, const CnstIlaMap &ila_map) |
Duplicate an instruction to dst (rewritten w.r.t. mapping). | |
void | ilang::absknob::DuplInstrSeq (const InstrLvlAbsCnstPtr &src, const InstrLvlAbsPtr &dst) |
Duplicate instruction sequence to dst. NOT IMPLEMENTED YET. | |
A collection of ILA helpers.