การตรวจสอบด้วยการขับเคลื่อนการเล่นซ้ำ: วิธีการใหม่ในการก้าวข้ามข้อจำกัดการตรวจสอบก่อนการผลิตชิปในสถาปัตยกรรมชิปเล็ต CPU-GPU

คำสำคัญ: การตรวจสอบแบบขับเคลื่อนด้วยการเล่นซ้ำ, สถาปัตยกรรม CPU-GPU, ชิปเล็ต ODIN, เครือข่ายบนชิป, การตรวจสอบก่อนการผลิตชิป

การผสานเทคโนโลยี CPU และ GPU เป็นเทคโนโลยีหลักที่รองรับงานประมวลผลปัญญาประดิษฐ์และกราฟิกสมัยใหม่ สถาปัตยกรรมผสานนี้มีทั้งความสามารถในการประมวลผลเชิงควบคุมและความสามารถในการคำนวณแบบขนานขนาดใหญ่

ขณะที่การออกแบบชิปพัฒนาสู่สถาปัตยกรรมชิปเล็ต (Chiplet) การตรวจสอบก่อนการผลิตชิปของระบบย่อย CPU-GPU ที่เชื่อมโยงอย่างแน่นหนาต้องเผชิญกับความท้าทายร้ายแรงหลายประการ:
* ความซับซ้อนสูงในการสร้างกรอบการตรวจสอบ
* ขนาดการออกแบบที่ใหญ่โต
* ระดับการทำงานพร้อมกันของระบบสูง
* พฤติกรรมการทำงานมีความไม่แน่นอน
* ปฏิสัมพันธ์ของโปรโตคอลระหว่างชิปเล็ตมีความซับซ้อนยุ่งเหยิง

ปัญหาข้างต้นมักนำไปสู่การขยายวงจรการรวมชิปอย่างมาก

บทความนี้เสนอระเบียบวิธีตรวจสอบแบบขับเคลื่อนด้วยการเล่นซ้ำ ซึ่งกำเนิดขึ้นในกระบวนการสร้างระบบบนชิปพื้นฐานของสถาปัตยกรรมชิปเล็ตแบบบูรณาการ ODIN ระบบบนชิปพื้นฐานนี้รวมระบบย่อย CPU, แกน GPU ซีรีส์ Xe หลายตัว และเครือข่ายบนชิปที่กำหนดค่าได้

ด้วยการบันทึกและเล่นซ้ำคลื่นสัญญาณที่กำหนดได้ในขั้นตอนการจำลองและการตรวจสอบต้นแบบภายใต้การสนับสนุนของฐานข้อมูลการออกแบบเดียว ทำให้สามารถสร้างระบบงาน GPU ที่ซับซ้อนและลำดับโปรโตคอลขึ้นใหม่ได้อย่างน่าเชื่อถือในระดับระบบ วิธีนี้เร่งความเร็วในการแก้ไขจุดบกพร่องอย่างเห็นได้ชัด เพิ่มความน่าเชื่อถือของการรวมชิป และทำให้สามารถเริ่มต้นระบบแบบครบวงจรและทำงานประมวลผลได้ภายในหนึ่งไตรมาส ซึ่งพิสูจน์ประสิทธิผลของระเบียบวิธีตรวจสอบแบบขับเคลื่อนด้วยการเล่นซ้ำในฐานะระเบียบวิธีที่ขยายได้สำหรับระบบสถาปัตยกรรมชิปเล็ต

