很多兄弟對(duì)于CPLD下JTAG的下載很熟悉了,可轉(zhuǎn)到FPGA來的時(shí)候,多多少少有些迷惑,怎么出現(xiàn)配置芯片了,為什么要用不同的下載電纜,不同的下載模式?我就自己知道的一點(diǎn)東西談一些個(gè)人的見解,并發(fā)一些資料.希望路過的朋友喝個(gè)采,版主給點(diǎn)威望.有問題大家也一起討論,歡迎拍磚.
1.FPGA器件有三類配置下載方式:主動(dòng)配置方式(AS)和被動(dòng)配置方式(PS)和最常用的(JTAG)配置方式。
AS由FPGA器件引導(dǎo)配置操作過程,它控制著外部存儲(chǔ)器和初始化過程,EPCS系列.如EPCS1,EPCS4配置器件專供AS模式,目前只支持Cyclone系列。使用Altera串行配置器件來完成。Cyclone期間處于主動(dòng)地位,配置期間處于從屬地位。配置數(shù)據(jù)通過DATA0引腳送入FPGA。配置數(shù)據(jù)被同步在DCLK輸入上,1個(gè)時(shí)鐘周期傳送1位數(shù)據(jù)。(見附圖)
PS則由外部計(jì)算機(jī)或控制器控制配置過程。通過加強(qiáng)型配置器件(EPC16,EPC8,EPC4)等配置器件來完成,在PS配置期間,配置數(shù)據(jù)從外部?jī)?chǔ)存部件,通過DATA0引腳送入FPGA。配置數(shù)據(jù)在DCLK上升沿鎖存,1個(gè)時(shí)鐘周期傳送1位數(shù)據(jù)。(見附圖)
JTAG接口是一個(gè)業(yè)界標(biāo)準(zhǔn),主要用于芯片測(cè)試等功能,使用IEEE Std 1149.1聯(lián)合邊界掃描接口引腳,支持JAM STAPL標(biāo)準(zhǔn),可以使用Altera下載電纜或主控器來完成。
FPGA在正常工作時(shí),它的配置數(shù)據(jù)存儲(chǔ)在SRAM中,加電時(shí)須重新下載。在實(shí)驗(yàn)系統(tǒng)中,通常用計(jì)算機(jī)或控制器進(jìn)行調(diào)試,因此可以使用PS。在實(shí)用系統(tǒng)中,多數(shù)情況下必須由FPGA主動(dòng)引導(dǎo)配置操作過程,這時(shí)FPGA將主動(dòng)從外圍專用存儲(chǔ)芯片中獲得配置數(shù)據(jù),而此芯片中fpga配置信息是用普通編程器將設(shè)計(jì)所得的pof格式的文件燒錄進(jìn)去。
專用配置器件:epc型號(hào)的存儲(chǔ)器
常用配置器件:epc2,epc1,epc4,epc8,epc1441(現(xiàn)在好象已經(jīng)被逐步淘汰了)等
對(duì)于cyclone cycloneII系列器件,ALTERA還提供了針對(duì)AS方式的配置器件,EPCS系列.如EPCS1,EPCS4配置器件也是串行配置的.注意,他們只適用于cyclone系列.
除了AS和PS等單BIT配置外,現(xiàn)在的一些器件已經(jīng)支持PPS,F(xiàn)PS等一些并行配置方式,提升配置了配置速度。當(dāng)然所外掛的電路也和PS有一些區(qū)別。還有處理器配置比如JRUNNER 等等,如果需要再baidu吧,至少不下十種。比如Altera公司的配置方式主要有Passive Serial(PS),Active Serial(AS),Fast Passive Parallel(FPP),Passive Parallel Synchronous(PPS),Passive Parallel Asynchronous(PPA),Passive Serial Asynchronous(PSA),JTAG等七種配置方式,其中Cyclone支持的配置方式有PS,AS,JTAG三種.
2 對(duì)FPGA芯片的配置中,可以采用AS模式的方法,如果采用EPCS的芯片,通過一條下載線進(jìn)行燒寫的話,那么開始的"nCONFIG,nSTATUS"應(yīng)該上拉,要是考慮多種配置模式,可以采用跳線設(shè)計(jì)。讓配置方式在跳線中切換,上拉電阻的阻值可以采用10K
1.jpg (14 KB)
2007-11-10 14:47
2.jpg (13 KB)
2007-11-10 14:47
3,在PS模式下tip:如果你用電纜線配置板上的FPGA芯片,而這個(gè)FPGA芯片已經(jīng)有配置芯片在板上,那你就必須隔離纜線與配置芯片的信號(hào).(祥見下圖).一般平時(shí)調(diào)試時(shí)不會(huì)把配置芯片焊上的,這時(shí)候用纜線下載程序.只有在調(diào)試完成以后,才把程序燒在配置芯片中,然后將芯片焊上.或者配置芯片就是可以方便取下焊上的那種.這樣出了問題還可以方便地調(diào)試.
在AS模式下tip: 用過一塊板子用的AS下載,配置芯片一直是焊在板子上的,原來AS方式在用線纜對(duì)配置芯片進(jìn)行下載的時(shí)候,會(huì)自動(dòng)禁止對(duì)FPGA的配置,而PS方式需要電路上隔離。
4,一般是用jtag配置epc2和flex10k,然后 epc2用ps方式配置flex10k.這樣用比較好.(這是我在網(wǎng)上看到的,可以這樣用嗎?懷疑中)望達(dá)人告知.
5,下載電纜,Altera下的下載電纜分為byteblaster和byteblasterMV,以及ByteBlaster II,現(xiàn)在還推出了基于USB-blaster.由于BB基本已經(jīng)很少有人使用,而USB-Blaster現(xiàn)在又過于昂貴,這里就說一下BBII和BBMV的區(qū)別.
BBII支持多電壓供電5.5v,3.3v,2.5v,1.8v;
BBII支持三種下載模式:AS,可對(duì)Altera的As串行配置芯片(EPCS系列)進(jìn)行編程
PS,可對(duì)FPGA進(jìn)行配置
JTAG,可對(duì)FPGA,CPLD,即Altera配置芯片(EPC系列)編程
而BBMV只支持PS和JTAG
3.jpg (20 KB)
2007-11-10 14:47
6,一般在做FPGA實(shí)驗(yàn)板,(如cyclone系列)的時(shí)候,用AS+JTAG方式,這樣可以用JTAG方式調(diào)試,而最后程序已經(jīng)調(diào)試無誤了后,再用AS模式把程序燒到配置芯片里去,而且這樣有一個(gè)明顯的優(yōu)點(diǎn),就是在AS模式不能下載的時(shí)候,可以利用Quartus自帶的工具生成JTAG模式下可以利用的jic文件來驗(yàn)證配置芯片是否已經(jīng)損壞,方法請(qǐng)見附件(這是駿龍的人寫的如有版權(quán)問題,包涵包涵).
4.jpg (17 KB)
2007-11-10 14:47