promotion image of download ymail app
Promoted

關於CPLD和VHDL

我想要了解他們的比較和關聯性

因為只能選一個最佳解答

所以我會給回答比較詳細的20點

1 Answer

Rating
  • 1 decade ago
    Favorite Answer

    兩者都是可程式邏輯元件(Programmable Logic Device, PLD),一種可讓使用者組成邏輯功能的數位積體電路,這跟過去的TTL /CMOS標準晶片只能提供固定電路功能大不同,其可協助邏輯IC設計與驗證,有效縮短產品開發時間;FPGA(Field Programmable Gate Array)、CPLD (Complex Programmable Logic Devices)即是大規模的PLD。在內部聯結方式上可分為連續式連結(continuous interconnect),及片段式聯結(segment interconnect)。

    CPLD採用連續式之聯結方式以提供可預測之邏輯延遲時間、更快的操作速度及晶片效益。其主要的優點特色有:

    ● 可立即燒錄進行電路驗證

    ● 可反覆燒錄進行測試

    ● 可進行硬體仿真與模擬

    ● 可快速建立系統原型

    ● 可縮短產品上市時間

    ● 可去除IC測試及NRE成本

    ● 提供完整軟體進行設計

    CPLD,由許多個邏輯方塊所組合而成,各邏輯方塊均相似於一個簡單的PLD元件,邏輯方塊間的相互關係則由可編程的連線架構,將整個邏輯電路合成而成。

    FPGA,由許多個邏輯單元胞(Logic cell)經由可程式的垂直通道及水平通道的連線所構成。

    儘管FPGA和CPLD都是可編程ASIC元件,但由於FPGA和CPLD結構上的差異,彼此之間還是存在各自不同的特點:

    1.CPLD適合用來實現各種運算和組合邏輯(combinational logic),FPGA則是適用於實現循序邏輯(sequential logic)。換句話說,FPGA適合於觸發器(flip-flop)較多的結構,而CPLD則適合於觸發器有限而乘積項(product term)較多的結構。

    2.CPLD的時間特性預估比FPGA容易。CPLD的連續式佈線(互聯)結構決定了它的時序延遲是均勻的和可預測的,而FPGA的分段式佈線結構使得其時間延遲的預測變的困難。同樣的理由也造成CPLD的速度比FPGA快。

    3.在編程上FPGA比CPLD具有更大的靈活性。CPLD透過修改具有固定內部連線電路的邏輯功能來編程,而FPGA主要是透過改變內部電路佈線來編程,也就是說:FPGA可在邏輯閘下編程,而CPLD是在邏輯塊下編程。

    4.FPGA的集成度比CPLD高,適合較複雜的佈線結構和邏輯實現,所以FPGA元間的可編程邏輯閘數比起CPLD大許多。

    5.CPLD使用上比FPGA方便。CPLD的編程採用EPROM或Flash技術,使用時外部不需要另外的記憶儲存元件,而FPGA的編程採用SRAM技術,所以使用時外部需要搭配記憶儲存元件存放編程訊息(netlist file),使用方法較複雜。

    這特性進一步造成FPGA的保密特性較CPLD差;因為FPGA的電路編程資訊,另外儲存在外部的記憶元件中(EPROM / Flash),電路資料容易被他人讀取,電路容易被複製。

    6.在編程方式上,CPLD主要是基於E2PROM或Flash儲存編程,可編程次數大於1萬次,優點是系統斷電時,編程訊息不會消失。FPGA大部分是基於SRAM編程,編程訊息會在系統斷電時消失,所以每次上電時系統都要重新將編程訊息從外部記憶裝置讀入FPGA中的SRAM,其優點是可編程次數不限,並且在開發過程中可以很方便的隨時更改編程。

    7.一般情況下,CPLD的功耗要比FPGA大,且集成度越高越明顯。

    結論:簡單來說CPLD是大塊的磁磚,FPGA是小塊的磁磚,而程式化如鋪地板,大塊的可以比較簡單且省事,但碰到較複雜的地形,小磁磚就在編排上較大塊有優勢,因此各有優缺點。

    2008-09-26 14:27:08 補充:

    網路資料來源

    http://home.educities.edu.tw/oldfriend/article/12....

    Source(s): 網路資料+自身蒐集準備教材的經驗
    • Commenter avatarLogin to reply the answers
Still have questions? Get your answers by asking now.