สารบัญ

  • 1. บทนำ
  • 2. ภาพรวมระบบบนชิป ODIN และภูมิหลังการออกแบบชิปเล็ต
  • 2.1 ระบบย่อย CPU
  • 2.2 สถาปัตยกรรม GPU
  • 3. ความท้าทายในการตรวจสอบ
  • 3.1 ความซับซ้อนของโปรโตคอลและต้นทุนการสร้างแบบจำลอง
  • 3.2 ความท้าทายด้านความสอดคล้องในการย้ายจากการจำลองไปสู่การตรวจสอบต้นแบบ
  • 3.3 ปัญหาการวิเคราะห์สาเหตุรากฐานของความผิดพลาดและประสิทธิภาพการตรวจสอบ
  • 4. สถาปัตยกรรมเอนจินเล่นซ้ำ
  • 4.1 องค์ประกอบของเอนจินเล่นซ้ำ
  • 4.2 กระบวนการบันทึกการเล่นซ้ำและการกำหนดค่าเริ่มต้นหน่วยความจำอ่านอย่างเดียว
  • 5. กระบวนการจำลองและการตรวจสอบต้นแบบ
  • 5.1 ระเบียบวิธี: การตรวจสอบระดับระบบแบบขับเคลื่อนด้วยการเล่นซ้ำ
  • 5.2 กระบวนการจำลอง
  • 5.3 กระบวนการตรวจสอบต้นแบบ
  • 5.4 แพลตฟอร์มฮาร์ดแวร์ตรวจสอบต้นแบบ (EP1)
  • 6. ผลการทดลองและสรุปประสบการณ์หลัก
  • 6.1 สรุปประสบการณ์หลัก
  • สรุป
  • บรรณานุกรม

การตรวจสอบด้วยการขับเคลื่อนการเล่นซ้ำ: วิธีการใหม่ในการก้าวข้ามข้อจำกัดการตรวจสอบก่อนการผลิตชิปในสถาปัตยกรรมชิปเล็ต CPU-GPU

1. บทนำ

การผสาน CPU-GPU ได้กลายเป็นข้อกำหนดพื้นฐานสำหรับการออกแบบระบบบนชิปสำหรับปัญญาประดิษฐ์ การประมวลผลสื่อ และการคำนวณสมรรถนะสูง CPU ถนัดในการประมวลผลงานประเภทควบคุมและงานที่ไวต่อความหน่วง ในขณะที่ GPU บรรลุอัตราการประมวลผลสูงผ่านการทำงานแบบขนานขนาดใหญ่

การรวมทั้งสองเข้าด้วยกันนำมาซึ่งความท้าทายในการตรวจสอบมากมาย รวมถึงข้อกำหนดที่เข้มงวดต่อโครงสร้างพื้นฐานการทำงาน โครงสร้างลำดับชั้นหน่วยความจำหลายระดับ โปรโตคอลอินเทอร์เฟซที่ซับซ้อน การแมปแอดเดรสขนาดใหญ่ และพฤติกรรมการทำงานที่ไม่แน่นอนของระบบ นอกจากนี้ การทดสอบแบบกำหนดทิศทางแบบดั้งเดิมไม่สามารถค้นหาปัญหาระดับการรวมที่ปรากฏเฉพาะภายใต้น้ำหนักงานจริงได้อย่างมีประสิทธิภาพ ระเบียบวิธีตรวจสอบแบบขับเคลื่อนด้วยการเล่นซ้ำช่วยเติมเต็มช่องว่างระหว่างการมองเห็นได้จากการจำลองและสมรรถนะของการตรวจสอบต้นแบบ

2. ภาพรวมระบบบนชิป ODIN และภูมิหลังการออกแบบชิปเล็ต

การออกแบบระบบบนชิปสมรรถนะสูงสมัยใหม่หันมาใช้สถาปัตยกรรมการรวมชิปเล็ตมากขึ้นเรื่อยๆ เพื่อเพิ่มความสามารถในการขยาย การเป็นโมดูลาร์ และอัตราการนำการออกแบบกลับมาใช้ใหม่ ในสถาปัตยกรรมนี้ ระบบย่อยการคำนวณและหน่วยความจำที่ซับซ้อนได้รับการออกแบบเป็นชิปเล็ตกึ่งอิสระ และรวมเข้าด้วยกันผ่านสถาปัตยกรรมการเชื่อมต่อและขอบเขตโปรโตคอลที่กำหนดไว้ชัดเจน

