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

📄 cfft32br1.lst

📁 TMS320F2812 FFT 源码,包括详细的应用文档
💻 LST
字号:
TMS320C2000 COFF Assembler PC Version 3.06 Fri Nov 07 10:50:04 2003

Tools Copyright (c) 1996-2002 Texas Instruments Incorporated
cfft32br1.asm                                                        PAGE    1

       1              ;========================================================================
       2              ;
       3              ; File Name     : cfft_br1c.asm
       4              ; 
       5              ; Originator    : Advanced Embeeded Control 
       6              ;                 Texas Instruments 
       7              ; 
       8              ; Description   : This file contains source code to bit reverse the N-point real-data sequence
       9              ;                 stored in contiguous  memory locations 
      10              ;               
      11              ; Date          : 26/2/2002
      12              ;======================================================================
      13              ; 
      14              ; Routine Type  : C Callable
      15              ; 
      16              ; Usage :
      17              ; void FFTC_brev1(int *src, int *dst, ushort size) 
      18              ; This function bit reverses the N-point real sequence stored in contiguous memory locations
      19              ; to perform N-point Complex FFT computation. If src=dst, then it performs in-place bit reversal.
      20              ; The destination array must be aligned to 2N words
      21              ;====================================================================
      22              ; INPUT ARRAY
      23              ;         |Xr(0)|
      24              ;         |Xr(1)|
      25              ;         |Xr(2)|
      26              ;         |Xr(3)|
      27              ;            :
      28              ;            :
      29              ;======================================================================
      30              
      31                              .def _CFFT32_brev1
      32               
      33 00000000       _CFFT32_brev1:  
      34 00000000 8EA4              MOVL    XAR0,XAR4       ; XAR0->src
      35 00000001 77B5              NOP     *,ARP5
      36                          
      37 00000002 561D              CMPR    0               ; TC=1, if src==dst
      38 00000003 EF22              BF      off_place,NTC   ; If not equal, jump to off place bit rev
      39              
      40              ; IN-PLACE BIT-REVERSAL
      41 00000004 88A9              MOVZ    AR6,AL          ; AR6=size
      42 00000005 FF40              SFR     ACC,#1          ; ACC=size/2
      43 00000006 80A9              MOVZ    AR7,AL          ; AR7=size/2
      44 00000007 DF81              SUBB    XAR7,#1         ; XAR7=(size/2)-1
      45                          
      46 00000008 A8A9              MOVL    ACC,XAR4        ; ACC=src
      47                          
      48 00000009       even_data: 
      49 00000009 87C4              MOVL    XT,*XAR4        ; XT=*src
      50 0000000a A3C5              MOVL    P,*XAR5         ; P=*dst
      51 0000000b 8EA4              MOVL    XAR0,XAR4       ; XAR0=src
      52 0000000c 5618              CMPR    2               ; check src<dst
      53 0000000d EE03              BF      noswap,TC       ; if src<dst, do not swap *src & *dst
      54                          
      55 0000000e A9C4              MOVL    *XAR4,P         ; *src=*dst
TMS320C2000 COFF Assembler PC Version 3.06 Fri Nov 07 10:50:04 2003

Tools Copyright (c) 1996-2002 Texas Instruments Incorporated
cfft32br1.asm                                                        PAGE    2

      56 0000000f ABC5              MOVL    *XAR5,XT        ; *dst=*src             
      57                                         
      58 00000010       noswap:     
      59 00000010 DC04              ADDB    XAR4,#4         ; XAR4=src+2
      60 00000011 58A6              MOVZ    AR0,AR6         ; AR0=size
      61 00000012 77AE              NOP     *BR0++          ; dst=br(dst+size)
      62 00000013 000F              BANZ    even_data,AR7-- ; ARP=AR3, AR3->src+2, AR7=AR7-1
         00000014 FFF6 
      63              
      64 00000015 8AA9              MOVL    XAR4,ACC        ; XAR4=src
      65 00000016 07A0              ADDL    ACC,XAR0
      66 00000017 07A0              ADDL    ACC,XAR0        ; ACC=src+2*size
      67 00000018 83A9              MOVL    XAR5,ACC        ; XAR5=dst=src+2*size
      68 00000019 DC02              ADDB    XAR4,#2         ; XAR4=src+1
      69                          
      70 0000001a 85A6              MOV     ACC,AR6         ; ACC=size
      71 0000001b FF40              SFR     ACC,#1          ; ACC=size/2
      72 0000001c 80A9              MOVZ    AR7,AL          ; AR7=size/2
      73 0000001d DF81              SUBB    XAR7,#1         ; XAR7=(size/2)-1
      74                          
      75 0000001e       odd_data:  
      76 0000001e 87C4              MOVL    XT,*XAR4        ; XT=*(src+1)                  
      77 0000001f DC04              ADDB    XAR4,#4         ; XAR4=src+3
      78 00000020 ABC5              MOVL    *XAR5,XT        ; 
      79 00000021 77AE              NOP     *BR0++          
      80 00000022 000F              BANZ    odd_data,AR7--      
         00000023 FFFC 
      81 00000024 0006              LRETR
      82              
      83              ; OFF-PLACE BIT-REVERSAL  
      84 00000025       off_place:  
      85 00000025 80A9              MOVZ    AR7,AL          ; AR0=size
      86 00000026 DF81              SUBB    XAR7,#1         ; XAR7=size-1
      87 00000027 FF30              LSL     ACC,#1          ; ACC=2*size
      88 00000028 58A9              MOVZ    AR0,AL          ; AR0=2*size
      89                          
      90 00000029 0684  next_data2: MOVL    ACC,*XAR4++     ; XAR4=src+1, ACCL=*src
      91 0000002a 77B5              NOP     *,ARP5          ; ARP=XAR5
      92 0000002b 1EAE              MOVL    *BR0++,ACC      ; XAR5=br(dst+size)
      93 0000002c 000F              BANZ    next_data2,AR7--                 
         0000002d FFFD 
      94 0000002e 0006              LRETR
      95              

No Assembly Errors, No Assembly Warnings

⌨️ 快捷键说明

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