天天看點

FPGA的配置及接口電路

FPGA的配置及接口電路

房磊 張煥春 胡銀彪

南京航空航天大學 江蘇 南京 210016

0引言

與CPLD不同,FPGA是基于門陣列方式為使用者提供可程式設計資源的,其内部邏輯結構的形成是由配置資料決定的。這些配置資料通過外部控制電路或微處理器加載到FPGA内部的SRAM中,由于SRAM的易失性,每次上電時,都必須對FPGA進行重新配置,在不掉電的情況下,這些邏輯結構将會始終被保持,進而完成使用者程式設計所要實作的功能。

FPGA的配置方式分為主動式和被動式,資料寬度有8位并行方式和串行方式兩種。在主動模式下,FPGA在上電後,自動将配置資料從相應的外存儲器讀入到SRAM中,實作内部結構映射;而在被動模式下,FPGA則作為從屬器件,由相應的控制電路或微處理器提供配置所需的時序,實作配置資料的下載下傳。

1配置引腳

FPGA的配置引腳可分為兩類:專用配置引腳和非專用配置引腳。專用配置引腳隻有在配置時起作用,而非專用配置引腳在配置完成後則可以作為普通的I/O口使用。

專用的配置引腳有:配置模式腳M2、M1、M0;配置時鐘CCLK;配置邏輯異步複位PROG,啟動控制DONE及邊界掃描TDI,TDO,TMS,TCK。非專用配置引腳有Din,D0:D7,CS,WRITE,BUSY,INIT。

在不同的配置模式下,配置時鐘CCLK可由FPGA内部産生,也可以由外部控制電路提供。

2 FPGA的配置模式

FPGA共有四種配置模式:從串模式(Slave Serial),主串模式(MasterSerial),從并模式(Slave Farallel/S e 1 e c tMap)以及邊界掃描模式(Boundary-Scan)。具體的配置模式由模式選擇引腳M2、M1、M0決定。表1為不同的配置模式所對應的M2、M1、M0,配置時鐘的方向以及相應的資料位寬。

FPGA的配置及接口電路

3配置過程

(1)初始化

系統上電後,如果FPGA滿足以下條件:Bank2 的I/O輸出驅動電壓Vcc0_2大于lv;器件内部的供電電壓Vccint為2.5v,器件便會自動進行初始化。在系統上電的情況下,通過對PROG引腳置低電子,便可以對FPGA進行重新配置。初始化過程完成後,DONE信

号将會變低。

(2)清空配置存儲器

在完成初始化過程後,器件會将INIT信号置低電平,同時開始清空配置存儲器。在清空完配置存儲器後,INIT信号将會重新被置為高電平。使用者可以通過将PROG或INIT信号(1NIT為雙向信号)置為低電平,進而達到延長清空配置存儲器的時間,以确儲存儲器被清空的目的。

(3)加載配置資料

配置存儲器的清空完成後,器件對配置模式腳M2、N1、M0進行采樣,以确定用何種方式來加載配置資料。圖1為并行配置方式的時序圖。

(4)CRC錯誤檢查

器件在加載配置資料的同時,會根據一定的算法産生一個CRC值,這個值将會和配置檔案中内置的CRC值進行比較,如果兩者不一緻,則說明加載發生錯誤,INIT引腳将會被置低電平,加載過程被中斷。此時若要進行重新配置,隻需将PROG置為低電平即可。

FPGA的配置及接口電路

(5)START-UP

START-UP階段是FPGA由配置狀态過渡到使用者狀态的過程。在START-UP完成後,FPGA便可實作使用者程式設計的功能。在START-UP階段中,FPGA會進行一下操作:

①将DONE信号置高電平,若DONE信号沒有置高,則說明資料加載過程失敗;

②在配置過程中,器件的所有I/O引腳均為三态,此時,全局三态信号GTS置低電平,這些I/O腳将會從三态切換到使用者設定的狀态;

③全局複位信号GSR置低電平,所有觸發器進入工作狀态;

④全局寫允許信号GWE置低電平,所有内部RAM有效;

