บทที่ 4 หน่วยความจำภายใน

บทที่ 4 หน่วยความจำภายใน


หน่วยความจำภายใน
(Primary Storage Section // Memory)

    หน่วยความจำของคอมพิวเตอร์จะใช้ในการเก็บคำสั่งและข้อมูลขณะที่มีการประมวลผล ภายในระบบคอมพิวเตอร์จะมีหน่วยความจำอยู่ 2 ประเภท คือ

         - ภายใน (Internal)
 
        - ภายนอก(External)


    หน่วยความจำภายในนั้นเราไม่ได้หมายถึงหน่วยความจำหลัก
 (Main memory) เท่านั้น
แต่ยังจะหมายถึงหน่วยความจำที่อยู่ภายในซีพียู
 (Local memory)   นอกจากนี้ภายใน CPU  ซึ่งเป็นส่วนหนึ่งของ CPU นั้นก็ต้องการที่จะมีหน่วยความจำเป็นของตัวเองด้วย  ส่วนหน่วยความจำภายนอกนั้นเราจะหมายถึงอุปกรณ์เก็บข้อมูลอื่น ๆ ที่มักเรียกว่าเป็น peripheral storage devices
 เช่น ดิสก์ เทป ซึ่งติดต่อกับ CPU ด้วย I/O Controller
    คุณลักษณะอย่างหนึ่งของหน่วยความจำก็คือ ความจุ (Capacity) ซึ่งจะพูดกันในหน่วยของไบต์ (1 ไบต์ = 8 บิต)  หรือคำ (word)  ปกติแล้วคำจะมีความยาวขนาด 8, 16 หรือ 32 บิต  ข้อมูลทุกประเภทสุดท้ายจะถูกแปลงเป็นบิต 0 หรือ 1 ซึ่งอยู่ในรูปของเลขฐานสองเพื่อเก็บไว้ในหน่วยความจำ เมื่อต้องการใช้ก็จะมีการแปลงจากเลขฐานสองนั้นให้อยู่ในรูปแบบที่ต้องการ
แนวคิดอีกอย่างที่เกี่ยวข้องกันคือ จำนวนหน่วยที่จะโอนย้ายได้ (Unit of Transfer) สำหรับหน่วยความจำภายในนั้น unit of transfer จะเท่ากับจำนวนdata lines ที่เข้า-ออก หน่วยความจำ ซึ่งมันมักจะเท่ากับความยาวของคำ (แต่บางครั้งก็อาจจะไม่เท่าก็ได้)


หลักการทำงานของหน่วยความจำภายใน
วิธีการในการเข้าถึงหน่วยความจำ

 เราอาจแบ่งได้เป็น 4 แบบตามชนิดของหน่วยความจำ คือ 

        - Sequential Access   เช่น การเข้าถึงเทป
              - Direct Access เช่น การเข้าถึงดิสก์
                                                       - Random Access เช่นการเข้าถึงหน่วยความจำหลัก
                                                       - Associative เช่น การเข้าถึงหน่วยความจำแคช

ประสิทธิภาพของหน่วยความจำ
   พิจารณาถึงตัวแปร
 3 ตัวนี้คือ
      1. Access Time : หมายถึงเวลาที่ใช้ไปในการทำการอ่านหรือเขียนข้อมูล (เวลาที่จะนำข้อมูลไปไว้ยังตำแหน่งของหน่วยความจำที่ระบุไว้ หรือเวลาที่นำข้อมูลออกจากหน่วยความจำจากตำแหน่งที่ระบุไว้)
      2. Memory Cycle Time : เป็นแนวคิดที่พัฒนามาใช้กับ RAM ซึ่งประกอบด้วย เวลาในการเข้าถึงข้อมูล (access time) บวกกับเวลาก่อนที่การเข้าถึงครั้งต่อไปจะเริ่มขึ้น
 3.Transfer Rate : เป็นอัตราส่วนที่ข้อมูลสามารถจะถูกเคลื่อนย้ายเข้าหรือออกจากหน่วยความจำได้ใน 1 หน่วยเวลา

หน่วยความจำหลัก
 หน่วยความจำชนิดรอม (ROM : Read Only Memory)
    เป็นหน่วยความจำชนิดที่จะเก็บข้อมูลหรือโปรแกรมไว้อย่างถาวรไม่สามารถเปลี่ยนแปลงอะไรได้ไม่ว่าจะต้องการหรือไม่ สิ่งที่เก็บไว้จะประกอบด้วยข้อมูลที่จำเป็นสำหรับการเริ่มสตาร์ทเครื่องคอมพิวเตอร์ และใช้เก็บโปรแกรม
  BIOS หรือโปรแกรมของคอมพิวเตอร์ที่ฝังอยู่ในฮาร์ดแวร์ของเครื่องที่ทำหน้าที่ตรวจสอบฮาร์ดแวร์และอุปกรณ์ต่าง ๆ ของคอมพิวเตอร์   

ชนิดของรอม
    -
Manual ROM )
    ข้อมูลทั้งหมดที่อยู่ใน ROM จะถูกโปรแกรม โดยผู้ผลิต (โปรแกรม มาจากโรงงาน) เราจะใช้ ROM ชนิดนี้ เมื่อข้อมูลนั้น ไม่มีการเปลี่ยนแปลง และมีความต้องการใช้งาน เป็นจำนวนมาก ผู้ใช้ไม่สามารถ เปลี่ยนแปลงข้อมูลภายใน ROM ได้
    โดย ROM จะมีการใช้ technology ที่แตกต่างกันตัวอย่างเช่น BIPOLAR, CMOS, 
