📄 cfft32br1.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 + -