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

📄 pcm.asm

📁 文件为美军4800bps语音压缩编码标准在TI的DSP芯片TMS320C5X上的实时实现源代码。
💻 ASM
字号:

	;used for A law pcm convert
	.bss    PCM,1
	.bss    SEGNUM,1
	.bss    QVALUE,1
	.bss 	SRK,1
	.bss 	SLK,1
;===========================================

	;srk pcm
	;SRK->PCM
LINEARTOPCM

	LACC    SRK             ;srk is a 14bits linear value
	ABS

	SPLK    #0h,PCM
	AND     #0FFE0h
	NOP
	XC      2,NEQ
	SPLK    #10h,PCM
	AND     #0FFC0h
	NOP
	XC      2,NEQ
	SPLK    #20h,PCM
	AND     #0FF80h
	NOP
	XC      2,NEQ
	SPLK    #30h,PCM
	AND     #0FF00h
	NOP
	XC      2,NEQ
	SPLK    #40h,PCM
	AND     #0FE00h
	NOP
	XC      2,NEQ
	SPLK    #50h,PCM
	AND     #0FC00h
	NOP
	XC      2,NEQ
	SPLK    #60h,PCM
	AND     #0F800h
	NOP
	XC      2,NEQ
	SPLK    #70h,PCM

	LACC    SRK
	NOP
	XC      2,GEQ
	OPL     #80h,PCM

	LACC    PCM
	BSAR    4
	AND     #7
	NOP
	XC      2,EQ
	LACC    #1
	SAMM    TREG1
	LACC    SRK
	ABS
	SATL
	AND     #15
	OR      PCM
	XOR     #55h
	SACL    PCM             ;pcm stores PCM value
	RET

	;segnum   qvalue
	;PCM->SLK
PCMTOLINEAR
	SPM     0

	XPL     #55h,PCM
	LACC    PCM
	BSAR    4
	AND     #7
	SACL    SEGNUM
	ADD     #4
	SAMM    TREG1
	SPLK    #1,SLK
	LACT    SLK
	SACL    SLK
	SUB     #16
	NOP
	XC      2,EQ
	SPLK    #0,SLK

	LACC    SEGNUM
	SAMM    TREG1
	SPLK    #1,QVALUE
	LACT    QVALUE
	SFR
	SACL    QVALUE
	NOP
	XC      2,EQ
	SPLK    #1,QVALUE

	LACC    PCM
	AND     #0Fh
	SFL
	ADD     #1
	SAMM    TREG0
	MPYU    QVALUE
	LACC    SLK
	APAC
	SACL    SLK

	LACC    PCM
	AND     #80h
	BCND    LINE_PCM_1,NEQ
	LACC    SLK
	NEG
	SACL    SLK          ;slk is 14bits linear value
LINE_PCM_1
	RET

⌨️ 快捷键说明

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