Xilinx KCU116: แพลตฟอร์มการพัฒนา FPGA เครือข่ายและพื้นที่เก็บข้อมูล 100 Gbps ที่คุ้มค่า

By ธนพร แสงไพฑูรย์

NSตระกูล Kintex® UltraScale+™ ถือเป็นอุปกรณ์ FPGA ที่ราคา/ประสิทธิภาพ/สมดุลที่ดีที่สุดที่สร้างจากเทคโนโลยี FinFET TSMC 16 nm จากXilinx® . เมื่อรวม UltraRAM ใหม่เข้ากับเทคโนโลยีการเพิ่มประสิทธิภาพการเชื่อมต่อระหว่างกัน (SmartConnect) อุปกรณ์นี้มอบโซลูชันที่คุ้มค่าที่สุดสำหรับแอปพลิเคชันที่ต้องการตัวรับส่งสัญญาณความสามารถระดับไฮเอนด์สำหรับแกนการเชื่อมต่อ 100 Gbps ตระกูลนี้ได้รับการออกแบบมาโดยเฉพาะสำหรับแอปพลิเคชันเครือข่ายและการจัดเก็บข้อมูล เช่น การประมวลผลแพ็กเก็ตเครือข่ายและเทคโนโลยี MIMO ไร้สาย เครือข่ายแบบใช้สาย 100 Gbps การเร่งความเร็วเครือข่ายอุตสาหกรรมและศูนย์ข้อมูล และการเร่งความเร็วพื้นที่เก็บข้อมูล NVMe SSD (โซลิดสเตตไดรฟ์) บทความนี้สาธิตโซลูชัน 100 Gbps ของเครือข่าย TCP Offload Engine และการใช้งาน NVMe SSD บน Xilinxชุดประเมินผล KCU116 โดยใช้ดีไซน์เกตเวย์ TOE100G-IP Core ซึ่งใช้สำหรับโซลูชัน CPU ที่มีการส่งผ่าน TCP 12 GB/s ผ่านอินเทอร์เฟซ 100 GbE และ NVMeG4-IP Core ซึ่งสามารถบรรลุประสิทธิภาพที่รวดเร็วอย่างไม่น่าเชื่อที่ประมาณ 4 GB/s ต่อ SSD

ข้อมูลเบื้องต้นเกี่ยวกับชุดประเมินผล Kintex® UltraScale+ KCU116

KCU116 เหมาะอย่างยิ่งสำหรับการประเมินคุณสมบัติ Kintex UltraScale+ ที่สำคัญ โดยเฉพาะอย่างยิ่งประสิทธิภาพของตัวรับส่งสัญญาณ 28 Gbps ชุดนี้เหมาะอย่างยิ่งสำหรับการสร้างต้นแบบอย่างรวดเร็วโดยอิงจากaXCKU5P-2FFVB676E อุปกรณ์ FPGA .

สิ่งที่รวมอยู่ในบอร์ดคือ DDR4-2666 ขนาด 1 GB 32 บิต พอร์ตขยาย FMC สำหรับ 1 x M.2 NVMe SSD และ PCIe Gen4 x8 เลนสำหรับอินเทอร์เฟซ M.2 NVMe SSD สูงสุด 2 x ตัวรับส่งสัญญาณ GTY ขนาด 16 x 28 Gbps พร้อมใช้งานสำหรับทั้งการใช้งานอินเทอร์เฟซ PCIe Gen4 และ 100 GbE และมีอินเทอร์เฟซอุปกรณ์ต่อพ่วงที่หลากหลายและตรรกะ FPGA สำหรับการออกแบบที่ผู้ใช้กำหนดเอง

ภาพชุดตรวจประเมิน Xilinx KCU116 (คลิกเพื่อดูภาพขยาย)รูปที่ 1: ชุดประเมินผล KCU116 (แหล่งรูปภาพ: Xilinx Inc.)

เมื่อใช้ร่วมกับ IP Cores ของ Design Gateway แล้ว KCU116 จะมอบทุกสิ่งที่จำเป็นต่อการพัฒนาโซลูชันเครือข่ายและสตอเรจที่ล้ำสมัย 100 Gbps โดยไม่จำเป็นต้องได้รับการสนับสนุน MPSoC

