數(shù)字編程是數(shù)字電路非常重要的一門課程,FPGA和CPLD是兩個(gè)重要的編程工具,本文帶您認(rèn)識(shí)fpga和cpld的聯(lián)系和區(qū)別。
FPGA(Field-Programmable Gate Array),即現(xiàn)場(chǎng)可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。
CPLD(Complex Programmable Logic Device)復(fù)雜可編程邏輯器件,是從PAL和GAL器件發(fā)展出來的器件,相對(duì)而言規(guī)模大,結(jié)構(gòu)復(fù)雜,屬于大規(guī)模集成電路范圍。是一種用戶根據(jù)各自需要而自行構(gòu)造邏輯功能的數(shù)字集成電路。其基本設(shè)計(jì)方法是借助集成開發(fā)軟件平臺(tái),用原理圖、硬件描述語(yǔ)言等方法,生成相應(yīng)的目標(biāo)文件,通過下載電纜(“在系統(tǒng)”編程)將代碼傳送到目標(biāo)芯片中,實(shí)現(xiàn)設(shè)計(jì)的數(shù)字系統(tǒng)。
盡管FPGA和CPLD都是可編程ASIC器件,有很多共同特點(diǎn),但由于CPLD和FPGA結(jié)構(gòu)上的差異,具有各自的特點(diǎn):
1、在編程上FPGA比CPLD具有更大的靈活性?CPLD通過修改具有固定內(nèi)連電路的邏輯功能來編程,FPGA主要通過改變內(nèi)部連線的布線來編程;FP GA可在邏輯門下編程,而CPLD是在邏輯塊下編程?
2、CPLD比FPGA使用起來更方便?CPLD的編程采用E2PROM或FASTFLASH技術(shù),無需外部存儲(chǔ)器芯片,使用簡(jiǎn)單?而FPGA的編程信息需存放在外部存儲(chǔ)器上,使用方法復(fù)雜?
3、CPLD的速度比FPGA快,并且具有較大的時(shí)間可預(yù)測(cè)性?這是由于FPGA是門級(jí)編程,并且CLB之間采用分布式互聯(lián),而CPLD是邏輯塊級(jí)編程,并且其邏輯塊之間的互聯(lián)是集總式的?
4、在編程方式上,CPLD主要是基于E2PROM或FLASH存儲(chǔ)器編程,編程次數(shù)可達(dá)1萬次,優(yōu)點(diǎn)是系統(tǒng)斷電時(shí)編程信息也不丟失?CPLD又可分為在編程器上編程和在系統(tǒng)編程兩類?FPGA大部分是基于SRAM編程,編程信息在系統(tǒng)斷電時(shí)丟失,每次上電時(shí),需從器件外部將編程數(shù)據(jù)重新寫入SRAM中?其優(yōu)點(diǎn)是可以編程任意次,可在工作中快速編程,從而實(shí)現(xiàn)板級(jí)和系統(tǒng)級(jí)的動(dòng)態(tài)配置?
5、CPLD保密性好,FPGA保密性差?
6、一般情況下,CPLD的功耗要比FPGA大,且集成度越高越明顯?
7、FPGA的集成度比CPLD高,具有更復(fù)雜的布線結(jié)構(gòu)和邏輯實(shí)現(xiàn)?
8、CPLD更適合完成各種算法和組合邏輯,FP GA更適合于完成時(shí)序邏輯?換句話說,FPGA更適合于觸發(fā)器豐富的結(jié)構(gòu),而CPLD更適合于觸發(fā)器有限而乘積項(xiàng)豐富的結(jié)構(gòu)?
9、CPLD的連續(xù)式布線結(jié)構(gòu)決定了它的時(shí)序延遲是均勻的和可預(yù)測(cè)的,而FPGA的分段式布線結(jié)構(gòu)決定了其延遲的不可預(yù)測(cè)性?
-
FPGA
+關(guān)注
關(guān)注
1645文章
22050瀏覽量
618717 -
cpld
+關(guān)注
關(guān)注
32文章
1257瀏覽量
171538
發(fā)布評(píng)論請(qǐng)先 登錄
FPGA與CPLD的區(qū)別
FPGA與CPLD的概念及基本使用和區(qū)別
FPGA與CPLD的區(qū)別是什么
cpld fpga 區(qū)別
關(guān)于CPLD和FPGA的區(qū)別

cpld和fpga的區(qū)別,cpld和fpga的優(yōu)缺點(diǎn)
CPLD和FPGA兩者的區(qū)別

CPLD和FPGA的區(qū)別是什么

評(píng)論