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

📄 dsk_app.asm

📁 详细的OFDM设计过程
💻 ASM
📖 第 1 页 / 共 5 页
字号:

	.sect	".text"
	.global	_b
_b:	.usect	".far",248,4
	.sym	_b,_b, 51, 2, 1984,, 124

	.sect	".cinit"
	.align	8
	.field  	IR_5,32
	.field  	_gEdmaConfigXmt+0,32
	.field  	688914434,32			; _gEdmaConfigXmt._opt @ 0
	.field  	_gBufferXmtPing,32		; _gEdmaConfigXmt._src @ 32
	.field  	4768,32			; _gEdmaConfigXmt._cnt @ 64
	.field  	0,32			; _gEdmaConfigXmt._dst @ 96
	.field  	0,32			; _gEdmaConfigXmt._idx @ 128
	.field  	0,32			; _gEdmaConfigXmt._rld @ 160
IR_5:	.set	24

	.sect	".text"
	.global	_gEdmaConfigXmt
_gEdmaConfigXmt:	.usect	".far",24,4
	.sym	_gEdmaConfigXmt,_gEdmaConfigXmt, 8, 2, 192, $$fake0

	.sect	".cinit"
	.align	8
	.field  	IR_6,32
	.field  	_gEdmaConfigRcv+0,32
	.field  	674234370,32			; _gEdmaConfigRcv._opt @ 0
	.field  	0,32			; _gEdmaConfigRcv._src @ 32
	.field  	4768,32			; _gEdmaConfigRcv._cnt @ 64
	.field  	_gBufferRcvPing,32		; _gEdmaConfigRcv._dst @ 96
	.field  	0,32			; _gEdmaConfigRcv._idx @ 128
	.field  	0,32			; _gEdmaConfigRcv._rld @ 160
IR_6:	.set	24

	.sect	".text"
	.global	_gEdmaConfigRcv
_gEdmaConfigRcv:	.usect	".far",24,4
	.sym	_gEdmaConfigRcv,_gEdmaConfigRcv, 8, 2, 192, $$fake0

	.sect	".cinit"
	.align	8
	.field  	IR_7,32
	.field  	_mcbspCfg1+0,32
	.field  	0,32			; _mcbspCfg1._spcr @ 0
	.field  	320,32			; _mcbspCfg1._rcr @ 32
	.field  	320,32			; _mcbspCfg1._xcr @ 64
	.field  	536870913,32			; _mcbspCfg1._srgr @ 96
	.field  	0,32			; _mcbspCfg1._mcr @ 128
	.field  	0,32			; _mcbspCfg1._rcer @ 160
	.field  	0,32			; _mcbspCfg1._xcer @ 192
	.field  	3,32			; _mcbspCfg1._pcr @ 224
IR_7:	.set	32

	.sect	".text"
_mcbspCfg1:	.usect	".far",32,4
	.sym	_mcbspCfg1,_mcbspCfg1, 8, 3, 256, $$fake2

	.sect	".cinit"
	.align	8
	.field  	IR_8,32
	.field  	_config+0,32
	.field  	23,32			; _config._regs[0] @ 0
	.field  	23,32			; _config._regs[1] @ 32
	.field  	505,32			; _config._regs[2] @ 64
	.field  	505,32			; _config._regs[3] @ 96
	.field  	17,32			; _config._regs[4] @ 128
	.field  	0,32			; _config._regs[5] @ 160
	.field  	0,32			; _config._regs[6] @ 192
	.field  	67,32			; _config._regs[7] @ 224
	.field  	29,32			; _config._regs[8] @ 256
	.field  	1,32			; _config._regs[9] @ 288
IR_8:	.set	40

	.sect	".text"
	.global	_config
_config:	.usect	".far",40,4
	.sym	_config,_config, 8, 2, 320, _DSK6713_AIC23_Config

	.sect	".cinit"
	.align	8
	.field  	4,32
	.field  	_pingOrPong$1+0,32
	.field  	0,32			; _pingOrPong$1 @ 0

	.sect	".text"
_pingOrPong$1:	.usect	".far",4,4
	.sym	_pingOrPong,_pingOrPong$1, 14, 3, 32

	.sect	".cinit"
	.align	8
	.field  	2,32
	.field  	_xmtdone$2+0,32
	.field  	0,16			; _xmtdone$2 @ 0

	.sect	".text"
_xmtdone$2:	.usect	".far",2,2
	.sym	_xmtdone,_xmtdone$2, 3, 3, 16

	.sect	".cinit"
	.align	8
	.field  	2,32
	.field  	_rcvdone$3+0,32
	.field  	0,16			; _rcvdone$3 @ 0

	.sect	".text"
_rcvdone$3:	.usect	".far",2,2
	.sym	_rcvdone,_rcvdone$3, 3, 3, 16

	.sect	".const"
	.align 4
_$T0$4:
	.field  	23169,16			; _$T0$4[0] @ 0
	.field  	32765,16			; _$T0$4[1] @ 16
	.field  	23169,16			; _$T0$4[2] @ 32
	.field  	0,16			; _$T0$4[3] @ 48

	.sect	".text"
	.sym	_$T0,_$T0$4, 51, 3, 64,, 4

	.sect	".const"
	.align 4