การใช้งานโซลูชั่นเครือข่ายและสตอเรจ 100Gbps

ไดอะแกรมของโซลูชันเครือข่ายและสตอเรจ 100 Gbps บน KCU116รูปที่ 2: โซลูชันเครือข่ายและความจุ 100 Gbps บน KCU116 (ที่มาของรูปภาพ: Design Gateway)

แม้ว่าอุปกรณ์ Kintex UltraScale+ จะไม่มีเทคโนโลยี MPSoC เช่น Zynq UltraScale+ แต่การประมวลผลเครือข่ายและโปรโตคอลการจัดเก็บข้อมูล NVMe ก็สามารถทำได้โดยไม่ต้องใช้โปรเซสเซอร์และระบบปฏิบัติการโดยใช้ประโยชน์จากโซลูชัน IP Cores ของ Design Gateway:

  1. TOE100G-IP: 100 GbE Full TCP protocol stack IP Core โดยไม่ต้องใช้ CPU
  2. NVMeG4-IP: ตัวควบคุมโฮสต์ NVMe แบบสแตนด์อโลนพร้อม PCIe Gen4 Soft IP ในตัว

ทั้ง TOE100G-IP และ NVMeG4-IP สามารถทำงานได้โดยไม่ต้องใช้ CPU/OS/ไดรเวอร์ ลอจิกผู้ใช้สำหรับการควบคุมและเส้นทางข้อมูลที่มี IP ทั้งสองสามารถนำไปใช้โดยลอจิกฮาร์ดแวร์บริสุทธิ์หรือระบบปฏิบัติการ Bare-metal โดย Microblaze ทำให้สามารถพัฒนาแอปพลิเคชันและอัลกอริธึมระดับสูงได้เร็วและง่ายขึ้นโดยไม่จำเป็นต้องกังวลเกี่ยวกับระบบเครือข่ายและโปรโตคอล NVMe ซึ่งเป็นการเปิดโอกาสใหม่ ๆ สำหรับโซลูชันระดับระบบขั้นสูง เช่น การเก็บข้อมูลเซ็นเซอร์ การคำนวณบนบอร์ด และอุปกรณ์ประมวลผล Edge ที่ใช้ AI

TOE100G-IP ของ Design Gateway สำหรับอุปกรณ์ UltraScale+

ภาพระบบ TOE100G-IPรูปที่ 3: ระบบ TOE100G-IP (ที่มาของรูปภาพ: Design Gateway)

แกน IP TOE100G ใช้สแต็ก TCP/IP (ในตรรกะแบบฮาร์ดไวร์) เชื่อมต่อกับโมดูลระบบย่อยอีเธอร์เน็ต 100 Gb ของ Xilinx สำหรับฮาร์ดแวร์ระดับล่าง อินเทอร์เฟซผู้ใช้ของ TOE100G IP ประกอบด้วยอินเทอร์เฟซ Register สำหรับสัญญาณควบคุมและอินเทอร์เฟซ FIFO สำหรับสัญญาณข้อมูล TOE100G IP ออกแบบมาเพื่อเชื่อมต่อกับระบบย่อย 100 Gb Ethernet ซึ่งใช้ AXI4-ST 512 บิตเพื่อเชื่อมต่อกับอินเทอร์เฟซผู้ใช้ ระบบย่อยอีเทอร์เน็ตที่จัดเตรียมโดย Xilinx รวมถึงฟังก์ชัน EMAC, PCS และ PMA ความถี่สัญญาณนาฬิกาของอินเทอร์เฟซผู้ใช้ของระบบย่อย 100 Gb Ethernet เท่ากับ 322.265625 MHz

