新聞中心

PLD/FPGA新手入門

作者: 時間:2008-02-18 來源:與非網 收藏

PLD是可編程邏輯器件(Programable Logic Device)的簡稱,F(xiàn)PGA是現(xiàn)場可編程門陣列(Field Programable Gate Array)的簡稱,兩者的功能基本相同,只是實現(xiàn)原理略有不同,所以我們有時可以忽略這兩者的區(qū)別,統(tǒng)稱為可編程邏輯器件或PLD/FPGA。

PLD是電子設計領域中最具活力和發(fā)展前途的一項技術,它的影響絲毫不亞于70年代單片機的發(fā)明和使用。

PLD能做什么呢?可以毫不夸張的講,PLD能完成任何數(shù)字器件的功能,上至高性能CPU,下至簡單的74電路,都可以用PLD來實現(xiàn)。PLD如同一張白紙或是一堆積木,工程師可以通過傳統(tǒng)的原理圖輸入法,或是硬件描述語言自由的設計一個數(shù)字系統(tǒng)。通過軟件仿真,我們可以事先驗證設計的正確性。在PCB完成以后,還可以利用PLD的在線修改能力,隨時修改設計而不必改動硬件電路。使用PLD來開發(fā)數(shù)字電路,可以大大縮短設計時間,減少PCB面積,提高系統(tǒng)的可靠性。 PLD的這些優(yōu)點使得PLD技術在90年代以后得到飛速的發(fā)展,同時也大大推動了EDA軟件和硬件描述語言(HDL)的進步。

如何使用PLD呢?其實PLD的使用很簡單,學習PLD比學習單片機要簡單的多,有數(shù)字電路基礎,會使用計算機,就可以進行PLD的開發(fā)。不熟悉PLD的朋友,可以先看一看可編程邏輯器件的發(fā)展歷程。

開發(fā)PLD需要了解兩個部分:1.PLD開發(fā)軟件 2.PLD本身



1.PLD開發(fā)軟件

由于PLD軟件已經發(fā)展的相當完善,用戶甚至可以不用詳細了解PLD的內部結構,也可以用自己熟悉的方法:如原理圖輸入或HDL語言來完成相當優(yōu)秀的PLD設計。所以對初學者,首先應了解PLD開發(fā)軟件和開發(fā)流程。了解PLD的內部結構,將有助于提高我們設計的效率和可靠性。

如何獲得PLD開發(fā)軟件軟件呢? 許多PLD公司都提供免費試用版或演示版(當然商業(yè)版大都是收費的),例如:可以免費從www.altera.com 上下載Altera公司的 QuartusII (web版),或向其代理商索取這套軟件。Xilinx 公司也提供免費軟件:ISE WebPack,這套可以從xilinx網站下載。Lattice 提供isplever Base版下載,Actel等公司也都有類似的免費軟件提供。以上免費軟件都需要在網上注冊申請License文件,如果您對License的安裝還有不清楚,請仔細閱讀相關網頁上的說明,也可以下載這篇文檔:EDA軟件的license管理與安裝。 通常這些免費軟件已經能夠滿足一般設計的需要,當然,要想軟件功能更強大一些,只能購買商業(yè)版軟件。

如果您打算使用VHDL或Verilog HDL硬件描述語言來開發(fā)PLD/FPGA,通常還需要使用一些專業(yè)的HDL開發(fā)軟件,這是因為FPGA廠商提供的軟件的HDL綜合能力一般都不是很強,需要其他軟件來配合使用,詳細情況可以通過瀏覽:開發(fā)軟件欄目獲得等多信息.

對于PLD產品,一般分為:基于乘積項(Product-Term)技術,EEPROM(或Flash)工藝的中小規(guī)模PLD,以及基于查找表(Look-Up table)技術,SRAM工藝的大規(guī)模PLD/FPGA。EEPROM工藝的PLD密度小,多用于5,000門以下的小規(guī)模設計,適合做復雜的組合邏輯,如譯碼。SRAM工藝的PLD(FPGA),密度高,觸發(fā)器多,多用于10,000門以上的大規(guī)模設計,適合做復雜的時序邏輯,如數(shù)字信號處理和各種算法。如希望進一步了解PLD/FPGA結構與原理,請點擊此處。

