簡學:CPLD工作原理

CPLD(複雜可編程邏輯器件),它是從PAL和GAL器件發展出來的器件,相對而言規模大,結構複雜,屬於大規模集成電路範圍。

簡學:CPLD工作原理

它的工作方式和原理與FPGA(現場可編程門陣列)相類似,都是使用硬件描述語言VHDL/Verilog描述邏輯電路功能,然後將代碼進行綜合,佈局,佈線等操作,生成比特流文件來描述這些邏輯電路信息,再加載入芯片。因此它也屬於硬件開發範疇。

但是CPLD與FPGA的內部組成結構是不同的,它由可編程邏輯宏單元陣列(MCA),可編程互聯矩陣單元,可編程IO單元組成。

簡學:CPLD工作原理

宏單元結構又由與陣列,或陣列,可編程觸發器和多路選擇器等電路組成。

簡學:CPLD工作原理

圖中乘積項陣列是一個與陣列,該陣列的每一個交叉點都是一個可編程熔絲,如果導通就是與邏輯,乘積項選擇矩陣是一個或陣列,兩者一起完成組合邏輯,後面再跟一個可編程觸發器,組成整個最小可編程邏輯單元。

通過編程邏輯單元的比較,可以看出CPLD與FPGA的實現組合邏輯的機制存在本質的區別,前者使用可編程與陣列和或陣列實現,後者使用sram保存邏輯真值表來實現,並且前者一個邏輯單元中只包含一個可編程觸發器,而後者一個邏輯單元包含“8”個觸發器。

我們知道觸發器是實現時序邏輯電路的基本器件,CPLD有豐富的組合邏輯資源(與/或陣列),FPGA有豐富的時序邏輯資源(觸發器),因此它們各有所適用的場景。


分享到:


相關文章: