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

📄 rxdemodulator.asm

📁 MIMO 2x2接收端选择全系统仿真代码
💻 ASM
📖 第 1 页 / 共 2 页
字号:
;******************************************************************************
;* TMS320C6x C/C++ Codegen                                    PC Version 4.36 *
;* Date/Time created: Wed Jun 01 13:32:08 2005                                *
;******************************************************************************

;******************************************************************************
;* GLOBAL FILE PARAMETERS                                                     *
;*                                                                            *
;*   Architecture      : TMS320C671x                                          *
;*   Optimization      : Enabled at level 3                                   *
;*   Optimizing for    : Speed                                                *
;*                       Based on options: -o3, no -ms                        *
;*   Endian            : Little                                               *
;*   Interrupt Thrshld : Disabled                                             *
;*   Memory Model      : Large                                                *
;*   Calls to RTS      : Far                                                  *
;*   Pipelining        : Enabled                                              *
;*   Speculative Load  : Disabled                                             *
;*   Memory Aliases    : Presume are aliases (pessimistic)                    *
;*   Debug Info        : COFF Debug                                           *
;*                                                                            *
;******************************************************************************

	.asg	A15, FP
	.asg	B14, DP
	.asg	B15, SP
	.global	$bss

	.file	"rxdemodulator.c"
	.global	_MFDemodStat1
_MFDemodStat1:	.usect	".far",40,4
	.sym	_MFDemodStat1,_MFDemodStat1, 8, 2, 320, $$fake0
	.global	_MFDemodStat2
_MFDemodStat2:	.usect	".far",40,4
	.sym	_MFDemodStat2,_MFDemodStat2, 8, 2, 320, $$fake0

	.sect	".const"
	.align 8
_hfilt:
	.word	0bc45d15dh		; _hfilt[0] @ 0
	.word	0bbd5fdcah		; _hfilt[1] @ 32
	.word	03a32fd1bh		; _hfilt[2] @ 64
	.word	03c1161e8h		; _hfilt[3] @ 96
	.word	03c8c5ae3h		; _hfilt[4] @ 128
	.word	03cc81471h		; _hfilt[5] @ 160
	.word	03cf334dah		; _hfilt[6] @ 192
	.word	03d02f9d7h		; _hfilt[7] @ 224
	.word	03cfa73c2h		; _hfilt[8] @ 256
	.word	03ccdb2e3h		; _hfilt[9] @ 288
	.word	03c80409ah		; _hfilt[10] @ 320
	.word	03b3513c3h		; _hfilt[11] @ 352
	.word	0bc4d58b8h		; _hfilt[12] @ 384
	.word	0bceba8c8h		; _hfilt[13] @ 416
	.word	0bd34cfd5h		; _hfilt[14] @ 448
	.word	0bd6830b5h		; _hfilt[15] @ 480
	.word	0bd83edf3h		; _hfilt[16] @ 512
	.word	0bd863efch		; _hfilt[17] @ 544
	.word	0bd7052a4h		; _hfilt[18] @ 576
	.word	0bd2fd42eh		; _hfilt[19] @ 608
	.word	0bc947fafh		; _hfilt[20] @ 640
	.word	03c7880deh		; _hfilt[21] @ 672
	.word	03d63efcbh		; _hfilt[22] @ 704
	.word	03dcf8203h		; _hfilt[23] @ 736
	.word	03e193af9h		; _hfilt[24] @ 768
	.word	03e4a6ce2h		; _hfilt[25] @ 800
	.word	03e783471h		; _hfilt[26] @ 832
	.word	03e8fc55ah		; _hfilt[27] @ 864
	.word	03e9ee213h		; _hfilt[28] @ 896
	.word	03ea86511h		; _hfilt[29] @ 928
	.word	03eaba431h		; _hfilt[30] @ 960
	.word	03ea86511h		; _hfilt[31] @ 992
	.word	03e9ee213h		; _hfilt[32] @ 1024
	.word	03e8fc55ah		; _hfilt[33] @ 1056
	.word	03e783471h		; _hfilt[34] @ 1088
	.word	03e4a6ce2h		; _hfilt[35] @ 1120
	.word	03e193af9h		; _hfilt[36] @ 1152
	.word	03dcf8203h		; _hfilt[37] @ 1184
	.word	03d63efcbh		; _hfilt[38] @ 1216
	.word	03c7880deh		; _hfilt[39] @ 1248
	.word	0bc947fafh		; _hfilt[40] @ 1280
	.word	0bd2fd42eh		; _hfilt[41] @ 1312
	.word	0bd7052a4h		; _hfilt[42] @ 1344
	.word	0bd863efch		; _hfilt[43] @ 1376
	.word	0bd83edf3h		; _hfilt[44] @ 1408
	.word	0bd6830b5h		; _hfilt[45] @ 1440
	.word	0bd34cfd5h		; _hfilt[46] @ 1472
	.word	0bceba8c8h		; _hfilt[47] @ 1504
	.word	0bc4d58b8h		; _hfilt[48] @ 1536
	.word	03b3513c3h		; _hfilt[49] @ 1568
	.word	03c80409ah		; _hfilt[50] @ 1600
	.word	03ccdb2e3h		; _hfilt[51] @ 1632
	.word	03cfa73c2h		; _hfilt[52] @ 1664
	.word	03d02f9d7h		; _hfilt[53] @ 1696
	.word	03cf334dah		; _hfilt[54] @ 1728
	.word	03cc81471h		; _hfilt[55] @ 1760
	.word	03c8c5ae3h		; _hfilt[56] @ 1792
	.word	03c1161e8h		; _hfilt[57] @ 1824
	.word	03a32fd1bh		; _hfilt[58] @ 1856
	.word	0bbd5fdcah		; _hfilt[59] @ 1888
	.word	0bc45d15dh		; _hfilt[60] @ 1920

	.sect	".text"
	.sym	_hfilt,_hfilt, 54, 3, 1952,, 61
