FPGA器件配置方式分三大類:主動配置、被動配置和JTAG配置,。
主動配置:由FPGA器件引導配置操作過程,。
被動配置:由計算機或控制器控制配置過程,。上電后,控制器件或主控器把存儲在外部存儲器中的數(shù)據(jù)送入FPGA器件內(nèi),,配置完成之后將對器件I/O和寄存器進行初始化,。初始化完成后,進入用戶模式,,開始正常工作,。
一旦設(shè)計者選定了FPGA系統(tǒng)的配置方式,需要將器件上的MSEL引腳設(shè)定為固定值,,以指示當前所采用的配置方式,。
常用的配置方式有:
PS配置(Passive Serial Configuration):被動串行配置
AS配置(Active Serial Configuration):主動串行配置
PPS配置(Passive Parallel Synchronous Configuration):被動并行同步配置
FPP配置(Fast Passive Parallel Configuration):快速被動并行配置
PPA配置(Passive Parallel Asynchronous Configuration):被動并行異步配置
PSA配置(Passive Serial Asynchronous Configuration):被動串行異步配置
JTAG配置(Joint Test Action Group Configuration)
在配置FPGA器件時的常見問題及其解決方法。
(1)當模式改變后,,同時需要修改產(chǎn)生位流文件中的配置時鐘的屬性為CCLK或JTAGClock,,否則無法配置。
(2)DONE狀態(tài)腳始終為低解決方法:檢查該引腳的負載是否太重,,選擇合適的上拉電阻,。
(3)器件上電后有時能夠配置成功,有時不成功解決方法:這種情況大部分是因為器件的復位未完成,,就開始出現(xiàn)數(shù)據(jù)流,。延長復位時間,即延長PROG_B信號的低電平時間,。電源檢測正常后,,該信號至少還需保持300 ms的低電平。Spartan-3系列器件的內(nèi)部配置電路如圖1所示,,該器件需要滿足VCCINT至少達到1.0V,Bank4的電源VCCO_4至少達到1.0V,輔助電源VCCAUX至少達到2.0V,才能進入配置狀態(tài),,可在PROG_B引腳上分別接一個4.7kΩ電阻到電源,如果電源滿足條件,,10μF電容到地。
(4)無法正常配置或發(fā)現(xiàn)加載過程中INIT_B信號被拉低
解決方法:檢查配置時鐘信號CCLK或JTAG時鐘信號TCK是否存在干擾信號或過沖。如果有干擾,,判斷干擾源并增加濾波措施,;如果有過沖,說明該信號線阻抗不匹配(因傳輸線過長等原因造成),,需要增加匹配電阻,。根據(jù)IBIS模型分析,采用LVCMOS25(10 mA)或LVTTL(12 mA)接口標準,,一般情況下,,CCLK的引線長度不要超過3~4英寸,可通過增加源端匹配(串聯(lián)33Ω~100Ω電阻)來改變時鐘信號的質(zhì)量,。CCLK的布線很重要,,最好不要開叉。如果一定要開叉,,參考對應器件的手冊查看最大允許的分支長度是多少,。
如果器件的旁路電容設(shè)計不合理或數(shù)據(jù)線上有地線及彈(Ground bounce)信號,也會造成配置失敗,。
(5)無法通過計算機并行口配置
解決方法:檢查計算機并行口模式設(shè)置是否正確,。如果計算機的并行口信號太差,存在干擾,,則采用質(zhì)量好的配置電纜(Cable-IV)排除干擾,。
(6)DONE腳已經(jīng)變高,但器件仍然不工作
解決方法:如果確認設(shè)計無誤,,那么可能是器件的啟動順序設(shè)置不正確,。參考配置流程,通過設(shè)計工具重新設(shè)置啟動順序,。