⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 un_autocameracontrol.asm

📁 用于DSP下摄像机的图像抓取、图像处理和传输、以及与上位机TCP/IP通信的工程文件。基于Texas Instruments Code Composer Studio实现。
💻 ASM
📖 第 1 页 / 共 5 页
字号:
;*      Collapsed epilog stages     : 0
;*      Collapsed prolog stages     : 1
;*      Minimum required memory pad : 0 bytes
;*
;*      For further improvement on this loop, try option -mh2
;*
;*      Minimum safe trip count     : 1
;*----------------------------------------------------------------------------*
;*        SINGLE SCHEDULED ITERATION
;*
;*        C228:
;*   0              LDBU    .D1T1   *++A3(2),A6       ; |317| 
;*   1              LDBU    .D2T2   *++B17(2),B16     ; |318| 
;*       ||         LDBU    .D1T1   *+A3(1),A7        ; |318| 
;*   2              LDBU    .D2T2   *+B17(1),B19      ; |319| 
;*   3              NOP             2
;*   5              ADDU    .L1     A6,A5:A4,A5:A4    ; |317| 
;*       ||         MV      .D2     B5,B18            ; |318|  ^ 
;*       || [ A0]   BDEC    .S1     C228,A0           ; |321| 
;*   6              ADD     .D2X    A7,B16,B5         ; |318| 
;*   7              SHR     .S2     B5,1,B6           ; |318| 
;*       ||         ADDU    .L2     B19,B9:B8,B9:B8   ; |319| 
;*   8              SHR     .S2     B6,31,B7          ; |318| 
;*   9              ADDU    .L2     B4,B7:B6,B5:B4    ; |318|  ^ 
;*  10              ADD     .D2     B18,B5,B5         ; |318|  ^ 
;*                  ; BRANCH OCCURS                   ; |321| 
;*----------------------------------------------------------------------------*
L29:    ; PIPED LOOP PROLOG
;** --------------------------------------------------------------------------*
L30:    ; PIPED LOOP KERNEL

   [!A1]   ADDU    .L1     A6,A5:A4,A5:A4    ; |317| <0,5> 
||         MV      .D2     B5,B18            ; |318| <0,5>  ^ 
|| [ A0]   BDEC    .S1     L30,A0            ; |321| <0,5> 

   [!A1]   ADD     .D2X    A7,B16,B5         ; |318| <0,6> 
||         LDBU    .D1T1   *++A3(2),A6       ; |317| <1,0> 

   [!A1]   ADDU    .L2     B19,B9:B8,B9:B8   ; |319| <0,7> 
||         SHR     .S2     B5,1,B6           ; |318| <0,7> 
||         LDBU    .D2T2   *++B17(2),B16     ; |318| <1,1> 
||         LDBU    .D1T1   *+A3(1),A7        ; |318| <1,1> 

           SHR     .S2     B6,31,B7          ; |318| <0,8> 
||         LDBU    .D2T2   *+B17(1),B19      ; |319| <1,2> 

   [!A1]   ADDU    .L2     B4,B7:B6,B5:B4    ; |318| <0,9>  ^ 

   [ A1]   SUB     .D1     A1,1,A1           ; <0,10> 
|| [!A1]   ADD     .D2     B18,B5,B5         ; |318| <0,10>  ^ 

;** --------------------------------------------------------------------------*
L31:    ; PIPED LOOP EPILOG
;** --------------------------------------------------------------------------*

           ADDU    .L1     A6,A5:A4,A5:A4    ; |317| (E) <1,5> 
||         MV      .D2     B5,B18            ; |318| (E) <1,5>  ^ 

           MV      .D1     A4,A12
||         MV      .S1     A5,A13
||         ADD     .D2X    A7,B16,B5         ; |318| (E) <1,6> 

           ADDU    .L2     B19,B9:B8,B9:B8   ; |319| (E) <1,7> 
||         SHR     .S2     B5,1,B6           ; |318| (E) <1,7> 

           SHR     .S2     B6,31,B7          ; |318| (E) <1,8> 

           MV      .D1X    B9,A11
||         ADDU    .L2     B4,B7:B6,B5:B4    ; |318| (E) <1,9>  ^ 

           MV      .D1X    B8,A10
||         ADD     .D2     B18,B5,B5         ; |318| (E) <1,10>  ^ 

           MV      .D1X    B4,A20
           MV      .D1X    B5,A21
           SUB     .D2     B1,1,B1           ; |322| 
;** --------------------------------------------------------------------------*
L32:    
   [ B1]   BNOP    .S1     L28,4             ; |322| 

           ADD     .D1     A16,A8,A8         ; |322| 
|| [ B1]   CMPGT   .L1     A22,0,A0          ; |315| 

           ; BRANCH OCCURS                   ; |322| 