คุณสมบัติของ TOE100G-IP

  • การใช้งานสแต็ก TCP/IP แบบเต็ม
  • รองรับหนึ่งเซสชันโดยหนึ่ง TOE100G IP (มัลติเซสชั่นสามารถใช้งานได้โดยใช้ TOE100G IP หลายรายการ))
  • รองรับทั้งโหมดเซิร์ฟเวอร์และไคลเอนต์ (เปิดและปิดแบบ Passive/Active)
  • รองรับกรอบจัมโบ้
  • อินเทอร์เฟซข้อมูลอย่างง่ายโดยอินเทอร์เฟซ FIFO มาตรฐาน
  • อินเทอร์เฟซการควบคุมอย่างง่ายโดยอินเทอร์เฟซ RAM พอร์ตเดียว

การใช้ทรัพยากร FPGA บนอุปกรณ์ XCKU5P-2FFVB676E FPGA แสดงไว้ในตารางที่ 1 ด้านล่าง

ตระกูล ตัวอย่างอุปกรณ์ เอฟแม็กซ์ (MHz) CLB Regs CLB LUTs CLB IOB BRAMTile URAM GTY เครื่องมือออกแบบ
Kintex-Ultrascale+ XCKU5P-FFVB676-2E 350 12883 17535 3208 - 53 - 4 Vivado2019.1

ตารางที่ 1: ตัวอย่างสถิติการใช้งานสำหรับอุปกรณ์ Kintex Ultrascale+

รายละเอียดเพิ่มเติมของTOE100G-IP อธิบายไว้ในเอกสารข้อมูล data ซึ่งสามารถดาวน์โหลดได้จากเว็บไซต์ของ Design Gateway

Design Gateway's NVMe PCIe Gen4 Host Controller สำหรับ GTY Transceivers

Kintex UltraScale+ มีตัวรับส่งสัญญาณ GTY ซึ่งสามารถรองรับอินเทอร์เฟซ PCIe Gen4 ได้ แต่ไม่มีตัวประมวลผล PCIe Gen4 แบบบูรณาการ Block และ ARM

Design Gateway แก้ไขปัญหานี้โดยการพัฒนาแกน NVMeG4-IP ที่สามารถเรียกใช้เป็นตัวควบคุมโฮสต์ NVMe แบบสแตนด์อโลนที่มี PCIe soft IP ในตัวและลอจิกบริดจ์ PCIe ในคอร์เดียว การเปิดใช้งานการเข้าถึง NVMe PCIe Gen4 SSD ช่วยลดความซับซ้อนของอินเทอร์เฟซผู้ใช้ และเปิดใช้งานคุณสมบัติมาตรฐานที่ออกแบบให้ใช้งานง่ายโดยไม่จำเป็นต้องมีความรู้เกี่ยวกับโปรโตคอล NVMe

รูปภาพของแผนภาพบล็อก NVMeG4-IP รูปที่ 4: แผนภาพบล็อก NVMeG4-IP (ที่มาของรูปภาพ: Design Gateway)

คุณสมบัติของ NVMeG4-IP

  • สามารถใช้ชั้นแอปพลิเคชัน ชั้นธุรกรรม ชั้นเชื่อมโยงข้อมูล และบางส่วนของชั้นกายภาพเพื่อเข้าถึง NVMe SSD โดยไม่ต้องใช้ CPU หรือหน่วยความจำ DDR ภายนอก
  • ทำงานด้วย Xilinx PCIe PHY IP ที่กำหนดค่าเป็น 4-lane PCIe Gen4 (อินเทอร์เฟซบัส 256 บิต)
  • รวมบัฟเฟอร์ข้อมูล RAM 256 Kbyte
  • รองรับคำสั่ง 6 คำสั่ง ได้แก่ ระบุ ปิดเครื่อง เขียน อ่าน สมาร์ท และล้าง (รองรับคำสั่งเสริมเพิ่มเติม)
  • ความถี่สัญญาณนาฬิกาของผู้ใช้ต้องมากกว่าหรือเท่ากับนาฬิกา PCIe (250 MHz สำหรับ Gen4)

การใช้ทรัพยากร FPGA บนอุปกรณ์ XCKU5P-2FFVB676E FPGA แสดงไว้ในตารางที่ 2 ด้านล่าง

