浮华一生 发表于 2013-10-25 16:12:02

XILINX 的DONE 始终拉不高!求解...


RT, 几块板子都这样,只有一块板子能拉高,上拉电阻用的4.64K. 其他均不能拿到,JTAG 能正常使用,如果将程序烧写到 SPI Flash 中,虽然最后因为Done不能拉高导致编程失败,但是重新上电,程序也能运行。但是始终是个隐患,上拉电阻从几十到100K的都试过,都不能拉高! 求解....




这个是原理图,DONE上面,并没有诸如LED之类的,是直接的上拉电阻。

tangkuan660 发表于 2013-10-25 16:38:36

xilinx的ISE里面在生成BIT文件时,设置DONE信号在配置完成后自动拉高。好像有些芯片在不设置时候不会拉高,楼主可以试下。

wye11083 发表于 2013-10-25 16:48:05

tangkuan660 发表于 2013-10-25 16:38 static/image/common/back.gif
xilinx的ISE里面在生成BIT文件时,设置DONE信号在配置完成后自动拉高。好像有些芯片在不设置时候不会拉高, ...

对不起,DONE不变高(有上拉)是配置出错了。检查配置电路。

浮华一生 发表于 2013-10-28 11:59:06

本帖最后由 浮华一生 于 2013-10-28 12:02 编辑

wye11083 发表于 2013-10-25 16:48 static/image/common/back.gif
对不起,DONE不变高(有上拉)是配置出错了。检查配置电路。

下载能拉高了,但是使用处理器去配置XILINX 时,程序传送完后,DONE 拉不高,FPGA 也没程序,不知道是怎么回事啊!?配置时序:
1:拉低 program 引脚,检测init 引脚,等待Init 引脚为低。
2:等待5ms 拉高program引脚,检测Init 并等待它为高。
3:拉低 RDWR 等待2ms,拉低 CSI。
4:开始写入 Bin 文件。
5:bin 文件写入完成,检测DONE 引脚,并等待其为高。(等待期间,一直检测init是否为低,低则 crc error,并且一直发送0xff,为FPGA提供时钟).

现在是这个DONE 一直拉不高。

dr2001 发表于 2013-10-28 12:08:34

再认真核对一下configuration的手册。

LSB/MSB的对应关系,时钟的相位,以及数据Load完毕所需要的若干个周期的空时钟。
这三点对了,直接Load Bit Stream Generator生成的BIN文件不会有问题。

浮华一生 发表于 2013-10-28 12:14:27

还有就是,文档有提到什么 Byte-swaping 之类的,都给搞糊涂了,当我使用 linux 来配置 FPGA 的时候,我应该用什么文件格式呢? 我现在用的是 Bin 格式的。然后Bit swaping 和no bit swaping都试过,不好用。不知道是不是我的时序有问题。

wye11083 发表于 2013-10-28 13:09:15

浮华一生 发表于 2013-10-28 12:14 static/image/common/back.gif
还有就是,文档有提到什么 Byte-swaping 之类的,都给搞糊涂了,当我使用 linux 来配置 FPGA 的时候,我应 ...

并行配置这个反正是很扯淡,当年我也没烧成功过,如果几秒钟加载能满足要求的话,你不妨用串行配置。虽然速度慢了点,但是保证能配置成功。

浮华一生 发表于 2013-10-28 14:44:46

dr2001 发表于 2013-10-28 12:08 static/image/common/back.gif
再认真核对一下configuration的手册。

LSB/MSB的对应关系,时钟的相位,以及数据Load完毕所需要的若干个周 ...

你所说的bin文件是否是通过Generate Programming file 里面的 -g Binary 生成的呢? 是否还需要 iMPACT 重新生成一次呢?

dr2001 发表于 2013-10-28 14:51:32

和用于JTAG的一样。

浮华一生 发表于 2013-10-28 15:41:39

dr2001 发表于 2013-10-28 14:51 static/image/common/back.gif
和用于JTAG的一样。

那个不是 .bit 文件吗? 那个可以对吧?我试试

dr2001 发表于 2013-10-28 15:54:38

wye11083 发表于 2013-10-28 13:09 static/image/common/back.gif
并行配置这个反正是很扯淡,当年我也没烧成功过,如果几秒钟加载能满足要求的话,你不妨用串行配置。虽然 ...

很简单啊。。。我当时测试了两次就能用了。。。位序问题。

wye11083 发表于 2013-10-28 16:04:25

dr2001 发表于 2013-10-28 15:54 static/image/common/back.gif
很简单啊。。。我当时测试了两次就能用了。。。位序问题。

我当时可是正反都测试N遍了,就是死活不能通过BPI下载,每次不得不通过JTAG烧写。但是奇怪的是那边来的技术人员烧的就能工作。SPI下载还没出过问题,甚至1米的裸线都能下载成功。

dr2001 发表于 2013-10-28 16:14:29

无非就是Configuration Guide没认真看全。要多多少个脉冲,Bit Generator进行什么设置,这些手册里写的按着做的话,几乎不会出错。

如果下载失败,新的片子可以用下载线读一下FGPA内部的状态寄存器,看看哪里出了问题。

浮华一生 发表于 2013-10-28 16:53:33

dr2001 发表于 2013-10-28 16:14 static/image/common/back.gif
无非就是Configuration Guide没认真看全。要多多少个脉冲,Bit Generator进行什么设置,这些手册里写的按着 ...

现在很疑惑的是,配置的时候用什么文件,哪种格式的,是否bit-swaping。



比如这个配置选项哪些是否需要开启!

rx_78gp02a 发表于 2013-10-28 22:09:44

以前在DONE脚挂了个电容,然后从flash配置无法成功,提示DONE脚不能拉高,后查手册发现DONE脚必须在两个配置时钟周期内拉高,如果负载过大或者是上啦太小都不行。望楼主参考

浮华一生 发表于 2013-10-29 09:17:46

rx_78gp02a 发表于 2013-10-28 22:09 static/image/common/back.gif
以前在DONE脚挂了个电容,然后从flash配置无法成功,提示DONE脚不能拉高,后查手册发现DONE脚必须在两个配 ...

现在是这样,如果用SPI FLASH的话,JTAG 在下载完SPI FLASH 后,DONE 可以被拉高的! 换成用MCU 配置后,就拉不高了! 感觉是前面时序或者文件没有给对。
我觉得应该用 bin 文件. 手册上有推荐。 但是就是不好使。。。
页: [1]
查看完整版本: XILINX 的DONE 始终拉不高!求解...