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

📄 mem.a

📁 这是三星评估板ws310(CPU为S3c4510B)用的Bootloader.开发环境是SDT。
💻 A
字号:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;	This Part is about Memory Define	   ;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; Internal SRAM area

                ^       0x3FE0000
InterSramArea   #       8192

		
SystemStackAdr	        EQU	0x100000	;Stack Area: 0x13f0000~0x13fffff
USR_STACK_SIZE   	EQU    	512 
UDF_STACK_SIZE   	EQU    	128 
ABT_STACK_SIZE   	EQU    	128 
IRQ_STACK_SIZE   	EQU    	128 
FIQ_STACK_SIZE   	EQU    	128 
SUP_STACK_SIZE   	EQU    	128 

USR_STACK	EQU	SystemStackAdr
UDF_STACK       EQU    	SystemStackAdr + USR_STACK_SIZE  
ABT_STACK   	EQU	UDF_STACK + UDF_STACK_SIZE
IRQ_STACK	EQU	ABT_STACK + ABT_STACK_SIZE
FIQ_STACK        	EQU    	IRQ_STACK + IRQ_STACK_SIZE
SUP_STACK	EQU    	FIQ_STACK + FIQ_STACK_SIZE


DRAM_BASE       	EQU     0x00400000
DRAM_LIMIT      	EQU     0x01400000
;-------------------------------------------------
;ExceptionSize    EQU     0x50            ; exception vector addr pointer space
;SysStackSize     EQU     1024 * 8        ; Define 8K System stack
;ExceptionTable   EQU     DRAM_BASE + ExceptionSize

;/* EXCEPTION HANDLER VECTOR TABLE */
;	        ^	DRAM_BASE
;HandleReset	#	4
;HandleUndef	#	4
;HandleSwi   	#	4
;HandlePrefetch	#	4
;HandleAbort	#	4
;HandleReserv	#	4
;HandleIrq   	#	4
;HandleFiq	#	4

;/* SYSTEM USER CODE AREA  */

;		^	DRAM_BASE+ExceptionSize ;=0x1000050
;UserCodeArea	#	4


;/*************************************************************************/
;/* DRAM Memory Bank 1 area(NonCacheable region) */
;/*  for DMA(Direct Memory Access) function      */
;/*************************************************************************/

;                ^      0x1400000
;DmaCodeArea     #      4

;                ^      0x1700000
;UserFreeArea    #      4 


;***************************************************************************
;=		MEM BUS WIDTH REG		
;***************************************************************************
DSR0  			EQU  2:SHL:0		; ROM0 :32 bits	
DSR1  			EQU  0:SHL:2	      	; ROM1 :disable  	
DSR2  			EQU  0:SHL:4	    	; ROM2 :disable
DSR3  			EQU  0:SHL:6	     	; ROM3 :disable
DSR4  			EQU  0:SHL:8 		; ROM4 :disable
DSR5  			EQU  0:SHL:10		; ROM5 :disable

DSD0  			EQU  3:SHL:12		; DRAM0:32 bits
DSD1  			EQU  0:SHL:14		; DRAM1:disable
DSD2  			EQU  0:SHL:16              ; DRAM2:disable
DSD3  			EQU  0:SHL:18              ; DRAM3:disable

DSX0  			EQU  0:SHL:20		; EXTIO0:disable
DSX1  			EQU  0:SHL:22	         ; EXTIO1:disable
DSX2  			EQU  0:SHL:24        	; EXTIO2:disable
DSX3  			EQU  0:SHL:26              ; EXTIO3:disable

rEXTDBWTH	 	EQU  (DSR0+DSR1+DSR2+DSR3+DSR4+DSR5+DSD0+DSD1+DSD2+DSD3+DSX0+DSX1+DSX2+DSX3) ;=0x00003003

;************************************************************************************
;=		ROM0,1,2,3,4,5 REG		=
;************************************************************************************

;---ROMCON0 : ROM Bank0 Control register---
PMC0            	EQU  0x0:SHL:0    	       	; 0x0=Normal ROM, 0x1=4Word Page 
                                            	       	; 0x2=8Word Page, 0x3=16Word Page
Tpa0            	EQU  0x0:SHL:2 		       	; 0x0=5Cycle, 0x1=2Cycle
                          	                         	; 0x2=3Cycle, 0x3=4Cycle 
Tacc0          	EQU  0x6:SHL:4		       	; 0x0=Disable, 0x1=2Cycle
                  	                         	; 0x2=3Cycle, 0x3=4Cycle
                        	            	       	; 0x4=5Cycle, 0x5=6Cycle
                                	    	       	; 0x6=7Cycle, 0x7=Reserved

ROMBasePtr0     	EQU  0x0:SHL:10		       	;=0x0000000  0M
ROMEndPtr0      	EQU  0x20:SHL:20	       		;=0x0400000  2M 

rROMCON0   	EQU  ROMEndPtr0+ROMBasePtr0+Tacc0+Tpa0+PMC0   ;=0x02000060

;/--- ROMCON1,2,3,4,5 : ROM Bank1,2,3,4,5 Control register ---
rROMCON1		EQU	0x60
rROMCON2 	EQU  	0x60
rROMCON3   	EQU  	0x60
rROMCON4   	EQU  	0x60
rROMCON5   	EQU  	0x60

;***************************************************************************************
;=		SDROM0,1,2,3 REG		=
;***************************************************************************************
;/* ->SDRAMCON0 : RAM Bank0 control register */
DRAMBasePtr0   	 	EQU	0x100:SHL:10            ;=0x00400000   4M
DRAMEndPtr0        	EQU  	0x200:SHL:20           ;=0x01400000   20M
SRAS2CASDelay0      	EQU  	1                      ;(Trc)0=1cycle,1=2cycle
SRASPrechargeTime0  	EQU  	3                      ;(Trp)0=1cycle ~ 3=4clcyle
SNoColumnAddr0      	EQU  	0                      ;0=8bit,1=9bit,2=10bit,3=11bits
SCAN0               	EQU  	SNoColumnAddr0:SHL:30
STrc0               	EQU  	SRAS2CASDelay0:SHL:7
STrp0               	EQU  	SRASPrechargeTime0:SHL:8

rSDRAMCON0	    	EQU	SCAN0+DRAMEndPtr0+DRAMBasePtr0+STrp0+STrc0  ;=0x14010380


;/* ->SDRAMCON1,2,3 : RAM Bank1 control register */
rSDRAMCON1	   	EQU  	0x0
rSDRAMCON2     	   	EQU  	0x0
rSDRAMCON3   	   	EQU  	0x0

;/* -> REFEXTCON : External I/O & Memory Refresh cycle Control Register */
ExtIOBase          	EQU	0x360      ; 
VSF		  	EQU	0x1:SHL:15 ; Accessiable to memory bank
Refresh		   	EQU	0X1:SHL:16 ; Enable
Trc                	EQU  3:SHL:17   ; 0=1cycle, 1=2cycle, 2=3cycle,
                                   ; 3=4cycle, 4=5cycle
RefCycle      	   	EQU   8   ;Unit [us], 4k refresh 64ms
RefCycleValue  	   	EQU   ((2048+1-(RefCycle*fMCLK)):SHL:21)

rSREFEXTCON     	   	EQU   RefCycleValue+Trc+Refresh+VSF+ExtIOBase

;**************************************************************************************
  END

⌨️ 快捷键说明

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