คำสำคัญ: ความทนทานต่อความผิดพลาดของ SoC, การพลิกกลับของอนุภาคเดี่ยว, ความซ้ำซ้อนสามเท่า, คอร์ล็อกสเต็ป, การป้องกันแบบเหลื่อมซ้อน, หน่วยความจำ ECC
“ในอวกาศ การพลิกกลับของบิตเพียงหนึ่งบิตที่ไม่ได้รับการแก้ไข อาจทำให้ยานสำรวจมูลค่าหลายร้อยล้านดอลลาร์หลงทิศทางได้ ในรถยนต์ขับเคลื่อนอัตโนมัติ ข้อผิดพลาดของข้อมูลเพียงครั้งเดียวที่ไม่ได้รับการตรวจจับ อาจนำไปสู่อุบัติเหตุร้ายแรงที่ไม่สามารถแก้ไขได้ อย่างไรก็ตาม เมื่อเราใช้ทุกวิถีทางเพื่อเสริมความแข็งแกร่งให้กับคอร์โปรเซสเซอร์และแก้ไขข้อผิดพลาดของหน่วยความจำ เราเคยคิดถึงคำถามนี้หรือไม่: ใครจะเป็นผู้ตรวจสอบ ‘ผู้ตรวจสอบ’ เหล่านั้น?”
นี่คือคำถามหลักที่บทความวิจัยเรื่อง “Who Checks the Checker? Enhancing Component-level Architectural SEU Fault Tolerance for End-to-End SoC Protection” ตั้งขึ้นตั้งแต่ต้น
งานวิจัยนี้ซึ่งเผยแพร่โดยทีมวิจัยร่วมจากสถาบันเทคโนโลยีแห่งสหพันธ์สวิส ซูริก (ETH Zurich) และมหาวิทยาลัยโบโลญญา ไม่ได้คิดค้นเทคโนโลยีความทนทานต่อความผิดพลาดแบบใหม่ แต่มองจากมุมมองที่กว้างกว่าและเป็นระบบมากขึ้น ทำให้เห็นจุดบอดทั่วไปในแผนการทนทานต่อความผิดพลาดระดับองค์ประกอบที่มีอยู่: ตรรกะการป้องกันได้กลายเป็นแหล่งความผิดพลาดจุดเดียว ข้อสังเกตนี้เจาะทะลุ “จุดอ่อนแห่งอคิลลีส” ที่มีมานานในสาขาการออกแบบ SoC ต้านการแผ่รังสีได้อย่างแม่นยำ

