新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 高速低功耗FPGA的應用設計

        高速低功耗FPGA的應用設計

        作者:■北京航空航天大學圖象中心 程子敬 姜宏旭 時間:2001-08-08 來源: 收藏

        Actel公司是眾多FPGA生產廠家中的著名供應商,美國的火星探路者使用了該公司的FPGA,表明它具有優異性能。

        本文引用地址:http://www.104case.com/article/3046.htm

        54SX系列FPGA是公司新一代產品,采用Actel專利的反熔絲技術制成。SX系列器件采用FastConnectDirectConnect兩種創新的局部連線資源將邏輯塊連接在一起。一方面,這兩種連線為分段式連線資源,因而連接電容更小。分段結構還允許切斷未使用連線,進一步減小電容,連接電容的減小意味著功耗的降低;另一方面,該系列器件是在細顆粒的4輸入多路選擇器基本邏輯塊上構建的,并且具備有多個控制輸入,一個基本單元能實現所有5輸入邏輯功能,使大規模的邏輯映射更有效。這種細顆粒結構與大量分段式連線資源的結合,有助于在不降低性能的前提下減小功耗。

        與其它FPGA廠家的產品相比,54SX系列器件還具有以下優勢:

        * 可靠性高:芯片內部采用金屬-金屬反熔絲元件,編程后內部連接為永久的反熔絲型連接,而反熔絲互連就象純金屬連接一樣,防靜電及電磁干擾;

        * 功耗低:反熔絲結構消除了靜態存儲器互連開關的功耗,并且由于邏輯信息是永久性編程的,器件在通電序列中無需進行重構,信息的存儲與保持不消耗電流,從而減小靜態電流,降低功耗;

        * 保密性好:采用多層邏輯單元,內部邏輯易破解。

        Actel FPGA實現的數字邏輯電路設計,必須采用先進的EDA(電子設計自動化)軟件,該類軟件一般包括兩部分:邏輯電路設計部分和FPGA布局布線器。本文邏輯電路設計工具主要采用的是ViewLogic公司(已更名為Innoveda公司——編者注)WorkView Office軟件包和Actel公司的邏輯功能模塊產生器Actgen Macro Builder。布局布線器是Actel公司的Designer軟件。

        WorkView Office軟件包集成了多種數字電路計算機輔助設計工具,包括電路原理圖輸入軟件ViewDrawVHDL(超高速集成電路硬件設計描述語言)、仿真軟件SpeedWaveVHDL綜合工具FPGA Express、門級電路仿真工具ViewSim、信號波形與時序顯示工具ViewWaves、邏輯設計結果與FPGA布局布線器接口軟件EDIF Interface等幾部分。

        Actgen Macro Builder主要功能是生成基于Actel元件庫的可參數化的常用邏輯模塊,例如,計數器、寄存器、加法器、比較器等等。這些功能模塊可在ViewDraw中實例化,作為更上層功能單元的子模塊使用。Designer軟件包括EDIF編譯、工藝映射、設計優化、延時約束、FPGA引腳指定、自動布局布線、延時分析、延時信息反標注、邏輯信息固化文件生成等多種功能。

        為提高FPGA的數據處理速度及降低芯片功耗,邏輯電路設計應重點采用以下措施:

        1)采用流水線,降低芯片功耗,提高系統時鐘。流水線是一種設計技巧,它在很長的組合邏輯路徑中插入寄存器,寄存器雖增加了運算周期數,卻能大大減少組合邏輯延時,提高整個系統工作頻率。例如,在如下計算模型Err=a-b-c+d中,沒有流水線的電路如圖1(a),引入流水線后,電路如圖1(b)。

        為考察圖1a與圖1b兩種電路的速度差別,本文進行如下實驗:

        實驗1:設計兩套數字電路AB,并分別以兩片FPGA54SX32PQ208來實現,其中電路A與圖1a無流水線電路對應,電路B與圖1b有流水線電路對應,電路AB都使用具有超前進位功能的16位快速加法器和減法器。仿真結果如表1A,B所示。

        結論:有流水線電路B在占用資源略有增加情況下,工作速度是沒有流水線電路A2倍多,可見,少量資源換來了芯片工作速度的成倍增加。

        2)按面積優化組合邏輯,減小組合邏輯的復雜性,從而減少組合電路需要的邏輯門數量,邏輯門數的減少,意味著芯片功耗的降低。流水線的使用已經保證芯片具有足夠高的處理速度,各個寄存器間的組合邏輯不再以速度為優化目標進行設計,考慮到功耗要求,應以最少的邏輯門數實現該功能。例如,上面預測誤差的計算電路,其中加法器、減法器都使用簡單的結構形式,而不再使用超前進位或更復雜的結構,這樣可以在節省邏輯門數情況下,電路仍具有高的處理速度,實驗結果如表1

        實驗2:使用結構簡單的加法器、減法器流水線電路C與電路AB的比較實驗。電路C采用流水線結構,使用的加法器、減法器也是16位,但結構比電路AB中的加法器、減法器簡單,該電路在一片FPGA54SX32PQ208內實現。仿真結果如表1C所示。

        結論:同電路A相比,電路C在資源節省13%條件下,工作頻率高出電路A 15%,達到45MHz以上;與電路B相比,電路C節省資源20%以上,并且由于45MHz的工作頻率對于復雜功能芯片(例如圖像或視頻編解碼芯片)來講,已經足夠了。由此可見:在使用流水線的情況下,應以邏輯門數為優化目標,設計組合邏輯電路。

        3)以原理圖描述功能模塊的數據流,以VHDL語言的行為語句描述控制流。這種邏輯電路設計思想,充分利用原理圖設計直觀、形象和VHDL輸入法簡單明了的優勢,既可以獲得具有高效率流水線結構的同步電路,又能夠大大縮短設計時間。

        4)在電路設計過程中,應使用“自底向上”與“自頂向下”設計相結合、“邏輯設計”與“功能仿真”交替進行的設計技巧,以保證邏輯電路的層次化、模塊化以及功能的正確性。首先把邏輯復雜的功能模塊,分割為幾個相對簡單的小模塊;然后分別設計這些小模塊,進行功能仿真,發現錯誤,修改設計,再仿真……,直到功能完全正確;再實例化小模塊,組成功能復雜的大模塊,依舊重復功能仿真、修改設計的過程;再實例化這些大模塊,構成更上層模塊……,最后獲得功能完全正確的邏輯電路。

        如果邏輯電路不可能在單個芯片上實現,必須對原有邏輯電路進行功能拆分,分割為若干功能塊,每個功能塊在一片FPGA中實現,整個電路由一組芯片實現。

        電路拆分是一項具有試湊特點的工作,但還是有一定規律可以遵循:

        1) 按照VLSI結構設計時形成的功能模塊分割邏輯電路,同一功能模塊中的邏輯電路在一片FPGA中實現,這樣保證了系統設計時的模塊化,便于設計的再利用、修改與升級。

        2) 邏輯分割沒有必要平均化,而是考慮模塊功能的相對獨立性與模塊間的數據交換量,功能模塊間數據交換鏈路多的邏輯電路在一片FPGA內實現,這樣可以減少芯片的I/O引腳,降低功耗。

        3)如果使用了片外存儲器,功能分割要使FPGA芯片組與存儲器之間的連接關系簡單,有利于PCB布局布線。

        邏輯電路設計完成,按以下步驟在FPGA中物理實現:

        1)、生成EDIF文件:使用 EDIF Interface工具將原理圖轉化成EDIF文件。

        2)、編譯:使用Designer軟件編譯該EDIF文件,并指定FPGA器件為54SX系列。

        3)、引腳定義:按照有利于印刷線路板設計的原則,定義FPGA引腳功能。

        4)、布局布線:啟動FPGA自動布局布線器。

        5)、延時分析:布局布線完成后,利用Designer軟件進行分析,從中得到芯片的最高工作頻率。

        6)、延時仿真:提取布局布線后的延時信息,進行延時仿真。

        7)、生成邏輯信息固化文件:延時仿真通過后,由Designer生成邏輯信息固化文件。

        8)、制造芯片:使用特定編程器根據邏輯信息固化到FPGA中,從而制成專用芯片。■

        參考文獻

        Actel公司,Actel FPGA Data Book,2000.



        關鍵詞:

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 青川县| 方山县| 新疆| 青铜峡市| 肥东县| 公安县| 威海市| 宁波市| 竹溪县| 澄城县| 杭锦后旗| 宜城市| 青海省| 宝应县| 进贤县| 芦山县| 屯门区| 秦皇岛市| 海南省| 莎车县| 峨眉山市| 轮台县| 泊头市| 巴林左旗| 卢湾区| 太和县| 白城市| 淮北市| 河津市| 日土县| 贺州市| 南康市| 富川| 丰顺县| 崇礼县| 彝良县| 灌云县| 镇雄县| 和平区| 于都县| 自贡市|