ตระกูล ตัวอย่างอุปกรณ์ เอฟแม็กซ์ (MHz) CLB Regs CLB LUTs CLB IOB BRAMTile URAM GTY เครื่องมือออกแบบ
Kintex-Ultrascale+ XCKU5P-FFVB676-2E 300 19214 21960 4382 - 12 8 4 Vivado2019.1

ตารางที่ 2: ตัวอย่างสถิติการใช้งานสำหรับอุปกรณ์ Kintex Ultrascale+

รายละเอียดเพิ่มเติมของNVMeG4-IP อธิบายไว้ในแผ่นข้อมูล ซึ่งสามารถดาวน์โหลดได้จากเว็บไซต์ของ Design Gateway

ตัวอย่างการใช้งาน TOE100G-IP และผลการปฏิบัติงานบน KCU116

รูปที่ 5 แสดงภาพรวมของการออกแบบอ้างอิงตาม KCU116 เพื่อสาธิตการใช้งาน TOE100G-IP ระบบสาธิตประกอบด้วยระบบ Bare-metal OS Microblaze, User logic และระบบย่อยอีเทอร์เน็ต 100 Gb ของ Xilinx

รูปภาพของบล็อกไดอะแกรมระบบสาธิต TOE100G-IP รูปที่ 5: บล็อกไดอะแกรมระบบสาธิต TOE100G-IP (ที่มาของรูปภาพ: Design Gateway)

ระบบสาธิตออกแบบมาเพื่อประเมินการทำงานของ TOE100G-IP ทั้งในโหมดไคลเอนต์และเซิร์ฟเวอร์ ตรรกะการทดสอบช่วยให้ส่งและรับข้อมูลด้วยรูปแบบการทดสอบสำหรับความเร็วข้อมูลสูงสุดที่เป็นไปได้ในด้านอินเทอร์เฟซผู้ใช้ สำหรับอินเทอร์เฟซ 100 GbE ที่มี KCU116 จำเป็นต้องใช้ตัวรับส่งสัญญาณ SFP+ สี่ตัว (25GBASE-R) และสายเคเบิลไฟเบอร์ตามที่แสดงใน รูปที่ 6

รูปภาพของสภาพแวดล้อมการสาธิต TOE100G-IP ที่ตั้งค่าบน KCU116รูปที่ 6: ตั้งค่าสภาพแวดล้อมการสาธิต TOE100G-IP บน KCU116 (ที่มาของรูปภาพ: Design Gateway)

ตัวอย่างผลการทดสอบเมื่อเปรียบเทียบ 100G กับรุ่นอื่นๆ (1G/10G/25G/40G) แสดงไว้ในรูปที่ 7

กราฟเปรียบเทียบประสิทธิภาพ TOE100G-IP กับ 1G/10G/25G/40G บน KCU116รูปที่ 7: การเปรียบเทียบประสิทธิภาพ TOE100G-IP กับ 1G/10G/25G/40G บน KCU116 (ที่มาของรูปภาพ: Design Gateway)

ผลการทดสอบแสดงให้เห็นว่า TOE100G-IP มีความสามารถในการรับส่งข้อมูล TCP ที่ความเร็วประมาณ 12 GB/s

ตัวอย่างการใช้งาน NVMeG4-IP และผลการปฏิบัติงานบน KCU116

รูปที่ 8 แสดงภาพรวมของการออกแบบอ้างอิงตาม KCU116 เพื่อสาธิตการใช้งาน 1CH NVMeG4-IP เป็นไปได้ที่จะใช้ NVMeG4-IP หลายอินสแตนซ์เพื่อให้ได้ประสิทธิภาพการจัดเก็บข้อมูลที่สูงขึ้น หากทรัพยากร FPGA พร้อมใช้งานจากการออกแบบที่ผู้ใช้กำหนดเอง

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการออกแบบอ้างอิง NVMeG4-IP โปรดดูที่เอกสารการออกแบบอ้างอิง NVMeG4-IP ให้บริการบนเว็บไซต์ของ Design Gateway

ไดอะแกรมของภาพรวมการออกแบบอ้างอิง NVMeG4-IPรูปที่ 8: ภาพรวมการออกแบบอ้างอิง NVMeG4-IP (ที่มาของรูปภาพ: Design Gateway)

