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

📄 un_autocameracontrol.asm

📁 用于DSP下摄像机的图像抓取、图像处理和传输、以及与上位机TCP/IP通信的工程文件。基于Texas Instruments Code Composer Studio实现。
💻 ASM
📖 第 1 页 / 共 5 页
字号:
;*      .M units                     0        0     
;*      .X cross paths               0        0     
;*      .T address paths             1*       0     
;*      Long read paths              1*       0     
;*      Long write paths             0        0     
;*      Logical  ops (.LS)           0        0     (.L or .S unit)
;*      Addition ops (.LSD)          0        0     (.L or .S or .D unit)
;*      Bound(.L .S .LS)             1*       1*    
;*      Bound(.L .S .D .LS .LSD)     1*       1*    
;*
;*      Searching for software pipeline schedule at ...
;*         ii = 6  Schedule found with 1 iterations in parallel
;*
;*      Register Usage Table:
;*          +-----------------------------------------------------------------+
;*          |AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA|BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB|
;*          |00000000001111111111222222222233|00000000001111111111222222222233|
;*          |01234567890123456789012345678901|01234567890123456789012345678901|
;*          |--------------------------------+--------------------------------|
;*       0: |   ***                          |*                               |
;*       1: |   ****                         |*                               |
;*       2: |   ****                         |*                               |
;*       3: |   ****                         |*                               |
;*       4: |   ****                         |*                               |
;*       5: |   ****                         |*                               |
;*          +-----------------------------------------------------------------+
;*
;*      Done
;*
;*      Loop is interruptible
;*      Collapsed epilog stages     : 0
;*      Collapsed prolog stages     : 0
;*
;*      Minimum safe trip count     : 1
;*----------------------------------------------------------------------------*
;*        SINGLE SCHEDULED ITERATION
;*
;*        C80:
;*   0              LDBU    .D1T1   *A3++(2),A6       ; |358| 
;*       || [ B0]   BDEC    .S2     C80,B0            ; |360| 
;*   1              NOP             4
;*   5              ADDU    .L1     A6,A5:A4,A5:A4    ; |358| 
;*                  ; BRANCH OCCURS                   ; |360| 
;*----------------------------------------------------------------------------*
L8:    ; PIPED LOOP PROLOG
;** --------------------------------------------------------------------------*
L9:    ; PIPED LOOP KERNEL

   [ B0]   BDEC    .S2     L9,B0             ; |360| <0,0> 
||         LDBU    .D1T1   *A3++(2),A6       ; |358| <0,0> 

           NOP             4
           ADDU    .L1     A6,A5:A4,A5:A4    ; |358| <0,5> 
;** --------------------------------------------------------------------------*
L10:    ; PIPED LOOP EPILOG
;** --------------------------------------------------------------------------*
           MVKL    .S2     __divul,B6        ; |361| 
           MVKH    .S2     __divul,B6        ; |361| 
;** --------------------------------------------------------------------------*
L11:    
           CALL    .S2     B6                ; |361| 
           SHR     .S1     A19,31,A3         ; |361| 
           MV      .D2X    A19,B4            ; |361| 
           ADDKPC  .S2     RL1,B3,1          ; |361| 
           MV      .D2X    A3,B5             ; |361| 
RL1:       ; CALL OCCURS                     ; |361| 
           B       .S1     L47               ; |362| 

           MVK     .S1     0x1,A4            ; |369| 
||         STW     .D1T1   A4,*A14           ; |367| 
||         LDW     .D2T2   *+SP(28),B3       ; |370| 

           MV      .S1X    SP,A31            ; |370| 
           LDDW    .D1T1   *+A31(16),A13:A12 ; |370| 
           LDDW    .D2T2   *+SP(32),B11:B10  ; |370| 
           LDDW    .D1T1   *+A31(8),A11:A10  ; |370| 
           ; BRANCH OCCURS                   ; |362| 
;** --------------------------------------------------------------------------*
L12:    
   [!B1]   BNOP    .S1     L46,1             ; |340| 
           ADD     .D2     1,B5,B4           ; |342| 

           SHR     .S2     B4,1,B0           ; |342| 
||         ADD     .D1     1,A22,A9
||         ADD     .S1     A22,A22,A16
||         MV      .L1X    B0,A8

   [!B1]   MVKL    .S2     __divul,B6        ; |367| 
   [!B1]   MVKH    .S2     __divul,B6        ; |367| 
           ; BRANCH OCCURS                   ; |340| 
;** --------------------------------------------------------------------------*
           CMPGT   .L1     A22,0,A0          ; |343| 
;** --------------------------------------------------------------------------*
;**   BEGIN LOOP L13
;** --------------------------------------------------------------------------*
L13:    
   [!A0]   B       .S1     L17               ; |343| 

           MV      .D1     A8,A3             ; |342| 
|| [ A0]   MV      .S2X    A20,B4
|| [!A0]   SUB     .D2     B0,1,B0           ; |350| 

   [ A0]   MV      .D2X    A10,B8

   [ A0]   MV      .D1     A12,A4
|| [ A0]   MV      .D2X    A11,B9
|| [ A0]   ADD     .S1     A22,A3,A7

   [ A0]   MVK     .D1     0x1,A1            ; init prolog collapse predicate
