一。了解开发板资源
第一步1.找到CPU,什么架构的CPU,为了找到系统上电后,第一条执行的代码该放到哪里。0x0
第二步2.0x0接什么芯片?可读可保存的。有flash(norflash)和rom
3.异常和中断?
异常:CPU自己主动终止。有个异常向量表。其中复位异常比较重要。
中断:外部打断CPU
4.SOC片上系统等于CPU加一堆控制器
看datasheet block,在overview章节
电路图:地址总线,数据总线。Memory Port0,1,2
片外其他芯片通过一根总线挂接到主芯片上面
5.SOC的4G资源是怎么分的?片内资源和片外资源分多少?由芯片厂商定的。
这些地址被芯片公司重新定义,到芯片公司的datasheet中去找memory map章节那个框图
片内资源:SFR Area(特殊状态寄存器)
片外资源:除了SFR以外几乎都是由片外资源管的
找异常向量表看reset地址0x0对应什么东西
例子:
S5PV210
0x0~~~~对应i Rom(片内资源)~固化到i Rom的code~跳转到新的地址
S3C2410
0x0~~~~对应SROM(bank0)(片外资源)~bank0挂接什么芯片
6.boot程序
设置时钟clock,提供系统的工作频率。设置好clock才能进行接口开发
7.接口开发(boot加interface)
圆圈低电平有效 片选信号CS
8.片外资源的地址确定
SDRAM空间分块,每一个分块起始地址—结束地址。程序访问的地址,落在哪一个分块区间,CPU就自动的对该分块的片选信号置为有效
找到对应芯片,找该芯片的类似于CS/enable这样的引脚,看该引脚接到CPU的哪个片选信号上
例子:网卡
先找网卡芯片,找到CS,挂的哪个引脚xm0csn1,对应bank1,看表找到地址范围
SROM空间分块
片内资源直接访问就行。没有挂在地址总线的资源都是SFR片内资源。
对于外设怎么确定地址?
要看有没有地址总线,有地址总线就按照第一种方法找片选信号
没有地址总线就是片内资源的方法。