SWCU192 November   2021 CC1312R7 , CC1352P7 , CC2652P7 , CC2652R7

 

  1.   1
    1.     2
    2.     3
    3.     4
    4.     5
    5.     6
  2.   7
    1.     8
    2.     9
    3.     10
      1.      11
        1.       12
        2.       13
        3.       14
        4.       15
      2.      16
        1.       17
        2.       18
        3.       19
      3.      20
      4.      21
      5.      22
        1.       23
        2.       24
      6.      25
      7.      26
      8.      27
        1.       28
        2.       29
        3.       30
        4.       31
      9.      32
      10.      33
      11.      34
      12.      35
      13.      36
        1.       37
          1.        38
          2.        39
          3.        40
          4.        41
        2.       42
  3.   43
    1.     44
    2.     45
    3.     46
      1.      47
      2.      48
      3.      49
      4.      50
      5.      51
      6.      52
    4.     53
      1.      54
      2.      55
      3.      56
      4.      57
    5.     58
      1.      59
      2.      60
        1.       61
        2.       62
        3.       63
        4.       64
        5.       65
        6.       66
        7.       67
        8.       68
        9.       69
        10.       70
        11.       71
        12.       72
        13.       73
        14.       74
        15.       75
        16.       76
        17.       77
        18.       78
        19.       79
        20.       80
        21.       81
    6.     82
      1.      83
      2.      84
      3.      85
    7.     86
      1.      87
      2.      88
        1.       89
        2.       90
          1.        91
          2.        92
          3.        93
        3.       94
        4.       95
        5.       96
        6.       97
          1.        98
          2.        99
          3.        100
        7.       101
      3.      102
        1.       103
          1.        104
    8.     105
      1.      106
      2.      107
      3.      108
    9.     109
      1.      110
      2.      111
      3.      112
      4.      113
      5.      114
  4.   115
    1.     116
  5.   117
    1.     118
    2.     119
      1.      120
      2.      121
        1.       122
        2.       123
      3.      124
      4.      125
      5.      126
      6.      127
      7.      128
  6.   129
    1.     130
      1.      131
      2.      132
      3.      133
      4.      134
      5.      135
      6.      136
      7.      137
        1.       138
        2.       139
    2.     140
      1.      141
      2.      142
      3.      143
      4.      144
    3.     145
      1.      146
      2.      147
        1.       148
    4.     149
      1.      150
      2.      151
        1.       152
        2.       153
        3.       154
    5.     155
      1.      156
      2.      157
        1.       158
        2.       159
        3.       160
    6.     161
    7.     162
      1.      163
      2.      164
  7.   165
    1.     166
    2.     167
      1.      168
        1.       169
      2.      170
        1.       171
        2.       172
        3.       173
    3.     174
      1.      175
        1.       176
        2.       177
      2.      178
        1.       179
        2.       180
        3.       181
        4.       182
        5.       183
        6.       184
        7.       185
        8.       186
      3.      187
      4.      188
        1.       189
          1.        190
          2.        191
          3.        192
        2.       193
          1.        194
        3.       195
          1.        196
    4.     197
    5.     198
    6.     199
    7.     200
    8.     201
    9.     202
    10.     203
  8.   204
    1.     205
    2.     206
    3.     207
      1.      208
    4.     209
      1.      210
        1.       211
      2.      212
        1.       213
    5.     214
      1.      215
        1.       216
      2.      217
        1.       218
        2.       219
        3.       220
      3.      221
    6.     222
      1.      223
      2.      224
      3.      225
      4.      226
      5.      227
    7.     228
      1.      229
        1.       230
        2.       231
        3.       232
      2.      233
      3.      234
    8.     235
      1.      236
      2.      237
      3.      238
  9.   239
    1.     240
    2.     241
      1.      242
        1.       243
        2.       244
        3.       245
      2.      246
      3.      247
      4.      248
    3.     249
      1.      250
      2.      251
        1.       252
        2.       253
        3.       254
    4.     255
    5.     256
      1.      257
      2.      258
      3.      259
      4.      260
    6.     261
    7.     262
      1.      263
      2.      264
  10.   265
    1.     266
    2.     267
    3.     268
    4.     269
    5.     270
    6.     271
    7.     272
      1.      273
      2.      274
  11.   275
    1.     276
      1.      277
      2.      278
    2.     279
      1.      280
        1.       281
      2.      282
        1.       283
          1.        284
        2.       285
      3.      286
        1.       287
        2.       288
        3.       289
        4.       290
        5.       291
        6.       292
        7.       293
        8.       294
        9.       295
        10.       296
        11.       297
        12.       298
        13.       299
  12.   300
    1.     301
    2.     302
      1.      303
    3.     304
    4.     305
      1.      306
  13.   307
    1.     308
    2.     309
      1.      310
      2.      311
    3.     312
    4.     313
      1.      314
      2.      315
      3.      316
    5.     317
      1.      318
      2.      319
      3.      320
        1.       321
        2.       322
      4.      323
        1.       324
          1.        325
        2.       326
          1.        327
        3.       328
      5.      329
        1.       330
        2.       331
        3.       332
        4.       333
        5.       334
      6.      335
        1.       336
        2.       337
        3.       338
        4.       339
        5.       340
    6.     341
      1.      342
      2.      343
    7.     344
      1.      345
      2.      346
        1.       347
        2.       348
        3.       349
      3.      350
        1.       351
        2.       352
          1.        353
          2.        354
          3.        355
        3.       356
          1.        357
        4.       358
          1.        359
          2.        360
      4.      361
        1.       362
        2.       363
          1.        364
        3.       365
          1.        366
          2.        367
          3.        368
          4.        369
        4.       370
          1.        371
        5.       372
          1.        373
        6.       374
          1.        375
      5.      376
        1.       377
        2.       378
        3.       379
          1.        380
          2.        381
            1.         382
          3.        383
            1.         384
            2.         385
              1.          386
              2.          387
              3.          388
              4.          389
              5.          390
              6.          391
              7.          392
              8.          393
            3.         394
            4.         395
            5.         396
    8.     397
      1.      398
        1.       399
        2.       400
      2.      401
    9.     402
      1.      403
  14.   404
    1.     405
    2.     406
    3.     407
      1.      408
      2.      409
      3.      410
      4.      411
    4.     412
      1.      413
    5.     414
    6.     415
    7.     416
    8.     417
    9.     418
      1.      419
        1.       420
        2.       421
    10.     422
      1.      423
      2.      424
      3.      425
  15.   426
    1.     427
    2.     428
    3.     429
      1.      430
      2.      431
      3.      432
      4.      433
        1.       434
        2.       435
      5.      436
      6.      437
        1.       438
        2.       439
        3.       440
        4.       441
        5.       442
        6.       443
      7.      444
      8.      445
      9.      446
      10.      447
    4.     448
      1.      449
      2.      450
        1.       451
        2.       452
        3.       453
    5.     454
      1.      455
  16.   456
    1.     457
    2.     458
    3.     459
      1.      460
      2.      461
        1.       462
        2.       463
        3.       464
        4.       465
        5.       466
      3.      467
      4.      468
    4.     469
      1.      470
      2.      471
      3.      472
      4.      473
      5.      474
    5.     475
      1.      476
  17.   477
    1.     478
    2.     479
      1.      480
      2.      481
      3.      482
        1.       483
      4.      484
    3.     485
      1.      486
      2.      487
      3.      488
    4.     489
      1.      490
  18.   491
    1.     492
    2.     493
    3.     494
    4.     495
      1.      496
  19.   497
    1.     498
    2.     499
    3.     500
    4.     501
    5.     502
      1.      503
      2.      504
      3.      505
    6.     506
      1.      507
        1.       508
        2.       509
        3.       510
          1.        511
          2.        512
    7.     513
      1.      514
  20.   515
    1.     516
      1.      517
    2.     518
      1.      519
        1.       520
      2.      521
        1.       522
        2.       523
      3.      524
      4.      525
    3.     526
      1.      527
        1.       528
        2.       529
        3.       530
        4.       531
      2.      532
        1.       533
          1.        534
        2.       535
          1.        536
          2.        537
        3.       538
          1.        539
        4.       540
          1.        541
          2.        542
          3.        543
        5.       544
        6.       545
        7.       546
        8.       547
        9.       548
        10.       549
    4.     550
      1.      551
        1.       552
      2.      553
        1.       554
        2.       555
          1.        556
          2.        557
          3.        558
          4.        559
          5.        560
      3.      561
        1.       562
        2.       563
        3.       564
      4.      565
        1.       566
        2.       567
          1.        568
          2.        569
          3.        570
      5.      571
        1.       572
        2.       573
          1.        574
          2.        575
          3.        576
          4.        577
            1.         578
            2.         579
          5.        580
          6.        581
        3.       582
          1.        583
          2.        584
          3.        585
            1.         586
            2.         587
            3.         588
            4.         589
          4.        590
      6.      591
        1.       592
        2.       593
      7.      594
        1.       595
        2.       596
          1.        597
          2.        598
          3.        599
          4.        600
          5.        601
            1.         602
              1.          603
            2.         604
              1.          605
            3.         606
              1.          607
          6.        608
    5.     609
      1.      610
        1.       611
        2.       612
      2.      613
        1.       614
        2.       615
          1.        616
          2.        617
          3.        618
          4.        619
          5.        620
          6.        621
          7.        622
          8.        623
      3.      624
        1.       625
        2.       626
          1.        627
          2.        628
          3.        629
          4.        630
      4.      631
        1.       632
        2.       633
          1.        634
          2.        635
          3.        636
            1.         637
            2.         638
      5.      639
        1.       640
        2.       641
          1.        642
          2.        643
          3.        644
            1.         645
            2.         646
            3.         647
          4.        648
            1.         649
            2.         650
            3.         651
            4.         652
          5.        653
          6.        654
      6.      655
        1.       656
        2.       657
          1.        658
          2.        659
          3.        660
          4.        661
          5.        662
    6.     663
      1.      664
        1.       665
        2.       666
          1.        667
            1.         668
            2.         669
      2.      670
      3.      671
      4.      672
      5.      673
      6.      674
      7.      675
    7.     676
    8.     677
      1.      678
      2.      679
      3.      680
      4.      681
      5.      682
      6.      683
      7.      684
      8.      685
      9.      686
      10.      687
      11.      688
      12.      689
  21.   690
    1.     691
    2.     692
    3.     693
      1.      694
  22.   695
    1.     696
    2.     697
    3.     698
    4.     699
      1.      700
      2.      701
      3.      702
      4.      703
        1.       704
        2.       705
          1.        706
          2.        707
      5.      708
      6.      709
      7.      710
    5.     711
    6.     712
    7.     713
      1.      714
  23.   715
    1.     716
    2.     717
    3.     718
    4.     719
      1.      720
      2.      721
        1.       722
        2.       723
      3.      724
      4.      725
        1.       726
        2.       727
          1.        728
          2.        729
        3.       730
        4.       731
        5.       732
        6.       733
        7.       734
    5.     735
    6.     736
    7.     737
      1.      738
  24.   739
    1.     740
    2.     741
    3.     742
      1.      743
        1.       744
        2.       745
        3.       746
        4.       747
        5.       748
      2.      749
        1.       750
      3.      751
        1.       752
        2.       753
      4.      754
      5.      755
        1.       756
        2.       757
    4.     758
    5.     759
      1.      760
  25.   761
    1.     762
    2.     763
    3.     764
    4.     765
      1.      766
        1.       767
      2.      768
      3.      769
      4.      770
        1.       771
      5.      772
        1.       773
      6.      774
        1.       775
      7.      776
        1.       777
      8.      778
        1.       779
        2.       780
    5.     781
      1.      782
      2.      783
      3.      784
      4.      785
        1.       786
        2.       787
        3.       788
    6.     789
      1.      790
      2.      791
      3.      792
      4.      793
    7.     794
    8.     795
      1.      796
      2.      797
    9.     798
      1.      799
  26.   800
    1.     801
      1.      802
    2.     803
      1.      804
      2.      805
      3.      806
        1.       807
        2.       808
        3.       809
      4.      810
        1.       811
        2.       812
        3.       813
    3.     814
      1.      815
      2.      816
        1.       817
        2.       818
        3.       819
        4.       820
        5.       821
          1.        822
          2.        823
          3.        824
        6.       825
          1.        826
        7.       827
          1.        828
          2.        829
          3.        830
          4.        831
        8.       832
      3.      833
        1.       834
          1.        835
          2.        836
          3.        837
          4.        838
          5.        839
          6.        840
          7.        841
          8.        842
          9.        843
          10.        844
          11.        845
          12.        846
          13.        847
          14.        848
        2.       849
          1.        850
          2.        851
          3.        852
          4.        853
          5.        854
          6.        855
          7.        856
          8.        857
          9.        858
          10.        859
          11.        860
          12.        861
          13.        862
          14.        863
          15.        864
          16.        865
          17.        866
          18.        867
          19.        868
          20.        869
      4.      870
        1.       871
        2.       872
        3.       873
        4.       874
        5.       875
    4.     876
      1.      877
        1.       878
        2.       879
        3.       880
        4.       881
        5.       882
      2.      883
        1.       884
        2.       885
    5.     886
      1.      887
        1.       888
        2.       889
        3.       890
        4.       891
      2.      892
      3.      893
        1.       894
        2.       895
      4.      896
        1.       897
          1.        898
            1.         899
            2.         900
          2.        901
          3.        902
          4.        903
          5.        904
        2.       905
        3.       906
        4.       907
        5.       908
        6.       909
      5.      910
        1.       911
        2.       912
        3.       913
        4.       914
        5.       915
        6.       916
    6.     917
      1.      918
        1.       919
          1.        920
        2.       921
        3.       922
        4.       923
      2.      924
    7.     925
      1.      926
      2.      927
    8.     928
      1.      929
      2.      930
      3.      931
      4.      932
      5.      933
      6.      934
      7.      935
      8.      936
        1.       937
        2.       938
        3.       939
        4.       940
      9.      941
        1.       942
        2.       943
        3.       944
      10.      945
        1.       946
        2.       947
        3.       948
        4.       949
        5.       950
      11.      951
        1.       952
        2.       953
        3.       954
        4.       955
        5.       956
      12.      957
      13.      958
      14.      959
      15.      960
      16.      961
      17.      962
    9.     963
      1.      964
    10.     965
      1.      966
      2.      967
        1.       968
          1.        969
        2.       970
        3.       971
      3.      972
      4.      973
        1.       974
        2.       975
      5.      976
        1.       977
        2.       978
          1.        979
        3.       980
          1.        981
          2.        982
        4.       983
          1.        984
          2.        985
        5.       986
          1.        987
          2.        988
          3.        989
      6.      990
        1.       991
        2.       992
    11.     993
      1.      994
      2.      995
      3.      996
  27.   997