;	c:\ti\c6000\cgtools\bin\opt6x.exe -v6710 -s -O3 C:\DOCUME~1\SBPRJ-~1\LOCALS~1\Temp\TI1796_2 C:\DOCUME~1\SBPRJ-~1\LOCALS~1\Temp\TI1796_5 -w C:/ti/myprojects/mimo/receiver/Debug 

	.sect	".text"
	.global	_matchedFilter
	.sym	_matchedFilter,_matchedFilter, 32, 2, 0
	.func	127

;******************************************************************************
;* FUNCTION NAME: _matchedFilter                                              *
;*                                                                            *
;*   Regs Modified     : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,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,B0,B1,B2,  *
;*                           B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,SP              *
;*   Local Frame Size  : 0 Args + 0 Auto + 28 Save = 28 byte                  *
;******************************************************************************

;******************************************************************************
;*                                                                            *
;* Using -g (debug) with optimization (-o3) may disable key optimizations!    *
;*                                                                            *
;******************************************************************************
_matchedFilter:
;** --------------------------------------------------------------------------*
	.line	2
	.sym	_pDemodState,4, 24, 17, 32, $$fake0
	.sym	C$1,10, 22, 4, 32
	.sym	C$2,20, 24, 4, 32, $$fake1
	.sym	C$3,0, 24, 4, 32, $$fake1
	.sym	_pDemodState,11, 24, 4, 32, $$fake0
	.sym	_pI_InBuffer,26, 22, 4, 32
	.sym	_pQ_InBuffer,12, 22, 4, 32
	.sym	_pQ_OutBuffer,28, 22, 4, 32
