2009年9月7日 星期一

vivi Memory 常數




/* Flash */
#define FLASH_BASE                       ROM_BASE0    /* 0x3000 0000 */
#define FLASH_SIZE                       SZ_32M
#define FLASH_UNCACHED_BASE       0x10000000    /* to mapping flash memory */
#define FLASH_BUSWIDTH               4
/* ROM */
#define VIVI_ROM_BASE                  0x00000000
#define VIVI_PRIV_ROM_BASE           0x01FC0000














/* Porocessor memory map */
#define ROM_BASE0          0x00000000      /* base address of rom bank 0 */
#define ROM_BASE1          0x08000000      /* base address of rom bank 1 */
#define DRAM_BASE0        0x30000000      /* base address of dram bank 0 */
#define DRAM_BASE1        0x38000000        /* base address of dram bank 1 */




#define DRAM_BASE          DRAM_BASE0   /* 0x3000 0000*/
#define DRAM_SIZE          SZ_64M      

#define MTD_PART_SIZE                       SZ_16K   /* 16k=0x40000 */
#define MTD_PART_OFFSET                   0x00000000
#define PARAMETER_TLB_SIZE               SZ_16K   /* 16k=0x4000 */
#define PARAMETER_TLB_OFFSET           0x00004000
#define LINUX_CMD_SIZE                      SZ_16K  
#define LINUX_CMD_OFFSET                  0x00008000
#define VIVI_PRIV_SIZE                        (MTD_PART_SIZE + PARAMETER_TLB_SIZE + LINUX_CMD_SIZE) 




/* 16k+16k+16k=48k=*/


/* RAM */
#define VIVI_RAM_SIZE                   SZ_1M 
#define VIVI_RAM_BASE                  (DRAM_BASE + DRAM_SIZE - VIVI_RAM_SIZE) 




/* 0x3000 0000 + 64M - 1M = 0x33ff ffff - 1M = 0x33ef ffff*/




#define HEAP_SIZE                         SZ_1M
#define HEAP_BASE                        (VIVI_RAM_BASE - HEAP_SIZE)




/* 0x33ef ffff - 1M = 0x33df ffff*/




#define MMU_TABLE_SIZE                SZ_16K
#define MMU_TABLE_BASE               (HEAP_BASE - MMU_TABLE_SIZE)




/* 0x33df ffff - 16k = 0x33df bfff*/




#define VIVI_PRIV_RAM_BASE           (MMU_TABLE_BASE - VIVI_PRIV_SIZE)




/* 0x33df bfff - 48k= 0x33de ffff*/




#define STACK_SIZE                       SZ_32K
#define STACK_BASE                      (VIVI_PRIV_RAM_BASE - STACK_SIZE)




/* 0x33de ffff - 32k = 0x33de 7fff*/




#define RAM_SIZE                          (STACK_BASE - DRAM_BASE)




/* 0x33de 7fff - 0x3000 000 = 0x3de 7fff = 64M - 1M - 1M - 16K-48K-16K - 32k= 61M + 912K*/




#define RAM_BASE                          DRAM_BASE 




/* 0x3000 0000 */


沒有留言:

張貼留言