背景
之前在一個ASCI開發項目中有小小接觸過一些新思科技的一個NVMe控制器,代碼量尚可,只是由于速度及其他原因的考慮,整個部分的設計其實有時候還是比較難以考量的,而且由于流片成本及IP購買成本的問題,當時就想像如果在一款FPGA中可以直接實現這樣一款高性能的PCIe NVMe控制器或許會對整個性能的把握會更好一些,而下面的Fidus Sidewinder-100系統就是一個集成的PCIe NVMe 控制系統。
Fidus Sidewinder-100 PCIe NVMe Storage Controller:Fidus系統是基于Sidewinder-100 PCIe NVMe存儲控制器設計實現的,而這個控制器在一個Xilinx Zynq UltraScale+ MPSoC ZU19EG 上實現,之所以選擇這款芯片來實現有很多考量,不過最重要的是因為PCIe Gen3/4 能力:高速,且板卡的兩個100Gbps QSFP 光纖網絡槽可以實現防彈并行轉換;另外還可以利用Xilinx可編程器件內部巨大的I/O靈活性來實現DDR SDRAM控制器,并驅動兩個SFF-8643 Mini SAS連接器(用于片外SSDs等);并且,芯片上集成了六個ARM處理器核,可以提供強大的處理能力(四個64bitARM Cortex-A53 MPcore 處理器和兩個32bit的ARM Cortex-R5 Mpcore處理器);Xilinx UltraScale架構還提供大量的片上可編程邏輯單元。正是由于Zynq UltraScale+ MPSoc系列用于這么多的features,才使得實現一個高性能NVMe 控制器成為可能并變得容易,正像Sidewinder-100系統一樣,用戶可以基于此板卡實現大量的各種類型的任何可以想到的硬件設計。
Sidewinder-100系統通過SCSI和SAS存儲陣列獲得了具有較強市場競爭力的性能優勢,同時它還通過Fabrics技術實現了NVMe, 從而大大減少了存儲傳輸時的延遲。從下圖的板卡上可以看出,板卡上還集成了兩個M.2連接器,可以用于連接NVMe SSD卡。此外,可以通過Zynq UltraScale+ MPSoC的PS(處理系統)和PL(可編程邏輯)部分分別連接到兩個到DDR4 SO-DIMM端。這種分開連接實現了兩種不同速率的DDR4 SO-DIMM,連接到PS上的DDR4 SO-DIMM操作速率為1866M每秒,而連接在PL部分的DDR4 SO-DIMM傳輸速率可以達到每秒2133M。
當然,正是利用了Sidewinder-100的這些優點才實現了一個強大的PCIe Gen4開發平臺,如下圖所示:
圖1:Fidus Sidewinder-100 PCIe NVMe Storage Controller
不過,由于Fidus其實是一個設計house,在最開始,也考慮到Sidewinder-100 PCIe NVMe存儲控制器的應用,它還是可以用于實現一些通用目標設計的。當然了,最重要的是此板卡為實現任何高性能PCIe Gen3或Gen4開發設計提供了強大的平臺,此外,在利用此平臺進行開發時遇到任何問題,都可以通過Fidus獲得一些幫助。(特別提示:Siderwinder-100 PCIe NVMe存儲控制器的PCIe電源和回路適配器是在板卡的背面):
圖2:Fidus PCIe Power and Loopback Adapter
另外,考慮到Gen4母板還是比較缺乏的,所以當你沒有一個母板的時候,剛好可以通過這個連接口插一個PCIe卡到板卡上。而且這個適配器看起來它應該是比一個能量緊缺的母板的功耗要小很多,而且只需要將這個適配器看作一個簡單的DC電源連接器來操作就好。
總結隨著Xilinx FPGA技術的不斷增強,之前一些設計難題或者功耗難題已經在慢慢的解決,而隨著這些困難的消除,FPGA的設計領域也越來越廣泛,相信在未來,Xilinx 的FPGA會給我們帶來更多驚喜。
-
FPGA
+關注
關注
1630文章
21762瀏覽量
604483 -
fidus
+關注
關注
0文章
1瀏覽量
1468
原文標題:Sidewinder-100 PCIe NVMe Controller的秘密武器
文章出處:【微信號:FPGA-EETrend,微信公眾號:FPGA開發圈】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論