完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
感谢您查看我的帖子。
让我来描述我的项目: 我使用的ML605板具有32 MB BPI闪存,由两个16 MB分区组成:Rev0是一个Golden bitstream(一个启动控制器),Rev1是一个实验比特流。 电路板启动,通过以太网接收实验比特流并将其写入插槽2,然后使用ICAP切换到插槽2(多重启动)。 引导控制器系统是Microblaze-AXI基础系统。 当我在独立模式下执行操作时,此设置有效。 实验比特流加载。 当我使用JPROGRAM通过iMPACT热复位电路板时,它可以工作,并且启动控制器恢复正常。 当我将同一系统移动到Linux系统(MB-AXI的小端交叉编译)时,IPROG命令卡住并挂起内核并且不切换到插槽2.暖RESET也不起作用。 我尝试了以下三种方法: *修改Linux树中的reset.c以进行ICAP切换 *用户空间驱动程序来设置ICAP寄存器。 *内核驱动程序来做ICAP多重启动 所有这些导致Linux内核挂起。 我的IPROG序列如下所示: iprog_sequence [iter ++] = 0xFFFFFFFF; iprog_sequence [iter ++] = 0xAA995566; iprog_sequence [iter ++] = 0x20000000; iprog_sequence [iter ++] = 0x30020001; // WBSTAR地址iprog_sequence [iter ++] =(u32)((u32)(1 iprog_sequence [iter ++] = 0x30008001; iprog_sequence [iter ++] = 0x0000000F; iprog_sequence [iter ++] = 0x20000000; 我错过了什么吗? Linux环境中的IPROG是否需要与Standalone不同的东西? 我很感激这方面的任何见解或想法。 再次感谢您的期待。 拉胡尔 |
|
相关推荐
2个回答
|
|
嗨,
您的命令序列看起来正确。 有些事情你应该检查 - 你能用ICAP回读IDCODE吗? 尝试此操作以验证您的CS和RDWR时序是否正确。 板上 - RS引脚是如何设置的? 这些将解决您从中加载的问题。 如何设置多重引导地址? 这是在位文件中正确设置的吗? 当系统出现故障时,检查状态寄存器是否符号iMPACT - 调试 - >读取设备状态 - 这将告诉您有关BOOTSTS寄存器失败的一些信息 -P |
|
|
|
很抱歉延迟回复。
我忙于其他一些项目。 我能够使用ICAP读取BOOTSTS和状态寄存器,我注意到在Linux下独立发送相同的帧,Linux系统进入后备模式(FALLBACK位高) 另外我注意到我无法使用XMD访问Fallback比特流上的Microblaze - >“connect mb mdm”。 使用自定义硬件和FIFO传递IPROG而不是使用软件和驱动程序传递它是一个更好的主意吗? 有什么线索吗? 谢谢 RRS ********** 添加 ************* 我在ImPACT中看到一个错误“BPI地址计数器包错误”位高,我想知道什么是潜在原因? |
|
|
|
只有小组成员才能发言,加入小组>>
2384 浏览 7 评论
2800 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2264 浏览 9 评论
3336 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2431 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
759浏览 1评论
请问vc707的电源线是如何连接的,我这边可能出现了缺失元件的情况导致无法供电
548浏览 1评论
求一块XILINX开发板KC705,VC707,KC105和KCU1500
371浏览 1评论
1966浏览 0评论
685浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-25 22:09 , Processed in 1.211542 second(s), Total 79, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号