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

📄 int_qlpc.asm

📁 TI C54写的G729代码,视线8kbps高质量语音编码,汇编优化
💻 ASM
字号:
;==========================================================================
;  File Name
;  ----------
;  INT_QLPC.ASM
;
;  Brief Description of the Code:
;  ------------------------------
;  Interpolation of the quantized LSP's
;
;  Ref
;  ------
;  LPCFUNC.C
;==========================================================================
;---------------------------------------------------------------------
; procedure Int_qlpc
;---------------------------------------------------------------------
;  void Int_qlpc(
;   Word16 lsp_old[], /* input : LSP vector of past frame              */
;   Word16 lsp_new[], /* input : LSP vector of present frame           */
;   Word16 Az[]       /* output: interpolated Az() for the 2 subframes */
;  )
;---------------------------------------------------------------------
;               C code          Asm code
;               ------          --------
;               Az[0] = 1        skip
;               Az[1]       =    Az[0]
;               Az[2]       =    Az[1]
;                 :         :      :
;               Az[10]      =    Az[9]
;                                (circular buffer size of 10)
;               Az[12]      =    Az[16]
;               Az[21]      =    Az[25]
;---------------------------------------------------------------------
;  Constants : Addr_lsp_vec_buf1 -> lsp
;
;  Pointers  : ptr_Az -> Az
;              ptr_qlsp_old -> lsp_old
;              ptr_lsp_new -> lsp_new
;---------------------------------------------------------------------
		.mmregs
        .include ..\include\const.h
        .include ..\include\ld8amem.h

        .text
        .def     Int_qlpc
        .ref     lsp_lpc

        .asg     "AR2", pLspNew
        .asg     "AR3", pLspOld
        .asg     "AR4", pLsp

        .asg     "Addr_lsp_vec_buf1", lsp
        .asg     "ptr_lsp_coef", pLsp_coef
        .asg     "ptr_Az", pAz
        .asg     "ptr_lsp_new",  pLsp_new
        .asg     "ptr_qlsp_old",  pLsp_old

Int_qlpc:
        LD      #pLsp_new, DP            ; set DP to pointers' page
        MVDM    #pLsp_new, pLspNew
        MVDM    #pLsp_old, pLspOld

        STM     #M-1, BRC
        STM     #-1, T
        RPTBD   BLK_END-1
        STM     #lsp, pLsp

                LD       *pLspNew+, TS, A
                ADD      *pLspOld+, TS, A
                STL      A, *pLsp+

BLK_END
        CALLD   lsp_lpc
        ST      #lsp, pLsp_coef

        ADDM    #16, pAz
        CALLD   lsp_lpc
        MVKD    #pLsp_new, pLsp_coef

        RET

⌨️ 快捷键说明

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