Hi all:
I am trying to run or1ksim's test-code-or1k test suite against
ORPSoCV2's RTL (Verilog) simulation. So far the following tests run
well, so it's looking promising: basic, cache, cbasic, except-test,
exit, flag, functest, int-test, local-global, mem-test, mycompress, mul,
tick.
I am tempted to suggest dropping DejaGnu for the reasons explained in
this article (which they all seem to apply based on my limited experience):
DejaGNU
April 19, 2011 at 7:42 am · Filed under Programming
Airs – Ian Lance Taylor
http://www.airs.com/blog/archives/499
But, for the time being, I'm trying with the existing stuff. The trouble
is, I have no experience with DejaGnu or with TCL/expect.
The Verilog simulation runs much more slowly than or1ksim, especially
when using Icarus Verilog, so the default timeout is too short. The
default timeout is set in these 2 places:
testsuite/lib/libsim.exp:129:# Timeout 3 seconds is plenty as default
testsuite/lib/or1ksim.exp:147:# Timeout 3 seconds is plenty as default
The TCL code at those places looks like this:
# Timeout 3 seconds is plenty as default
set timeout 3
I increased that value and it does not seem to have any effect. I had to
add an extra "set timeout 3000" statement inside routine run_or1ksim in
file testsuite/lib/or1ksim.exp in order to increase the timeout.
Can anybody here (hopefully with more experience with expect/TCL) tell
me why the default timeout is not being propagated properly?
By the way, I wonder whether I should set an infinite timeout. After
all, it's hard to tell how long a Verilog simulation is going to take,
especially when running overnight on some loaded server. All Verilog
simulations should end at some point in time, and if one hangs forever,
the developer will quickly realise and fix it. After all, we don't
impose a timeout when compiling the individual toolchain components in
the automated build scripts.
Thanks,
R. Diez
_______________________________________________
OpenRISC mailing list
[email protected]
http://lists.openrisc.net/listinfo/openrisc