FPGA技術

為希科技

FPGA技術

FPGA技術

刊登日期 : 2009-11-29


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的硬體系統進行統一測試,以便最終驗証設計項目在目標系統上的實際工作情況,以排除錯誤,改進設計。

 

全文摘錄自︰互動百科 http://www.hudong.com/wiki/FPGA%E6%8A%80%E6%9C%AF

This website uses cookies to ensure you get the best experience on our website.

Learn More Got It