1. 程式人生 > >FPGA低溫不能啟動分析(轉)

FPGA低溫不能啟動分析(轉)

出了 常用 軟件 手冊 image one strong 內部 超出

FPGA低溫不能啟動分析

現象描述:在給medium板光端機做低溫試驗時,分別給發送版、接收板斷電重新啟動,發現有的板子在-40°可以啟動,而有些板子在-20°都不能啟動,需要升高溫度到0°以上才能啟動,此時觀察到的現象是指示狀態的4個led燈都點亮,表現為FPGA一直處於復位模式。

針對這一問題,作如下分析:

FPGA在上電前是一片空白的芯片,既使斷電前FPGA已經配置為一個正常工作的系統了,但只要斷電,它又恢復了空白。也就是說FPGA內部的電路邏輯要落實到一個具體的結構需要有電的維持。

FPGA內部邏輯結構是由配置文件決定的,這個配置文件來自哪兒取決於FPGA使用哪種配置模式。Medium光端機FPGA采用的是主串模式,這是FPGA最常用的配置模式,主串配置模式電路圖如下。

技術分享圖片

Medium光端機使用的FPGA芯片是Spartan3E,PlatformFlash是XCF04S。

FPGA芯片有兩個配置觸發事件:上電復位(POR, power on reset),軟件復位。低溫試驗中,我們采用斷電重啟的方式來檢測FPGA是否在低溫下可以重新啟動,這裏主要對上電復位觸發重新配置的過程進行如下描述:

(1)FPGA上電後,只有在內核電壓、參考電壓、IO口電壓都正常的情況下,才進入配置模式;

(2)下拉PROG_B,FPGA復位,同時對配置存儲空間進行初始化;

(3)將INIT_B,DONE管腳信號拉低,DONE信號與PROM芯片的CE管腳信號相連,從而使PROM片選信號有效;INIT_B為低,指示電源供壓正常,FPGA正處於配置存儲空間初始化中;

(4)FPGA在PROG_B管腳信號變為高電平時,開始配置過程;

(5)FPGA在INIT_B上升沿中讀取配置管腳M[2:0]的值,從而確定FPGA的配置模式;

(6)PROM通過Do管腳將配置數據以CCLK時鐘信號的速率傳給FPGA

(7)配置完成後,將DONE管腳信號置為低電平,指示配置已經完成。

技術分享圖片

以下將針對FPGA主串模式配置過程中幾個關鍵的因素進行分析:

1、POR電壓要求

上電復位過程中,如果配置電源電壓沒有到達門限值,POR電路將保持復位狀態。配置電源有三個:

VCCIINT,給FPGA內核邏輯供壓;

VCCAUX,給專用配置管腳供壓;

VOCC_2,給外部連接的配置數據源(如PROM)接口管腳供壓

技術分享圖片

FPGA檢測這三個電壓值,一旦所有的三個電壓值超出了特定的電壓門限值要求,POR上電復位電路會釋放對RESET控制,FPGA就可以在PROG_B出現低電平時,啟動重新配置。

技術分享圖片

POR復位電壓門限值表

2、配置模式選擇:主串模式(Master Serial)

M[2:0]= <0:0:0>,FPGA配置模式選擇管腳M[2:0]都應為低電平。在FPGA完成了內部配置存儲空間初始化後,FPGAT_B在INIT_B上升沿的時候讀取配置模式管腳的電平值,從而確定FPGA的配置模式。

==>查一下M0 M1 M2上的下拉電阻,這些腳FPGA內置的上拉很強,如果外接下拉電阻太大的話有可能下拉電平不夠低,加上溫度變化造成輸入門限電壓的變化就可能造成低溫的時候不去用SPI Flash 初始化。推薦阻值470歐以下,如果不復用引腳的話,建議直接接地。

技術分享圖片

3、配置時鐘CCLK

CCLK信號是JATG配置數據傳輸的時鐘信號,其信號完整性非常關鍵。CCLK是由FPGA內部振蕩器產生的,傳給Platform Flash PROM的CLK管腳。相應的,PlatformFlash PROM通過DO以CCLK的速率將配置數據送給FPGA。如果CCLK信號沒有,重點檢查內核供壓是否為1.2v。FPGA配置電路剛開始以最低的頻率工作,如果沒有特別指定,將逐漸提高頻率。對於不同芯片和電平,CCLK最大值如下。

技術分享圖片

4、PROG_B—FPGA復位或者重新配置

PROG_B對FPGA 來說是一個異步控制輸入信號,當PROG_B為低時,FPGA復位,同時對配置存儲空間進行初始化;當PROG_B由低變為高時,FPGA開始重新配置過程;重新配置完成後,PROG_B保持高電平,一旦PROG_B出現下降沿,並且低電平持續時間大於500ns時,FPGA將開始重新配置過程。

PROG_B為低期間,IO管腳將表現為何種狀態呢。在HSWAP為低電平的情況下,使能上拉電阻,一旦檢測到PROG_B出現下降沿時,FPGA的IO管腳將無效,被上拉為高電平。如果HSWAP為高電平,上拉電阻無效,FPGA的IO管腳的狀態是不確定的。

==>Medium光端機中,HSWAP通過一個510歐姆的電阻接地,因此HSWAP為低電平,當PROG_B為低電平時,FPGA的IO管腳將被上拉為高電平,此時指示狀態的四個LED燈點亮正好說明了這一現象。

技術分享圖片

5、INIT_B—FPGA配置存儲空間初始化指示信號

當電源供壓達到電壓門限值後,FGPA將INIT_B置為低電平,指示正在對配置存儲空間進行初始化。在INIT_B信號由低變為高電平時,FPGA讀取配置模式管腳M[2:0]的電平值,從而確定FPGA的配置模式。

在配置過程中,FPGA通過將INIT_B置為低電平來指示配置數據錯誤,比如CRC出錯。

DONE—FPGA配置狀態指示信號

當FPGA處於配置過程中時,DONE為低電平;配置完成後變為高電平。可以用來指示FPGA的配置狀態。

==>Medium光端機中FPGA的DONE管腳外接240歐姆電阻(推薦值為330歐姆)與 相連,並且另一端外連接一個LED,然後接地。當LED點亮時,表示FPGA已經完成了配置。

6、小結:

通過以上的分析,當FPGA不能正常配置時,可以從以下幾個方面進行排查:

1. DONE指示信號LED燈是否亮,亮表示配置完成;

2. 測量電壓是否正常,分別有內核電壓(1.2v)、參考電壓(2.5v)、IO口電壓(3.3v);

3. 檢查配置模式M[2:0]是否正確,(M[2:0]=<0:0:0>);

4. 使用示波器采集配置時鐘信號,看是否正常,低於12M(Spartan 3e + XCF04S)

5. 查PROM的數據手冊,PROM--XCF04S可以工作在-40°到+85°的環境下。

7、參考文檔:

1.DS312-Spartan-3E FPGA Family Data Sheet.pdf

2.UG332-Spartan-3 Generation Configuration User Guide.pdf


---------------------
作者:shanekong
來源:CSDN
原文:https://blog.csdn.net/shanekong/article/details/29923925?utm_source=copy
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!

FPGA低溫不能啟動分析(轉)