NMOS, PMOS
   -PROM (Programmable ROM)
PROM (PROGRAMMABLE READ-ONLY MEMORY)
    ข้อมูลที่ต้องการโปรแกรมจะถูกโปรแกรมโดยผู้ใช้เอง โดยป้อนพัลส์แรงดันสูง
ทำให้
METAL STRIPS หรือ POLYCRYSTALINE SILICON ที่อยู่ในตัว IC ขาดออกจากกัน ทำให้เกิดเป็นลอจิก 1หรือ 0ตามตำแหน่ง ที่กำหนดในหน่วยความจำนั้นๆ เมื่อ PROM ถูกโปรแกรมแล้ว ข้อมูลภายใน จะไม่สามารถเปลี่ยนแปลงได้อีก
-EPROM (Erasable Programmable ROM)
EPROM (ERASABLE PROGRAMMABLE READ-ONLY MEMORY)
    ข้อมูลจะถูกโปรแกรม โดยผู้ใช้โดยการให้สัญญาณ ที่มีแรงดันสูง ผ่านเข้าไปในตัว EPROM ซึ่งเป็นวิธีเดียวกับที่ใช้ใน PROM แต่ข้อมูลที่อยู่ใน EPROM เปลี่ยนแปลงได้ โดยการลบข้อมูลเดิมที่อยู่ใน EPROM ออกก่อน แล้วค่อยโปรแกรมเข้าไปใหม่ การลบข้อมูลนี้ทำได้ด้วย การฉายแสง อุลตร้าไวโอเลตเข้าไปในตัว IC โดยผ่าน ทางกระจกใส ที่อยู่บนตัว IC เมื่อฉายแสง

หน่วยความจำชนิดแรม (RAM : Random Access Memory)
     
   เป็นหน่วยความจำชนิดที่เก็บข้อมูลเอาไว้เพื่อให้โปรแกรมสามารถนำมาใช้งานได้ในทันทีที่ต้องการ ทั้งในส่วนของคำสั่งของโปรแกรมและข้อมูลที่ป้อนเข้าไป เป็นส่วนที่จะมีการเปลี่ยนแปลงอยู่ตลอดเวลาระหว่างที่กำลังทำงานกับโปรแกรมอยู่ จะเป็นการเก็บไว้เพียงชั่วคราว และจะหายไปเมื่อปิดเครื่องหรือไฟฟ้าดับ นั่นคือแรมจะต้องมีไฟฟ้าคอยเลี้ยงตลอดเวลา โดยปกติทั่วไปหากบอกว่าคอมพิวเตอร์เครื่องนี้มี Memory 32 MB จะหมายถึงเครื่องคอมพิวเตอร์นั้นมี RAM 32 MB    แรมเป็นทรัพยากรที่มีค่ามากของคอมพิวเตอร์ และดูเหมือนว่าเครื่องมีแรมเท่าไรก็มักจะไม่พอต่อความต้องการ (ทั้งของเราและของโปรแกรม application)
