打印

bootloader的启动问题

[复制链接]
5149|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ailanqin|  楼主 | 2012-3-21 11:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
新手诚心求教:
最近在做xilinx microBlaze方面的项目,由于应用程序有点大,需要把它放到外部的norflash里面,用bootloader来引导。
看了很多参考资料,方法都是把bootloader和硬件配置.bit文件合在一起,然后把它放到PROM里面。当系统上电时,bootloader程序自动加载到片内的BRAM中运行,实现程序的引导功能。
问题如下:1  bootloader和硬件配置文件合在一起的具体方法()。
              2  系统上电时,存放在PROM中的bootloader是怎样跳到BRAM 中的,看到的都说自动加载?

相关帖子

沙发
zuphen| | 2012-3-21 17:31 | 只看该作者
本帖最后由 zuphen 于 2012-3-21 17:36 编辑

同关注,虽然没有做过这方面的工作,但是当初在学的时候看了一些资料,依稀有些映象,下面开始无责任回答(嘿嘿,无责任表我不保证对,仅供参考)。
第一个问提,你是把microBlaze作为顶层设计来用,还是作为顶层设计下的一个子模块用?
关于第二个问题,好像是这样的:
bootload和bit文件组合生成一个用来配置FPGA的bit文件,这个文件用来配置FPGA的硬件部分,并且在配置的同时把bootload写入到BRAM中(配置FPGA时,可以指定BRAM中的内容的,比如说是microBlaze,或者是其他数据)。完成配置以后,FPGA从BRAM中复位地址开始执行命令,这些命令将指示microBlaze到PROM中找到相应的代码,再读到BRAM中执行。
我先写着,回去再看看资料,不一定正确。

使用特权

评论回复
板凳
zuphen| | 2012-3-22 10:28 | 只看该作者
LZ可以去看看xapp482这个文档这个文档有点老。
现在好像用SREC镜像做了。
你在EDK中新建一个工程,选择SREC bootloader的模板,看看里面是怎么写的,有助你理解这个加载过程。

使用特权

评论回复
地板
ailanqin|  楼主 | 2012-3-22 11:11 | 只看该作者
感谢楼上的大神!
我是把microBlaze作为顶层设计来用的
对于第二个问题还是有些疑问,SREC bootloader以前我已经看过了,它只是完成了搬代码和跳转到指定地址开始执行的功能,这个我都能理解。就是想了解bootload和bit文件组合生成一个用来配置FPGA的bit文件之后,系统上电时,bootload是怎样跳转到BRAM开始执行的?
根据楼上的回复我可以这样理解么,bootloader是在硬件配置的过程中由FPGA把它写入到BRAM的?
(我是做软件的,过来客串做下这个,硬件哥也是刚接触这个,他不知道怎么把bootload和bit文件组合生成一个用来配置FPGA的bit文件,坑爹啊。。求教!)

使用特权

评论回复
5
zuphen| | 2012-3-22 11:20 | 只看该作者
“bootloader是在硬件配置的过程中由FPGA把它写入到BRAM的”——是这样。

PS:看我的帐号也不是大神啊,去看看猴哥和其他大神们的帐号,那才叫大神,话说猴哥好久没露面了~~

使用特权

评论回复
6
summerxue| | 2012-3-26 00:40 | 只看该作者
你用EDK做设计时,EDK自己就可以把bootloader和bit合并在一起,不用你操心。
系统上电后,bootloader已经在FPGA配置的同时装入到BRAM中了,而系统设计时,BRAM地址就是处理器的入口地址,也就自动运行了。

使用特权

评论回复
7
ailanqin|  楼主 | 2012-3-26 11:27 | 只看该作者
谢谢楼上的,此问题已经解决了
前面还在纠结怎么把bootloader和bit合并在一起,后来发现工具里面就直接有这个功能:L

使用特权

评论回复
8
foreverly| | 2012-3-26 16:33 | 只看该作者
:handshake

使用特权

评论回复
9
sunmax| | 2012-4-6 18:26 | 只看该作者
7# ailanqin
???这个功能在哪里呢?3q

使用特权

评论回复
10
ailanqin|  楼主 | 2012-4-9 09:55 | 只看该作者
XPS里面的project工具栏里面有个select ELF file选项 编译完应用程序 直接使用这个就可以了
我装的是ISE 12.3  之前的版本有没这个功能我就不知道了!

使用特权

评论回复
11
wangjunjun2005| | 2012-11-29 16:59 | 只看该作者
2# zuphen


兄弟,是否查到相关资料,如果查到是否可与我分享下,我也遇到相关头痛问题。邮箱wangjunjun2005@163.com,qq:411544056

使用特权

评论回复
12
GoldSunMonkey| | 2012-11-29 20:18 | 只看该作者
2# zuphen


兄弟,是否查到相关资料,如果查到是否可与我分享下,我也遇到相关头痛问题。邮箱wangjunjun2005@163.com,qq:411544056
wangjunjun2005 发表于 2012-11-29 16:59
按楼上的做即可。

使用特权

评论回复
13
wangjunjun2005| | 2012-11-30 08:12 | 只看该作者
12# GoldSunMonkey

猴哥,我的顶层设计是逻辑(verilog),即ise调用软核,这样也行?目前本人没有全部高清这么一个过程,请指导

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

14

帖子

1

粉丝