§===================================§
這問題常發生,一般只要檢查下列的幾點,應該能解決
※ Mode pin設錯... Spartan3有3pin而Spartan6有2pin
http://www.xilinx.com/support/documentation/user_guides/ug380.pdf
<< spartan6
http://www.xilinx.com/support/documentation/user_guides/ug332.pdf
<< spartan3
http://www.xilinx.com/support/documentation/user_guides/ug190.pdf
<< Virtex5
http://www.xilinx.com/support/documentation/user_guides/ug366.pdf
<< Virtex6
※ Mode pin設對...但pull up和pull
down電阻太大,一般會用1k,但我個人都會使用470歐姆就好.有時索性就不接電阻了.因為常量到要上不上要下不下的電壓..(曾經還有負的...)
※done pin動作不對..簡單講一般done pin會pull up
3.3v/2.5v,但其實這pin是雙向的,它在Configur時是輸出low,完成Configur時會輸入為high,所以我們通常在設計上都會接一個LED來表示是否有boot
load成功,電壓也要確認
如果上面的檢查過了.還不會動..那就比較麻煩了,那就有可能是電源給的順序不對,一般不管透過SPI或是MCU
down load程式,都是要經由IO,
所以IO一定要先有電,也就是VCCIO一定要先給,大多的設計FPGA都需要多組電源像VCCINT,VCCAUX,VCCO
這三個電源分別有不同的用途
【VCCO】 是給IO輸出時用的 << 沒給IO不會有輸出
【VCCINT】 是Core電壓,也就是給FPGA內部邏輯運作用的,一般這也蠻耗電的
<< 沒給FPGA等於沒作用
【VCCAUX 】 << 是用來program FPGA和給FPGA內部特定元作用的電源像DLL/PLL之類的
<< 這沒接FPGA也不會動,因為Code無法load,有人問過如果load的成功又不用特定元件可以斷電嗎?
原則上我沒試過!但我覺的是會有不可預期的問題....
縱合以上的關點我們可以歸納一件事就是-----------
VCCO & VCCAUX 一定要比 VCCINT 給的早,不然也會出問題,雖然大多的設計
1.2V都是由3.3V或2.5V轉出來的,但是我曾經看過用3.3v轉1.2v,但卻是1.2先ready的情況,很妙
v__v
§===================================§
by 不負責任的FAE?????
|