專利名稱:一種fpga多模式配置電路的制作方法
技術領域:
本實用新型涉及一種FPGA配置電路,具體地涉及一種具有多種 配置模式的FPGA配置電路。
背景技術:
FPGA是基于SRAM (靜態存儲器)的應用技術,程序不能保存, 需在上電時對FPGA進行配置。FPGA的配置模式有多種,以ALTERA 公司的FPGA為例, 一般有三種配置下載方式 一是主動串行配置模 式AS (Active Serial Configuration),它通過FPGA內嵌的配置模
塊和專用管腳發出控制信號去弓I導配置操作過程;二是被動串行配置 模式PS (Passive Serial Configuration)則由外部計算機或控制 器發出控制信號去引導配置過程。還有一種用于調試的JTAG (Joint Test Action Group)配置模式,主要用于研發階段程序的在線下載 和邊界調試,也可用于程序的固化。
現有的FPGA配置電路一般都是單一配置,如采用主動串行配置 模式,則不支持遠程在線升級,采用被動串行配置模式可利用串口實 現在線程序升級,并可將專用EEPROM改為具有SPI串行總線的FLASH, 除在上電時完成對FPGA的配置外將新程序代碼寫入指定的FLASH區 域,同時還可在FLASH的非程序代碼區存儲訪問用戶的數據、參數, 該方式給FPGA的應用帶來了靈活性,不足之處是增加了系統開銷
實用新型內容
本實用新型為克服上述現有FPGA配置電路的不足,提供一種具
有多種配置模式的FPGA配置電路。
本實用新型實現發明目的采用的技術方案是, 一種FPGA多模式 配置電路,包括存儲器和現場可編程門陣列芯片,所述存儲器連接現 場可編程門陣列芯片并可對其進行配置控制和數據交換,其特征在 于所述存儲器為具有SPI串行總線的FLASH芯片,所述配置電路還
包括遠程通訊芯片、緩沖器和數據選擇器,所述遠程通訊芯片接入緩 沖器和現場可編程門陣列芯片,所述緩沖器接入現場可編程門陣列芯 片和數據選擇器,現場可編程門陣列芯片和緩沖器連接數據選擇器后 接入FLASH芯片輸入端,FLASH芯片輸出端連接現場可編程門陣列芯 片。
更好地,所述現場可編程門陣列芯片連接有編程信號插座。 更好地,所述緩沖器為八總線緩沖器,所述數據選擇器為四二選 一數據選擇器,所述配置電路還包括一復位芯片和四二輸入或門,復 位芯片的輸出與或門6a、或門6d相連;或門6a輸入來自現場可編 程門陣列芯片、八總線緩沖器和復位芯片,輸出到或門6b;所述或 門6b輸入來自或門6a和遠程通訊芯片,輸出到四二選一數據選擇器; 所述或門6c輸入來自現場可編程門陣列芯片和遠程通訊芯片,輸出 到或門6d;所述或門6d輸入來自或門6c和復位芯片,輸出到八總 線緩沖器。
所述FLASH是具有ISP串行總線的非易失閃速存儲器芯片,優 選例是W25X系列芯片,其控制信號和數據輸入與四二選一數據選擇 器相連,數據輸出和FPGA相連;
所述四二選一數據選擇器優選例是74HC157,其輸入分別接FPGA 的主動編程管腳、1/0控制管腳和八總線緩沖器,其選通信號輸入端
5接或門6b;
所述遠程通訊芯片優選例是LVDS Deserializer LV1224,數據 總線管腳與FPGA和八總線緩沖器相連,其鎖相環狀態輸出信號/LOCK 與或門6b、或門6C和FPGA相連;
所述編程信號插座是FPGA的JTAG編程信號插座,與FPGA的相 關管腿相連。
所述配置電路還包括電阻[81-87],所述電阻[81]為下拉電阻接 現場可編程門陣列芯片和八總線緩沖器,所述電阻[82]為下拉電阻接 現場可編程門陣列芯片和或門6c,所述電阻[83-84]為上拉電阻接現 場可編程門陣列芯片,所述電阻[85-86]為上拉電阻接現場可編程門 陣列芯片和八總線緩沖器,所述電阻[86]還接或門6a,所述電阻[87] 為上拉電阻接現場可編程門陣列芯片、遠程通訊芯片、或門6b和或 門6c。
本實用新型的有益效果是,在無需額外添加微處理器的情況下, 將FPGA的單模式編程電路改為多模式編程電路,使其既可通過主動 串行配置模式完成FPGA上電時的配置,又可通過被動串行配置模式 完成對程序的遠程升級,同時具備JTAG配置調試和程序固化功能, 另用具有ISP通迅總線的FLASH代替專用EEPROM,開辟了用戶數據 存儲區,從而增加了 FPGA應用的靈活性和可靠性,降低了設計成本。 該FPGA多模式編程電路尤其適用于需要遠程升級和編程要求可靠性 高的行業,例如自動化控制、LED顯示屏控制、軍工航天行業等。
圖1為本實用新型FPGA編程電路邏輯設計示意圖。 圖中,1 FPGA、 2 FLASH芯片、3四二選一數據選擇器、4八總 線緩沖器、5復位芯片、(6a、 6b、 6c、 6d)四二輸入或門、7遠程通迅芯片、(81-87)電阻、9 JTAG編程信號插座。
具體實施方式
以下結合附圖對本實用新型作進一步描述。
圖1為本實用新型FPGA編程電路邏輯設計示意圖,包括FPGA 1、 FLASH 2、四二選一數據選擇器3、八總線緩沖器4、復位芯片5、四 二輸入或門6、遠程通迅芯片7、電阻81-87和JTAG編程信號插座9。
所述FPGA 1是現場可編程門陣列芯片,優選例是ALTERA公司 的FPGA,其主動編程控制信號nCS0、 ASD0、 DCLK輸出分別與四二選 一數據選擇器3的三個二選一選通器的A1、B1、C1輸入端相連,DATA0 數據輸入與FLASH 2的數據輸出S0、八總線緩沖器4的D5輸出相連, 配置狀態信號nSTATE輸出接上拉電阻83、配置完成信號CONF—DONE 輸出接上拉電阻84,配置啟動信號nCONFIG輸入接八總線緩沖器4 的D7輸出和上拉電阻85,編程模式選擇信號MSELO接八總線緩沖器 4的D6輸出和下拉電阻81,MSEL1接地,另有三個I/O管腳定義為 10—/CS、 I0_S0、 I0_SCK輸出分別與四二選一數據選擇器3的三個二 選一選通器的A0、 B0、 CO輸入端相連, 一個I/O管腳定義為I0_SI數 據輸入與FLASH2的數據輸出管腳SO、八總線緩沖器4的D5輸出相 連, 一個I/0管腳定義為I0一/EN數輸出與或門C和下拉電阻82相連, 一個I/O管腳定義為IO_/FH輸出與或門a、八總線緩沖器4的DO和 上拉電阻86相連, 一個I/0管腳定義為10」L0CK輸入與遠程通迅接 口 7的/LOCK輸出和上拉電阻87相連,FPGA 1的JTAG電纜下載相關 管腳和插座9相連,部分I/O管腳和遠程通迅接口 7的數據總線相連, FPGA 1的其余管腳附圖省略。
所述FLASH芯片2是具有ISP串行總線的非易失閃存芯片,優 選例是W25X系列芯片,其芯片選通輸入端口/CS 、串行輸入數據端口 SI和時鐘輸入端口 SCK分別接四二選一數據選擇器3三個二選一
選通器的輸出信號Y0、 Yl和Y2,串行數據輸出口 SO同時接到FPGA 1 主動編程管腳的數據輸入管腳DATAO和定義為10—SI輸入的一個I/O 管腳。
所述八總線緩沖器4的輸入接遠程通訊芯片7的數據總線,其 DO輸出接或門6a和上拉電阻86, Dl輸出接四二選一數據選擇器3 的CO, D2輸出接四二選一數據選擇器3的BO, D3輸出接四二選一數 據選擇器3的AO, D4輸出接FPGA 1的DCLK和四二選一數據選擇器 3的Cl, D5輸出接FPGA 1的DATAO和10—SI, D6輸出接FPGA 1的 MSELO和下拉電阻81, D7輸出接FPGA 1的nCONFIG和上拉電阻85, 輸出使能信號接或門6d。
所述四二選一數據選擇器3的優選例是74HC157,其輸入見上述 分別連接到FPGA l和八總線緩沖器4,輸出見上述連接到FLASH 2, 選通信號管腳輸入接或門6b輸出。
所述復位芯片5具有正極性長延時(大于FPGA 1的上電配置周 期)復位信號,其輸出與或門6a、或門6d相連。
所述四二輸入或門6中所述或門6a輸入來自FPGA1的IO_/FH、 八總線緩沖器4的D0和復位芯片5的RST,輸出到或門6b;所述或 門6b輸入來自或門6a和遠程通訊芯片7的/LOCK,其中/LOCK信號 接有上拉電阻87,輸出作為四二選一數據選擇器3的選通信號;所 述或門6c輸入來自FPGA 1的10—/EN和遠程通訊芯片7的/LOCK,其 中10—/EN信號接有下拉電阻81, /LOCK信號接有上拉電阻87,輸出 到或門6d;所述或門6d輸入來自或門6c和復位芯片5的RST,輸出 到八總線緩沖器的輸出使能端口。
所述遠程通訊芯7類型優選例是LVDS Deserializer LV1224,其數據總線分別與上位機、FPGA 1和八總線緩沖器4相連,承擔FPGA 1與上位機的通訊和遠程升級,其鎖相環狀態輸出/LOCK作為或門6b、 或門6c的一個輸入,并通到FPGA 1的10—/LOCK腳。
所述七個電阻81-87 —端的連接關系見上述,其中有二個下拉電 阻81-82的另一端接地,五個上拉電阻83-87的另一端接電源VCC。
所述JTAG編程信號插座9是FPGA的JTAG 10芯電纜下載插座, 與FPGA的相關管腿相連。
本實用新型FPGA多模式編程電路的工作原理如下 所述FPGA 1的MSEL1、 MSELO是編程模式選擇信號,當MSEL1、 MSEL0均為0時,設定FPGA 1配置方式為主動串行配置模式,即上 電時由FPGA 1的專用管腳nCS0、 ASD0、 DCLK發出控制信號,通過 DATA0 口將FLASH 2中的程序寫入FPGA 1中。當MSEL1為1、 MSELO 為0時,設定FPGA 1配置方式為被動串行配置模式,即由非FPGA1 專用管腳nCS0、 ASDO、 DCLK發出的外部控制信號,將遠程升級程序 或FLASH 2中固化的程序寫入FPGA 1中,下面分別敘述JTAG配置模 式、主動串行配置模式和被動串行配置模式。
JTAG配置模式所述插座9是FPGA 1的JTAG IO芯電纜通用下 載插座,與FPGA1的JTAG相關管腿(TDI、 TMS、 TCK、 TD0)相連,主 要作用是由計算機完成對FPGA 1的配置、周邊I/0測試或將程序寫 入FLASH 2中,也可用于產品出廠的程序固化,它與MSELO、 MSELl 編程模式信號的狀態無關。另,當遠程通訊芯片7與上位機脫離時, 遠程通訊芯片7的鎖相環狀態輸出/LOCK由于有上拉電阻87為高, 它通過或門6c到或門6d,或門6d輸出l使八總線緩沖器4的D0-D7 輸出為三態,通過或門6b輸出1到四二選一數據選擇器3的選通輸 入,從而選中四二選一數據選擇器3的1端輸入,以便FPGA 1能以JTAG配置模式向FLASH 2固化程序。
主動串行配置模式主動串行配置模式用于FPGA1的上電配置, 為了實現上電時由FPGA 1的專用管腳配置程序,必須保證上電后FPGA 1配置期間,即配置完成信號C0NF一D0NE還未變高時模式選擇信號 MSEL1、 MSEL0均保持為0,這是由復位芯片5上電時發出的正極性長 延時(大于<:0淨_00肥的低電平期)復位信號RST提供保證的,RST 通到或門6d,或門6d輸出l令八總線緩沖器4的D0-D7輸出為三態, MSEL1因接有下拉電阻81為0, RST還通過或門6a到或門6b,或門 b輸出1去選中四二選一數據選擇器3的1端輸入,此時FPGA 1的 所有I/0管腳為三態,當配置啟動脈沖信號nCONFIG自動由低變高時, 主動編程控制信號nCSO、 ASDO、 DCLK有效,由它們將FLASH 2中的 程序讀入到FPGA 1中。
被動串行配置模式被動串行配置模式用于FPGA 1的遠程配置 或在線升級,它是通過遠程通訊芯片7連接到上位機來實現的,而通 訊接口 7工作正常時其鎖相環狀態輸出/L0CK為低。被動串行配置模 式有兩種情況,其一為FPGA 1沒有工作,例如上電時主動串行配置 失敗或FLASH 2中無程序,此時FPGA 1所有I/O管腳均為三態,但 FPGA 1的IO_/EN輸出由于有下拉電阻82為低,其二如果FPGA 1在 工作,FPGA 1收到遠程配置或在線升級指令后將令I(L/EN為低,加 上復位信號RST也是低,使或門6c和或門6d輸出為0,開通八總線 緩沖器4的DO-D7輸出有效,此時上位機只需令D6為l,就可將FPGA 1置為被動串行配置模式,再通過DO為0使或門6a和或門6b輸出 為0,選中四二選一數據選擇器3的0端輸入,通過D3為1不選中 FLASH 2,使FLASH 2的SO輸出為三態,之后通過D7發出遠程配置 啟動脈沖信號nCONFIG, nCONFIG由低到高延遲一段時間后再通過D4
10發出配置時鐘,通過D5發出配置數據,即可完成對FPGA1的遠程配 置。由于上述FPGA 1的遠程配置掉電后不能保存,還需將升級程序 寫入FLASH 2中。FLASH 2的程序更新有兩種方法,其一為上位機直 接向FLASH 2的BOOT代碼區寫入,如果FPGA 1沒有工作,FPGA 1 所有I/O管腳均為三態,如果FPGA 1在工作,FPGA 1收到FLASH 2 寫入指令后將令10—/CS、 10—SQ、 IO—SCK 、 10—/FH置為三態無效, 令工0一/EN為低使八總線緩沖器4的D0-D7輸出有效,此時上位機只 需令D6為0將FPGA 1置為主動串行配置模式,令D7為1啟動配置 無效,再通過D0為0選中四二選一數據選擇器3的0端輸入,通過 D3為0選中FLASH2,之后通過Dl發出寫入時鐘,通過D2發出寫入 數據,即可完成對FLASH 2的程序升級。其二為通過FPGA 1間接向 FLASH 2寫入升級程序,此時由上位機發出FLASH 2第二種程序寫入 指令,FPGA 1收到后,將令10—/EN為高,使八總線緩沖器4的D0-D7 輸出為三態,令10—/FH輸出0,使或門6a、 或門6b也輸出0,從 而選中四二選一數據選擇器3的0端輸入,同時啟動10—/CS、 10—SO、 IO一SCK控制信號,即可將上位機發過來的升級程序寫入到FLASH 2 中。采用上述兩種方法,上位機亦可遠程向FLASH 2的數據區直接 寫入或通過FPGA 1間接讀寫數據,而FPGA 1本身亦可單獨執行FLASH 2數據區的數據讀寫操作。
本實用新型FPGA多模式編程電路提高了遠程配置或升級的可靠 性,例如上位機將升級程序寫入到FLASH2中途突然斷電,升級失敗, 造成主動串行配置模式上電后FPGA 1不工作, 一旦上位機偵測到后, 它可以自動發出FPGA 1被動串行配置指令,直接將最新程序寫入FPGA 1中,令FPGA 1即刻開始工作。
另外,FLASH 2容量足夠大,除可寫入FPGA 1的配置程序外,還可利用其余空間讀寫設計所需的數據,例如LED顯示技術中所需的 像素校正數據、伽瑪曲線、控制參數等。
上述實施例為本實用新型的較佳實施方式,本技術領域的普通技 術人員應當認識到,上述較佳實施方式僅用來說明本實用新型,并非 用來限定本實用新型的保護范圍,任何在本實用新型的精神和原則范 圍之內,所做的任何修飾、等效替換、改進等,例如將四二選一數據
選擇器改為兩個總線緩沖器、變換八總線緩沖器D0-D7信號位置、采 用其它型號的通訊芯片,又如將四二選一數據選擇器3、八總線緩沖 器4和四二輸入或門6具有的功能借助CPLD或微處理器實現等,均 應包含在本實用新型的權利保護范圍之內。
權利要求1、一種FPGA多模式配置電路,包括存儲器和現場可編程門陣列芯片(1),所述存儲器連接現場可編程門陣列芯片(1)并可對其進行配置控制和數據交換,其特征在于所述存儲器為具有SPI串行總線的FLASH芯片(2),所述配置電路還包括遠程通訊芯片(7)、緩沖器(4)和數據選擇器(3),所述遠程通訊芯片(7)接入緩沖器(4)和現場可編程門陣列芯片(1),所述緩沖器(4)接入現場可編程門陣列芯片(1)和數據選擇器(3),現場可編程門陣列芯片(1)和緩沖器(4)連接數據選擇器(3)后接入FLASH芯片(2)輸入端,FLASH芯片(2)輸出端連接現場可編程門陣列芯片(1)。
2、 根據權利要求1所述的一種FPGA多模式配置電路,其特征在 于所述現場可編程門陣列芯片(1)連接有JTAG編程信號插座(9)。
3、 根據權利要求1所述的一種FPGA多模式配置電路,其特征在 于所述緩沖器(4)為八總線緩沖器,所述數據選擇器(3)為四二選一 數據選擇器。
4、 根據權利要求1所述的一種FPGA多模式配置電路,其特征在 于所述配置電路還包括一復位芯片(5)和四二輸入或門(6a-6d),復 位芯片(5)的輸出與或門(6a)、或門(6d)相連;或門(6a)輸入來自 現場可編程門陣列芯片(l)、八總線緩沖器(4)和復位芯片(5),輸出 到或門(6b);所述或門(6b)輸入來自或門(6a)和遠程通訊芯片(7), 輸出到四二選一數據選擇器(3);所述或門(6c)輸入來自現場可編 程門陣列芯片(1)和遠程通訊芯片(7),輸出到或門(6d);所述或門(6d)輸入來自或門(6c)和復位芯片(5),輸出到八總線緩沖器(4)。
5、根據權利要求1所述的一種FPGA多模式配置電路,其特征在于所述配置電路還包括電阻(81-87),所述電阻(81)為下拉電阻 接現場可編程門陣列芯片(1)和八總線緩沖器(4),所述電阻(82) 為下拉電阻接現場可編程門陣列芯片(1)和或門(6c),所述電阻 (83-84)為上拉電阻接現場可編程門陣列芯片(1),所述電阻(85-86) 為上拉電阻接現場可編程門陣列芯片(1)和八總線緩沖器(4),所 述電阻(86)還接或門(6a),所述電阻(87)為上拉電阻接現場可編 程門陣列芯片(1)、遠程通訊芯片(7)、或門(6b)和或門(6c)。
專利摘要本實用新型為克服現有FPGA配置電路單一配置模式的缺點,提供一種具有多種配置模式的FPGA配置電路,包括存儲器和現場可編程門陣列芯片,所述存儲器連接現場可編程門陣列芯片并可對其進行配置控制和數據交換,所述存儲器為具有SPI串行總線的FLASH芯片,所述配置電路還包括遠程通訊芯片、緩沖器和數據選擇器,所述遠程通訊芯片接入緩沖器和現場可編程門陣列芯片,所述緩沖器接入現場可編程門陣列芯片和數據選擇器,現場可編程門陣列芯片和緩沖器連接數據選擇器后接入FLASH芯片輸入端,FLASH芯片輸出端連接現場可編程門陣列芯片。該FPGA配置電路同時兼具三種配置模式,具有靈活、可靠,成本較低的有益效果。
文檔編號H03K19/177GK201349208SQ20082023551
公開日2009年11月18日 申請日期2008年12月23日 優先權日2008年12月23日
發明者魏洵佳 申請人:康佳集團股份有限公司