แต่งแรมแบบไม่กลัวแต๊ป ไม่แอ๊บแบ๊ว ด้วย SPDTool

/ บทความโดย: admin , 25/08/2007 22:45, 2,470 views / view in EnglishEN
«»
Share

โอ้วววว ซาร่าห์ ถ้าคุณต้องประสบปัญหาว่า P35 มันไม่เข้ากับแรมคู่ใจ ใส่แล้วเปิดไม่ได้
 วันนี้ Vmodtech Direct ขอปัญหาคาใจด้วยอุปกรณ์ที่ชื่อ SPD Tool  ครับ อิอิ

ก่อนที่จะเริ่มโมฯ SPD นะครับ ไปหาความรู้กับมันก่อนดีกว่าครับ


Introduction to SPD ::


บทสนทนาระหว่าง เซียน และ เกรียน
Q: SPD ของแรมคืออะไรหว่า ? มันย่อมาจาก Speed ใช่ม้า โฮะๆ ง่ายๆ
A: (เบิ๊ดกะโหลด 1 ที) ไอ้เกรียน SPD ย่อมาจาก Serial Presence Detect ไม่ใช่ Speed ซึ่งจะถูกเก็บไว้ในชิพหน้าตาเรียบๆพวกนี้


Q: แล้วมันเก็บอะไรไว้ในนั้นอ่ะ
A: ทุกอย่างที่เกี่ยวกับการทำงานของแรมเลยล่ะ ตั้งแต่ชนิด ความเร็ว อัตราทด หัวฉีด ลูกสูบ รอบ แรงบิดสูงสุด … แรงม้า (มั่วล่ะ พอๆ) …… ก็คือ มันจะเก็บการตั้งค่าความเร็วในการทำงานต่างๆ ไฟเลื้ยง ชนิดของแรม ยี่ห้อ ฯลฯ และ ค่าพลังแฝง(คือ EPP เดี๋ยวมีต่อครับ)

Q: แล้วไงต่อ อยากฟังๆ
A: มันก็จะเก็บไว้ในชิพตัวนั้นแหละ ซึ่งส่วนใหญ่ชิพ SPD จะมีขนาด 128และ256Byte
และเฮีย W1zzard พ่อมดแห่ง TechPowerUp! ก็เผยวิธีงัดแงะมันขึ้นมา ทำให้เราได้มาโมฯ กัน
โดยมาในรูปโปรแกรมที่ชื่อว่า SPDTool วิสิตจริงๆครับ

Q: จะโมยังไงหว่า
A: เหอๆ จะอธิบายยาวๆล่ะนะ ถ้าอยากรู้ล่ะก็ … คลิกไปหน้า 2
หลังจากที่เราอ่านค่า SPD มาแล้ว ก็จะเจอเลขฐาน 16 ยั๊วเยี้ยพวกนี้ ซึ่งแต่ละวรรคคือตำแหน่งของค่า SPD ที่ทำงานต่างกัน เอาล่ะ จดไว้เลย

Byte 0 : ขนาดของ SPD ที่เขียนทั้งหมด (ส่วนใหญ่โรงงานก็ไม่ได้ระบุมาครับ)
ค่าตัวอย่าง 128Byte:    80h      256Byte:    FFh 

Byte 1 : ขนาดความจุของชิพ SPD
ค่าตัวอย่าง 256 Byte:   08h    128 Byte:       07h   

Byte 2  : ชนิดของแรม
ค่าตัวอย่าง DDR2  SDRAM:     08h    

Byte 3 : จำนวนของ Row Address ซึ่งจะเกี่ยวกับการ Refresh ของแรม ซึ่งแรมแต่ละรุ่น ค่าก็จะไม่เหมือนกัน ขึ้นอยู่กับขนาดและแผงวงจรครับ
ค่าตัวอย่าง 15:  0Fh    14:  0Eh   13:  0Dh 12:  0Ch 

Byte 4 : จำนวนของ Column Address สัมพันธ์กันกับตัวเมื่อกี๊ล่ะครับ
ค่าตัวอย่าง 13:  0Dh   12:  0Ch   11:  0Bh  10:  0Ah   09:09h

Byte 5 : จำนวน Rank ของแรมครับ

Byte 6 : ความกว้างของแบนด์วิดท์แรมครับ ^__^ ปกติ DDR1,2 มันก็ 64Bit ครับ
ค่าตัวอย่าง 64 bit:   40h 128 bit:   80h 

Byte 7 : ไม่มีอะไรครับ :D
ค่าตายตัว : 00h

Byte 8 : ค่าไฟเลี้ยงครับ
ค่าตัวอย่าง 1.8V DDR2:   05h 2.5V:   04h

Byte 9 : ค่า Latency ของแรม (ส่งผลโดยตรงกับบัส)
ค่าตัวอย่าง 5.0 ns (400Mhz): 50h        3.75 ns (533Mhz): 3Dh       3.0 ns    (667Mhz):      30h

