摘要 |
An equivalency testing system, for formally comparing an RTLM and HLM, is presented. RTLM and HLM are first converted into DFGs RTLM<SUB>DFG </SUB>and HLM<SUB>DFG</SUB>. RTLM<SUB>DFG </SUB>and HLM<SUB>DFG </SUB>are then put into timestep form and are called RTLM<SUB>ts </SUB>and HLM<SUB>ts</SUB>. A test bench CS<SUB>ts </SUB>is selected that couples RTLM<SUB>ts </SUB>and HLM<SUB>ts</SUB>. The combination of RTLM<SUB>ts</SUB>[t], HLM<SUB>ts</SUB>[t] and CS<SUB>ts</SUB>[t] can have parts designated as datapath. Parts designated as datapath can be subject to a form of equivalence checking that seeks to prove equivalence by a form of inductive theorem proving that propagates symbolic values indicative of whether a node carries the same data content as another node. The theorem proving starts from initial conditions for HLM<SUB>ts</SUB>[t] determined by partial execution of the HLM. Propagation to a combinational function output can be determined from equivalence relationships between it and another combinational function. Propagation through a multiplexer can produce a conditional symbolic value.
|