Integration Notes

Profiling data is provided below for evaluation. These numbers were taken using the compiler settings and version for the RELEASE build configuration of the library project and the RAM_RELEASE and FLASH_RELEASE configurations of the STA.

Cycle Time

The cycle counts shown are based on the configuration of the modules used in the STA. The counts are not necessarily the worst-case cycle count and may vary depending on the module parameters. For example, some of the memory tests have configurable memory ranges over which the test should be performed, meaning the larger the memory section, the longer the test runs.

API

PASS Cycles (RAM)

FAIL Cycles (RAM)

PASS Cycles (Flash)

FAIL Cycles (Flash)

STL_PIE_RAM_testHandler

520

429

557

462

STL_LCM_checkRegisterParity

335

335

355

355

STL_LCM_runSelfTest

1997

1997

2006

2006

STL_LCM_checkCompareError

NA

NA

265

265

STL_CPU_REG_checkCPURegisters

652

54

306

63

STL_CPU_REG_checkFPURegisters

287

123

673

133

STL_CPU_REG_checkVCRCRegisters

227

117

242

128

STL_SP_writeMonitoredRange

119

100

133

111

STL_March_testRAM (16 words)

403

403

530

530

STL_March_testRAMCopy (16 words)

501

501

666

666

STL_CAN_RAM_testRAM (144 words)

6660

6660

7552

7552

STL_CAN_RAM_testRAM (304 words) with copy

16232 16232

16327 16327

18838 18838

18939 18939

STL_MCAN_RAM_testRAM (1024 words)

83031

83032

95335

95335

STL_MCAN_RAM_testRAM (320 words) with copy

15612 15612

15612 15612

18337 18337

18337 18337

STL_CRC_checkCRC (32 words)

234

236

243

240

STL_OSC_CT_startTest & STL_OSC_CT_stopTest

145

144

158

153

STL_OSC_HR_testSFO

131975

131881

132004

132007

Memory Usage

The following shows the size in 16-bit words of the STL APIs. These values were obtained from the STA .map file.

API

Memory (16-bit words)

STL_CAN_RAM_checkErrorStatus

14

STL_CAN_RAM_injectError

39

STL_CAN_RAM_testRAM

62

STL_CPU_REG_testCPURegisters

205

STL_CPU_REG_testFPURegisters

106

STL_CPU_REG_testVCRCRegisters

76

STL_CRC_checkCRC

38

STL_CRC_calculate

56

STL_CRC_calculateLowBytes

46

STL_CRC_reset

5

STL_LCM_checkCompareError

104

STL_LCM_checkRegisterParity

109

STL_LCM_parityNMIISR

18

STL_LCM_compareErrorNMIISR

18

STL_LCM_runSelfTest

110

STL_March_checkErrorStatus

38

STL_March_injectError

16

STL_March_testRAM

35

STL_March_testRAMCopy

47

STL_MCAN_RAM_checkErrorStatus

19

STL_MCAN_RAM_injectError

40

STL_MCAN_RAM_testRAM

33

STL_OSC_CT_startTest

66

STL_OSC_CT_stopTest

30

STL_OSC_HR_testSFO

120

STL_PIE_RAM_handler

5

STL_PIE_RAM_configHandler

6

STL_PIE_RAM_injectFault

22

STL_PIE_RAM_restoreVector

10

STL_PIE_RAM_testHandler

110

STL_SP_configSP

81

STL_SP_disableWatchpoint

12

STL_SP_restoreVector

19

STL_SP_testISR

20

STL_SP_writeMonitoredRange

26

STL_Util_clearErrorFlag

6

STL_Util_getErrorFlag

4

STL_Util_setErrorFlag

5

There is also a contribution from the non-inline driverlib functions used by the library. Use of the STL_OSC_HR module results in an additional 497 words from the SFO library.