溫長澤
摘 要:CPLD/FPGA是復雜的可編程邏輯器件,都是由PAL、GAL等器件發(fā)展而來。CPLD/FPGA技術的數(shù)字系統(tǒng)設計,主要包括設計面積和速度兩個方面,該文主要通過資源共享設計和流水線設計等來研究CPLD/FPGA技術的數(shù)字系統(tǒng)設計,希望在應用中有一定的借鑒作用。
關鍵詞:數(shù)字系統(tǒng) CPLD/FPGA 設計
中圖分類號:TP332 文獻標識碼:A 文章編號:1674-098X(2013)02(c)-00-01
1 CPLD/FPGA技術
CPLD/FPGA是復雜的可編程邏輯器件,屬于規(guī)?;募呻娐返姆懂?。目前,該技術的集成度已經達到200萬門/片,融合了ASIC高集成度的特點以及可編程邏輯器便于設計生產的特點,比較適用于開發(fā)小批量產品和樣品的研究制造,縮短了產品上市的時間。
CPLD內利用長度固定的金屬線把各邏輯塊連接起來,設計出的各種邏輯電路都可以很好的預測時間,有效地彌補了分段式互連結構在時序不完全預測中的缺點。CPLD的特點有編程靈活、設計開發(fā)周期短、集成度高、適用范圍寬、工具先進、成本較低、不用測試、價格大眾化等。CPLD在眾多的電路設計規(guī)模比較大,所以在產品的設計和生產上得到廣泛應用,可以說CPLD適用于所有可以使用中小型數(shù)字系統(tǒng)的集成電路的場合。目前,CPLD技術的數(shù)字系統(tǒng)器件已經成為電子產品必要的組成部分,關于CPLD的設計和使用是電子工程師一種必備的技能。
FPGA也是由PAL和GAL等發(fā)展而來,它以半定制電路的形式在ASIC中出現(xiàn),既彌補了定制電路的缺陷,又消除了可編程器件的缺點。
FPGA主要由輸出輸入模塊、可配置邏輯模塊和內部連線構成,在編程方面不限次數(shù)。FPGA作為復雜的可編程邏輯器件,在結構上和傳統(tǒng)邏輯電路以及PAL和GAL器件有著很大的不同。FPGA采用小型查找表進行組合邏輯,每一個查找表都通過輸入端連接一個觸發(fā)器,再由觸發(fā)器驅動另外的邏輯電路,構成的這種基本的邏輯單元模塊有組合邏輯功能和時序邏輯功能,不同的邏輯模塊之間是由金屬線連接在一起的。FPGA的邏輯由靜態(tài)的存儲單元通過加載邏輯編程的數(shù)據(jù)來完成,儲存在存儲器單元的數(shù)據(jù)值對它的邏輯功能和不同模塊間的連接方式有決定作用,同時對FPGA可實現(xiàn)的功能也有決定作用。
CPLD和FPGA都屬于可編程ASIC器件,但又有著較大的不同。CPLD比較適合于在各種算法以及組合邏輯上使用,它布線結構的連續(xù)性對延時起著決定的作用,保密性比較好;FPGA比較適于在時序邏輯方面使用,它采用分段式的布線結構,比CPLD的布線結構更為復雜,邏輯實現(xiàn)也更困難,造成了延時不便于很準確的預測,保密性比較差。
2 CPLD/FPGA技術的數(shù)字電路系統(tǒng)設計方法
2.1 基于面積的優(yōu)化設計
在CPLD/FPGA技術的數(shù)字系統(tǒng)設計時,對它的器件資源進行優(yōu)化設計,即使是較小的CPLD/FPGA器件也可以達到相當?shù)臄?shù)字系統(tǒng)功能,優(yōu)化后的系統(tǒng)器件資源越少,消耗的費用就越少,有效的節(jié)約了系統(tǒng)器件的成本?;诿娣e的優(yōu)化設計主要有資源共享設計和串行化設計兩種方式。
利用CPLD/FPGA技術設計數(shù)字系統(tǒng)時,常常會碰到同一個模塊需要多次調用的狀況。這種電路結構通常占用的器件資源很多,一般為算術模塊,例如多位加法器、乘法器等,大部分的數(shù)字系統(tǒng)資源都由他們占據(jù)。利用資源共享為這種電路結構進行設計時,可以大大提高電路器件資源的使用率。
預進位加法器主要用來提升加法器中信號的傳輸,加法器的進位是xn,系統(tǒng)的速度主要由信號中每個分組的位數(shù)n所決定。
資源共享設計通常有先加后選的方式和先選后加的方式,綜合考慮兩種方式,加法器這種方式比選擇器耗費的資源多,一般采用先選后加這種方式會更好。
串行化設計主要是通過分割耗費資源大以及單個時鐘周期內完成的電路功能的方式,提取電路功能相同的模塊,并用這些模塊在多個時鐘周期做同樣的數(shù)字系統(tǒng)功能。數(shù)字系統(tǒng)設計串行化后,會使電路邏輯變得復雜了,不過資源消耗卻少了,有著明顯的使用效果。
2.2 基于速度的優(yōu)化設計
在CPLD/FPGA技術的數(shù)字系統(tǒng)設計時,運行速度通常是最重要的。影響CPLD/FPGA技術的數(shù)字系統(tǒng)運行速度的因素很多,主要有CPLD/FPGA的組成結構特征、數(shù)字系統(tǒng)的電路構成、綜合器的性能等。
流水線設計技術可以顯著的提高數(shù)字系統(tǒng)的運行速度,目前,微處理器、高速數(shù)字和數(shù)字信號處理器等系統(tǒng)設計時一般都是用流水線技術進行設計。對于數(shù)字系統(tǒng)的設計,一般速度是設計中首先要考慮的問題,采用CPLD/FPGA技術,高速運行往往是首要的需求。如果設計好一個系統(tǒng)電路,速度方面沒有達到期望的要求,往往需要更換運行更快的器件并重新設計,很顯然會增加很多不必要的成本。
基于CPLD/FPGA技術的數(shù)字系統(tǒng)設計,除了流水線設計之外,還有其他一些方式。寄存器配平法,這種方式主要是利用配平寄存器之間的各種組合來延時數(shù)字系統(tǒng)邏輯塊。寄存器配平是在流水線設計基礎上深化而成的方式,流水線設計是把組合邏輯延時塊分為數(shù)個較小的延時塊,寄存器配平則是把延時不同的兩個組合邏輯塊的延時平均分配。關鍵路徑法,這種方式是在數(shù)字系統(tǒng)的設計中延時最長的邏輯路徑,可以有效的提高器件運行速度。一般來說延時的長短與信號是否經過最大路徑有關,與延時所經過的較小路徑沒有關系。
3 結語
在CPLD/FPGA技術的數(shù)字系統(tǒng)設計時,是選擇對面積進行優(yōu)化設計還是選擇對速度進行設計,往往要根據(jù)實際情況進行考慮。因為很多情況下兩種選擇是有矛盾的,一般不能同時滿足要求。假如考慮面積設計的需要,會使運行時間加長,降低了該數(shù)字系統(tǒng)的運行速度;假如考慮速度設計的需要,往往要增加很多邏輯器件,速度相應的提高了,但是占用的空間也大了,所以在實際應用中應該根據(jù)具體的環(huán)境綜合考慮各種參數(shù)。
參考文獻
[1] 宋翠方,王連明,于安寧.基于FPGA數(shù)字系統(tǒng)設計的速度優(yōu)化方法研究[J].東北師大學報(自然科學版),2011(4).
[2] 李桂林,苗長新.基于Verilog HDL的FPGA數(shù)字系統(tǒng)設計優(yōu)化[J].計算機與數(shù)字工程,2010(8).
[3] 杜志傳,鄭建立.基于CPLD/FPGA的VHDL語言電路優(yōu)化設計[J].現(xiàn)代電子技術,2010(3).
[4] 詹惠琴,古軍.CPLD和虛擬儀器的頻率計綜合設計[J].實驗科學與技術,2008(2).
[5] 趙紅梅,王召東.可編程邏輯器件FPGA與CPLD的發(fā)展與應用一例[J].平頂山工學院學報,2007(4).