Lines Matching refs:trans

77   bool initTransaction(transaction_type& trans)
80 trans.set_dmi_allowed(false);
83 trans.set_address(mBaseAddress + 4*mTransactionCount);
85 trans.set_command(tlm::TLM_WRITE_COMMAND);
88 trans.set_address(mBaseAddress + 4*(mTransactionCount-mNrOfTransactions));
90 trans.set_command(tlm::TLM_READ_COMMAND);
96 trans.set_data_ptr(reinterpret_cast<unsigned char*>(&mData));
97 trans.set_data_length(4);
98 trans.set_streaming_width(4);
104 void logStartTransation(transaction_type& trans)
106 if (trans.get_command() == tlm::TLM_WRITE_COMMAND) {
108 << std::hex << (unsigned int)trans.get_address()
114 << std::hex << (unsigned int)trans.get_address() << std::dec
119 void logEndTransaction(transaction_type& trans)
121 if (trans.get_response_status() != tlm::TLM_OK_RESPONSE) {
127 if (trans.get_command() == tlm::TLM_READ_COMMAND) {
136 transaction_type trans;
140 while (initTransaction(trans)) {
145 logStartTransation(trans);
158 if ( (trans.get_address() >= mDMIData.get_start_address()) &&
159 (trans.get_address() <= mDMIData.get_end_address()) ) {
163 trans.set_response_status(tlm::TLM_OK_RESPONSE);
164 sc_dt::uint64 tmp = trans.get_address() - mDMIData.get_start_address();
165 if (trans.get_command() == tlm::TLM_WRITE_COMMAND) {
175 if (trans.get_command() == tlm::TLM_WRITE_COMMAND) {
182 logEndTransaction(trans);
185 sc_dt::uint64 addr = trans.get_address(); //Save address before it is mutated
186 socket->b_transport(trans, t);
188 logEndTransaction(trans);
191 if (trans.is_dmi_allowed())
195 trans.set_address(addr); //restore address, in case it was mutated.
196 trans.set_write();
197 if ( socket->get_direct_mem_ptr(trans, tmp)
208 sync_enum_type nb_transport_bw(transaction_type& trans, phase_type& phase, sc_core::sc_time& t)
248 transaction_type trans;
249 trans.set_address(mBaseAddress);
250 trans.set_data_length(32);
251 trans.set_data_ptr(data);
252 trans.set_read();
254 unsigned int n = socket->transport_dbg(trans);