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

📄 audiomodule - amplitude_env_.asm

📁 语音信号进行Fir滤波
💻 ASM
字号:
#include <asm_sprt.h>

/* 
	SHARC Audio Module
	
	Function Name 		:	Amplitude Envelope Detect
	 
	Setup Cycle Count 	:	3
	Routine Cycle Count	:	8
	Cleanup Cycle Count :	NA
	
	Registers Used		:	r0, r1, r2, r4, r8, i4
	
	Description
	This function tracks the envelope of the incoming signal using a peak-follower
	
*/	


#include "audiomodule_spt.h"
#include "AudioModule - Amplitude_Env.h"




.section /pm Code_Space_Name;

/* ___________________________________________________________________________ 
Amplitude Envelope Measurement 

*/  


/* if the algorithm does support SIMD, remove this warning */
#ifdef SIMD_SUPPORT
#warning ** SHARC AudioModule Warning : SIMD not supported by ROUTINE function
#endif


/* Setup */

_Setup_Amplitude_Measure_Env:
.global _Setup_Amplitude_Measure_Env;

	call Setup_Amplitude_Measure_Env (db);
	i4 = r4;
	nop;
	leaf_exit;

_Setup_Amplitude_Measure_Env.end:
	
Setup_Amplitude_Measure_Env:
.global Setup_Amplitude_Measure_Env;

	rts (db);
	r0 = r0 xor r0,	dm( Amplitude_Measure_Env_Decay, i4) = r8;	
	dm(Amplitude_Measure_Env_Amplitude,i4) = r0;
	nop;
Setup_Amplitude_Measure_Env.end:

/* Routine */

C_FUNC(Amplitude_Measure_Env):
.global C_FUNC(Amplitude_Measure_Env);
    
    call	Amplitude_Measure_Env (db);
    i4 = r4;
    r8 = dm(Amplitude_Measure_Env_Input,i4);
    leaf_exit;

C_FUNC(Amplitude_Measure_Env).end:

xC_FUNC(Amplitude_Measure_Env):
.global xC_FUNC(Amplitude_Measure_Env);

    call	Amplitude_Measure_Env (db);
    i4 = r4;
    dm(Amplitude_Measure_Env_Input,i4) = r8;
    leaf_exit;
xC_FUNC(Amplitude_Measure_Env).end:
    
Amplitude_Measure_Env:
.global Amplitude_Measure_Env;
    
    f1 = abs f8,    r2 = dm(Amplitude_Measure_Env_Amplitude,i4);
    comp(f2,f1),    r4 = dm(Amplitude_Measure_Env_Decay,i4);
    if LT r2 = r1;

    rts (db);
    f0 = f2 * f4;
    dm(Amplitude_Measure_Env_Amplitude,i4) = r0;
	
Amplitude_Measure_Env.end:	    

/* Cleanup */
/*  - none - */

/* ___________________________________________________________________________ */   


    

⌨️ 快捷键说明

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