完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
是否有关于如何在ML605板上从Platform-flash-XL自动运行应用程序的教程?
在启动时,我想让我的应用程序(简单的hello-world程序)在SDK中运行。 从我到目前为止阅读的所有文档中,我看到了所有描述如何从BIT文件制作MCS文件并将其加载到flash中的文章。 elf文件何时何地下载到闪存并自动运行? 或者我只是遗漏了一些明显的东西。 -V |
|
相关推荐
4个回答
|
|
你的程序是否使用外部存储器?
如果是这样,您需要将download.bit和.elf存储在Flash中,并使用引导加载程序将程序从Flash加载到外部存储器中。 EDK附带了一个示例引导加载程序。 一般来说,你的download.bit将从Flash的底部(地址0)开始,你的.elf将存储在它之上的某个地方。 如果可能的话,将两者放在足够远的地方,它们不共享Flash页面,因此当您想要更改两个页面时,不需要重写它们。 因此,您可以在SDK中编译一个非常小的引导加载程序应用程序,它可以完全从您的ilmb BlockRAM运行。 修改引导加载程序源以反映程序存储在Flash中的偏移量(例如0x900000)。 您使用SDK运行data2mem并使用引导加载程序初始化BlockRAM。 当这个引导加载程序运行时,它将从Flash读取你的.elf文件,以.srec格式存储,并初始化你系统中的所有内存,这正是当你按下“运行”按钮时XMD对JTAG的作用。 SDK。 使用Impact将.bit编程为Flash。 听起来你已经认识到了这一部分。 最后,您需要将.elf加载到引导加载程序将从中读取的Flash的上部区域。 我发现使用SDK中的“Program Flash”对话框最容易做到这一点。 您可以选择.elf并选中一个框以自动将其转换为.srec文件格式。 这种方法有一个警告 - 因为您正在从ilmb执行引导加载程序,所以不能将ilmb内存用于您的应用程序。 如果引导加载程序尝试将程序加载到ilmb中,它将基本上覆盖自身并停止运行。 我修改我的主程序的链接器脚本来执行来自外部存储器的所有内容 - 它使它更容易。 编辑:另一条建议......看起来你在异步模式下使用xps_emc连接到PlatformFlash。 如果这是真的,您需要在引导加载程序的开头添加一些语句,以将Platformflash从同步模式(它启动)切换到异步模式。 我很确定你可以通过XilFlash库中的两行代码复制/粘贴来完成这项工作。 我似乎记得包括整个xilflash库打破了我的BRAM预算 - 但尝试两种方式。 在原帖中查看解决方案 |
|
|
|
None
|
|
|
|
你的程序是否使用外部存储器?
如果是这样,您需要将download.bit和.elf存储在Flash中,并使用引导加载程序将程序从Flash加载到外部存储器中。 EDK附带了一个示例引导加载程序。 一般来说,你的download.bit将从Flash的底部(地址0)开始,你的.elf将存储在它之上的某个地方。 如果可能的话,将两者放在足够远的地方,它们不共享Flash页面,因此当您想要更改两个页面时,不需要重写它们。 因此,您可以在SDK中编译一个非常小的引导加载程序应用程序,它可以完全从您的ilmb BlockRAM运行。 修改引导加载程序源以反映程序存储在Flash中的偏移量(例如0x900000)。 您使用SDK运行data2mem并使用引导加载程序初始化BlockRAM。 当这个引导加载程序运行时,它将从Flash读取你的.elf文件,以.srec格式存储,并初始化你系统中的所有内存,这正是当你按下“运行”按钮时XMD对JTAG的作用。 SDK。 使用Impact将.bit编程为Flash。 听起来你已经认识到了这一部分。 最后,您需要将.elf加载到引导加载程序将从中读取的Flash的上部区域。 我发现使用SDK中的“Program Flash”对话框最容易做到这一点。 您可以选择.elf并选中一个框以自动将其转换为.srec文件格式。 这种方法有一个警告 - 因为您正在从ilmb执行引导加载程序,所以不能将ilmb内存用于您的应用程序。 如果引导加载程序尝试将程序加载到ilmb中,它将基本上覆盖自身并停止运行。 我修改我的主程序的链接器脚本来执行来自外部存储器的所有内容 - 它使它更容易。 编辑:另一条建议......看起来你在异步模式下使用xps_emc连接到PlatformFlash。 如果这是真的,您需要在引导加载程序的开头添加一些语句,以将Platformflash从同步模式(它启动)切换到异步模式。 我很确定你可以通过XilFlash库中的两行代码复制/粘贴来完成这项工作。 我似乎记得包括整个xilflash库打破了我的BRAM预算 - 但尝试两种方式。 |
|
|
|
当我执行此命令时,我的内存泄漏。
/home/mayotte/Xilinx/14.4/ISE_DS/ISE/bin/lin64/data2mem -bm system.bmm -bt system.bit -bd boot_esssai.elf output.bit 我在控制台中看到了一个错误的检查,这是最新的。 你知道我为什么会有内存泄漏吗? INTERNAL_ERROR:Data2MEM:45 - 对于'CharPtrArrayType'数据,0x019B15F8处的8个字节的存储器分配泄漏。在分配时使用的总存储器是7605个字节。源文件“StringUtils.c”,行号901。 记忆内容: 019B15F8:00 00 00 00 00 00 00 00 我有斯巴达6,我想用一个包含.elf和.bit的文件编程flash。 我认为随着影响14.4,我在电缆SPI中加载文件output.bit。 不幸的是,文件output.bit没有产生。 最好的祝福。 |
|
|
|
只有小组成员才能发言,加入小组>>
2378 浏览 7 评论
2793 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2260 浏览 9 评论
3334 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2426 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
751浏览 1评论
请问vc707的电源线是如何连接的,我这边可能出现了缺失元件的情况导致无法供电
537浏览 1评论
求一块XILINX开发板KC705,VC707,KC105和KCU1500
361浏览 1评论
1955浏览 0评论
678浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-20 12:29 , Processed in 1.288054 second(s), Total 84, Slave 68 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号