;** --------------------------------------------------------------------------*
           BNOP    .S1     L46,3             ; |322| 
           MVKL    .S2     __divul,B6        ; |367| 
           MVKH    .S2     __divul,B6        ; |367| 
           ; BRANCH OCCURS                   ; |322| 
;** --------------------------------------------------------------------------*
L33:    
   [!B2]   B       .S1     L46               ; |297| 
           ADD     .D1X    1,B5,A3           ; |299| 
           ADD     .D2X    1,A22,B9

           SHR     .S2X    A3,1,B1           ; |299| 
||         ADD     .D1     A22,A22,A19
||         MV      .S1X    B0,A24

   [!B2]   MVKL    .S2     __divul,B6        ; |367| 
   [!B2]   MVKH    .S2     __divul,B6        ; |367| 
           ; BRANCH OCCURS                   ; |297| 
;** --------------------------------------------------------------------------*
           CMPGT   .L1     A22,0,A0          ; |300| 
;** --------------------------------------------------------------------------*
;**   BEGIN LOOP L34
;** --------------------------------------------------------------------------*
L34:    
   [!A0]   BNOP    .S1     L41,3             ; |300| 

           MV      .D1     A24,A17           ; |299| 
|| [ A0]   SHR     .S2     B9,1,B0           ; |302| 
|| [!A0]   SUB     .D2     B1,1,B1           ; |307| 

   [ A0]   CMPGT   .L2     B0,1,B2
           ; BRANCH OCCURS                   ; |300| 
;** --------------------------------------------------------------------------*
   [ B2]   BNOP    .S1     L36,1

           ADD     .D1X    B0,A23,A23        ; |305| 
||         ADD     .S1     A22,A17,A3

   [ B2]   LDBU    .D1T1   *+A17(1),A16      ; |302| (P) <0,0> 
   [ B2]   MV      .D2X    A3,B6

   [ B2]   LDBU    .D2T2   *+B6(1),B7        ; |303| (P) <0,1> 
|| [ B2]   LDBU    .D1T1   *A17++(2),A3      ; |303| (P) <0,1> 

           ; BRANCH OCCURS  
;** --------------------------------------------------------------------------*
;**   BEGIN LOOP L35
;** --------------------------------------------------------------------------*
L35:    
           LDBU    .D1T1   *+A17(1),A8       ; |302| 
           LDBU    .D1T1   *+A3(1),A4        ; |303| 
           LDBU    .D1T1   *A17++(2),A5      ; |303| 
           SUB     .D2     B0,1,B0           ; |306| 
           LDBU    .D1T1   *A3++(2),A7       ; |304| 
           ADDU    .L1     A8,A13:A12,A13:A12 ; |302| 
   [ B0]   B       .S1     L35               ; |306| 
           ADD     .D1     A4,A5,A4          ; |303| 
           SHR     .S1     A4,1,A4           ; |303| 
           SHR     .S1     A4,31,A5          ; |303| 

           ADDU    .L1     A20,A5:A4,A21:A20 ; |303| 
||         MV      .D1     A21,A6            ; |303| 

           ADD     .D1     A6,A21,A21        ; |303| 
||         ADDU    .L1     A7,A11:A10,A11:A10 ; |304| 

           ; BRANCH OCCURS                   ; |306| 
;** --------------------------------------------------------------------------*
           BNOP    .S1     L41,4
           SUB     .D2     B1,1,B1           ; |307| 
           ; BRANCH OCCURS  
;** --------------------------------------------------------------------------*
L36:    
           MV      .D2X    A10,B4
           MV      .D1     A12,A8

           SUB     .D2     B0,2,B0
||         MV      .D1     A13,A9
||         MV      .S2X    A11,B5
||         MV      .S1     A21,A7
||         MV      .L1     A20,A6

