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

📄 config_pscon.h

📁 三星ic 9980的源代码. 718版.
💻 H
字号:
/******************************************************************************
* Copyright (c) 2004 VOISO Semiconductor co.,Ltd. All Rights Reserved.
*
* VOISO Semiconductor has intellectual property rights on the PITCH &
* SPEED CONTROL algorithm.
*
* DESCRIPTION
*
* @module  : ASM-Header for Pitch & Speed Control
* @author1 : Jae-Hoe Yang (+82-51-510-2173, jhyang@voiso.com)
* @author2
* @version : 2.1
* @log
*   - 2004.04.02 : insert compile options & implement high quality (ver 2.1)
*   - 2004.03.20 : code size down & mips up<quality up(a little)> (ver 2.0)
*   - 2004.02.10 : add 'PSconFunc' function (ver 1.2)
*   - 2004.02.04 : revision (ver 1.1)
*   - 2003.10.11 : complete (ver 1.0)
*   - 2003.09.20 : start code generation
* @mips (ref. Fs=44.1kHz, STEREO, about 288000-samples Tested) : data dependent
*  --> For more details, refer to "code_summary.txt" file.
*      (High-Quality option & Worst Case Condition)
*  <1> Pitch Control
*      --> about  MP3-14.5 / MPG-16.1 / WMA-13.8  MIPS
*  <2> Speed Control : final mips = result(mips)/rate(fast or slow)
*      --> about  MP3-24.1 / MPG-27.6 / WMA-22.5  MIPS
*  <3> Pitch & Speed Control : final mips = result(mips)/rate(fast or slow)
*      --> about  MP3-37.3 / MPG-42.2 / WMA-34.8  MIPS
******************************************************************************/


OUT_2CH:			.equ		0
OUT_6CH:			.equ		1
OUT_8CH:			.equ		2
OUTPUT_MODE:		.equ		OUT_2CH		// Select 2Ch/6Ch/8Ch


StartAddress_Xmem_Mac		equ		0x2600//0x264C//0x0000
StartAddress_Xmem_Calm		equ		(0x200000 + StartAddress_Xmem_Mac*2)


StartAddress_Ymem_Mac		equ		0xA400//0xA800//0x8000//Lumin20051020==>memory


//---------------------------------------------------------//
// Options for Compile
//---------------------------------------------------------//
PS_BOTH            EQU          1
P_ONLY             EQU          2
S_ONLY             EQU          3

OS_MODE            EQU          P_ONLY

QUALITY_HI        EQU          1

MONO_MODE	     EQU		1
//---------------------------------------------------------//
// Define Condition Code
//---------------------------------------------------------//
FEQB              EQU          0
FNEB              EQU          1
FLTB              EQU          2
FGEB              EQU          3
FCRB              EQU          4
FNCB              EQU          5
FVAB              EQU          6
FNVB              EQU          7
FGTB              EQU          8
FLEB              EQU          9
FM0B              EQU          10
FM1B              EQU          11
FVSB              EQU          12
FMVB              EQU          14
FTTB              EQU          15

//---------------------------------------------------------//
// Channel Index
//---------------------------------------------------------//
MONO              EQU          0
STEREO            EQU          1

//---------------------------------------------------------//
// Sampling Frequency Index
//---------------------------------------------------------//
Fs_48             EQU          3
Fs_44             EQU          4
Fs_32             EQU          5
Fs_24             EQU          6
Fs_22             EQU          7
Fs_16             EQU          8
Fs_12             EQU          9
Fs_11             EQU          10
Fs_08             EQU          11

//---------------------------------------------------------//
// Frame Size Index
//---------------------------------------------------------//
FN_256            EQU          0
FN_288            EQU          1
FN_384            EQU          2
FN_512            EQU          3
FN_576            EQU          4
FN_768            EQU          5
FN_1024           EQU          6
FN_1152           EQU          7
FN_1536           EQU          8


