SPRUHJ1I January 2013 – October 2021 TMS320F2802-Q1 , TMS320F28026-Q1 , TMS320F28026F , TMS320F28027-Q1 , TMS320F28027F , TMS320F28027F-Q1 , TMS320F28052-Q1 , TMS320F28052F , TMS320F28052F-Q1 , TMS320F28052M , TMS320F28052M-Q1 , TMS320F28054-Q1 , TMS320F28054F , TMS320F28054F-Q1 , TMS320F28054M , TMS320F28054M-Q1 , TMS320F2806-Q1 , TMS320F28062-Q1 , TMS320F28062F , TMS320F28062F-Q1 , TMS320F28068F , TMS320F28068M , TMS320F28069-Q1 , TMS320F28069F , TMS320F28069F-Q1 , TMS320F28069M , TMS320F28069M-Q1
Table 9-23 summarizes all of the performance data per function, when the SpinTAC library is loaded and executed from RAM. Note that each function makes calls into the ROM memory to run core SpinTAC functions. The typical cases for each component are highlighted in bold.
Function Name | CPU Cycles | Executed From | |||||
---|---|---|---|---|---|---|---|
Min | Avg | Max | ROM | RAM | FLASH | ||
STVELCTL_run (Velocity Control) | |||||||
RES = 0, ENB = 0 | 158 | 158 | 158 | ✓ | ✓ | × | |
RES = 0, ENB = 1 | 573 | 573 | 573 | ||||
First call after ENB = 1 | 1010 | 1010 | 1010 | ||||
786 | 786 | 786 | |||||
Change Inertia parameter | 786 | 786 | 786 | ||||
RES = 1, ENB = 1 | 289 | 289 | 289 | ||||
STVELMOVE_run (Velocity Move) | |||||||
RES = 0, ENB = 0 | 202 | 202 | 202 | ✓ | ✓ | × | |
stcurve | RES = 0, ENB = 1 | 675 | 704 | 1346 | |||
scurve | RES = 0, ENB = 1 | 638 | 669 | 1312 | |||
trap | RES = 0, ENB = 1 | 509 | 576 | 1039 | |||
RES = 1, ENB = 1 | 421 | 421 | 421 | ||||
STVELPLAN_run (Velocity Plan) | |||||||
RES = 1, ENB = 0 | 159 | 159 | 159 | ✓ | ✓ | × | |
RES = 0, ENB = 1 | 169 | 169 | 169 | ||||
First call after ENB = 1 | 285 | 285 | 285 | ||||
STAY FSM State | 194 | 194 | 194 | ||||
Condition FSM State Calculation must be done for each State | 374 (fixed) + 274 * Number of Transitions + 334 * Number of EXIT Actions | ||||||
Transition FSM State Calculation must be done for each State | 229 (fixed) + 378 * Number of ENTER Actions | ||||||
STVELPLAN_runTick (Velocity Plan) | 58 | 78 | 78 | ||||
STVELID_run (Velocity Identify) | |||||||
RES = 0, ENB = 0 | 142 | 142 | 142 | ✓ | ✓ | × | |
RES = 0, ENB = 1 | 332 | 341 | 658 | ||||
First call after ENB = 1 | 1063 | 1063 | 1063 | ||||
RES = 1, ENB = 1 | 249 | 249 | 249 | ||||
STPOSCONV_run (Position Converter) | |||||||
RES = 0, ENB = 0 | 110 | 110 | 110 | ✓ | ✓ | × | |
RES = 0, ENB = 1 | 322 | 341 | 343 | ||||
First call after ENB = 1 | 1060 | 1060 | 1060 | ||||
RES = 1, ENB = 1 | 118 | 118 | 118 | ||||
STPOSCTL_run (Position Control) | |||||||
RES = 0, ENB =0 | 166 | 166 | 166 | ✓ | ✓ | × | |
RES = 0, ENB = 1 | 1120 | 1125 | 1140 | ||||
First call after ENB = 1 | 1903 | 1903 | 1903 | ||||
Change Bandwidth parameter | 1611 | 1611 | 1611 | ||||
Change Inertia parameter | 1611 | 1611 | 1611 | ||||
RES = 1, ENB = 1 | 385 | 385 | 385 | ||||
STPOSMOVE_run (Position Move) | |||||||
RES = 0, ENB = 0 | 406 | 406 | 406 | ✓ | ✓ | × | |
stcurve | RES = 0, ENB = 1 | 616 | 1383 | 2733 | |||
First call after ENB = 1 | 1270 | 1377 | 2368 | ||||
scurve | RES = 0, ENB = 1 | 616 | 1333 | 2561 | |||
First call after ENB = 1 | 1219 | 1337 | 2324 | ||||
trap | RES = 0, ENB = 1 | 616 | 1253 | 2501 | |||
First call after ENB = 1 | 1319 | 1608 | 2049 | ||||
RES = 1, ENB = 1 | 877 | 877 | 877 | ||||
STPOSPLAN_run (Position Plan) | |||||||
RES = 1, ENB = 0 | 166 | 166 | 166 | ✓ | ✓ | × | |
RES = 0, ENB = 1 | 201 | 201 | 201 | ||||
First call after ENB = 1 | 325 | 325 | 325 | ||||
STAY FSM State | 209 | 209 | 209 | ||||
Condition FSM State Calculation must be done for each State | 436 (fixed) + 276 * Number of Transitions + 334 * Number of EXIT Actions | ||||||
Transition FSM State Calculation must be done for each State | 245 (fixed) + 378 * Number of ENTER Actions | ||||||
STPOSPLAN_runTick (Position Plan) | 58 | 78 | 78 |