基于EDA技術的FPGA設計

時間:2022-11-17 11:13:00

導語:基于EDA技術的FPGA設計一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。

基于EDA技術的FPGA設計

對傳統電子系統設計方法與現代電子系統設計方法進行了比較,引出了基于eda技術的現場可編程門陣列(fpga)電路,提出現場可編程門陣列(FPGA)是近年來迅速發展的大規模可編程專用集成電路(ASIC),在數字系統設計和控制電路中越來越受到重視。介紹了這種電路的基本結構、性能特點、應用領域及使用中的注意事項。對基于EDA技術的FPGA進行了展望。指出EDA技術將是未來電子產品設計技術發展的主要方向。

集成電路技術和計算機技術的蓬勃發展,讓電子產品設計有了更好的應用市場,實現方法也有了更多的選擇。傳統電子產品設計方案是一種基于電路板的設計方法,該方法需要選用大量的固定功能器件,然后通過這些器件的配合設計從而模擬電子產品的功能,其工作集中在器件的選用及電路板的設計上。

隨著計算機性價比的提高及可編程邏輯器件的出現,對傳統的數字電子系統設計方法進行了解放性的革命,現代電子系統設計方法是設計師自己設計芯片來實現電子系統的功能,將傳統的固件選用及電路板設計工作放在芯片設計中進行。從20世紀90年代初開始,電子產品設計系統日趨數字化、復雜化和大規模集成化,各種電子系統的設計軟件應運而生。

在這些專業化軟件中,EDA(ElectronicDesignAutomation)具有一定的代表性,EDA技術是一種基于芯片的現代電子系統設計方法。它的優勢主要集中在能用HDL語言進行輸入、進行PLD(可編程器件)的設計與仿真等系統設計自動化上;20世紀90年末,可編程器件又出現了模擬可編程器件,由于受技術、可操作性及性價比的影響,今后EDA技術會向模擬可編程器件的設計與仿真方向發展,并占據市場的一定份額。

EDA技術主要包括大規模可編程邏輯器件、硬件描述語言、開發軟件工具及實驗開發系統4個方面。其中,大規模可編程邏輯器件是利用EDA技術進行電子系統設計的載體硬件,描述語言是利用EDA技術進行電子系統設計的主要表達手段,開發軟件工具是利用EDA技術進行電子系統設計的智能化與自動化設計工具,實驗開發系統則是提供芯片下載電路及EDA實驗、開發的外圍資源。

FPGA結構概述

現場可編程門陣列FPGA作為集成度和復雜程度最高的可編程ASIC。是ASIC的一種新型門類,它建立在創新的發明構思和先進的EDA技術之上。運算器、乘法器、數字濾波器、二維卷積器等具有復雜算法的邏輯單元和信號處理單元的邏輯設計都可選用FPGA實現。以Xilinx的FPGA器件為例,它的結構可以分為3個部分:可編程邏輯塊CLB(ConfigurableLogicBlocks)、可編程I/O模塊IOB(Input/OutputBlock)和可編程內部連接PI(ProgrammableInterconnect)。CLB在器件中排列為陣列,周圍環形內部連線,IOB分布在四周的管腳上。Xilinx的CLB功能很強,不僅能夠實現邏輯函數,還可以配置成RAM等復雜的形式。

現場可編程門陣列FPGA是含有大規模數字電路的通用性器件。這些數字電路之間的互聯網絡是由用戶使用更高級的軟件來定義的。FPGA可以進行無限次的重復編程,從一個電路到另一個電路的變化是通過簡單的卸載互聯文件來實現的,極大地推動了復雜數字電路的設計,縮短了故障檢查的時間。