โดยที่เนื้อที่ของหน่วยความจำหลักแบบแรมนี้ถูกแบ่งออกเป็น 4 ส่วน คือ
1.Input Storage Areaเป็นส่วนที่เก็บข้อมูลนำเข้าที่ได้รับมาจากหน่วยรับข้อมูลเข้าโดย ข้อมูลนี้จะถูกนำไปใช้ในการประมวลผลต่อไป
2.
Working Storage Areaเป็นส่วนที่เก็บข้อมูลที่อยู่ในระหว่างการประมวลผล
3.
Output Storage Areaเป็นส่วนที่เก็บผลลัพธ์ที่ได้จากการประมวลผล ตามความต้องการของผู้ใช้ เพื่อรอที่จะถูกส่งไปแสดงออก ยังหน่วยแสดงผลอื่นที่ผู้ใช้ต้องการ
4.Program Storage Areaเป็นส่วนที่ใช้เก็บชุดคำสั่ง หรือโปรแกรมที่ผู้ใช้ต้องการจะส่งเข้ามา เพื่อใช้คอมพิวเตอร์ปฏิบัติตามคำสั่ง ชุดดังกล่าว หน่วยควบคุมจะทำหน้าที่ดึงคำสั่งจากส่วน นี้ไปที่ละคำสั่งเพื่อทำการแปลความหมาย ว่าคำสั่งนั้นสั่งให้ทำอะไร จากนั้นหน่วยควบคุม จะไปควบคุมฮาร์ดแวร์ที่ต้องการทำงานดังกล่าวให้ทำงานตามคำสั่งนั้นๆ


ชนิดของแรมตามรูปร่าง

- DIP RAM (Dual In-Line Package RAM)  เป็นแรมยุคแรก มีลักษณะสีดำ มีขายื่นออกมาสองแถวคล้ายตะขาบ ยึดติดบน



- SIMM RAM (Single In-Line Memory Module RAM)  จะมีทั้งแบบ 30 พิน และ 72 พิน ข้อแตกต่างคือ SIMM 30  พินจะมี 9 บิตบนตัวแรม ส่วน SIMM 72  พิน จะมี 36 บิต และ  SIMM 30  พินจะมีขนาดเล็กกว่า 72 พิน


ชนิดของแรมตามเทคโนโลยี
    ความเร็วของตัวประมวลผลที่เพิ่มขึ้นย่อมต้องการส่วนประกอบต่าง ๆ ของระบบที่เร็วขึ้นเช่นกัน ตั้งแต่อดีตจนถึงปัจจุบันบัสของหน่วยความจำจะทำงานช้ากว่าตัวประมวลผล จึงมีการพัฒนาเทคโนโลยีหน่วยความจำแบบต่าง ๆ ดังนี้

    -  DRAM (Dynamic RAM)เป็นมาตรฐานของ Main Memory
มีชื่อเรียกอีกอย่างหนึ่งว่า Fast Page Mode DRAMนอกจากต้องมีไฟฟ้าเลี้ยงตลอดเวลาแล้ว แรมชนิดนี้จะต้องทำการ Recharge อยู่เสมอ คือจะคอยป้อนไฟเลี้ยงให้กับตัวเก็บประจุที่มีค่าเป็น “1” เป็นระยะ   DRAM จะเก็บแต่ละค่าของบิตลงในหน่วยความจำ (Memory Cell)  

    -   SRAM (Static RAM)รูปแบบพื้นฐานของ SRAM คือ การใช้โครงสร้าง