งานวิจัยนี้ดำเนินการบนพื้นฐานของชิปเล็ตแบบบูรณาการ ODIN ซึ่งรวม CPU, GPU, ตัวควบคุมหน่วยความจำ และโมดูลเชื่อมต่อระบบเข้าเป็นหน่วยอิสระที่ประกอบรวมได้ ชิปเล็ตแบบบูรณาการ ODIN ผสานระบบย่อย CPU Xeon, คอมเพล็กซ์คำนวณ GPU และสถาปัตยกรรมเครือข่ายบนชิป พร้อมทั้งติดตั้งอินเทอร์เฟซหน่วยความจำแบนด์วิธสูงและอินเทอร์เฟซหน่วยความจำมาตรฐานการตรวจสอบด้วยการขับเคลื่อนการเล่นซ้ำ: วิธีการใหม่ในการก้าวข้ามข้อจำกัดการตรวจสอบก่อนการผลิตชิปในสถาปัตยกรรมชิปเล็ต CPU-GPU

รูปที่ 1: สถาปัตยกรรมโดยรวมของชิปเล็ต ODIN

ดังแสดงในรูปที่ 1 ระบบย่อย CPU และ GPU เชื่อมต่อกับสถาปัตยกรรมเครือข่ายบนชิป ซึ่งทำหน้าที่เป็นกระดูกสันหลังหลักสำหรับการสื่อสารทั้งแบบโคเฮเรนต์และนอนโคเฮเรนต์ เครือข่ายบนชิปนี้ยังเชื่อมต่อกับตัวควบคุมหน่วยความจำภายนอก, PCIe และ IP คอร์ระบบบนชิปอื่นๆ ทำให้บรรลุการรวมระดับระบบ ในขณะที่ยังคงคุณลักษณะการเป็นโมดูลาร์ที่ขอบเขตของชิปเล็ต

จุดออกแบบหลักประการหนึ่งของสถาปัตยกรรมนี้คือการแยกชิปเล็ตคำนวณออกจากเทคโนโลยีหน่วยความจำ

หน่วยความจำแบนด์วิธสูงเข้าถึงได้ผ่านตัวควบคุม HBM เฉพาะภายในชิปเล็ต ในขณะที่หน่วยความจำ DDR แบบดั้งเดิมเข้าถึงผ่านตัวควบคุม DDR ที่เชื่อมต่อกับเครือข่ายบนชิป การออกแบบแบบแยกนี้ทำให้ชิปเล็ตสามารถรองรับระบบหน่วยความจำแบบเฮเทอโรจีนีสได้ ในขณะเดียวกันก็ทำให้สามารถปรับใช้ได้อย่างยืดหยุ่นในการกำหนดค่าแพลตฟอร์มต่างๆ ด้วยการใช้สถาปัตยกรรมชิปเล็ต การออกแบบ ODIN รองรับการพัฒนาและตรวจสอบระบบย่อย CPU และ GPU อย่างอิสระ ในขณะเดียวกันก็อาศัยสถาปัตยกรรมเครือข่ายบนชิปเพื่อให้ความสามารถในการเชื่อมต่อที่ขยายได้ ความสามารถในการเรียงลำดับข้อมูล และความสามารถในการแปลงโปรโตคอล แม้การออกแบบแบบโมดูลาร์นี้จะมีประโยชน์อย่างมากต่อการรวมชิปและการนำกลับมาใช้ใหม่ แต่ก็นำมาซึ่งความท้าทายใหม่ในการตรวจสอบ โดยเฉพาะอย่างยิ่งที่อินเทอร์เฟซระหว่างชิปเล็ต ซึ่งเป็นแรงผลักดันในการพัฒนาระเบียบวิธีตรวจสอบแบบขับเคลื่อนด้วยการเล่นซ้ำที่อธิบายต่อไปในบทความนี้การตรวจสอบด้วยการขับเคลื่อนการเล่นซ้ำ: วิธีการใหม่ในการก้าวข้ามข้อจำกัดการตรวจสอบก่อนการผลิตชิปในสถาปัตยกรรมชิปเล็ต CPU-GPU

