亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? at_initiator_temporal_decoupling.cpp

?? SystemC Transaction Level Modelling. 是基于SystemC之上的總線互聯協議
?? CPP
字號:
/***************************************************************************** * *   The following code is derived, directly or indirectly, from the SystemC *   source code Copyright (c) 1996-2008 by all Contributors. *   All Rights reserved. * *   The contents of this file are subject to the restrictions and limitations *   set forth in the SystemC Open Source License Version 3.0 (the "License"); *   You may not use this file except in compliance with such restrictions and *   limitations. You may obtain instructions on how to receive a copy of the *   License at http://www.systemc.org/. Software distributed by Contributors *   under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF *   ANY KIND, either express or implied. See the License for the specific *   language governing rights and limitations under the License. * *   *****************************************************************************//* --------------------------------------------------------------------------------------- @file at_initiator_temporal_decoupling.h  @brief LT initiator with temporal decoupling   Original Authors:    Bill Bunton, ESLX    Charles Wilson, ESLX    --------------------------------------------------------------------------------------- *///==============================================================================// Note: order of headers is important#include "tlm.h"                                    ///< TLM headers#include "reporting.h"                              ///< report output#include "at_initiator_temporal_decoupling.h"       ///< LT initiator with temporal decouplingusing namespace sc_core;using namespace std;const char *filename = "at_initiator_temporal_decoupling.cpp";/*=============================================================================  @fn at_initiator_temporal_decoupling::at_initiator_temporal_decoupling    @brief at_initiator_temporal_decoupling constructor    @details    This routine initialized an at_initiator_temporal_decoupling class instance.      @param name module name  @param ID   initiator ID    @retval none=============================================================================*/at_initiator_temporal_decoupling::at_initiator_temporal_decoupling  ///< constructor( sc_module_name      name                          ///< module name, const unsigned int  ID                            ///< initiator ID, sc_core::sc_time end_rsp_delay                    ///< delay)   :sc_module          (name)                        ///< module name  ,m_ID               (ID)                          ///< initiator ID  ,initiator_socket   ("initiator_socket")          ///< initiator socket  ,m_end_rsp_delay    (end_rsp_delay)               ///< initialize delay  {   initiator_socket (*this);                         // bind initiator to the socket  SC_THREAD(initiator_thread);                      // register thread process   tlm::tlm_quantumkeeper::set_global_quantum(sc_core::sc_time(500, sc_core::SC_NS));  m_QuantumKeeper.reset();}// ??????????????????   need to use m_end_rsp_delay/*=============================================================================  @fn at_initiator_temporal_decoupling::initiator_thread    @brief outbound data processing    @details    This routine handles outbound data.      @param none    @retval none=============================================================================*/voidat_initiator_temporal_decoupling::initiator_thread  ///< initiator thread( void){    tlm::tlm_generic_payload *transaction_ptr;        ///< transaction pointer  std::ostringstream msg;                           ///< log message  while (true)  {    // get transaction GP from reques in FIFO     transaction_ptr = request_in_port->read();      // get request from input fifo     // setup request     tlm::tlm_phase phase  = tlm::BEGIN_REQ;         // Create phase objects        msg.str ("");    msg << m_ID << " "        << ((transaction_ptr->get_command () == tlm::TLM_READ_COMMAND) ? "R" : "W")        << " A: 0x" << internal << setw( sizeof(transaction_ptr->get_address ()) * 2 ) << setfill( '0' )         << uppercase << hex << transaction_ptr->get_address ()        << " L: " << internal << setw( 2 ) << setfill( '0' ) << dec << transaction_ptr->get_data_length ();    REPORT_INFO (filename, __FUNCTION__, msg.str() );    // make the non-blocking call and decode returned status (tlm_sync_enum)     switch (initiator_socket->nb_transport            ( *transaction_ptr            , phase            , m_QuantumKeeper.get_local_time()))    {      case tlm::TLM_COMPLETED:            // LT taget response complete with annonated delay       {        if (m_QuantumKeeper.need_sync())        {          msg.str ("");          msg << m_ID << " - " << "Sync Local time to SC time";                    REPORT_INFO (filename, __FUNCTION__, msg.str() );                    m_QuantumKeeper.sync();        }                response_out_port->write(transaction_ptr);                msg.str ("");        msg << m_ID << " - Completed LT request" << endl;        msg << "      SC time    = " << sc_core::sc_time_stamp() << endl;        msg << "      local time = " << m_QuantumKeeper.get_current_time();                    REPORT_INFO (filename, __FUNCTION__, msg.str());        break;      }      case tlm::TLM_ACCEPTED:                       // LT target accepted request      case tlm::TLM_UPDATED:      {        m_req_accepted_queue.push(transaction_ptr);         wait (m_req_accepted_event);         msg.str ("");        msg << m_ID << " - Completed LT request forced sync" << endl;        msg << "      local time       = " << m_QuantumKeeper.get_local_time() << endl;        m_QuantumKeeper.reset();        msg << "      Reset local time = " << m_QuantumKeeper.get_local_time();         REPORT_INFO (filename, __FUNCTION__, msg.str());        break;      }      case tlm::TLM_REJECTED:       default:      {        msg.str ("");        msg << m_ID << " - TLM_REJECTED invalid response";                REPORT_FATAL(filename,  __FUNCTION__, msg.str());                break;      }    }  }}/*=============================================================================  @fn at_initiator_temporal_decoupling::nb_transport    @brief inbound non-blocking transport    @details    This routine handles inbound non-blocking transport.      @param transaction_ref  transaction reference  @param phase            transaction phase reference  @param delay            transaction delay reference    @retval phase synchronization phase=============================================================================*/tlm::tlm_sync_enum                                  ///< phaseat_initiator_temporal_decoupling::nb_transport      ///< nb_transport( tlm::tlm_generic_payload  &transaction_ref        ///< transaction, tlm::tlm_phase            &phase                  ///< phase, sc_time                   &delay                  ///< delay){  std::ostringstream        msg;                    ///< log message  tlm::tlm_sync_enum        return_status = tlm::TLM_REJECTED;    tlm::tlm_generic_payload  *trans_ptr;  switch (phase)  {    case tlm::BEGIN_RESP:    {       trans_ptr = m_req_accepted_queue.front();            if (trans_ptr == &transaction_ref)            // LT target completing request      {        m_req_accepted_queue.pop();        m_req_accepted_event.notify(SC_ZERO_TIME);  // release reqeuster thread        response_out_port->write(&transaction_ref);                msg.str ("");        msg << m_ID << " - LT target completing request";                REPORT_INFO (filename,  __FUNCTION__, msg.str());                return_status = tlm::TLM_COMPLETED;      }      else      {        msg.str ("");        msg << m_ID << " - transaction ptr not valid BEGIN_RESP";                REPORT_FATAL(filename, __FUNCTION__, msg.str());      }      break;    }     case tlm::END_REQ:     case tlm::BEGIN_REQ:     case tlm::END_RESP:    {      msg.str ("");      msg << m_ID << " - phase undefined";              REPORT_FATAL(filename, __FUNCTION__, msg.str());            break;    }    default:    {                           msg.str ("");      msg << m_ID << " - phase not implemented";            REPORT_FATAL(filename, __FUNCTION__, msg.str());            break;    }  }    return return_status;}/*=============================================================================  @fn at_initiator_temporal_decoupling::invalidate_direct_mem_ptr    @brief invalidate DMI pointer    @details    This routine a DMI pointer.      @param name module name    @retval none=============================================================================*/voidat_initiator_temporal_decoupling::invalidate_direct_mem_ptr ///< invalidate_direct_mem_ptr( sc_dt::uint64 start_range                         ///< start range, sc_dt::uint64 end_range                           ///< end range){  std::ostringstream        msg;                    ///< log message  msg.str ("");  msg << m_ID << " - not implemented";    REPORT_FATAL(filename, __FUNCTION__, msg.str());}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99视频有精品| 大美女一区二区三区| 日韩一区日韩二区| 国产欧美一区二区在线观看| 精品乱人伦小说| 日韩三级免费观看| 精品日韩在线一区| 亚洲精品一区二区三区福利| 精品国产一区二区精华| 久久久久亚洲蜜桃| 日本一区免费视频| 国产精品国产三级国产专播品爱网 | av亚洲精华国产精华精| 日韩欧美在线123| 日韩欧美www| 欧美精品一区二区三区四区 | 国产一区二区三区不卡在线观看 | 国产成人欧美日韩在线电影| 国产一区二区三区四区五区入口| 国产成人在线视频播放| 91在线视频网址| 精品视频资源站| 久久这里只有精品首页| 国产片一区二区| 一区二区三区中文在线观看| 香蕉成人啪国产精品视频综合网 | 最新久久zyz资源站| 一区二区三区欧美日| 性做久久久久久免费观看| 美女www一区二区| 成人app在线| 在线不卡免费欧美| 中文在线一区二区| 婷婷中文字幕综合| 成人精品免费网站| 91精品国产一区二区人妖| 国产精品精品国产色婷婷| 亚洲国产一区在线观看| 国产美女精品人人做人人爽| 欧美色欧美亚洲另类二区| 精品少妇一区二区三区日产乱码 | 国产精品国产三级国产普通话蜜臀 | 日韩一区二区电影网| 国产精品免费视频网站| 日本午夜一本久久久综合| av电影在线观看不卡| 日韩欧美精品三级| 一区二区三区产品免费精品久久75| 免费成人美女在线观看| 色婷婷综合久久久中文一区二区 | 久久久久免费观看| 亚洲sss视频在线视频| av日韩在线网站| 2020国产精品自拍| 日韩不卡手机在线v区| 色婷婷久久一区二区三区麻豆| 精品国产一区二区三区不卡 | 亚洲欧洲综合另类| 国产精品123| 91精品国产综合久久久久久久久久| 自拍偷拍亚洲欧美日韩| 国产成人午夜精品影院观看视频 | 欧美电影在线免费观看| 一区二区三区在线不卡| eeuss鲁片一区二区三区在线观看| 日韩精品中文字幕在线一区| 日韩国产欧美在线观看| 欧美日韩黄色一区二区| 亚洲男人天堂av网| 色女孩综合影院| 亚洲色图19p| 99精品国产一区二区三区不卡| 国产色综合一区| 极品少妇xxxx精品少妇偷拍| 欧美成人精品福利| 美女看a上一区| 日韩一卡二卡三卡| 久久精品国产亚洲高清剧情介绍 | 狠狠久久亚洲欧美| 日韩欧美一级精品久久| 美脚の诱脚舐め脚责91| 欧美成人一区二区三区| 国产乱人伦偷精品视频免下载| 精品少妇一区二区| 国产很黄免费观看久久| 国产视频一区在线播放| 国产一区二区三区在线观看免费视频 | 一区二区三区日韩精品视频| 91浏览器在线视频| 亚洲国产毛片aaaaa无费看 | 午夜精品福利一区二区三区蜜桃| 欧美视频一区二区三区| 丝袜美腿成人在线| 久久久综合视频| 91毛片在线观看| 日本一区中文字幕| 久久麻豆一区二区| 91麻豆产精品久久久久久| 五月激情综合色| 久久久久青草大香线综合精品| 成人免费视频视频| 亚洲国产视频一区二区| 欧美成人官网二区| 不卡一区在线观看| 日韩不卡一区二区| 国产精品夫妻自拍| 在线成人高清不卡| 成人激情开心网| 日韩精彩视频在线观看| 国产午夜精品一区二区三区嫩草| 91天堂素人约啪| 久久狠狠亚洲综合| 久久―日本道色综合久久 | 亚洲一二三区在线观看| 日韩欧美在线影院| 99久久99久久久精品齐齐| 秋霞电影网一区二区| 国产日韩欧美激情| 欧美一级艳片视频免费观看| 韩国av一区二区三区四区| 综合在线观看色| 精品三级在线看| 欧美日韩精品三区| 99久久精品情趣| 狠狠狠色丁香婷婷综合久久五月| 亚洲乱码中文字幕| 日本一区二区三区dvd视频在线| 欧美精品久久久久久久多人混战 | 成人一级黄色片| 麻豆国产一区二区| 亚洲国产成人av网| 日韩一区在线免费观看| 国产色产综合色产在线视频| 91精品国产91久久综合桃花 | 国产精品女主播av| 欧美一区二区三区四区视频| 在线一区二区三区| 北岛玲一区二区三区四区| 黄一区二区三区| 欧美a一区二区| 亚洲综合网站在线观看| 中文字幕av一区二区三区| 日韩一区二区免费视频| 在线播放日韩导航| 欧日韩精品视频| 色美美综合视频| 91亚洲精品乱码久久久久久蜜桃 | aaa国产一区| 成人晚上爱看视频| 成人综合在线观看| 国产成人av一区| 成人中文字幕电影| 国产成人av福利| 岛国一区二区三区| 成人午夜视频免费看| 国产成人免费视频| 高清日韩电视剧大全免费| 高清不卡在线观看av| 国产 欧美在线| 国产成a人亚洲精| 国产尤物一区二区| 高清不卡一区二区| 成人丝袜高跟foot| 色婷婷精品大在线视频| 日本高清视频一区二区| 欧美在线免费观看亚洲| 91免费视频观看| 欧美日韩一区成人| 6080yy午夜一二三区久久| 日韩久久久精品| 中文字幕不卡的av| 亚洲欧美日韩在线| 亚欧色一区w666天堂| 久久99国产精品免费| 成人毛片在线观看| 欧美性受xxxx黑人xyx性爽| 欧美一区二区三区思思人| 久久久国产综合精品女国产盗摄| 亚洲国产成人自拍| 亚洲一区国产视频| 久草精品在线观看| av在线播放一区二区三区| 欧美亚洲一区二区三区四区| 欧美一区二区三区喷汁尤物| 久久亚洲影视婷婷| 一区二区三区四区亚洲| 蜜臀av性久久久久av蜜臀妖精| 国产成人亚洲精品青草天美| 欧美综合色免费| 国产夜色精品一区二区av| 亚洲影视在线播放| 国产不卡视频在线观看| 欧美亚洲综合色| 久久精品网站免费观看| 亚洲一区二区三区不卡国产欧美| 激情久久五月天| 91麻豆精品国产91久久久久| 欧美国产精品一区二区| 久久国产精品一区二区| 色成年激情久久综合|