Byte 10 : SDRAM Device Access from clock (tAC) ผมก็งงๆ ครับ เอาเป็นว่ามันคือช่วงพักของแรมครับ
ค่าตัวอย่าง :
+/-0.6 ns:            60h
+/-0.5 ns:            50h
+/-0.45 ns:          45h
+/-0.40 ns:          40h

Byte 11 : รูปแบบ ECC (ECC ทุกๆ 8หรือ16bit จะเพิ่มตัวเช็คข้อผิดพลาด ฉะนั้น จะเห็นได้ในแรมที่มีความกว้าง 72bit ขึ้นไป)
ค่าตัวอย่าง :
NonECC:     00h                       
ECC:           02h
Address/Command Parity with ECC:      06h

Byte 12 : Refresh rate
ค่าตัวอย่าง 15.6 us Self-refresh (4K):     80h    7.8 us Self-refresh (8K):         82h

Byte 13 : ความกว้างของเม็ดแรมครับ
ค่าตัวอย่าง  4 bits: 04h   8 bits: 08h    16 bits: 10h

Byte 14 : ความกว้างของ ECC ครับ
ค่าตัวอย่าง No-ECC:    00h      8bits:    08h    16bits:    10h

Byte 15 : ว่าง

Byte 16 : Burst Lengths support (DDR2 รับได้ทั้ง 4 และ 8)
ค่าตัวอย่าง 4, 8 Burst length supported:     0Ch          

Byte 17 : จำนวนแถวภายในชิพ (DDR2 ไม่เกิน 1Gbit จะเป็น 4 มากกว่านั้นจะเป็น 8)
ค่าตัวอย่าง 4 Internal Banks:   04h         8 Internal Banks :   08h

Byte 18 : CAS Latency (CL) ไม่อธิบายนะครับ
ค่าตัวอย่าง :
CL=3 and 4 supported:                    18h
CL=4 and 5 supported:                    30h
CL=5 and 6 supported:                    60h
CL=5    supported:                          20h
CL=6    supported:                          40h

Byte 19 : ขนาด(ความหนา)ของแผงแรม

Byte 20 : ชนิดของแถวแรม
ค่าตัวอย่าง :
 Undefined                                                 00h
 Regular Registered DIMM:                         01h
 Regular Unbuffered DIMM:                         02h
 SO-DIMM:                                               04h
 Micro-DIMM:                                            08h
 Mini-Registered DIMM:                             10h
 Mini-Unbuffered DIMM:                              20h

(หลังๆ เริ่มปั่นๆๆๆ ดูดิครับ น่าเกลียดมากๆ)

Byte 21 : ค่าเกี่ยวกับตัวกำเนิดสัญญาณบนแถวแรม


Byte 22 : คุณสมบัติของแรมทั่วๆไป ได้แก่ Supports PASR,Supports 50 ohm,Supports weak driver 


Byte 23 : ความเร็วที่ 2 ที่แรมทำงานครับ


Byte 24 : Access time ที่ความเร็ว 2


Byte 25 : ความเร็วที่ 3 ที่แรมทำงานครับ - -”


Byte 26 : Access time ที่ความเร็ว 3


ไอ้พวกนี้ ไม่รู้จะแปลยังไงครับ (’* 3 *)a


Byte 27 : Minimum Row Pre-charge Time (tRP)


Byte 28 : Minimum Row to Row Access Delay (tRRD)


Byte 29 : Minimum Ras to Cas Delay (tRCD)


Byte 30 : Minimum Active to Pre-charge Time (tRAS)


Byte 31 : ขนาดของแรม (ขนาด*Rank=ขนาดแรมจริงๆ)


Byte 36 : Write recovery time (tWR)


Byte 37 : Internal write to read command delay (tWTR)


Byte 38 : Internal read to pre-charge command delay (tRTP)


Byte 40 - 42 : tRFC


Byte 64 - 71 : นามสกุล(ยี่ห้อ)


Byte 72 : สถานที่เกิด


Byte 73 - 90 : ชื่อ (รุ่น)


Byte 91 - 92 : รุ่นย่อยๆ (Rev.)


Byte 93 - 94 : วันเกิด


Byte 95 - 98 : รหัสประจำตัว


Byte >99 : EPP & อนาคตครับ อิอิ


อิอิ หมดเรื่องที่น่าศึกษาแล้วครับ เอาเป็นว่า ถ้าอยากรู้แบบลึกซึ้งกว่านี้ แนะนำให้อ่าน Datasheet ของ JEDEC หรือ ของพวก Micron ดูครับ อิอิ

ต่อไป เป็นขั้นตอนวิธีการครับ รับรองแซ่บ

Bookmark บทความ : Zickr Kudd Duocore Techkr aJigg Oncake Lefthit Meetgamer Siamcollective TagToKnow Dunweb Digza
«»