;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*
;*      Loop source line                 : 300
;*      Loop opening brace source line   : 301
;*      Loop closing brace source line   : 306
;*      Known Minimum Trip Count         : 1
;*      Known Max Trip Count Factor      : 1
;*      Loop Carried Dependency Bound(^) : 2
;*      Unpartitioned Resource Bound     : 3
;*      Partitioned Resource Bound(*)    : 3
;*      Resource Partition:
;*                                A-side   B-side
;*      .L units                     2        1     
;*      .S units                     2        1     
;*      .D units                     2        2     
;*      .M units                     0        0     
;*      .X cross paths               1        0     
;*      .T address paths             2        2     
;*      Long read paths              2        1     
;*      Long write paths             0        0     
;*      Logical  ops (.LS)           0        0     (.L or .S unit)
;*      Addition ops (.LSD)          3        0     (.L or .S or .D unit)
;*      Bound(.L .S .LS)             2        1     
;*      Bound(.L .S .D .LS .LSD)     3*       2     
;*
;*      Searching for software pipeline schedule at ...
;*         ii = 6  Schedule found with 2 iterations in parallel
;*
;*      Register Usage Table:
;*          +-----------------------------------------------------------------+
;*          |AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA|BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB|
;*          |00000000001111111111222222222233|00000000001111111111222222222233|
;*          |01234567890123456789012345678901|01234567890123456789012345678901|
;*          |--------------------------------+--------------------------------|
;*       0: |   *  ****      **              |*   ****                        |
;*       1: |   *  * **       **             |*   *****                       |
;*       2: |   *  * **      ***             |*   *** *                       |
;*       3: |   ** * **      ***             |*   *****                       |
;*       4: |   **** **      ***             |*   *****                       |
;*       5: |   *  ****      ***             |*   *****                       |
;*          +-----------------------------------------------------------------+
;*
;*      Done
;*
;*      Loop is interruptible
;*      Epilog not removed
;*      Collapsed epilog stages     : 0
;*
;*      Prolog not removed
;*      Collapsed prolog stages     : 0
;*
;*      Minimum required memory pad : 0 bytes
;*
;*      For further improvement on this loop, try option -mh2
;*
;*      Minimum safe trip count     : 2
;*----------------------------------------------------------------------------*
;*        SINGLE SCHEDULED ITERATION
;*
;*        C277:
;*   0              LDBU    .D1T1   *+A17(1),A16      ; |302| 
;*   1              LDBU    .D1T1   *A17++(2),A3      ; |303| 
;*       ||         LDBU    .D2T2   *+B6(1),B7        ; |303| 
;*   2              NOP             3
;*   5              ADDU    .L1     A16,A9:A8,A9:A8   ; |302| 
;*       ||         MV      .D1     A7,A18            ; |303|  ^ 
;*       ||         LDBU    .D2T2   *B6++(2),B8       ; |304| 
;*       || [ B0]   BDEC    .S2     C277,B0           ; |306| 
;*   6              ADD     .S1X    B7,A3,A3          ; |303| 
;*   7              SHR     .S1     A3,1,A4           ; |303| 
;*   8              SHR     .S1     A4,31,A5          ; |303| 
;*   9              ADDU    .L1     A6,A5:A4,A7:A6    ; |303|  ^ 
;*  10              ADD     .D1     A18,A7,A7         ; |303|  ^ 
;*       ||         ADDU    .L2     B8,B5:B4,B5:B4    ; |304| 
;*                  ; BRANCH OCCURS                   ; |306| 
;*----------------------------------------------------------------------------*
L37:    ; PIPED LOOP PROLOG
;** --------------------------------------------------------------------------*
L38:    ; PIPED LOOP KERNEL

           ADDU    .L1     A16,A9:A8,A9:A8   ; |302| <0,5> 
||         MV      .D1     A7,A18            ; |303| <0,5>  ^ 
||         LDBU    .D2T2   *B6++(2),B8       ; |304| <0,5> 
|| [ B0]   BDEC    .S2     L38,B0            ; |306| <0,5> 

           ADD     .S1X    B7,A3,A3          ; |303| <0,6> 
||         LDBU    .D1T1   *+A17(1),A16      ; |302| <1,0> 

           SHR     .S1     A3,1,A4           ; |303| <0,7> 
||         LDBU    .D2T2   *+B6(1),B7        ; |303| <1,1> 
||         LDBU    .D1T1   *A17++(2),A3      ; |303| <1,1> 

           SHR     .S1     A4,31,A5          ; |303| <0,8> 
           ADDU    .L1     A6,A5:A4,A7:A6    ; |303| <0,9>  ^ 

           ADDU    .L2     B8,B5:B4,B5:B4    ; |304| <0,10> 
||         ADD     .D1     A18,A7,A7         ; |303| <0,10>  ^ 

;** --------------------------------------------------------------------------*
L39:    ; PIPED LOOP EPILOG
;** --------------------------------------------------------------------------*

           ADDU    .L1     A16,A9:A8,A9:A8   ; |302| (E) <1,5> 
||         MV      .D1     A7,A18            ; |303| (E) <1,5>  ^ 
||         LDBU    .D2T2   *B6++(2),B8       ; |304| (E) <1,5> 

           MV      .D1     A9,A13
||         MV      .S1     A8,A12
||         ADD     .L1X    B7,A3,A3          ; |303| (E) <1,6> 

           SHR     .S1     A3,1,A4           ; |303| (E) <1,7> 
           SHR     .S1     A4,31,A5          ; |303| (E) <1,8> 
           ADDU    .L1     A6,A5:A4,A7:A6    ; |303| (E) <1,9>  ^ 

           ADD     .D1     A18,A7,A21        ; |303| 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -