在niosii上跑uClinux.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
在niosii上跑uClinux

标签: 无标签 在niosii上跑uClinux NIOSII是altera公司针对FPGA推出的一个CPU软核,它可以综合到任何一款altera的FPGA中。用户可以基于sopc?builder搭建自己的系统。一个基于NIOSII的系统如图: 除了sopc?builder提供的一些外设以外,用户可以按照avalon总线标准来实现自己的模块,而且可以很容易的集成到系统里面去。? niosii有三个不同的版本:niosii-e、niosii-s、niosii-f。? Niosii-e/数据CACHE,所以实现所需要的逻辑较小(600-700?LEs)。? Niosii-s有五级流水结构,带指令cache(size根据用户配置),实现需要1200-1400?LEs。 Niosii-f有六级流水结构,带指令和数据cache,实现需要1400-1800?LEs。? 建立niosii系统 在建立系统之前检查一下软硬件配置: 1、使用最新版本的Quartus和Nios软件,低版本软件可能存在bug。我之前用QuartusII?5.1试了好几次都没有完全把uClinux跑起来,在boot开始以后就挂死了,百思不得其解,后来换成QuartusII?6.1以后,重新编译了一下逻辑就把跑起来了。郁闷了我好久…… 2、uClinux需要在linux环境下编译(基于cygwin也可以编译,不过我说的这个过程是在linux上的),所以你必须有一个linux操作系统。有几种办法:A,装一个linux版本的QuartusII,所有的操作都在linux下完成。B,用两台计算机,一台用windows,跑quartus等软件,另一台装linux。C,在windows下装个虚拟机vmware,在虚拟机上装linux,通过虚拟机来编译uClinux,然后把image文件导入到windows下调试。我就是使用虚拟机的方法,但是要求你的PC内存比较大才行,否则系统会很慢。 3、你板子上FPGA的容量要能装的下一个系统,外部的SDRAM容量至少要8M?byte。我用的是一个EP1C6的FPGA加8M?byte的SDRAM。不需要FLASH。 以上条件都满足了,就可以开始了。 首先,建立一个工程,然后建立一个小系统,配置如下: ? 最小系统至少要包括: 一个niosii?cpu,一个sdram控制器,cfi_flash控制器(在单板上不需要flash),全功能的timer,用于通信的jtag?uart或serial?uart。 可以根据单板的硬件资源来适当配置逻辑,比如加入一些led和key等等。 在linux里面中断0是自动识别的,所以在硬件系统里面不要使用0号中断。 ?生成好系统以后,在Quartus里面把引脚连好,包括设置好用于SDRAM?的PLL: ? ?系统编译好以后,先用NIOSII IDE写个程序来测试一下SDRAM和系统是不是可以运行。如果程序能正确运行的话,就可以进入下一步了。? 建立uClinux的交叉编译环境 要把uClinux放到niosii中运行首先必须把uClinux代码编译成niosii的指令。这个编译的过程需要相应的程序来完成。下载nios2gcc.tar.bz2软件包。? 进入linux操作系统,打开一个shell界面,执行如下操作: 把下载的nios2gcc.tar.bz2软件包放到home下,如/home/duckfly/ 然后切换到root? su #输入root密码 tar?jxf?/home/duckfly/nios2gcc.tar.bz2 -C / exit niosii的交叉编译工具链就会安装到/opt/nios目录下,我们需要把这个目录加入到path变量中去,让shell能自动寻找。 打开home下载.bash_profile文件,这个文件是隐藏文件,需要用ls?–a才能看见。? ls?-a vi .bash_profile #把PATH变量修改为:PATH=$PATH:/opt/nios2/bin:$HOME/bin ?? source .bash_profile #?让修改的环境变量生效 ? nios2-linux-gcc –v #?查看是否安装好了,打印出版本信息 ? 编译uClinux 交叉编译环境安装好以后,就可以编译uClinux了。 首先到/pub/uClinux/dist/?下载一个uClinux的代码包。 然后下载uClinux-distnios2-02.diff.gz?软件包,这是把uClinux移植到niosii?CPU上的补丁。 在linux下使用如下命令:? #?使用普通用户登陆 cd?~ #?解压uClinux代码 tar?jxf?~/download/uClinux-dis

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档