随笔 - 8, 文章 - 6, 评论 - 8, 引用 - 0
数据加载中……

OEMAddressTabel 分析

SDRAM地址:
电路中所用的芯片对应到PXA27x design guide.pdf第78/79页的表格(SDRAM Memory Types Supported by PXA27x Processor和Address signal mapping)中可以看到,所用的配置为16M*16,2Banks*13Rows*9Cols,32-bit bus,只有一个partition,由于CS接的是nSDCS0,所以所属的partition为partition0,对应到Memory Map中可以知道地址范围从A000,0000到A3FF,FFFF。电路图中的E2脚是没用的,但实际上仍接了电阻并接到nSDCS1上,远峰板没接。

Flash地址:
由于Flash芯片上所接片选信号为nCS0,所以对应为Static Chip Select 0,且只有一个Static Chip Select区,起始地址为0x0000,0000,从图中的Data bus接法(两片芯片分别接32-bit databus的高16和低16位)和Addr bus接法(芯片上的A1接CPU上的A2)都可以看出是32-bit bus,芯片容量为32M,所以地址范围为0x0000,0000到0x01FF,FFFF。电路中的WP脚在E28F128中没有说明,见Datasheet16页,但电路上有接,应该不起作用,查看远峰板也没接,所用芯片与我们一样。

Ethernet地址:
CS接nCS4,所以对应地址从0x1000_0000开始,Addrtable中有两个:
DCD     0x9A600000, 0x10000000,  1      ; MAINSTONEII: nCS4: SMSC 91C111 Ethernet controller1 a25=0.
DCD     0x9Ea00000, 0x12000000,  1      ; MAINSTONEII: nCS4: SMSC 91C111 Ethernet controller2 a25=1.
Controller2是不存在的。

DCD     0x84000000, 0x5C000000,  1      ; BULVERDE: Internal SRAM (64KB bank 0).参见Manual 28-10

DCD     0x84200000, 0x4C000000,  1      ; BULVERDE: USB host controller.参见Manual 28-2

DCD     0x84100000, 0x58000000,  1      ; BULVERDE: Internal memory PM registers.参见Manual 28-2。这里有问题,在28-2中只说了是Internal memory control,但Manual中找不到其它信息,以5800开头的地址中只有一个,Infrared Selection Register,跟Internal memory没关系。且前面注释中提到是PM registers,应该指的是PowerManagement,这个在Internal memory一章中也有提到,一个是PSTR,PM Standby Configuration Register,地址是0x40f0_0038;另一为PSLR,PM Sleep Configuration Register,地址为0x40f0_0034,两个都是Internal memory的控制寄存器。

DCD     0x84200000, 0x4C000000,  1      ; BULVERDE: USB host controller.参见Manual 20-47

DCD     0x84300000, 0x48000000,  1      ; BULVERDE: Memory controller.参见Manual 6-85

DCD     0x84400000, 0x44000000,  1      ; BULVERDE: LCD controller.参见Manual 7-120

DCD     0x84500000, 0x40000000, 32      ; BULVERDE: Memory-mapped registers (peripherals).参见Manual 5-51/28-12

DCD     0x86500000, 0x3C000000, 64      ; BULVERDE: PCMCIA S1 common memory space.
DCD     0x8A500000, 0x38000000, 32      ; BULVERDE: PCMCIA S1 attribute memory space.
DCD     0x8C500000, 0x30000000, 32      ; BULVERDE: PCMCIA S1 I/O space.
DCD     0x8E500000, 0x2C000000, 64      ; BULVERDE: PCMCIA S0 common memory space.
DCD     0x92500000, 0x28000000, 32      ; BULVERDE: PCMCIA S0 attribute memory space.
DCD     0x94500000, 0x20000000, 32      ; BULVERDE: PCMCIA S0 I/O space.参见Manual 6-30

DCD     0x96500000, 0xE0000000,  1      ; MAINSTONEII: Zero-bank (in reserved slot - no physical memory required) 物理地址E0000000不存在,映射为虚拟地址不知道是用来做什么

DCD     0x96600000, 0x14000000, 64      ; MAINSTONEII: nCS5: eXpansion board header - Marathon. Marathon芯片板上没有,这一句应该没用。

DCD     0x9A700000, 0x0A000000,  1      ; MAINSTONEII: nCS2 (upper half): 2MB SRAM.
DCD     0x9A800000, 0x08000000,  1      ; MAINSTONEII: nCS2 (lower half): Board registers (FPGA). nCS2和A25都有接到FPGA上,不过因为内部电路如何不知道,这一部分没法看。2MB SRAM应该也是FPGA里的。

DCD     0x9A900000, 0x04000000, 32      ; MAINSTONEII: nCS1: Secondary flash (32MB). nCS1没接

DCD     0x9E900000, 0x50000000,  1      ; BULVERDE: Camera peripheral interface. 参见27-43
       

OEMAddrTable里有这么两句:
DCD     0x80000000, 0xA0000000, 64      ; MAINSTONEII: SDRAM (64MB).
DCD     0x9C900000, 0x00000000, 32      ; MAINSTONEII: nCS0: Boot Flash (32MB).

比照Config.bib:
IF IMGFLASH
    RSVD     80000000  000FF000  RESERVED;RAM从8000,0000开始,物理地址为A000,0000
    ARGS     800FF000  00001000  RESERVED
    NK       9CA00000  03000000  RAMIMAGE;前面留了1M为Bootloader用,所以Flash起始物理地址为0000,0000
    RAM      80100000  03F00000  RAM;RAM范围为64M
   
这里有个问题,RAMIMAGE的大小为48M,但实际容量为32M,这个目前不知道为什么
1   2   2   2      9   2   2   2  
0001001000100010   1001001000100010

posted on 2006-09-08 16:24 embedder 阅读(204) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。