新聞中心

        EEPW首頁 > 嵌入式系統 > 牛人業話 > 認清CPLD和FPGA

        認清CPLD和FPGA

        作者:winthony 時間:2013-08-15 來源:電子產品世界 收藏

          我們再來以cyclone系列為例看看的內部結構:

        本文引用地址:http://www.104case.com/article/159017.htm

          內部主要就是由,連線和IO單元組成。一個又包含若干個LE模塊。LE模塊是Cyclone 的基本邏輯單元,下圖是LE模塊的具體結構:

          初看上去好像比較復雜,其實最主要的部分就是LUT查找表模塊,以及后面的D觸發器。其他都是一些清零進位旁路等等控制信號邏輯。也就是說查找表是FPGA最根本的邏輯單元。Cyclone FPGA使用的是4輸入LUT查找表。我們設計的邏輯電路最終都是通過EDA工具把所有可能的結果計算出來然后儲存在查找表里面。每次根據輸入信號查找對應的結果,然后輸出就可以了。也就是說FPGA的工作更像是一個RAM,根據不同的輸入信號(地址)輸出相應的數據。

          通過上面的結構圖比較我們就可以清楚的看出來是由實實在在的組合電路組成的,而FPGA說到底就是一個巨大的查找表!也正是這個根本的差異造成了和FPGA各方面的不同。除了以外,主要的和FPGA生產廠商還有,Actel,Lattice以及Atmel等。各家公司的產品各有特點,在架構上會略有區別,但基本原理都是相同的。下面我們整理一下CPLD和FPGA的主要區別:

          1) CPLD的更適合可重復編程的EEPROM或Flash技術來實現。而FPGA顯然是利用SRAM技術更合適。
          2) 由于是EEPROM或者Flash工藝決定了CPLD是有一定的擦寫次數限制的。而FPGA在實際使用中幾乎可以說是無配置次數限制。
          3) CPLD由于采用的是EEPROM或者Flash工藝所以配置掉電后不丟失,也就不需要外掛配置芯片。而FPGA采用的是SRAM工藝,配置在掉電后就沒有了,因此需要一個外部配置芯片。
          4) CPLD的安全性更高。由于配置芯片的存在,FPGA的保密性就會比CPLD略差。邏輯數據有可能被讀取。(當然FPGA芯片會有一定的加密措施)
          5) CPLD由于不需要上電重新配置,所以上電后可以馬上工作。而FPGA上電后需要配置時間,邏輯量的大小配置方式的區別也會影響配置時間的長短。
          6) 由于CPLD的連續式布線結構,決定了它的時序延時是均勻和固定的。而FPGA采用的分段式布線結構造成了延時不固定。
          7) 由于工藝難度的差異,CPLD一般集成度較低,大多為幾千門或幾萬門的芯片規模,做到幾十萬門已經很困難。而FPGA基于SRAM工藝,集成度更高,可以輕松做到幾十萬門甚至幾百萬門的芯片規模,最新的FPGA產品已經接近千萬門的規模。
          8) 同樣由于結構的差異,CPLD更適合完成的是復雜的組合邏輯,如編、譯碼的工作。而FPGA更適合做復雜的時序邏輯。換句話說就是FPGA更適合觸發器豐富的邏輯結構,CPLD適合于觸發器有限但是乘積項豐富的邏輯結構。
          9) 也是由于工藝的原因,一般CPLD會比FPGA的功耗高。

        fpga相關文章:fpga是什么




        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 沾化县| 黑河市| 定远县| 龙门县| 虞城县| 察隅县| 洛宁县| 延长县| 柘城县| 天水市| 邛崃市| 长葛市| 吕梁市| 松溪县| 毕节市| 扶风县| 中阳县| 天津市| 苗栗市| 汉沽区| 灵武市| 双辽市| 康平县| 滕州市| 六安市| 石狮市| 永宁县| 象州县| 德化县| 峨边| 西峡县| 巫溪县| 德惠市| 秦皇岛市| 乌苏市| 康保县| 涿鹿县| 黔江区| 延川县| 诸暨市| 崇州市|