php网站开发范例,建设医疗网站,做搜狗手机网站排名软,海南网站建设培训1 开发板启动过程
1.1 回顾芯片手册第三章内存映射 对于arm来说#xff0c;不是给它多大的内存都能读。寻址空间#xff08;地址空间#xff09;读写范围是有限的#xff0c;寻址空间的大小与地址总线宽度有关#xff0c;如32位#xff0c;地址空间4G#xff08;2^32)…1 开发板启动过程
1.1 回顾芯片手册第三章内存映射 对于arm来说不是给它多大的内存都能读。寻址空间地址空间读写范围是有限的寻址空间的大小与地址总线宽度有关如32位地址空间4G2^32)。4412的CPU在工作的时需要读写内存还需要控制硬件读取寄存器所以需要规范这4G的空间。
上电PC为00地址执行了IROM内部三星公司写入了BL0即boot load 0
IRAM是内部的内存
SFR是特殊功能寄存器
最后3G 外扩内存我们开发板上的内存1G地址是0x40000000-0x80000000
EMMC断电不丢失安装系统是安装在EMMC中上电后再把linux从EMMC加载到SD卡
1.2 linux启动流程
上电流程主要包括以下几个步骤
BL0固件进行基本软硬件初始化这段代码先对基本的软硬件环境时钟等。BL0读取拨码开关状态确定启动方式。如果拨码开关指定SD卡启动BL0会将SD卡中的程序复制到内存中外部存储器CPU无法运行。然后再将对应存储器中的uboot搬移到内存然后跳转到uboot运行Universal Bootloader进行基本软硬件初始化。UBOOT将EMMC中存储的Linux系统复制到内存中前提是已经将Linux安装到了EMMC。将设备树二进制文件Device Tree BlobDTB从EMMC加载到内存中Linux系统需要用到它来配置硬件。将根文件系统Root File Systemrootfs从EMMC加载到内存中Linux运行时需要访问其中的文件。Linux系统开始运行,当系统启动完成后Linux再从内存中或网络挂载根文件系统。
这样系统就完成了从上电到Linux系统正常运行的过程。在此过程中通过读取拨码开关状态和选择不同的存储设备可以决定系统的启动方式例如从SD卡或EMMC中启动并将对应的程序和文件加载到内存中。
2 系统移植步骤
知道了启动过程那么大致需要完成系统移植的步骤也就清楚了
uboot移植linux内核移植包含设备树根文件系统移植
3 练习
简述开发板启动过程略