รูปที่ 2: สถาปัตยกรรมการรวมระดับบนสุดของระบบบนชิป (ประกอบด้วยระบบย่อย CPU, GPU, เครือข่ายบนชิป และหน่วยความจำระบบ) การไหลของหน่วยความจำและการควบคุมของ GPU ถูกกำหนดเส้นทางผ่านสถาปัตยกรรมเครือข่ายบนชิปไปยังหน่วยความจำ DDR ของระบบ

การออกแบบระบบบนชิปที่แสดงในรูปที่ 2 ไม่ใช่รูปแบบสุดท้ายของชิปเล็ตแบบบูรณาการ ODIN แต่เป็นบล็อกพื้นฐานของการสร้างสถาปัตยกรรมนี้ ในการกำหนดค่านี้ ระบบย่อยการคำนวณและหน่วยความจำต่างๆ ถูกประกอบรวมและตรวจสอบ เพื่อให้สามารถรวมเข้ากับกรอบชิปเล็ต ODIN ที่ใหญ่ขึ้นได้ในลักษณะที่ขยายได้ วิธีการออกแบบนี้สนับสนุนการพัฒนาและการตรวจสอบแบบเพิ่มทีละขั้นของส่วนประกอบ CPU, GPU และการเชื่อมต่อ ในขณะที่ยังคงความสอดคล้องกับสถาปัตยกรรมระบบ ODIN สุดท้าย

2.1 ระบบย่อย CPU

ระบบย่อย CPU ถูกบูรณาการเข้ากับเครือข่ายบนชิปผ่านลิงก์อินเทอร์เฟซโคเฮเรนต์บนชิป ตรรกะประกอบรวมประกอบด้วย:
* โมดูลควบคุมและการจัดการสำหรับการจัดการเซมาโฟร์และการขัดจังหวะ;
* ตัวควบคุมระบบสำหรับถอดรหัสอินพุต/เอาต์พุตที่แมปหน่วยความจำ;
* และโมดูลจัดการพลังงานที่อิงตามสัญญาณไซด์แบนด์และขั้นตอนการทำงานของโปรโตคอลช่องทาง Q มาตรฐานอุตสาหกรรม

ดังแสดงในรูปที่ 3 ระบบย่อยนี้เชื่อมต่อกับเครือข่ายบนชิปผ่านอินเทอร์เฟซโคเฮเรนต์ การตรวจสอบด้วยการขับเคลื่อนการเล่นซ้ำ: วิธีการใหม่ในการก้าวข้ามข้อจำกัดการตรวจสอบก่อนการผลิตชิปในสถาปัตยกรรมชิปเล็ต CPU-GPU

รูปที่ 3: สถาปัตยกรรมระบบย่อย CPU (เน้นคุณลักษณะการเชื่อมต่อของอินเทอร์เฟซโคเฮเรนต์ IDI)

2.2 สถาปัตยกรรม GPU

จากมุมมองการออกแบบ GPU เป็นโปรเซสเซอร์ประเภท “หน่วยความจำอินพุต-หน่วยความจำเอาต์พุต” โดยน้ำหนักงานส่วนใหญ่จะปรากฏในรูปแบบของสตรีมธุรกรรมหน่วยความจำ แทนที่จะเป็นฟลว์ควบคุมที่เชื่อมโยงอย่างแน่นหนา แบบจำลองการทำงานนี้ให้อัตราการประมวลผลสูงและการทำงานแบบขนานสูงแก่ GPU แต่ก็กำหนดข้อกำหนดที่สูงมากต่อความถูกต้องของระบบย่อยหน่วยความจำ ความสามารถในการเรียงลำดับข้อมูล และประสิทธิภาพการทำงาน

