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

📄 mem_alloc.h

📁 dm270 source code
💻 H
字号:
/*
    DM270 ARM Evaluation Software

    (c)Texas Instruments 2003
*/

#ifndef __MEM_ALLOC_H__
#define __MEM_ALLOC_H__

#include <system/armsys270.h>

#define KB	((Uint32)1024)
#define MB	((KB)*(KB))

#define HIGH_WORD(val32)  ( (Uint16)((val32) >> 16     ) )	
#define LOW_WORD(val32)	  ( (Uint16)((val32) &  0xFFFF ) )	

#define MAKE_WORD32(high16, low16)  (  ( (Uint32)(high16) << 16 ) | (low16) )

#define SDRAM_MEMORY_SIZE		(16*MB)

#define OSD_VIDEO_WIN_MAX_SIZE	(676*KB)

#define CCD_RAW_DATA_MAX_SIZE		(7*MB)
#define JPEG_DATA_MAX_SIZE			(4*MB)
#define THUMB_RAW_DATA_MAX_SIZE		(100*KB)
#define THUMB_JPEG_DATA_MAX_SIZE	(100*KB)
#define EXIF_HEADER_MAX_SIZE		(100*KB)
#define EXIF_DATA_MAX_SIZE			(4*MB+EXIF_HEADER_MAX_SIZE)

#define MOVIE_BUFFER_SIZE		(300*KB*3)
#define AUDIO_BUFFER_SIZE		(64*KB*3)

#define WORK_AREA_MAX_SIZE		(1*MB)

#define RESERVED_AREA_SIZE		(1*MB)

#define OSD_BMP_WIN_SIZE		(720*480)

#define CCD_DRAFT_MODE_RAW_DATA_SIZE	(MB)

/*

    Offsets from start of SDRAM Base Address

*/

// Video Window's
#define OSD_VIDEO_WIN0_OFFSET	(SDRAM_MEMORY_SIZE     - OSD_VIDEO_WIN_MAX_SIZE)
#define OSD_VIDEO_WIN1_OFFSET	(OSD_VIDEO_WIN0_OFFSET - OSD_VIDEO_WIN_MAX_SIZE)
#define OSD_VIDEO_WIN2_OFFSET   (OSD_VIDEO_WIN1_OFFSET - OSD_VIDEO_WIN_MAX_SIZE)

// 3A data
#define AEWB_DATA_OFFSET		(OSD_VIDEO_WIN2_OFFSET - 5*KB)
#define AF_DATA_OFFSET			(AEWB_DATA_OFFSET      - 5*KB)

// Still Image Mode
#define CCD_RAW_DATA_OFFSET		(AF_DATA_OFFSET		   - CCD_RAW_DATA_MAX_SIZE )	
#define JPEG_DATA_OFFSET		(CCD_RAW_DATA_OFFSET   - JPEG_DATA_MAX_SIZE )	
#define THUMB_RAW_DATA_OFFSET	(JPEG_DATA_OFFSET	   - THUMB_RAW_DATA_MAX_SIZE)
#define THUMB_JPEG_DATA_OFFSET	(THUMB_RAW_DATA_OFFSET - THUMB_JPEG_DATA_MAX_SIZE)	
#define EXIF_HEADER_OFFSET		(THUMB_JPEG_DATA_OFFSET - EXIF_HEADER_MAX_SIZE)
#define EXIF_DATA_OFFSET		(CCD_RAW_DATA_OFFSET)

// Movie Mode
#define MOVIE_BUFFER_OFFSET		(AF_DATA_OFFSET        - MOVIE_BUFFER_SIZE)
#define AUDIO_BUFFER_OFFSET		(MOVIE_BUFFER_OFFSET   - AUDIO_BUFFER_SIZE)
#define WORK_AREA_OFFSET		(AUDIO_BUFFER_OFFSET   - WORK_AREA_MAX_SIZE)	// Used by MPEG4 encode/decode

#define MOVIE_CCD_RAW_DATA_OFFSET (WORK_AREA_OFFSET	   - CCD_DRAFT_MODE_RAW_DATA_SIZE) // used when upsampling 240 lines of CCD data to 480 lines

// SDRAM Data Storage Area
#define MEM_FS_BUFFER_OFFSET	(RESERVED_AREA_SIZE+1*MB)

// Bitmap window's
#define OSD_BMP_WIN0_OFFSET		(RESERVED_AREA_SIZE)
#define OSD_BMP_WIN1_OFFSET		(OSD_BMP_WIN0_OFFSET + OSD_BMP_WIN_SIZE )

/*

    Absolute SDRAM addresses

*/
#define CCD_RAW_DATA_ADDR		(SDRAM_MEMORY_BASE + CCD_RAW_DATA_OFFSET)
#define JPEG_DATA_ADDR			(SDRAM_MEMORY_BASE + JPEG_DATA_OFFSET)	
#define THUMB_RAW_DATA_ADDR		(SDRAM_MEMORY_BASE + THUMB_RAW_DATA_OFFSET)
#define THUMB_JPEG_DATA_ADDR	(SDRAM_MEMORY_BASE + THUMB_JPEG_DATA_OFFSET)
#define EXIF_HEADER_ADDR		(SDRAM_MEMORY_BASE + EXIF_HEADER_OFFSET)
#define EXIF_DATA_ADDR			(SDRAM_MEMORY_BASE + EXIF_DATA_OFFSET)

#define OSD_VIDEO_WIN0_ADDR		(SDRAM_MEMORY_BASE + OSD_VIDEO_WIN0_OFFSET)
#define OSD_VIDEO_WIN1_ADDR		(SDRAM_MEMORY_BASE + OSD_VIDEO_WIN1_OFFSET)
#define OSD_VIDEO_WIN2_ADDR		(SDRAM_MEMORY_BASE + OSD_VIDEO_WIN2_OFFSET)

#define AEWB_DATA_ADDR			(SDRAM_MEMORY_BASE + AEWB_DATA_OFFSET )
#define AF_DATA_ADDR			(SDRAM_MEMORY_BASE + AF_DATA_OFFSET	)

#define MOVIE_BUFFER_ADDR		(SDRAM_MEMORY_BASE + MOVIE_BUFFER_OFFSET)
#define AUDIO_BUFFER_ADDR		(SDRAM_MEMORY_BASE + AUDIO_BUFFER_OFFSET)
#define WORK_AREA_ADDR			(SDRAM_MEMORY_BASE + WORK_AREA_OFFSET)

#define MOVIE_CCD_RAW_DATA_ADDR (SDRAM_MEMORY_BASE + MOVIE_CCD_RAW_DATA_OFFSET) 

#define MEM_FS_BUFFER_ADDR		(SDRAM_MEMORY_BASE + MEM_FS_BUFFER_OFFSET)

#define OSD_BMP_WIN0_ADDR		(SDRAM_MEMORY_BASE + OSD_BMP_WIN0_OFFSET)
#define OSD_BMP_WIN1_ADDR		(SDRAM_MEMORY_BASE + OSD_BMP_WIN1_OFFSET)


#endif	/*	__MEM_ALLOC_H__	*/


⌨️ 快捷键说明

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