|
Message
From: OpenCores CVS Agent<cvs@o...>
Date: Tue Jan 18 16:19:30 CET 2005
Subject: [cvs-checkins] MODIFIED: sc2v ...
Date: 00/05/01 18:16:19 Added: sc2v/examples stmach_k.cpp stmach_k.h Log: Fixed bugs. Contribution by Harald Devos Revision Changes Path 1.1 sc2v/examples/stmach_k.cpp http://www.opencores.org/cvsweb.shtml/sc2v/examples/stmach_k.cpp?rev=1.1&content-type=text/x-cvsweb-markup Index: stmach_k.cpp =================================================================== // stmach_k.cpp #include "stmach.h" void stmach_k::getnextst() { play.write(false); recrd.write(false); erase.write(false); save.write(false); address.write(false); switch (current_state.read()) { case main_st: if (key.read() == 1) { next_state.write(review_st); } else { if (key.read() == 2) { next_state.write(send_st); } else { next_state.write(main_st); } } break; case record_st: if (key.read() == 5) { next_state.write(begin_rec_st); } else { next_state.write(record_st); } break; case begin_rec_st: //comment over here recrd.write(true); next_state.write(message_st); break; case message_st: //comment over here recrd.write(true); if (key.read() == 6) { next_state.write(send_st); } else { next_state.write(message_st); } break; default: next_state.write(main_st); break; } // end switch } // end method void stmach::setstate() { current_state.write(next_state); } 1.1 sc2v/examples/stmach_k.h http://www.opencores.org/cvsweb.shtml/sc2v/examples/stmach_k.h?rev=1.1&content-type=text/x-cvsweb-markup Index: stmach_k.h =================================================================== // stmach_k.h #include "systemc.h" SC_MODULE (stmach_k) { sc_in < bool > clk; sc_in < sc_uint < 4 > >key; sc_out < bool > play; sc_out < bool > recrd; sc_out < bool > erase; /*comment with // */ sc_out < bool > save; sc_out < bool > address; //comment \ also comment enum vm_state { main_st, review_st, repeat_st, save_st, erase_st, send_st, address_st, record_st, begin_rec_st, message_st }; sc_signal < vm_state > next_state; sc_signal < vm_state > current_state; void getnextst (); void setstate (); SC_CTOR (stmach)
{
SC_METHOD (getnextst);
sensitive << key << current_state;
SC_METHOD (setstate);
sensitive_pos (clk);
}
};
|
 |