//---------------------------------------------------------//
// PSCON_Param_t Structure => Karaoke_Param_t include this
//---------------------------------------------------------//
PSC_Pidx            EQU     0 // 1B
PSC_Sidx            EQU     1 // 1B
PSC_Chidx           EQU     2 // 1B
PSC_Fsidx           EQU     3 // 1B
PSC_FrameNo         EQU     4 // 2B
PSC_Samples			EQU     6 // 2B	

//---------------------------------------------------------//
// PostCodecShared_t Structure
//---------------------------------------------------------//

CodecStartFlag        EQU      0  // 2B
pParameter            EQU      2  // 4B
NumberOfSample        EQU      6  // 2B
PCMResolution         EQU      8  // 1B
DecodeErrFlag         EQU      9  // 1B
SamplingRate          EQU      10 // 4B
InputBufferOffset     EQU      14 // 4B
OutputBufferOffset    EQU      18 // 4B
AudioMode             EQU      22 // 1B
;--------------------------------------
PStmp                 EQU      23 // 1B
PSconIbufferPointer   EQU      24 // 4B
PSconIbufferRPointer  EQU      28 // 4B
PSconIbufferEnd       EQU      32 // 4B
OutputBufferPointer   EQU      36 // 4B
OutputBufferWPointer  EQU      40 // 4B
OutputBufferEnd       EQU      44 // 4B
TransBufferPointer    EQU      48 // 4B
TransBufferWPointer   EQU      52 // 4B
TransBufferEnd        EQU      56 // 4B



//---------------------------------------------------------//
//---------------------------------------------------------//

MAX_32            EQU          0x7fffffff
MIN_32            EQU          0x80000000
MAX_16            EQU          0x7fff
MIN_16            EQU          0x8000


//---------------------------------------------------------//

FALSE             EQU          0
TRUE              EQU          1
UP_THRESHOLD      EQU          410
DN_THRESHOLD      EQU          160
SAMPLE_TH         EQU          200
REF_VALUE         EQU          0x2000              /* 8192 */
FAST              EQU          0
SLOW              EQU          1
MAX_VALUE         EQU          0x100

FRAME_MP3_LO      EQU          288
FRAME_MPG_LO      EQU          384
FRAME_WMA_LO      EQU          256
FRAME_MP3_HI      EQU          576
FRAME_MPG_HI      EQU          768
FRAME_WMA_HI      EQU          512


// For Local Variables
//RPD1.adr2 <--> RPi
b00_0             EQU          0
b00_1             EQU          0
b00_2             EQU          0
b00_3             EQU          0
b01_0             EQU          1
b01_1             EQU          1
b01_2             EQU          1
b01_3             EQU          1
b10_0             EQU          2
b10_1             EQU          2
b10_2             EQU          2
b10_3             EQU          2
b11_0             EQU          3
b11_1             EQU          3
b11_2             EQU          3
b11_3             EQU          3
b00_8             EQU          0
b00_11            EQU          0
b00_12            EQU          0
b00_15            EQU          0

//RPD1--PSCtBuff1
//-->reserved : 0-3/8,11,12,15/16-19/
Pfrac             EQU          4
Sinit             EQU          5
Mode              EQU          6
Rmax              EQU          7
LoopCnt           EQU          9
InitCnt           EQU          10
onesamp           EQU          13
Pvalue            EQU          14
Svalue            EQU          20
SpeedTab1         EQU          21
Bunja             EQU          22
BufSel            EQU          23
Ksyn              EQU          24
ExpBm1            EQU          25
ExpBm2            EQU          26 
SynF2             EQU          29
AccLen            EQU          30
PSboth            EQU          31

;-----------------
//RPD0--PSCtBuff0
//-->reserved : 0-3/16-19
OneFrame          EQU          4
TwoFrame          EQU          5
TriFrame          EQU          6
SynF1             EQU          7
SynBfo            EQU          8
SynLen            EQU          9
OverlapLen        EQU          10
BndIdx            EQU          11
Kmin              EQU          12
Kmax              EQU          13
Kpnt              EQU          14
Kbfo              EQU          15
;-----------------
Engy0             EQU          20
Engy1             EQU          21
Engy2             EQU          22
Kbgn              EQU          23 //~25
Kend              EQU          26 //~28
Kreg              EQU          29 //~31