|| [ A0]   MV      .L1     A13,A5
|| [ A0]   MV      .D2X    A21,B5
|| [ A0]   SHR     .S1     A9,1,A6           ; |345| 

   [ A0]   SUB     .D1     A3,2,A3
|| [ A0]   SUB     .S1     A6,1,A0
|| [ A0]   ADD     .L1     A6,A23,A23        ; |348| 
|| [ A0]   SUB     .D2X    A7,2,B16

           ; BRANCH OCCURS                   ; |343| 
;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*
;*      Loop source line                 : 343
;*      Loop opening brace source line   : 344
;*      Loop closing brace source line   : 349
;*      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                     1        2     
;*      .S units                     1        2     
;*      .D units                     2        2     
;*      .M units                     0        0     
;*      .X cross paths               0        1     
;*      .T address paths             2        2     
;*      Long read paths              1        2     
;*      Long write paths             0        0     
;*      Logical  ops (.LS)           0        0     (.L or .S unit)
;*      Addition ops (.LSD)          0        3     (.L or .S or .D unit)
;*      Bound(.L .S .LS)             1        2     
;*      Bound(.L .S .D .LS .LSD)     2        3*    
;*
;*      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
;*      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
;*
;*        C121:
;*   0              LDBU    .D1T1   *++A3(2),A6       ; |345| 
;*   1              LDBU    .D1T1   *+A3(1),A7        ; |346| 
;*       ||         LDBU    .D2T2   *++B16(2),B17     ; |346| 
;*   2              LDBU    .D2T2   *+B16(1),B19      ; |347| 
;*   3              NOP             2
;*   5              ADDU    .L1     A6,A5:A4,A5:A4    ; |345| 
;*       ||         MV      .D2     B5,B18            ; |346|  ^ 
;*       || [ A0]   BDEC    .S1     C121,A0           ; |349| 
;*   6              ADD     .D2X    B17,A7,B5         ; |346| 
;*   7              SHR     .S2     B5,1,B6           ; |346| 
;*       ||         ADDU    .L2     B19,B9:B8,B9:B8   ; |347| 
;*   8              SHR     .S2     B6,31,B7          ; |346| 
;*   9              ADDU    .L2     B4,B7:B6,B5:B4    ; |346|  ^ 
;*  10              ADD     .D2     B18,B5,B5         ; |346|  ^ 
;*                  ; BRANCH OCCURS                   ; |349| 
;*----------------------------------------------------------------------------*
L14:    ; PIPED LOOP PROLOG
;** --------------------------------------------------------------------------*
L15:    ; PIPED LOOP KERNEL

   [!A1]   ADDU    .L1     A6,A5:A4,A5:A4    ; |345| <0,5> 
||         MV      .D2     B5,B18            ; |346| <0,5>  ^ 
|| [ A0]   BDEC    .S1     L15,A0            ; |349| <0,5> 

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

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

           SHR     .S2     B6,31,B7          ; |346| <0,8> 
||         LDBU    .D2T2   *+B16(1),B19      ; |347| <1,2> 

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

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

;** --------------------------------------------------------------------------*
L16:    ; PIPED LOOP EPILOG
;** --------------------------------------------------------------------------*

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

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

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

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

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

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

           MV      .D1X    B4,A20
           MV      .D1X    B5,A21
           SUB     .D2     B0,1,B0           ; |350| 
;** --------------------------------------------------------------------------*
L17:    
   [ B0]   BNOP    .S1     L13,4             ; |350| 

           ADD     .D1     A16,A8,A8         ; |350| 
|| [ B0]   CMPGT   .L1     A22,0,A0          ; |343| 

           ; BRANCH OCCURS                   ; |350| 
;** --------------------------------------------------------------------------*
           BNOP    .S1     L46,3             ; |350| 
           MVKL    .S2     __divul,B6        ; |367| 
           MVKH    .S2     __divul,B6        ; |367| 
           ; BRANCH OCCURS                   ; |350| 
;** --------------------------------------------------------------------------*
L18:    
   [!B2]   BNOP    .S1     L46,1             ; |326| 
           ADD     .D2     1,B5,B4           ; |328| 

           SHR     .S2     B4,1,B1           ; |328| 
||         ADD     .D2X    1,A22,B9
||         ADD     .D1     A22,A22,A24
||         MV      .S1X    B0,A19

   [!B2]   MVKL    .S2     __divul,B6        ; |367| 
   [!B2]   MVKH    .S2     __divul,B6        ; |367| 
           ; BRANCH OCCURS                   ; |326| 
;** --------------------------------------------------------------------------*
           CMPGT   .L1     A22,0,A0          ; |329| 
;** --------------------------------------------------------------------------*
;**   BEGIN LOOP L19
;** --------------------------------------------------------------------------*
L19:    
   [!A0]   BNOP    .S1     L26,3             ; |329| 

           MV      .D1     A19,A17           ; |328| 
|| [ A0]   SHR     .S2     B9,1,B0           ; |331| 
|| [!A0]   SUB     .D2     B1,1,B1           ; |336| 

   [ A0]   CMPGT   .L2     B0,1,B2
           ; BRANCH OCCURS                   ; |329| 

⌨️ 快捷键说明

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