- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
NIOS软核处理器的Linux引导程序U-boot设计.doc
NIOS软核处理器的Linux引导程序U-boot设计
摘要: 针对将uClinux向Nios处理器移植过程中的启动加载程序U-boot bootloader进行研究。首先介绍移植的步骤,然后利用bootloader的设计思想,着重讨论U-boot在Nios中的设计与实现,最后对U-boot在基于Linux的嵌入式系统 中的运用作了探索和展望。
关键词: U-boot bootloader uClinux Nios软核
1 概述
1.1 Nios简介
Nios是 Altera 公司以RISC为基础的可配置、可裁减软核处理器。它具有16位指令集和16/32位数据通路,通过将包括16或32位高性能处理器在内的移种应用模块嵌入到通用FPGA/CPLD内,实现完全可配置的嵌入式系统。其开发套件包括:具有必要外围内核的Nios处理器、C/C++编译器、Cygnus的源级调试程序、Quartus编译软件、验证工具和开发板。
Nios软核处理器主要特性包括:高效灵活的处理器模块,可以通过软件配置成16位或32位的中央处理单元(RISC结构),并可选择不同的内部存储器大小,其最高执行速度可达50MHz;具有多种其它功能模块的选择(SDRAM控制器、UART控制器、PCI接口模块、LCD接口模块、MAC接口模块等多种功能模块);具有完整、廉价、便捷的开发系统。所有开发(包括设计、调试)均通过软件进行,不再需要专门的硬件仿真器和编器,大大减少了开发设备的成本。
1.2 向Nios移植 uClinux 需要做的工作和步骤
(1)硬件需求
需要一个 Altera 公司的开发包,或者是下面三种之一:APEX board,STRATIX board,CYCLONE board。本文选用的是CYCLONAE board。
(2)软件需求
下载一个最新版本的 uClinux ,并搭建一个Nios的GNU C编译环境,准备好CDK4Nios开发包。CDK4Nios开发包是Nios的交叉开发包。
(3)bootloader
需要编写或移植一个bootloader到Altara Nios board上。本文就是要设计一个用于Nios的U-boot bootloader。利用QUARTUS软件为开发板定义默认参数,然后在开发板上测试U-boot。
?
?
(4) uClinux 内核的编译
将下载好的 uClinux 源泉代码解压到/home目录下,会产生/home/ uClinux -dist目录,进入该目录,依次键入:
make menuconfig
make dep
make
在/home/ uClinux -dist/image目录中产生image.rom,image.ram,romfs.img,它们分别是内核的映像及文件系统的映像文件。键入make menuconfig时,会出现开发平台及内核配置和文件系统应用程序的配置界面,可以根据需要配置。
(5) uClinux 的根文件系统及其加载
uClinux 系统采用romfs文件系统,这种文件系统相对于一般的ext2文件系统要求更少的空间。romfs文件系统不支持动态擦写保存,对于需要系统动态保存的数据,采用虚拟ram盘的方法进行处理(ram盘将采用ext2文件系统)。同时, uClinux 内核也支持各种文件系统,例如,网络文件系统,在需要时可以进行mount。
解决了上述问题以后, uClinux 便可以成功地移植到Nios上。
1.3 U-boot介绍
U-boot是启动引导程序的一种,是一种通用的Linux bootloader。在做 uClinux 移植时,碰到的第一个问题就是移植bootloader或者自己编写bootloader程序。Linux内核启动部分的代码需要判断从bootloader传递过来的寄存器值。U-boot对Linux引导有特别的支持,如:
SCC/FEC以太网支持;
BOOTP/TFTP引导;
IP,MAC预置能力和在线读写Flash、DOC、IDE、IIC、EEROM、RTC;
支持串行口kernit,S-record下载代码;
识别二进制、ELF32、pImage格式的Image,对Linux引导有特别的支持;
单软件软件运行环境(hello.c);
监控(minitor)命令集有读写I/O、内存、寄存器、外设测试功能等;
脚本语言支持(类似BASH脚本);
支持watchDog,LCDlogo,状态指示功能等。
本文着重介绍 uClinux 向Nios软核处理器移植过程中,U-boot的设计和实现。
2 U-boot的设计
2.1 bootloader的设计思想
bootloader的设计除了依赖于
您可能关注的文档
- Greenvity通信现在提供完整的一体化解决方案.docx
- GSM数字移动通信无线网络规划设计探讨.doc
- HACCP体系在保税区简单分装型食品企业中应用初探.doc
- HB-5A专业HB5A电子镇流器性能分析仪,HB-5A,电子镇流器分析仪.doc
- HCA-102标准COD消解器在环保中的应用16340.doc
- HHJW10-2005正丁醇氯仿萃取磷钼蓝光度法测定磷量.doc
- Hold不住的闪耀,珠宝带您现场鉴定顶级美钻.doc
- HPLC-紫外法测定人血浆中瑞芬太尼浓度.doc
- HPLC—ELSD法测定复方丹参滴丸中人参皂甙Rg1、Rb1和三七.doc
- HPLC法测定昆明山海棠中雷公藤甲素含量.doc
- 基于人工智能教育平台的移动应用开发,探讨跨平台兼容性影响因素及优化策略教学研究课题报告.docx
- 高中生物实验:城市热岛效应对城市生态系统服务功能的影响机制教学研究课题报告.docx
- 信息技术行业信息安全法律法规研究及政策建议教学研究课题报告.docx
- 人工智能视角下区域教育评价改革:利益相关者互动与政策支持研究教学研究课题报告.docx
- 6 《垃圾填埋场渗滤液处理与土地资源化利用研究》教学研究课题报告.docx
- 小学音乐与美术教师跨学科协作模式构建:人工智能技术助力教学创新教学研究课题报告.docx
- 《航空航天3D打印技术对航空器装配工艺的创新与效率提升》教学研究课题报告.docx
- 教育扶贫精准化策略研究:人工智能技术在区域教育中的应用与创新教学研究课题报告.docx
- 《区块链技术在电子政务电子档案管理中的数据完整性保障与优化》教学研究课题报告.docx
- 《中医护理情志疗法对癌症患者心理状态和生活质量提升的长期追踪研究》教学研究课题报告.docx
文档评论(0)