- คือหน่วยความจำที่มีการเข้าถึงได้
โดยไม่ต้องใส่ลำดับ (Sequential Access)
ต้องการข้อมูล ที่ตำแหน่งใดก็ได้
โดยส่ง Address (ตัวเลขระบุตำแหน่ง) ให้กับ RAM Memory
Chip ที่ใช้กันในเครื่องพีซีแบ่งได้เป็น
2 ประเภทใหญ่ๆ ได้แก่
-
1.SRAM(Static RAM)
-
2.DRAM(Dynamic RAM)
-
- คุณสมบัติที่แตกต่างกัน ระหว่าง SRAM กับ DRAM
คือ SRAM มีราคาสูงกว่า เนื่องจาก SRAM มี
ความเร็วสูงกว่า DRAM
- การใช้งาน RAM นั้น
ต้องมีไฟเลี้ยงตลอดเวลา
และนอกจากไฟเลี้ยงแล้ว DRAM ยังต้องการ
การ Refresh ข้อมูลเป็นระยะๆ
เสมือนการเตือนความทรงจำ ซึ่ง ผิดกับ SRAM
ที่ไม่ต้องมีการ Refresh เนื่องจาก DRAM
ซึ่งทำมาจาก MOSใช้หลักการ
ของตัวเก็บประจุ มาเก็บข้อมูล
เมื่อเวลาผ่านไป ประจุจะค่อยๆรั่วออก
ทำให้ต้องมีการ Refresh
ประจุตลอดเวลาการใช้งาน ส่วน SRAM
ซึ่งทำมาจาก Flip-Flop นั้น
ไม่จำเป็นต้องมีการ Refresh แต่ SRAM
จะกินไฟมากกว่า DRAM
อันเนื่องจากการใช้ Flip-Flop
นั่นเอง
ความเร็วของ RAM
คิดกันอย่างไร
- ที่ตัว Memorychip
จะมี เลขรหัส เช่น HM411000-70 ตัวเลขหลัง (-) คือ
ตัวเลขที่บอก ความเร็วของ RAM ตัวเลขนี้
เรียกว่า Accesstime คือ เวลาที่เสียไป
ในการที่จะเข้าถึงข้อมูล หรือ
เวลาที่แสดงว่า ข้อมูลจะถูก
ส่งออกไปทาง Data busได้เร็วแค่ไหน ยิ่ง
Access time น้อยๆ แสดงว่า RAM ตัวนั้น
เร็วมาก
ตารางค่า Access
time บน Chip
| Access
time(ns) |
ตัวเลขที่พบบน Memory
chip |
|
250 |
25 |
|
200 |
20 |
|
150 |
15 |
|
120 |
12 |
|
100 |
10 |
|
85 |
85 |
|
80 |
8,80 |
|
70 |
7,70 |
|
65 |
65 |
|
60 |
6,60 |
|
53 |
53 |
- ความเร็วของ RAM
เรียกว่า Cycle time ซึ่งมีหน่วยเป็น ns โดย Cycle time
เท่ากับ Read/Write cycle time
(เวลาที่ในการส่งสัญญาณติดต่อ
ว่าจะอ่าน/เขียน RAM) รวมกับ Access time และ Refresh
time
- โดยทั่วไป RAM
จะต้องทำการตอบสนอง CPU ได้ในเวลา 2
clock cycle หรือ 2 คาบ หาก RAM ตอบสนองไม่ทัน RAM
จะส่งสัญญาณ /WAIT บอก CPU ให้ คอย คือ การที่ CPU เพิ่ม
clock cycle ซึ่งช่วงเวลานี้เรียกว่า WAIT
STATE
วิธีที่ใช้ในการแก้ไข WAIT
STATE 1. เทคนิค INTERLEAVE
เทคนิคนี้เป็นการลดปัญหาเรื่อง Refresh time
เพราะในการทำงานของ RAM จะเห็นว่าใน
การติดต่อกับ Memory 1 address จะใช้เวลา 1 cycle time
ในการที่ CPU ติดต่อ กับ Memory ในแต่ละครั้ง
จะติดต่อเป็น block คือ หลาย Address เรียงต่อกัน
จากความจริง ข้อนี้ เทคนิคการ Interleave
จึงเกิดขึ้น โดยหลักการที่จะทำให้
Cycle time เหลื่อมกันเกิดจน Cycle time
ใหม่ที่แคบลง
การสลับ Bank ของ Memory โดย Bank บล็อกหนึ่งจะมี Memory
address เป็นเลขคี่ อีก Bank จะเป็นเลขคู่ เวลา CPU
ติดต่อสลับไปสลับมาใน 2 Bank
เพราะฉะนั้นต้องใส่ Memory ให้เต็ม Bank
เป็นจำนวนคู่ เช่น 2 Bank หรือ 4 Bank ถ้า Memory
ขนาดเท่ากัน คนที่ใส่ Memory
ทั้งหมดไว้ใน Bank เดียว
จะทำงานได้ช้ากว่า คนที่แบ่ง Memory
ใส่เป็น 2 Bank แต่ Bank ก็จะ
เหลือน้อยด้วย
2.
วิธีการ Page Mode
วิธีการนี้จะต้องใช้ RAM พิเศษ คือ Paged RAM โดย
Memory จะถูกมองว่า แบ่ง เป็นกลุ่ม หรือ Page หลาย Page
ในการติดต่อกับ Memory ที่ Address อยู่ใน Page
เดียวกัน ต่อๆ ไป โดยไม่ต้องมี Wait State
แต่ถ้ามีการติดต่อกับ Page อื่น จะมี Wait
State เหมือนเดิม
3. Cache
Memory Memory
ส่วนนี้จะถูกรวมกับ CPU ซึ่งก็คือ Internal
Cache แต่ถ้าเอามาติดบนเมนบอร์ด
จะเรียกว่า External Cache ก็คือ RAM นั่นเอง
แต่ความเร็วจะสูงมาก
ทำให้ไม่มีภาวะ Wait State วิธีการก็คือ
พยายามให้ CPU ติดต่อกับ Cache ซึ่งเป็น SRAM
ความเร็วสูงก่อน เพราะ ไม่มีภาวะ WaitState
โดยจะมีวงจร Cache controller ซึ่งเป็น
ตัวจัดการ Cache โดยมันจะตัด
บล็อกข้อมูลจาก main memory ประมาณบล็อกละ 2-4 KB
มาใส่ไว้ใน Cache พอ CPU ติดต่อ Memory
ก็จะมาดูใน Cache
ก่อนว่ามีข้อมูลที่ต้องการหรือไม่
ถ้าไม่มีก็จะไปเอาจาก Main memory
ความสำคัญของ Cache คือ
การตัดบล็อกมาให้ถูกตามความต้องการของ
CPU โดย Cache controller จะใช้วิธีการ Random แต่ Random
อย่างมีหลักการ คือ CPU มักต้องการ
ข้อมูลที่ต่อเนื่องกัน เพราะฉะนั้น Cache
จะตัดข้อมูลบล็อกถัดไปมาเก็บไว้
การ Random แบบนี้ให้ความแม่นยำถึง 80%
ทีเดียว คือ ไม่มีภาวะ Wait State เป็นเวลา 80%
ของเวลาที่ใช้
ทำงานทั้งหมด
การ Check
Parity การเช็ค Parity
เป็นการ เพิ่มบิตพิเศษเข้าไปอีก 1 บิต ให้กับทุกๆ 8
บิต ของข้อมูล จนกลายเป็น 9 บิต
บิตที่เพิ่มขึ้นไม่ใช่ข้อมูล
แต่ใส่เพื่อตรวจสอบว่า
ข้อมูลมีความผิดพลาดหรือไม่
โดยใช้หลักการนับขำนวนบิตข้อมูลที่มีค่าเป็น
1 ในทุกๆ 8 บิต การเข็ค Parity นี้แบ่งได้ 2 วิธี คือ Odd
Parity (Parity คี่) และ Even Parity (Parityคู่) สำหรับวิธี Odd
Parity จะทำการนับจำนวนบิตที่เป็น 1 ใน 8
บิตว่ามีจำนวนเป็นคู่ หรือเป็นคี่ โดยมี
IC 74LS280 ทำหน้าที่เป็นตัวสร้าง Parity และ
เป็นตัวตรวจสอบ ถ้า 74LS280 นับจำนวน 1 ใน 8 บิตได้
เป็นจำนวนคู่ที่ Parity bit จะถูกเซ็ตให้เป็น 1
เพื่อให้จำนวนของ 1 ใน 9 บิต (รวม Parity bit ด้วย)
เป็นจำนวนคี่ แต่ถ้านับจำนวนของ 1 ใน 8 บิต
ได้เป็นเลขคี่ Parity bit จะถูกเซ็ตให้เป็น 0
เพื่อให้จำนวนของ 1ใน 9 บิต รวมเป็นเลขคี่
ถ้าวิธ ีEven Parity ก็จะทำใน
ทางกลับกัน คือพยายามเซ็ต Parity
ให้จำนวนของ 1 ใน 9
บิตเป็นจำนวนคู่ Parity bit
จะถูกสร้างตอน เขียนข้อมูลลงใน RAM
และจะถูกตรวจสอบ เมื่อมีการ
อ่านข้อมูลจาก RAM เช่น ถ้าข้อมูลเป็น
11001010 ด้วยวิธี Odd Parity จะ เซ็ต Parity bit เป็น 1
แต่ถ้าตอนอ่านข้อมูลเกิดการเปลี่ยนแปลงเป็น
10001010 โดย Odd Parity ยังคงเป็น 1 ก็จะแสดง
ว่ามีการผิดพลาดเกิดขึ้น IC 74LS280
จะทำการสร้างสัญญาณไปบอกให้ CPU
เกิดการ Halt
และแสดงข้อความรายงานทางหน้าจอในแบบต่างๆ
เช่น PARITY ERROR SYSTEM HALT
ข้อเสียของการใช้ Parity bit คือ เสียเวลา
และไม่ได้ประโยชน์เท่าไรนัก
เพราะไม่
สามารถบอกได้ว่าผิดที่ตำแหน่งไหน
และแก้ไขข้อผิดพลาดไม่ได้
บอกได้แค่ว่ามีความผิดพลาด
เกิดขึ้นเท่านั้น ยิ่งกว่านั้น ถ้าสมมติ
ข้อมูลเกิดผิดพลาดทีเดียว 2 บิต เช่น 10001001
เปลี่ยนเป็น 10101011
เราก็ไม่สามารถเช็คข้อผิดพลาดโดยใช้วิธี
Parity ได้
เมื่อรู้การทำงานของ RAM แล้ว
เราก็จะมาดู ประเภทของ RAM
ที่มีใช้กันอยู่ 1. DIP (Dual In-line
Package) เป็นแบบพื้นฐานที่ใช้กัน เพราะ DIP
คือ RAM ที่อยู่ในรูปแบบของ IC (Integrate Circuit
) หรือ Memory chip การใช้งาน หรือติดตั้ง RAM
ชนิดนี้ทำได้โดยการติดลงบน
ซ็อคเก็ตของ DIP เท่าที่เมนบอร์ดเตรียมไว้ให้
นั่นหมายความว่า ยิ่งความต้องการติด DIP
มากๆ เมนบอร์ดก็ต้องมีซ็อคเก็ตไว้ให้มากๆ
ผลก็คือ ใช้พื้นที่เปลือง
และทำให้เมนบอร์ดใหญ่มาก ในการติด DIP
ยังต้องระมัดระวังด้วย เพราะ Pin บอบบาง
งอง่าย หักง่าย ทั้งยัง
เสียเวลาในการติด 2. SIPP (Single
In-line Pin Package)
จะลดความยุ่งยากของการติดตั้ง RAM
แบบ DIP ลง โดยติดลงบนแผ่น PCB (Printed Circuit Board)
ซะก่อน SIPP เป็นแผ่น PCB ที่มี Pin
ซึ่งเหมือนขาของ IC แต่ Pin ของ SIPP
จะมีเพียงแถวเดียวเรียงไปตามแนวยาวของแผ่น
PCB การติดตั้ง SIPP
ที่มีลักษณะเป็นรูกลมเรียงหนึ่งเป็นแถวยาวมีจำนวนรูเท่ากับ
Pin ของ SIPP พอดี ประหยัดเนื้อที่บนเมนบอร์ด
และติดตั้งง่ายกว่า DIP
มาก 3. SIMM (Single
In-line Memory Module) รูปร่างหน้าตา จะคล้ายกับ SIPP
แต่ต่าง ส่วนที่จะต่อกับ ซ็อคเก็ตบนเมนบอร์ด
จาก Pin เป็นแบบ Edge Connector คือเป็น
ลายวงจรเรียง กันเป็นซี่ตามขอบของ
PCB ในแนวยาว ลักษณะเหมือนกับ
ที่เห็นตามการ์ดต่างๆ
แต่ในการติดตั้ง SIMM
จะไม่ใช้การเสียบลงไปตรงๆ
เหมือนการ์ดทั่วไป
แต่จะเสียบลงแบบเอียงๆแล้วดันSIMM
ไปด้านข้างเพื่อให้
กลไกบนซ็อคเก็ตทำการล็อก SIMM เอาไว้ การใช้ Edge
connector ในSIMM
ก็เพื่อตัดปัญหาเรื่องหน้าสัมผัสของ Pin
กับซ็อคเก็ต SIMM
ที่ถูกผลิตออกมาจะแบ่งได้เป็นชนิดต่างๆ
ตามความกว้างของข้อมูลของ SIMM
แต่ละโมดูล คือ ชนิด 8 บิต, 16 บิต, 32 บิต
การจัดวางลำดับของ Edge connector
จะมีมาตรฐาน
กลางที่ใช้กันอยู่ 4. DIMM (Dual
In-line Memory Module) เป็น RAM ชนิดใหม่ และถูกกำหนด
ให้เป็นมาตรฐานกลางโดย JEDEC (Joint Electron
Device Engineering Council) ลักษณะโดย ทั่วไป จะคล้าย SIMM
แต่จะมี 168 Pin (ข้างละ 84 pin )
|