CXL的3種應用型態:
- Type 1:透過CXL.io與CXL.cache協定運作,適用於那些沒有配置獨立記憶體的特定用途加速裝置,例如,某些智慧型網路卡或影像加速卡,現在可以透過CXL協定來存取主機CPU的記憶體,將這些記憶體分享給這些周邊裝置,作為快取記憶體使用。
- Type 2:透過CXL.io、CXL.cache與CXL.mem協定運作,用於自身擁有高效能記憶體(GDDR或HBM記憶體)的通用型加速裝置,如GPU卡,或是基於FPGA、ASIC的加速卡等,可透過CXL協定在這些周邊裝置與主機CPU之間,提供雙向的記憶體共享,既可讓周邊裝置存取主機CPU的記憶體,也能讓主機CPU存取周邊裝置的記憶體。
- Type 3:透過CXL.io與CXL.mem協定運作,這類裝置是基於DRAM或儲存級記憶體(Storage Class Memory,SCM)的記憶體擴充板卡,主機CPU可以透過CXL協定,來存取這類記憶體擴充板卡搭載的DRAM,或是非揮發性的SCM記憶體。
- CXL Type 1應用裝置的基本概念,類似CPU內建顯示晶片而能共用系統主記憶體的架構,同樣都可讓周邊裝置使用主記憶體,讓這些周邊裝置免除配置獨立記憶體的需要,區別在於:前者只適用於CPU內建顯示晶片的狀況,CXL則允許任何支援io與CXL.cache協定的PCIe周邊裝置,使用系統的主記憶體。
- CXL Type 2應用裝置的主要訴求,是藉由共享主機CPU與周邊裝置的記憶體,動態調配兩者的記憶體資源,進而提高系統整體記憶體資源的利用效率。
- CXL Type 3應用裝置的目的,則是透過記憶體擴充卡,來提高伺服器CPU的可用記憶體頻寬與容量。