
The simulation is run with the command:
make simulate COMMAND_FILE=cf-baseline.scr NUM_RUNS=1000
The Makefile compiles the target software using
the OpenRISC 1000 tool chain, then compiles the simulation with
iverilog and runs it with
vvp. The compilation is error free:
cd sim/run && time -p iverilog -c iv-processed.scr
real 1.75
user 1.48
sys 0.30
The output from the execution is:
$readmemh(../src/flash.in): Not enough words in the read file for requested rang
e.
(orpsoc_bench.i_orpsoc_fpga.uart_top) UART INFO: Data bus width is 32. Debug Int
erface present.
(orpsoc_bench.i_orpsoc_fpga.uart_top) UART INFO: Doesn't have baudrate output
Execution starts, 1000 runs through Dhrystone
Begin Time = 5
End Time = 116421
OR1K at 10 MHz (+PROC_6)
Microseconds for one run through Dhrystone: 116us / 1000 runs
Dhrystones per Second: 8589
117975052.00 ns: l.nop report (deaddead)
117986152.00 ns: l.nop exit (00000000)
real 839.00
user 837.40
sys 0.57
The warning from $readmemh can be ignored—the
OpenRISC 1000 utilities do not pack the program image up to the full size of
the actual memory to save file space. There are then a couple of
diagnostic messages from the UART
The remainder of the output is generated by the target OpenRISC 1000 program
executing within the model. The output is generated by use of
l.nop 4, with a report at the end
(deaddead) using l.nop 2
and termination with return code 0 using
l.nop 1.
