UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

取消
显示结果 
搜索替代 
您的意思是: 
Highlighted
Contributor
Contributor
174 次查看
注册日期: ‎05-09-2017

老版本 FPGA MCS 文件下载时出现错误,是什么原因?

Hi 您好

最近我司的一款早年开发的设备中,有三个FPGA的程序需要更新,主FPGA1是XC3S700AN-FGG484,从FPGA2是XC5VSX95T-FFG1136,FPGA3是XC5VSX95T-FFG1136。三个FPGA采用Master SPI配置方式,由一个第三方EEPROM  128M来配置三个FPGA。使用ISE环境,IMPACT配置。

现在三个FPGA的bit文件都已经生成了,MCS文件也正常生成。

但是在下载的时候,在FPGA1的FLASH位置添加配置文件后出现了如下图的错误提示:

 

无论选择Yes还是NO下载,都会显示program failed。

但是我搜索了一下,没有找到有关如下error 信息的解决方法,能否帮忙解决,是什么问题导致的?

 

 

 

err1.PNG
0 项奖励
7 条回复
Community Manager
Community Manager
153 次查看
注册日期: ‎08-31-2011

回复: 老版本 FPGA MCS 文件下载时出现错误,是什么原因?

@lixw

你选择的SPI的配置是x1模式吗?

bit文件生成的spi配置模式是x4模式还是x1模式?

 

-------------------------------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------------------------------
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
-------------------------------------------------------------------------------------------------
0 项奖励
Contributor
Contributor
109 次查看
注册日期: ‎05-09-2017

回复: 老版本 FPGA MCS 文件下载时出现错误,是什么原因?

@zhendon  Hi 您好

由于这个版本的工程是之前的工程师开发的,我比较怀疑关于buswidth部分他是用的tcl命令生成的(约束文件我看了一下没有相关设置),详细信息不太能找到了。

我看了一下现有工程的配置,很奇怪,里面没有关于SPI width的选项,但是我看网络上别人的该配置界面是有-g SPI_buswidth这个选项的。

我的生成配置见下图,FPGA1和FPGA2的。

 

有几个问题比较想知道,

0,出现这种问题的主要原因是什么?

1,怎么在ISE下设置SPI配置模式?

2,三个FPGA共用一个flash 和mcs的话,configuration rate 是不是应该选择一样的 啊?

3, 后面两个图是我在impact里面想FLASH中添加mcs文件出现的问题,当在FP1添加时,没有显示width选项,在FP2添加时,显示了width选项。

(不过按照道理来说,在我这个配置模式下,FLASH--〉FP1--〉FP2--〉FP3,应该在FP1位置添加SPI flash就可以吧?)

F1.PNG
F2.PNG
F1 test.PNG
F2 test.PNG
0 项奖励
Community Manager
Community Manager
98 次查看
注册日期: ‎08-31-2011

回复: 老版本 FPGA MCS 文件下载时出现错误,是什么原因?

@lixw

0,出现这种问题的主要原因是什么?

出现这个问题的原因就是在impact中选了spi的型号以后,应该要有一个框,选择spi bus width,但是现在没有出现,所以这个值就是默认的0,但是你的mcs里的spi的位宽应该是1,所以不匹配。不过应该选择ignore的话,是可以继续编程这个SPI flash的。

1,怎么在ISE下设置SPI配置模式?

我看了你的器件,分别是s3和v5的。应该是器件本身不支持spix4,只有spix1的关系。你看到有-g spi_buswidth 选项的应该器件是s6.或者早期的7系列器件。

 

2,三个FPGA共用一个flash 和mcs的话,configuration rate 是不是应该选择一样的 啊?

三个FPGA共用一个flash的话,就是serial daisy chain的方式,你需要在生成mcs的时候按照顺序指定三个fpga的bit文件,然后整合在一个mcs里。然后flash只需要链接在第一个fpga即可,第一个的fpga的配置模式是master spi。其他的fpga配置模式是slave serial。

