发 帖  
原厂入驻New
[问答] 正确的iMPACT配置但是SDK配置不正确是为什么?
47 IMPACT
分享
大家好。
所以我在JTAG链中有一个带有PROM和Spartan 6 LX45的定制PCB
我可以从iMPACT配置FPGA,完全没有问题。
下载的.bit文件完全是opperational。
该设计包含一个EDK microblaze项目,因此我们使用SDK编写嵌入式C.当我以前使用Digilent Nexys3板时,我可以通过SDK编程FPGA(FPGA架构配置.bit和SDK .elf)并使用
micrlaze UART IPcore将microblaze STDIO输出到SDK终端窗口。
然而,SDK报告(一个相当模糊的错误),即:
无法下载位文件
无法使用比特流C对设备2进行编程:/ Users /.../ SDK / SDK_Workspace / XpsMBprjFlites_hw_platform_1 / download.bit
程序FPGA失败
由于这种模糊的错误,很难看出问题出在哪里。
我不认为这是配置文件(.bit),因为iMPACT可以配置这个没问题,适当的LED,扩展头信号和时钟都被激活。
这可能是关于微型BRAMs的程序问题吗?
我应该注意两个软件配置流之间的.bit文件完全相同,所以它必须是以下两者之一:
- SDK编程设置
- 链接器脚本,.elf编译设置等
现在.elf实际上是一个工作的.c文件,它是作为XUP教程的一部分开发的,在这种情况下通过UART对一些LED和STDIO输出进行通用闪存。
这在Digilent Nexys 3上运行正确,具有相同的Microblaze EDK设计。
有什么想法吗?
谢谢,艾德
0
2020-5-29 16:52:04   评论 分享淘帖 邀请回答
3个回答
解决了:
首先,我检查了XMP控制台终端,在这种情况下显示了更多细节“错误的设备”,因为Digilent使用LX16,很明显该项目选择了错误的.bit(无论是否成功导出到SDK
“)。
对此的解决方案是,尽管ISE / EDK通过比特流导出到SDK,但SDK本地将.bit文件命名为system.bit或download.bit。
在创建硬件平台规范时,您可以正确地获取EDKprj.xlm,但是我需要强制它获取正确的.bit文件,尽管.bmm文件很好。
完成后,我重新创建了BSP并使用此BSP和HPS文件重新编译了.elf。
现在这样做可以让FPGA配置继续进行,在工作台上.bit显然可以正确加载。
我希望这有助于其他人。
埃德
在原帖中查看解决方案
2020-5-29 17:04:21 评论

举报

附加说明:
- .elf通过elfcheck没有任何问题,并在Digilent Nexys 3上正常运行
- 链接器脚本与EDK项目相同,与在Digilent Nexys 3上正确运行的相同
- 手动SDK JTAG设置: 
- PROM XCF16P IDcode 0xF5058093,JTAG IR长度= 16位 
- FPGA S5 LX45 IDcode 0x04008093,JTAG IR长度= 6位(DS表示0xX4008093,但此自动完成为0x0,但由于DS指示X为4位,可以忽略,我将它们设置为0)
然而,这也不起作用,返回与上面相同的错误。
谢谢。
埃德
2020-5-29 17:19:58 评论

举报

解决了:
首先,我检查了XMP控制台终端,在这种情况下显示了更多细节“错误的设备”,因为Digilent使用LX16,很明显该项目选择了错误的.bit(无论是否成功导出到SDK
“)。
对此的解决方案是,尽管ISE / EDK通过比特流导出到SDK,但SDK本地将.bit文件命名为system.bit或download.bit。
在创建硬件平台规范时,您可以正确地获取EDKprj.xlm,但是我需要强制它获取正确的.bit文件,尽管.bmm文件很好。
完成后,我重新创建了BSP并使用此BSP和HPS文件重新编译了.elf。
现在这样做可以让FPGA配置继续进行,在工作台上.bit显然可以正确加载。
我希望这有助于其他人。
埃德
2020-5-29 17:28:45 评论

举报

只有小组成员才能发言,加入小组>>

93个成员聚集在这个小组

加入小组

创建小组步骤

关闭

站长推荐 上一条 /7 下一条

快速回复 返回顶部 返回列表