ปัญหาหลักของบทความวิจัยชี้นำไปที่ความน่าเชื่อถือของระบบบนชิป (SoC) ที่ทำงานในสภาพแวดล้อมที่มีรังสี วิธีการทนทานต่อความผิดพลาดแบบดั้งเดิม ไม่ว่าจะเป็นการกำหนดค่าโหมดล็อกสเต็ป (Lockstep) ให้กับคอร์โปรเซสเซอร์ หรือการเพิ่ม ECC (รหัสแก้ไขข้อผิดพลาด) ให้กับหน่วยความจำ ล้วนเป็นการป้องกันองค์ประกอบเฉพาะอย่าง “แยกส่วน”
วิธีการเหล่านี้มีประสิทธิภาพในขอบเขตของตนเอง แต่ที่ขอบเขตขององค์ประกอบ บัสเชื่อมต่อ และส่วนที่สำคัญที่สุด – ตัวโหวตเตอร์ (Voter), ตัวเข้ารหัส/ถอดรหัส ECC – กลับเหลือช่องว่างของการป้องกัน ทีมวิจัยเปรียบเทียบสิ่งนี้เหมือนปราสาทที่มีการป้องกันอย่างแน่นหนา มีกำแพงสูง แต่ห้องยามที่ประตูเมืองกลับไม่มีการป้องกันเลย เมื่ออนุภาครังสีพุ่งชนตรรกะสำคัญของ “ผู้ตรวจสอบ” เหล่านี้ อาคารความน่าเชื่อถือของระบบทั้งหมดจะพังทลายลง
วิธีการหลักที่บทความวิจัยเสนอคือ “การป้องกันแบบเหลื่อมซ้อน” สาระสำคัญของข้อสังเกตคือ: ขอบเขตของโดเมนการป้องกันที่แตกต่างกันไม่ควรถูกแบ่งแยก แต่ควรเป็นพื้นที่เหลื่อมซ้อนที่ออกแบบไว้อย่างจงใจ โดยการวางกลไกการป้องกันหนึ่ง (เช่น ตรรกะการโหวตของคอร์ล็อกสเต็ป) ภายใต้ขอบเขตการครอบคลุมของกลไกการป้องกันอีกอย่างหนึ่ง (เช่น โดเมนการเข้ารหัส ECC ของการเชื่อมต่อที่เชื่อถือได้) การโจมตีใดๆ ต่อ “ผู้ตรวจสอบ” จะถูกตรวจจับและแก้ไขโดยโดเมนการป้องกันที่มันอยู่ วิธีนี้ทำลายความคิดแบบแยกส่วนที่ “ต่างคนต่างดูแลของตน” และบูรณาการทรัพยากรความทนทานต่อความผิดพลาดใหม่ด้วยมุมมองทางวิศวกรรมระบบ
ข้อมูลการทดลองสนับสนุนประสิทธิภาพของสถาปัตยกรรมนี้อย่างแข็งแกร่ง ทีมวิจัยได้ตรวจสอบแผนงานนี้บน SoC ไมโครคอนโทรลเลอร์ RISC-V ที่ชื่อ croc ผ่านการจำลองการฉีดความผิดพลาด พวกเขาพิสูจน์ว่าการออกแบบการกำหนดค่าทั้งหมด (Cfg.4) ที่ใช้ “การป้องกันแบบเหลื่อมซ้อน” บรรลุอัตราการครอบคลุมความผิดพลาดการพลิกกลับของอนุภาคเดี่ยว (SEU) ระดับการถ่ายโอนรีจิสเตอร์ (RTL) เกิน 99.9% ซึ่งมีระดับความน่าเชื่อถือเทียบเท่ากับความซ้ำซ้อนสามเท่าทั่วโลก (TMR) อย่างไรก็ตาม ข้อได้เปรียบที่ชี้ขาดคือต้นทุนการนำไปใช้ทางกายภาพ: เมื่อเทียบกับแผนงานความซ้ำซ้อนสามเท่าทั่วโลกแบบละเอียด สถาปัตยกรรมการป้องกันแบบเหลื่อมซ้อนลดต้นทุนพื้นที่ลง 22% ข้อมูลนี้มีคุณค่าทางวิศวกรรมที่เปลี่ยนแปลงอย่างมากสำหรับชิปอิเล็กทรอนิกส์อวกาศและยานยนต์ ซึ่งมีความไวต่อขนาด พลังงาน และต้นทุนอย่างยิ่ง
มันประกาศต่ออุตสาหกรรมว่า: ความสามารถทนทานต่อความผิดพลาดขั้นสูงสุดกับต้นทุนทางกายภาพที่เหมาะสม ไม่ใช่สิ่งที่เลือกได้เพียงอย่างเดียวอีกต่อไป
หนึ่ง: พื้นหลัง: สงครามกับ “ปีศาจบิต” ในชิป
ก่อนเข้าสู่รายละเอียดทางเทคนิค เราจำเป็นต้องสร้างพื้นฐานความเข้าใจร่วมกันก่อน: เรากำลังต่อสู้กับ “ศัตรู” แบบไหน และ “คลังอาวุธ” ที่เรามีอยู่มีข้อดีข้อเสียอย่างไร สิ่งนี้สำคัญสำหรับการทำความเข้าใจนวัตกรรมของทีม ETH สนามรบของสงครามนี้คือทุก SoC ที่ถูกติดตั้งในสภาพแวดล้อมที่มีรังสีหรือการประยุกต์ใช้ที่สำคัญต่อความปลอดภัย
อนุภาคพลังงานสูง เช่น โปรตอน ไอออนหนักในอวกาศ หรืออนุภาคอัลฟาที่ปล่อยออกมาจากการสลายตัวของธาตุกัมมันตรังสีปริมาณเล็กน้อยในวัสดุห่อหุ้มชิป เมื่อทะลุผ่านพื้นผิวซิลิกอน จะทำให้อะตอมแตกตัวเป็นไอออนตามเส้นทางของมัน สร้างคู่อิเล็กตรอน-โฮลจำนวนมาก ประจุเหล่านี้ถูกรวบรวมโดยขั้วซอร์ส/เดรนของทรานซิสเตอร์หรือบิตไลน์ของเซลล์หน่วยความจำ และอาจเปลี่ยนสถานะลอจิกเดิมของมัน นี่คือสิ่งที่เราเรียกว่า เอฟเฟกต์อนุภาคเดี่ยว (Single Event Effect, SEE)
บทความวิจัยมุ่งเน้นที่เอฟเฟกต์อนุภาคเดี่ยวชั่วคราวสองประเภท: การพลิกกลับของอนุภาคเดี่ยว (Single Event Upset, SEU) และชั่วขณะอนุภาคเดี่ยว (Single Event Transient, SET)
- SEU ส่งผลกระทบโดยตรงต่อองค์ประกอบหน่วยความจำ เช่น ฟลิปฟลอป (Flip-Flop, FF) หรือเซลล์หน่วยความจำ SRAM ทำให้บิตที่เก็บไว้เกิดการพลิกกลับลอจิก “0 เป็น 1” หรือ “1 เป็น 0”
- SET คือสัญญาณรบกวนแรงดันไฟฟ้าชั่วคราวที่เกิดขึ้นในวงจรลอจิกผสม มันเหมือนพัลส์ผิดพลาดชั่วคราวที่แพร่กระจายในวงจร
เมื่อโหนดกระบวนการผลิตชิปสมัยใหม่หดตัวลงเรื่อยๆ ความถี่สัญญาณนาฬิกาสูงขึ้น โอกาสที่พัลส์ผิดพลาดชั่วคราวนี้จะถูกจับโดยองค์ประกอบตามเวลา (เช่น FF) ก็เพิ่มขึ้นอย่างรวดเร็ว และกลายเป็น SEU ถาวร บทความวิจัยระบุชัดเจนว่า แม้จะไม่พิจารณาความผิดพลาดหลายจุดที่เกิดขึ้นพร้อมกันโดยตรง แต่ SET หนึ่งครั้งอาจทำให้เกิด SEU หลายครั้งได้ และ SEU ที่ไม่ได้รับการแก้ไขจะสะสมตามเวลา ในที่สุดนำไปสู่การล่มของระบบ นี่คือโมเดลความผิดพลาดที่บทความวิจัยกำหนด
เมื่อเผชิญกับ “ปีศาจบิต” เหล่านี้ สถาปนิกชิปได้พัฒนากลยุทธ์การป้องกันหลายรูปแบบ แผนงานที่เก่าแก่ที่สุดและสมบูรณ์ที่สุดคือความซ้ำซ้อนสามเท่าทั่วโลก (Triple Modular Redundancy, TMR)
รูปที่ 1 แผนภาพบล็อกสถาปัตยกรรมของ SoC ไมโครคอนโทรลเลอร์ RISC-V ชื่อ croc แสดงภาพรวมสถาปัตยกรรมพื้นฐานของชิปที่ไม่มีระบบป้องกันความทนทานต่อความผิดพลาด และสถาปัตยกรรมความน่าเชื่อถือสูงที่ผ่านการเสริมความแข็งแกร่งด้วยเทคโนโลยีหลายอย่าง สถาปัตยกรรมพื้นฐานประกอบด้วยคอร์ RISC-V เดี่ยว การเชื่อมต่อ OBI แบงค์หน่วยความจำ SRAM คู่ และอุปกรณ์ต่อพ่วงพื้นฐานเป็นหลัก โดยไม่มีดีไซน์ป้องกันการพลิกกลับของอนุภาคเดี่ยวใดๆ ส่วนสถาปัตยกรรมความน่าเชื่อถือบูรณาการความซ้ำซ้อนสามเท่าคอร์ล็อกสเต็ป การป้องกันหน่วยความจำ ECC การเชื่อมต่อที่เชื่อถือได้ ความซ้ำซ้อนสามเท่าของอุปกรณ์ต่อพ่วง และแผนการทนทานต่อความผิดพลาดอื่นๆ ผ่านการป้องกันแบบแบ่งโดเมนครอบคลุมโมดูลสำคัญทั้งหมดของชิป แสดงให้เห็นตรรกะการอัปเกรดสถาปัตยกรรมและการปรับเปลี่ยนโมดูลจากรุ่นพื้นฐานสู่รุ่นเสริมความแข็งแกร่งทนทานต่อความผิดพลาดอย่างชัดเจน
ดังแสดงในรูปที่ 1 แนวคิดหลักคือ: ทำซ้ำลอจิกสำคัญสามชุดและทำงานขนานกัน และส่งผลลัพธ์ไปยังตัวโหวตเตอร์แบบเสียงส่วนใหญ่ หากโมดูลหนึ่งเกิดข้อผิดพลาดจากการพลิกกลับของอนุภาคเดี่ยว ตัวโหวตเตอร์ยังคงสามารถให้ผลลัพธ์ที่ถูกต้องได้ตามหลัก “เสียงข้างมากเหนือเสียงข้างน้อย” แผนงานนี้ดูสมบูรณ์แบบ แต่มีต้นทุนสูง บทความวิจัยอ้างอิงข้อมูลทั่วไปจากการทดลองฟิสิกส์พลังงานสูงชี้ให้เห็นว่า การใช้เครื่องมืออัตโนมัติเช่น TMR Generator เพื่อทำความซ้ำซ้อนสามเท่าแบบละเอียดให้กับ SoC ทั้งหมด จะทำให้ต้นทุนพื้นที่เพิ่มขึ้นเป็น 4.8 ถึง 6.9 เท่า สำหรับโครงการชิปเชิงพาณิชย์ นี่หมายความว่าต้นทุนชิปเพิ่มขึ้นแบบทวีคูณ ซึ่งโดยปกติแล้วยากที่จะรับได้
เพื่อควบคุมต้นทุน อุตสาหกรรมจึงหันไปใช้กลยุทธ์ความทนทานต่อความผิดพลาดระดับองค์ประกอบ
- หน่วยความจำบนชิป: มักใช้ ECC (รหัสแก้ไขข้อผิดพลาด) เพื่อป้องกัน บทความวิจัยใช้รหัส Hsiao (รหัสแก้ไขข้อผิดพลาดหนึ่งบิต-ตรวจจับสองบิต) โดยเก็บบิตตรวจสอบเพิ่มเติม 7 บิตสำหรับคำข้อมูล 32 บิตแต่ละคำ เมื่ออ่าน ตัวถอดรหัส ECC สามารถแก้ไขข้อผิดพลาดบิตเดียวโดยอัตโนมัติและตรวจจับข้อผิดพลาดสองบิต เพื่อป้องกันไม่ให้ข้อผิดพลาดสะสมในหน่วยความจำเป็นเวลานาน การออกแบบมักจะรวม “ตัวทำความสะอาด” ที่ตรวจสอบ แก้ไข และเขียนข้อมูลกลับเป็นระยะๆ ด้วย
- คอร์โปรเซสเซอร์: วิธีหลักคือเทคโนโลยีล็อกสเต็ป บทความวิจัยกล่าวถึงสถาปัตยกรรม TCLS (สามคอร์ล็อกสเต็ป) ที่ใช้เป็นพิเศษ ต่างจาก TMR แบบคลาสสิกที่ทำการโหวตภายในไมโครสถาปัตยกรรมแบบละเอียด TCLS จะตั้งตัวโหวตเตอร์ที่อินเทอร์เฟซบัสเอาต์พุตของคอร์โปรเซสเซอร์สมบูรณ์สามคอร์ คอร์ทั้งสามดำเนินการสตรีมคำสั่งเดียวกัน หากคอร์หนึ่งเกิดข้อผิดพลาดในการไหลของโปรแกรมหรือการคำนวณข้อมูลจากการพลิกกลับของอนุภาคเดี่ยว เอาต์พุตของมันจะแตกต่างจากอีกสองคอร์ปกติ และจะถูกตรวจจับโดยตัวโหวตเตอร์ ข้อได้เปรียบของวิธีนี้คือสามารถนำ IP คอร์โปรเซสเซอร์ที่ไม่ได้แก้ไขมาใช้ซ้ำได้โดยตรง โดยทำซ้ำและใช้ตรรกะโหวตเตอร์รอบนอกเพื่อให้ทนทานต่อความผิดพลาด ซึ่งมีประสิทธิภาพการพัฒนาสูง
อย่างไรก็ตาม แผนงานระดับองค์ประกอบที่ทำงานร่วมกันแบบแบ่งงานนี้ซ่อนอันตรายร้ายแรงไว้ ผู้เขียนอ้างอิงประสบการณ์จากโครงการ Trikarenos ชี้ให้เห็นว่า: แม้ใน SoC ที่ใช้หน่วยความจำ ECC และคอร์ TCLS พร้อมกันในกระบวนการผลิต 28nm ในสภาพแวดล้อมที่มีรังสีสูง อัตราความผิดพลาดที่เหลือจากองค์ประกอบขอบเขต บัสเชื่อมต่อ และอุปกรณ์ต่อพ่วงที่ไม่ได้ป้องกัน จะยังคงส่งผลกระทบอย่างมีนัยสำคัญต่อความน่าเชื่อถือแบบต้นทางถึงปลายทางของระบบ
นี่กลับไปสู่ปัญหาพื้นฐานในบทนำ: เมื่อมาตรการป้องกันมุ่งเน้นไปที่คอร์และหน่วยความจำ ตรรกะที่เชื่อมต่อและปกป้องพวกมันนั้นเปิดเผยต่อภัยคุกคามจากรังสีหรือไม่? คำตอบชัดเจน ตัวโหวตเตอร์และตัวเข้ารหัส/ถอดรหัส ECC แม้จะมีสัดส่วนพื้นที่ทั้งหมดน้อย แต่เมื่อล้มเหลว จะกลายเป็นแหล่งความผิดพลาดจุดเดียวที่เปราะบางที่สุดในห่วงโซ่ความทนทานต่อความผิดพลาดทั้งหมด วิธีแก้ปัญหาแบบดั้งเดิมคือการใช้ไลบรารีเซลล์มาตรฐานต้านรังสีเพื่อเสริมความแข็งแกร่งให้กับลอจิกเกตเหล่านี้ แต่วิธีนี้ไม่เพียงมีต้นทุนสูงเท่านั้น และโดยปกติไม่สามารถหาได้ในโหนดกระบวนการผลิตเชิงพาณิชย์ขั้นสูง ซึ่งจำกัดประสิทธิภาพและระดับการบูรณาการของชิปอย่างมาก ในบริบทนี้เองที่วิธีการ “การป้องกันแบบเหลื่อมซ้อน” ที่ทีม ETH Zurich เสนอ ด้วยมุมมองระดับระบบ ได้เปิดเส้นทางใหม่
สอง: สถาปัตยกรรมหลัก: ศิลปะแห่งการเหลื่อมซ้อนระหว่างโดเมน
หากการทนทานต่อความผิดพลาดระดับองค์ประกอบแบบดั้งเดิมเป็นเหมือนปราสาทอิสระแต่ละแห่ง วิธีการ “การป้องกันแบบเหลื่อมซ้อน” ก็สร้างแนวป้องกันที่เชื่อมต่อกันเป็นพืด ภูมิปัญญาหลักไม่ได้อยู่ที่การคิดค้นวัสดุเสริมความแข็งแกร่งที่แข็งแกร่งขึ้น แต่อยู่ที่การออกแบบวิธีการเชื่อมต่อระหว่างโมดูลป้องกันใหม่
2.1 จาก “แยกส่วน” สู่ “พึ่งพาอาศัยกัน”: การทดลองทางความคิด
เพื่อทำความเข้าใจความจำเป็นของ “การป้องกันแบบเหลื่อมซ้อน” อย่างลึกซึ้ง ผู้เขียนได้ทำการทดลองทางความคิดผ่านภาพตัดขวาง (รูปที่ 2)
รูปที่ 2 แผนภาพตัดขวางของกลไกป้องกันโมดูลโปรเซสเซอร์ การเชื่อมต่อ และหน่วยความจำของ SoC croc แสดงให้เห็นรูปแบบการรวมกันของเทคโนโลยีความทนทานต่อความผิดพลาดสองแบบ: การป้องกันแบบไม่เหลื่อมซ้อนและการป้องกันแบบเหลื่อมซ้อน โหมดไม่เหลื่อมซ้อนแต่ละโดเมนป้องกันเชื่อมต่อกันอย่างอิสระ โดยมีช่องว่างการป้องกันที่ตรรกะตรวจสอบ เช่น การโหวต การเข้ารหัส/ถอดรหัส โหมดเหลื่อมซ้อนวางโมดูลตรวจสอบภายใต้การป้องกันข้ามโดเมน ทำให้เทคโนโลยีความทนทานต่อความผิดพลาดที่แตกต่างกันครอบคลุมและเชื่อมต่อกัน สะท้อนให้เห็นถึงการออกแบบหลักที่กำจัดช่องว่างการป้องกันและแก้ไขปัญหาความผิดพลาดของ
⚠️ หมายเหตุ: เนื้อหาได้รับการแปลโดย AI และตรวจสอบโดยมนุษย์ หากมีข้อผิดพลาดโปรดแจ้ง
☕ สนับสนุนค่ากาแฟทีมงาน
หากคุณชอบบทความนี้ สามารถสนับสนุนเราได้ผ่าน PromptPay
本文来自网络搜集,不代表คลื่นสร้างอนาคต立场,如有侵权,联系删除。转载请注明出处:http://www.itsolotime.com/th/archives/31031
