updates submodules and build system

This commit is contained in:
2025-08-04 06:44:12 +02:00
parent 715b8349d6
commit 3dfe84edf5
16 changed files with 131 additions and 143 deletions

View File

@@ -21,7 +21,6 @@
#include <boost/program_options.hpp>
#include <fstream>
#include <iostream>
#include <sstream>
#include <tgc_vp/tb.h>
#ifdef ERROR
#undef ERROR
@@ -31,7 +30,6 @@ const std::string core_path{"tb.top.core_complex"};
using namespace sysc;
using namespace sc_core;
namespace po = boost::program_options;
namespace {
const size_t ERRORR_IN_COMMAND_LINE = 1;
@@ -76,10 +74,9 @@ int sc_main(int argc, char* argv[]) {
auto tx_trace_type =
static_cast<scc::tracer::file_type>(trace_level >> 1); // bit3-bit1 define the kind of transaction trace
auto trace_default_on = parser.is_set("trace-default-on");
cfg.set_value("$$$scc_tracer$$$.tx_trace_type", static_cast<unsigned>(scc::tracer::file_type::FTR));
cfg.set_value("$$$scc_tracer$$$.sig_trace_type", static_cast<unsigned>(scc::tracer::file_type::FST));
tracer =
scc::make_unique<scc::configurable_tracer>(file_name, tx_trace_type, enable_sig_trace, trace_default_on);
cfg.set_value("scc_tracer.tx_trace_type", static_cast<unsigned>(scc::tracer::file_type::FTR));
cfg.set_value("scc_tracer.sig_trace_type", static_cast<unsigned>(scc::tracer::file_type::FST));
tracer = scc::make_unique<scc::configurable_tracer>(file_name, tx_trace_type, enable_sig_trace);
}
///////////////////////////////////////////////////////////////////////////
// instantiate top level

View File

@@ -78,10 +78,7 @@ system::system(sc_core::sc_module_name nm)
timer0.clear_i(t0_clear_i);
timer0.tick_i(t0_tick_i);
qspi.ssclk_o(ssclk_o);
qspi.dq_o(dq_o);
qspi.dq_i(dq_i);
qspi.oe_o(dq_oe_o);
qspi.spi_i(mspi0);
SC_METHOD(gen_reset);
sensitive << erst_n;

View File

@@ -40,10 +40,7 @@ public:
sc_core::sc_in<bool> uart0_rx_i{"uart0_rx_i"};
sc_core::sc_vector<sc_core::sc_in<bool>> t0_clear_i{"t0_clear_i", vpvper::minres::timer::CLEAR_CNT};
sc_core::sc_vector<sc_core::sc_in<bool>> t0_tick_i{"t0_tick_i", vpvper::minres::timer::TICK_CNT - 1};
sc_core::sc_out<bool> ssclk_o{"ssclk_o"};
sc_core::sc_vector<sc_core::sc_out<bool>> dq_o{"dq_o", 4};
sc_core::sc_vector<sc_core::sc_out<bool>> dq_oe_o{"dq_oe_o", 4};
sc_core::sc_vector<sc_core::sc_in<bool>> dq_i{"dq_i", 4};
spi::spi_pkt_initiator_socket<> mspi0{"mspi0"};
sc_core::sc_in<sc_core::sc_time> clk_i{"clk_i"};
@@ -61,8 +58,8 @@ private:
vpvper::minres::irq_tl irq_ctrl{"irq_ctrl"};
vpvper::minres::qspi_tl qspi{"qspi"};
scc::memory<1_kB, scc::LT> boot_rom{"boot_rom"};
scc::memory<32_kB, scc::LT> main_ram{"main_ram"};
scc::memory_tl<1_kB, scc::LT> boot_rom{"boot_rom"};
scc::memory_tl<32_kB, scc::LT> main_ram{"main_ram"};
sc_core::sc_signal<bool, sc_core::SC_MANY_WRITERS> rst_s{"rst_s"}, mtime_int_s{"mtime_int_s"},
msip_int_s{"msip_int_s"};

View File

@@ -11,6 +11,7 @@ namespace tgc_vp {
SC_HAS_PROCESS(tb);
tb::tb(const sc_core::sc_module_name& nm)
: sc_core::sc_module(nm) {
top.clk_i(clk_i);
top.erst_n(rst_n);
rst_gen.rst_n(rst_n);
top.pins_o(pins_o);
@@ -20,11 +21,9 @@ tb::tb(const sc_core::sc_module_name& nm)
top.uart0_tx_o(uart0_tx_o);
top.t0_clear_i(t0_clear_i);
top.t0_tick_i(t0_tick_i);
top.ssclk_o(ssclk_o);
top.dq_o(dq_o);
top.dq_i(dq_i);
top.dq_oe_o(dq_oe_o);
top.clk_i(clk_i);
top.mspi0(spi());
spi(0)(qspi_mem.spi_t);
clk_i = 10_ns;
}
} // namespace tgc_vp

View File

@@ -12,6 +12,8 @@
#include "tgc_vp/rst_gen.h"
#include "tgc_vp/system.h"
#include <generic/spi_mem.h>
namespace tgc_vp {
class tb : public sc_core::sc_module {
@@ -19,6 +21,7 @@ public:
tb(sc_core::sc_module_name const& nm);
tgc_vp::system top{"top"};
tgc_vp::rst_gen rst_gen{"rst_gen"};
sc_core::sc_signal<sc_core::sc_time> clk_i{"clk_i"};
sc_core::sc_signal<bool> rst_n{"rst_n"};
sc_core::sc_vector<sc_core::sc_signal<bool>> pins_o{"pins_o", 32};
sc_core::sc_vector<sc_core::sc_signal<bool>> pins_oe_o{"pins_oe_o", 32};
@@ -27,11 +30,8 @@ public:
sc_core::sc_signal<bool> uart0_rx_i{"uart0_rx_i"};
sc_core::sc_vector<sc_core::sc_signal<bool>> t0_clear_i{"t0_clear_i", vpvper::minres::timer::CLEAR_CNT};
sc_core::sc_vector<sc_core::sc_signal<bool>> t0_tick_i{"t0_tick_i", vpvper::minres::timer::TICK_CNT - 1};
sc_core::sc_signal<bool> ssclk_o{"ssclk_o"};
sc_core::sc_vector<sc_core::sc_signal<bool>> dq_o{"dq_o", 4};
sc_core::sc_vector<sc_core::sc_signal<bool>> dq_oe_o{"dq_oe_o", 4};
sc_core::sc_vector<sc_core::sc_signal<bool>> dq_i{"dq_i", 4};
sc_core::sc_signal<sc_core::sc_time> clk_i{"clk_i"};
spi::spi_channel spi{"spi", 1};
vpvper::generic::spi_mem qspi_mem{"qspi_mem"};
};
} /* namespace tgc_vp */