SLAZ267AC October   2012  – August 2021 MSP430F5310

 

  1.   1
  2.   2
  3.   3
  4.   4
  5.   5
    1.     6
    2.     7
      1.      8
      2.      9
      3.      10
      4.      11
    3.     12
  6.   13
    1.     14
    2.     15
    3.     16
    4.     17
    5.     18
    6.     19
    7.     20
    8.     21
    9.     22
    10.     23
    11.     24
    12.     25
    13.     26
    14.     27
    15.     28
    16.     29
    17.     30
    18.     31
    19.     32
    20.     33
    21.     34
    22.     35
    23.     36
    24.     37
    25.     38
    26.     39
    27.     40
    28.     41
    29.     42
    30.     43
    31.     44
    32.     45
    33.     46
    34.     47
    35.     48
    36.     49
    37.     50
    38.     51
    39.     52
    40.     53
    41.     54
    42.     55
    43.     56
    44.     57
    45.     58
    46.     59
    47.     60
    48.     61
    49.     62
    50.     63
    51.     64
    52.     65
    53.     66
    54.     67
    55.     68
    56.     69
    57.     70
    58.     71
    59.     72
    60.     73
    61.     74
    62.     75
    63.     76
  7.   77

MPY1

MPY Module

Category

Functional

Function

Save and Restore feature on MPY32 not functional

Description

The MPY32 module uses the Save and Restore method which involves saving the multiplier state by pushing the MPY configuration/operand values to the stack before using the multiplier inside an Interrupt Service Routine (ISR) and then restoring the state by popping the configuration/operand values back to the MPY registers at the end of the ISR. However due to the erratum the Save and Restore operation fails causing the write operation to the OP2H register right after the restore operation to be ignored as it is not preceded by a write to OP2L register resulting in an invalid multiply operation.

Workaround

None. Disable interrupts when writing to OP2L and OP2H registers.

Note: When using the C-compiler, the interrupts are automatically disabled while using the MPY32