แบบ Asynchronous ค่าของบิตที่เก็บในเซลหน่วยความจำจะถูกแทนด้วยสถานะของการ Flip-Flop  แทนการเป็นประจุใน Capacitor  การ  Flip-Flop เป็นการเรียงตัวของทรานซิสเตอร์และรูปแบบของสวิตช์อิเล็กโทรนิกส์ของรีจิสเตอร์
                   

       - EDO DRAM (Extended RAM)หรือเรียกอีกอย่างหนึ่งว่า Hyper Page Mode DRAM  มีพื้นฐานมาจาก FPM DRAM  ดังนั้นการทำงานจะคล้ายกัน เริ่มจากการจัดลำดับการค้นหา แล้วจึงเริ่มการค้นหาตามคอลัมน์ เพียงแต่ว่าเมื่อพบข้อมูลที่ต้องการแล้ว


    แทนที่การค้นหาจะหยุดลงและปิดการทำงานของบัฟเฟอร์ data output  หน่วยความจำแบบ EDO จะเก็บบัฟเฟอร์ของ data output ไว้จนกระทั่งการค้นหาข้อมูลเริ่มต้นใหม่อีกครั้งหนึ่ง การเปิดการทำงานของบัฟเฟอร์ไว้ตลอดทำให้ wait state ของ burst transfer rate ของหน่วยความจำแบบ EDO เร็วขึ้น

หลักการทำงานและความแตกต่างของ
RAM
Dynamic Random Access Memory (DRAM)
    จะทำการเก็บข้อมูลในตัวเก็บประจุ (
Capacitor) ซึ่งจำเป็นต้องมีการ refresh เพื่อ เก็บข้อมูล ให้คงอยู่โดยการ refresh นี้ทำให้เกิดการหน่วงเวลาขึ้นในการเข้าถึงข้อมูล และก็เนื่องจากที่มันต้อง refresh ตัวเองอยู่ตลอดเวลานี้เองจึงเป็นเหตุให้ได้ชื่อว่า Dynamic RAM
Static Random Access Memory (SRAM)
    จะต่างจาก
DRAM ตรงที่ว่า DRAM ต้องทำการ refresh ข้อมูลอยู่ตลอดเวลา แต่ในขณะที่ SRAM จะเก็บข้อมูล นั้น ๆ ไว้ และจำไม่ทำการ refresh โดยอัตโนมัติ ซึ่งมันจะทำการ refresh ก็ต่อเมื่อ สั่งให้มัน refresh เท่านั้น ซึ่งข้อดีของมันก็คือความเร็ว ซึ่งเร็วกว่า DRAM ปกติมาก แต่ก็ด้วยราคาที่สูงว่ามาก จึงเป็นข้อด้อยของมัน

หน่วยความสำรอง
    หน่วยความจำรองหรือหน่วยเก็บข้อมูล (Storage) มีหน้าที่ในการเก็บข้อมูลทางคอมพิวเตอร์ไว้ และสามารถนำกลับมาใช้งานได้อีกตามต้องการ บางครั้งเรียกว่า หน่วยความจำสำรอง (Secondary Memory)

