天天看點

FPGA與CPLD的差別

FPGA與CPLD的差別

系統的比較,與大家共享:

盡管FPGA和CPLD都是可程式設計ASIC器件,有很多共同特點,但由于CPLD和FPGA結構上的差異,具有各自的特點:

①CPLD更适合完成各種算法群組合邏輯,FPGA更适合于完成時序邏輯。換句話說,FPGA更适合于觸發器豐富的結構,而CPLD更适合于觸發器有限而乘積項豐富的結構。

②CPLD的連續式布線結構決定了它的時序延遲是均勻的和可預測的,而FPGA的分段式布線結構決定了其延遲的不可預測性。

③在程式設計上FPGA比CPLD具有更大的靈活性。CPLD通過修改具有固定内連電路的邏輯功能來程式設計,FPGA主要通過改變内部連線的布線來程式設計;FPGA可在邏輯門下程式設計,而CPLD是在邏輯塊下程式設計。

④FPGA的內建度比CPLD高,具有更複雜的布線結構和邏輯實作。

⑤CPLD比FPGA使用起來更友善。CPLD的程式設計采用E2PROM或FASTFLASH技術,無需外部存儲器晶片,使用簡單。而FPGA的程式設計資訊需存放在外部存儲器上,使用方法複雜。

⑥CPLD的速度比FPGA快,并且具有較大的時間可預測性。這是由于FPGA是門級程式設計,并且CLB之間采用分布式互聯,而CPLD是邏輯塊級程式設計,并且其邏輯塊之間的互聯是集總式的。

⑦在程式設計方式上,CPLD主要是基于E2PROM或FLASH存儲器程式設計,程式設計次數可達1萬次,優點是系統斷電時程式設計資訊也不丢失。CPLD又可分為在程式設計器上程式設計和在系統程式設計兩類。FPGA大部分是基于SRAM程式設計,程式設計資訊在系統斷電時丢失,每次上電時,需從器件外部将程式設計資料重新寫入SRAM中。其優點是可以程式設計任意次,可在工作中快速程式設計,進而實作闆級和系統級的動态配置。

⑧CPLD保密性好,FPGA保密性差。

⑨一般情況下,CPLD的功耗要比FPGA大,且內建度越高越明顯。

随著複雜可程式設計邏輯器件(CPLD)密度的提高,數字器件設計人員在進行大型設計時,既靈活又容易,而且産品可以很快進入市場。許多設計人員已經感受到 CPLD容易使用、時序可預測和速度高等優點,然而,在過去由于受到CPLD密度的限制,他們隻好轉向FPGA和ASIC。現在,設計人員可以體會到密度高達數十萬門的CPLD所帶來的好處。

CPLD結構在一個邏輯路徑上采用1至16個乘積項,因而大型複雜設計的運作速度可以預測。是以,原有設計的運作可以預測,也很可靠,而且修改設計也很容易。CPLD在本質上很靈活、時序簡單、路由性能極好,使用者可以改變他們的設計同時保持引腳輸出不變。與 FPGA相比,CPLD的I/O更多,尺寸更小。

如今,通信系統使用很多标準,必須根據客戶的需要配置裝置以支援不同的标準。CPLD可讓裝置做出相應的調整以支援多種協定,并随著标準和協定的演變而改變功能。這為系統設計人員帶來很大的友善,因為在标準尚未完全成熟之前他們就可以著手進行硬體設計,然後再修改代碼以滿足最終标準的要求。CPLD的速度和延遲特性比純軟體方案更好,它的NRE費用低於ASIC,更靈活,産品也可以更快入市。 CPLD可程式設計方案的優點如下:

●邏輯和存儲器資源豐富(Cypress Delta39K200的RAM超過480 Kb)

●帶備援路由資源的靈活時序模型

●改變引腳輸出很靈活

●可以裝在系統上後重新程式設計

●I/O數目多

●具有可保證性能的內建存儲器控制邏輯

●提供單片CPLD和可程式設計PHY方案

由于有這些優點,設計模組化成本低,可在設計過程的任一階段添加設計或改變引腳輸出,可以很快上市

CPLD的結構

CPLD是屬於粗粒結構的可程式設計邏輯器件。它具有豐富的邏輯資源(即邏輯門與寄存器的比例高)和高度靈活的路由資源。CPLD的路由是連接配接在一起的,而FPGA的路由是分割開的。FPGA可能更靈活,但包括很多跳線,是以速度較CPLD慢。

CPLD以群陣列(array of clusters)的形式排列,由水準和垂直路由通道連接配接起來。這些路由通道把信号送到器件的引腳上或者傳進來,并且把CPLD内部的邏輯群連接配接起來。

CPLD之是以稱作粗粒,是因為,與路由數量相比,邏輯群要大得到。CPLD的邏輯群比FPGA的基本單元大得多,是以FPGA是細粒的。

CPLD的功能塊

CPLD最基本的單元是宏單元。一個宏單元包含一個寄存器(使用多達16個乘積項作為其輸入)及其它有用特性。

因為每個宏單元用了16個乘積項,是以設計人員可部署大量的組合邏輯而不用增加額外的路徑。這就是為何CPLD被認為是“邏輯豐富”型的。

宏單元以邏輯子產品的形式排列(LB),每個邏輯子產品由16個宏單元組成。宏單元執行一個AND操作,然後一個OR操作以實作組合邏輯。

每個邏輯群有8個邏輯子產品,所有邏輯群都連接配接到同一個可程式設計互聯矩陣。

每個群還包含兩個單端口邏輯群存儲器子產品和一個多端口通道存儲器子產品。前者每子產品有8,192b存儲器,後者包含4,096b專用通信存儲器且可配置為單端口、多端口或帶專用控制邏輯的FIFO。

CPLD有什麽好處?

I/O數量多

CPLD的好處之一是在給定的器件密度上可提供更多的I/O數,有時甚至高達70%。

時序模型簡單

CPLD優于其它可程式設計結構之處在于它具有簡單且可預測的時序模型。這種簡單的時序模型主要應歸功于CPLD的粗粒度特性。

CPLD可在給定的時間内提供較寬的相等狀态,而與路由無關。這一能力是設計成功的關鍵,不但可加速初始設計工作,而且可加快設計調試過程。

粗粒CPLD結構的優點

CPLD是粗粒結構,這意味著進出器件的路徑經過較少的開關,相應地延遲也小。是以,與等效的FPGA相比,CPLD可工作在更高的頻率,具有更好的性能。

CPLD的另一個好處是其軟體編譯快,因為其易于路由的結構使得布放設計任務更加容易執行。

細粒FPGA結構的優點

FPGA是細粒結構,這意味著每個單元間存在細粒延遲。如果将少量的邏輯緊密排列在一起,FPGA的速度相當快。然而,随著設計密度的增加,信号不得不通過許多開關,路由延遲也快速增加,進而削弱了整體性能。CPLD的粗粒結構卻能很好地适應這一設計布局的改變。

靈活的輸出引腳

CPLD的粗粒結構和時序特性可預測,是以設計人員在設計流程的後期仍可以改變輸出引腳,而時序仍保持不變。

新的CPLD封裝

CPLD 有多種密度和封裝類型,包括單晶片自引導方案。自引導方案在單個封裝内內建了FLASH存儲器和CPLD,無須外部引導單元,進而可降低設計複雜性并節省闆空間。在給定的封裝尺寸内,有更高的器件密度共享引腳輸出。這就為設計人員提供了“放大”設計的便利,而無須更改闆上的引腳輸出。