整個過程共有8個時鐘周期C0-C7。在預設的情況下,這些操作都和配置時鐘CCLK同步,在DONE信号置高電子之前,GTS,GSR,GWE都保持高電平。

圖2為FPGA配置的流程圖。

FPGA的配置及接口電路

4 SelectMap并行配置模式

Virtex系列FPGA是Xilinx公司的一款高密度,大容量的現場可程式設計門陣列,其最大容量可達100萬門,最高工作頻率可達200M,支援多達16種I/O标準,内置了4個BLOCKRAM。這些特性使它在數字圖像處理,通信等領域得到了廣泛的應用。

SelectMap模式是一種8位并行配置模式,它是Virtex系列FPGA最快的一種配置模式,其配置時鐘最高可達66MHZ,每個配置時鐘周期内有8位配置資料下載下傳到FPGA内。在對配置速度要求較高的一些應用場合,一般使用SelectMap模式。

SelectMap端口是一個8位雙向資料端口,通過它實作對Virtex的配置。利用SelectMap對Virtex進行配置時,共有8個資料信号D0-D7和7個控制/狀态信号,分别為:CCLK,PROG,DONE,INIT,CS,WRITE,BUSY。

對Virtex進行并行配置,應用最為廣泛的接口電路便是CPLD+并行EPROM。圖3為此接口電路的框圖。

FPGA的配置及接口電路

由于FPGA管腳内部有上拉電阻,是以,當管腳懸空時,便是高電平。

CPLD所要實作的功能子產品包括:地 址發生器,寫控制寄存器,三态緩沖。其中,PROG為全局複位,DONE為全局 三态控制,INIT和BUSY用來控制位址發生器;位址發生器的總線位寬由存儲器的容量決定,若EPROM的容量為1MByte,則位址總線需要20位;在配置階段,CS和WRITE引腳必須置低電平。

對VIRTEX系列的FPGA而言,其配置時鐘最高可達66MHZ,但是,在一般情況下,配置時鐘是達不到66MHZ的,它由PROM的存儲時間(tACC)和FPGA配置資料的建立時間(tSMDCC)決定的:晶振頻率:1/(tACC+TSMDCC)。VIRTEX的TSMDCC為2.0ns,EPROM的存取時間通常為l00ns,在這種情況下,配置時鐘為9.6MHZ,要遠遠低于66MHZ,是以,提高配置速度關鍵是要選用存取速度快的EPROM。

5串行菊花鍊配置方式

串行菊花鍊配置方式是指将配置資料從串行PROM順序下載下傳到主FPGA器件和從FPGA器件中。配置時鐘CCLK由主FPGA器件提供。圖4為串行菊花鍊配置框圖。

FPGA的配置及接口電路

圖中XC1700為XILINX的用于配置FPGA的串行PROM。

主器件将會被首先配置,在主器件配置完成前,其Dout引腳是沒有資料輸出的,從器件處于空閑狀态。在主器件配置完成後,其Din,Dout便形成直通狀态,配置資料通過主器件的Dout進入從器件的Din,對從器件進行配置。

由于菊花鍊配置方式要求隻能有一個用于下載下傳的位流檔案,是以,需要在軟體開發環境中利用PROM檔案生成工具将将主器件和從器件的配置位流檔案合成為一個檔案。

主器件在配置完成後,并不立即啟動,進入工作狀态。隻有菊花鍊中所有FPGA的DONE引腳都被置為高電平時,即所有的配置資料都下載下傳到相應的FPGA中,各個器件才會啟動,其各自的全局三态結束GTS、全局複位GSR、全局寫允許GWE才會置低電平。是以,雖然主從器件的配置是有先後順序的,但基本上它們是同時進入工作狀态的。 6結束語

使用并行EPROM對FPGA進行配置時,速度相對較快,存儲容量較大;而在一些對空間較為敏感,速度要求不太高的應用中,利用串行方法進行配置,可以減小電路闆的面積,同時可以簡化系統結構。

本文摘自《電子技術與品質工程》

文章引用自: http://www.chinaecnet.com/xsj04/xsj043721.asp 引用 閱讀(97) 圈子 編輯 列印 有獎舉報

繼續閱讀