來自:http://www.fpga.com.cn/pld是可程式設計邏輯器件(programable logic device)的簡稱,fpga是現場可程式設計門陣列(field programable gate array)的簡稱,兩者的功能基本相同,只是實現原理略有不同,所以我們有時可以忽略這兩者的區別,統稱為可程式設計邏輯器件或pld/fpga。
pld是電子設計領域中最具活力和發展前途的一項技術,它的影響絲毫不亞於70年代微控制器的發明和使用。
如何使用pld呢?其實pld的使用很簡單,學習pld比學習微控制器要簡單的多,有數位電路基礎,會使用計算機,就可以進行pld的開發。不熟悉pld的朋友,可以先看一看可程式設計邏輯器件的發展歷程。
開發pld需要了解兩個部分:1.pld開發軟體 2.pld本身
1.pld開發軟體
由於pld軟體已經發展的相當完善,使用者甚至可以不用詳細了解pld的內部結構,也可以用自己熟悉的方法:如 原理圖輸入或hdl語言來完成相當優秀的pld設計。所以對初學者,首先應了解pld開發軟體和開發流程。了解pld的內部結構,將有助於提高我們設計的 效率和可靠性。
如果您打算使用vhdl或verilog hdl硬體描述語言來開發pld/fpga,通常還需要使用一些專業的hdl開發軟體,這是因為fpga廠商提供的軟體的hdl綜合能力一般都不是很強,需要其他軟體來配合使用,詳細情況可以通過瀏覽:開發軟體欄目 獲得等多資訊.
對於pld產品,一般分為:基於乘積項(product-term)技術,eeprom(或flash)工藝的中小規模pld,以及基於查詢表 (look-up table)技術,sram工藝的大規模pld/fpga。eeprom工藝的pld密度小,多用於5,000門以下的小規模設計,適合做複雜的組合邏 輯,如解碼。sram工藝的pld(fpga),密度高,觸發器多,多用於10,000門以上的大規模設計,適合做複雜的時序邏輯,如數字訊號處理和各種 演算法。如希望進一步了解pld/fpga結構與原理,此處 。
目前有多家公司生產cpld/fpga,最大的三家是:altera ,xilinx ,lattice , 您可以參閱pld廠商 欄目獲得更多資訊
2.pld/fpga的分類和使用
在pld/fpga開發軟體中完成設計以後,軟體會產生乙個最終的程式設計檔案(如 .pof )。如何將程式設計檔案燒到pld晶元中去呢?
1.對於基於乘積項(product-term)技術,eeprom(或flash)工藝的pld(如altera的max系列,lattice的大部分產品,xilinx的xc9500,coolrunner系列), 廠家提供程式設計電纜,電纜一端裝在計算機的並行列印口上,另一端接在pcb板上的乙個十芯插頭,pld晶元有四個管腳(程式設計腳)與插頭相連。(如圖)
1.將pld焊在pcb板上 2.接好程式設計電纜 3.現場燒寫pld晶元
3.還有一種反熔絲(anti-fuse)技術的fpga,如actel,quicklogic的部分產品就採用這種工藝。但這種的pld是不能重複擦 寫,需要使用專用程式設計器,所以開發過程比較麻煩,費用也比較昂高。但反熔絲技術也有許多優點:佈線能力更強,系統速度更快,功耗更低,同時抗輻射能力強, 耐高低溫,可以加密,所以在一些有特殊要求的領域中運用較多,如軍事及航空航天。 為了解決反熔絲fpga不可重複擦寫的問題,actel等公司在90年代中後期開發了基於flash技術的fpga,如proasic系列,這種fpga 不需要配置,資料直接儲存在fpga晶元中,使用者可以改寫(但需要10幾伏的高電壓)。
隨著技術的發展,在2023年以後,一些廠家推出了一些新的pld和fpga,這些產品模糊了pld和fpga的區別。例如altera最新的maxii 系列pld,這是一種基於fpga(lut)結構,整合配置晶元的pld,在本質上它就是一種在內部整合了配置晶元的fpga,但由於配置時間極短,上電 就可以工作,所以對使用者來說,感覺不到配置過程,可以傳統的pld一樣使用,加上容量和傳統pld類似,所以altera把它歸作pld。 還有像lattice的xp系列fpga,也是使用了同樣的原理,將外部配置晶元整合到內部,在使用方法上和pld類似,但是因為容量大,效能和傳統 fpga相同,也是lut架構,所以lattice仍把它歸為fpga。
ubuntu新手入門
ubuntu使用設定之介面篇 ubuntu系統裝好了,不過怎麼看上則呢麼醜醜的?好像mr徐的介面和我的不一樣呢,怎麼設定的呢?首先,讓我們來設定工具條。ubuntu預設2條工具條,讓我們來把他設定成和windows下一樣的吧。先讓我們在上面的工具條的空白的地方,選擇刪除面板。然後,讓我們在底下的面板...
XML新手入門
ibm的xml教程 xml是什麼?xml,或稱為可擴充套件標記語言 extensible markup language 是一種您可以用來建立自己的標記的標記語言。它由全球資訊網協會 w3c 建立,用來克服 html 即超文字標記語言 hypertext markup language 它是所有網頁...
SOA新手入門
什麼是soa 我們可能應該回答的第乙個問題也是最基本的問題。什麼是面向服務的體系結構 service oriented architecture,soa 這個問題的答案實際上涉及與開發相關的若干不同方面。soa 是一種 it 體系結構樣式,支援將您的業務作為鏈結服務或可重複業務任務進行整合,可在需要...