สิ่งที่ยอดเยี่ยมเกี่ยวกับโซลูชันสถาปัตยกรรมเพื่อเพิ่มปริมาณงานคือมีการปรับปรุงครั้งใหญ่ ซีพียูหลายตัวบนชิปที่มีลำดับชั้นแคชที่ใช้ร่วมกัน (บางส่วน) เป็นเรื่องปกติในโปรเซสเซอร์เซิร์ฟเวอร์ด้วยเหตุนี้ แต่กำไรมหาศาลนั้นมาพร้อมกับความซับซ้อนที่เพิ่มขึ้นอย่างมากในการตรวจสอบพฤติกรรมที่ถูกต้อง ในโมเดลหน่วยความจำแบบแบ่งใช้ ค่าที่เก็บไว้ในที่อยู่หน่วยความจำแบบลอจิคัลปรากฏไม่เพียงแต่ในหน่วยความจำหลัก (DRAM) แต่ยังอาจปรากฏอยู่ในแคชบนชิปหลายตัวและแม้กระทั่งในบัฟเฟอร์ในแฟบริคการเชื่อมโยงกัน ซึ่งทำให้เกิดปัญหาความสอดคล้องกัน - สำหรับที่อยู่หน่วยความจำลอจิคัลที่กำหนด สิ่งเหล่านี้ทั้งหมดควรมีค่าเดียวกันในทุกสถานการณ์ แต่ใช่หรือไม่ Breker โจมตีปัญหาการตรวจสอบความสอดคล้องกันนี้ผ่านเทคโนโลยีการสังเคราะห์การทดสอบ โดยพิจารณาถึงความสอดคล้องกันของระบบทั้งหมดในระบบที่ต่างกัน
ความท้าทายในการเชื่อมโยงกัน
มุมมองหน่วยความจำแบบลอจิคัลอาจไม่สอดคล้องกันเมื่อตัวประมวลผลสองตัวหรือมากกว่ากำลังทำงานกับสำเนาของค่าในเครื่องของตัวเองในที่อยู่ที่ใช้ร่วมกัน และตัวหนึ่งอัพเดตค่าภายในเครื่อง โดยที่ตัวอื่นไม่รู้จัก ความโกลาหลเกิดขึ้นเมื่อซีพียูแต่ละตัวทำงานด้วยมุมมองความเป็นจริงของตนเอง แฟบริกที่เชื่อมโยงกันนั้นมีโครงสร้างที่รองรับข้อมูลในเที่ยวบิน เช่น บัฟเฟอร์การเขียนกลับ การตรวจสอบความสอดคล้องต้องจัดการกับสิ่งเหล่านี้ด้วย และแน่นอนว่าอุปกรณ์ต่อพ่วงสามารถเขียนโดยตรงไปยังหน่วยความจำหลักผ่าน DMA ซึ่งไม่รู้จักในแคชภายใน
เห็นได้ชัดว่าจำเป็นต้องมีกลไกบางอย่างเพื่อให้ค่าที่ใช้ร่วมกันซิงค์กันเมื่อจำเป็น แต่ต้องเป็นคนถนัดมือเบา การซิงโครไนซ์มาพร้อมกับการปรับลดเวลาในการตอบสนอง ซึ่งสามารถลดข้อได้เปรียบด้านประสิทธิภาพของการแคชได้อย่างมาก เว้นแต่จะใช้เมื่อจำเป็นจริงๆ เท่านั้น ปัญหาเวลาแฝงเพิ่มมากขึ้นเมื่อคุณพิจารณาว่าบอร์ดตัวประมวลผลแบบหลายซ็อกเก็ตหน่วยความจำที่ใช้ร่วมกันเชื่อมต่อถึงกันผ่าน CXL เพิ่มความซับซ้อนในการแก้ปัญหา
เทคนิคที่ชาญฉลาดใช้เพื่อสอดแนมเนื้อหาแคชและการเปลี่ยนแปลง เพื่อกำหนดว่าเมื่อใดที่จำเป็นต้องมีการอัปเดตการซิงโครไนซ์ ซึ่งรวมถึงระบบสอดแนมและระบบเชื่อมโยงตามไดเรกทอรี ซึ่งแท็กที่อยู่แคช (บรรทัดแคชมากขึ้น) ว่าสะอาด (สอดคล้องกัน) หรือไม่ถูกต้อง พร้อมการปรับแต่งที่หลากหลาย วิธีการเหล่านี้จะต้องเป็นเส้นบางๆ ระหว่างการลดผลกระทบต่อประสิทธิภาพการทำงานของเน็ตให้เหลือน้อยที่สุด ในขณะที่ทำให้แน่ใจว่าจะไม่มีทางหนีออกมาได้ หลีกหนีจากกรณีที่เป็นไปได้ซึ่งสภาพที่ไม่สอดคล้องกันสามารถอยู่รอดได้
การเชื่อมโยงกันของระบบเบรกเกอร์ TrekApp
เพื่อตรวจสอบว่าการออกแบบไม่ได้ข้ามเส้นนั้น วิศวกรตรวจสอบต้องสร้างการทดสอบอย่างอิสระซึ่งพวกเขาเชื่อว่าจะครอบคลุมทุกกรณีที่เป็นไปได้ แคช แฟบริก และ IO มีความสอดคล้องกันในทุกรูปแบบการควบคุม (กำลัง การขัดจังหวะ การตอกบัตร ฯลฯ) ซึ่งการออกแบบอาจวนซ้ำ นั่นคือที่มาของแอป Breker Trek System Coherency
Adnan Hamid ผู้ก่อตั้ง Breker เริ่มต้นเมื่อหลายปีก่อนในการตรวจสอบความสอดคล้องกันที่ AMD แนวคิดที่เขาพัฒนาขึ้นเกี่ยวกับการตรวจสอบความเชื่อมโยงของแคชและวิธีการตรวจสอบระบบโดยทั่วไปที่เขาสร้างไว้ใน Breker โซลูชันการเชื่อมโยงกันขยายตัวเมื่อเวลาผ่านไปเพื่อรวมความสอดคล้องของแฟบริกและ IO และการโต้ตอบกับสวิตช์ไฟ ฯลฯ หลังจากพิสูจน์ความสามารถนี้กับลูกค้าเป้าหมายสองสามราย Breker ได้ประกาศผลิตภัณฑ์ในงาน DAC 2021 ล่าสุดในซานฟรานซิสโก
Adnan นำเสนอข้อมูลเชิงลึก: หากต้องการทราบวิธีการบรรลุการตรวจสอบความเชื่อมโยงที่มีความหมาย ก่อนอื่นคุณต้องรู้วิธีวัดความครอบคลุม เช่นเดียวกับวัตถุประสงค์ความครอบคลุมระดับระบบ เมตริกความครอบคลุม RTL จะไม่เป็นประโยชน์ มีประโยชน์มากกว่าคือการครอบคลุมตั้งแต่แรกของเครื่องจัดการการเชื่อมโยงกันในแต่ละแคช โดยมีค่าแคชและแอดเดรสที่ต่างกัน จากนั้นครอบคลุมที่คล้ายกันสำหรับการโต้ตอบข้ามแคช จากนั้นครอบคลุมชุดการทดสอบการทรมานบนซอฟต์แวร์สังเคราะห์ ข้ามด้วยกำลังและ ทรานซิชันอื่นๆ ที่ทำงานบนอีมูเลเตอร์ System Coherency TrekApp รองรับทั้งหมดนี้
แล้วการหลบหนีล่ะ?
พูดคุยกับใครก็ตามที่ทำงานด้วยการออกแบบที่เชื่อมโยงกัน และพวกเขาทั้งหมดจะบอกคุณว่าพวกเขาพบปัญหาความสอดคล้องกันหลังการทำซิลิคอน การเข้าใกล้เส้นแบ่งนั้นโดยไม่ข้ามมันค่อนข้างยาก ท้ายที่สุด คุณกำลังพยายามทำการตรวจสอบก่อนการเกิดซิลิกอนเพื่อสร้างแบบจำลองพื้นที่ของรัฐที่กว้างใหญ่ด้วยชุดการทดสอบเล็กๆ น้อยๆ ในการเปรียบเทียบ แม้ว่าคุณจะทำการทดสอบหลายหมื่นครั้งก็ตาม เนื่องจากการทดสอบอย่างละเอียดถี่ถ้วนไม่สามารถทำได้จากระยะไกล เคล็ดลับคือการหาชุดการทดสอบที่ใช้งานได้จริงที่ดีที่สุด เนื่องจากการดำเนินการนี้จะไม่สมบูรณ์อย่างหลีกเลี่ยงไม่ได้ System Coherency TrekApp จึงขยายไปถึงโพสต์ซิลิคอน ซึ่งช่วยวินิจฉัยความล้มเหลวของซิลิคอน บางทีการเปลี่ยนแปลงอำนาจในระหว่างการซิงโครไนซ์ หรือขัดจังหวะหมดเวลากับการอัปเดตแท็กอย่างน่าเสียดาย ในมุมมองของ Adnan การเรียนรู้หลังเกิดซิลิคอนนี้จะช่วยปรับแต่งแผนครอบคลุมการตรวจสอบยืนยันก่อนซิลิคอน เพื่อลดหากไม่กำจัดโพสต์ซิลิกอนหลบหนี
สิ่งที่น่าสนใจซึ่งได้รับการสนับสนุนโดยบังเอิญสำหรับทั้งระบบที่ใช้ Arm และ RISC-V ซึ่งเพิ่งได้รับการรับรองในการแถลงข่าวด้วย Nuclei System Technology คุณสามารถเรียนรู้เพิ่มเติม ที่นี่.
ยังอ่าน:
เว็บบินาร์: Adnan กับความท้าทายในการตรวจสอบความปลอดภัย
Breker ให้คำแนะนำแก่กราฟที่เป็นทางการในการยืนยันความปลอดภัยของ PSS
การตรวจสอบ RISC-V และความสามารถในการขยาย
แชร์โพสต์นี้ผ่าน: ที่มา: https://semiwiki.com/eda/306824-breker-attacks-system-coherency-verification/
- 2021
- เกี่ยวกับเรา
- ข้าม
- ที่อยู่
- ความได้เปรียบ
- ทั้งหมด
- เอเอ็มดี
- ประกาศ
- app
- รอบ
- การโจมตี
- กำลัง
- ที่ดีที่สุด
- แคช
- กรณี
- ความท้าทาย
- ชิป
- สภาพ
- เนื้อหา
- ลูกค้า
- ข้อมูล
- จัดการ
- ออกแบบ
- การออกแบบ
- พัฒนา
- วิศวกร
- ฯลฯ
- ผ้า
- ปลาย
- ชื่อจริง
- ผู้สร้าง
- ฟรานซิส
- เต็ม
- General
- ได้รับ
- ยิ่งใหญ่
- ช่วย
- สรุป ความน่าเชื่อถือของ Olymp Trade?
- ทำอย่างไร
- HTTPS
- ส่งผลกระทบ
- ปฏิสัมพันธ์
- IT
- นำ
- เรียนรู้
- การเรียนรู้
- Line
- ในประเทศ
- ที่ต้องการหา
- วัด
- ตัวชี้วัด
- แบบ
- ข้อมูลเพิ่มเติม
- จำเป็น
- สุทธิ
- เสนอ
- เสนอ
- อื่นๆ
- การปฏิบัติ
- บางที
- อำนาจ
- กด
- ข่าวประชาสัมพันธ์
- ปัญหา
- ผลิตภัณฑ์
- ยก
- ความจริง
- ลด
- ปล่อย
- วิ่ง
- วิ่ง
- ซาน
- ซานฟรานซิสโก
- ความปลอดภัย
- ชุด
- ที่ใช้ร่วมกัน
- สำคัญ
- คล้ายคลึงกัน
- โซลูชัน
- ช่องว่าง
- ข้อความที่เริ่ม
- สถานะ
- ก้าวย่าง
- ที่สนับสนุน
- รองรับ
- ระบบ
- ระบบ
- เทคนิค
- เทคโนโลยี
- ทดสอบ
- การทดสอบ
- การทดสอบ
- ตลอด
- เวลา
- เคล็ดลับ
- บันทึก
- การปรับปรุง
- ความคุ้มค่า
- การตรวจสอบ
- รายละเอียด
- ไม่มี
- งาน
- การทำงาน
- ปี