IP คอร์ GPU ที่ใช้ในการศึกษานี้เป็นการออกแบบระดับการถ่ายโอนเรจิสเตอร์ (RTL) ที่สามารถสังเคราะห์ได้ ประกอบด้วยแกน Xe ซีรีส์หลายแกน ซึ่งแต่ละแกน Xe ประกอบด้วยหน่วยปฏิบัติการ (EU) หลายหน่วย หน่วยปฏิบัติการเหล่านี้สามารถดำเนินการคำนวณเลขคณิต SIMD คำสั่งโหลด/เก็บข้อมูล SIMD และการคำนวณแบบซิสโตลิก ซึ่งสามารถประมวลผลน้ำหนักงานแบบขนานสูงได้อย่างมีประสิทธิภาพ งานของ GPU จะถูกส่งออกในรูปแบบของคลื่นเธรด การดำเนินการจะกระจายไปทั่วแกน Xe และหน่วยปฏิบัติการต่างๆ เพื่อเพิ่มประสิทธิภาพการใช้ฮาร์ดแวร์ให้สูงสุด

พฤติกรรมการทำงานของ GPU โดยพื้นฐานแล้วเป็นประเภท ขับเคลื่อนโดยหน่วยความจำ โดยจะเข้าถึงหน่วยความจำระบบบ่อยครั้งเพื่อดึงคำสั่ง อ่านข้อมูล และเขียนผลลัพธ์การคำนวณกลับ ดังนั้น ประสิทธิภาพของ GPU จึงขึ้นอยู่กับโครงสร้างพื้นฐานระบบบนชิปโดยรอบเป็นอย่างมาก ซึ่งรวมถึงเครือข่ายบนชิป ตัวควบคุมหน่วยความจำ และโครงสร้างลำดับชั้นแคช ซึ่งส่วนประกอบเหล่านี้เป็นกุญแจสำคัญที่ทำให้ GPU รักษาอัตราการประมวลผลสูงและความถูกต้องในการทำงาน ปฏิสัมพันธ์ต่างๆ เช่น การเรียงลำดับหน่วยความจำ ความเป็นโคเฮเรนต์ แรงดันย้อนกลับ และไทม์มิ่งการตอบสนอง กลายเป็นจุดตรวจสอบหลักในการตรวจสอบระดับระบบ

ลักษณะการเชื่อมโยงอย่างแน่นหนาระหว่างการทำงานของ GPU และพฤติกรรมของหน่วยความจำระบบ ทำให้การตรวจสอบ GPU มีความไวต่อปัญหาการรวมที่อินเทอร์เฟซเครือข่ายบนชิปและหน่วยความจำเป็นพิเศษ ดังนั้น การสร้างแบบจำลองการไหลของหน่วยความจำอย่างแม่นยำและการสร้างพฤติกรรมอินเทอร์เฟซขึ้นใหม่อย่างกำหนดได้ เป็นเงื่อนไขที่จำเป็นสำหรับการตรวจสอบก่อนการผลิตชิปที่มีประสิทธิภาพ รูปที่ 4 แสดงภาพรวมสถาปัตยกรรม GPU และสภาพแวดล้อมการรวม การตรวจสอบด้วยการขับเคลื่อนการเล่นซ้ำ: วิธีการใหม่ในการก้าวข้ามข้อจำกัดการตรวจสอบก่อนการผลิตชิปในสถาปัตยกรรมชิปเล็ต CPU-GPU

รูปที่ 4: สถาปัตยกรรม GPU (ประกอบด้วยแกน Xe, หน่วยปฏิบัติการ (EU) และโครงสร้างลำดับชั้นหน่วยความจำ)

3. ความท้าทายในการตรวจสอบ

ในกระบวนการรวม CPU-GPU-เครือข่ายบนชิป นักวิจัยเผชิญกับความท้าทายมากมาย

