หน่วยความจำแคช (Cache)
ก่อนที่เราจะไปดูลักษณะของหน่วยความจำแคชในซีพียู Core i7 หรือ Nehalem ผมจะพาท่านไปรู้จักกับรูปแบบของ Cache ในซีพียูมัลติคอร์ (Multicore)รุ่นต่างก่อนที่จะมาถึง Core i7 กันก่อนนะครับ
1) Pentium D
เป็นซีพียูมัลติคอร์รุ่นแรกที่อินเทลทำออกมาสำหรับตลาด PC ครับ ซึ่ง Pentium D เกิดจากการนำ Pentium 4 จำนวน 2 ตัว หรือ 2 Die มาติดตั้งบนแผงวงจรตัวเดียวกัน จึงทำให้ได้ซีพียู 2 คอร์(Core)ขึ้นมาครับ ดังนั้นหน่วยความจำแคชที่ในแต่ล่ะคอร์ของซีพียูจึงเป็นแบบของใครของมัน ใช้ด้วยกันไมได้ครับ เพราะคอร์แต่ละคอร์ใน Pentium D ถือว่าเป็นซีพียู 1 ตัวครับ
ข้างบน ภาพแสดงลักษณะของหน่วยความจำแคช ที่อยู่ในซีพียู Pentium D ซึ่งใช้แยกกันครับ
ภาพข้างบนแสดงให้เห็นว่า Pentium D เกิดจากการนำ Pentium 4 จำนวน 2 ตัว หรือ 2 Die มาติดตั้งไว้บนแผงวงจรเดียวกัน
2. Intel Core Duo และ Intel Core 2 Duo
Intel Core Duo และ Intel Core 2 Duo ซีพียู 2 ตัวนี้เรียกได้ว่าเป็นซีพียู 2 คอร์โดยแท้มาตั้งแต่กำเนิดครับ ซีพียูมี Die เพียงตัวเดียวแต่มี 2 คอร์ หรือ 2 แกนประมวลนั้นเอง และทั้ง 2 คอร์ ต่างก็ใช้หน่วยความจำแคชระดับ 2 ร่วมกันครับ
* Intel Core Duo และ Intel Core 2 Duo มี 1 Die 2 Core
* Pentium D มี 2 Die 2 Core
ข้อดีของการใช้แคชร่วมกัน
ในกรณีของ Core Duo และ Core 2 Duo นั้นคอร์แต่ละคอร์จะใช้แคชระดับ 2 ร่วมกัน และใช้คุณสมบัติ Intel Smart Cache ช่วยในการจัดสรรปริมาณการใช้แคชตามความต้องการของแต่ล่ะคอร์
แต่ในกรณีของ Pentium D ที่ต่างคอร์ต่างมีแคชเป็นของตัวเอง หากเกิดเหตุการที่คอร์ที่ 1 ใช้แคชน้อยและมีแคชเหลืออยู่เป็นจำนวนมาก แต่ในขณะเดียวกันคอร์ที่ 2 มีการใช้แคชเป็นจำนวนมาก และแคชของคอร์ที่ 2 ไม่พอใช้ คอร์ที่ 2 จะไม่สามารถยืมแคชจาก คอร์ ที่ 1 ได้เลย เพราะต่างคนต่างมีแคชเป็นของใครของตัวเองครับ
ข้างบน ภาพแสดงลักษณะการใช้แคชของ Core Duo และ Core 2 Duo
ข้างบนภาพแสดงให้เห็นว่า Intel Core 2 Duo เป็นซีพียู 2 คอร์บน Die เดียว
3. Core 2 Quad
สำหรับ Core 2 Quad ก็ไม่มีอะไรมากครับ เพราะมันคือการนำ Core 2 Duo จำนวน 2 ตัว หรือ 2 Die มาติดตั้งบนแผงวงจรเดียวกันครับ ส่วนคอร์ที่อยู่บน Die เดียวกันก็จะสามารถใช้แคชร่วมกันได้ครับ และ คอร์ที่อยู่ต่าง Die จะต้องใช้แคชบน Die ที่คอร์นั้นอยู่เท่านั้นครับ
ข้างบนภาพแสดงลักษณะการใช้แคชของ Core 2 Quad และ Core 2 Extreme QX
ภาพแสดงโคงสร้างภายในของซีพียู Core 2 Quad ที่เกิดจากการนำซีพียู Core 2 Duo จำนวน 2 Die มาติดตั้งบนแผงวงจรเดียวกัน
4. Core i7
และแล้วก็มาถึงพระเอกของเรากันแล้ว นั้นก็คือซีพียู Core i7 สำหรับรุ่นที่ออกมาในขณะนี้ เป็นซีพียู 4 Core ใช้โค้ดเนม Boomfield โดยแต่ละคอมีหน่วยความจำแคชระดับ 1 และระดับ 2 แยกเป็นของตัวเอง และใช้แคชระดับ 3 ร่วมกันครับ
แคชระดับ 1
- 32 Kb สำหรับเก็บข้อมูล ต่อ 1 คอร์
- 32 kb สำหรับเก็บชุดคำสั่ง ต่อ 1 คอร์
แคชระดับ 2
- 256 kb ต่อ 1 คอร์
แคชระดับ 3
- 8 MB ใช้งานร่วมกัน 4 คอร์
ภาพข้างบน แสดงลักษณะการใช้งานแคชของ Intel Core i7 (Nahalem)
ภาพข้างบนแสดง การทำงานของ Inclusive Cache ที่ได้รับการพัฒนาให้ดีขึ้นในสถาปัตยกรรม Neharem จากรูปแสดงให้เราเห็นว่า หาก Core 0 ไม่พบข้อมูลที่มันต้องการในแคชระดับ 1 ,2 และ 3 แล้ว มันสามาถไปขอข้อมูลที่มันต้องการจากแคชระดับ1 หรือ 2 จากคอร์ที่มีข้อมูลที่มันต้องการได้เช่นCore 0 ไปขอใช้ข้อมูลในแคชของ Core 2 เป็นต้น
ภาพแสดงให้เห็นว่า Intel Core i7 เป็นซีพียู 4 คอร์บน Die เดียว