VLAB MPC5xxx ツールボックスを使用しています。
シミュレーションを制御する実行スクリプトがあり、通常の方法でプラットフォームをロードしてから実行します。
import vlab
import os
import sysc
image_path = os.path.join('o5e',
'firmware.open5xxxecu-e6009bbcfcd1',
'bin', 'o5e_dbg.elf')
vlab.load('mpc.mpc5674f.sim', args=['--testbench=o5e_testbench',
"--image=%s" % image_path,
"--debugger-config=GHS_MULTI",
"--trace=+src:sc_report",
])
vcd_sink = vlab.trace.sink.vcd("mpc.mpc5674f.sim.vcd")
vlab.add_trace("mpc5674f.PBRIDGE.EDMA_B", sink=vcd_sink)
for i in range(32):
vlab.add_trace("mpc5674f.PBRIDGE.ETPU.CH_OUT_A[%d]" % i, sink=vlab.trace.sink.console)
vlab.run(11, "ms", blocking=True)
vlab.exit()
この実行スクリプトに、コアでトレースをオンにする引数を与えたいと思います。これは、コアでトレース属性を設定することで実行できます。そして、Python の optparse を使用してスクリプトのオプションを読み取ることができることを知っています。
私が抱えている問題は、エラボレーションの終了前に属性を設定する必要があることですが、エラボレーションの前にシミュレーションにアクセスできる唯一の場所はテストベンチです...しかし、パラメーターを渡す方法がないようです (たとえば、スクリプト引数) をテストベンチに追加します。
スクリプトからテストベンチに引数を渡して、条件付きでコア トレースをオンまたはオフにするにはどうすればよいですか?