_$T1$5:
	.field  	65535,16			; _$T1$5[0] @ 0
	.field  	1,16			; _$T1$5[1] @ 16
	.field  	1,16			; _$T1$5[2] @ 32
	.field  	1,16			; _$T1$5[3] @ 48
	.field  	65535,16			; _$T1$5[4] @ 64
	.field  	65535,16			; _$T1$5[5] @ 80
	.field  	1,16			; _$T1$5[6] @ 96
	.field  	65535,16			; _$T1$5[7] @ 112

	.sect	".text"
	.sym	_$T1,_$T1$5, 51, 3, 128,, 8
;	c:\ti\c6000\cgtools\bin\opt6x.exe -i0 -v6710 -q -O3 -Z1 C:\DOCUME~1\SBPRJ-~1\LOCALS~1\Temp\TI556_2 C:\DOCUME~1\SBPRJ-~1\LOCALS~1\Temp\TI556_5 -w F:/black05/DSP/recieverSINE/Debug 

	.sect	".text"
	.global	_sync
	.sym	_sync,_sync, 36, 2, 0
	.func	878

;******************************************************************************
;* FUNCTION NAME: _sync                                                       *
;*                                                                            *
;*   Regs Modified     : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,B0,B1, *
;*                           B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,SP           *
;*   Regs Used         : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,B0,B1, *
;*                           B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,DP,SP        *
;*   Local Frame Size  : 0 Args + 0 Auto + 32 Save = 32 byte                  *
;******************************************************************************

;******************************************************************************
;*                                                                            *
;* Using -g (debug) with optimization (-o3) may disable key optimizations!    *
;*                                                                            *
;******************************************************************************
_sync:
;** --------------------------------------------------------------------------*
	.line	2
	.sym	_in,4, 22, 17, 32
	.sym	_training_seq,20, 22, 17, 32
	.sym	_training_seq,28, 22, 4, 32
	.sym	_in,13, 22, 4, 32
	.sym	_i,8, 4, 4, 32
	.sym	_index,11, 4, 4, 32
	.sym	_max,9, 6, 4, 32

           STW     .D2T2   B12,*SP--(32)     ; |879| 
||         MV      .S1X    SP,A9             ; |879| 

           STW     .D2T2   B11,*+SP(28)

           STW     .D1T1   A10,*-A9(24)
||         STW     .D2T2   B10,*+SP(24)

           STW     .D1T1   A11,*-A9(20)
||         STW     .D2T2   B3,*+SP(20)

           STW     .D2T1   A12,*+SP(4)
           STW     .D1T1   A13,*-A9(16)
           MVK     .S2     1008,B5
           ADD     .D2     B5,B4,B5

           LDW     .D2T1   *+B5(4),A12
||         MVK     .S1     8096,A0
||         MVK     .S2     8064,B6

           MV      .D1     A4,A13            ; |879| 
||         LDW     .D2T2   *B5,B11
||         ADD     .S2X    B6,A4,B10
||         ADD     .S1     A0,A4,A10
||         MV      .L2     B4,B12            ; |879| 

	.line	9

           MVK     .S2     0xa0,B2           ; |886| 
||         ZERO    .D2     B9

	.line	7

           ZERO    .D1     A9                ; |884| 
||         ZERO    .S1     A7                ; |884| 

	.line	6
           ZERO    .D1     A11               ; |883| 
	.line	9
           ZERO    .D1     A8                ; |886| 
;** --------------------------------------------------------------------------*
;**   BEGIN LOOP L1
;** --------------------------------------------------------------------------*
L1:    
	.line	12
           NOP             1

           ADD     .S1X    B9,A13,A3
||         MVC     .S2     CSR,B3
||         SUB     .D2     B12,16,B4

           AND     .S2     -2,B3,B5
||         LDW     .D1T1   *A3,A6            ; |891| (P) <0,0> 
||         LDW     .D2T2   *++B4(16),B7      ; |891| (P) <0,0> 
||         ADDK    .S1     128,A3            ; |891| (P) <0,0> 

           MVC     .S2     B5,CSR            ; interrupts off
||         LDW     .D2T2   *+B4(4),B6        ; |891| (P) <0,1> 
||         LDW     .D1T1   *-A3(96),A0       ; |891| (P) <0,1> 