具体信息,请参考第一个fpga的configuration的相关手册,v5的话是UG360,S3的话是UG332.

另外,建议把V5放在第一个,因为DOut的输出bit数量有限制。

3, 后面两个图是我在impact里面想FLASH中添加mcs文件出现的问题,当在FP1添加时,没有显示width选项,在FP2添加时,显示了width选项。

(不过按照道理来说,在我这个配置模式下,FLASH--〉FP1--〉FP2--〉FP3,应该在FP1位置添加SPI flash就可以吧?)

对,第二个显示了选项,下拉的菜单里有x1和x4?还是只有x1?

-------------------------------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------------------------------
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
-------------------------------------------------------------------------------------------------
0 项奖励
Contributor
Contributor
87 次查看
注册日期: ‎05-09-2017

回复: 老版本 FPGA MCS 文件下载时出现错误,是什么原因?

@zhendon  Hi 您好 十分感谢你的回复!

问题回答如下:

1,在弹出X0 X1不匹配的问题之后,可以继续编程,但是是编程失败的,试过多次,还是失败。

2,我在别人的帖子上看到的有-g SPI_buswidth,他没有写明是什么型号,可能跟您说的一样。

3,三个FPGA的配置方式应该跟您说的相同。

“另外,建议把V5放在第一个,因为DOut的输出bit数量有限制”,这个是指什么啊?是说生成MCS时候的bit添加顺序嘛?

4,添加FPGA配置文件的时候,虽然FPGA2/3有width选项,但是选项里只有X1。

 

另外还有几个问题想问一下,

1,因为本次是我直接点击generate program file生成bit的,之前开发的话有可能是使用命令行来生成的,所以导致可能有些设置不同。

有没有可能是生成bit的设置不同,导致FPGA1添加配置文件的时候bus width不匹配?(比如默认生成bus width是0?)

2,所以我现在准备使用命令行来生成bit文件,不过我之前没怎么用过命令行。。

现在根据user guide ug628 能够生成根据ncd 和pcf文件生成bit文件,但是在命令中添加spi_buswidth设置的时候,总是提示错误。。是不是我哪里写错了。。能不能帮忙纠正一下?

生成bit命令:bitgen FPGA2_TOP.ncd FPGA2_TOPbit FPGA2_TOP.pcf

生成buswidth=1的命令:bitgen -g SPI_buswidth;1 FPGA2_TOP.ncd fpga2_topbit.bit FPGA2_TOP.pcf(错误)

3,生成MCS时候的截图如图1,FPGA1/2/3的bit是按顺序添加的,生成MCS也正常。

生成MCS后,扫描链,出现了三个FPGA。(理论上配置方式见图三)

然后是在FPGA1上点击添加SPI FLASH吗?

4,现在整个问题我判断问题可能出在1,bit生成设置,2,bi-->MCS设置(FPGA1/2/3 bit放置顺序?),3,下载时候问题。

能不能麻烦帮忙锁定一下问题,和解决方法?

 

 

之前从来没进行过这种实验。。我的经验很少。。。还是拜托帮忙解决啊!

十分感谢!!!

 

 

 

 

 

g1.PNG
g2.PNG
g3.PNG
0 项奖励
Community Manager
Community Manager
61 次查看
注册日期: ‎08-31-2011

回复: 老版本 FPGA MCS 文件下载时出现错误,是什么原因?

@lixw

哇塞,好多问题。。。

3,三个FPGA的配置方式应该跟您说的相同。

“另外,建议把V5放在第一个,因为DOut的输出bit数量有限制”,这个是指什么啊?是说生成MCS时候的bit添加顺序嘛?

不是,一般在设计阶段,我们建议把新的大容量的器件放在前面。因为Dout口的输出限制。但是一般不会有什么问题。

你在生成mcs的时候一定要按照物理的位置顺序来添加。