;** 130	-----------------------    C$3 = pDemodState->pCplxInBuff;
;** 130	-----------------------    pI_InBuffer = C$3->pIBuffer;
;** 131	-----------------------    pQ_InBuffer = C$3->pQBuffer;
;** 133	-----------------------    C$2 = pDemodState->pfCplxOutBuff;
;** 133	-----------------------    pQ_OutBuffer = C$2->pQBuffer;
;** 136	-----------------------    C$1 = &hfilt[0];
;** 136	-----------------------    DSPF_sp_fir_gen(pI_InBuffer, C$1, C$2->pIBuffer, 61, (int)pDemodState->uiRcvSigLen);
;** 138	-----------------------    memmove((void *)pI_InBuffer, pDemodState->uiRcvSigLen*4+pI_InBuffer, 240u);
;** 143	-----------------------    DSPF_sp_fir_gen(pQ_InBuffer, C$1, pQ_OutBuffer, 61, (int)pDemodState->uiRcvSigLen);
;** 145	-----------------------    memmove((void *)pQ_InBuffer, pDemodState->uiRcvSigLen*4+pQ_InBuffer, 240u);
;** 147	-----------------------    pDemodState->uiSamplesProcessed = pDemodState->uiSamplesProcessed+pDemodState->uiRcvSigLen;
;** 147	-----------------------    return;

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

           STW     .D2T2   B11,*+SP(28)
           STW     .D2T2   B10,*+SP(24)

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

           STW     .D2T1   A10,*+SP(8)
           STW     .D1T1   A12,*-A9(16)
           MV      .D1     A4,A11            ; |128| 
	.line	4
           LDW     .D1T1   *A11,A0           ; |130| 
           NOP             4
           LDW     .D1T2   *A0,B10           ; |130| 
	.line	5
           LDW     .D1T1   *+A0(4),A12       ; |131| 
	.line	7
           LDW     .D1T2   *+A11(8),B4       ; |133| 
           NOP             4
           LDW     .D2T2   *+B4(4),B12       ; |133| 
	.line	10
           MVKL    .S1     _DSPF_sp_fir_gen,A0 ; |136| 
           MVKH    .S1     _DSPF_sp_fir_gen,A0 ; |136| 

           CALL    .S2X    A0                ; |136| 
||         LDW     .D1T1   *+A11(4),A8       ; |136| 

           LDW     .D2T1   *B4,A6            ; |136| 
||         MVK     .S2     0x3d,B6           ; |136| 

           MVKL    .S2     _hfilt,B11        ; |136| 
           MVKH    .S2     _hfilt,B11        ; |136| 
           MVKL    .S2     RL0,B3            ; |136| 

           MV      .D2     B11,B4            ; |136| 
||         MV      .S1X    B10,A4            ; |136| 
||         MVKH    .S2     RL0,B3            ; |136| 

RL0:       ; CALL OCCURS                     ; |136| 
           MV      .S1X    B11,A10           ; |136| 
	.line	12
           MVKL    .S2     _memmove,B5       ; |138| 
           MVKH    .S2     _memmove,B5       ; |138| 

           CALL    .S2     B5                ; |138| 
||         LDW     .D1T2   *+A11(4),B4       ; |138| 

           MVKL    .S2     RL1,B3            ; |138| 
           MV      .L1X    B10,A4            ; |138| 
           MVKH    .S2     RL1,B3            ; |138| 
           MVK     .S1     0xf0,A6           ; |138| 
           ADDAW   .D2     B10,B4,B4         ; |138| 
RL1:       ; CALL OCCURS                     ; |138| 
	.line	17
           MVKL    .S1     _DSPF_sp_fir_gen,A0 ; |143| 
           MVKH    .S1     _DSPF_sp_fir_gen,A0 ; |143| 
           CALL    .S2X    A0                ; |143| 
           LDW     .D1T1   *+A11(4),A8       ; |143| 
           MVKL    .S2     RL2,B3            ; |143| 
           MVKH    .S2     RL2,B3            ; |143| 
           MV      .L2X    A10,B4            ; |143| 

           MV      .S1X    B12,A6            ; |143| 

⌨️ 快捷键说明

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