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

📄 dec_gain.asm

📁 基于TMS320F2812的AMR+RS编解码+OFDM调制解调源程序。是stand alone运行版本
💻 ASM
字号:
*****************************************************************************
** Description:     Dec_gain() in dec_gain.c                               **
**                                                                         **
** Inputs                                                                  **
**                                                                         **
**   al  ---Word16 index                                                   **
**   xar7---Word16 code[]                                                  **
**                                                                         **
** Outputs:                                                                **
**   ar5---Word16  gain_pit                                                **
**   ar6---Word16  gain_cod                                                **         
**                                                                         ** 
**                                                                         **
** Return value :       none                                               **
**                                                                         **
** Attribute    :       Cycles:1938     Pm: 33                             **
**                      Modified Registers:  all                           **
**                                                                         **
** Programmer   :       Qi Ying                                            **
*****************************************************************************
          .global   _Dec_gain
          .global   table_gain_lowrates      
          .ref      _dec_gc_pred
          .ref      _dec_gc_pred_update
          .ref      _pow2
          
          .ref		dec_past_qua_en
          
_Dec_gain:
          addb    sp,            #16
          mov     ah,            #0 
          lsl     al,            #2                   ;al=index
          movl    xar0,          #table_gain_lowrates 
          addl    xar0,          acc                  ;xar0=p
          movz    ar5,           *+xar0[0]            ;*gain_pit = *p++ 
          nop
          mov     al,            *+xar0[1]
          mov     *-sp[2],       al                   ;*-sp[2]=g_code
          mov     al,            *+xar0[2]
          mov     *-sp[3],       al                   ;*-sp[3]=qua_ener_MR122
          mov     al,            *+xar0[3]
          mov     *-sp[4],       al                   ;*-sp[4]=qua_ener
          movl    *-sp[6],       xar3                 ;*-sp[6]=dn_sign 
          mov     *-sp[8],       ar5                  ;*-sp[8]=gain_pit   
          LCR     _dec_gc_pred                        ;input:xar7=code[]
                                                      ;output:ah=exp
                                                      ;       al=frac  
          mov     ar0,           #10
          sub     ar0,           ah
          mov     *-sp[12],      ar0                  ;*-sp[12]=10-exp
          mov     ar2,           #14
          mov     ar3,           al                   ;input:ar2=14,ar3=frac
          LCR     _pow2                               ;output:xar1     
                                                      ;ar1=gcode0 
          mov     T,             *-sp[2]              ;g_code
          mpy     acc,    T,     ar1 
          lsl     acc,           #1                   ;L_tmp
          mov     T,             *-sp[12]             ;10-exp
          asrl    acc,           T                                    
          mov     *-sp[10],      ah                   ;*-sp[10]=gain_cod
          mov     ar6,           *-sp[3]
          mov     ar7,           *-sp[4] 
          movl	  xar5,#dec_past_qua_en
          LCR     _dec_gc_pred_update                 ;input:ar6=qua_ener_MR122
                                                      ;      ar7=qua_ener  
          movz    ar5,           *-sp[8]              ;gain_pit   
          mov     ar6,           *-sp[10]             ;gain_cod
          subb    sp,            #16
          LRETR      
           
          
          
          
          
          
          
          
          
          
          
          
          
          
          
          
          
          
          
          
          
          
          
          
          
          

⌨️ 快捷键说明

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