4,添加FPGA配置文件的时候,虽然FPGA2/3有width选项,但是选项里只有X1。

嗯,正常情况下应该是这样的。

--------------------------------------------------

另外还有几个问题想问一下,

1,因为本次是我直接点击generate program file生成bit的,之前开发的话有可能是使用命令行来生成的,所以导致可能有些设置不同。

有没有可能是生成bit的设置不同,导致FPGA1添加配置文件的时候bus width不匹配?(比如默认生成bus width是0?)

你尝试一下batch的命令呢?请参考一下UG628,然后参考命令promgen。

2,所以我现在准备使用命令行来生成bit文件,不过我之前没怎么用过命令行。。

现在根据user guide ug628 能够生成根据ncd 和pcf文件生成bit文件,但是在命令中添加spi_buswidth设置的时候,总是提示错误。。是不是我哪里写错了。。能不能帮忙纠正一下?

生成bit命令:bitgen FPGA2_TOP.ncd FPGA2_TOPbit FPGA2_TOP.pcf

生成buswidth=1的命令:bitgen -g SPI_buswidth;1 FPGA2_TOP.ncd fpga2_topbit.bit FPGA2_TOP.pcf(错误)

这个问题应该和bitgen没有关系,应该是promgen有关系。

另外,你用bitgen的时候具体报了什么错误能告诉我么。。。

3,生成MCS时候的截图如图1,FPGA1/2/3的bit是按顺序添加的,生成MCS也正常。

生成MCS后,扫描链,出现了三个FPGA。(理论上配置方式见图三)

然后是在FPGA1上点击添加SPI FLASH吗?

对哦。

4,现在整个问题我判断问题可能出在1,bit生成设置,2,bi-->MCS设置(FPGA1/2/3 bit放置顺序?),3,下载时候问题。

能不能麻烦帮忙锁定一下问题,和解决方法?

你如果三个FPGA的话,那么三个fpga的done信号是连在一起的么,如果连在一起的话,那么要先分离。让fpga1 单独的控制done信号。

另外你如果报错的话,能否把impact里应该在最下面有个信息窗口的吧,能把这个额信息窗口里的log完整的放到论坛上来么

 

-------------------------------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------------------------------
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
-------------------------------------------------------------------------------------------------
0 项奖励
Contributor
Contributor
18 次查看
注册日期: ‎05-09-2017

回复: 老版本 FPGA MCS 文件下载时出现错误,是什么原因?

@zhendon Hi 您好,

十分感谢您的回复!实在不好意思提出这么多问题。。。

目前问题已经解决了。。解决方法是找到旧版本的iMpact软件,使用Direct SPI Configuration模式。。

虽然还是不太清楚为什么正常的SPI FLASH Program方式为什么会出错。。。

您那里有想到什么可能的原因嘛?

 

图片是log信息(一个窗口截不全,两个窗口合并了一下)

 

 

1210.PNG
0 项奖励
Community Manager
Community Manager
13 次查看
注册日期: ‎08-31-2011

回复: 老版本 FPGA MCS 文件下载时出现错误,是什么原因?


@lixw  已写:

@zhendon Hi 您好,

十分感谢您的回复!实在不好意思提出这么多问题。。。

目前问题已经解决了。。解决方法是找到旧版本的iMpact软件,使用Direct SPI Configuration模式。。

虽然还是不太清楚为什么正常的SPI FLASH Program方式为什么会出错。。。

您那里有想到什么可能的原因嘛?

 

图片是log信息(一个窗口截不全,两个窗口合并了一下)

 

 


从这个结果来看,应该是烧写已经完成了,你看有verification completed。说明mcs的内容已经烧写到flash。回读也正确。

 

失败的原因是Done信号没有变高。你试试看烧写完SPI flash以后,按下program_b或者重启一下板卡,是否能够加载成功。

-------------------------------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------------------------------
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
-------------------------------------------------------------------------------------------------
0 项奖励