;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*
;*      Loop source line                 : 889
;*      Loop opening brace source line   : 890
;*      Loop closing brace source line   : 892
;*      Loop Unroll Multiple             : 4x
;*      Known Minimum Trip Count         : 63
;*      Known Maximum Trip Count         : 63
;*      Known Max Trip Count Factor      : 63
;*      Loop Carried Dependency Bound(^) : 4
;*      Unpartitioned Resource Bound     : 4
;*      Partitioned Resource Bound(*)    : 4
;*      Resource Partition:
;*                                A-side   B-side
;*      .L units                     2        2     
;*      .S units                     1        1     
;*      .D units                     4*       4*    
;*      .M units                     2        2     
;*      .X cross paths               2        2     
;*      .T address paths             4*       4*    
;*      Long read paths              0        0     
;*      Long write paths             0        0     
;*      Logical  ops (.LS)           0        0     (.L or .S unit)
;*      Addition ops (.LSD)          1        0     (.L or .S or .D unit)
;*      Bound(.L .S .LS)             2        2     
;*      Bound(.L .S .D .LS .LSD)     3        3     
;*
;*      Searching for software pipeline schedule at ...
;*         ii = 4  Schedule found with 4 iterations in parallel
;*      Done
;*
;*      Collapsed epilog stages     : 3
;*      Prolog not entirely removed
;*      Collapsed prolog stages     : 1
;*
;*      Minimum required memory pad : 0 bytes
;*
;*      For further improvement on this loop, try option -mh384
;*
;*      Minimum safe trip count     : 2 (after unrolling)
;*----------------------------------------------------------------------------*
L2:    ; PIPED LOOP PROLOG

           LDW     .D1T1   *-A3(64),A4       ; |891| (P) <0,2> 
||         LDW     .D2T2   *+B4(8),B6        ; |891| (P) <0,2> 

           LDW     .D2T2   *+B4(12),B6       ; |891| (P) <0,3> 
||         LDW     .D1T1   *-A3(32),A5       ; |891| (P) <0,3> 

           MV      .S2X    A7,B5             ; |889| 
||         ADDK    .S1     128,A3            ; |891| (P) <1,0> 
||         LDW     .D1T1   *A3,A6            ; |891| (P) <1,0> 
||         LDW     .D2T2   *++B4(16),B6      ; |891| (P) <1,0> 

           MV      .L2X    A7,B7             ; |889| 
||         MVK     .S2     0x3f,B0           ; |889| 
||         LDW     .D2T2   *+B4(4),B8        ; |891| (P) <1,1> 
||         LDW     .D1T1   *-A3(96),A5       ; |891| (P) <1,1> 
||         MPYSP   .M1X    B7,A6,A5          ; |891| (P) <0,5> 

           MV      .L1     A7,A0             ; |889| 
||         MV      .S1X    B0,A1
||         B       .S2     L3                ; |892| (P) <0,10> 
||         LDW     .D2T2   *+B4(8),B8        ; |891| (P) <1,2> 
||         LDW     .D1T1   *-A3(64),A5       ; |891| (P) <1,2> 
||         MPYSP   .M2X    B6,A0,B6          ; |891| (P) <0,6> 

           MV      .L1     A7,A4             ; |889| 
||         MVK     .S2     0x1,B1            ; init prolog collapse predicate
||         SUB     .S1X    B0,2,A2
||         MPYSP   .M2X    B6,A4,B6          ; |891| (P) <0,7> 
||         LDW     .D1T1   *-A3(32),A5       ; |891| (P) <1,3> 
||         LDW     .D2T2   *+B4(12),B6       ; |891| (P) <1,3> 

;** --------------------------------------------------------------------------*
L3:    ; PIPED LOOP KERNEL

   [!B1]   ADDSP   .L1     A6,A0,A0          ; |891| <0,12>  ^ 
||         MPYSP   .M1X    B6,A5,A6          ; |891| <1,8> 
|| [ A2]   LDW     .D2T2   *++B4(16),B6      ; |891| <3,0> 
||         ADDK    .S1     128,A3            ; |891| <3,0> 
|| [ A2]   LDW     .D1T1   *A3,A6            ; |891| <3,0> 

   [ B1]   SUB     .S2     B1,1,B1           ; <0,13> 
|| [ A1]   SUB     .S1     A1,1,A1           ; |892| <1,9> 
|| [ B0]   ADDSP   .L1     A5,A4,A4          ; |891| <1,9>  ^ 
||         MPYSP   .M1X    B6,A6,A5          ; |891| <2,5> 
|| [ A2]   LDW     .D2T2   *+B4(4),B8        ; |891| <3,1> 
|| [ A2]   LDW     .D1T1   *-A3(96),A5       ; |891| <3,1> 

   [ B0]   ADDSP   .L2     B6,B7,B7          ; |891| <1,10>  ^ 
|| [ A1]   B       .S2     L3                ; |892| <1,10> 
||         MPYSP   .M2X    B8,A5,B6          ; |891| <2,6> 
|| [ A2]   LDW     .D2T2   *+B4(8),B8        ; |891| <3,2> 
|| [ A2]   LDW     .D1T1   *-A3(64),A5       ; |891| <3,2> 

   [ B0]   SUB     .S2     B0,1,B0           ; <0,15> 
|| [ A2]   SUB     .S1     A2,1,A2           ; <0,15> 
|| [ B0]   ADDSP   .L2     B6,B5,B5          ; |891| <1,11>  ^ 
||         MPYSP   .M2X    B8,A5,B6          ; |891| <2,7> 
|| [ A2]   LDW     .D2T2   *+B4(12),B6       ; |891| <3,3> 
|| [ A2]   LDW     .D1T1   *-A3(32),A5       ; |891| <3,3> 

;** --------------------------------------------------------------------------*
L4:    ; PIPED LOOP EPILOG

⌨️ 快捷键说明

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