X-Git-Url: http://sraa.de/git/?a=blobdiff_plain;f=dol%2Fsrc%2Fdol%2Fvisitor%2Fhdsd%2Fscd%2Ffsm%2Fscd_stsw_term_req.h;fp=dol%2Fsrc%2Fdol%2Fvisitor%2Fhdsd%2Fscd%2Ffsm%2Fscd_stsw_term_req.h;h=1c39d7f74a4e55aedcbfb5478a38bfffc0c0ae69;hb=8c411cf24ed0eb889191aaeafd8fa1e69081df42;hp=0000000000000000000000000000000000000000;hpb=dea7a4fb1ed110d3ce6e6d9255103d724bd66c0e;p=jump.git diff --git a/dol/src/dol/visitor/hdsd/scd/fsm/scd_stsw_term_req.h b/dol/src/dol/visitor/hdsd/scd/fsm/scd_stsw_term_req.h new file mode 100644 index 0000000..1c39d7f --- /dev/null +++ b/dol/src/dol/visitor/hdsd/scd/fsm/scd_stsw_term_req.h @@ -0,0 +1,32 @@ +#ifndef SCD_STSW_TERM_REQ_H +#define SCD_STSW_TERM_REQ_H + +#include "fsm/scd_stsw_base.h" + + +/* forward declaration */ +class scd_cont_slave_wrapper; + + +class scd_stsw_term_req : public scd_stsw_base +{ +public: + scd_stsw_term_req(scd_simulator& sim, scd_cont_slave_wrapper& fsm): + scd_stsw_base(sim, fsm) { _name = "term_req"; } + virtual ~scd_stsw_term_req() {} + + /* sdc_stsw_base */ + void recv_term_nack(); + void recv_term_ack(); + + /* scd_cont_wrapper_if */ + void send_term_nack(); + bool term_req() const; + + /* scd_cont_fsm_if */ + void set_busy(); + void set_idle(const sc_core::sc_time& time); + void set_done(); +}; + +#endif