34 using payload_type =
typename protocol_types::tlm_payload_type;
35 using phase_type =
typename protocol_types::tlm_phase_type;
37 SC_HAS_PROCESS(tlm_signal2sc_signal);
41 sc_core::sc_out<TYPE> s_o{
"s_o"};
43 tlm_signal2sc_signal(sc_core::sc_module_name nm)
44 : sc_core::sc_module(nm) {
47 sensitive << que.event();
51 tlm_sync_enum nb_transport_fw(payload_type& gp, phase_type& phase, sc_core::sc_time& delay) {
52 que.notify(gp.get_value(), delay);
57 while(
auto oi = que.get_next())
67 using payload_type =
typename protocol_types::tlm_payload_type;
68 using phase_type =
typename protocol_types::tlm_phase_type;
70 SC_HAS_PROCESS(sc_signal2tlm_signal);
72 sc_core::sc_in<TYPE> s_i{
"s_i"};
76 sc_signal2tlm_signal(sc_core::sc_module_name nm)
77 : sc_core::sc_module(nm) {
84 tlm_sync_enum nb_transport_bw(payload_type& gp, phase_type& phase, sc_core::sc_time& delay) {
return TLM_COMPLETED; }
87 tlm::tlm_phase phase(tlm::BEGIN_REQ);
88 sc_core::sc_time delay;
89 auto* gp = payload_type::create();
91 gp->set_value(s_i.read());
92 t_o->nb_transport_fw(*gp, phase, delay);