;-----------------

PitchTab_SIZE           EQU     50
SpeedTab_SIZE           EQU     50+22



.if 1
ADM_BASE		equ		0x2c0000

rCONFIG0		equ		0x0

rXBASE_H		equ		0x36
rXBASE_L		equ		0x38

rYBASE_H		equ		0x3a
rYBASE_L		equ		0x3c

rS0BASE_H		equ		0x3e
rS0BASE_L		equ		0x40

rS1BASE_H		equ		0x42
rS1BASE_L		equ		0x44

rCACHECON		equ		0x48
rCACHESTAT		equ		0x4e

rSBFCON			equ		0x4a
rSFSTAT			equ		0x50

rSB0OFF_H		equ		0x52
rSB0OFF_L		equ		0x54

rSB1OFF_H		equ		0x56
rSB1OFF_L		equ		0x58

rSB0BEGIN_H		equ		0x5a
rSB0BEGIN_L		equ		0x5c
rSB0END_H		equ		0x62
rSB0END_L		equ		0x64

rSB1BEGIN_H		equ		0x5e
rSB1BEGIN_L		equ		0x60
rSB1END_H		equ		0x66
rSB1END_L		equ		0x68

//////////////////////////////////
CONFIG0			equ		ADM_BASE+0x0
XBASE_H			equ		ADM_BASE+0x36
XBASE_L			equ		ADM_BASE+0x38

YBASE_H			equ		ADM_BASE+0x3a
YBASE_L			equ		ADM_BASE+0x3c

S0BASE_H		equ		ADM_BASE+0x3e
S0BASE_L		equ		ADM_BASE+0x40

S1BASE_H		equ		ADM_BASE+0x42
S1BASE_L		equ		ADM_BASE+0x44

CACHECON		equ		ADM_BASE+0x48
CACHESTAT		equ		ADM_BASE+0x4e

SBFCON			equ		ADM_BASE+0x4a
SFSTAT			equ		ADM_BASE+0x50

SB0OFF_H		equ		ADM_BASE+0x52
SB0OFF_L		equ		ADM_BASE+0x54

SB1OFF_H		equ		ADM_BASE+0x56
SB1OFF_L		equ		ADM_BASE+0x58

SB0BEGIN_H		equ		ADM_BASE+0x5a
SB0BEGIN_L		equ		ADM_BASE+0x5c
SB0END_H		equ		ADM_BASE+0x62
SB0END_L		equ		ADM_BASE+0x64

SB1BEGIN_H		equ		ADM_BASE+0x5e
SB1BEGIN_L		equ		ADM_BASE+0x60
SB1END_H		equ		ADM_BASE+0x66
SB1END_L		equ		ADM_BASE+0x68
////////////////////////////////////////

SBF1_W16msb			equ			0x700
SBF1_W16lsb			equ			0x400
SBF1_W24lsb			equ			0x000
SBF0_R16msb 		equ			0x7000
SBF0_R16lsb_s 		equ			0x5000
SBF0_R16lsb_z 		equ			0x4000

SBF1_FLUSH		equ			0x200
SBF0_FILL		equ			0x1000

.else
ADM_BASE				equ		0x3f0000
rCONFIG0				equ		0x0

rS0BASE_H				equ		0x36
rS0BASE_L				equ		0x38
rS1BASE_H				equ		0x3A
rS1BASE_L				equ		0xAC

rSB0OFF_H				equ		0x46
rSB0OFF_L				equ		0x48
rSB1OFF_H				equ		0x4A
rSB1OFF_L				equ		0x4C

rSBFCON					equ		0x42
rSFSTAT					equ		0x44
rSBFSTAT 				equ		0x44

SBF1_FLUSH				equ		0x200
SBF0_FILL				equ		0x1000

SBF1_W16msb				equ			0x700
SBF1_W16lsb				equ			0x400
SBF1_W24lsb				equ			0x000
SBF0_R16msb 			equ			0x7000
SBF0_R16lsb_s 			equ			0x5000
SBF0_R16lsb_z 			equ			0x4000

.endif

⌨️ 快捷键说明

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