傳統的數字邏輯設計使用TTL電平和小規模的數字集成電路來完成邏輯電路圖。使用這些標準的邏輯器件已經被證實是最便宜的手段,但是要求做一些布線和復雜的電路集成板(焊接調試)等工作,如果出現錯誤,改動起來特別麻煩。因此,采用傳統電子設計方案人員的很大一部分工作主要集中在設備器件之間物理連接、調試以及故障解決方面。正是因為FPGA的EDA技術使用了更高級的計算機語言,電路的生成基本上是由計算機來完成,將使用戶能較快地完成更復雜的數字電路設計,由于沒有器件之間的物理連接,因此調試及故障排除更迅速、有效。

可編程特點有助復雜電路設計

FPGA能進行無限次的重復編程。因此能夠在相同的器件上進行修改和卸載已經完成好的設計。在一個FPGA芯片上的基本部件數量增加了很多,這使得在FPGA上實現非常復雜的電子電路設計變成比較現實。由于采用FPGA的EDA技術所產生的性價比更高一些,從而使得最近有多家公司開始采用這項技術,并且這種增長趨勢仍舊在繼續。

FPGA中的邏輯塊是CLB,邏輯塊是指PLD(ProgrammableLogicDevice)芯片中按結構劃分的功能模塊,它有相對獨立的組合邏輯單元,塊間靠互連系統聯系。FPGA的邏輯塊粒度小,輸入變量為4~8,輸出變量為1~2,每塊芯片中有幾十到上千個這樣的單元,使用時非常靈活。FPGA內部互連結構是靠可編程互聯PI實現邏輯塊之間的聯接。它的互聯是分布式的,它的延時與系統布局有關,不同的布局,互聯延時不同。根據FPGA的不同類型,可采用開關矩陣或反熔線絲技術將金屬線斷的端點連接起來,從而使信號可以交換于任意兩邏輯單元之間。

采用FPGA技術集成設計數字電路產品最大的特點就是可以使設計和實現相統一,無須前期風險投資,而且設計實現均在實驗室的EDA開發系統上進行,周期很短,大大有利于現代產品的市場競爭需求,所以,FPGA的應用設計,特別適應于電子新產品的小批量開發,科研項目的樣機試制以及ASIC產品設計的驗證,能夠進行現場設計實現、現場仿真及現場修改。由此,受到電子產品設計工程師的廣泛推崇和歡迎。

FPGA的應用領域

FPGA所具有的無限次可重復編程能力,靈活的體系結構,豐富的觸發器及布線資源等一系列的特點使得它可以滿足電子產品設計的多種需求。FPGA的應用領域主要集中在替換通用邏輯和復雜邏輯、重復編程使用、板極設計集成、高速計數器、加減法器、累加器和比較器的實現、總線接口邏輯等方面。

應用和開發FPGA必須對器件的性能有一個全面了解,例如對器件的容量、速度、功耗,接口要求和引腳數目等進行綜合考慮,同時還要注意以下幾個細節問題:

●時序電路應用“上電”復位電路,保證開機加電后,置時序電路于初始狀態;

●器件的電源與地引腳必須并接一只0.1μF的無感電容,起濾波和去耦作用;

●不能采用數目是偶數的反向器串聯的方法構成“延時電路”,一則延時的時間不準確,二則自動編譯時會作為冗余電路被簡化掉;

●主要的全局緩沖器必須由半專用的焊盤驅動,次要的全局緩沖器可以來源于半專用的焊盤或內部網線;

●引腳之間嚴禁短路,忌用萬用表直接測量器件引腳;

●器件的I/O口如被定義為輸出端,忌對該端加信號,否則將損壞芯片;

●低功耗的器件如接負載過大時,不僅會使所用器件的工作效率顯著降低,甚至會損傷芯片。

結語

基于EDA技術的現場可編程門陣列FPGA集成度高,結構靈活,設計方法多樣,開發周期短,調試方便,修改容易,應用領域極為廣泛。面對科學技術高速發展、市場競爭十分激烈的現實,熟練的掌握EDA設計技術,靈活巧妙的使用FPGA至關重要,其前景將是十分樂觀的。