2. ลักษณะพื้นฐานของหน่วยความจำแคช (Cache)
หน่วยความจำแคชสร้างขึ้นมาด้วยวัตถุประสงค์เพื่อให้เป็นหน่วยความจำที่ทำงานได้
เร็วที่สุด และเพิ่มประสิทธิภาพการทำงานของหน่วยความจำหลักโดยตรง ในเวลาเดียวกันก็ต้อง
การให้มีขนาดใหญ่ที่สุดในราคาที่ไม่แพงจนเกินไป โดยรูปที่2 แสดงให้เห็นถึงความเร็วในเครื่อง
คอมพิวเตอร์มีหน่วยความจำหลักที่มีความเร็วต่ำ (เมื่อเปรียบเทียบกับความเร็วของซีพียู) ที่มีปริ
มาณมาก และมีหน่วยความจำแคชที่เร็วกว่าแต่มีขนาดเล็ก
รูปที่ 2 แสดงหน่วยความจำ Cache และหน่วยความจำหลัก
โดยปกติหน่วยความจำแคช จะเก็บสำเนาของข้อมูลบางส่วนในหน่วยความจำหลักเอาไว้ เมื่อโปร
เซสเซอร์ต้องการอ่านข้อมูลจำนวนหนึ่ง word ในหน่วยความจำ ข้อมูลส่วนนั้นจะถูกตรวจสอบว่า
มีอยู่ในแคชหรือไม่ ถ้ามีจะนำข้อมูลในแคชไปใช้ ถ้าไม่มีอยู่ ก็จะเกิดการคัดลอกสำเนาข้อมูลหนึ่ง
บล็อกจากหน่วยความจำหลักมายังแคช แล้วจึงนำ word ที่ต้องการส่งต่อไปให้โปรเซสเซอร์ในภา
ยหลัง เนื่องจากปรากฏการณ์การอ้างอิงในพื้นที่เดียวกัน (locality of reference) จะทำให้การอ้างอิง
ข้อมูลในหน่วยความจำครั้งต่อๆไปเป็นการอ้างอิงที่เดิมหรือตำแหน่งใกล้เคียงจุดเดิม ดังนั้นการ
คัดลอกข้อมูลหนึ่งบล็อกจากหน่วยความจำหลักมายังแคช จะสามารถถูกนำมาใช้งานได้ในระยะ
หนึ่ง ก่อนที่จะมีการคัดลอกข้อมูลในครั้งต่อไป
รูปที่ 3 แสดงการอ่านข้อมูลจากหน่วยความจำ Cache
จากรูปแสดงขั้นตอนในกระบวนการอ่านต่างๆ ที่เกิดขึ้น ซึ่งสะท้อนให้เห็นโครงสร้างของส่วนประกอบ
ภายในดังนี้
รูปที่ 4 แสดงโครงสร้างหน่วยความจำ Cache โดยทั่วไป
จากรูปโครงสร้างนี้แคชเชื่อมต่อกับโปรเซสเซอร์ผ่านสายสัญญาณข้อมูล 3 สาย ได้แก่
สายบอกตำแหน่งที่อยู่ สายควบคุมการทำงาน และสายสัญญาณข้อมูล สายบอกตำแหน่งที่อยู่จะ
เชื่อมต่อเข้ากับบัฟเฟอร์ ซึ่งเชื่อมต่อเข้ากับสายบัสหลักของระบบที่นำไปสู่หน่วยความจำหลัก เมื่อ
สามารถค้นพบข้อมูลที่ต้องการในแคช (เรียกว่า cache hit) บัฟเฟอร์สำหรับข้อมูลและตำแหน่งข้อมูล
จะถูกสั่งไม่ให้ทำงาน (disable) และสื่อสารจะเกิดขึ้นระหว่างโปรเซสเซอร์กับแคช โดยไม่มีการใช้บัส
หลักด้วย แต่ถ้าไม่สามารถหาข้อมูลที่ต้องการในแคชได้ (เรียกว่า cache miss) ตำแหน่งข้อมูลที่ต้อง
การจะถูกส่งเข้าไปในบัสหลัก ข้อมูลในหน่วยความจำหลักจะถูกส่งมาที่บัฟเฟอร์ โปรเซสเซอร์ และ
เข้าเก็บไว้ในแคชตามลำดับ
|
ไม่มีความคิดเห็น:
แสดงความคิดเห็น