Modular Inversion Operation

The sequencer controls modular inversion operation. Table 13-29 lists the function that is an extension of basic PKCP functions with the following exceptions:

  • Vector D addresses the result and a workspace.
  • The PKA_SHIFT register field is used to return information on the operation result.
Table 13-29 Extension of Basic PKCP Functions
FunctionMathematical OperationVector AVector BVector CVector D
ModInvA–1 mod B → DNumToInvert
length = A_Len
Modulus
length = B_Len
Not usedResult and workspace

Table 13-30 lists the PKA_SHIFT result values.

Table 13-30 PKA_SHIFT Result Values
FunctionPKA Shift Register Field Value at Conclusion
ModInv0 → success; Vector D holds the result
7 → no inverse exists [GCD (A, B) ≠ 1 (that is, A and B have common factors); result undefined
31 → error; modulus even-numbered, result undefined
Other values are reserved.

Table 13-31 and Table 13-32 list the restrictions on the input and result vectors for ModInv operations.

Table 13-31 Operational Restrictions
FunctionRequirements
ModInv0 < A_Len ≤ Max_Len
0 < B_Len ≤ Max_Len
Modulus B must be odd-numbered (that is, the LSB must be 1).
Modulus B may not have a value of 1 (result is undefined, no error indicated).
The highest word of the modulus vector (indicated by B_Len) may not be 0.
Table 13-32 Overlap Restrictions of Result and Input Vectors
FunctionResult VectorRestrictions
ModInvDScratchpad area starting at D may not overlap with any other vectors.

Table 13-33 lists the required scratchpad sizes for the ModInv operation.

Table 13-33 Result and Vector Scratchpad Area Memory Allocation(1)
FunctionScratchpad Area Size (in 32-Bit Words), Result Vector is B_Len 32-Bit-Words Long
ModInv5 × [M + ε (M)], with M = Max(A_Len, B_Len)
Both starting at PKA_DPTR) ε (n) = 2 + (n MOD 2); that is, 2 (for n even-numbered) or 3 (for n odd-numbered.

The ModInv operation requires the modulus to be odd-numbered; this appears to make the operation useless with RSA key generation, where the private key exponent d is derived from a chosen public exponent e as in Equation 2:

Equation 2. d = ModInv(e, φ)

where:

  • φ = (p – 1) × ( q – 1)
  • p and q are boh prime
Note:

In Equation 2, φ is even-numbered. However, because e must be odd-numbered (or no inverse exists), d can be calculated as in Equation 3.

Equation 3. d = 1 + {φ × [e – ModInv(φ, e)]} / e

With four basic PKCP operations, ModInv can be used to find inverse values if the modulus is even.

Modular inversion can be performed with a modular exponentiation using the modulus value minus 2 as exponent, provided the modulus value is prime; this is because (under the constraint that M is prime):

  • (AM) mod M = A →
  • (AM – 1) mod M = 1 →
  • (AM – 2) mod M = A–1 (mod M)

With the large PKA engines containing an LNME, it is worthwhile to check whether this method is faster than using the ModInv operation directly. The modulus values for the ECC curves supported by this PKA engine must be prime so this method can be used in ECDSA operations.