论文研究-U-BOOT从NAND Flash启动的实现 .pdf

所需积分/C币:5 2019-08-14 17:49:30 186KB .PDF
18
收藏 收藏
举报

U-BOOT从NAND Flash启动的实现,王磊,何小刚,U-BOOT是一款功能强大的引导装载程序,但不支持从NAND flash启动。针对这一点本文提出了一种使其支持从NAND flash启动的方法。本文分析了U
中国科花论义在 同吋在最后添加 初始化函数工作基本完成。最后修改 把 文什添加进工程。 实现 启动 由于 的自身特点,对 的操作不能像对 那样方便的直接对 地址进行操作,而是通过读写 控制器的寄存器来完成。三星公司的 片自带了 控制器,寄存器的地址是从 的地址开始 处理器有 和 两种启动模式,当选择从 模式启动时 会把 的 前数据搬运到内部称为 的硬件中,同时把 映射到地址 处,从而启动,启动完成后处理器会把 释放掉以作为他用。 的一般 大小都上.,远人于,所以实现从 启动的原理就是让前代码完成基本初始 化,重要的是把 中的 代码复制到 中,从而跳到 中去 执行。分析可知, 的该特点为 从 启动提供了可能。木文讨 论的实现思路就是依据此原理。 源代码中有 该文件是 代码的链接脚本,有如下代 可以看到段也就是程序代码段,被编译链接到地址处,同时编译后的 目标文件被放到段的第一个文件处,所以就是稈序上电运行的第一段代码, 而 这个汇编文件正是 的程序代码入口。因此代码修改和添加主 要在 中完成,以此来保证 启动代码可以在最终程序编译链接所生成的文件的 前内。 读写操作比较复杂,汇编实现较为麻烦,没有语言简啪容易,因此用 语言实现对 的操作复制作,最后在中调用编写的程序即可。 在 中添加 文件,在其中实现 (重置函数) 等待即査询设备是否读写就位)、 (片选使能)、 (取消片选) (写命令)、 写地址)、 (读数据)、 (控制器初始化)这些子函数和 函数,同时在 中依据 的读写操作特点来调用这些子函数。具体操作流稈如图二。 中的代码复制操作函数已经完成,接下来只要在 中调用 函数就完成工作。汇编文件 段代码为 中原先的复制 中国科花论义在 代码过程,去掉这段代码,添加自己的代码。由于编写的是代码,所以在中调 用 凼数前必须先设定好指针、堆栈,另外 要用到的参数是通过 寄存器传递的 Nand init wa Nand reset read data nand select N○ 半前PAGE结束? nlp YES write cmdc 0) <等 J SIZE:YES write addr 更改PAGE 地址 返 图 操作流程 在 设置堆栈代码后面添加如下代码: 上面第—段代码主要是检测程序是否凵经在内存中运行,如果凵经在内存中,显然代码 就无需复制,程序就会跳过复制阶段往后执行,第二段是设定参数,把参数放入相应寄存器, 最后调用 E数。 自此关于 启动的主要代码修改和添加已经完成,但还有很重要的一处需要修改, 关于环境参数的存放问题。环境参数紧随着 在 中存放,在其之后是内 核镜像文件。在 的第二阶段中有个名为 的函数,它会把环境参数复制 到中,而环境参数中需要向内核传递的参数会在内核启动前重新构建成标记列 表,同时把该标记列表放在跟内核约定好的地址处。因此必须指明环境参数的存放位置,否 中国科花论义在 则无法复制到内存,从而需要传递到内核的参数也就无法完成传递。修改如下:在 中添加 第一行指定环境变量在 中,后面两行分别指定其在 中的大小 和偏移量。关于 启动的部分仝部完成 其他部分修改 由于本人的开发板是基于 的 中没有的配置文件,只能仍用 模板来进行修改。主要修改有两处: 在 中添加 结构体;二、由于 的时钟寄存器有些不一样,所以需 要修改时钟获得函数,在 修改。篇幅所限, 针对 开发板所需的修改部分不详细阐述。 特别要注意的是机器的问题,在 中定义了各个开发板 的号,必须要保证所定义的廾发板的号跟内核一致,否则内核无法启动。 结语 本文针对 不支持从 启动的缺点,对其进行修改。添加了关于 的摸作函数和支持从 启动的数。本文详细阐述了 从 启动的原理和 修改过程。修改之后, 在开发板上成功从 启动运行,开发板运行状况 良好。 参考文献 韦东山.嵌入式 应用开发完仝手册[].北京:人氏邮电出版社, 詹荣开 瞅入式系统 技不内幕 宋宝华. 设备驱动开发详解[].北京:人民邮电出版社, 杜春雷 体系结构与编程[].北京:清华大学出版社, 郑家玲,张云峰,孙荷琨.嵌入式系统的内核载入过稈浅析[〗.微型计算机应用,年第期 作者简介: 王磊,明,年生,硕士研究牛,主要研究方向是嵌入式系统 驱动开发等; 何小刚,男,副教授,硕士研究生导师

...展开详情
试读 5P 论文研究-U-BOOT从NAND Flash启动的实现 .pdf
立即下载 身份认证VIP会员低至7折
一个资源只可评论一次,评论内容不能少于5个字
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
  • 至尊王者

关注 私信
上传资源赚钱or赚积分
最新推荐
论文研究-U-BOOT从NAND Flash启动的实现 .pdf 5积分/C币 立即下载
1/5
论文研究-U-BOOT从NAND Flash启动的实现 .pdf第1页

试读结束, 可继续读1页

5积分/C币 立即下载