Can you summarize the following document?
        
  目前以硬體描述語言(Verilog或VHDL)描述的邏輯電路,可以利用邏輯合成和佈局、佈線工具軟體,快速地燒錄至FPGA上進行測試,這一過程是現代積體電路設計驗證的技術主流。這些可程式設計邏輯元件可以被用來實現一些基本的邏輯閘數位電路(比如與門、或門、異或門、非門)或者更復雜一些的組合邏輯功能,比如譯碼器等。在大多數的FPGA裡面,這些可編輯的元件裡也包含記憶元件,例如觸發器(Flip-flop)或者其他更加完整的記憶塊,從而構成時序邏輯電路。  系統設計師可以根據需要,通過可編輯的連線,把FPGA內部的邏輯塊連線起來。這就好像一個電路試驗板被放在了一個晶片裡。一個出廠後的成品FPGA的邏輯塊和連線可以按照設計者的需要而改變,所以FPGA可以完成所需要的邏輯功能。  FPGA一般來說位元殊應用積體電路(ASIC)的速度要慢,無法完成更復雜的設計,並且會消耗更多的電能。但是,FPGA具有很多優點,比如可以快速成品,而且其內部邏輯可以被設計者反覆修改,從而改正程式中的錯誤,此外,使用FPGA進行除錯的成本較低。廠商也可能會提供便宜、但是編輯能力有限的FPGA產品。因為這些晶片有的可編輯能力較差,所以這些設計的開發是在普通的FPGA上完成的,然後將設計轉移到一個類似於專用積體電路的晶片上。在一些技術更新比較快的行業,FPGA幾乎是電子系統中的必要部件,因為在大批量供貨前,必須迅速搶佔市場,這時FPGA方便靈活的優勢就顯得很重要。

  為了達到上述目的,另外一種方法是採用複雜可程式邏輯裝置(CPLD)而不是FPGA。下面對CPLD進行簡要介紹,並與FPGA進行比較。  早在1980年代中期,FPGA已經在可程式邏輯裝置裝置中紮根。CPLD和FPGA都包括了一些相對大數量的可以編輯邏輯單元。CPLD邏輯閘的密度在幾千到幾萬個邏輯單元之間,而FPGA通常是在幾萬到幾百萬。  CPLD和FPGA的主要區別是他們的系統結構。CPLD的結構具有一定的侷限性。這個結構由一個或者多個可編輯的結果之和的邏輯組列和一些相對少量的鎖定的暫存器組成。這樣的結果是缺乏編輯靈活性,但是它的優點是,其延遲時間易於預計,邏輯單元對連線單元比率較高。而FPGA具有的連線單元數量很大,這樣雖然讓它可以更加靈活的編輯,但是結構卻複雜得多。  CPLD和FPGA另外一個區別是大多數的FPGA含有高層次的內建模組(比如加法器和乘法器)和內建的儲存器。一個由此帶來的重要區別是,很多新的FPGA支援完全的或者部分的系統內重新配置。允許他們的設計隨著系統升級或者動態重新配置而改變。一些FPGA可以讓裝置的一部分重新編輯,而其他部分繼續正常執行。
場域可程式設計邏輯閘陣列(英語:Field Programmable Gate Array,縮寫為FPGA),它是在PAL、GAL、CPLD等可程式邏輯裝置的基礎上進一步發展的產物。它是作為特殊應用積體電路領域中的一種半定製電路而出現的,既解決了全定製電路的不足,又克服了原有可程式設計邏輯器件閘電路數有限的缺點。