tmpl(/**/)::VciTimer( sc_module_name name, const IntTab &index, const MappingTable &mt, size_t nirq) : caba::BaseModule(name), m_vci_fsm(p_vci, mt.getSegmentList(index)), m_ntimer(nirq), r_value(soclib::common::alloc_elems<sc_signal<typename vci_param::data_t> >("value", m_ntimer)), r_period(soclib::common::alloc_elems<sc_signal<typename vci_param::data_t> >("period", m_ntimer)), r_counter(soclib::common::alloc_elems<sc_signal<typename vci_param::data_t> >("counter", m_ntimer)), r_mode(soclib::common::alloc_elems<sc_signal<int> >("mode", m_ntimer)), r_irq(soclib::common::alloc_elems<sc_signal<bool> >("saved_irq", m_ntimer)), p_clk("clk"), p_resetn("resetn"), p_vci("vci"), p_irq(soclib::common::alloc_elems<sc_out<bool> >("irq", m_ntimer)) { m_vci_fsm.on_read_write(on_read, on_write); SC_METHOD(transition); dont_initialize(); sensitive << p_clk.pos(); SC_METHOD(genMoore); dont_initialize(); sensitive << p_clk.neg(); }
VciGcdMaster<vci_param>::VciGcdMaster( sc_module_name insname, const soclib::common::IntTab &index, const soclib::common::MappingTable &mt, const int seed, const typename vci_param::addr_t base) : sc_module(insname), r_fsm("r_fsm"), r_opa("r_opa"), r_opb("r_opb"), r_res("r_res"), r_cycle("r_cycle"), m_srcid(mt.indexForId(index)), m_base(base), p_resetn("p_resetn"), p_clk("p_clk"), p_vci("p_vci") { SC_METHOD(transition); dont_initialize(); sensitive << p_clk.pos(); SC_METHOD(genMoore); dont_initialize(); sensitive << p_clk.neg(); srand(seed); }
tmpl(/**/)::LoadWord (sc_module_name insname) : BaseModule(insname) { SC_METHOD (transition); dont_initialize(); sensitive << p_clk.pos(); SC_METHOD (genMoore); dont_initialize(); sensitive << p_clk.neg(); SC_METHOD (genMealy); dont_initialize(); sensitive << p_clk.neg() << p_input.rok << p_output.wok; build(); current = start; assert (shiftRegSize <= sizeof(unsigned long long)*8); #ifdef SOCLIB_MODULE_DEBUG // debug State * c = start; std::cout << "=== states === regSize: " << shiftRegSize << std::endl; while(1) { std::cout << (*c) << std::endl; if (c->num > 0 && c->next->num == 1) { break; } c = c->next; } std::cout << "=====================" << std::endl; #endif }
tmpl(/**/)::VciBlockDevice( sc_module_name name, const MappingTable &mt, const IntTab &srcid, const IntTab &tgtid, const std::string &filename, const uint32_t block_size, const uint32_t latency) : caba::BaseModule(name), m_vci_target_fsm(p_vci_target, mt.getSegmentList(tgtid)), m_vci_init_fsm(p_vci_initiator, mt.indexForId(srcid)), m_block_size(block_size), m_latency(latency), p_clk("clk"), p_resetn("resetn"), p_vci_target("vci_target"), p_vci_initiator("vci_initiator"), p_irq("irq") { m_vci_target_fsm.on_read_write(on_read, on_write); m_fd = ::open(filename.c_str(), O_RDWR); if ( m_fd < 0 ) { std::cerr << "Unable to open block device image file " << filename << std::endl; m_device_size = 0; } else { m_device_size = lseek(m_fd, 0, SEEK_END) / m_block_size; if ( m_device_size > ((uint64_t)1<<(vci_param::B*8)) ) { std::cerr << "Warning: block device " << filename << " has more blocks than addressable with " << (8*vci_param::B) << "." << std::endl; m_device_size = ((uint64_t)1<<(vci_param::B*8)); } } #ifdef SOCLIB_MODULE_DEBUG std::cout << name << " = Opened " << filename << " which has " << m_device_size << " blocks of " << m_block_size << " bytes" << std::endl; #endif SC_METHOD(transition); dont_initialize(); sensitive << p_clk.pos(); SC_METHOD(genMoore); dont_initialize(); sensitive << p_clk.neg(); }
tmpl(/**/)::VciXicu( sc_core::sc_module_name name, const MappingTable &mt, const IntTab &index, size_t pti_count, size_t hwi_count, size_t wti_count, size_t irq_count ) : caba::BaseModule(name), m_seglist( mt.getSegmentList(index) ), m_pti_count( pti_count ), m_hwi_count( hwi_count ), m_wti_count( wti_count ), m_irq_count( irq_count ), r_fsm( "r_fsm" ), r_data( "r_data" ), r_srcid( "r_srcid" ), r_trdid( "r_trdid" ), r_pktid( "r_pktid" ), r_msk_pti( alloc_elems<sc_signal<uint32_t> >("r_msk_pti" , irq_count) ), r_msk_wti( alloc_elems<sc_signal<uint32_t> >("r_msk_wti" , irq_count) ), r_msk_hwi( alloc_elems<sc_signal<uint32_t> >("r_msk_hwi" , irq_count) ), r_pti_pending( "r_pti_pending" ), r_wti_pending( "r_wti_pending" ), r_hwi_pending( "r_hwi_pending" ), r_pti_per( alloc_elems<sc_signal<uint32_t> >("r_pti_per" , pti_count) ), r_pti_val( alloc_elems<sc_signal<uint32_t> >("r_pti_val" , pti_count) ), r_wti_reg( alloc_elems<sc_signal<uint32_t> >("r_wti_reg" , wti_count) ), p_clk( "clk" ), p_resetn( "resetn" ), p_vci( "vci" ), p_irq( alloc_elems<sc_core::sc_out<bool> >("irq", irq_count) ), p_hwi( alloc_elems<sc_core::sc_in<bool> >("hwi", hwi_count) ) { std::cout << " - Building VciXicu : " << name << std::endl; std::list<soclib::common::Segment>::iterator seg; for ( seg = m_seglist.begin() ; seg != m_seglist.end() ; seg++ ) { std::cout << " => segment " << seg->name() << " / base = " << std::hex << seg->baseAddress() << " / size = " << seg->size() << std::endl; } SC_METHOD(transition); dont_initialize(); sensitive << p_clk.pos(); SC_METHOD(genMoore); dont_initialize(); sensitive << p_clk.neg(); }
tmpl()::Downsampling( sc_core::sc_module_name insname, int ncycles) : soclib::caba::BaseModule(insname), m_work_latency(ncycles) { SC_METHOD(transition); dont_initialize(); sensitive << p_clk.pos(); SC_METHOD(genMoore); dont_initialize(); sensitive << p_clk.neg(); }
//extern unsigned int BitsLength; //============================================================================= // Constructor //(author:cylin)=============================================================== sc_h264d_top::sc_h264d_top( const sc_module_name name, const sc_time accept_delay, // accept delay (SC_TIME) const sc_time read_response_delay, // read response delay (SC_TIME) const sc_time write_response_delay // write response delay (SC_TIME) ) : sc_module (name) , accept_delay (accept_delay) , read_response_delay (read_response_delay) , write_response_delay (write_response_delay) { MEM = (unsigned char *) calloc(0xffffff, 1);//local memory in H264 //register socket methods target_socket.register_b_transport(this, &sc_h264d_top::b_transport); target_socket.register_nb_transport_fw(this, &sc_h264d_top::nb_transport_fw ); SC_THREAD(t_decoder_main); SC_THREAD(t_decoder_dump_frame); SC_THREAD(t_decoder_deblock_thread); SC_THREAD(transaction_req); SC_METHOD(call_nb_transport_bw); sensitive<<event_call_nb_bw; dont_initialize(); //--initialization tlm2 payload ,initiator_socket transaction_ptr = new tlm::tlm_generic_payload(this); data_buffer_ptr = new unsigned char [4]; //show_cur_tran = 30; flag_dump_frame = 0; }
SdMMC::SdMMC( sc_core::sc_module_name name, const std::string &filename, const uint32_t latency) : caba::BaseModule(name), m_latency(latency), p_clk("p_clk"), p_resetn("p_resetn"), p_spi_ss("p_spi_ss"), p_spi_clk("p_spi_clk"), p_spi_mosi("p_spi_mosi"), p_spi_miso("p_spi_miso") { std::cout << " - Building SdMMC " << name << std::endl; SC_METHOD(genMealy); dont_initialize(); sensitive << p_clk.neg(); sensitive << p_resetn; sensitive << p_spi_ss; sensitive << p_spi_clk; m_fd = ::open(filename.c_str(), O_RDWR); if ( m_fd < 0 ) { std::cout << "Error in component SdMMC : " << name << " Unable to open file " << filename << std::endl; exit(1); } m_device_size = lseek(m_fd, 0, SEEK_END); } // end constructor
// le constructeur Display::Display (sc_core::sc_module_name insname, const int w , const int h , const int lsync , const int fsync ): sc_core::sc_module(insname), p_WIDTH(w), p_HEIGHT(h), p_LINE_SYNC(lsync), p_FRAME_SYNC(fsync) { SC_THREAD(read_pixels); sensitive << clk.pos(); dont_initialize(); // SDL INIT if ( SDL_Init(SDL_INIT_VIDEO) < 0 ) { cerr << "Unable to initilize SDL: " << SDL_GetError() << endl; exit(1); } // allocating frame pointer fb_memory = SDL_SetVideoMode(p_WIDTH, p_HEIGHT, 32, SDL_SWSURFACE); // 32 bits per pixel if ( fb_memory == NULL ) { cerr << "Unable to create " << p_WIDTH <<"x"<< p_HEIGHT << "display with 1 bpp:" << SDL_GetError() << endl; exit(1); } // debut de l'image pixel_c = 0; pixel_l = 0; std::cout << "Display " << name() << " was created succesfully " << std::endl; }
VciVgsb<vci_param>::VciVgsb ( sc_module_name name, MappingTable &maptab, size_t nb_master, size_t nb_slave) : sc_core::sc_module(name), m_routing_table(maptab.getRoutingTable( IntTab() ) ), m_nb_initiator(nb_master), m_nb_target(nb_slave), p_clk("clk"), p_resetn("resetn"), p_to_initiator(soclib::common::alloc_elems<soclib::caba::VciTarget<vci_param> >("p_to_initiator", nb_master)), p_to_target(soclib::common::alloc_elems<soclib::caba::VciInitiator<vci_param> >("p_to_target", nb_slave)), r_fsm("r_fsm"), r_initiator_index("r_initiator_index"), r_target_index("r_target_index"), r_vci_counter(soclib::common::alloc_elems<sc_signal<uint32_t> >("r_vci_counter", nb_master, nb_slave)) { SC_METHOD(transition); dont_initialize(); sensitive << p_clk.pos(); SC_METHOD(genMealy_rspval); dont_initialize(); sensitive << p_clk.neg(); for ( size_t i=0 ; i<nb_slave ; i++ ) sensitive << p_to_target[i]; SC_METHOD(genMealy_rspack); dont_initialize(); sensitive << p_clk.neg(); for ( size_t i=0 ; i<nb_master ; i++ ) sensitive << p_to_initiator[i]; SC_METHOD(genMealy_cmdval); dont_initialize(); sensitive << p_clk.neg(); for ( size_t i=0 ; i<nb_master ; i++ ) sensitive << p_to_initiator[i]; SC_METHOD(genMealy_cmdack); dont_initialize(); sensitive << p_clk.neg(); for ( size_t i=0 ; i<nb_slave ; i++ ) sensitive << p_to_target[i]; if ( !m_routing_table.isAllBelow( nb_slave ) ) { std::cout << "error in vci_gsb component" << std::endl; std::cout << "one target index is larger than the number of targets" << std::endl; exit(0); } } // end constructor
//Constructor filter::filter(sc_module_name name):sc_module(name) { //mem = new sc_fifo<unsigned char> ("mem", 600*600); SC_THREAD(doFilter); dont_initialize(); sensitive << clock.pos(); }
Mod(const sc_module_name& name) : sc_module(name), a("a") { SC_METHOD(foo); sensitive << clk.pos(); dont_initialize(); sc_trace(sc_tf, a, a.name()); }
UartSC::UartSC(sc_core::sc_module_name uart): sc_module(uart) { #ifdef UART_SC_STDIN_ENABLE SC_THREAD(driveRx); #endif SC_THREAD(checkTx); dont_initialize(); sensitive << uarttx; } // UartSC ()
simple_die_controller::simple_die_controller(sc_module_name module_name) : sc_module(module_name) { m_cache_reg = NULL; m_data_reg = NULL; m_die_busy = false; m_bus_busy = false; m_op_mode = DIE_FREE_MODE; SC_METHOD(on_exec_completed); sensitive << m_exec_completed_event; dont_initialize(); }
sc_event_queue::sc_event_queue( sc_module_name name_ ) : sc_module( name_ ), m_ppq( 128, sc_time_compare ), m_e( (std::string(SC_KERNEL_EVENT_PREFIX)+"_event").c_str() ), m_change_stamp(0), m_pending_delta(0) { SC_METHOD( fire_event ); sensitive << m_e; dont_initialize(); }
NativeWrapper::NativeWrapper(sc_core::sc_module_name name) : sc_module(name), irq("irq") { interrupt = false; SC_THREAD(compute); SC_METHOD(interrupt_handler_internal); sensitive << irq.pos(); dont_initialize(); }
VideoOut<wb_param>::VideoOut(sc_core::sc_module_name insname) : sc_core::sc_module(insname) { std::cout << "WishBone video out " << name() << " created sucsesfully" << std::endl; SC_METHOD(masterTransition); dont_initialize(); sensitive << p_clk.pos(); SC_METHOD(masterMoore); dont_initialize(); sensitive << p_clk.neg(); SC_METHOD(slaveTransition); dont_initialize(); sensitive << p_clk.pos(); SC_METHOD(slaveMoore); dont_initialize(); sensitive << p_clk.neg(); SC_METHOD(outputTransition); dont_initialize(); sensitive<<p_video_clk.pos(); SC_METHOD(outputMoore); dont_initialize(); sensitive<<p_clk.neg(); }
void ProcessingElement::connectToMemorySystem(MemorySystem *memsys) { m_memorySystem = memsys; createPortsAndFIFOs(); // must be done after FIFOs are created SC_METHOD(denseVectorAddrGen); sensitive << m_colIndValue->data_written_event() << m_denseVectorAddr->data_read_event(); dont_initialize(); SC_METHOD(rowPtrValueSplit); sensitive << m_rowPtrValueRaw->data_written_event() << m_rowPtrValue->data_read_event(); }
SCBus::SCBus(sc_module_name mname) : sc_module(mname), udp_socket(INVALID_SOCKET), local2wall_adjust_us(0), ext_synced(false) { LARGE_INTEGER perfCountFreq; if (!QueryPerformanceFrequency(&perfCountFreq)) { cerr << "SCBus: This platform does not support high resolution timers" << endl; exit(GetLastError()); } perfCountPerUS = double(perfCountFreq.QuadPart) / 1e6; cout << "SCBus: DBG Performance Counter per uS: " << perfCountPerUS << endl; SC_METHOD(transmit_data); dont_initialize(); sensitive << clk.pos() << rst; SC_METHOD(receive_data); dont_initialize(); sensitive << clk.pos() << rst; WIN32_FIND_DATA FindFileData; HANDLE hFind; hFind = FindFirstFile("*.sca", &FindFileData); if (hFind == INVALID_HANDLE_VALUE) { cout << "SCBus: No valid input batch file found (" << GetLastError() << ")" << endl; cout << "SCBus: Starting to listen on UDP" << endl; SC_THREAD(comm_thread); } else { cout << "SCBus: Using batch file '" << FindFileData.cFileName << "'" << endl; setup_batch(FindFileData.cFileName); FindClose(hFind); SC_THREAD(batch_thread); } }
VciGcdCoprocessor<vci_param>::VciGcdCoprocessor(sc_module_name insname, const soclib::common::IntTab &index, const soclib::common::MappingTable &mt) : sc_module(insname), r_vci_fsm("r_vci_fsm"), r_exe_fsm("r_exe_fsm"), r_srcid("r_srcid"), r_trdid("r_trdid"), r_pktid("r_pktid"), r_opa("r_opa"), r_opb("r_opb"), m_segment(mt.getSegment(index)), p_resetn("resetn"), p_clk("clk"), p_vci("vci") { SC_METHOD(transition); dont_initialize(); sensitive << p_clk.pos(); SC_METHOD(genMoore); dont_initialize(); sensitive << p_clk.neg(); }
po_layer_splitter::po_layer_splitter(sc_module_name _name, po_layer_splitter_config configuration) : configuration(configuration), input_stubs("input_stubs"), splitted_stubs(configuration.get_layer_nr(), "splitted_stubs") { // ----- Process registration ---------------------------------------------- SC_METHOD(split_stubs); sensitive << input_stubs.data_written(); dont_initialize(); // ----- Module channel/variable initialization ---------------------------- // ----- Module instance / channel binding --------------------------------- return; }
// le constructeur VideoGen::VideoGen (sc_core::sc_module_name insname, const char * bn, const int w , const int h , const int lsync , const int fsync ): sc_core::sc_module(insname), base_name(bn), p_WIDTH(w), p_HEIGHT(h), p_LINE_SYNC(lsync), p_FRAME_SYNC(fsync) { image.pixel = NULL; current_image_number = 0; read_image(); SC_THREAD(gen_sorties); sensitive << clk.pos(); dont_initialize(); std::cout << "Image generator " << name() << " was created succesfully " << std::endl; }
Wishbone2TLM::Wishbone2TLM(sc_core::sc_module_name name) : sc_module(name), clk("clk") { tlm_socket.register_nb_transport_bw(this, &Wishbone2TLM::nb_transport_bw); m_state = IDLE; m_payload.set_byte_enable_ptr(&m_byte_enable); m_payload.set_byte_enable_length(1); m_payload.set_data_ptr((unsigned char*)&m_data); m_payload.set_data_length(4); m_payload.set_streaming_width(4); m_phase = tlm::BEGIN_REQ; SC_METHOD(transact); sensitive << clk.neg(); dont_initialize(); }
dtc_input_unit::dtc_input_unit(sc_module_name _name, dtc_input_unit_config configuration) : sc_module(_name), fe_collect_cycles(configuration.type.fe_collect_cycles), fe_id(configuration.fe_id), clk("clk"), gbt_input("gbt_input"), write_buffer_select("write_buffer_select"), bx_buffer_out(2, fe_collect_cycles, "bx_sorted_stubs"), configuration(configuration) { // ----- Process registration ---------------------------------------------- SC_METHOD(process_stubs); sensitive << gbt_input; dont_initialize(); // ----- Module channel/variable initialization ---------------------------- // ----- Module instance / channel binding --------------------------------- return; }
BridgeClassicToAMBATLM2<BUSWIDTH>::BridgeClassicToAMBATLM2(sc_core::sc_module_name nm, std::string ace_master_name, std::string debug_master_name) : sc_core::sc_module(nm), SimpleMemory(BridgeClassicToAMBATLM2_init(new SimpleMemoryParams())), writeDataQueue(1), slavePort(NULL),funcPort(NULL), master_sock(ace_master_name.c_str(),amba::amba_AXI, amba::amba_CT,false, gs::socket::GS_TXN_WITH_DATA), debug_port(debug_master_name.c_str()), _trace_transactions_cfg("trace_on",false) { m_Api = gs::cnf::GCnf_Api::getApiInstance(this); master_sock.template register_nb_transport_bw< BridgeClassicToAMBATLM2<BUSWIDTH> >(this, & BridgeClassicToAMBATLM2<BUSWIDTH>::nb_bw_transport); debug_port.bind( *this ); // Initiator socket bound to the initiator itself counter=0; needRetry=false; needWrRetry=false; needWrIdRetry=false; needRdIdRetry=false; bus_stalling=false; for (uint32_t i=0;i<128;i++) { rd_packets[i]=NULL; wr_packets[i]=NULL; } clk_period=m_Api->getValue<sc_core::sc_time>("clk1_arm"); need_wenable_event=false; SC_THREAD(sendWriteData); SC_METHOD(send_dummy_response); sensitive << send_dummy_response_event; dont_initialize(); SimObjectParams* tmp_params= const_cast<SimObjectParams*>(_params); tmp_params->name=std::string(sc_core::sc_object::name()); }
image_filter_Block_proc::image_filter_Block_proc(sc_module_name name) : sc_module(name), mVcdFile(0) { SC_METHOD(thread_ap_clk_no_reset_); dont_initialize(); sensitive << ( ap_clk.pos() ); SC_METHOD(thread_ap_done); sensitive << ( ap_done_reg ); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); sensitive << ( ap_sig_bdd_46 ); SC_METHOD(thread_ap_idle); sensitive << ( ap_start ); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); SC_METHOD(thread_ap_ready); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); sensitive << ( ap_sig_bdd_46 ); SC_METHOD(thread_ap_return_0); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); sensitive << ( ap_sig_bdd_46 ); sensitive << ( img_0_rgb_rows_V_fu_31_p1 ); sensitive << ( ap_return_0_preg ); SC_METHOD(thread_ap_return_1); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); sensitive << ( ap_sig_bdd_46 ); sensitive << ( img_0_rgb_rows_V_fu_31_p1 ); sensitive << ( ap_return_1_preg ); SC_METHOD(thread_ap_return_10); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); sensitive << ( ap_sig_bdd_46 ); sensitive << ( img_0_rgb_rows_V_fu_31_p1 ); sensitive << ( ap_return_10_preg ); SC_METHOD(thread_ap_return_11); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); sensitive << ( ap_sig_bdd_46 ); sensitive << ( img_0_rgb_cols_V_fu_35_p1 ); sensitive << ( ap_return_11_preg ); SC_METHOD(thread_ap_return_2); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); sensitive << ( ap_sig_bdd_46 ); sensitive << ( img_0_rgb_cols_V_fu_35_p1 ); sensitive << ( ap_return_2_preg ); SC_METHOD(thread_ap_return_3); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); sensitive << ( ap_sig_bdd_46 ); sensitive << ( img_0_rgb_cols_V_fu_35_p1 ); sensitive << ( ap_return_3_preg ); SC_METHOD(thread_ap_return_4); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); sensitive << ( ap_sig_bdd_46 ); sensitive << ( img_0_rgb_rows_V_fu_31_p1 ); sensitive << ( ap_return_4_preg ); SC_METHOD(thread_ap_return_5); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); sensitive << ( ap_sig_bdd_46 ); sensitive << ( img_0_rgb_cols_V_fu_35_p1 ); sensitive << ( ap_return_5_preg ); SC_METHOD(thread_ap_return_6); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); sensitive << ( ap_sig_bdd_46 ); sensitive << ( img_0_rgb_rows_V_fu_31_p1 ); sensitive << ( ap_return_6_preg ); SC_METHOD(thread_ap_return_7); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); sensitive << ( ap_sig_bdd_46 ); sensitive << ( img_0_rgb_cols_V_fu_35_p1 ); sensitive << ( ap_return_7_preg ); SC_METHOD(thread_ap_return_8); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); sensitive << ( ap_sig_bdd_46 ); sensitive << ( img_0_rgb_rows_V_fu_31_p1 ); sensitive << ( ap_return_8_preg ); SC_METHOD(thread_ap_return_9); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); sensitive << ( ap_sig_bdd_46 ); sensitive << ( img_0_rgb_cols_V_fu_35_p1 ); sensitive << ( ap_return_9_preg ); SC_METHOD(thread_ap_sig_bdd_20); sensitive << ( ap_CS_fsm ); SC_METHOD(thread_ap_sig_bdd_46); sensitive << ( ap_start ); sensitive << ( ap_done_reg ); SC_METHOD(thread_ap_sig_cseq_ST_st1_fsm_0); sensitive << ( ap_sig_bdd_20 ); SC_METHOD(thread_img_0_rgb_cols_V_fu_35_p1); sensitive << ( cols ); SC_METHOD(thread_img_0_rgb_rows_V_fu_31_p1); sensitive << ( rows ); SC_METHOD(thread_ap_NS_fsm); sensitive << ( ap_CS_fsm ); sensitive << ( ap_sig_bdd_46 ); ap_done_reg = SC_LOGIC_0; ap_CS_fsm = "1"; ap_return_0_preg = "000000000000"; ap_return_1_preg = "000000000000"; ap_return_2_preg = "000000000000"; ap_return_3_preg = "000000000000"; ap_return_4_preg = "000000000000"; ap_return_5_preg = "000000000000"; ap_return_6_preg = "000000000000"; ap_return_7_preg = "000000000000"; ap_return_8_preg = "000000000000"; ap_return_9_preg = "000000000000"; ap_return_10_preg = "000000000000"; ap_return_11_preg = "000000000000"; static int apTFileNum = 0; stringstream apTFilenSS; apTFilenSS << "image_filter_Block_proc_sc_trace_" << apTFileNum ++; string apTFn = apTFilenSS.str(); mVcdFile = sc_create_vcd_trace_file(apTFn.c_str()); mVcdFile->set_time_unit(1, SC_PS); if (1) { #ifdef __HLS_TRACE_LEVEL_PORT_HIER__ sc_trace(mVcdFile, ap_clk, "(port)ap_clk"); sc_trace(mVcdFile, ap_rst, "(port)ap_rst"); sc_trace(mVcdFile, ap_start, "(port)ap_start"); sc_trace(mVcdFile, ap_done, "(port)ap_done"); sc_trace(mVcdFile, ap_continue, "(port)ap_continue"); sc_trace(mVcdFile, ap_idle, "(port)ap_idle"); sc_trace(mVcdFile, ap_ready, "(port)ap_ready"); sc_trace(mVcdFile, rows, "(port)rows"); sc_trace(mVcdFile, cols, "(port)cols"); sc_trace(mVcdFile, ap_return_0, "(port)ap_return_0"); sc_trace(mVcdFile, ap_return_1, "(port)ap_return_1"); sc_trace(mVcdFile, ap_return_2, "(port)ap_return_2"); sc_trace(mVcdFile, ap_return_3, "(port)ap_return_3"); sc_trace(mVcdFile, ap_return_4, "(port)ap_return_4"); sc_trace(mVcdFile, ap_return_5, "(port)ap_return_5"); sc_trace(mVcdFile, ap_return_6, "(port)ap_return_6"); sc_trace(mVcdFile, ap_return_7, "(port)ap_return_7"); sc_trace(mVcdFile, ap_return_8, "(port)ap_return_8"); sc_trace(mVcdFile, ap_return_9, "(port)ap_return_9"); sc_trace(mVcdFile, ap_return_10, "(port)ap_return_10"); sc_trace(mVcdFile, ap_return_11, "(port)ap_return_11"); #endif #ifdef __HLS_TRACE_LEVEL_INT__ sc_trace(mVcdFile, ap_done_reg, "ap_done_reg"); sc_trace(mVcdFile, ap_CS_fsm, "ap_CS_fsm"); sc_trace(mVcdFile, ap_sig_cseq_ST_st1_fsm_0, "ap_sig_cseq_ST_st1_fsm_0"); sc_trace(mVcdFile, ap_sig_bdd_20, "ap_sig_bdd_20"); sc_trace(mVcdFile, ap_sig_bdd_46, "ap_sig_bdd_46"); sc_trace(mVcdFile, img_0_rgb_rows_V_fu_31_p1, "img_0_rgb_rows_V_fu_31_p1"); sc_trace(mVcdFile, img_0_rgb_cols_V_fu_35_p1, "img_0_rgb_cols_V_fu_35_p1"); sc_trace(mVcdFile, ap_return_0_preg, "ap_return_0_preg"); sc_trace(mVcdFile, ap_return_1_preg, "ap_return_1_preg"); sc_trace(mVcdFile, ap_return_2_preg, "ap_return_2_preg"); sc_trace(mVcdFile, ap_return_3_preg, "ap_return_3_preg"); sc_trace(mVcdFile, ap_return_4_preg, "ap_return_4_preg"); sc_trace(mVcdFile, ap_return_5_preg, "ap_return_5_preg"); sc_trace(mVcdFile, ap_return_6_preg, "ap_return_6_preg"); sc_trace(mVcdFile, ap_return_7_preg, "ap_return_7_preg"); sc_trace(mVcdFile, ap_return_8_preg, "ap_return_8_preg"); sc_trace(mVcdFile, ap_return_9_preg, "ap_return_9_preg"); sc_trace(mVcdFile, ap_return_10_preg, "ap_return_10_preg"); sc_trace(mVcdFile, ap_return_11_preg, "ap_return_11_preg"); sc_trace(mVcdFile, ap_NS_fsm, "ap_NS_fsm"); #endif } }
init_5::init_5(sc_module_name name) : sc_module(name), mVcdFile(0) { SC_METHOD(thread_ap_clk_no_reset_); dont_initialize(); sensitive << ( ap_clk.pos() ); SC_METHOD(thread_ap_done); sensitive << ( ap_done_reg ); sensitive << ( ap_CS_fsm ); sensitive << ( ap_sig_bdd_29 ); SC_METHOD(thread_ap_idle); sensitive << ( ap_start ); sensitive << ( ap_CS_fsm ); SC_METHOD(thread_ap_ready); sensitive << ( ap_CS_fsm ); sensitive << ( ap_sig_bdd_29 ); SC_METHOD(thread_ap_return_0); sensitive << ( ap_CS_fsm ); sensitive << ( ap_sig_bdd_29 ); sensitive << ( tmp_fu_29_p1 ); sensitive << ( ap_return_0_preg ); SC_METHOD(thread_ap_return_1); sensitive << ( ap_CS_fsm ); sensitive << ( ap_sig_bdd_29 ); sensitive << ( tmp_167_fu_33_p1 ); sensitive << ( ap_return_1_preg ); SC_METHOD(thread_ap_sig_bdd_29); sensitive << ( ap_start ); sensitive << ( ap_done_reg ); SC_METHOD(thread_tmp_167_fu_33_p1); sensitive << ( p_cols ); SC_METHOD(thread_tmp_fu_29_p1); sensitive << ( p_rows ); SC_METHOD(thread_ap_NS_fsm); sensitive << ( ap_CS_fsm ); sensitive << ( ap_sig_bdd_29 ); ap_done_reg = SC_LOGIC_0; ap_CS_fsm = "0"; ap_return_0_preg = "000000000000"; ap_return_1_preg = "000000000000"; static int apTFileNum = 0; stringstream apTFilenSS; apTFilenSS << "init_5_sc_trace_" << apTFileNum ++; string apTFn = apTFilenSS.str(); mVcdFile = sc_create_vcd_trace_file(apTFn.c_str()); mVcdFile->set_time_unit(1, SC_PS); const char* dump_vcd = std::getenv("AP_WRITE_VCD"); if (dump_vcd && string(dump_vcd) == "1" ) { sc_trace(mVcdFile, ap_clk, "(port)ap_clk"); sc_trace(mVcdFile, ap_rst, "(port)ap_rst"); sc_trace(mVcdFile, ap_start, "(port)ap_start"); sc_trace(mVcdFile, ap_done, "(port)ap_done"); sc_trace(mVcdFile, ap_continue, "(port)ap_continue"); sc_trace(mVcdFile, ap_idle, "(port)ap_idle"); sc_trace(mVcdFile, ap_ready, "(port)ap_ready"); sc_trace(mVcdFile, p_rows, "(port)p_rows"); sc_trace(mVcdFile, p_cols, "(port)p_cols"); sc_trace(mVcdFile, ap_return_0, "(port)ap_return_0"); sc_trace(mVcdFile, ap_return_1, "(port)ap_return_1"); sc_trace(mVcdFile, ap_done_reg, "ap_done_reg"); sc_trace(mVcdFile, ap_CS_fsm, "ap_CS_fsm"); sc_trace(mVcdFile, ap_sig_bdd_29, "ap_sig_bdd_29"); sc_trace(mVcdFile, tmp_fu_29_p1, "tmp_fu_29_p1"); sc_trace(mVcdFile, tmp_167_fu_33_p1, "tmp_167_fu_33_p1"); sc_trace(mVcdFile, ap_return_0_preg, "ap_return_0_preg"); sc_trace(mVcdFile, ap_return_1_preg, "ap_return_1_preg"); sc_trace(mVcdFile, ap_NS_fsm, "ap_NS_fsm"); } }
adders::adders(sc_module_name name) : sc_module(name), mVcdFile(0) { adders_add_32ns_32ns_32_8_U1 = new adders_add_32ns_32ns_32_8<1,8,32,32,32>("adders_add_32ns_32ns_32_8_U1"); adders_add_32ns_32ns_32_8_U1->clk(ap_clk); adders_add_32ns_32ns_32_8_U1->reset(ap_rst); adders_add_32ns_32ns_32_8_U1->din0(grp_fu_41_p0); adders_add_32ns_32ns_32_8_U1->din1(grp_fu_41_p1); adders_add_32ns_32ns_32_8_U1->ce(grp_fu_41_ce); adders_add_32ns_32ns_32_8_U1->dout(grp_fu_41_p2); adders_add_32ns_32ns_32_8_U2 = new adders_add_32ns_32ns_32_8<1,8,32,32,32>("adders_add_32ns_32ns_32_8_U2"); adders_add_32ns_32ns_32_8_U2->clk(ap_clk); adders_add_32ns_32ns_32_8_U2->reset(ap_rst); adders_add_32ns_32ns_32_8_U2->din0(grp_fu_47_p0); adders_add_32ns_32ns_32_8_U2->din1(grp_fu_47_p1); adders_add_32ns_32ns_32_8_U2->ce(grp_fu_47_ce); adders_add_32ns_32ns_32_8_U2->dout(grp_fu_47_p2); SC_METHOD(thread_ap_clk_no_reset_); dont_initialize(); sensitive << ( ap_clk.pos() ); SC_METHOD(thread_ap_done); sensitive << ( ap_sig_cseq_ST_st16_fsm_15 ); SC_METHOD(thread_ap_idle); sensitive << ( ap_start ); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); SC_METHOD(thread_ap_ready); sensitive << ( ap_sig_cseq_ST_st16_fsm_15 ); SC_METHOD(thread_ap_return); sensitive << ( grp_fu_47_p2 ); sensitive << ( ap_sig_cseq_ST_st16_fsm_15 ); SC_METHOD(thread_ap_sig_bdd_32); sensitive << ( ap_CS_fsm ); SC_METHOD(thread_ap_sig_bdd_57); sensitive << ( ap_CS_fsm ); SC_METHOD(thread_ap_sig_bdd_66); sensitive << ( ap_CS_fsm ); SC_METHOD(thread_ap_sig_bdd_83); sensitive << ( ap_CS_fsm ); SC_METHOD(thread_ap_sig_cseq_ST_st16_fsm_15); sensitive << ( ap_sig_bdd_83 ); SC_METHOD(thread_ap_sig_cseq_ST_st1_fsm_0); sensitive << ( ap_sig_bdd_32 ); SC_METHOD(thread_ap_sig_cseq_ST_st8_fsm_7); sensitive << ( ap_sig_bdd_57 ); SC_METHOD(thread_ap_sig_cseq_ST_st9_fsm_8); sensitive << ( ap_sig_bdd_66 ); SC_METHOD(thread_grp_fu_41_ce); SC_METHOD(thread_grp_fu_41_p0); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); sensitive << ( in1 ); SC_METHOD(thread_grp_fu_41_p1); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); sensitive << ( in3 ); SC_METHOD(thread_grp_fu_47_ce); SC_METHOD(thread_grp_fu_47_p0); sensitive << ( tmp1_reg_62 ); sensitive << ( ap_sig_cseq_ST_st9_fsm_8 ); SC_METHOD(thread_grp_fu_47_p1); sensitive << ( in2 ); sensitive << ( ap_sig_cseq_ST_st9_fsm_8 ); SC_METHOD(thread_ap_NS_fsm); sensitive << ( ap_start ); sensitive << ( ap_CS_fsm ); SC_THREAD(thread_hdltv_gen); sensitive << ( ap_clk.pos() ); ap_CS_fsm = "0000000000000001"; static int apTFileNum = 0; stringstream apTFilenSS; apTFilenSS << "adders_sc_trace_" << apTFileNum ++; string apTFn = apTFilenSS.str(); mVcdFile = sc_create_vcd_trace_file(apTFn.c_str()); mVcdFile->set_time_unit(1, SC_PS); if (1) { #ifdef __HLS_TRACE_LEVEL_PORT__ sc_trace(mVcdFile, ap_clk, "(port)ap_clk"); sc_trace(mVcdFile, ap_rst, "(port)ap_rst"); sc_trace(mVcdFile, ap_start, "(port)ap_start"); sc_trace(mVcdFile, ap_done, "(port)ap_done"); sc_trace(mVcdFile, ap_idle, "(port)ap_idle"); sc_trace(mVcdFile, ap_ready, "(port)ap_ready"); sc_trace(mVcdFile, in1, "(port)in1"); sc_trace(mVcdFile, in2, "(port)in2"); sc_trace(mVcdFile, in3, "(port)in3"); sc_trace(mVcdFile, ap_return, "(port)ap_return"); #endif #ifdef __HLS_TRACE_LEVEL_INT__ sc_trace(mVcdFile, ap_CS_fsm, "ap_CS_fsm"); sc_trace(mVcdFile, ap_sig_cseq_ST_st1_fsm_0, "ap_sig_cseq_ST_st1_fsm_0"); sc_trace(mVcdFile, ap_sig_bdd_32, "ap_sig_bdd_32"); sc_trace(mVcdFile, grp_fu_41_p2, "grp_fu_41_p2"); sc_trace(mVcdFile, tmp1_reg_62, "tmp1_reg_62"); sc_trace(mVcdFile, ap_sig_cseq_ST_st8_fsm_7, "ap_sig_cseq_ST_st8_fsm_7"); sc_trace(mVcdFile, ap_sig_bdd_57, "ap_sig_bdd_57"); sc_trace(mVcdFile, ap_sig_cseq_ST_st9_fsm_8, "ap_sig_cseq_ST_st9_fsm_8"); sc_trace(mVcdFile, ap_sig_bdd_66, "ap_sig_bdd_66"); sc_trace(mVcdFile, grp_fu_41_p0, "grp_fu_41_p0"); sc_trace(mVcdFile, grp_fu_41_p1, "grp_fu_41_p1"); sc_trace(mVcdFile, grp_fu_47_p0, "grp_fu_47_p0"); sc_trace(mVcdFile, grp_fu_47_p1, "grp_fu_47_p1"); sc_trace(mVcdFile, grp_fu_41_ce, "grp_fu_41_ce"); sc_trace(mVcdFile, grp_fu_47_p2, "grp_fu_47_p2"); sc_trace(mVcdFile, grp_fu_47_ce, "grp_fu_47_ce"); sc_trace(mVcdFile, ap_sig_cseq_ST_st16_fsm_15, "ap_sig_cseq_ST_st16_fsm_15"); sc_trace(mVcdFile, ap_sig_bdd_83, "ap_sig_bdd_83"); sc_trace(mVcdFile, ap_NS_fsm, "ap_NS_fsm"); #endif } mHdltvinHandle.open("adders.hdltvin.dat"); mHdltvoutHandle.open("adders.hdltvout.dat"); }
iosc::iosc(sc_module_name name) : sc_module(name), mVcdFile(0) { grp_iosc_timerThread_fu_78 = new iosc_timerThread("grp_iosc_timerThread_fu_78"); grp_iosc_timerThread_fu_78->ap_clk(clk); grp_iosc_timerThread_fu_78->ap_rst(reset); grp_iosc_timerThread_fu_78->iosc_second(grp_iosc_timerThread_fu_78_iosc_second); grp_iosc_timerThread_fu_78->iosc_second_ap_vld(grp_iosc_timerThread_fu_78_iosc_second_ap_vld); grp_iosc_timerThread_fu_78->iosc_timerCount_V_i(grp_iosc_timerThread_fu_78_iosc_timerCount_V_i); grp_iosc_timerThread_fu_78->iosc_timerCount_V_o(grp_iosc_timerThread_fu_78_iosc_timerCount_V_o); grp_iosc_timerThread_fu_78->iosc_timerCount_V_o_ap_vld(grp_iosc_timerThread_fu_78_iosc_timerCount_V_o_ap_vld); grp_iosc_iosThread_fu_104 = new iosc_iosThread("grp_iosc_iosThread_fu_104"); grp_iosc_iosThread_fu_104->ap_clk(clk); grp_iosc_iosThread_fu_104->ap_rst(reset); grp_iosc_iosThread_fu_104->ctrl(grp_iosc_iosThread_fu_104_ctrl); grp_iosc_iosThread_fu_104->inSwitch(grp_iosc_iosThread_fu_104_inSwitch); grp_iosc_iosThread_fu_104->outLeds(grp_iosc_iosThread_fu_104_outLeds); grp_iosc_iosThread_fu_104->outLeds_ap_vld(grp_iosc_iosThread_fu_104_outLeds_ap_vld); grp_iosc_iosThread_fu_104->iosc_switchs_V(grp_iosc_iosThread_fu_104_iosc_switchs_V); grp_iosc_iosThread_fu_104->iosc_switchs_V_ap_vld(grp_iosc_iosThread_fu_104_iosc_switchs_V_ap_vld); grp_iosc_iosThread_fu_104->iosc_switchs_in_V(grp_iosc_iosThread_fu_104_iosc_switchs_in_V); grp_iosc_iosThread_fu_104->iosc_switchs_in_V_ap_vld(grp_iosc_iosThread_fu_104_iosc_switchs_in_V_ap_vld); grp_iosc_iosThread_fu_104->iosc_ctrl_in_V(grp_iosc_iosThread_fu_104_iosc_ctrl_in_V); grp_iosc_iosThread_fu_104->iosc_ctrl_in_V_ap_vld(grp_iosc_iosThread_fu_104_iosc_ctrl_in_V_ap_vld); grp_iosc_iosThread_fu_104->iosc_second_count_V_i(grp_iosc_iosThread_fu_104_iosc_second_count_V_i); grp_iosc_iosThread_fu_104->iosc_second_count_V_o(grp_iosc_iosThread_fu_104_iosc_second_count_V_o); grp_iosc_iosThread_fu_104->iosc_second_count_V_o_ap_vld(grp_iosc_iosThread_fu_104_iosc_second_count_V_o_ap_vld); grp_iosc_iosThread_fu_104->iosc_second(grp_iosc_iosThread_fu_104_iosc_second); SC_METHOD(thread_iosc_second); dont_initialize(); sensitive << ( clk.pos() ); SC_METHOD(thread_iosc_second_count_V); dont_initialize(); sensitive << ( clk.pos() ); SC_METHOD(thread_iosc_timerCount_V); dont_initialize(); sensitive << ( clk.pos() ); SC_METHOD(thread_outLeds); dont_initialize(); sensitive << ( clk.pos() ); SC_METHOD(thread_ap_CS_fsm); SC_METHOD(thread_ap_sig_bdd_62); sensitive << ( ap_CS_fsm ); SC_METHOD(thread_ap_sig_cseq_ST_st2_fsm_1); sensitive << ( ap_sig_bdd_62 ); SC_METHOD(thread_grp_iosc_iosThread_fu_104_ctrl); sensitive << ( ctrl ); sensitive << ( iosc_ssdm_thread_M_iosThrea_load_fu_131_p1 ); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_grp_iosc_iosThread_fu_104_inSwitch); sensitive << ( inSwitch ); sensitive << ( iosc_ssdm_thread_M_iosThrea_load_fu_131_p1 ); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_grp_iosc_iosThread_fu_104_iosc_second); sensitive << ( iosc_second ); sensitive << ( iosc_ssdm_thread_M_iosThrea_load_fu_131_p1 ); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_grp_iosc_iosThread_fu_104_iosc_second_count_V_i); sensitive << ( iosc_second_count_V ); sensitive << ( iosc_ssdm_thread_M_iosThrea_load_fu_131_p1 ); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_grp_iosc_timerThread_fu_78_iosc_timerCount_V_i); sensitive << ( iosc_timerCount_V ); sensitive << ( iosc_ssdm_thread_M_iosThrea_load_fu_131_p1 ); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_iosc_ssdm_thread_M_iosThrea_load_fu_131_p1); SC_THREAD(thread_hdltv_gen); sensitive << ( clk.pos() ); static int apTFileNum = 0; stringstream apTFilenSS; apTFilenSS << "iosc_sc_trace_" << apTFileNum ++; string apTFn = apTFilenSS.str(); mVcdFile = sc_create_vcd_trace_file(apTFn.c_str()); mVcdFile->set_time_unit(1, SC_PS); if (1) { #ifdef __HLS_TRACE_LEVEL_PORT__ sc_trace(mVcdFile, clk, "(port)clk"); sc_trace(mVcdFile, reset, "(port)reset"); sc_trace(mVcdFile, ctrl, "(port)ctrl"); sc_trace(mVcdFile, inSwitch, "(port)inSwitch"); sc_trace(mVcdFile, outLeds, "(port)outLeds"); #endif #ifdef __HLS_TRACE_LEVEL_INT__ sc_trace(mVcdFile, iosc_second_count_V, "iosc_second_count_V"); sc_trace(mVcdFile, iosc_second, "iosc_second"); sc_trace(mVcdFile, iosc_timerCount_V, "iosc_timerCount_V"); sc_trace(mVcdFile, iosc_ssdm_thread_M_iosThrea_load_fu_131_p1, "iosc_ssdm_thread_M_iosThrea_load_fu_131_p1"); sc_trace(mVcdFile, ap_CS_fsm, "ap_CS_fsm"); sc_trace(mVcdFile, grp_iosc_timerThread_fu_78_iosc_second, "grp_iosc_timerThread_fu_78_iosc_second"); sc_trace(mVcdFile, grp_iosc_timerThread_fu_78_iosc_second_ap_vld, "grp_iosc_timerThread_fu_78_iosc_second_ap_vld"); sc_trace(mVcdFile, grp_iosc_timerThread_fu_78_iosc_timerCount_V_i, "grp_iosc_timerThread_fu_78_iosc_timerCount_V_i"); sc_trace(mVcdFile, grp_iosc_timerThread_fu_78_iosc_timerCount_V_o, "grp_iosc_timerThread_fu_78_iosc_timerCount_V_o"); sc_trace(mVcdFile, grp_iosc_timerThread_fu_78_iosc_timerCount_V_o_ap_vld, "grp_iosc_timerThread_fu_78_iosc_timerCount_V_o_ap_vld"); sc_trace(mVcdFile, grp_iosc_iosThread_fu_104_ctrl, "grp_iosc_iosThread_fu_104_ctrl"); sc_trace(mVcdFile, grp_iosc_iosThread_fu_104_inSwitch, "grp_iosc_iosThread_fu_104_inSwitch"); sc_trace(mVcdFile, grp_iosc_iosThread_fu_104_outLeds, "grp_iosc_iosThread_fu_104_outLeds"); sc_trace(mVcdFile, grp_iosc_iosThread_fu_104_outLeds_ap_vld, "grp_iosc_iosThread_fu_104_outLeds_ap_vld"); sc_trace(mVcdFile, grp_iosc_iosThread_fu_104_iosc_switchs_V, "grp_iosc_iosThread_fu_104_iosc_switchs_V"); sc_trace(mVcdFile, grp_iosc_iosThread_fu_104_iosc_switchs_V_ap_vld, "grp_iosc_iosThread_fu_104_iosc_switchs_V_ap_vld"); sc_trace(mVcdFile, grp_iosc_iosThread_fu_104_iosc_switchs_in_V, "grp_iosc_iosThread_fu_104_iosc_switchs_in_V"); sc_trace(mVcdFile, grp_iosc_iosThread_fu_104_iosc_switchs_in_V_ap_vld, "grp_iosc_iosThread_fu_104_iosc_switchs_in_V_ap_vld"); sc_trace(mVcdFile, grp_iosc_iosThread_fu_104_iosc_ctrl_in_V, "grp_iosc_iosThread_fu_104_iosc_ctrl_in_V"); sc_trace(mVcdFile, grp_iosc_iosThread_fu_104_iosc_ctrl_in_V_ap_vld, "grp_iosc_iosThread_fu_104_iosc_ctrl_in_V_ap_vld"); sc_trace(mVcdFile, grp_iosc_iosThread_fu_104_iosc_second_count_V_i, "grp_iosc_iosThread_fu_104_iosc_second_count_V_i"); sc_trace(mVcdFile, grp_iosc_iosThread_fu_104_iosc_second_count_V_o, "grp_iosc_iosThread_fu_104_iosc_second_count_V_o"); sc_trace(mVcdFile, grp_iosc_iosThread_fu_104_iosc_second_count_V_o_ap_vld, "grp_iosc_iosThread_fu_104_iosc_second_count_V_o_ap_vld"); sc_trace(mVcdFile, grp_iosc_iosThread_fu_104_iosc_second, "grp_iosc_iosThread_fu_104_iosc_second"); sc_trace(mVcdFile, ap_sig_cseq_ST_st2_fsm_1, "ap_sig_cseq_ST_st2_fsm_1"); sc_trace(mVcdFile, ap_sig_bdd_62, "ap_sig_bdd_62"); #endif } mHdltvinHandle.open("iosc.hdltvin.dat"); mHdltvoutHandle.open("iosc.hdltvout.dat"); }
image_filter_Sobel::image_filter_Sobel(sc_module_name name) : sc_module(name), mVcdFile(0) { grp_image_filter_Filter2D_fu_56 = new image_filter_Filter2D("grp_image_filter_Filter2D_fu_56"); grp_image_filter_Filter2D_fu_56->ap_clk(ap_clk); grp_image_filter_Filter2D_fu_56->ap_rst(ap_rst); grp_image_filter_Filter2D_fu_56->ap_start(grp_image_filter_Filter2D_fu_56_ap_start); grp_image_filter_Filter2D_fu_56->ap_done(grp_image_filter_Filter2D_fu_56_ap_done); grp_image_filter_Filter2D_fu_56->ap_idle(grp_image_filter_Filter2D_fu_56_ap_idle); grp_image_filter_Filter2D_fu_56->ap_ready(grp_image_filter_Filter2D_fu_56_ap_ready); grp_image_filter_Filter2D_fu_56->p_src_rows_V_read(grp_image_filter_Filter2D_fu_56_p_src_rows_V_read); grp_image_filter_Filter2D_fu_56->p_src_cols_V_read(grp_image_filter_Filter2D_fu_56_p_src_cols_V_read); grp_image_filter_Filter2D_fu_56->p_src_data_stream_V_dout(grp_image_filter_Filter2D_fu_56_p_src_data_stream_V_dout); grp_image_filter_Filter2D_fu_56->p_src_data_stream_V_empty_n(grp_image_filter_Filter2D_fu_56_p_src_data_stream_V_empty_n); grp_image_filter_Filter2D_fu_56->p_src_data_stream_V_read(grp_image_filter_Filter2D_fu_56_p_src_data_stream_V_read); grp_image_filter_Filter2D_fu_56->p_dst_data_stream_V_din(grp_image_filter_Filter2D_fu_56_p_dst_data_stream_V_din); grp_image_filter_Filter2D_fu_56->p_dst_data_stream_V_full_n(grp_image_filter_Filter2D_fu_56_p_dst_data_stream_V_full_n); grp_image_filter_Filter2D_fu_56->p_dst_data_stream_V_write(grp_image_filter_Filter2D_fu_56_p_dst_data_stream_V_write); grp_image_filter_Filter2D_fu_56->p_kernel_val_0_V_1_read(grp_image_filter_Filter2D_fu_56_p_kernel_val_0_V_1_read); grp_image_filter_Filter2D_fu_56->p_kernel_val_0_V_2_read(grp_image_filter_Filter2D_fu_56_p_kernel_val_0_V_2_read); grp_image_filter_Filter2D_fu_56->p_kernel_val_1_V_0_read(grp_image_filter_Filter2D_fu_56_p_kernel_val_1_V_0_read); grp_image_filter_Filter2D_fu_56->p_kernel_val_1_V_2_read(grp_image_filter_Filter2D_fu_56_p_kernel_val_1_V_2_read); grp_image_filter_Filter2D_fu_56->p_kernel_val_2_V_0_read(grp_image_filter_Filter2D_fu_56_p_kernel_val_2_V_0_read); grp_image_filter_Filter2D_fu_56->p_kernel_val_2_V_1_read(grp_image_filter_Filter2D_fu_56_p_kernel_val_2_V_1_read); SC_METHOD(thread_ap_clk_no_reset_); dont_initialize(); sensitive << ( ap_clk.pos() ); SC_METHOD(thread_ap_done); sensitive << ( ap_done_reg ); sensitive << ( grp_image_filter_Filter2D_fu_56_ap_done ); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_ap_idle); sensitive << ( ap_start ); sensitive << ( ap_sig_cseq_ST_st1_fsm_0 ); SC_METHOD(thread_ap_ready); sensitive << ( grp_image_filter_Filter2D_fu_56_ap_done ); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_ap_sig_bdd_21); sensitive << ( ap_CS_fsm ); SC_METHOD(thread_ap_sig_bdd_43); sensitive << ( ap_start ); sensitive << ( ap_done_reg ); SC_METHOD(thread_ap_sig_bdd_75); sensitive << ( ap_CS_fsm ); SC_METHOD(thread_ap_sig_cseq_ST_st1_fsm_0); sensitive << ( ap_sig_bdd_21 ); SC_METHOD(thread_ap_sig_cseq_ST_st2_fsm_1); sensitive << ( ap_sig_bdd_75 ); SC_METHOD(thread_grp_image_filter_Filter2D_fu_56_ap_start); sensitive << ( grp_image_filter_Filter2D_fu_56_ap_start_ap_start_reg ); SC_METHOD(thread_grp_image_filter_Filter2D_fu_56_p_dst_data_stream_V_full_n); sensitive << ( p_dst_data_stream_V_full_n ); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_grp_image_filter_Filter2D_fu_56_p_kernel_val_0_V_1_read); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_grp_image_filter_Filter2D_fu_56_p_kernel_val_0_V_2_read); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_grp_image_filter_Filter2D_fu_56_p_kernel_val_1_V_0_read); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_grp_image_filter_Filter2D_fu_56_p_kernel_val_1_V_2_read); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_grp_image_filter_Filter2D_fu_56_p_kernel_val_2_V_0_read); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_grp_image_filter_Filter2D_fu_56_p_kernel_val_2_V_1_read); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_grp_image_filter_Filter2D_fu_56_p_src_cols_V_read); sensitive << ( cols ); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_grp_image_filter_Filter2D_fu_56_p_src_data_stream_V_dout); sensitive << ( p_src_data_stream_V_dout ); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_grp_image_filter_Filter2D_fu_56_p_src_data_stream_V_empty_n); sensitive << ( p_src_data_stream_V_empty_n ); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_grp_image_filter_Filter2D_fu_56_p_src_rows_V_read); sensitive << ( rows ); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_p_dst_data_stream_V_din); sensitive << ( grp_image_filter_Filter2D_fu_56_p_dst_data_stream_V_din ); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_p_dst_data_stream_V_write); sensitive << ( grp_image_filter_Filter2D_fu_56_p_dst_data_stream_V_write ); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_p_src_data_stream_V_read); sensitive << ( grp_image_filter_Filter2D_fu_56_p_src_data_stream_V_read ); sensitive << ( ap_sig_cseq_ST_st2_fsm_1 ); SC_METHOD(thread_ap_NS_fsm); sensitive << ( ap_CS_fsm ); sensitive << ( ap_sig_bdd_43 ); sensitive << ( grp_image_filter_Filter2D_fu_56_ap_done ); ap_done_reg = SC_LOGIC_0; ap_CS_fsm = "01"; grp_image_filter_Filter2D_fu_56_ap_start_ap_start_reg = SC_LOGIC_0; static int apTFileNum = 0; stringstream apTFilenSS; apTFilenSS << "image_filter_Sobel_sc_trace_" << apTFileNum ++; string apTFn = apTFilenSS.str(); mVcdFile = sc_create_vcd_trace_file(apTFn.c_str()); mVcdFile->set_time_unit(1, SC_PS); if (1) { #ifdef __HLS_TRACE_LEVEL_PORT_HIER__ sc_trace(mVcdFile, ap_clk, "(port)ap_clk"); sc_trace(mVcdFile, ap_rst, "(port)ap_rst"); sc_trace(mVcdFile, ap_start, "(port)ap_start"); sc_trace(mVcdFile, ap_done, "(port)ap_done"); sc_trace(mVcdFile, ap_continue, "(port)ap_continue"); sc_trace(mVcdFile, ap_idle, "(port)ap_idle"); sc_trace(mVcdFile, ap_ready, "(port)ap_ready"); sc_trace(mVcdFile, rows, "(port)rows"); sc_trace(mVcdFile, cols, "(port)cols"); sc_trace(mVcdFile, p_src_data_stream_V_dout, "(port)p_src_data_stream_V_dout"); sc_trace(mVcdFile, p_src_data_stream_V_empty_n, "(port)p_src_data_stream_V_empty_n"); sc_trace(mVcdFile, p_src_data_stream_V_read, "(port)p_src_data_stream_V_read"); sc_trace(mVcdFile, p_dst_data_stream_V_din, "(port)p_dst_data_stream_V_din"); sc_trace(mVcdFile, p_dst_data_stream_V_full_n, "(port)p_dst_data_stream_V_full_n"); sc_trace(mVcdFile, p_dst_data_stream_V_write, "(port)p_dst_data_stream_V_write"); #endif #ifdef __HLS_TRACE_LEVEL_INT__ sc_trace(mVcdFile, ap_done_reg, "ap_done_reg"); sc_trace(mVcdFile, ap_CS_fsm, "ap_CS_fsm"); sc_trace(mVcdFile, ap_sig_cseq_ST_st1_fsm_0, "ap_sig_cseq_ST_st1_fsm_0"); sc_trace(mVcdFile, ap_sig_bdd_21, "ap_sig_bdd_21"); sc_trace(mVcdFile, ap_sig_bdd_43, "ap_sig_bdd_43"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_ap_start, "grp_image_filter_Filter2D_fu_56_ap_start"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_ap_done, "grp_image_filter_Filter2D_fu_56_ap_done"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_ap_idle, "grp_image_filter_Filter2D_fu_56_ap_idle"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_ap_ready, "grp_image_filter_Filter2D_fu_56_ap_ready"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_p_src_rows_V_read, "grp_image_filter_Filter2D_fu_56_p_src_rows_V_read"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_p_src_cols_V_read, "grp_image_filter_Filter2D_fu_56_p_src_cols_V_read"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_p_src_data_stream_V_dout, "grp_image_filter_Filter2D_fu_56_p_src_data_stream_V_dout"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_p_src_data_stream_V_empty_n, "grp_image_filter_Filter2D_fu_56_p_src_data_stream_V_empty_n"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_p_src_data_stream_V_read, "grp_image_filter_Filter2D_fu_56_p_src_data_stream_V_read"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_p_dst_data_stream_V_din, "grp_image_filter_Filter2D_fu_56_p_dst_data_stream_V_din"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_p_dst_data_stream_V_full_n, "grp_image_filter_Filter2D_fu_56_p_dst_data_stream_V_full_n"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_p_dst_data_stream_V_write, "grp_image_filter_Filter2D_fu_56_p_dst_data_stream_V_write"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_p_kernel_val_0_V_1_read, "grp_image_filter_Filter2D_fu_56_p_kernel_val_0_V_1_read"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_p_kernel_val_0_V_2_read, "grp_image_filter_Filter2D_fu_56_p_kernel_val_0_V_2_read"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_p_kernel_val_1_V_0_read, "grp_image_filter_Filter2D_fu_56_p_kernel_val_1_V_0_read"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_p_kernel_val_1_V_2_read, "grp_image_filter_Filter2D_fu_56_p_kernel_val_1_V_2_read"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_p_kernel_val_2_V_0_read, "grp_image_filter_Filter2D_fu_56_p_kernel_val_2_V_0_read"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_p_kernel_val_2_V_1_read, "grp_image_filter_Filter2D_fu_56_p_kernel_val_2_V_1_read"); sc_trace(mVcdFile, grp_image_filter_Filter2D_fu_56_ap_start_ap_start_reg, "grp_image_filter_Filter2D_fu_56_ap_start_ap_start_reg"); sc_trace(mVcdFile, ap_sig_cseq_ST_st2_fsm_1, "ap_sig_cseq_ST_st2_fsm_1"); sc_trace(mVcdFile, ap_sig_bdd_75, "ap_sig_bdd_75"); sc_trace(mVcdFile, ap_NS_fsm, "ap_NS_fsm"); #endif } }