Vengineerの戯言

人生は短いけど、長いです。人生を楽しみましょう!

OVP : オープンソースコードにアクセス(その2)

Verification Engineerの戯言

processorの中のor1k(OpenRISC 1000)のTLM 2.0ラッパーは、ここ
Apache 2.0ライセンス
icmCpuクラスを継承している
template<Uns32 NR_OF_INTERRUPTS> class or1k : public icmCpu
そして、コンストラクタは、たった、これだけ!
親クラスへのパラメータ設定と割り込みポートの設定のみ!
public:
    icmCpuInterrupt *intr[NR_OF_INTERRUPTS];

    or1k(
        sc_core::sc_module_name name,
        const unsigned int      ID,
        icmNewProcAttrs         attrs = ICM_ATTR_DEFAULT
    )
    : icmCpu(name, ID, "or1k", getModel(), "modelAttrs", getSHL(), defaultAttrs(), attrs)
    {
        if (NR_OF_INTERRUPTS > MAX_INT) {
            cerr << "Mips32: Not more than " << MAX_INT << " interrupts allowed" << endl;
        }
        connectInterrupts(intr, "intr", 0, NR_OF_INTERRUPTS-1);
    }

検証、Verification、SystemC、TLM 2.0、Virtual Platform