summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSumanto Kar2023-09-02 10:29:35 +0530
committerGitHub2023-09-02 10:29:35 +0530
commit49a41ee0c3973078aa59ac0ed8663a0a06e20900 (patch)
tree9603d48f7e895e5d4a52c23416327b61f6663327
parentdca894b5e6b017c1c805ae7e6d5c465425caff8f (diff)
downloadeSim-49a41ee0c3973078aa59ac0ed8663a0a06e20900.tar.gz
eSim-49a41ee0c3973078aa59ac0ed8663a0a06e20900.tar.bz2
eSim-49a41ee0c3973078aa59ac0ed8663a0a06e20900.zip
Adding support for the SHAKTI E-CLASS in the ModelGeneration.py
Added changes for the SHAKTI E-CLASS processor. - Changes done in the Verilator commands and flags - Added options for passing the arguments to the Verilator through the testbench
-rwxr-xr-xsrc/maker/ModelGeneration.py16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/maker/ModelGeneration.py b/src/maker/ModelGeneration.py
index 42ebd285..e6d526a4 100755
--- a/src/maker/ModelGeneration.py
+++ b/src/maker/ModelGeneration.py
@@ -717,6 +717,9 @@ and set the load for input ports */
foo_func = '''
int foo_''' + self.fname.split('.')[0] + '''(int init,int count)
{
+ int argc=1;
+ char* argv[]={"fullverbose"};
+ Verilated::commandArgs(argc, argv);
static VerilatedContext* contextp = new VerilatedContext;
static V''' + self.fname.split('.')[0] + "* " + \
self.fname.split('.')[0] + '''[1024];
@@ -849,9 +852,16 @@ and set the load for input ports */
else:
self.cmd = ''
- self.cmd = self.cmd + "verilator -Wall " + wno + " \
- --cc --exe --no-MMD --Mdir . -CFLAGS -fPIC sim_main_" + \
- self.fname.split('.')[0] + ".cpp " + self.fname
+ # self.cmd = self.cmd + "verilator -Wall " + wno + " \
+ # --cc --exe --no-MMD --Mdir . -CFLAGS -fPIC sim_main_" + \
+ # self.fname.split('.')[0] + ".cpp " + self.fname
+ self.cmd = self.cmd + "verilator --stats -O3 -CFLAGS\
+ -O3 -LDFLAGS \"-static\" --x-assign fast \
+ --x-initial fast --noassert --bbox-sys -Wall " + wno + "\
+ --cc --exe --no-MMD --Mdir . -CFLAGS\
+ -fPIC -output-split 0 sim_main_" + \
+ self.fname.split('.')[0] + ".cpp --autoflush \
+ -DBSV_RESET_FIFO_HEAD -DBSV_RESET_FIFO_ARRAY " + self.fname
self.process = QtCore.QProcess(self)
self.process.readyReadStandardOutput.connect(self.readAllStandard)
self.process.start('sh', ['-c', self.cmd])