SPNA233B May   2016  – February 2020 RM41L232 , RM41L232 , RM42L432 , RM42L432 , RM44L520 , RM44L520 , RM44L920 , RM44L920 , RM46L430 , RM46L430 , RM46L440 , RM46L440 , RM46L450 , RM46L450 , RM46L830 , RM46L830 , RM46L840 , RM46L840 , RM46L850 , RM46L850 , RM46L852 , RM46L852 , RM48L530 , RM48L530 , RM48L540 , RM48L540 , RM48L730 , RM48L730 , RM48L740 , RM48L740 , RM48L940 , RM48L940 , RM48L950 , RM48L950 , RM48L952 , RM48L952 , RM57L843 , RM57L843 , TMS570LC4357 , TMS570LC4357 , TMS570LC4357-EP , TMS570LC4357-EP , TMS570LC4357-SEP , TMS570LC4357-SEP , TMS570LS0232 , TMS570LS0232 , TMS570LS0332 , TMS570LS0332 , TMS570LS0432 , TMS570LS0432 , TMS570LS0714 , TMS570LS0714 , TMS570LS0714-S , TMS570LS0714-S , TMS570LS0914 , TMS570LS0914 , TMS570LS1114 , TMS570LS1114 , TMS570LS1115 , TMS570LS1115 , TMS570LS1224 , TMS570LS1224 , TMS570LS1225 , TMS570LS1225 , TMS570LS1227 , TMS570LS1227 , TMS570LS2124 , TMS570LS2124 , TMS570LS2125 , TMS570LS2125 , TMS570LS2134 , TMS570LS2134 , TMS570LS2135 , TMS570LS2135 , TMS570LS3134 , TMS570LS3134 , TMS570LS3135 , TMS570LS3135 , TMS570LS3137 , TMS570LS3137

 

  1.   Hercules PLL Advisory SSWF021#45 Workaround
    1.     Trademarks
    2. 1 Background
    3. 2 Implementation
      1. 2.1 Which Function to Use
        1. 2.1.1 _errata_SSWF021_45_pll1()
        2. 2.1.2 _errata_SSWF021_45_pll2()
        3. 2.1.3 _errata_SSWF021_45_both_plls()
      2. 2.2 Where to Place the Function Call
      3. 2.3 Parameters and Return Value
        1. 2.3.1 Input Parameter
        2. 2.3.2 Return Value
      4. 2.4 Execution Time
    4. 3 Detailed Description
  2.   Revision History

Execution Time

The execution time is a function of the crystal frequency and the number of iterations required for the PLL to lock. The maximum execution time is then a function of the maximum iterations allowed, which is the only parameter passed to the function. The _errata_SSWF021_45_both_plls() function minimizes execution time by locking both PLLs simultaneously. Example execution times for the single PLL _errata_SSWF021_45_pll1() and _errata_SSWF021_45_pll2() functions are shown in Table 1. Example execution times for the dual PLL _errata_SSWF021_45_both_plls() function is shown in Table 2.

Table 1. Single PLL Maximum Execution Time

Maximum Tries 5 MHz Crystal 8 MHz Crystal 16 MHz Crystal 20 MHz Crystal
1 505 µs 316 µs 158 µs 126 µs
2 1010 µs 632 µs 316 µs 253 µs
3 1515 µs 948 µs 474 µs 379 µs
4 2020 µs 1264 µs 632 µs 505 µs
5 2525 µs 1580 µs 790 µs 632 µs

Table 2. Dual PLL Maximum Execution Time

Maximum Tries 5 MHz Crystal 8 MHz Crystal 16 MHz Crystal 20 MHz Crystal
1 596 µs 372 µs 186 µs 149 µs
2 1191 µs 744 µs 372 µs 298 µs
3 1786 µs 1116 µs 558 µs 447 µs
4 2381 µs 1488 µs 744 µs 596 µs
5 2976 µs 1860 µs 930 µs 744 µs