完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
大家好
我是FPGA编程的初学者。 现在我遇到了一个我无法解决的问题:我有一个文件和一个mcs文件。 通过JTAG配置设备后,我的程序可以正常运行。 但是当我将mcs编程到我的闪存(SPI闪存)并重新设置我的板后,我的程序的一部分无法运行。(没有任何输出。) 我无法想出问题所在。 如果我的代码有缺点,为什么当我通过JTAG配置但无法通过从闪存加载时它可以正常工作? 当iMPACT生成mcs文件时,它能遇到一些未知问题吗? 以上来自于谷歌翻译 以下为原文 Hi, all I'm a beginner in FPGA programming. Now I have met a problem which I can't solve: I have a bit file and a mcs file. After I configure my device through JTAG, my program can run correctly. But after I programming the mcs to my flash(SPI flash) and reseting my board, part of my program can't run.(There is nothing output.) I can't think out what the problem is. If my code has drawback, why it can work correctly when I configure it through JTAG but can not through loading from flash? Can it met some unknown problem when iMPACT generate the mcs file? |
|
相关推荐
3个回答
|
|
首先,Impact仅转换您提供的.bit文件以生成.mcs文件。
它并没有真正“创建”.mcs文件。 所以要检查的地方是bitgen(“生成编程文件”),其选项包括启动时钟。 使 确保启动时钟设置为CCLK(默认情况下应设置为此值)。 切勿将启动时钟设置为 JTAG即使您计划直接使用Impact对零件进行编程。 使用JTAG编程时,Impact 自动将启动时钟更改为JTAG,因此最好将其设置为CCLK以生成PROM文件。 除此之外,请确保在准备.mcs文件时Impact正在使用正确的闪存类型设置。 最后,如果这个板还没有使用过其他一些.mcs文件,你应该确保 模式(M0,M1,M2)引脚和变量选择(VS0,VS1,VS2)引脚已正确设置为主SPI模式。 查看FPGA系列的配置指南,了解如何完成此操作。 如果你正在使用eval 或演示套件,电路板上可能有跳线需要设置为从闪存配置。 检查 该套件的硬件用户指南。 - Gabor - Gabor 在原帖中查看解决方案 以上来自于谷歌翻译 以下为原文 First, Impact only translates the .bit file you give it to make the .mcs file. It doesn't really "create" the .mcs file. So the place to check is bitgen ("Generate Programming File") whose options include the startup clock. Make sure that the startup clock is set to CCLK (should be set to this by default). Never set the startup clock to JTAG even if you plan to program the part directly with Impact. When using JTAG programming, Impact automatically changes the startup clock to JTAG, so it's best to leave it set to CCLK for generating PROM files. Other than that, make sure that Impact is using the correct flash type settings when preparing the .mcs file. Finally, if this board has not already worked with some other .mcs file, you should make sure that the Mode (M0, M1, M2) pins and Variant Select (VS0, VS1, VS2) pins are properly set for master SPI mode. Check the Configuration Guide for your FPGA family to see how this is done. If you're using an eval or demo kit, there may be jumpers on the board that need to be set to configure from flash. Check the kit's hardware user guide. -- Gabor -- GaborView solution in original post |
|
|
|
首先,Impact仅转换您提供的.bit文件以生成.mcs文件。
它并没有真正“创建”.mcs文件。 所以要检查的地方是bitgen(“生成编程文件”),其选项包括启动时钟。 使 确保启动时钟设置为CCLK(默认情况下应设置为此值)。 切勿将启动时钟设置为 JTAG即使您计划直接使用Impact对零件进行编程。 使用JTAG编程时,Impact 自动将启动时钟更改为JTAG,因此最好将其设置为CCLK以生成PROM文件。 除此之外,请确保在准备.mcs文件时Impact正在使用正确的闪存类型设置。 最后,如果这个板还没有使用过其他一些.mcs文件,你应该确保 模式(M0,M1,M2)引脚和变量选择(VS0,VS1,VS2)引脚已正确设置为主SPI模式。 查看FPGA系列的配置指南,了解如何完成此操作。 如果你正在使用eval 或演示套件,电路板上可能有跳线需要设置为从闪存配置。 检查 该套件的硬件用户指南。 - Gabor - Gabor 以上来自于谷歌翻译 以下为原文 First, Impact only translates the .bit file you give it to make the .mcs file. It doesn't really "create" the .mcs file. So the place to check is bitgen ("Generate Programming File") whose options include the startup clock. Make sure that the startup clock is set to CCLK (should be set to this by default). Never set the startup clock to JTAG even if you plan to program the part directly with Impact. When using JTAG programming, Impact automatically changes the startup clock to JTAG, so it's best to leave it set to CCLK for generating PROM files. Other than that, make sure that Impact is using the correct flash type settings when preparing the .mcs file. Finally, if this board has not already worked with some other .mcs file, you should make sure that the Mode (M0, M1, M2) pins and Variant Select (VS0, VS1, VS2) pins are properly set for master SPI mode. Check the Configuration Guide for your FPGA family to see how this is done. If you're using an eval or demo kit, there may be jumpers on the board that need to be set to configure from flash. Check the kit's hardware user guide. -- Gabor -- Gabor |
|
|
|
感谢您的快速回复和进步。
我查了一下你说的那些东西。 它们和你说的一样。 所以我现在很困惑。 今天,我从ISE安装的路径(不是从ISE的窗口)打开了IMPACT,并重新创建了一个mcs文件并将其配置到我的闪存,然后我的主板有信号输出,在主单线附近只有一些杂散。 也许我的代码仍有一些缺点。 另外,我不知道如何在UCF文件中添加约束。 我的约束依赖于什么? 我怎么知道何时应该使用约束来优化我的设计? 看待。 以上来自于谷歌翻译 以下为原文 Thanks for your quick reply and advances. I checked those items you said. And they are same with what you said. So I'm confused now. Today, I opened the IMPACT from the path ISE installed ( not from the window of ISE ), and recreated a mcs file and configure it to my flash, then my board has signal output which just has some stray near the master single tone. Maybe my code still has some drawback. In addition, I don't know how to add constraints in UCF file. What my constraints depend on? How could I know when I should use constraints to optimize my design? Regard. |
|
|
|
只有小组成员才能发言,加入小组>>
2429 浏览 7 评论
2830 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2298 浏览 9 评论
3378 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2468 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
1303浏览 1评论
请问vc707的电源线是如何连接的,我这边可能出现了缺失元件的情况导致无法供电
592浏览 1评论
求一块XILINX开发板KC705,VC707,KC105和KCU1500
455浏览 1评论
2010浏览 0评论
736浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-27 13:58 , Processed in 1.260074 second(s), Total 47, Slave 42 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号