คุณเคยนึกถึงคำถามต่อไปนี้: . ทำอย่างไร ซีพียู รู้จักประเภทของ แรม ในระบบหากไม่มีไดรเวอร์? คำตอบนี้คือ Serial Presence Detect หรือ SPD ชิ้นส่วนของฮาร์ดแวร์ที่โดยปกติแล้วจะไม่รู้จักเท่าที่มีประโยชน์ และหากไม่มีมัน การสื่อสารที่ถูกต้องระหว่างโปรเซสเซอร์และหน่วยความจำจะไม่สามารถทำได้
เมื่อเราไปซื้อโมดูลหน่วยความจำ เรารู้คุณลักษณะของมันโดยข้อเท็จจริงที่ผู้ผลิตบอกเราในข้อกำหนด แต่ CPU รู้ได้อย่างไร ไม่เข้าใจภาษาเดียวกับที่เราทำและเข้าใจเฉพาะภาษาถิ่นของไบนารีเท่านั้น มันทำผ่านชิ้นส่วนของฮาร์ดแวร์ที่ให้ข้อมูลนี้แก่มัน
Serial Presence Detect หรือ SPD คืออะไร
ก่อนอื่นเราต้องจำไว้ว่าเรากำลังพูดถึงองค์ประกอบที่ พบได้ในหน่วยความจำ RAM ของเครื่องพีซี และมันคือ EEPROM ที่เก็บข้อมูล DRAM It มักจะอยู่บนชิปตัวเล็กๆ ซึ่งมักจะมาพร้อมกับ DIMM หรือ SO-DIMM ทั้งหมดตามที่แสดงในภาพด้านบน
ด้วยการใช้ ROM ที่ตั้งโปรแกรมได้ผ่านอิมพัลส์ไฟฟ้า เนื้อหาจะถูกเขียนไปยัง SPD ทันทีที่ชิปหน่วยความจำได้รับการผลิต และด้วยเหตุนี้จึงทำการทดสอบเพื่อกำหนดความเร็วในการทำงาน เมื่อเครื่องมืออย่าง HWinfo หรือ CPU-Z ระบุข้อมูลจำเพาะของหน่วยความจำ RAM สิ่งที่พวกเขาถาม CPU ก็คือการขอข้อมูลใน SPD
นอกจากนี้ยังพบ SPD ในหน่วยความจำประเภทอื่นๆ เช่น VRAM ที่ใช้ในการ์ดกราฟิก ในกรณีนี้ SPD ไม่ได้อยู่บนชิปที่แยกจากกัน เนื่องจากหน่วยความจำถูกบัดกรีไว้บนบอร์ด แต่บนชิปหน่วยความจำแต่ละตัวในกรณีที่เป็นหน่วยความจำประเภท GDDR หรือในฐานที่ตรรกะของสแต็ก HBM แต่ละอัน .
Serial Presence Detect ทำอะไรบนพีซี
เมื่อเริ่มพีซี สิ่งแรกที่โปรเซสเซอร์ทำคือเข้าถึง SPD และอย่างหลัง แจ้งเวลาการเข้าถึงและความเร็วหน่วยความจำ . นี่เป็นสิ่งสำคัญเนื่องจากเข็มทิศในเวลาที่เข้าถึง RAM ไม่เพียงโดยโปรเซสเซอร์ แต่สำหรับทั้งระบบคือการเข้าถึงที่ดำเนินการในเวลาที่ไม่ถูกต้องซึ่งจบลงด้วยการส่งสัญญาณการสื่อสารกับหน่วยความจำไปยังความหงุดหงิด ซึ่งเป็นกุญแจสำคัญ
วันนี้มีกรณีเช่น เอเอ็มดี โปรเซสเซอร์ Ryzen ที่เข้าถึง RAM ของระบบด้วยความเร็วสัญญาณนาฬิกาที่เปลี่ยนแปลงได้ ดังนั้นพวกเขาจึงต้องทราบข้อกำหนดของ RAM ที่เชื่อมต่อเพื่อให้ทำงานในสภาวะต่างๆ และจะไม่เกิดปัญหาในขณะที่เข้าถึงดังกล่าว และคือคุณต้องคำนึงว่ามีหน้าต่างสำหรับเข้าถึง RAM ที่จำกัดเวลา
หากข้อมูลที่ CPU ส่งไปยัง RAM มาถึงนอกระยะเวลาที่แน่นอน RAM สามารถส่งคืนข้อมูลที่ผิดพลาดหรือเขียนในส่วนที่ไม่ใช่ที่อยู่ของหน่วยความจำ RAM ที่เราต้องการเข้าถึง
CPU สื่อสารกับ RAM SPD อย่างไร
เห็นได้ชัดว่าทำสิ่งนี้ผ่านอินเทอร์เฟซที่อยู่บนขอบเขตของโปรเซสเซอร์และเชื่อมต่อกับ RAM ของระบบ
เข้าถึง EEPROM บน SSD อย่างไรก็ตามไม่ได้ทำผ่านหมุดข้อมูลและกำหนดที่อยู่ด้วย RAM ในการทำเช่นนี้ พวกเขาเพิ่มการสื่อสารที่กำหนดให้กับ SMBus ซึ่งเป็นตัวแปรของ I²C ที่ใช้เพียงสี่ขั้ว: อันหนึ่งใช้เป็นนาฬิกา อันที่สองส่งข้อมูล และรายงานที่สามและสี่ซึ่งในสี่โมดูล มันคือ. ในการเสร็จสิ้น SPD จะแชร์พินกราวด์กับ DIMM ที่เหลือ แต่ใช้พินของตัวเองสำหรับแหล่งจ่ายไฟ
SPD สามารถบรรจุข้อมูลใดได้บ้าง
คำตอบที่ตรงไปตรงมาและเรียบง่ายคือคำตอบที่ต้องใช้ CPU ในการทำงาน เราไม่สามารถลืมได้ว่าเป็นหน่วยความจำ ROM ที่มีขนาดเล็กมาก ดังนั้นจึงต้องมีการจัดเรียงข้อมูลในลักษณะที่กะทัดรัดที่สุด
นั่นคือเหตุผลที่วิธีการจัดเก็บข้อมูลดังกล่าวภายใน EEPROM ของ SPD นั้นเหมือนกันเสมอ ซึ่งช่วยประหยัดพื้นที่และอำนวยความสะดวกไม่เพียงแต่สื่อสารกับ CPU แต่ยังรวมถึง เมนบอร์ด ชิปเซ็ต และคำสั่งคืออะไรและใครเป็นผู้กำหนด? คณะกรรมการที่เป็น JEDEC เป็นผู้กำหนดมาตรฐานหน่วยความจำสำหรับทั้ง NAND Flash และ RAM ที่เราใช้ในอุปกรณ์คอมพิวเตอร์ของเรา
ในแต่ละมาตรฐาน JEDEC เนื้อหาของ SPD จะแตกต่างกันไป แต่ข้อมูลในมาตรฐานนั้นไม่ได้เกี่ยวกับความเร็วเท่านั้น แต่ยังรวมถึงข้อมูลอย่างเช่นตอนนี้ด้วย:
- ประเภทของ RAM คือ DDR, LPDDR เป็นต้น
- มีกี่ชิปและความจุของแต่ละตัว
- หมายเลขซีเรียลและผู้ผลิต
- แรงดันไฟฟ้าที่รองรับโดย DIMM สำหรับการโอเวอร์คล็อก
- เป็นต้น
จะเกิดอะไรขึ้นเมื่อเราโอเวอร์คล็อก RAM?
ความทรงจำที่มีความสามารถในการเปลี่ยนแปลงความเร็วสัญญาณนาฬิกาจะใช้ Serial Presence Detect ที่แตกต่างจากโมดูลมาตรฐาน โชคดีที่ JEDEC อนุญาตให้คุณเพิ่มส่วนขยายที่ส่วนท้ายของ Serial Presence Detect
ที่มีชื่อเสียงที่สุดคือ อินเทลXMP ของซึ่งได้รับการออกแบบมาเป็นอันดับแรกสำหรับ DDR3 และต่อมาถูกพอร์ตไปยัง DDR4 คำตอบคือ AMD AMP ที่พวกเขาใช้ในโมดูลหน่วยความจำ RAM ที่ล้มเหลว แม้ว่าเมื่อเวลาผ่านไปพวกเขาจะได้ใช้ส่วนขยายของคู่แข่ง ซึ่งกลายเป็นสากลใน DIMM และมาเธอร์บอร์ดส่วนใหญ่
ดังนั้นหากไม่มี Serial Presence Detect การโอเวอร์คล็อกหน่วยความจำจะไม่ทำงานด้วยซ้ำ เหตุผลก็คือขึ้นอยู่กับข้อมูลของคุณเพื่อไม่ให้เกิดข้อผิดพลาดในการสื่อสารและในสถานการณ์เช่นการเพิ่มความเร็วของ RAM (และด้วยแรงดันไฟฟ้า) ซึ่งอาจเป็นอันตรายต่อสุขภาพของหน่วยความจำ .