ตัวอย่างหน่วยความจำสำรอง


    1.  แผ่นบันทึก(
floppy disk หรือ diskette) ไมโครคอมพิวเตอร์ส่วนใหญ่มีเครื่องขับแผ่นบันทึกอย่างน้อยหนึ่งตัว แผ่นบันทึกที่ใช้ในปัจจุบันมีขนาด 3.5 นิ้ว ตัวแผ่นบันทึกเป็นแผ่นบางฉาบผิวด้วยสารแม่เหล็กอยู่ในกรอบพลาสติกแข็ง เพื่อป้องกันการขีดข่วน 
การเก็บข้อมูลจะทำโดยบันทึกลงไปที่ผิวของแผ่น ปกติใช้ได้ทั้งสองด้าน หัวอ่านของเครื่องขับจึงมีสองหัว แผ่นจะหมุนด้วยความเร็วคงที่ หัวอ่านวิ่งเข้าออกเพื่ออ่านข้อมูลในตำแหน่งที่อยู่ที่ต้องการ ผิวที่ใช้เก็บข้อมูลจะแบ่งเป็นวงเรียกว่า แทร็ก (
track) แต่ละแทร็กจะแบ่งเป็นช่องเก็บข้อมูลเรียกว่า เซกเตอร์ (sector) แผ่นบันทึกขนาด 3.5 นิ้ว มีความจุ 1.44 เมกะไบต์ 


    2.  ฮาร์ดดิสก์(harddisk) จะประกอบด้วยแผ่นบันทึกแบบแข็งที่เคลือบสารแม่เหล็กหลายแผ่นเรียงซ้อนกัน  หัวอ่านของเครื่องขับจะมีหลายหัว ในขณะที่แผ่นบันทึกแต่ละแผ่นหมุน หัวอ่านจะเคลื่อนที่เข้าออก เพื่ออ่านข้อมูลที่เก็บบนพื้นผิวแผ่น การเก็บข้อมูลในแต่ละแผ่นจะเป็นวง เรียกแต่ละวงของทุกแผ่นว่าไซลินเดอร์  (cylinder)  แต่ละไซลินเดอร์จะแบ่งเป็นเซกเตอร์ แต่ละเซกเตอร์เก็บข้อมูลเป็นชุดๆ 
ฮาร์ดดิสก์เป็นอุปกรณ์เก็บข้อมูลที่มีความจุสูงมาก ขนาดของฮาร์ดดิสก์มีความจุเป็นกิกะไบต์ เช่น ฮาร์ดดิสก์ความจุ 15 กิกะไบต์ การเขียนอ่านข้อมูลบนฮาร์ดดิสก์จะกระทำเป็นเซกเตอร์
และเขียนอ่านได้เร็วมาก เวลาที่ใช้ในการวัดการเข้าถึงข้อมูลมีหน่วยเป็นมิลลิวินาที 
CMOS
CMOS ย่อมาจาก (complementary metal-oxide semiconductor)
เป็นหน่วยความจำที่ใช้เก็บข้อสนเทศที่ใช้เป็นประจำของระบบคอมพิวเตอร์ เช่น ประเภทของแป้นพิมพ์ เมาส์ จอภาพ และเครื่องอ่านแผ่นดิสก์ (
disk drive) CMOS ใช้กระแสไฟจากแบตเตอรี่ ดังนั้นเมื่อปิดเครื่องคอมพิวเตอร์ ข้อสนเทศใน CMOS จึงไม่สูญหายลักษณะเด่นของ CMOS อีกอย่างหนึ่งคือ ข้อสนเทศที่บันทึกใน CMOS สามารถเปลี่ยนแปลงได้เมื่อมีการเปลี่ยนแปลงอุปกรณ์ให้กับเครื่องคอมพิวเตอร์ เช่น การเพิ่ม RAM และฮาร์ดแวร์อื่นๆ


BIOS
BIOS ย่อมาจาก (Basic  Input Output System)
ไบออส คือโปรแกรมเล็กๆที่ถูกเก็บไว้ในชิป
ROM ทำหน้าที่ในการตรวจสอบและควบคุมอุปกรณ์ต่างๆ บนเมนบอร์ดและมีส่วนสำคัญมากในการบู๊ตเครื่อง  เพราะไบออสจะคอยตรวจสอบอุปกรณ์ทั้งหมดหากอุปกรณ์ตัวไหนมีการทำงานผิดพลาด  ไบออสก็จะรายงานหรือส่งสัญญาณเสียงให้เราได้ทราบทันที ไบออสจะทำงานหลังจากมีการเปิดสวิทซ์ ทันที ที่มีการใช้งานคอมพิวเตอร์โดยจะทำการตรวจสอบอุปกรณ์ต่าง ๆ ที่ติดตั้งในคอมพิวเตอร์ เช่น harddisk, disk drive,cd-rom, ram เป็นต้น






อ้างอิง // กลุ่มที่ 2 สาขาวิชานวัตกรรมและคอมพิวเตอร์ศึกษา ปี1/2558