// ============================================================== // Vivado(TM) HLS - High-Level Synthesis from C, C++ and SystemC v2019.2.1 (64-bit) // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved. // ============================================================== #ifndef __fw_binned_aob_H__ #define __fw_binned_aob_H__ #include using namespace sc_core; using namespace sc_dt; #include #include struct fw_binned_aob_ram : public sc_core::sc_module { static const unsigned DataWidth = 32; static const unsigned AddressRange = 32; static const unsigned AddressWidth = 5; //latency = 1 //input_reg = 1 //output_reg = 0 sc_core::sc_in > address0; sc_core::sc_in ce0; sc_core::sc_out > q0; sc_core::sc_in we0; sc_core::sc_in > d0; sc_core::sc_in > address1; sc_core::sc_in ce1; sc_core::sc_in we1; sc_core::sc_in > d1; sc_core::sc_in reset; sc_core::sc_in clk; sc_lv ram[AddressRange]; SC_CTOR(fw_binned_aob_ram) { SC_METHOD(prc_write_0); sensitive<(); } else { if(address0.read().is_01() && address0.read().to_uint()(); } } } void prc_write_1() { if (ce1.read() == sc_dt::Log_1) { if (we1.read() == sc_dt::Log_1) { if(address1.read().is_01() && address1.read().to_uint() > address0; sc_core::sc_in ce0; sc_core::sc_out > q0; sc_core::sc_in we0; sc_core::sc_in > d0; sc_core::sc_in > address1; sc_core::sc_in ce1; sc_core::sc_in we1; sc_core::sc_in > d1; sc_core::sc_in reset; sc_core::sc_in clk; fw_binned_aob_ram* meminst; SC_CTOR(fw_binned_aob) { meminst = new fw_binned_aob_ram("fw_binned_aob_ram"); meminst->address0(address0); meminst->ce0(ce0); meminst->q0(q0); meminst->we0(we0); meminst->d0(d0); meminst->address1(address1); meminst->ce1(ce1); meminst->we1(we1); meminst->d1(d1); meminst->reset(reset); meminst->clk(clk); } ~fw_binned_aob() { delete meminst; } };//endmodule #endif