FPGA技術

FPGA技術

現場可程式門陣列FPGA(FieldProgrammable Gate Array)是美國Xilinx公司於1984年首先開發的一種通用型用戶可程式器件。FPGA既具有門陣列器件的高集成度和通用性,又有可程式邏輯器件用戶可程式的靈活性。

FPGA的介紹:

FPGA是英文Field Programmable Gate Array的縮寫,即現場可程式門陣列,它是在PAL、GAL、PLD等可程式器件的基礎上進一步發展的產物。它是作為專用積體電路(ASIC)領域中的一種半定製電路而出現的,既解決了定製電路的不足,又克服了原有可程式器件門電路數有限的缺點。

FPGA採用了邏輯單元陣列LCA(Logic Cell Array)這樣一個新概念,內部包括可配置邏輯模組CLB(Configurable Logic Block)、輸出輸入模組IOB(Input Output Block)和內部連線(interconnect)三個部分。FPGA的基本特點主要有:
1)採用FPGA設計ASIC電路,用戶不需要投片生產,就能得到合用的晶片。

2)FPGA可做其它全定製或半定製ASIC電路的中試樣片。

3)FPGA內部有豐富的觸發器和I/O引腳。

4)FPGA是ASIC電路中設計周期最短、開發費用最低、風險最小的器件之一。

5) FPGA採用高速CHMOS工藝,功耗低,可以與CMOS、TTL電平兼容。

可以說,FPGA晶片是小批量系統提高系統集成度、可靠性的最佳選擇之一。
目前FPGA的品種很多,有XILINX的XC系列、TI公司的TPC系列、ALTERA公司的FIEX系列等。
FPGA是由存放在片內RAM中的程式來設定其工作狀態的,因此,工作時需要對片內的RAM進行編程。用戶可以根據不同的配置模式,採用不同的編程方式。
加電時,FPGA晶片將EPROM中數據讀入片內編程RAM中,配置完成後,FPGA進入工作狀態。掉電後,FPGA恢復成白片,內部邏輯關係消失,因此,FPGA能夠反覆使用。FPGA的編程無須專用的 FPGA編程器,只須用通用的EPROM、PROM編程器即可。當需要修改FPGA功能時,只需換一片EPROM即可。這樣,同一片FPGA,不同的編程數據,可以產生不同的電路功能。因此,FPGA的使用非常靈活。
FPGA有多種配置模式:並行主模式為一片FPGA加一片EPROM的方式;主從模式可以支持一片PROM編程多片FPGA;串列模式可以採用串列PROM編程FPGA;外設模式可以將FPGA作為微處理器的外設,由微處理器對其編程。

FPGA的設計流程
設計的一般步驟為:
1.設計輸入。 使用EDA工具的設計輸入可分為兩種類型:a)圖形輸入b)HDL文本輸入。圖形輸入通常包括原理圖輸入、狀態圖輸入和波形圖輸入三種常用方法。HDL文本輸入與傳統的計算機軟體語言編輯輸入基本一致。就是將使用了某種硬體描述語言(HDL)的電路設計文本,如VHDL或Verilog的源程式,進行編輯輸入。
2.綜合。 一般來說,綜合是僅對應於HDL而言的。綜合過程將把軟體設計的HDL描述與硬體結構掛鈎,是將軟體轉化為硬體電路的關鍵步驟,是文字描述與硬體實現的一座橋樑。綜合就是將電路的高級語言轉換成低級的,可與FPGA的基本結構相映射的網表檔案或程式。
3.適配。 適配器也稱結構綜合器,它的功能是將由綜合器產生的網表檔案配置與指定的目標器件中,使之產生最終的下載檔案,如JEDEC、Jam格式的檔案。適配所選定的目標器件(FPGA/CPLD晶片)必須屬於原綜合器指定的目標器件系列。通常,EDA軟體中的綜合器可由第三方EDA公司提供,而適配器則需由FPGA/CPLD供應商提供。因為適配器的適配對象直接與器件的結構相對應。邏輯綜合通過後必須利用適配器將綜合後網表檔案針對某一具體的目標器件進行邏輯映射操作,其中包括底層器件配置、邏輯分割、邏輯最佳化、邏輯布局布線操作。適配完成後可以利用適配所產生的仿真檔案作精確的時序仿真,同時產生可套用於編程的檔案。
4.時序仿真與功能仿真。 在編程下載前必須利用EDA工具對適配生成的結果進行模擬測試,就是所謂的仿真。仿真就是讓計算機根據一定的算法和一定的仿真庫對EDA設計進行模擬,以驗證設計,排除錯誤。
5.編程下載。 把適配後生成的下載或配置檔案,通過編程器或編程電纜向FPGA或CPLD進行下載,以便進行硬體調試和驗證(Hardware debugging)。通常,將對FPGA中的SRAM進行直接下載的方式成為配置,但對於OTP FPGA的下載和對FPGA的專用配置ROM的下載仍稱為編程。
6.硬體測試。 最後是將含有載入了設計的FPGA或CPLD的硬體系統進行統一測試,以便最終驗證設計項目在目標系統上的實際工作情況,以排除錯誤,改進設計。

熱門詞條

聯絡我們