FPGA不能下载 联系客服

发布时间 : 星期日 文章FPGA不能下载更新完毕开始阅读

现在我们只能换FPGA芯片了,经我们小心翼翼地再次飞线,最终将芯片焊好后,一步一步地测,电源正常、硬件下载正常、PLL输出正常、nios下载正常。至此我们的工作算是暂告一段落。

在以上调试过程中,还遇到了一些其它的问题。 在nios里下载软件程序时,会出现

assertion \== STATE_DEBUG\failed: file \line 157 Using cable \[USB-0]\device 1, instance 0x00 Pausing target processor: not responding.

Resetting and trying again: D:\\altera\\81\\nios2eds\\bin\\nios2-download: line 594:

6300 Hangup nios2-gdb-server --instance 0 --tcpport none --wri te-pid ./Debug/nios2-download.pid ./Debug/GigaCard.elf.srec 这个问题在我调试的过程中偶尔会出现,而且是没有规律的,也正是这个问题,总是阻碍着我们前进的脚步,后来我们发现一个程序本来是可以下到onchip-memory中的,后来同样的程序无论如何都下不进去了,于是我们基本可以确定问题出在了硬件。对于有控制器的系统,晶振肯定是非常重要的,于是我们测晶振的输出是不是正常的,结果是有时正常有时不正常,这说明晶振虚焊了,经过我们小宝同学精心补焊,上面那个问题就再也没有出现过了。 在nios里下载软件程序时,出现

Using cable \[USB-0]\device 1, instance 0x00 Pausing target processor: not responding. Resetting and trying again: FAILED Leaving target processor paused

这个错误在可编程部分的原因大多是引脚分配错误。网上有人说要在quartus将没有用到的FPGA的引脚设为“input tri-state”,但是我并没有发现这是必须的,可能只是一些特定地器件需要这样设置。

经过这次调试,感觉自己增长了不少调试经验,虽然之前调试过51板子,但是画那块板子时,参考电路有很多,所以调试起来比较顺利,没出太多问题。这次就不同了,问题出了一大堆,真有点不知所措。总结一下调试有主控芯片的电路,首先要保证电源没有问题,不仅是电源模块地输出没有问题,还有芯片地电源不能接错,因为电源一错,所以一切都要玩儿完,就像我们这次就因为电源的问题烧了几百块钱的芯片。在电源没有问题的情况下,就要看看主控芯片的晶振有没有问题,很多问题都是晶振引起的,我之前调试51板子的时候也是因为用了一个已经坏掉的晶振导致不能下载程序。遇到硬件方面的问题时需要一点一点地排查,在确定前面的模块是正确的情况下再进行后面的部分。

关于FPGA的调试,我想要分为以下几步,首先要保证FPGA芯片的几个电源是正确的,然后先用一个最简单地用硬件描述语言写的小程序测试FPGA芯片是否能够正常下载并工作正常。然后用nios建立软件工程并把程序放在onchip-memory上下载。接下来再继续调试外围的电路。

在nios里把程序放到onchip-memory上进行编译时,很多时候都会遇到错误,提示onchip-memory的空间不足。这是因为程序是用main作为主函数,这样的话nios会在程序进入main函数前进行一些系统的初始化工作,这做占用不少的空间。要在onchip-memory上跑程序,最好是采用alt_main作为主函数,例如采用下面的程序:

#include #include #include #include #include \

#include \#include \#include \

#include \

int main (void) __attribute__ ((weak, alias (\int alt_main(void) {

alt_irq_init (ALT_IRQ_BASE); alt_sys_init();

alt_io_redirect (ALT_STDOUT, ALT_STDIN, ALT_STDERR); while(1) {

IOWR(TEST_PIO_BASE,0,1); usleep(1000);

IOWR(TEST_PIO_BASE,0,0); usleep(1000); }

return 0; }

我在用xilinx的fpga时遇到一个非常头痛的问题,我的fpga通过jtag口配置非常不稳定,经常下到一半fail,基本上都是fail在verify那个环节,另外也经常建立不了扫描链,错误提示如下:

ERROR: IMPACT: 477 The bsdl for device ?unknown? is out of date. Please check your installation. (我的安装没有问题,因为有的时候很顺,两天内几十次的下载都没有报过错)

ERROR:iMPACT:583 - '1' The IDCODE read from the device does not match the IDCODE in the BSDL file

我的目标板上用了一片xc3s250e和一片xcf04s,下载线是parallel cable 3,软件是impact 8.2.03i

另外网上有很多人遇到过这个问题,xilinx的官方网站上也有就这个问题回答过,上面说是jtag信号的完整性问题,但是我并不认为只是信号完整性问题,因为jtag的速率很慢(我的tck为200kHz),而且信号边沿也不是很快,所以信号完整性的问题不大,同时我也测试了我的信号,其信号质量非常好,所以我就很纳闷了,另外网上遇到这个问题的一些人说用parallel cable 4 就不会有这

个问题,也有人说用parallel cable 3配置spartan-3e的fpga能成功是运气好,现在我也有这种感受,我的jtag配置电路和xilinx的demo板的电路一样,即为了匹配jtag上的3.3v和fpga的vccaux(2.5v),我在tdi、tms、tck三个信号上均串接了100ohm的电阻,基本上就是这些信息,请各位大侠各抒己见

xilinx,jtag配置问题

我在用impact8.2i配置xc3s250e时经常报错,错误代码如下:

\- The BSDL for device 'unknown' is out of date.\

h*d2p??W??d,T

\the IDCODE in the BSDL file.\??O3r*?8]??u1Y??f-`??E??q 以上两种错误经常出现,而且有时我配置fpga或者flash时会在进行到一半时报错,错误代码如下:

配置flash时:impact:2129

我用impact中的idcode looping测试时也会报错,所以怀疑我的信号问题,但是我抓出来的信号质量非常好,因为jtag的频率很低,边沿也比较慢,所以我就比较纳闷了,信号完整性很好,那是什么地方出问题了呢,请个位大侠指点 mu_naiyi 2007-8-24 09:27 没有人遇到过这种问题吗? waotang 2007-8-24 09:44

jtag链上是不是有别的厂家的jtag器件???q f??s q??Z\