ระบบสาธิตได้รับการออกแบบมาเพื่อเขียน/ตรวจสอบข้อมูลด้วย NVMe SSD บน KCU116 ผู้ใช้ควบคุมการดำเนินการทดสอบผ่านคอนโซลซีเรียล เพื่อให้ NVMe SSD เชื่อมต่อกับ KCU116 จำเป็นต้องใช้บอร์ดอะแดปเตอร์ AB18-PCIeX16 ดังแสดงในรูปที่ 9

รูปภาพของสภาพแวดล้อมการสาธิต NVMeG4-IP ที่ตั้งค่าบน KCU116 (คลิกเพื่อดูภาพขยาย)รูปที่ 9: ตั้งค่าสภาพแวดล้อมการสาธิต NVMeG4-IP บน KCU116 (ที่มาของรูปภาพ: Design Gateway)

ตัวอย่างผลการทดสอบเมื่อรันระบบสาธิตบน KCU116 ขณะใช้ Samsung 970 Pro ขนาด 512 GB แสดงในรูปที่ 10

กราฟแสดงประสิทธิภาพการอ่าน/เขียน NVMe SSD บน KCU116 โดยใช้ Samsung 970 PRO Sรูปที่ 10: ประสิทธิภาพการอ่าน/เขียน NVMe SSD บน KCU116 โดยใช้ Samsung 970 PRO S. (ที่มาของภาพ: Design Gateway)

สรุป

ทั้ง TOE100G-IP และ NVMeG4-IP Core ต่างก็มอบโซลูชันเพื่อใช้ความสามารถในการเชื่อมต่อ 100 Gbps บนบอร์ด KCU116 สำหรับเครือข่ายและการใช้งานแอปพลิเคชันพื้นที่เก็บข้อมูล NVMe TOE100G-IP หนึ่งเครื่องสามารถส่งข้อมูล TCP ได้ประมาณ 12 GB มากกว่า 100 GbE NVMeG4-IP สามารถให้การจัดเก็บข้อมูลประสิทธิภาพสูงมากด้วย NVMe PCIe Gen4 ที่ประมาณ 4 GB/s ต่อ SSD สามารถใช้ NVMeG4-IP หลายอินสแตนซ์เพื่อสร้างตัวควบคุม RAID0 และสามารถเพิ่มประสิทธิภาพการจัดเก็บเพื่อให้ตรงกับความเร็วในการส่งข้อมูล 100 GbE

ชุดประเมินผล KCU116 และโซลูชัน IP เครือข่ายและการจัดเก็บของ Design Gateway ช่วยให้สามารถบรรลุเป้าหมายของประสิทธิภาพสูงสุดที่เป็นไปได้โดยใช้ทรัพยากร FPGA ที่ต่ำที่สุดเท่าที่จะเป็นไปได้สำหรับโซลูชันหรือผลิตภัณฑ์ที่คุ้มค่ามากโดยใช้อุปกรณ์ Xilinx® Kintex UltraScale+®

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับ TOE100G-IP และ NVMeG4-IP แผ่นข้อมูล การออกแบบอ้างอิงที่พร้อมใช้งาน และการตั้งค่าสภาพแวดล้อมการสาธิตมีอยู่ในเว็บไซต์ของ Design Gateway ที่:

https://dgway.com/TOE100G-IP_X_E.html

https://dgway.com/NVMeG4-IP_X_E.html

Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.

About this author

Image of Thanaporn Sangpaithoon

ธนพร แสงไพฑูรย์

ธนพร แสงไพฑูรย์ เคยทำงานที่ดีไซน์ เกตเวย์ บจก.ตั้งแต่ปี 2544 เขามีส่วนร่วมในโครงการออกแบบ FPGA และประสบความสำเร็จในการพัฒนา Serial ATA IP Core บนXilinx เวอร์เท็กซ์-4 ในปี 2549 ปัจจุบันดำรงตำแหน่งผู้จัดการทั่วไป รับผิดชอบด้านการขายและการพัฒนาธุรกิจ