|
2#
樓主 |
發表於 2006-12-31 08:34:04
|
只看該作者
FPGA與CPLD的最大區別是什麼
系統的比較,與大家共用:
8 [, {' e, I! a% ]7 _% x. @6 r8 K0 Q儘管FPGA和CPLD都是可編程ASIC器件,有很多共同特點,但由於CPLD和FPGA結構上的差異,具有各自的特點:
/ R% V) A2 n/ R( ~* M
: a* ], ?6 b( o①CPLD更適合完成各種演算法和組合邏輯,FP GA更適合於完成時序邏輯。換句話說,FPGA更適合於觸發器豐富的結構,而CPLD更適合於觸發器有限而乘積項豐富的結構。; {4 |1 H+ P8 X9 g6 i$ S7 T7 z/ Y
" M' Y9 M/ o" ?8 ]+ H- D# _+ o4 r
②CPLD的連續式佈線結構決定了它的時序延遲是均勻的和可預測的,而FPGA的分段式佈線結構決定了其延遲的不可預測性。
' {/ m, x. q: i; H7 q$ q$ o
. l: s" b, c$ Y' E9 k: T9 m③在編程上FPGA比CPLD具有更大的靈活性。CPLD通過修改具有固定內連電路的邏輯功能來編程,FPGA主要通過改變內部連線的佈線來編程;FP GA可在邏輯門下編程,而CPLD是在邏輯塊下編程。5 m0 e! w& d) s$ p7 R
4 P- }* X* b' t6 e( A6 q7 ]
④FPGA的集成度比CPLD高,具有更複雜的佈線結構和邏輯實現。: A5 \! V$ m6 G, A
1 [" n5 j6 }7 h% B
⑤CPLD比FPGA使用起來更方便。CPLD的編程採用E2PROM或FASTFLASH技術,無需外部記憶體晶片,使用簡單。而FPGA的編程資訊需存放在外部記憶體上,使用方法複雜。
" j9 M. V3 ~5 i, W: _( A" Q0 Q1 C3 ]. P( O
⑥CPLD的速度比FPGA快,並且具有較大的時間可預測性。這是由於FPGA是門級編程,並且CLB之間採用分散式互聯,而CPLD是邏輯塊級編程,並且其邏輯塊之間的互聯是集總式的。
+ s6 u( O, d4 I' j) Y- |% f" _8 U& Y, @" A9 O0 @
⑦在編程方式上,CPLD主要是基於E2PROM或FLASH記憶體編程,編程次數可達1萬次,優點是系統斷電時編程資訊也不丟失。CPLD又可分為在編程器上編程和在系統編程兩類。FPGA大部分是基於SRAM編程,編程資訊在系統斷電時丟失,每次上電時,需從器件外部將編程資料重新寫入SRAM中。其優點是可以編程任意次,可在工作中快速編程,從而實現板級和系統級的動態配置。
4 G" Z( @7 Y1 W( {. T8 ^4 P4 r2 D5 U6 W d6 P2 D4 ]/ w* f! }
⑧CPLD保密性好,FPGA保密性差。
8 V+ Z) L: d2 f) ~. E- [) U1 ]* ?5 K; h$ K6 B G. h5 p
⑨一般情況下,CPLD的功耗要比FPGA大,且集成度越高越明顯。 * ?3 S9 f0 j. y8 f, q0 c5 L
# s, k/ M: v/ o. D0 I6 KCPLD的功耗要比FPGA小吧,9 H" I& S" O. t# {3 \- Z
+ P+ M% E( h9 s, X# o8 }; X1 c* VFPGA的資源豐富
6 v8 I& ]. I ?& I& O ; F8 b7 X& z! a9 l, b
cpld是熔絲結構的,fpga是基於ram結構的。
- {1 \( H+ {8 s9 scpld比fpga生產成本高
& S- w& N1 ^3 ?( m1 `- O- q) Y複雜的信號處理通常是fpga來做 |
|