CoreMark on Stellaris LM3S8962 fails to verify its data set

Thread Starter

skvrnity

Joined Apr 19, 2012
1
Development environment:

  • Goal: Implement the CoreMark benchmark.
  • MCU: Stellaris LM3S8962
  • Board: EKK-LM3S8962 evaluation kit.
  • Software: Keil µVision 4.03 running the RealView MDK-ARM 4.10 toolchain with ARMCC, ARMASM, ARMLink, ARMAR and FromElf all on version 4.0.0.728 Evaluation.
  • Firmware libraries: Stellaris Peripheral Driver Library and the EK-LM3S8962 Firmware Development Package.
  • System components in use: UART (through uartstdio), general purpose timer.
  • Crystal frequency: 8 MHz

Changes done to the modifiable files:

  • HAS_FLOAT to 1 for prettier result visualization
  • HAS_TIME_H and USE_CLOCK to 0 because I am using the timer to track execution time
  • HAS_STDIO and HAS_PRINTF to 0 in order to use a bundled printf() that only requires a method that outputs a character to the UART
  • SEED_METHOD SEED_VOLATILE in order to use hard-coded seed values.
  • MEM_METHOD MEM_STATIC to avoid using the execution stack and because there is no OS that provides a malloc() function.
  • PROFILE_RUN 1 in order to start off with a test run.

Problem: CoreMark fails to correctly verify its test data. Running it on Keil's MCU simulator as well as physically on the board yields the same result: a message that says "Cannot validate operation for these seed values, please compare with results on a known platform.".

Constraints: Except for two platform-specific files, modifying the CoreMark program files themselves is verboten.

Any help or pointer to a solution would be greatly welcome.
 
Top