目前有多家公司生產CPLD/FPGA,最大的三家是:ALTERA,XILINX,Lattice, 您可以參閱PLD廠商欄目獲得更多信息



2.PLD/FPGA的分類和使用

在PLD/FPGA開發(fā)軟件中完成設計以后,軟件會產生一個最終的編程文件(如 .pof )。如何將編程文件燒到PLD芯片中去呢?

1.對于基于乘積項(Product-Term)技術,EEPROM(或Flash)工藝的PLD(如Altera的MAX系列,Lattice的大部分產品,Xilinx的XC9500,Coolrunner系列), 廠家提供編程電纜,電纜一端裝在計算機的并行打印口上,另一端接在PCB板上的一個十芯插頭,PLD芯片有四個管腳(編程腳)與插頭相連。(如圖)

下載 ALTERA 編程電纜(Byteblaster MV)的數(shù)據手冊

下載 Xilinx編程電纜的電路原理圖

下載 Lattice的電纜資料


它向系統(tǒng)板上的器件提供配置或編程數(shù)據,這就是所謂的在線可編程(ISP,如下圖)。Byteblaster使用戶能夠獨立地配置PLD器件,而不需要編程器或任何其它編程硬件。編程電纜可以向代理商購買,也可以根據廠家提供的編程電纜的原理圖自己制作,成本僅需一,二十元。 早期的PLD是不支持ISP的,它們需要用編程器燒寫。目前的PLD都可以用ISP在線編程,也可用編程器編程。這種PLD可以加密,并且很難解密,所以常常用于單板加密。




1.將PLD焊在PCB板上 2.接好編程電纜 3.現(xiàn)場燒寫PLD芯片

2.對于基于查找表(LUT,Look-Up table)技術,SRAM工藝的FPGA(如Altera的所有FPGA,如ACEX,Cyclone,Stratix系列,Xilinx的所有FPGA,如Spartan,Virtex系列,Lattice的EC/ECP系列等),由于SRAM工藝的特點,掉電后數(shù)據會消失,因此調試期間可以用下載電纜配置PLD器件,調試完成后,需要將數(shù)據固化在一個專用的EEPROM中(用通用編程器燒寫,也有一些可以用電纜直接改寫),上電時,由這片配置EEPROM先對FPGA加載數(shù)據,十幾個毫秒到幾百個毫秒后,F(xiàn)PGA即可正常工作。(亦可由CPU配置FPGA)。但SRAM工藝的PLD一般不可以直接加密。

3.還有一種反熔絲(Anti-fuse)技術的FPGA,如Actel,Quicklogic的部分產品就采用這種工藝。但這種的PLD是不能重復擦寫,需要使用專用編程器,所以開發(fā)過程比較麻煩,費用也比較昂高。但反熔絲技術也有許多優(yōu)點:布線能力更強,系統(tǒng)速度更快,功耗更低,同時抗輻射能力強,耐高低溫,可以加密,所以在一些有特殊要求的領域中運用較多,如軍事及航空航天。 為了解決反熔絲FPGA不可重復擦寫的問題,Actel等公司在90年代中后期開發(fā)了基于Flash技術的FPGA,如ProASIC系列,這種FPGA不需要配置,數(shù)據直接保存在FPGA芯片中,用戶可以改寫(但需要10幾伏的高電壓)。

隨著技術的發(fā)展,在2004年以后,一些廠家推出了一些新的PLD和FPGA,這些產品模糊了PLD和FPGA的區(qū)別。例如Altera最新的MAXII系列PLD,這是一種基于FPGA(LUT)結構,集成配置芯片的PLD,在本質上它就是一種在內部集成了配置芯片的FPGA,但由于配置時間極短,上電就可以工作,所以對用戶來說,感覺不到配置過程,可以傳統(tǒng)的PLD一樣使用,加上容量和傳統(tǒng)PLD類似,所以altera把它歸作PLD。 還有像Lattice的XP系列FPGA,也是使用了同樣的原理,將外部配置芯片集成到內部,在使用方法上和PLD類似,但是因為容量大,性能和傳統(tǒng)FPGA相同,也是LUT架構,所以Lattice仍把它歸為FPGA。


關鍵詞: PLD FPGA 入門

評論


相關推薦

技術專區(qū)

關閉