馬萌 葉關山



摘 要:本文針對傳統邏輯固化方式的瓶頸,提出了配置芯片邏輯固化設備的高效方案及實現方法,并通過對比分析,采用本方案生產效率可得到顯著提升。
關鍵詞:FPGA;邏輯固化;配置芯片
中圖分類號:TN79 文獻標識碼:A 文章編號:1671-2064(2020)12-0051-02
0引言
FPGA的使用需要將邏輯固化于存儲器,按照存儲器的位置Xilinx的FPGA可大致分為存儲器內置和存儲器外置兩類。存儲器內置的FPGA包括早期的95144、95288等,以及當前廣泛使用的XC3S400AN、XC4VLX25等,存儲器外置FPGA包括早期的XQ4010+XC17256(SM1701)、XCV600/XQV300+XQ18V04,以及當前廣泛使用的XC5VFX200T/XC6VHX380T+XCF128XFT。事實上,這類外置的存儲器可以稱作FPGA配置芯片,邏輯即固化于這類芯片。
邏輯固化的方式一般采用JTAG接口連接。對于存儲器內置的FPGA,可直接連接JTAG接口進行固化,對于存儲器外置的FPGA需要根據存儲芯片的特性采取不同的方式。對于18v04這類有外接JTAG接口的芯片,可直接連接JTAG;對于XCF128XFT這類沒有外接JTAG接口的芯片,需要經由FPGA通過SPI/BPI的方式連接。
配置芯片的邏輯固化耗時過長已成為制約生產效率的重要問題,而JTAG接口正是造成這一問題的瓶頸。本文以廣泛使用的配置芯片XCF128XFT為例,提出了配置芯片邏輯固化設備的高效方案。
1固化設備實現方案
1.1 固化設備原理
本文提出的配置芯片邏輯固化設備設計方案,采用FPGA作為主控單元,千兆以太網作為固化設備與PC機的接口,對待配置的PROM,采用16bit并行接口。
設備分為上位機軟件、固化設備硬件兩大部分,設備硬件又可分為固化硬件、IC測試座兩部分。
1.2 FPGA單元設計
FPGA單元需要實現的功能包括以下幾點:
(1)實現千兆以太網接口的初始化配置和傳輸控制;
(2)完成配置數據的緩存、接收和發送等任務;
(3)數據格式轉換。
FPGA單元的主要元器件為FPGA及外圍電路。固化設備需要高速處理配置流數據,完成千兆以太網接口的收發和PROM接口的控制,所以,高性能的FPGA是固化設備的最佳選擇。
在設計時計劃選擇XILINX公司的28nm高性能低功耗的Kintex-7系列FPGA XC7K160T-2FBG676I作為系統的控制芯片。該系列FPGA設計在高端性能的基礎上實現了最低的功耗,可提供高密度邏輯、高性能收發器、存儲器、DSP以及混合信號,通過這些功能可以提高系統級性能,并可以更緊密地進行集成,非常適合本方案中高速數據的處理任務[1]。
XC7K160T-2FBG676I的主要參數如表1所示。
1.3 固化設備與PC機千兆網接口設計
傳統方法中,配置數據傳輸的一個瓶頸主要在于串行的JTAG接口,因此,為了從根本上提高系統數據傳輸速率,達到PROM芯片800Mpbs的最大工作帶寬,固化設備與PC機接口采用千兆以太網實現。
千兆以太網理論速度能夠達到1000Mbps,實際應用中,有效數據的吞吐率完全可以達到800Mbps,很好地解決數據的傳輸瓶頸問題。
本方案中,千兆網接口模塊主要采用PHY芯片88E1111與FPGA直接相連,通過上電時FPGA對88E1111進行配置,使其工作在RGMII模式。FPGA按照RGMII協議,產生數據發送時88E1111所需要的輸入信號,同時接收88E1111接收到的數據[2]。
PHY芯片88E1111工作在RGMII模式時所需要的輸入信號有發送時鐘、使能和數據。千兆網接口模塊的輸入輸出信號如圖1所示。
在程序的設計上,需要對輸入的8bit并行數據先送入FIFO進行緩存,千兆網模塊在輸出時,先輸出幀頭,接下來是目的地址、源地址、接著在時鐘的上升沿輸出數據的低4位,下降沿輸出數據的高4位,每一幀輸出的數據長度可由程序中的參數決定,最后輸出奇偶校驗位。
方案中采用FPGA實現MAC層協議,可以大大提高系統的集成度和可靠性,具體的RGMII接口原理圖見圖2所示。
1.4系統電源設計
固化設備輸入電壓采用常用的12V供電,各個單元需要的電壓包括:FPGA接口電壓3.3V,核心電壓1.0V;以太網接口芯片接口電壓3.3V,核心電壓1.2V;PROM接口電壓3.3V,核心電壓1.8V。
針對這些電壓,采用凌特公司的四輸出芯片LTM4644實現。該芯片輸入電壓范圍為4V~14V,適應范圍較寬;有4路相同技術參數的輸出通道,輸出電壓范圍為0.6V~5.5V,每路的工作電流可支持4A,完全滿足設計需求。
2性能分析與對比
首先,由于離線的方式對PROM進行燒寫,固化設備專門用于燒寫PROM,I/O資源沒有太大的限制,因此,可以采用并行燒寫的方式。而產品中可以根據具體情況采用并行或串行的方式,在上電的時候,進行配置數據的加載。
其次,采用千兆以太網接口傳輸PC機上的配置數據,千兆以太網理論速度能夠達到1000Mbps,實際應用中,有效數據的吞吐率完全可以達到800Mbps。FPGA通過千兆以太網接口接收到這些數據后,將配置數據以并行的方式寫入PROM,并行讀寫的工作頻率為50MHz,保證了FPGA與PROM之間接口的帶寬為800Mpbs,與千兆以太網接口速度相近[3],表2為本方案與傳統方案中,各接口與系統性能的對比。
本方案的設計保證了整個固化器的帶寬與PROM的最大帶寬相符,使系統不存在其它的瓶頸,相比于傳統的通過JTAG接口傳輸數據的方式,極大地提高了系統速度和燒寫效率。
由分析結果可見,本方案相比于在線的方式,效率提高了大約80倍。相比于現有的燒寫器,單套的效率也提高3倍。在較大批量的生產任務中,本方案固化設備所帶來的生產效率提升的效果會更加明顯。如果采用組網多臺固化設備同時燒寫的方式,更能夠成倍提高生產效率。
3結語
針對傳統邏輯固化方式的瓶頸,提出的FPGA配置芯片邏輯固化設備的方案,較之傳統方式,具有高效率、高可靠、可擴展的顯著優勢,可大大提升邏輯固化水平。
參考文獻
[1] 任程.DSP+FPGA平臺功耗管理的研究與實現[D].哈爾濱:哈爾濱工業大學,2016.
[2] 楊青山.基于FPGA的千兆以太網接口應用研究與實現[J].無線互聯科技,2018(8):37-38+43.
[3] 石雪梅,計賢春.FPGA配置芯片測試方法的研究與實現[J].計算機與數字工程,2010(9):77-79+87.