3.1 ความซับซ้อนของโปรโตคอลและต้นทุนการสร้างแบบจำลอง

นอกจากความซับซ้อนของฟังก์ชันระบบแล้ว กระบวนการทำงานของ GPU ยังขึ้นอยู่กับโปรโตคอลการเริ่มต้น การจัดการพลังงาน ไทม์มิ่ง และนาฬิกาที่ซับซ้อน ซึ่งหลายโปรโตคอลใช้อินเทอร์เฟซเฉพาะ

ต้องปฏิบัติตามโปรโตคอลเหล่านี้อย่างเคร่งครัด จึงจะสามารถ ดีบักการเริ่มต้น และดำเนินการน้ำหนักงานของ GPU ได้สำเร็จ จากมุมมองของระบบบนชิปเต็ม การสร้างแบบจำลองและวิเคราะห์ลำดับโปรโตคอลละเอียดเหล่านี้จะนำมาซึ่งต้นทุนและความซับซ้อนมหาศาล

3.2 ความท้าทายด้านความสอดคล้องในการย้ายจากการจำลองไปสู่การตรวจสอบต้นแบบ

ในกระบวนการตรวจสอบแบบจำลองฟังก์ชันบัส (BFM) แบบดั้งเดิม การย้ายจากการจำลองไปสู่การตรวจสอบต้นแบบมักต้องการการปรับเปลี่ยนอย่างมากต่อการคอมไพล์โมเดล การกำหนดค่า และโครงสร้างพื้นฐานการทำงาน

ความแตกต่างเหล่านี้มักนำไปสู่ความจำเป็นที่นักพัฒนาต้องบำรุงรักษาฐานข้อมูลการออกแบบสำหรับการจำลองและการตรวจสอบต้นแบบแยกกัน หรือพัฒนาไฟล์ประกอบการออกแบบเฉพาะสำหรับแพลตฟอร์มต่างๆ ซึ่งไม่เพียงเพิ่มต้นทุนการรวมชิป แต่ยังทำให้ยากต่อการรับประกันความสอดคล้องระหว่างสภาพแวดล้อมการตรวจสอบต่างๆ

วิธีการออกแบบแบบแยกส่วนนี้เพิ่มความยากในการเชื่อมโยงการดีบัก ชะลอความเร็วในการวนซ้ำ และยังเพิ่มความเสี่ยงที่ผลลัพธ์การจำลองและการตรวจสอบต้นแบบจะเบี่ยงเบนในระหว่างกระบวนการตรวจสอบระดับระบบ

3.3 ปัญหาการวิเคราะห์สาเหตุรากฐานของความผิดพลาดและประสิทธิภาพการตรวจสอบ

ความท้าทายสำคัญอีกประการหนึ่งในการตรวจสอบระดับระบบบนชิปคือการ วิเคราะห์สาเหตุรากฐาน ของปัญหาระดับ IP คอร์จากความผิดพลาดของระบบเต็ม

เมื่อเกิดความผิดพลาดในระดับระบบบนชิป การระบุว่าสาเหตุรากฐานมาจากการนำ IP ไปใช้ ตรรกะการรวม หรือปฏิสัมพันธ์ระดับระบบ มักต้องการงานดีบัก


⚠️ หมายเหตุ: เนื้อหาได้รับการแปลโดย AI และตรวจสอบโดยมนุษย์ หากมีข้อผิดพลาดโปรดแจ้ง

☕ สนับสนุนค่ากาแฟทีมงาน

หากคุณชอบบทความนี้ สามารถสนับสนุนเราได้ผ่าน PromptPay

PromptPay QR
SCAN TO PAY WITH ANY BANK

本文来自网络搜集,不代表คลื่นสร้างอนาคต立场,如有侵权,联系删除。转载请注明出处:https://www.itsolotime.com/th/archives/28207

Like (0)
Previous 1 hour ago
Next 1 hour ago

相关推荐