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

📄 globalv.h

📁 关于DVD上的PCM的解码的代码,PCM的DSP压缩,解调的算法,用RISC32指令来写.
💻 H
字号:
;
;
;	Module:	globalv.h
;
;	shared variables in local memory
;
//these 4 variables should be moved somewhere else later
#define	LWdisckey0	%0x48       //this location has to be preserved
#define	LBdisckey4	%0x4c
#define	LWtitlekey0	%0x50       //this location has to be preserved
#define	LBtitlekey4	%0x54

#define LOCAL_BASE 0x400            //overlay with local_rate_filter for the moment

#define	LIicfg		%(LOCAL_BASE+0x0)
#define	LIocfg		%(LOCAL_BASE+0x2)
#if	LS388
#define LIold_rd_ptr	%(LOCAL_BASE+0x4)
#else
#define LIfrmsize       %(LOCAL_BASE+0x4)
#endif	// LS388
#define	LIstatus	%(LOCAL_BASE+0x6)
#define	LIMpegAttr	%(LOCAL_BASE+0x8)		// for picture attribute

#define LBFIFO_flag     %(LOCAL_BASE+0xa)
#define LBblknum        %(LOCAL_BASE+0xb)
#define	LBPCM_flag	%(LOCAL_BASE+0xc)
#define	LBDriver	%(LOCAL_BASE+0xd)
#define LBPCMlow        %(LOCAL_BASE+0xe)

#define	LWpcmscale	%(LOCAL_BASE+0x10)	
#define	LWibufRdPtr	%(LOCAL_BASE+0x14)
#define	LWentry		%(LOCAL_BASE+0x18)		// for decoder entry
#define	LWPCMentry	%(LOCAL_BASE+0x1c)
#define	LWoldPTS	%(LOCAL_BASE+0x20)
#define	LWhungrySTC	%(LOCAL_BASE+0x24)
#if	LS388
#define LIfrmsize       %(LOCAL_BASE+0x28)
#endif	// LS388
#define LWbytecount     %(LOCAL_BASE+0x2c)
#define LWFrameCount    %(LOCAL_BASE+0x30)
#define LWStartPTS      %(LOCAL_BASE+0x34)
#define dma_tmp_reg     %(LOCAL_BASE+0x38)      //used in DMA Macro def in regdef.h
#define	LWTempR20	%(LOCAL_BASE+0x3c)
#define	LWTempR21	%(LOCAL_BASE+0x40)
#define	LWTempR22	%(LOCAL_BASE+0x44)
#define	LWTempR23	%(LOCAL_BASE+0x48)
#define	LWTempR24	%(LOCAL_BASE+0x4c)
#define	LWTempR25	%(LOCAL_BASE+0x50)
#define	LWStatusReg	%(LOCAL_BASE+0x54)

//=== For Used in SRS
#define	STC_old		%(LOCAL_BASE+0x58)
#define	saveSTCptr	%(LOCAL_BASE+0x5c)
#define	STC_detla	%(LOCAL_BASE+0x60)
#define	LWSRSentry	%(LOCAL_BASE+0x64)

/************************ pcm_dec ***************************************/

#ifndef EFFECT      //debug

#define local_IBUF_word                 0             //size=256 (overlaid with pcm out)
#define local_IBUF_byte                 0*4           //size=256

#define local_FApcm_buf_word            0           //size=256
#define local_FApcm_buf_byte            0*4          //size=256

#define	local_F2Adnmix_buf_word	1024	//size=256
#define	local_F2Adnmix_buf_byte	1024*4

#define	LDB	1024*4		// size = 36
#define	LDW	1024		// size = 36

#define local_mid_buf_word              1280             //size=128
#define local_mid_buf_byte              1280*4           //size=128

#define local_temp_buf_word             1408             //size=
#define local_temp_buf_byte             1408*4           //size=

#else //EFFECT

#define	local_F2Adnmix_buf_word	1024	//size=256
#define	local_F2Adnmix_buf_byte	1024*4

#define	LDB	1024*4		// size = 36
#define	LDW	1024		// size = 36

/************************ pcm_dec ***************************************/

#define local_IBUF_word                 640             //size=192
#define local_IBUF_byte                 640*4           //size=192

/************************************************************/
/*  The overlapping mem is for historical data storage		*/
/*  for the purpose of decimation of 2 from 96k to 48k		*/
/************************************************************/

#define local_hist_mid_buf_word			768				//size=64
#define local_hist_mid_buf_byte			768*4			//size=64

#define local_mid_buf_word              832             //size=128
#define local_mid_buf_byte              832*4           //size=128
#define local_last_dec_buf_word			896				//size=64

#define local_temp_buf_word             960             //size=
#define local_temp_buf_byte             960*4           //size=

/************************************************************/
/*	Try to overlap local_temp_buf_word for 64 decimation    */
/*  coefficients. A few other reasons to choose for			*/
/*  1. seems that never been used for 3/5 channels          */
/*  2. just a few been used, even though					*/
/************************************************************/

#define	local_dec_filter_word			 0x780		//size=32
#define	local_dec_filter_byte			 0x1e00		//992*4			//size=32

#define local_FApcm_buf_word			 1024            //size=768
#define local_FApcm_buf_byte             1024*4          //size=768

#define	local_deemphasis_filter_word	 0x180		//empty from 0x7a2	size=5 coeffs 2nd order
													// circular buffer
#define	local_deemphasis_filter_byte	 0x600		
#define	local_deemph_hist_byte_L		 0x1c00		//by words with order Y(t-1),Y(t-2),X(t-1)
													// X(t-2) for L 
#define	local_deemph_hist_byte_R		 0x1c08		//by words with order Y(t-1),Y(t-2),X(t-1)
													// X(t-2) for R 

#endif //EFFECT

⌨️ 快捷键说明

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